Developing Quality Software Systems Using the SOFL Formal Engineering Method

Formal Engineering Methods are a bridge from Formal Methods to industrial applications. In this paper I describe the relation between formal engineering methods and formal methods, and present a specific formal engineering method SOFL (Structured Object-Oriented Formal Language) for developing quality software systems. I explain how SOFL can be applied in practice through examples.

[1]  Edward Yourdon,et al.  Modern structured analysis , 1989 .

[2]  Shaoying Liu Verifying Consistency and Validity of Formal Specifications by Testing , 1999, World Congress on Formal Methods.

[3]  Marie-Claude Gaudel,et al.  Software testing based on formal specifications: a theory and a tool , 1991, Softw. Eng. J..

[4]  Ralph-Johan Back,et al.  Refinement Calculus: A Systematic Introduction , 1998 .

[5]  David Lorge Parnas,et al.  Active design reviews: principles and practices , 1985, ICSE '85.

[6]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[7]  Dan Craigen,et al.  An International Survey of Industrial Applications of Formal Methods , 1992, Z User Workshop.

[8]  Jim Woodcock,et al.  Using Z - specification, refinement, and proof , 1996, Prentice Hall international series in computer science.

[9]  Wolfgang Reisig Petri Nets: An Introduction , 1985, EATCS Monographs on Theoretical Computer Science.

[10]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[11]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[12]  Shaoying Liu,et al.  An approach to specifying and verifying safety-critical systems with practical formal method SOFL , 1998, Proceedings. Fourth IEEE International Conference on Engineering of Complex Computer Systems (Cat. No.98EX193).

[13]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[14]  John Dawes,et al.  The VDM-SL Reference Guide , 1991 .

[15]  C. A. R. Hoare,et al.  An Axiomatic Definition of the Programming Language PASCAL , 1973, Acta Informatica.

[16]  Meilir Page-Jones,et al.  Fundamentals of object-oriented design in UML , 1999 .

[17]  John C. Knight,et al.  An improved inspection technique , 1993, CACM.

[18]  A. Jefferson Offutt,et al.  SOFL: A Formal Engineering Methodology for Industrial Applications , 1998, IEEE Trans. Software Eng..

[19]  M.J.C. Gordon,et al.  The HOL Logic and System , 1994 .