DIFFERENCING AND MERGING OF SOFTWARE DIAGRAMS - State of the Art and Challenges

Sabrina Förtsch, Bernhard Westfechtel

Abstract

For long, fine-grained version control for software documents has been neglected severely. Typically, software configuration management systems support the management of text or binary files. Unfortunately, text-based tools for fine-grained version control are not adequate for software documents produced in earlier phases in the software life cycle. Frequently, these documents have a graphical syntax; therefore we will call them software diagrams. This paper discusses the current state of the art in fine-grained version control (differencing and merging) for software diagrams with an emphasis on UML diagrams.

References

  1. (2005). MOF 2.0/XMI Mapping Specification, v2.1. Object Management Group, final/05-09-01 edition.
  2. (2005). MOF2 Versioning Final Adopted Specification. Object Management Group, ptc/05-08-01 edition.
  3. (2007). Contributions to the workshop ”Versionierung und Vergleich von UML-Modellen” on the conference of Software Engineering 2007 in Hamburg. Softwaretechnik-Trends, 27(2). (to appear). http://pi.informatik.uni-siegen.de/gi/fg211/VVUM07/.
  4. Alanen, M. and Porres, I. (2003). Difference and union of models. In Stevens, P., Whittle, J., and Booch, G., editors, UML 2003 - The Unified Modeling Language, Modeling Languages and Applications, 6th International Conference, LNCS 2863, pages 2-17. Springer.
  5. Buffenbarger, J. (1995). Syntactic software merging. In Estublier, J., editor, Software Configuration Management: Selected Papers SCM-4 and SCM-5, LNCS 1005, pages 153-172.
  6. Chawathe, S. S. and Garcia-Molina, H. (1997). Meaningful change detection in structured data. In Peckman, J. M., editor, Proceedings ACM SIGMOD International Conference on Management of Data, pages 26- 37. ACM Press.
  7. Chen, P., Critchlow, M., Garg, A., der Westhuizen, C. V., and van der Hoek, A. (2003). Differencing and merging within an evolving product line architecture. In van der Linden, F., editor, Proceedings of the Fifth International Workshop on Product Family Engineering (PFE-5), LNCS 3014, Siena, Italy. Springer Verlag.
  8. Cobena, G., Abiteboul, S., and Marian, A. (2002). Detecting changes in XML documents. In International Conference on Data Engineering, pages 41-52. IEEE Computer Society.
  9. Conradi, R. and Westfechtel, B. (1998). Version models for software configuration management. ACM Computing Surveys, 30(2):232-282.
  10. Engel, K.-D., Paige, R. F., and Kolovos, D. S. (2006). Using a model merging language for reconciling model versions. In Rensink, A. and Warmer, J., editors, ECMDA-FA, volume 4066 of Lecture Notes in Computer Science, pages 143-157. Springer.
  11. Horwitz, S., Prins, J., and Reps, T. (1989). Integrating noninterfering versions of programs. ACM Transactions on Programming Languages and Systems, 11(3):345- 387.
  12. Hunt, J. and Szymanski, T. (1977). A fast algorithm for computing longest common subsequences. Communications of the ACM, 20(5):350-353.
  13. Kelter, U., Wehren, J., and Niere, J. (2005). A generic difference algorithm for UML models. In Liggesmeyer, P., Pohl, K., and Goedicke, M., editors, Software Engineering 2005, LNI 64, pages 105-116. GI.
  14. Lindholm, T. (2004). A three-way merge for XML documents. In Munson, E. V. and Vion-Dury, J.-Y., editors, Proceedings of the 2004 ACM Symposium on Document Engineering, pages 1-10. ACM.
  15. Mehra, A., Grundy, J. C., and Hosking, J. G. (2005). A generic approach to supporting diagram differencing and merging for collaborative design. In Redmiles, D. F., Ellman, T., and Zisman, A., editors, 20th IEEE/ACM International Conference on Automated Software Engineering (ASE 2005), pages 204- 213. ACM.
  16. Melnik, S., Garcia-Molina, H., and Rahm, E. (2002). Similarity flooding: A versatile graph matching algorithm and ist application to schema matching. In Proceedings 18th International Conference on Data Engineering, pages 117-128, San Jose, CA.
  17. Mens, T. (2002). A state-of-the-art survey on software merging. IEEE Transactions on Software Engineering, 28(5):449-462.
  18. Ohst, D. and Kelter, U. (2002). A fine-grained version and configuration model in analysis and design. In ICSM, pages 521-527. IEEE Computer Society.
  19. Ohst, D., Welle, M., and Kelter, U. (2003). Differences between versions of UML diagrams. In Proceedings ESEC/FSE-11, pages 227-236, New York, NY, USA. ACM Press.
  20. Ohst, D., Welle, M., and Kelter, U. (2004). Merging UML documents. Internal Report, University of Siegen.
  21. Rho, J. and Wu, C. (1998). An efficient version model of software diagrams. In Asia Pacific Software Engineering Conference, pages 236-243. IEEE Computer Society Press.
  22. Schneider, C., Zündorf, A., and Niere, J. (2004). CoObRA - a small step for development tools to collaborative environments. In Workshop on Directions in Software Engineering Environments; 26th international conference on software engineering. ICSE 2004, Scotland.
  23. Schürr, A., Winter, A., and Zündorf, A. (1999). The PROGRES approach: Language and environment. In Ehrig, H., Engels, G., Kreowski, H.-J., and Rozenberg, G., editors, Handbook on Graph Grammars and Computing by Graph Transformation: Application, Languages, and Tools, volume 2, pages 487-550. World Scientific.
  24. Soto, M. and M ünch, J. (2006). Process model difference analysis for supporting process evolution. In Richardson, I., Runeson, P., and Messnarz, R., editors, Software Process Improvement, 13th European Conference, EuroSPI 2006, LNCS 4257, pages 123-134. Springer.
  25. Tichy, W. F. (1984). The string-to-string correction problem with block moves. ACM Transactions on Computer Systems, 2(4):309-321.
  26. Wiborg-Weber, D. (1999). CM strategies for RAD. In Estublier, J., editor, System Configuration Management: 9th International Symposium (SCM-9), LNCS 1675, pages 204-216.
  27. Xing, Z. and Stroulia, E. (2005). UMLDiff: an algorithm for object-oriented design differencing. In Redmiles, D. F., Ellman, T., and Zisman, A., editors, 20th IEEE/ACM International Conference on Automated Software Engineering (ASE 2005), pages 54- 65. ACM.
Download


Paper Citation


in Harvard Style

Förtsch S. and Westfechtel B. (2007). DIFFERENCING AND MERGING OF SOFTWARE DIAGRAMS - State of the Art and Challenges . In Proceedings of the Second International Conference on Software and Data Technologies - Volume 2: ICSOFT, ISBN 978-989-8111-06-7, pages 90-99. DOI: 10.5220/0001342900900099


in Bibtex Style

@conference{icsoft07,
author={Sabrina Förtsch and Bernhard Westfechtel},
title={DIFFERENCING AND MERGING OF SOFTWARE DIAGRAMS - State of the Art and Challenges},
booktitle={Proceedings of the Second International Conference on Software and Data Technologies - Volume 2: ICSOFT,},
year={2007},
pages={90-99},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001342900900099},
isbn={978-989-8111-06-7},
}


in EndNote Style

TY - CONF
JO - Proceedings of the Second International Conference on Software and Data Technologies - Volume 2: ICSOFT,
TI - DIFFERENCING AND MERGING OF SOFTWARE DIAGRAMS - State of the Art and Challenges
SN - 978-989-8111-06-7
AU - Förtsch S.
AU - Westfechtel B.
PY - 2007
SP - 90
EP - 99
DO - 10.5220/0001342900900099