Skip to Main content Skip to Navigation

Supporting Software Integration Activities with First-Class Code Changes

Martín Dias 1
1 RMOD - Analyses and Languages Constructs for Object-Oriented Application Evolution
Inria Lille - Nord Europe, CRIStAL - Centre de Recherche en Informatique, Signal et Automatique de Lille - UMR 9189
Abstract : Developers typically change codebases in parallel from each other, which results in diverging codebases. Such diverging codebases must be integrated when finished. Integrating diverging codebases involves difficult activities. For example, two changes that are correct independently can introduce subtle bugs when integrated together. Integration can be difficult with existing tools, which, instead of dealing with the evolution of the actual program entities being changed, handle code changes as lines of text in files. Tools are important: software development tools have greatly improved from generic text editors to IDEs by providing high-level code manipulation such as automatic refactorings and code completion. This improvement was possible by the reification of program entities. Nevertheless, integration tools did not benefit from a similar reification of change entities to improve productivity in integration. In this work we first conducted a study to learn which integration activities are important and have little tool support. We discovered that one of such activities is the detection of tangled commits (that contain unrelated tasks such as a bug fix and a refactoring). Then we proposed Epicea, a reified change model and associated IDE tools, and EpiceaUntangler, an approach to help developers share untangled commits based on Epicea. The results of our evaluations with real-world studies show the usefulness of our approaches.
Document type :
Complete list of metadata

Cited literature [65 references]  Display  Hide  Download
Contributor : Lse Lse Connect in order to contact the contributor
Submitted on : Tuesday, December 22, 2015 - 3:40:21 PM
Last modification on : Wednesday, March 23, 2022 - 3:51:21 PM
Long-term archiving on: : Sunday, April 30, 2017 - 12:11:13 AM


  • HAL Id : tel-01247696, version 1


Martín Dias. Supporting Software Integration Activities with First-Class Code Changes . Programming Languages [cs.PL]. Laboratoire d’Informatique Fondamentale de Lille, 2015. English. ⟨tel-01247696⟩



Record views


Files downloads