出版社:University of Malaya * Faculty of Computer Science and Information Technology
摘要:Software Configuration Management (SCM) aims to provide a controlling mechanism for the evolution of software artifacts created during software development process. Controlling software artifacts evolution requires many activities to be carried out such as, construction and creation of versions, computation of mappings and differences between versions, merging (i.e. combining of two or more versions) and so on. Traditional SCM systems are filebased SCM systems, which are not adequate for performing software configuration management activities. Filebased SCM systems consider software artifacts as a set of text files, while today’s software development is modeldriven and models are the main artifacts produced in the early phases of software development process. New challenges of model mappings, differencing, merging, and conflict detection arise when applying filebased solution to modeldriven software. The goal of this paper is to develop a configuration management solution for model merging and conflict resolution that overcomes the challenges faced by traditional SCM systems for modelbased development. We represent models at finegrained level as graph structures, which is an intermediate representation based on graph theory. Our approach follows a 3way model merge process, where a base and its derived versions are used for comparison. To differentiate between conflicted and nonconflicted cases, we have defined different merge cases, and established a merge policy based on merge cases. Merge cases are used along with the comparison result in order to perform conflict resolution and merge operation. We performed a controlled experiment using open source eclipse modeling framework and compare our approach with an open source tool Eclipse Modeling Framework (EMF) Compare. The results proved the accuracy and efficiency of our proposed approach.
关键词:finegranular model representation; model diff; model merge; conflict detection; model driven engineering