Categorization of object-oriented software metrics
Ladan Tahvildari, Amar Pal Singh · 2002
As software engineering matures as a discipline, practitioners are looking for ways to use measurements in the engineering of their products. As development technology changes, they find their metrics must change as well. Object oriented software development requires a different approach from traditional development methods including the metrics used to evaluate the software. It means that traditional metrics for procedural approaches are not adequate for evaluating object oriented software, primarily because they are not designed to measure basic elements like classes, objects, polymorphism and message passing. Even when adjusted to syntactically analyze object oriented software, they can only capture a small part of such software and therefore can just provide a weak quality indication. The article focuses on the specific demands placed on measures by object oriented software development, and also highlights some of the fundamental differences between object oriented and the more traditional structured development techniques. Also, the article investigates the software product measures that exist in literature and categorizes them to provide a better insight into potential areas of concern, such as depth of inheritance, cohesion, size of objects, and system structure. Such a categorization should enable a practitioner to select a set of metrics that is better suited to one's specific objectives.