A generic difference algorithm for UML models
It is state-of-the-art to use the Unified Modelling Language (UML) to describe software system models. In order to support cooperative team work a version management system which supports UML models is absolutely necessary. The essential part of such systems is the ability to calculate differences and present them to the developer. This paper presents an approach for computing differences between UML models encoded as XMI files. In contrast to our previous work, we present a generic approach, with which we are able to cover a broad range of UML diagram types. It also does not require persistent identifiers of diagram elements. Our prototype implementation shows, that our difference algorithm used leads to good runtimes in the case of small documents and acceptable runtimes in the case of large documents. Overall, it has a very low error rate, i.e. the quality of the differences is almost optimal.
Full Text: PDF