Abstract
Inheritance is one of the most prominent features of object-oriented design. Object types are organized in hierarchies in which subtypes inherit the structure as well as the behavior of supertypes. As inheritance of behavior is concerned, the discussion has mainly focused on inheritance of single activities in the past. Object behavior, however, is specified at two interrelated levels of detail: at the activity level and at the object type level. The latter is specified in terms of object life cycles that identify legal sequences of states and activities.
In this paper we treat inheritance of object life cycles in the realm of Behavior Diagrams, which are based on Petri nets. A behavior diagram of an object type models the possible life cycles of its instances by states, activities, and arcs corresponding to places, transitions, and arcs of Petri nets. In an inheritance hierarchy, subtypes usually specialize supertypes in two ways: by extension and by refinement. For Behavior Diagrams, extension means adding activities, states, and arcs; and refinement means expanding activities and states in subnets. The main contribution of this paper is a set of sufficient and necessary conditions to check whether a behavior diagram B’ consistently extends another behavior diagram B.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
S. Alagic, R. Sunderraman and R. Bagai, “Declarative Object-Oriented Programming: Inheritance, Subtyping and Prototyping,” in Proc of the 8th European Conference on Object-Oriented Programming (ECOOP’94), ed. M. Tokoro and R. Pareschi, pp. 236–259, Springer LNCS 821, 1994.
P. America, “Designing an Object-Oriented Programming Language with Behavioural Subtyping,” in Foundations of Object-Oriented Languages (REX School/Workshop Proceedings), ed. J.W. de Bakker, W.P. de Roever, and G. Rozenberg, pp. 60–90, Springer LNCS 489, 1990.
G. Booch, Object-Oriented Analysis and Design with Applications (2nd edition), Benjamin Cummings, 1994.
P.S. Canningen, W.R. Cook, W.L. Hill and W.G. Olthoff, “Interfaces for Strongly-Typed Object-Oriented Programming,” in Object-Oriented Programming Systems Languages and Applications (OOPSLA) Special Issue of SIG-PLAN Noticesed. N. Meyrowitz, vol. 24, pp. 457–467, Oct. 1989.
J. Ebert and G. Engels, “Dynamic Models and Behavioural Views,” in International Symposium on Object-Oriented Methodologies and Systems (ISOOMS)ed. E.Bertino and S.Urban, Springer LNCS 858, 1994.
H.-D. Ehrich, J.A. Goguen and A. Sernadas, “A Categorial Theory of Objects as Observed Processes,” in Foundations of Object-Oriented Languages (REX School/Workshop Proceedings)ed. J.W. de Bakker, W.P. de Roever, and G. Rozenberg, pp. 203–228, Springer LNCS 489, 1990.
D.W. Embley, B.D. Kurtz and S.N. Woodfield, Object-Oriented Systems Analysis - A Model-Driven Approach, Yourdon Press, 1992.
R. Hull and R. King, “Semantic Database Modelling: Survey, Applications, and Research Issues,” in ACM Computing Surveys, vol. 19, pp. 201–260, Sept. 1987.
L. Kalinichenko, “Structural and Behavioral Abstractions of the Multiactivities Intended for their Concretizations by the Pre-Existing Behaviors,” in Extending Information Systems Technology Proceedings of the Second International East/West Database Workshoped. J. Eder and L. Kalinichenko, Springer WSCS, 1994.
G. Kappel and M. Schrefl, “Using an Object-Oriented Diagram Technique for the Design of Information Systems,” in Proceedings of the International Working Conference on Dynamic Modelling of Information Systemsed. H.G. Sol, K.M. Van Hee, pp. 121–164, North-Holland, 1991.
G. Kappel and M. Schrefl, “Object/Behavior Diagrams,” in Proceedings of the 7th International Conference on Data Engineering, pp. 530–539, IEEE Computer Society Press, Kobe, Japan, April 1991.
G. Kappel and M. Schrefl, Objektorientierte Informationssysteme, Springer, Reihe Angewandte Informatik, Wien, New York, 1994 (in print).
B. Liskov and J.M. Wing, “A New Definition of the Subtype Relation,” in Proc of the 7th European Conference on Object-Oriented Programming (ECOOP’93)ed. O.M. Nierstrasz, pp. 118–141, Springer LNCS 707, Kaiserslautern, 1993.
B. Liskov and J.M. Wing, “Specifications and their Use in Defining Subtypes,” in Object-Oriented Programming Systems Languages and Applications (OOPSLA) Special Issue of SIGPLAN Noticesvol. 28, pp. 16–28, Dec. 1993.
A. Lopes and J.F. Costa, “Rewriting for Reuse,” in Proc. ERCIM Workshop on Development and Transformation of Programspp. 43–55, Nancy (F), Nov. 1993.
S. Matsuoka and A. Yonezawa, “Analysis of Inheritance Anomaly in Object-Oriented Concurrent Programming Languages,” in Research Directions in Concurrent Object-Oriented Programminged. G. Aga, P. Wegner, and A. Yonezawa, pp. 107–150, ACM Press, 1993.
J.D. McGregor and D.M. Dyer, “A Note on Inheritance and State Machines,” ACM SIGSOFT Software Engineering Notes, vol. 18, no. 4, pp. 61–69, Oct 1993.
O. Nierstrasz, “Regular Types for Active Objects,” inObject-Oriented Programming Systems Languages and Applications (OOPSLA) Special Issue of SIG-PLAN Noticesvol. 28, Dec. 1993.
J.L. Peterson, “Petri nets,”in ACM Computing Surveyspp. 223–252, 1977.
J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy and W. Lorensen, Object-Oriented Modelling and Design, Prentice-Hall, 1991.
G. Saake, P. Bartel, R. Jungclaus, R.Wieringa and R. Feenstra, “Inheritance Conditions for Object Life Cycle Diagrams,” in EMISA Workshop, 1994.
M. Schrefl, “Behavior Modeling by Stepwise Refining Behavior Diagrams,” in Proceedings of the 9th Int. Conf. on Entity Relationship Approach, pp. 113–128, Lausanne, Oct. 1990.
A. Sernadas and H.-D. Ehrich, “What is an Object, After All?,” in Proceedings of the IFIP WG 2.6 Working Conference on Object-Oriented Databases: Analysis Design and Construction (DS-4)ed. R. Meersman, W. Kent, and S. Khosla, pp. 39–70, North-Holland, 1991.
J.M. Smith and D.C.P. Smith, “Database Abstractions: Aggregation and Generalization,” in ACM Transactions on Database Systems, vol. 2, pp. 105–133, June 1977.
A. Snyder, “Inheritance and the Development of Encapsulated Software Components,” in Research Directions in Object-Oriented Programming, ed. B. Shriver and P. Wegner, pp. 165–188, The MIT Press, 1987.
P. Wegner, “Dimensions of Object-Based Language Design,” in Object-Oriented Programming Systems Languages and Applications (OOPSLA) Special Issue of SIGPLAN Noticesvol. 22, pp. 168–182, Dez. 1987.
P. Wegner and S.B. Zdonik, “Inheritance as an Incremental Modification Mechanism or What Like Is and Isn’t Like,” in European Conference on Object-Oriented Programming (ECOOP’88)ed. Gjessing S. and Nygaard K., pp. 55–77, Springer LNCS 322, Aug. 1988.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kappel, G., Schrefl, M. (1995). Inheritance of Object Behavior — Consistent Extension of Object Life Cycles. In: Eder, J., Kalinichenko, L.A. (eds) East/West Database Workshop. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3577-7_21
Download citation
DOI: https://doi.org/10.1007/978-1-4471-3577-7_21
Publisher Name: Springer, London
Print ISBN: 978-3-540-19946-5
Online ISBN: 978-1-4471-3577-7
eBook Packages: Springer Book Archive