Alternative Object Organizations using Prototypes, Delegation and Split Objects

Show full item record

Please use this identifier to cite or link to this item: http://hdl.handle.net/1853/6796

Title: Alternative Object Organizations using Prototypes, Delegation and Split Objects
Author: Astudillo R., Hernan ; Shilling, John J.
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).
Type: Technical Report
URI: http://hdl.handle.net/1853/6796
Date: 1993
Relation: CC Technical Report; GIT-CC-93-31
Publisher: Georgia Institute of Technology
Subject: Abstractions
Class-based production systems
Explicit description of individuals
Families
Formalization
Groups
Implicit description of class instances
Object-based models
Production-quality systems
Prototypes
Software development
Split objects
System requirements
Types
Class-based models
Object-oriented analysis
OOA

All materials in SMARTech are protected under U.S. Copyright Law and all rights are reserved, unless otherwise specifically indicated on or in the materials.

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 full item record