An Empirical Study of the Relation Between Strong Change Coupling and Defects Using History and Social Metrics in the Apache Aries Project

TitleAn Empirical Study of the Relation Between Strong Change Coupling and Defects Using History and Social Metrics in the Apache Aries Project
Publication TypeBook Chapter
Year of Publication2015
AuthorsWiese, IS, Kuroda, RT, Re, R, Oliva, GA, Gerosa, MA
Refereed DesignationRefereed
Secondary AuthorsDamiani, E, Frati, F, Riehle, D, Wasserman, AI
Secondary TitleOpen Source Systems: Adoption and Impact
Series TitleIFIP Advances in Information and Communication Technology
Volume451
Pagination3-12
PublisherSpringer International Publishing
ISBN Number978-3-319-17836-3
Abstract

Change coupling is an implicit relationship observed when artifacts change together during software evolution. The literature leverages change coupling analysis for several purposes. For example, researchers discovered that change coupling is associated with software defects and reveals relationships between software artifacts that cannot be found by scanning code or documentation. In this paper, we empirically investigate the strongest change couplings from the Apache Aries project to characterize and identify their impact in software development. We used historical and social metrics collected from commits and issue reports to build classification models to identify strong change couplings. Historical metrics were used because change coupling is a phenomenon associated with recurrent co-changes found in the software history. In turn, social metrics were used because developers often interact with each other in issue trackers to accomplish the tasks. Our classification models showed high accuracy, with 70−99 % F-measure and 88−99 % AUC. Using the same set of metrics, we also predicted the number of future defects for the artifacts involved in strong change couplings. More specifically, we were able to predict 45.7 % of defects where these strong change couplings reoccurred in the post-release. These findings suggest that developers and projects managers should detect and monitor strong change couplings, because they can be associated with defects and tend to happen again in the subsequent release.

URLhttp://dx.doi.org/10.1007/978-3-319-17837-0_1
DOI10.1007/978-3-319-17837-0_1
Full Text