page 1  (21 pages)
2to next section

Expanding the text here will generate a large amount of data for your browser to display

Object-extending Class Transformations

Karl J. Lieberherr, Walter L. H?ursch, Cun Xiao

Northeastern University, College of Computer Science

Cullinane Hall, 360 Huntington Ave., Boston MA 02115

lieber or huersch or cunxiao@corwin.CCS.northeastern.EDU

phone: +1-617-437-2077 or +1-617-437-3824

fax: +1-617-437-5121

February 20, 1992

Texed at 23:29 February 20, 1992
Copyright c 1991 Karl Lieberherr

Abstract

Reorganization and evolution of class hierarchies is important for object-oriented system development and has received considerable attention in the literature. The contributions of this paper are: (1) A formal study of a set of extension relations and transformations on class hierarchies. (2) A presentation of a small set of primitive transformations which form a minimal and complete basis for the extension relations. (3) An analysis of the impact of these transformations on the object level.
The study leads to a better understanding of evolution and reuse of object-oriented software and class hierarchies. It also provides a terminology and a means of classification for design reuse. The theory presented in this paper is based on the Demeter data model, which gives a concise mathematical foundation for classes and their inheritance and part-of relationships. Parts of the theory have been implemented in the Demeter SystemTMC++, a CASE tool for object-oriented design and programming.

Keywords: Object-oriented programming and design, class library organization, software reuse, formal software engineering techniques, schema evolution, software evolution.