Explicit Relationships in Object Oriented Development
File (PDF)
Explicit Relationships in Object Oriented Development.pdf
Review
- Explicit Relationships
- smaller and easier to comprehend
- quick to write and mantain
- Objects & relationships between objects
- OOP don't support relationships
- relationships from analysis are lost during implementation
- Analysis relationships are transformed into objects during design
- relationships are traced from design to implementation
- Objects inter-relation
- Generalization == Inheritance
- Aggregation & Association == don't remain explicit in the implementation
- Collections as relations
- provide generic behaviour (adding and removing elements)
- don't provide app specific behaviour ; extra behaviour is required to maintain the analysis relationships.
Relationships from analysis are lost during design and implementation.
HOW : Analysis relations are transformed into objects during design.
There is no guarantee that aggregation and association relationships will remain explicitly present in the program.
The complexity that is introduced by associating all system behavior with objects and none with relationships between objects.
Classes become large, and class methods start to embody complex calculations and constraint checking dependent on inter-object relationships.
The more relationships an object participates in, the more difficult it becomes to ensure this and to maintain and reuse classes.
Notes
References
Bibliographic Description
@INPROCEEDINGS{Noble95explicitrelationships,
author = {James Noble and John Grundy},
title = {Explicit Relationships in Object Oriented Development},
booktitle = {Proceedings of TOOLS 18: Technology of ObjectOriented Languages and Systems Conference},
year = {1995},
pages = {211--225},
publisher = {Prentice Hall}
}
page revision: 9, last edited: 20 Nov 2008 16:46