Title :
On object systems and behavioral inheritance
Author :
Harel, David ; Kupferman, Orna
Author_Institution :
Dept. of Comput. Sci. & Appl. Math., Weizmann Inst. of Sci., Rehovot, Israel
fDate :
9/1/2002 12:00:00 AM
Abstract :
We consider state-based behavior in object-oriented analysis and design, as it arises, for example, in specifying behavior in the UML using statecharts. We first provide a rigorous and analyzable model of object systems and their reactivity. The definition is for basic one-thread systems, but can be extended in appropriate ways to more elaborate models. We then address the notion of inheritance and behavioral conformity and the resulting substitutability of classes, whereby inheriting should retain the system´s original behaviors. Inheritance is a central issue of crucial importance to the modeling, design, and verification of object-oriented systems, and the many deep and unresolved questions around it cannot be addressed without a precise definition of the systems under consideration. We use our definition to give a clear and rigorous picture of what exactly is meant by behavioral conformity and how computationally complex it is to detect.
Keywords :
formal specification; formal verification; inheritance; object-oriented methods; object-oriented programming; specification languages; UML; behavioral conformity; behavioral inheritance; class substitutability; modeling; object systems; object-oriented analysis and design; one-thread systems; reactivity; state-based behavior; statecharts; verification; Analytical models; Computational modeling; Computer languages; Object oriented modeling; Object oriented programming; Proposals; Runtime; Unified modeling language; Writing;
Journal_Title :
Software Engineering, IEEE Transactions on
DOI :
10.1109/TSE.2002.1033228