Teaching Formal Extensions of Informal-Based Object-Oriented Analysis Methodologies

Teaching formal methods of software specification is often difficult. This is in part due to the lack of well defined methodologies for applying formal methods to large software system specifications. We have integrated formal specification with a more informal object-oriented modeling methodology. This allows the students to follow an established modeling approach and still generate formal specifications. We find that the students learn the formalism much easier with this approach than with our prior technique of teaching formal methods as a separate block of instruction. However, the lack of good computer-aided tools for some formal specification languages can prevent the students from directly seeing all of the benefits of using formalism. This paper describes our use of Z schemas to add formalism to the object-oriented modeling methodology of Rumbaugh, et.al. [RBP+91], describes the introductory software engineering course in which it is taught, and discusses our experience.

[1]  Grady Booch,et al.  Object-Oriented Design with Applications , 1990 .

[2]  Edward Yourdon,et al.  Object-oriented analysis , 2012 .

[3]  Alan M. Davis,et al.  Software requirements - analysis and specification , 1990 .

[4]  David W. Embley,et al.  Object-oriented systems analysis , 1992 .

[5]  Abraham Silberschatz,et al.  Database System Concepts , 1980 .

[6]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[7]  Ian J. Hayes,et al.  Specification case studies , 1987 .

[8]  David Garlan,et al.  Formal Methods for Software Engineers: Tradeoffs in Curriculum Design , 1992, CSEE.

[9]  Michael R. Lowry,et al.  Automating software design , 1989, Digest of Papers. COMPCON Spring 89. Thirty-Fourth IEEE Computer Society International Conference: Intellectual Leverage.

[10]  Darrel C. Ince An introduction to discrete mathematics and formal system specification , 1988 .

[11]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[12]  Jane Sinclair,et al.  Introduction to formal specification and Z , 1991, Prentice Hall International Series in Computer Science.

[13]  Edward Yourdon,et al.  Object-oriented analysis (2nd ed.) , 1991 .