Abstract
Existing studies have shown that structural dependencies within code are good predictors
for code actual change impact set—a set of entities that repeatedly changing
together to ensure a consistent and complete change. However, the result is far from
ideal, particularly when insufficient historical data are available at an early stage of
software development. This paper demonstrates that a better understanding of data
dependencies in addition to call dependencies greatly improves actual change impact
set prediction. We propose a new approach and tool (namely, CHIP) to predict software
actual change impact sets leveraging both call and data sharing dependencies.
For this purpose, CHIP employs novel extensions (dependency frequency filtering
and shared data type idf filtering) to reduce false positives. CHIP assumes that developers
know initial places where to start making changes in the source code even
though they may not know all changes. This approach has been empirically evaluated
on 4 large‐scale open source systems. Our evaluation demonstrates that data sharing
dependencies have a complementary impact on software actual change impact set
prediction as compared with predictions based on call dependencies only. CHIP
improves the F2‐score compared with the predictors using both Program Dependence
Graph and evolutionary couplings.
| Original language | English |
|---|---|
| Article number | e1960 |
| Number of pages | 24 |
| Journal | Journal of Software: Evolution and Process |
| Issue number | 11 |
| DOIs | |
| Publication status | Published - 2018 |
Fields of science
- 102 Computer Sciences
- 102022 Software development
JKU Focus areas
- Computation in Informatics and Mathematics
- Engineering and Natural Sciences (in general)