New Quality Metrics for Object-Oriented Programs (2007)

Author(s): Dapeng Liu and Shaochun Xu
Venue: Eighth ACIS International Conference on Software Engineering , Artificial Intelligence, Networking, and Parallel/Distributed Computing
Date: 2007

Type of Experiement: Case Study


Five open-source projects of different sizes developed in Java were used to measure the ef-
fectiveness of the proposed metrics. The open-source projects are JAdvisor, JHotDraw, an
example JDI application, Violet, and AspectBrowser. The projects range from approxi-
mately 4000-28000 lines of code with a range of 37-241 classes.

Dapeng Liu and Shaochun Xu propose new software coupling metrics to evaluate more closely
the magnitude of method calls between classes. They do this by recording the absolute
number of method calls between classes and the ratio of the number of calls to the number
of container classes. In addition they ignore the number of method calls internally because
this represents cohesion which represents a good design. Furthermore anonymous inner
classes are merely for convenience and auxiliary operations they treat the methods as if they
were owned and held by the container class.

They apply the proposed metrics (of no name) to the five open-source projects and find
that they additional information in lieu of previous software coupling metrics. Their results
show the forward and backward calling relationships between classes in each system. They
use this data to determine the “hubs” of the system which display a high rate of forward
and backward calls. They theorize that the quality of these classes indicate the quality of
the whole software design. They also find that their is no relationship between program size
and number of classes with software complexity through coupling.