skip to main content
10.1145/940071.940102acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
Article

Differences between versions of UML diagrams

Published:01 September 2003Publication History

ABSTRACT

This paper addresses the problem of how to detect and visualise differences between versions of UML documents such as class or object diagrams. Our basic approach for showing the differences between two documents is to use a unified document which contains the common and specific parts of both base documents; the specific parts are highlighted. The main problems are (a) how to abstract from modifications done to the layout and other (document type-specific) details which are considered irrelevant; (b) how to deal with structural changes such as the shifting of an operation from one class to another; (c) how to reduce the amount of highlighted information. Our approach is based on the assumption that software documents are modelled in a fine-grained way, i.e. they are stored as syntax trees in XML files or in a repository system, and that the version management system supports fine-grained data. Our difference computation algorithm detects structural changes and enables their appropriate visualisation. Highlighting can be restricted on the basis of the types of the elements and on the basis of the revision history, e.g. only changes which occurred during a particular editing session are highlighted.

References

  1. U. Asklund. Identifying conflicts during structural merge. In B. Magnusson, editor, Proceedings of NWPER'94, Nordic Workshop on Programming Environment Research, June 1994.Google ScholarGoogle Scholar
  2. D. T. Barnard, G. Clarke, and N. Duncan. Tree-to-tree correction for document trees. Technical report, Departement of Computing andf Information Science Queen's University Kingston Ontario, Canada, January 1995.Google ScholarGoogle Scholar
  3. S. Chawathe and H. Garcia-Molina. Meaningful change detection in structured data. In Proceedings of the ACM SIGMOD International Conference on Management of Data, pages 26--37, Tuscon, Arizona, May 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. S. Chawathe, A. Rajaraman, H. Garcia-Molina, and J. Widom. Change detection in hierarchically structured information. In Proceedings of the ACM SIGMOD International Conference on Management of Data, pages 493--504, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. G. Cobéna, S. Abiteboul, and A. Marian. Detecting changes in XML documents. In 18. International Conference on Data Engineering (ICDE) San Jose, California, USA, February 26-March 1, 2002, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. R. Conradi and B. Westfechtel. Version models for software configuration management. ACM Computing Surveys, 30(2):232--282, June 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. J. J. Hunt, K.-P. Vo, and W. F. Tichy. An empirical study of delta algorithms. In I. Sommerville, editor, Software configuration management: ICSE 96 SCM-6 Workshop, pages 49--66. Springer, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. U. Kelter. H-PCTE -- a high-performance object management system for system development environments. In Proceedings COMPSAC Illinois, September 23-25, pages 45--50. IEEE Press, 1992.Google ScholarGoogle ScholarCross RefCross Ref
  9. U. Kelter, M. Monecke, and D. Platz. Constructing distributed SDEs using an active repository. In Proc. 1st Intl. Symposium on Constructing Software Engineering Tools (COSET '99); 17.-18.05.1999, Los Angeles, CA, pages 149--158, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. B. Magnusson, U. Asklund, and S. Minör. Fine-Grained Revision Control for Collaborative Software Development. In Proceedings of the ACM SIGSOFT '93 Symposium on the Foundations of Software Engineering, Los Angeles, California, pages 33--41, December 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. A. Marian, S. Abiteboul, G. Cobena, and L. Mignet. Change-centric management of versions in an XML warehouse. In P. M. G. Apers, P. Atzeni, S. Ceri, S. Paraboschi, K. Ramamohanarao, and R. T. Snodgrass, editors, Proceedings of the Twenty-seventh International Conference on Very Large Data Bases: Roma, Italy, 11--14th September, 2001, pages 581--590, Los Altos, CA 94022, USA, 2001. Morgan Kaufmann Publishers. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. M. Monecke. Adaptierbare CASE-Werkzeuge in prozessorientierten Software-Entwicklungsumgebungen. PhD thesis, Universitát Siegen, 2003.Google ScholarGoogle Scholar
  13. E. W. Myers. An O(ND) difference algorithm and its variations. Algorithmica, 1:251--256, 1986.Google ScholarGoogle ScholarCross RefCross Ref
  14. D. Ohst and U. Kelter. A fine-grained version and configuration model in analysis and design. In Proc. of the IEEE International Conference on Software Maintenance 2002 (ICSM 2002), 3-6 October 2002, Montreal, Canada, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. OMG. Unified Modeling Language Specification. OMG, March 2003. Version 1.5 formal/03-03-01.Google ScholarGoogle Scholar
  16. J. Rho and C. Wu. An efficient version model of software diagrams. In Proc. 5th Asia-Pacific Software Engineering Conf., 2-4 December 1998 in Taipei, Taiwan, ROC. IEEE Computer Society, Dec. 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. S. M. Selkow. The tree-to-tree editing problem. Information Processing Letters, 6(6):184--186, December 1977.Google ScholarGoogle ScholarCross RefCross Ref
  18. K.-C. Tai. The tree-to-tree correction problem. Journal of the ACM, 26(3):422--433, July 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. W. F. Tichy. The string-to-string correction problem with block moves. ACM Transactions on Computer Systems, 2(4):309--321, Nov. 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Y. Wang, D. J. DeWitt, and J.-Y. Cai. X-Diff: An effective change detection algorithm for XML documents. In 19th International Conference on Data Engineering, March 5 - March 8, 2003 - Bangalore, India, 2003.Google ScholarGoogle ScholarCross RefCross Ref
  21. B. A. White. Software Configuration Management Strategies and Rational ClearCase. Addison-Wesley, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. W. Yang. How to merge program texts. The Journal of Systems and Software, 27(2):129--141, November 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. K. Zhang and D. Shasha. Simple fast algorithms for the editing distance between trees and related problems. SIAM Journal of Computing, 18:1245--1262, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. K. Zhang, J. T.-L. Wang, and D. Shasha. On the editing distance between undirected acyclic graphs and related problems. In Z. Galil and E. Ukkonen, editors, Combinatorial Pattern Matching, 6th Annual Symposium, volume 937 of Lecture Notes in Computer Science, pages 395--407, Espoo, Finland, 5-7 July 1995. Springer.Google ScholarGoogle Scholar
  25. A. Zündorf, J. Wadsack, and I. Rockel. Merging graph-like object structures. In Tenth International Workshop on Software Configuration Management (SCM-10) New Practices, New Challenges, and New Boundaries May 14-15, 2001 Toronto, Canada (a workshop of 23th ICSE 2001). http://www.ics.uci.edu/~andre/scm10/, 2001.Google ScholarGoogle Scholar

Index Terms

  1. Differences between versions of UML diagrams

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            ESEC/FSE-11: Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
            September 2003
            394 pages
            ISBN:1581137435
            DOI:10.1145/940071
            • cover image ACM SIGSOFT Software Engineering Notes
              ACM SIGSOFT Software Engineering Notes  Volume 28, Issue 5
              September 2003
              382 pages
              ISSN:0163-5948
              DOI:10.1145/949952
              Issue’s Table of Contents

            Copyright © 2003 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 1 September 2003

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • Article

            Acceptance Rates

            ESEC/FSE-11 Paper Acceptance Rate33of168submissions,20%Overall Acceptance Rate112of543submissions,21%

            Upcoming Conference

            FSE '24

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader