Conflicts in software development: prevent or resolve?

Conflicts occur frequently in software development. Whenever a development team works together on a system, conflicts can arise - for example when working on code in a distributed team. At BTU, the new project CORE-GT (Conflict Prevention and Proactive Conflict Resolution Strategies for Graph Transformation) is being funded by the DFG.

Conflicts occur frequently in software development. Whenever a development team works together on a system, conflicts can arise - for example when working on code in a distributed team. Although today's tools are good at recognising conflicts, they offer little support for dealing with them effectively. Resolving conflicts is often difficult, especially for complex tasks such as code refactoring. According to the Capability Maturity Model Integration (CMMI), mature processes aim to prevent problems before they occur, rather than reacting after the fact. To date, however, there has been little research into how conflicts in software development can be proactively prevented or resolved. The concepts of graph transformation provide a powerful foundation for developing a proactive approach. There are three reasons for this: Firstly, graphs are well suited to representing complex structures, such as code artefacts, System Architectures or computational states. Secondly, changes to these structures can be clearly described using graph transformation rules. Thirdly, graph transformation is based on a rich and well-established theory.

 

At BTU, the new DFG-funded project CORE-GT (Conflict Prevention and Proactive Conflict Resolution Strategies for Graph Transformation) is being funded to develop a proactive approach for dealing with conflicts based on graph transformation systems. Potential conflicts can be prevented on the basis of repair proposals at the time of development, while unavoidable conflicts are resolved by finding a suitable solution for both sides. Solution templates are prepared in advance and applied semi-automatically when conflicts arise. Heuristic search techniques are used to find such conflict solutions.

 

The CORE-GT project is headed by Prof. Gabriele Taentzer (Philipps University Marburg) and Prof. Leen Lambers (BTU Cottbus-Senftenberg). Two positions are earmarked for realising the project ideas within three years and writing doctoral theses.