Commenced in January 2007
Frequency: Monthly
Edition: International
Paper Count: 30309
Software Evolution Based Sequence Diagrams Merging

Authors: Zine-Eddine Bouras, Abdelouaheb Talai


The need to merge software artifacts seems inherent to modern software development. Distribution of development over several teams and breaking tasks into smaller, more manageable pieces are an effective means to deal with the kind of complexity. In each case, the separately developed artifacts need to be assembled as efficiently as possible into a consistent whole in which the parts still function as described. In addition, earlier changes are introduced into the life cycle and easier is their management by designers. Interaction-based specifications such as UML sequence diagrams have been found effective in this regard. As a result, sequence diagrams can be used not only for capturing system behaviors but also for merging changes in order to create a new version. The objective of this paper is to suggest a new approach to deal with the problem of software merging at the level of sequence diagrams by using the concept of dependence analysis that captures, formally, all mapping, and differences between elements of sequence diagrams and serves as a key concept to create a new version of sequence diagram.

Keywords: system behaviors, sequence diagram merging, dependence analysis, sequence diagram slicing

Digital Object Identifier (DOI):

Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1357


[1] T. Mens, “A State-of-the-Art Survey on Software Merging”, IEEE Trans. on Software Engineering, Vol 28 No 5, pp. 449–462.
[2] P. Brosch, G. Kappel, P. Langer, M. Seidl, K. Wieland, and M. Wimmer, “An Introduction to Model Versioning”, Proc. Of the 12th international conference on Formal Methods for the Design of Computer, Communication, and Software Systems, SFM 2012, Springer- Verlag Berlin Heidelberg, pp. 336–398.
[3] H. Liang, Z. Diskin, J. Dingel, and E. Posse, “A General Approach for Scenario Integration”,Proc. ofthe11th International Conference on Model Driven Engineering Languages and Systems, MoDELS’08, 2008.
[4] E. Ogheneovo, “On the Relationship between Software Complexity and Maintenance Costs”. Journal of Computer and Communications, vol2, pp. 1-16, 2014.
[5] D. Ohst, M. Welle, and U. Kelter, “Differences between versions of UML diagrams”, Proc. of ESEC/FSE-11, pages 227–236, New York, NY, USA.ACM Press.
[6] S. Segura, R. M. Hierons, D. Benavides, and A. Ruiz-Cortes, “Automated metamorphic testing on the analyses of feature models”. Information and Software Technology, vol53, No 3, pp.245–258, 2011.
[7] M. Sabetzadeh, S. Nejati, S. Liaskos, S. M. Easterbrook, and M. Chechik, “Consistency checking of conceptual models via model merging”. Proc. of Requirement Engineering, RE 2007.IEEE,pp. 221- 230, 2007.
[8] K. Letkeman, “Comparing and Merging UML Models in IBM Rational Software Architect”, IBM, Aug. 2005.
[9] A. Mehra, J. Grundy, and J. Hosking, “A Generic Approach to Supporting Diagram Differencing and Merging for Collaborative Design”, Proc. of the 20th IEEE/ACM International Conference on Automated Software Engineering, ASE’05, pages 204–213, 2005.
[10] J.A. Stafford, A. L. Wolf, and M. Caporuscio “The Application of Dependence Analysis to Software Architecture Descriptions”, 3rdInternational School on Formal Methods for the Design of Computer, Communication and Software Systems: Software Architectures, SFM 2003, Bertinoro, Italy, September 22-27, pp. 52-62, 2003.
[11] T. Kim, Y. Song, and L. Chung, “Software architecture analysis: a dynamic slicing approach”, International Journal of Computer & Information Science, vol 1, no 2, pp. 91-103, 2000.
[12] J. Zhao, “Using dependence analysis to support software architecture understanding”, CoRR, vol. cs.SE/0105009, 2001.
[13] B. Li, “Managing Dependencies in Component-Based Systems Based on Matrix Model” Proc. of Net. Object. Days, pp. 22-25, 2003.
[14] B. Li, Y. Zhou, Y. Wang, and J. Mo, “Matrix-based component dependence representation and its applications in software quality assurance” SIGPLAN Notices, vol 40, no 11, pp. 29–36, 2005.
[15] J. Lalchandani, “Static Slicing of UML Architectural Models”, Journal of Object Technology, vol 8, no 1, pp. 159-188, 2009.
[16] S. Kumar, D. P. Mohapatra, “Test Case Generation from Behavioral UML Models”, International Journal of Computer Applications, vol 6, no8, September 2010.
[17] Y. Wang, J. DeWitt, and J. Cai, “X -Diff: An Effective Change Detection Algorithm for XML Documents”, Proc. of19th Intern. Conference on Data Engineering, India, pp. 519-530.
[18] J. Raymond, E. Gardiner, and P. Willett, “RASCAL: Calculation of Graph Similarity using Maximum Common Edge Subgraphs”, The Computer Journal, vol45, no 6, pp. 631-644, 2002.
[19] P. Samuel, R. Mall, “Slicing-Based Test Case Generation from UML Activity Diagrams”, ACM SIGSOFT Software Engineering Notes, Vol 34 No 6, November 2009.