CS 696: Advanced OO
Spring Semester, 1997
Doc 4, Cohesion part 2
To Lecture Notes Index
San Diego State University -- This page last updated Feb 10, 1997
Contents of Doc 4, Cohesion part 2
Cohesion 2
References
Object Coupling and Object Cohesion, chapter 7 of Essays on Object-Oriented
Software Engineering, Vol 1, Berard, Prentice-Hall, 1993,
Composite Objects
A composite object is an object that is conceptually
composed of two, or more, other objects, which are
externally discernable.
Component objects are those that make up the composite
object.
Component objects are externally discernable if
- component objects can be directly queried or
changed via methods in the public interface of the
composite object and/or
- the externally discernible state of the object is
directly affected by the presence or absence of one or
more component objects
Ranking of Cohesion of Composite Objects
Increasing Order of Goodness
- externally discernible component objects not related
- some externally discernible component objects are
related, the group component objects does not make
sense
- the group component objects does not represent a
single stable object-oriented concept, but are all bound
together some how in an application
- a majaroity of the externally discernible component
objects support a single,coherent, object-oriented
concept, but at least one does not
- all of the externally discernible component objects
support a single,coherent, object-oriented concept, but at
least one needed object is missing
- all of the externally discernible component objects
support a single,coherent, object-oriented concept, and
none are missing
Accessing Cohesion of an Individual Object
Accessment of the public methods/public non
methods/component objects
- Are all the items appropriate for the given object?
- Do we have at least a minimally sufficient set of
items?
- Do we have extra or application-specific items?