Found here
Both aggregation and composition are special kinds of associations.
Aggregation is used to represent ownership or a whole/part relationship,
and composition is used to represent an even stronger form of
ownership. With composition, we get coincident lifetime of part with the
whole. The composite object has sole responsibility for the disposition
of its parts in terms of creation and destruction.
Moreover, the multiplicity of the aggregate end may not exceed one;
i.e., it is unshared. An object may be part of only one composite at a
time. If the composite is destroyed, it must either destroy all its
parts or else give responsibility for them to some other object. A
composite object can be designed with the knowledge that no other object
will destroy its parts.
Composition can be used to model by-value aggregation, which is
semantically equivalent to an attribute. In fact, composition was
originally called aggregation-by-value in an earlier UML draft, with
“normal” aggregation being thought of as aggregation-by-reference. The
definitions have changed slightly, but the general ideas still apply.
The distinction between aggregation and composition is more of a design
concept and is not usually relevant during analysis.
http://stackoverflow.com/questions/813048/what-is-the-difference-between-composition-and-aggregation
No comments:
Post a Comment