Safety Patterns — The Key to Formal Specification of Safety Requirements
- 19 Citations
- 646 Downloads
Abstract
The use of formal methods increases the trust in the safe operation of software in industrial automation systems. But the use of formal methods in practical software development is rare. One of the reasons lies in the difficulties arising from formal specification of safety requirements by common software engineers who are not experts in logic. In this paper an approach is presented, in which the difficulties are overcame by the use of formal specification patterns. The main advantage in comparison to other approaches is that the specification patterns transfer expert knowledge. Therefore this approach not only helps in using formal methods, it also supports in learning the practical application of formal specification languages for safety requirements specification. The patterns are called “safety patterns” because they are developed for the formal specification of requirements special in context of safety.
Preview
Unable to display preview. Download preview PDF.
References
- 1.Bitsch, F.: Classification of Safety Requirements for Formal Verification of Software Models of Industrial Automation Systems, In Proceedings of 13th International Conference Software and Systems Engineering and Applications (ICSSEA) 2000, CNAM-Paris.Google Scholar
- 2.Bitsch, F., Canver, E., Moik, A.: Strukturierte Erstellung von Sicherheitsspezifikationen in UML mit Hilfe der FMEA-Methode, Forms’ 99-Formale Techniken für die Eisenbahnsicherung, Hrsg. E. Schnieder, Fortschritt-Berichte VDI, Reihe 12, Verkehrstechnik/Fahrzeugtechnik, Nr.436, VDI Verlag GmbH, Düsseldorf 2000, S. 225–245.Google Scholar
- 3.Bitsch, F.: Formal Specification Patterns for Safety Requirements, http://www.ias.unistuttgart.de/projekte/patterns/, 2001.
- 4.Canver, E.: Einsatz von Model-Checking zur Analyse von MSCs über Statecharts, Ulmer Informatik Berichte, Nr. 99-04, Universität Ulm, 05/1999.Google Scholar
- 5.Chan, W. et al.: Optimizing Symbolic Model Checking for Statecharts, IEEE Transactions on Software Engineering, Vol. 27, No. 2, February 2001.Google Scholar
- 6.Damm, W.; Harel., D.: LSCs: Breathing Life into Message Sequence Charts, In FMOODS’99 IFIP TC6/WG6.1 Third International Conference on Formal Methods for Open Object-Based Distributed Systems, 1999.Google Scholar
- 7.Dillon, L.K., Moser, L.E. et al.: A graphical interval logic for specifying concurrent systems, ACM Transactions on Software Engineering and Methodology, 3(2): 131–165, Apr. 1994.CrossRefGoogle Scholar
- 8.DIN VDE 31000 Teil 2, Begriffe der Sicherheitstechnik: Grundbegriffe.Google Scholar
- 9.Dwyer, M.B., Avrunin, G.S., Corbett J.C.: Property Specification Patterns for Finite-state Verification, in the 2nd Workshop on Formal Methods in Software Practice, March, 1998.Google Scholar
- 10.Dwyer, M.B., et al.: Patterns in Property Specification for Finite-state Verification, in Proceedings of the 21st International Conference on Software Engineering, May, 1999.Google Scholar
- 11.Flake, S., Müller W. and Ruf J.: Structures English for Specification in Model Checking, in Methoden und Beschreibungssprachen zur Modellierung und Verifikation von Schaltungen und Systemen, pp. 91–100. GI/ITG/GMM Workshop, Frankfurt, March 2000.Google Scholar
- 12.Gamma, E. et al.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Massachusetts, 1994.Google Scholar
- 13.Göhner, P.: Spezifikation und Verifikation von sicheren Softwaresystemen, atp, pp. 24–31, 4/1995.Google Scholar
- 14.Grams, T.: Reliability and Safety, Table of Terms and Definitions, http://www.fh-fulda.de/~fd9006/Reliability/R&S-Terms1.html.
- 15.Heimdahl, M.P.E., Heitmeyer, C.L.: Formal Methods for Developing High Assurance Computer Systems: Working Group Report, Proceedings, Second IEEE Workshop on Industrial-Strength Formal Techniques (WIFT’98), Boca Raton, FL, Oct. 19, 1998.Google Scholar
- 16.Heitmeyer, C.L.: SCR: A Practical Method for Requirements Specification; Proc., 17th AIAA/IEEE/SAE Digital Avionics System Conference (DASC), Bellevue, WA, Oct. 31-Nov. 7, 1998.Google Scholar
- 17.Heitmeyer, C.L.: On the Need for ‘Practical’ Formal Methods; Formal Techniques in Real-Time and Real-Time Fault-Tolerant Systems, Proc., 5th Intern. Symposium (FTRTFT’98), Lyngby, Denmark, September 14-18, 1998, LICS 1486, pp. 18–26.Google Scholar
- 18.Holt, A.: Formal verification with natural language specifications: guidelines, experiments and lessons so far, South African Computer Journal, No 24, November 1999, pp. 253–257.Google Scholar
- 19.Huth, M, Ryan, M.: Logic in Computer Science-Modelling and reasoning about systems, Cambridge University press, Cambridge, 2000.zbMATHGoogle Scholar
- 20.Lamport, L.: The Temporal Logic of Actions. SRC Research Report 79, ACM Transactions on Programming Language and Systems 16(3): 872–923, 05/1994.CrossRefGoogle Scholar
- 21.Lamport, L.: Proving the correctness of multiprocess programs. IEEE Transactions on Software Engineering, SE-3(2):125–143, 1977.CrossRefMathSciNetGoogle Scholar
- 22.Lauber, R., Göhner, P.: Prozessautomatisierung 1, 3. Auflage, Springer Verlag, Berlin, Heidelberg, New York, 1998.Google Scholar
- 23.Leveson, N.: Safeware-System, Safety and Computers, Addison-Wesley Publishing Company, Massachusetts, Bonn, 1995.Google Scholar
- 24.Lowrance, W.W.: Of Acceptable Risk: Science and the Determination of Safety, William Kaufmann, Inc., Los Altos, Clif., 1976.Google Scholar
- 25.Manna, Z., Pnueli, A.: Temporal Verification of Reactive Systems-Safety, Springer Verlag, NewYork, 1995.Google Scholar
- 26.Moser, L.E., et al.: The Real-Time Graphical Interval Logic Toolset, In Proceedings of the Conference on Computer-Aided Verification, New Brunswick, NJ, July/August 1996.Google Scholar
- 27.McMillan, K.L.: The SMV system. Carnegie-Mellon University, Pittsburgh, PA, 2 February 1992. http://www.cs.cmu.edu/~modelcheck/smv/smvmanual.r2.2.ps.
- 28.Progress Report of the DFG project SafeRail: Integration von Methoden zur Spezifikation und Verifikation von Sicherungseinrichtungen im spurgeführten Verkehr, Project of the focus area program (1064) on the “Integration of Specification Techniques with Applications in Engineering”, 03/2000.Google Scholar
- 29.Redmill, F.J. (ed.): Dependability of Critical Computer Systems 2, Elsevier Applied Science, London and New York, 1989.Google Scholar
- 30.Schlör, R., Josko, B., Werth D.: Using a visual formalism for design verification in industrial environments, In VISUAL’98, Lecture Notes in Computer Science 1385, pages 208–221. Springer-Verlag, Berlin, Heidelberg, 1998.Google Scholar
- 31.Schlör, R.; Damm, W.: Specification and verification of system-level hardware designs using timing diagrams, In Proceedings, The European Conference on Design Automation, IEEE Computer Society Press, pages 518–524, Paris, France, 1993.Google Scholar
- 32.Villa, T., Swamy, G., Shiple, T.: VIS User’s Manual, The VIS Group, University of California, Berkeley.Google Scholar