Publication | Closed Access
A state-of-the-art survey on software merging
524
Citations
62
References
2002
Year
Software MaintenanceEngineeringState-of-the-art SurveySoftware EngineeringFormal VerificationSoftware AnalysisAutomated Software EngineeringSystems EngineeringSoftware AspectTextual MergingSoftware Re-engineeringComprehensive SurveyComputer ScienceSoftware DesignSoftware EvolutionProgram AnalysisSoftware TestingSoftware MergingFormal MethodsSoftware Architecture RecoverySystem Software
Software merging is essential for maintaining and evolving large‑scale systems, and over time a wide range of techniques—from simple textual merges to syntax‑ and semantics‑aware, operation‑based approaches—have emerged, aiming to be general, accurate, scalable, customizable, and conflict‑detecting across all software life‑cycle phases. The paper surveys and analyzes existing merge approaches. The survey identifies key open problems and future research directions in software merging.
Software merging is an essential aspect of the maintenance and evolution of large-scale software systems. This paper provides a comprehensive survey and analysis of available merge approaches. Over the years, a wide variety of different merge techniques has been proposed. While initial techniques were purely based on textual merging, more powerful approaches also take the syntax and semantics of the software into account. There is a tendency towards operation-based merging because of its increased expressiveness. Another tendency is to try to define merge techniques that are as general, accurate, scalable, and customizable as possible, so that they can be used in any phase in the software life-cycle and detect as many conflicts as possible. After comparing the possible merge techniques, we suggest a number of important open problems and future research directions.
| Year | Citations | |
|---|---|---|
Page 1
Page 1