Automatic Conformance Testing of Safety Instrumented Systems for Offshore Oil Platforms

  • Hallan William VeigaEmail author
  • Max Hering de QueirozEmail author
  • Jean-Marie FarinesEmail author
  • Marcelo Lopes de LimaEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10471)


Functional failures in Safety Instrumented System (SIS) of offshore platforms may have catastrophic consequences for the production, facility, environment and health. This work presents a method for automatic conformance testing of safety specifications represented in a Cause and Effect Matrix (CEM) for Programmable Logic Controllers (PLC) in charge of SIS. Test cases are automatically designed from the CEM using a CEG-BOR strategy to enhance coverage of black box test. Petri Net models support the automated oracle creation and test result evaluation. An experimental tool has been developed to edit the CEM, to generate and execute test cases on a PLC simulator, to generate and execute the Petri Net oracles and to present the verdict. The method has been applied to test the SIS of an offshore oil platform.


Conformance test Safety Instrumented Systems Petri-nets Automatic testing Programmable Logic Controllers Offshore platforms 


  1. 1.
    Gruhn, P., Cheddie, H.: Safety Instrumented Systems - Design, Analysis, and Justification, 2nd edn. ISA: The Instrumentation, Systems, and Automation Society (2005)Google Scholar
  2. 2.
    Skogdalen, J.E., Smogeli, O.: Looking Forward-Reliability of Safety Critical Control Systems on Offshore Drilling Vessels. Working Paper, Deepwater Horizon Study Group (2011)Google Scholar
  3. 3.
    IEC 61511: Functional safety: safety instrumented systems for the process industry sector, part 1–3. International Electrotechnical Commission, Geneva (2003)Google Scholar
  4. 4.
    Gergely, E.I., Coroiu, L., Popentiu-Vladicescu, F.: Methods for validation of PLC systems. J. Comput. Sci. Control Syst. 4, 47 (2011)Google Scholar
  5. 5.
    Jorgensen, P.: Software Testing: A Craftsman’s Approach, 2nd edn. CRC Press, New York (2002)CrossRefzbMATHGoogle Scholar
  6. 6.
    Myers, G.J., Thomas, T.M., Sandler, C.: The Art of Software Testing, 3rd edn. Wiley, New York (2011)Google Scholar
  7. 7.
    Nidhra, S.: Black box and white box testing techniques - a literature review. Int. J. Embed. Syst. Appl. 2, 29–50 (2012)CrossRefGoogle Scholar
  8. 8.
    Hamlet, D.: Software Quality, Software Process, and Software Testing. In: Advances in Computers, pp. 41–191. Academic Press (1994)Google Scholar
  9. 9.
    Frey, G., Litz, L.: Formal methods in PLC programming. In: IEEE International Conference on Systems, Man and Cybernetics (2000)Google Scholar
  10. 10.
    Tretmans, G.J., Belinfante, A.: Automatic testing with formal methods. Technical report, Centre for Telematics and Information Technology University of Twente (1999)Google Scholar
  11. 11.
    Provost, J., Roussel, J.M., Faure, J.M.: Translating Grafcet specifications into Mealy machines for conformance test purposes. Control Engineering Practice (2011)Google Scholar
  12. 12.
    Utting, M., Legeard, B.: Software Testing: Practical Model-Based Testing: A Tools Approach, 2nd edn. Morgan Kaufmann Publishers Inc., San Francisco (2006)Google Scholar
  13. 13.
    Meinke, K., Sindhu, M.A.: LBTest: a learning-based testing tool for reactive systems. In: International Conference on Software Testing, Verification and Validation, ICST (2013)Google Scholar
  14. 14.
    Prati, T.J., Farines, J.M., Queiroz, M.H.: Automatic test of safety specifications for PLC programs in the oil and gas industry. In: Proceedings of the 2nd IFAC Workshop on Automatic Control in Offshore Oil and Gas Production, Florianópolis (2015)Google Scholar
  15. 15.
    ET-3000.00-1200-800-PGT-006: Project Guidelines for the Confection of Cause and Effect Matrixes and Logic Diagrams. Project Guidelines for Offshore Production Installation. Technical Specification, Petrobras (2000)Google Scholar
  16. 16.
    Howden, W.E.: Functional program testing. IEEE Trans. Softw. Eng. 6, 162–169 (1980)CrossRefGoogle Scholar
  17. 17.
    Elmendorf, W.R.: Automated design of program test libraries. IBM Technical report (1970)Google Scholar
  18. 18.
    Paradkar, A.M., Tai, K.-C., Vouk, M.A.: Specification-based testing using cause-effect graphs. Anna. Softw. Eng. 4, 133–157 (1997)CrossRefGoogle Scholar
  19. 19.
    Paradkar, A., Tai, K.-C.: Test generation for Boolean expressions. In: Proceedings of the Sixth International Symposium on Software Reliability Engineering. IEEE (1995)Google Scholar
  20. 20.
    Malekzadeh, M., Raja, N.A.: An automatic test case generator for testing safety-critical software systems. In: The 2nd International Conference on Computer and Automation Engineering (ICCAE), vol. 1. IEEE (2010)Google Scholar
  21. 21.
    Berthomieu, B., Diaz, M.: Modeling and verification of time dependent systems using time Petri nets. IEEE Trans. Softw. 17, 259–273 (1991)CrossRefMathSciNetGoogle Scholar
  22. 22.
    Selic, B.: What will it take? A view on adoption of model-based methods in practice. Softw. Syst. Model. 1–14 (2012)Google Scholar
  23. 23.
    Pommereau, F.: SNAKES: a flexible high-level petri nets library (tool paper). In: Devillers, R., Valmari, A. (eds.) PETRI NETS 2015. LNCS, vol. 9115, pp. 254–265. Springer, Cham (2015). doi: 10.1007/978-3-319-19488-2_13 CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.Departamento de Automação e SistemasUniversidade Federal de Santa CatarinaFlorianópolisBrazil
  2. 2.CENPESPetrobrasRio de JaneiroBrazil

Personalised recommendations