Home > Research > Publications & Outputs > An empirical evaluation of coupling metrics on ...
View graph of relations

An empirical evaluation of coupling metrics on aspect-oriented programs

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Published
Close
Publication date1/04/2010
Host publicationProceedings of the 2010 ICSE Workshop on Emerging Trends in Software Metrics, in collocation with the ACM/IEEE 32nd Internation Conf. on Software Engineering (ICSE)
Place of PublicationCape Town, South Africa
PublisherACM
Pages53-58
Number of pages6
ISBN (print)978-1-60558-976-3
<mark>Original language</mark>English

Publication series

NameWETSoM'10
PublisherACM

Abstract

Coupling metrics received increased recognition by object-oriented (OO) software developers when they were found to be indicators of important quality attributes, such as fault-proneness. However, there is no consensus on which coupling metrics are effective quality indicators for emerging development paradigms, such as Aspect-Oriented Programming (AOP). AOP aims to improve software quality by providing significantly different decomposition mechanisms, such as pointcut, advice and intertype declarations. Therefore, it is not obvious if quality indicators for AOP can be derived from direct extensions of classical OO metrics. However, empirical studies of AOP do often rely on classical coupling metrics. Despite the recent adoption of AOP in industrial projects, coupling metrics have been rarely evaluated as useful indicators of fault-proneness in this context. This paper analyses the effectiveness of coupling metrics as indicators of fault-proneness in aspect-oriented (AO) systems. We collected faults from several releases of a real-world AO system. We applied and compared existing metrics for coupling and other internal attributes. We have also considered a novel metric that quantifies specific dependencies in AO software not captured by existing metrics. The results show that coupling metrics, which are not directives of object-oriented metrics, tended to be superior indicators of fault-proneness.