Abstract
Object-Oriented (OO) methodologies are prevalent for developing software. The main tenet of OO software engineering methodologies is the development of three distinct, yet integrated, models of software: the object, dynamic, and functional models. The main problems associated with OO methodologies are weak semantics and lack of integration. Weak semantics allow ambiguous interpretations of behavior, while the lack of integration makes it difficult to establish consistency between and across the models. An important solution to rectify this semantic weakness in current OO methodologies is to use formal methods to specify the critical behavior of objects. Formal methods facilitate a precise description of the behavior of objects, and allow reasoning to ensure consistency and completeness. This paper presents the state-of-the-art in using formal methods for OO software engineering.
Similar content being viewed by others
References
Alencar, A.J. and J. Goguen (1991), “OOZE: An Object-Oriented Z Environment”, InProceedings of the European Conference on Object Oriented Programming, Springer-Verlag, Berlin, Germany, pp. 180–199.
Booch, G. (1994).Object-Oriented Analysis and Design with Applications, Benjamin Cummings, Redwood City, CA.
Carrington, D. (1989), “Object-Z: an Object-Oriented Extension to Z”, InProceedings of the Conference on Formal Description Techniques, Springer-Verlag, Berlin, Germany, pp. 203–256.
Coad, P. and E. Yourdon (1991),Object-Oriented Analysis, Yourdon Press/Prentice-Hall, Englewood Cliffs, NJ.
Coleman, D., P. Arnold, S. Bodoff, C. Dollin, H. Gilchrist, F. Hayes and P. Jeremaes (1994),Object-Oriented Development — The Fusion Method, Prentice-Hall, Englewood Cliffs, NJ.
Coleman, D., F. Hayes and S. Bear (1992), “Introducing Objectcharts or How to Use Statecharts in Object-Oriented Design”,IEEE Transactions on Software Engineering 18, 1, 9–18.
Cook, S. and J. Daniels (1994),Designing Object Systems, Prentice-Hall, Englewood Cliffs, NJ.
Dodani, M. (1994), “Model-Based Specifications of Object-Oriented Software”,Report on Object Oriented Analysis and Design 1, 4, 8–12.
Dodani, M. (1994), “Specifying Object-Oriented Software”,Report on Object Oriented Analysis and Design 1, 3, 33–37.
Dodani, M. (1994), “Fusing Formal Methods with Object Oriented Software Engineering Methodologies”,Report on Object Oriented Analysis and Design 1, 2, 20–24.
Dodani, M. (1994), “Semantically Rich Object-Oriented Software Engineering Methodologies”,Report on Object oriented Analysis and Design 1, 1, 17–21.
Feijs, L.M.G. and H.B.M. Jonkers (1992),Formal Specification and Design, Cambridge University Press, Cambridge, United Kingdom.
Goguen, J.A. and J. Meseguer (1988), “Unifying Functional, Object-Oriented and Relational Programming with Logical Semantics”, InResearch Directions in Object-Oriented Programming, MIT Press, Cambridge, MA.
Harel, D. (1987). “Statecharts: A Visual Formalism for Complex Systems”,Science of Computer Programming 8, 231–274.
Hayes, F. and D. Coleman (1991), “Coherent Models for Object-Oriented Analysis”,ACM SIGPLAN Notices 26, 11, 171–183.
Jacobson, I., M. Christerson, P. Jonsson and G. Overgaard (1992),Object-Oriented Software Engineering: A Use-Case Driven Approach, Addison-Wesley, Reading, MA.
Lee, S.P. (1994), “A History-Based Semantic Framework for Object-Oriented Software Engineering Methodologies”, PhD Thesis, Department of Computer Science, University of Iowa, Iowa City, IA.
Leeuwen, van J. (1990),The RAISE Specification Language, MIT Press, Cambridge, MA.
Rumbaugh, J., M. Blaha, W. Premerlani, F. Eddy and W. Lorensen (1991),Object-Oriented Modeling and Design, Prentice-Hall, Englewood Cliffs, NJ.
Shlaer, S. and S. Mellor (1988),Object-Oriented System Analysis, Yourdon Press/Prentice-Hall, Englewood Cliffs, NJ.
Wieringa, R. (1991), “Steps Towards a Method for the Formal Modeling of Dynamic Objects”,Data and Knowledge Engineering 6, 509–540.
Wordsworth, J. (1992),Formal Specification in Z, Addison-Wesley, Reading, MA.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Dodani, M. Formal methods for object-oriented software engineering. Ann Software Eng 2, 121–160 (1996). https://doi.org/10.1007/BF02063808
Issue Date:
DOI: https://doi.org/10.1007/BF02063808