An Introduction to Model Versioning

  • Petra Brosch
  • Gerti Kappel
  • Philip Langer
  • Martina Seidl
  • Konrad Wieland
  • Manuel Wimmer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7320)


With the emergence of model-driven engineering (MDE), software models are considered as central artifacts in the software engineering process, going beyond their traditional use as sketches. In MDE, models rather act as the single source of information for automatically generating executable software. This shift poses several new research challenges. One of these challenges constitutes model versioning, which targets at enabling efficient team-based development of models. This compelling challenge induced a very active research community, who yielded remarkable methods and techniques ranging from model differencing to merging of models.

In this tutorial, we give an introduction to the foundations of model versioning, the underlying technologies for processing models and their evolution, as well as the state of the art in model versioning. Thereby, we aim at equipping students and researchers alike that are new to this domain with enough information for commencing to contribute to this challenging research area.


Modeling Language Model Transformation Object Constraint Language Object Management Group Concrete Syntax 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alanen, M., Porres, I.: Difference and Union of Models. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 2–17. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  2. 2.
    Altmanninger, K., Brosch, P., Kappel, G., Langer, P., Seidl, M., Wieland, K., Wimmer, M.: Why Model Versioning Research is Needed!? An Experience Report. In: Proceedings of the MoDSE-MCCM 2009 Workshop @ MoDELS 2009 (2009)Google Scholar
  3. 3.
    Atkinson, C., Kühne, T.: A Tour of Language Customization Concepts. Advances in Computers 70, 105–161 (2007)CrossRefGoogle Scholar
  4. 4.
    Balzer, R.: Tolerating Inconsistency. In: Proceedings of the 13th International Conference on Software Engineering (ICSE 1991), pp. 158–165. IEEE (1991)Google Scholar
  5. 5.
    Barrett, S., Butler, G., Chalin, P.: Mirador: A Synthesis of Model Matching Strategies. In: Proceedings of the International Workshop on Model Comparison in Practice (IWMCP 2010), pp. 2–10. ACM (2010)Google Scholar
  6. 6.
    Berners-Lee, T., Hendler, J.: Scientific Publishing on the Semantic Web. Nature 410, 1023–1024 (2001)CrossRefGoogle Scholar
  7. 7.
    Bézivin, J.: On the Unification Power of Models. Software and Systems Modeling 4(2), 171–188 (2005)CrossRefGoogle Scholar
  8. 8.
    Bézivin, J.: From Object Composition to Model Transformation with the MDA. In: Proceedings of the 39th International Conference and Exhibition on Technology of Object-Oriented Languages and Systems (TOOLS 2001), pp. 350–355. IEEE (2001)Google Scholar
  9. 9.
    Bézivin, J., Gerbé, O.: Towards a Precise Definition of the OMG/MDA Framework. In: Proceedings of the 16th Annual International Conference on Automated Software Engineering, ASE 2001, pp. 273–280 (2001)Google Scholar
  10. 10.
    Booch, G., Brown, A.W., Iyengar, S., Rumbaugh, J., Selic, B.: An MDA Manifesto. MDA Journal (5) (2004)Google Scholar
  11. 11.
    Brosch, P.: Conflict Resolution in Model Versioning. Ph.D. thesis, Vienna University of Technology (2012)Google Scholar
  12. 12.
    Brosch, P., Langer, P., Seidl, M., Wieland, K., Wimmer, M., Kappel, G.: Concurrent Modeling in Early Phases of the Software Development Life Cycle. In: Kolfschoten, G., Herrmann, T., Lukosch, S. (eds.) CRIWG 2010. LNCS, vol. 6257, pp. 129–144. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  13. 13.
    Brosch, P., Langer, P., Seidl, M., Wieland, K., Wimmer, M., Kappel, G., Retschitzegger, W., Schwinger, W.: An Example Is Worth a Thousand Words: Composite Operation Modeling By-Example. In: Schürr, A., Selic, B. (eds.) MoDELS 2009. LNCS, vol. 5795, pp. 271–285. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  14. 14.
    Brun, C., Pierantonio, A.: Model Differences in the Eclipse Modeling Framework. UPGRADE, The European Journal for the Informatics Professional 9(2), 29–34 (2008)Google Scholar
  15. 15.
    Church, A., Rosser, J.: Some Properties of Conversion. Transactions of the American Mathematical Society, 472–482 (1936)Google Scholar
  16. 16.
    Cicchetti, A., Di Ruscio, D., Pierantonio, A.: A Metamodel Independent Approach to Difference Representation. Journal of Object Technology 6(9), 165–185 (2007)CrossRefGoogle Scholar
  17. 17.
    Cicchetti, A., Di Ruscio, D., Pierantonio, A.: Managing Model Conflicts in Distributed Development. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MoDELS 2008. LNCS, vol. 5301, pp. 311–325. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  18. 18.
    Conradi, R., Westfechtel, B.: Version Models for Software Configuration Management. ACM Computing Surveys 30(2), 232 (1998)CrossRefGoogle Scholar
  19. 19.
    De Lucia, A., Fasano, F., Oliveto, R., Tortora, G.: ADAMS: Advanced Artefact Management System. In: Proceedings of the European Conference on Software Maintenance and Reengineering (CSMR 2006), pp. 349–350. IEEE (2006)Google Scholar
  20. 20.
    De Lucia, A., Fasano, F., Scanniello, G., Tortora, G.: Concurrent Fine-Grained Versioning of UML Models. In: Proceedings of the European Conference on Software Maintenance and Reengineering, pp. 89–98. IEEE (2009)Google Scholar
  21. 21.
    Dig, D., Comertoglu, C., Marinov, D., Johnson, R.: Automated Detection of Refactorings in Evolving Components. In: Hu, Q. (ed.) ECOOP 2006. LNCS, vol. 4067, pp. 404–428. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  22. 22.
    Dig, D., Manzoor, K., Johnson, R., Nguyen, T.: Effective Software Merging in the Presence of Object-Oriented Refactorings. IEEE Transactions on Software Engineering 34(3), 321–335 (2008)CrossRefGoogle Scholar
  23. 23.
    Eclipse: Eclipse Modeling Framework Project (EMF), (accessed November 04, 2011)
  24. 24.
    Eclipse: EMF UML2, (accessed December 05, 2011)
  25. 25.
    Edwards, W.K.: Flexible Conflict Detection and Management in Collaborative Applications. In: Proceedings of the 10th Annual ACM Symposium on User Interface Software and Technology, UIST 1997, pp. 139–148. ACM (1997)Google Scholar
  26. 26.
    Ehrig, H.: Introduction to the Algebraic Theory of Graph Grammars (A Survey). In: Ng, E.W., Ehrig, H., Rozenberg, G. (eds.) Graph Grammars 1978. LNCS, vol. 73, pp. 1–69. Springer, Heidelberg (1979)CrossRefGoogle Scholar
  27. 27.
    Ehrig, H., Ehrig, K.: Overview of Formal Concepts for Model Transformations Based on Typed Attributed Graph Transformation. Electronic Notes in Theoretical Computer Science 152, 3–22 (2006)CrossRefGoogle Scholar
  28. 28.
    Ehrig, H., Ermel, C., Taentzer, G.: A Formal Resolution Strategy for Operation-Based Conflicts in Model Versioning Using Graph Modifications. In: Giannakopoulou, D., Orejas, F. (eds.) FASE 2011. LNCS, vol. 6603, pp. 202–216. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  29. 29.
    Ermel, C., Rudolf, M., Taentzer, G.: The AGG Approach: Language and Environment. In: Handbook of Graph Grammars and Computing by Graph Transformation: Applications, Languages and Tools, ch. 14, vol. 2, pp. 551–603. World Scientific Publishing Co., Inc. (1999)Google Scholar
  30. 30.
    Estublier, J., Leblang, D., Hoek, A., Conradi, R., Clemm, G., Tichy, W., Wiborg-Weber, D.: Impact of Software Engineering Research on the Practice of Software Configuration Management. ACM Transactions on Software Engineering and Methodology (TOSEM) 14(4), 383–430 (2005)CrossRefGoogle Scholar
  31. 31.
    Fabro, M., Bézivin, J., Jouault, F., Breton, E., Gueltas, G.: AMW: A Generic Model Weaver. In: Proceedings of the 1re Journe sur l’Ingnierie Dirige par les Modles, IDM 2005 (2005)Google Scholar
  32. 32.
    Feather, M.: Detecting Interference When Merging Specification Evolutions. In: Proceedings of the International Workshop on Software Specification and Design (IWSSD 1989), pp. 169–176. ACM (1989)Google Scholar
  33. 33.
    Fowler, M., Beck, K., Brant, J., Opdyke, W., Roberts, D.: Refactoring: Improving the Design of Existing Code. Addison-Wesley (1999)Google Scholar
  34. 34.
    France, R., Rumpe, B.: Model-driven Development of Complex Software: A Research Roadmap. In: Proceedings of Future of Software Engineering @ ICSE 2007, pp. 37–54 (2007)Google Scholar
  35. 35.
    Gerth, C., Küster, J.M., Luckey, M., Engels, G.: Precise Detection of Conflicting Change Operations Using Process Model Terms. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MoDELS 2010. LNCS, vol. 6395, pp. 93–107. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  36. 36.
    Gerth, C., Küster, J., Luckey, M., Engels, G.: Detection and Resolution of Conflicting Change Operations in Version Management of Process Models. Software and Systems Modeling, pp. 1–19 (Online First)Google Scholar
  37. 37.
    Ghezzi, C., Jazayeri, M., Mandrioli, D.: Fundamentals of Software Engineering, 2nd edn. Prentice Hall PTR, Upper Saddle River (2002)zbMATHGoogle Scholar
  38. 38.
    Greenfield, J., Short, K.: Software Factories: Assembling Applications With Patterns, Models, Frameworks and Tools. In: Proceedings of the Conference on Object-oriented Programming, Systems, Languages, and Applications (OOPSLA 2003), pp. 16–27. ACM (2003)Google Scholar
  39. 39.
    Harel, D., Rumpe, B.: Meaningful Modeling: What’s the Semantics of Semantics? Computer 37(10), 64–72 (2004)CrossRefGoogle Scholar
  40. 40.
    Heckel, R., Küster, J., Taentzer, G.: Confluence of Typed Attributed Graph Transformation Systems. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 161–176. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  41. 41.
    Herrmannsdoerfer, M., Koegel, M.: Towards a Generic Operation Recorder for Model Evolution. In: Proceedings of the International Workshop on Model Comparison in Practice @ TOOLS 2010. ACM (2010)Google Scholar
  42. 42.
    International Organization for Standardization and International Electrotechnical Comission: Information Technology—Syntactic Metalanguage—Extended BNF 1.0 (December 1996),
  43. 43.
    Jouault, F., Kurtev, I.: Transforming Models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  44. 44.
    Kehrer, T., Kelter, U., Taentzer, G.: A rule-based approach to the semantic lifting of model differences in the context of model versioning. In: Proceedings of the International Conference on Automated Software Engineering (ASE 2011). IEEE (2011)Google Scholar
  45. 45.
    Kelter, U., Wehren, J., Niere, J.: A Generic Difference Algorithm for UML Models. In: Software Engineering, pp. 105–116. LNI, GI (2005)Google Scholar
  46. 46.
    Khuller, S., Raghavachari, B.: Graph and network algorithms. ACM Computing Surveys 28(1), 43–45 (1996)CrossRefzbMATHGoogle Scholar
  47. 47.
    Kim, M., Notkin, D.: Program Element Matching for Multi-version Program Analyses. In: Proceedings of the International Workshop on Mining Software Repositories (MSR 2006). ACM (2006)Google Scholar
  48. 48.
    Koegel, M., Herrmannsdoerfer, M., Wesendonk, O., Helming, J.: Operation-based Conflict Detection on Models. In: Proceedings of the International Workshop on Model Comparison in Practice @ TOOLS 2010. ACM (2010)Google Scholar
  49. 49.
    Koegel, M., Herrmannsdoerfer, M., von Wesendonk, O., Helming, J., Bruegge, B.: Merging Model Refactorings – An Empirical Study. In: Proceedings of the Workshop on Model Evolution @ MoDELS 2010 (2010)Google Scholar
  50. 50.
    Kolovos, D.S.: Establishing Correspondences between Models with the Epsilon Comparison Language. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 146–157. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  51. 51.
    Kolovos, D.S., Rose, L.M., Drivalos Matragkas, N., Paige, R.F., Polack, F.A.C., Fernandes, K.J.: Constructing and Navigating Non-invasive Model Decorations. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 138–152. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  52. 52.
    Kolovos, D., Di Ruscio, D., Pierantonio, A., Paige, R.: Different Models for Model Matching: An Analysis of Approaches to Support Model Differencing. In: Proceedings of the International Workshop on Comparison and Versioning of Software Models @ ICSE 2009. IEEE (2009)Google Scholar
  53. 53.
    Kühne, T.: Matters of (Meta-) Modeling. Software and Systems Modeling 5, 369–385 (2006)CrossRefGoogle Scholar
  54. 54.
    Küster, J.M., Gerth, C., Förster, A., Engels, G.: Detecting and Resolving Process Model Differences in the Absence of a Change Log. In: Dumas, M., Reichert, M., Shan, M.-C. (eds.) BPM 2008. LNCS, vol. 5240, pp. 244–260. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  55. 55.
    Lambers, L., Ehrig, H., Orejas, F.: Conflict Detection for Graph Transformation with Negative Application Conditions. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 61–76. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  56. 56.
    Langer, P.: Adaptable Model Versioning based on Model Transformation by Demonstration. Ph.D. thesis, Vienna University of Technology (2011)Google Scholar
  57. 57.
    Langer, P., Wieland, K., Wimmer, M., Cabot, J.: From UML Profiles to EMF Profiles and Beyond. In: Bishop, J., Vallecillo, A. (eds.) TOOLS 2011. LNCS, vol. 6705, pp. 52–67. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  58. 58.
    Ledeczi, A., Maroti, M., Karsai, G., Nordstrom, G.: Metaprogrammable Toolkit for Model-Integrated Computing. In: Proceedings of the IEEE Conference and Workshop on Engineering of Computer-Based Systems, ECBS 1999, pp. 311–317 (March 1999)Google Scholar
  59. 59.
    Lin, Y., Gray, J., Jouault, F.: DSMDiff: A Differentiation Tool for Domain-specific Models. European Journal of Information Systems 16(4), 349–361 (2007)CrossRefGoogle Scholar
  60. 60.
    Lippe, E., van Oosterom, N.: Operation-Based Merging. In: ACM SIGSOFT Symposium on Software Development Environment, pp. 78–87. ACM (1992)Google Scholar
  61. 61.
    Madiot, F., Dup, G.: EMF Facet Website (November 2010),
  62. 62.
    Maoz, S., Ringert, J.O., Rumpe, B.: A Manifesto for Semantic Model Differencing. In: Dingel, J., Solberg, A. (eds.) MoDELS 2010 Workshops. LNCS, vol. 6627, pp. 194–203. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  63. 63.
    Maoz, S., Ringert, J., Rumpe, B.: ADDiff: Semantic Differencing for Activity Diagrams. In: Proceedings of the ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE 2011), pp. 179–189. ACM (2011)Google Scholar
  64. 64.
    Maoz, S., Ringert, J.O., Rumpe, B.: CDDiff: Semantic Differencing for Class Diagrams. In: Mezini, M. (ed.) ECOOP 2011. LNCS, vol. 6813, pp. 230–254. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  65. 65.
    Mehra, A., Grundy, J., Hosking, J.: A Generic Approach to Supporting Diagram Differencing and Merging for Collaborative Design. In: Proceedings of the International Conference on Automated Software Engineering (ASE 2005), pp. 204–213. ACM (2005)Google Scholar
  66. 66.
    Mens, T.: A State-of-the-Art Survey on Software Merging. IEEE Transactions on Software Engineering 28(5), 449–462 (2002)CrossRefGoogle Scholar
  67. 67.
    Mens, T., Gorp, P.V.: A Taxonomy of Model Transformation. Electronic Notes in Theoretical Computer Science 152, 125–142 (2006)CrossRefGoogle Scholar
  68. 68.
    Mens, T., Taentzer, G., Runge, O.: Detecting Structural Refactoring Conflicts Using Critical Pair Analysis. Electronic Notes in Theoretical Computer Science 127(3), 113–128 (2005)CrossRefGoogle Scholar
  69. 69.
    Munson, J.P., Dewan, P.: A Flexible Object Merging Framework. In: Proceedings of the 1994 ACM Conference on Computer Supported Cooperative Work, CSCW 1994, pp. 231–242. ACM (1994),
  70. 70.
    Murta, L., Corrêa, C., Prudêncio, J., Werner, C.: Towards Odyssey-VCS 2: Improvements Over a UML-based Version Control System. In: Proceedings of the International Workshop on Comparison and Versioning of Software Models @ MoDELS 2008, pp. 25–30. ACM (2008)Google Scholar
  71. 71.
    Nagl, M. (ed.): Building Tightly Integrated Software Development Environments: The IPSEN Approach. LNCS, vol. 1170. Springer, Heidelberg (1996)Google Scholar
  72. 72.
    Naur, P., Randell, B., Bauer, F.: Software Engineering: Report on a Conference Sponsored by the NATO SCIENCE COMMITTEE, Garmisch, Germany, October 7-11,1968. Scientific Affairs Division, NATO (1969)Google Scholar
  73. 73.
    Nejati, S., Sabetzadeh, M., Chechik, M., Easterbrook, S., Zave, P.: Matching and Merging of Statecharts Specifications. In: Proceedings of the International Conference on Software Engineering (ICSE 2007), pp. 54–64. IEEE (2007)Google Scholar
  74. 74.
    Nuseibeh, B., Easterbrook, S.M., Russo, A.: Making Inconsistency Respectable in Software Development. Journal of Systems and Software 58(2), 171–180 (2001)CrossRefGoogle Scholar
  75. 75.
    Object Management Group: Diagram Definition (DD), (accessed: February 21, 2012)
  76. 76.
    Object Management Group: Common Warehouse Metamodel (CWM) Specification V1.1. (March 2003),
  77. 77.
    Object Management Group: Meta-Object Facility 2.0 (MOF) (October 2004),
  78. 78.
    Object Management Group: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification. Final Adopted Specification (November 2005),
  79. 79.
    Object Management Group: Model-driven Architecture (MDA) (April 2005),
  80. 80.
    Object Management Group: UML Diagram Interchange, Version 1.0. (April 2006),
  81. 81.
    Object Management Group: XML Metadata Interchange 2.1.1 (XMI) (December 2007),
  82. 82.
    Object Management Group: MOF Model to Text Transformation Language (MOFM2T) (January 2008),
  83. 83.
    Object Management Group: Business Process Modeling Notation (BPMN), Version 1.2 (January 2009),
  84. 84.
    Object Management Group: Object Constraint Language (OCL), Version 2.2 (February 2010),
  85. 85.
    Object Management Group: OMG Unified Modeling Language (OMG UML), Infrastructure V2.4.1 (August 2011),
  86. 86.
    Object Management Group: OMG Unified Modeling Language (OMG UML), Superstructure V2.4.1 (July 2011),
  87. 87.
    Oda, T., Saeki, M.: Generative Technique of Version Control Systems for Software Diagrams. In: Proceedings of the IEEE International Conference on Software Maintenance (ICSM 2005), pp. 515–524. IEEE (2005)Google Scholar
  88. 88.
    Ohst, D., Welle, M., Kelter, U.: Differences Between Versions of UML Diagrams. ACM SIGSOFT Software Engineering Notes 28(5), 227–236 (2003)CrossRefGoogle Scholar
  89. 89.
    Oliveira, H., Murta, L., Werner, C.: Odyssey-VCS: A Flexible Version Control System for UML Model Elements. In: Proceedings of the International Workshop on Software Configuration Management, pp. 1–16. ACM (2005)Google Scholar
  90. 90.
    Opdyke, W.: Refactoring Object-oriented Frameworks. Ph.D. thesis, University of Illinois at Urbana-Champaign (1992)Google Scholar
  91. 91.
    Oracle: Java Metadata Interface (JMI) (June 2002),
  92. 92.
    Parnas, D.: Software Engineering or Methods for the Multi-person Construction of Multi-version Programs. In: Hackl, C.E. (ed.) IBM 1974. LNCS, vol. 23, pp. 225–235. Springer, Heidelberg (1975)CrossRefGoogle Scholar
  93. 93.
    Porres, I.: Rule-based Update Transformations and their Application to Model Refactorings. Software and System Modeling 4(4), 368–385 (2005)CrossRefGoogle Scholar
  94. 94.
    Pressman, R., Ince, D.: Software Engineering: A Practitioner’s Approach. McGraw-Hill, New York (1982)Google Scholar
  95. 95.
    Rahm, E., Bernstein, P.: A Survey of Approaches to Automatic Schema Matching. The VLDB Journal 10(4), 334–350 (2001)CrossRefzbMATHGoogle Scholar
  96. 96.
    Reiter, T., Altmanninger, K., Bergmayr, A., Schwinger, W., Kotsis, G.: Models in Conflict – Detection of Semantic Conflicts in Model-based Development. In: Proceedings of International Workshop on Model-Driven Enterprise Information Systems @ ICEIS 2007, pp. 29–40 (2007)Google Scholar
  97. 97.
    Rivera, J., Vallecillo, A.: Representing and Operating With Model Differences. In: Paige, R.F., Meyer, B. (eds.) TOOLS EUROPE 2008. LNBIP, vol. 11, pp. 141–160. Springer, Heidelberg (2008)Google Scholar
  98. 98.
    Schmidt, D.: Guest Editor’s Introduction: Model-driven Engineering. Computer 39(2), 25–31 (2006)CrossRefGoogle Scholar
  99. 99.
    Schmidt, M., Gloetzner, T.: Constructing Difference Tools for Models Using the SiDiff Framework. In: Companion of the International Conference on Software Engineering, pp. 947–948. ACM (2008)Google Scholar
  100. 100.
    Schneider, C., Zündorf, A.: Experiences in using Optimisitic Locking in Fujaba. Softwaretechnik Trends 27(2) (2007)Google Scholar
  101. 101.
    Schneider, C., Zündorf, A., Niere, J.: CoObRA – A Small Step for Development Tools to Collaborative Environments. In: Proceedings of the Workshop on Directions in Software Engineering Environments (2004)Google Scholar
  102. 102.
    Schwanke, R.W., Kaiser, G.E.: Living With Inconsistency in Large Systems. In: Proceedings of the International Workshop on Software Version and Configuration Control, pp. 98–118. Teubner B.G. GmbH (1988)Google Scholar
  103. 103.
    Selic, B.: The Pragmatics of Model-driven Development. IEEE Software 20(5), 19–25 (2003)CrossRefGoogle Scholar
  104. 104.
    Sendall, S., Kozaczynski, W.: Model Transformation: The Heart and Soul of Model-Driven Software Development. IEEE Software 20, 42–45 (2003)CrossRefGoogle Scholar
  105. 105.
    Shvaiko, P., Euzenat, J.: A Survey of Schema-Based Matching Approaches. In: Spaccapietra, S. (ed.) Journal on Data Semantics IV. LNCS, vol. 3730, pp. 146–171. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  106. 106.
    Sprinkle, J.: Model-integrated Computing. IEEE Potentials 23(1), 28–30 (2004)CrossRefGoogle Scholar
  107. 107.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: Eclipse Modeling Framework 2.0. Addison-Wesley Professional (2008)Google Scholar
  108. 108.
    Sun, Y., White, J., Gray, J.: Model Transformation by Demonstration. In: Schürr, A., Selic, B. (eds.) MoDELS 2009. LNCS, vol. 5795, pp. 712–726. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  109. 109.
    Sunyé, G., Pollet, D., Le Traon, Y., Jézéquel, J.-M.: Refactoring UML Models. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, pp. 134–148. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  110. 110.
    Taentzer, G., Ermel, C., Langer, P., Wimmer, M.: Conflict Detection for Model Versioning Based on Graph Modifications. In: Ehrig, H., Rensink, A., Rozenberg, G., Schürr, A. (eds.) ICGT 2010. LNCS, vol. 6372, pp. 171–186. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  111. 111.
    Taentzer, G., Ermel, C., Langer, P., Wimmer, M.: A Fundamental Approach to Model Versioning Based on Graph Modifications. Accepted for Publication in Software and System Modeling (2012)Google Scholar
  112. 112.
    Thione, G., Perry, D.: Parallel Changes: Detecting Semantic Interferences. In: Proceedings of the International Computer Software and Applications Conference, pp. 47–56. IEEE (2005)Google Scholar
  113. 113.
    Vermolen, S., Wachsmuth, G., Visser, E.: Reconstructing Complex Metamodel Evolution. Tech. Rep. TUD-SERG-2011-026, Delft University of Technology (2011)Google Scholar
  114. 114.
    W3C: Extensible Markup Language (XML), Version 1.0 (2008),
  115. 115.
    Wache, H., Voegele, T., Visser, U., Stuckenschmidt, H., Schuster, G., Neumann, H., Hübner, S.: Ontology-based Integration of Information — A Survey of Existing Approaches. In: Proceedings of the Workshop on Ontologies and Information Sharing (IJCAI 2001), pp. 108–117 (2001)Google Scholar
  116. 116.
    Westfechtel, B.: Structure-oriented Merging of Revisions of Software Documents. In: Proceedings of the International Workshop on Software Configuration Management, pp. 68–79. ACM (1991)Google Scholar
  117. 117.
    Westfechtel, B.: A Formal Approach to Three-way Merging of EMF Models. In: Proceedings of the International Workshop on Model Comparison in Practice @ TOOLS 2010, pp. 31–41. ACM (2010)Google Scholar
  118. 118.
    Wieland, K.: Conflict-tolerant Model Versioning. Ph.D. thesis, Vienna University of Technology (2011)Google Scholar
  119. 119.
    Xing, Z., Stroulia, E.: UMLDiff: An Algorithm for Object-oriented Design Differencing. In: Proceedings of the International Conference on Automated Software Engineering (ASE 2005), pp. 54–65. ACM (2005)Google Scholar
  120. 120.
    Xing, Z., Stroulia, E.: Refactoring Detection based on UMLDiff Change-Facts Queries. In: Proceedings of the 13th Working Conference on Reverse Engineering (WCRE 2006), pp. 263–274. IEEE (2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Petra Brosch
    • 1
  • Gerti Kappel
    • 1
  • Philip Langer
    • 1
  • Martina Seidl
    • 2
  • Konrad Wieland
    • 3
  • Manuel Wimmer
    • 4
  1. 1.Vienna University of TechnologyAustria
  2. 2.Johannes Kepler University LinzAustria
  3. 3.LieberLieber Software GmbHAustria
  4. 4.Universidad de MálagaSpain

Personalised recommendations