Life-Cycle Inheritance
A Petri-Net-Based Approach
Inheritance is one of the key issues of object-orientation. The
inheritance mechanism allows for the definition of a subclass which
inherits the features of a specific superclass. This means that methods
and attributes defined for the superclass, are also available for
objects of the subclass. Existing methods for object-oriented modeling
and design, abstract from the dynamic behavior of objects when defining
inheritance. Nevertheless, it would be useful to have a mechanism which
allows for the inheritance of dynamic behavior. This paper describes a
Petri-net-based approach to the formal specification and verification
of this type of inheritance. We use Petri nets to specify the dynamics
of an object class. The Petri-net formalism allows for a graphical
representation of the life cycle of objects which belong to a specific
object class. Four possible inheritance relations are defined. These
inheritance relations can be verified automatically. Moreover, four
powerful transformation rules which preserve specific inheritance
relations are given.
The full version is not available because the paper is superseded by
the following publications:
-
T. Basten and W.M.P. van der Aalst.
Inheritance of Behavior. Journal of Logic and Algebraic Programming,
47(2):47-145, March/April 2001.
(abstract /
postscript /
pdf)
-
W.M.P. van der Aalst and T. Basten.
Life-Cycle Inheritance: A Petri-Net-Based Approach.
In P. Azéma and G. Balbo, editors,
Application and Theory of Petri Nets 1997, 18th. International
Conference, ICATPN'97, Proceedings, pages 62-81.
Toulouse, France, June 1997.
Lecture Notes in Computer Science 1248.
Springer, Berlin, Germany, 1997.
(abstract /
postscript /
pdf)
Back to the list of Technical Reports.