Alternative Object Organizations using Prototypes, Delegation and Split Objects

Show simple item record Astudillo R., Hernan en_US Shilling, John J. 2005-06-17T18:25:35Z 2005-06-17T18:25:35Z 1993 en_US
dc.description.abstract Object-based (i.e. classless) models are very effective for elucidating requirements from users, and they support exploratory programming and rapid prototyping. On the other hand, class-based models are preferred to perform design and implementation, providing descriptive power and some types of error checking. We consider the evolution of object-based models into class-based production systems. One of the most difficult problems of this transition is the change from explicit description of individuals to implicit description of class instances. Reorganization support aims to make the system structures and properties evident and enforceable. Structural properties are useful to organize the code regardless of its meaning, and automated support can be enlisted to identify potential structures and properties, leaving the programmer with choice of alternative workspace organizations. We analyze the organization and management of classless objects, regarding the goals of redundancy elimination and consistency maintenance, and how these goals are complicated by the existence of two mechanisms of object creation, cloning and extension (split objects). We present a classification of sharing and extension patterns in terms of the two basic mechanisms, and argue for a metrics-based approach to incremental reorganization. Finally, we propose in detail a set of abstractions with increasing descriptive power and consistency requirements: groups (untyped descriptions of structure and inheritance), families (partially typed descriptions of objects structure and inheritance, with monomorphic typing and consistency maintenance), and types (fully typed descriptions of families interfaces, with polymorphic typing by subtyping and relating implementation hierarchy to typed interfaces). en_US
dc.format.extent 243173 bytes
dc.format.mimetype application/pdf
dc.language.iso en_US
dc.publisher Georgia Institute of Technology en_US
dc.relation.ispartofseries CC Technical Report; GIT-CC-93-31 en_US
dc.subject Abstractions
dc.subject Class-based production systems
dc.subject Explicit description of individuals
dc.subject Families
dc.subject Formalization
dc.subject Groups
dc.subject Implicit description of class instances
dc.subject Object-based models
dc.subject Production-quality systems
dc.subject Prototypes
dc.subject Software development
dc.subject Split objects
dc.subject System requirements
dc.subject Types
dc.subject Class-based models
dc.subject Object-oriented analysis
dc.subject OOA
dc.title Alternative Object Organizations using Prototypes, Delegation and Split Objects en_US
dc.type Technical Report eng_US

Files in this item

Files Size Format View
GIT-CC-93-31.pdf 237.4Kb PDF View/ Open

This item appears in the following Collection(s)

Show simple item record