ABSTRACT: Recent studies have largely investigated the detection of class design anomalies. They proposed a large set of metrics that help in detecting those anomalies and in predicting the quality of class design. While those studies and the proposed metrics are valuable, they do not address the particularities of software interfaces. Interfaces define the contracts that spell out how software modules and logic units interact with each other. This paper proposes a list of design defects related to interfaces: shared similarity between interfaces, interface clones and redundancy in interface hierarchy. We identify and describe those design defects through real examples, taken from well-known Java applications. Then we define three metrics that help in automatically estimating the interface design quality, regarding the proposed design anomalies, and identify refactoring candidates. We investigate our metrics and show their usefulness through an empirical study conducted on three large Java applications.
The authors in REF define a new list of metrics for assessing the design quality of interfaces with regard to the redundancy in interface hierarchies and to the similarities between interfaces.
Metrics for Assessing The Design of Software Interfaces
Hani Abdeen and Osama Shata."Metrics for Assessing the Design of Software Interfaces."International Journal of Advanced Research in Computer and Communication Engineering (IJARCCE) 1.10 (2012): 737-745
Computer Science