Article ID Journal Published Year Pages File Type
418386 Computer Languages, Systems & Structures 2012 20 Pages PDF
Abstract

Studies which consider the extent to which the encapsulation of a class is weakened by direct access to its hidden members (such as through the use of the friend construct in C++) are scarce, and those that do exist are based on metric suites where the enabling mechanism of the coupling is ignored. This can lead to conclusions of limited construct validity where incorrect causes of coupling are suggested.In this paper a suite of software metrics which measure the amount of coupling enabled by different C++ programming language constructs (such as friendship and inheritance) are proposed. The metrics presented are based on a formal data model which can be easily adapted for other OO languages. This formal approach removes the scope for ambiguity in the metric definitions. These metrics provide a more accurate reflection of the causative agents of coupling in Object Oriented Systems and their utility is illustrated in an empirical study towards the end of the paper.

► We provide a formal model (removing ambiguity) as the basis for metric definitions for the C++ language. ► We provide definitions for a set of fine-grained metrics based on this model. ► We analyse the metrics from a theoretical perspective. ► We provide an empirical evaluation that assesses the entire metric suite against a number of systems.

Related Topics
Physical Sciences and Engineering Computer Science Computational Theory and Mathematics
Authors
, , ,