Anomaly agglomeration as sign of product line instabilities

Research output: Other contributionResearchpeer-review


Software Product Line (SPL) is a set of software systems that share common and varying features. To provide large-scale reuse, the components of a SPL should be easy to maintain. Therefore, developers have to identify anomalous code structures, i.e., code anomalies, that are detrimental to the SPL maintainability. Otherwise, SPL changes can propagate to seemly-unrelated features and affect various SPL products. After reviewing the literature, we have found some detection strategies and several tools for code anomaly detection. In general, both strategies and tools provide similar detection results, and some tools are compatible with SPL. We then assume that the problem of detecting single code anomalies is sufficiently covered by the literature. Previous work often assume that each code anomaly alone suffices to characterize SPL maintenance problems, though each single anomaly may represent only a partial, insignificant, or even non-existent view of the problem extent. Consequently, previous studies have difficulties in characterizing anomalous code structures that indicate SPL maintenance problems. In this dissertation, we study the surrounding context of each anomaly and observe that certain anomalies may be interconnected, thereby forming socalled anomaly agglomerations. Two or more anomalies form an agglomeration in SPL when they affect the same SPL structural element, i.e., a feature, a feature hierarchy, or a component. We then investigate to what extent non-agglomerated and agglomerated anomalies represent sources of a specific SPL maintenance problem: instability. We analyze various releases of four feature-oriented SPLs. Our findings suggest that feature hierarchy agglomerations indicate up to 89% of sources of instability, i.e., a better result when compared with non-agglomerated anomalies.
Original languageEnglish
Publication date2017
Place of PublicationBelo Horizonte
PublisherFederal University of Minas Gerais
Number of pages68
Publication statusPublished - 2017
Externally publishedYes

Cite this