Presenting Object Oriented Formal Requirements Specifications: Insights from an Action Research Study

This paper describes, in outline, our experiences in structuring and presenting formal requirements specifications, and in particular the insights gained from an action research study undertaken within the Western Australian state government. The overall aim of the project was to evaluate and enhance an information systems development method, known as FOOM (Formal Object Oriented Method). FOOM was synthesised from research into: • the object oriented approach • mathematically formal specific ation languages • socio-organisational contextual analysis. The paper focuses on a study of the communication between the specifier and the client-- principally on the problems associated with specification validation--and the effect this had on the structure of a FOOM requirements specification document. The result of the study described was a specification structure which allows precise communication both between developers/designers and the less mathematically sophisticated users of the system. While the focus of the research was validation of specifications written in the formal specification language Object-Z [10], we argue that the results of our analysis are of importance in the elicitation, refinement and validation of requirements specifications whenever a formal modelling approach is to be adopted.

[1]  Brian Henderson-Sellers,et al.  Booktwo of Object-Oriented Knowledge: The Working Object : Object-Oriented Software Engineering : Methods and Management , 1994 .

[2]  Anthony Hall,et al.  Seven myths of formal methods , 1990, IEEE Software.

[3]  Sung Joo Park,et al.  OPNets: An object-oriented high-level Petri net model for real-time system modeling , 1993, J. Syst. Softw..

[4]  David R. King,et al.  Object-oriented software , 1990 .

[5]  Peter Raynham Book Review: BookTwo of Object Oriented Knowledge: The Working Object , 1997, SOEN.

[6]  Peter Checkland,et al.  Systems Thinking, Systems Practice , 1981 .

[7]  Derek Coleman,et al.  Introducing Objectcharts or How to Use Statecharts in Object-Oriented Design , 1992, IEEE Trans. Software Eng..

[8]  PA Swatman,et al.  Formal specification – an analytic tool for (management) information systems , 1992, Inf. Syst. J..

[9]  Paul A. Swatman,et al.  Using Formal Specification in the Acquisition of Information Systems: Educating Information Systems Professionals , 1992, Z User Workshop.

[10]  Danielle Fowler Formal Methods in a Commercial Information Systems Setting: the FOOM Method , 1996 .

[11]  Chris F. Kemerer,et al.  Object-oriented and conventional analysis and design methodologies , 1992, Computer.

[12]  Ivar Jacobson,et al.  Object-Oriented Software Engineering , 1991, TOOLS.

[13]  Peter Checkland,et al.  Soft Systems Methodology in Action , 1990 .

[14]  James E. Rumbaugh,et al.  Object-Oriented Modelling and Design , 1991 .

[15]  Kuldeep Kumar,et al.  Strategies for incorporating formal specifications in software development , 1994, CACM.

[16]  J. S. McGregor Object-Oriented Software Development , 1992 .

[17]  Ivar Jacobson,et al.  Object-oriented software engineering - a use case driven approach , 1993, TOOLS.

[18]  Jeannette M. Wing A specifier's introduction to formal methods , 1990, Computer.

[19]  Gerald W. Both,et al.  Object-oriented analysis and design with applications , 1994 .

[20]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[21]  James L. Peterson,et al.  Petri net theory and the modeling of systems , 1981 .

[22]  Paul A. Swatman,et al.  FOOM: a diagrammatic illustration of Object-Z specifications , 1996, Object Oriented Syst..

[23]  Paula M. C. Swatman,et al.  Electronic Data Interchange a High-level Formal Specification in Object-Z , 1991 .

[24]  James L. Peterson,et al.  Petri Nets , 1977, CSUR.

[25]  Steve Powell,et al.  Z Guide for Beginners , 1993 .

[26]  Paul A. Swatman,et al.  Extending the Useful Application Domain for Formal Methods , 1991, Z User Workshop.

[27]  Lloyd G. Williams Assessment of safety-critical specifications , 1994, IEEE Software.

[28]  Peter Checkland,et al.  Soft Systems Methodology , 2020, Systems Approaches to Making Change: A Practical Guide.

[29]  Paul A. Swatman,et al.  Formal Methods in the IS Domain: Introducing a Notation for Presenting Object-Z Specifications , 1995 .

[30]  Jawed I. A. Siddiqi,et al.  Challenging universal truths of requirements engineering , 1994, IEEE Software.

[31]  Grady Booch,et al.  Object-oriented analysis and design with applications (2nd ed.) , 1993 .

[32]  John Wordsworth Software development with Z - a practical approach to formal methods in software engineering , 1992, International computer science series.

[33]  Tom DeMarco,et al.  Structured Analysis and System Specification , 1978 .

[34]  G. Susman,et al.  An Assessment of the Scientific Merits of Action Research. , 1978 .

[35]  Alan M. Davis,et al.  Software Requirements: Objects, Functions and States , 1993 .

[36]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[37]  Anthony Finkelstein,et al.  Formal requirements specification: the FOREST project , 1986 .