Samenvatting
Configurable software systems and software product lines build on features as first class entities for reasoning about commonalities and variability among system variants. While it is desirable to have modular features, this is not always achievable and research has shown that features interact frequently, which can come with negative effects like security vulnerabilities or bugs. Intensive research has been conducted regarding how and when features interact, focusing primarily on the implementation level and the variability mechanism therein. However, besides such structural, explicit feature dependencies represented in the code, there may also be more subtle, implicit feature dependencies. In this paper, we build on the idea that the co-evolution of features (i.e., co-changes between features) can reveal implicit dependencies, and thus point to poor design decisions that result in additional maintenance effort. We present a technique for analyzing feature co-changes based on repository mining and association rule mining to identify features that commonly change together and to reveal implicit dependencies. Moreover, we provide a large-scale multi-case study on five C systems (e.g., Linux kernel) to evaluate whether and how frequent such evolutionary dependencies occur. Our results reveal that a) feature co-changes occur quite frequently (25 to 70% of commits), b) a considerable amount of changes are supported by association rules (i.e, do not occur by chance), and c) several of these co-changes cannot be explained via explicit feature interactions. Overall, our technique and study complement existing research on feature dependencies and interactions by providing means for understanding implicit dependencies that are represented by feature co-evolution.
Originele taal-2 | Engels |
---|---|
Titel | 2023 IEEE 23rd International Working Conference on Source Code Analysis and Manipulation, SCAM 2023 |
Redacteuren | Leon Moonen, Christian Newman, Alessandra Gorla |
Uitgeverij | Institute of Electrical and Electronics Engineers |
Pagina's | 84-95 |
Aantal pagina's | 12 |
ISBN van elektronische versie | 979-8-3503-0506-7 |
DOI's | |
Status | Gepubliceerd - 20 dec. 2023 |
Evenement | 23rd International Working Conference on Source Code Analysis and Manipulation, SCAM 2023 - Bogotá, Colombia Duur: 2 okt. 2023 → 3 okt. 2024 |
Congres
Congres | 23rd International Working Conference on Source Code Analysis and Manipulation, SCAM 2023 |
---|---|
Verkorte titel | SCAM 2023 |
Land/Regio | Colombia |
Stad | Bogotá |
Periode | 2/10/23 → 3/10/24 |