Database Reference
In-Depth Information
Table 2: Cohesion Coeffi cients for Figure 2
X
A
B
relation cohesion
1/2
1
2/3
information cohesion
5/9
1/5
1/3
total cohesion
5/18 (≈ 0.3)
1/5 (= 0.2)
2/9 (≈ 0.2)
EVALUATION
Theoretical Perspective
One could wonder if the introduced cohesion metric has a sound theoretical basis. For
the sake of comparison: In computing science many metrics exist to express the quality
of some piece of software, but many of these metrics have been subject to wide criticism
because of the lack of such a theoretical basis (e.g., Vessey & Weber, 1984).
To the author's knowledge, design quality criteria are lacking so far in the area of
workfl ow design, aside from correctness notions (e.g., Aalst, 1998). Therefore, we consider
a set of principles as defi ned by Chidamber and Kemerer (1994), which in turn have been
derived from Weyuker (1988). These principles specifi cally aim at providing support when
specifying cohesion metrics in objected oriented software design. Although the differences
between this area and that of process design are clear, we refer to it in lack of more specifi c
support.
The principles of Chidamber and Kemerer (1994) are defi ned on classes, which in
Object-Oriented Design (OOD) can be seen as abstractions of the problem space. They are
the following:
1. Noncoarseness : Given a class P and a metric
P and a metric P µ, another class Q can always be found
such that µ((( ) ≠µ( Q ). This implies that not every class can have the same value for
a metric; otherwise it has lost its value as a measurement.
2. Nonuniqueness (Notion of Equivalence) : There can exist distinct classes P and
P and P Q such
that µ((( ) = µ( Q ). This implies that two classes can have the same metric value, i.e.,
the two classes are equally complex.
3. Design Details are Important : Given two class designs, P and
P and P Q , which provide the
same functionality, this does not imply that µ((( ) = µ( Q ). The specifi cs of the class
must infl uence the metric value. The intuition behind the property is that even though
two class designs perform the same function, the details of the design matter in deter-
mining the metric for the class.
4. Monotonicity : For all classes P and
P and P Q , the following must hold µ((( ) ≤µ((( + Q ) and
µ( Q ) ≤µ((( + Q ) where P + Q implies combination of P and
P and P Q . This implies that the
metric for the combination of two classes can never be less than the metric for either
of the component classes.
5. Nonequivalence of Interaction : ∃ P , ∃ Q , ∃ R , such that µ((( ) = µ( Q ) does not imply
that µ((( +++ ) = µ( Q +++ ). This suggests that interaction between P and
P and P R can be differ-
ent from interaction between Q and R, resulting in different complexity values for P
+ R and Q + R .
 
Search WWH ::




Custom Search