Graph explorer

Evolutionary Conflict Checking

During the software evolution, existing features may be adversely affected by new changes, which is well known as regression errors. Maintaining a high-quality test suite is helpful to prevent regression errors, whereas it heavily depends on developers. Continuously augmenting the existing test suite based on the new changes can assist developers in investigating the impact of these new changes. And by comparing the executions of the generated test case on two versions, existing techniques are able to detect some common errors. However, the requirements and oracles on the new changes with existing program behaviors are missing. In addition, the new changes may introduce new bugs when they are not sufficiently examined with other unchanged code, which finally fails to meet developers' real intentions on changes. In this paper, we propose the notion of evolutionary conflict checking to validate new changes. By extracting developers' intention reflected by new changes and transforming the linear evolutionary process into one three-way merge, we detect conflicts between existing behaviors and new changes. Our experimental results indicate that evolutionary conflict checking is able to be applied for guaranteeing software quality after changes.

7 nodes6 linksoverview previewEvolutionary Conflict Checking
7 nodes6 links
Evolutionary Conflict Checking7 visible / 7 total nodes / 16 links
Co-authorshipCo-authorshipCo-authorshipCo-authorshipCo-authorshipCo-authorshipCo-authorshipCo-authorshipCo-authorshipCo-authorshipAuthorshipAuthorshipAuthorshipAuthorshipTopic signalAuthorshipWEvolutionary Conflict Checkingpreprint / 2020ATao JiResearcherALiqian ChenResearcherAXiaoguang MaoResearcherAXin YiResearcherTSoftware Engineering3620 worksAJiahong JiangResearcher
PaperSignal 106 links

Evolutionary Conflict Checking

preprint / 2020

Open