A Three-way Merging Algorithm for UML Models Based on Developers’ Subjective Assumptions

Authors

Department of Software Engineering, Faculty of Computer Engineering, University of Isfahan, Isfahan, Iran

Abstract

A model is an abstract representation of software system and is an appropriate solution to cope with the complexity of software. Utilizing from this fact, Model-Driven Development is an approach to software development that employs models as main artifacts for building software systems. With the increase in the number of designers in a team, different versions of model arise at any time during the development process, especially in the design phase. To manage these versions it is necessary to be able to identify differences and reconcile them in a single, integrated model. As a consequence, there is a need for tools and techniques to support model merging with less user interference. In this paper, an algorithm and tool for three-way merging of UML models is presented. Before merging, subjective assumptions of each developer is received and at the end, a consistent merged model is provided. According to the evaluations, user and modeling environment independency with less running time than the existing approaches, shows the superiority of this work.

Keywords