Inheritance of Dynamic Behavior: Development of a Groupware Editor
One of the key issues of object-oriented modeling is inheritance.
It allows for the definition of subclasses that inherit features of
some superclass. Inheritance is well defined for static properties
of classes such as attributes and methods. However, there is no general
agreement on the meaning of inheritance when considering dynamic
behavior of objects. This paper studies inheritance of dynamic behavior
in a framework based on Petri nets. The notions of an object life cycle
and inheritance between life cycles are defined. The inheritance
relation is based on two fundamental concepts, namely blocking and
hiding method calls. Several transformation rules are given to
construct subclasses from a given superclass, thus allowing reuse of
life-cycle specifications during a design. To show the validity of the
approach, the results are applied to the development of a groupware
editor.
(
postscript /
pdf version of the complete paper)
Note that the paper is superseded by the following publication:
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)
Back to the list of publications.