Dynamic coupling metric: proof of concept (2005)

Author(s): Y. Hassoun, S. Counsell, and R. Johnson
Venue: IEEE Transactions on Software Engineering
Date: Dec 2005

Type of Experiement: Case Study


Comparison of two Java applications with differing architectural designs. A proposed met-
ric DCM (dynamic coupling metric) was used to compare its validity and usefulness when
polymorphism is used within OO languages.

Two Java applications were compared with similar outputs but radically different designs.
One Java application was strictly using static-based objects that were known statically at
compile-time. This Java application did not make any use of the language’s reflection mech-
anism to achieve polymorphism. One things of note is that the tool developed to test the
usefulness of DCM found that systems which used reflections demonstrated significantly less
coupling than their traditional (single-level) OO counterparts. The other Java application
was essentially the same program but structured to make use of Java’s reflection mechanism
through use of interfaces, polymorphism, &c. The tool demonstrated that it can extract
coupling metrics when used on polymorphic application and that it built on top of existing
static metrics.