Skip to main content
Log in

From model transformation to incremental bidirectional model synchronization

  • Special Section Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

The model-driven software development paradigm requires that appropriate model transformations are applicable in different stages of the development process. The transformations have to consistently propagate changes between the different involved models and thus ensure a proper model synchronization. However, most approaches today do not fully support the requirements for model synchronization and focus only on classical one-way batch-oriented transformations. In this paper, we present our approach for an incremental model transformation which supports model synchronization. Our approach employs the visual, formal, and bidirectional transformation technique of triple graph grammars. Using this declarative specification formalism, we focus on the efficient execution of the transformation rules and how to achieve an incremental model transformation for synchronization purposes. We present an evaluation of our approach and demonstrate that due to the speedup for the incremental processing in the average case even larger models can be tackled.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Antkiewicz, M., Czarnecki, K.: Framework-specific modeling languages with round-trip engineering. In: Proceedings of the 9th International Conference on Model-Driven Engineering Languages and Systems (MoDELS 2006), October 1–6, 2006, Genova, Italy. Lecture Notes in Computer Science (LNCS), vol. 4199, pp. 692–706. Springer, Berlin (2006)

  2. Antkiewicz, M., Czarnecki, K.: Design space of heterogeneous synchronization. In: Draft submitted to post-proceedings of 2007 Summer School on Generative and Transformational Techniques in Software Engineering (GTTSE), 2–7 July, Braga, Portugal (2007)

  3. Aßmann, U.: Automatic roundtrip engineering. Electron Notes Theor Comput Sci (ENTCS) 82(5), 1–9 (2003)

    Article  MathSciNet  Google Scholar 

  4. Becker, S., Lohmann S., Westfechtel, B.: Rule execution in graph-based incremental interactive integration tools. In: Proceedings of the Intl. Conf. on Graph Transformations (ICGT 2004). Lecture Notes in Computer Science (LNCS), vol. 3256, pp. 22–38. Springer, Berlin (2004)

  5. Borland. Together Architect 2006. http://www.borland.com/us/products/together/ (last visited on March 2007)

  6. Czarnecki, K. Helsen S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), July (2006)

  7. Darmstadt, T.U.: MOFLON. http://www.moflon.org (2007)

  8. Demathieu, S., Griffin, C., Sendall, S: Model Transformation with the IBM Model Transformation Framework. http://www-128.ibm.com/developerworks (2005)

  9. Egyed, A.: Instant consistency checking for the UML. In: Proceedings of the 28th International Conference on Software Engineering (ICSE), Shanghai, China, pp. 381–390. ACM Press (2006)

  10. Egyed, A.: Fixing inconsistencies in UML design models. In: Proceedings of the 29th International Conference on Software Engineering (ICSE), Minneapolis, MN, USA, pp. 292–301. IEEE Computer Society, New York (2007)

  11. Ehrig, H., Ehrig K., Ermel C., Hermann F., Taentzer G.: Information preserving bidirectional model transformations. In: Dwyer, M.B., Lopes, A. (eds.) Proceedings of 10th International Conference on Fundamental Approaches to Software Engineering (FASE 2007), March 24 - April 1, 2007, Braga, Portugal. Lecture Notes in Computer Science (LNCS), vol. 4422, pp. 72–86. Springer, Berlin (2007)

  12. Engels, G., Heckel, R., Küster, J.M.: Rule-based specification of behavioral consistency based on the UML meta-model. In: Proceedings of the 4th International Conference on the Unified Modeling Language, UML 2001, 1–5 October, 2001, Toronto, Ontario, Canada. Lecture Notes in Computer Science (LNCS), vol 2185, pp. 272–286. Springer, Berlin (2001)

  13. Ermel, C., Rudolf, M., Taentzer, G.: The AGG approach: language and environment. In: Ehrig, H., Engels, G., Kreowski, H., Rozenberg, G. (eds.) Handbook of Graph Grammars and Computing By Graph Transformation: Vol. 2: Applications, Languages, and Tools, pp. 551–603. World Scientific Publishing Co., River Edge, NJ (1999)

  14. France Telecom. SmartQVT: An open source model transformation tool implementing the MOF 2.0 QVT-Operational language. http://smartqvt.elibel.tm.fr/ (last visited on March 2007)

  15. Gardner, T., Griffin, C., Koehler, J., Hauser, R.: Review of OMG MOF 2.0 Query/Views/Transformations Submissions and Recommendations towards final Standard. OMG, 250 First Avenue, Needham, MA 02494, USA (2003)

  16. Giese, H., Meyer, M., Wagner R.: A prototype for guideline checking and model transformation in Matlab/Simulink. In: Giese, H., Westfechtel, B. (eds.) Proc. of the 4 th International Fujaba Days 2006, Bayreuth, Germany, volume tr-ri-06-275 of Technical Report. University of Paderborn (2006)

  17. Giese, H., Wagner, R.: Incremental model synchronization with triple graph grammars. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) Proceedings of the 9th International Conference on Model Driven Engineering Languages and Systems (MoDELS), Genova, Italy. Lecture Notes in Computer Science (LNCS), vol 4199, pp. 543–557. Springer, Berlin (2006)

  18. Gray, J.G., Zhang, J., Lin, Y., Roychoudhury, S., Wu, H., Sudarsan, R., Gokhale, A.S., Neema, S., Shi, F., Bapty T.: Model-driven program transformation of a large avionics framework. In: Karsai, G., Visser, E. (eds.) Proceedings of the Third International Conferenc on Generative Programming and Component Engineering (GPCE 2004), October 24–28, Vancouver, Canada. Lecture Notes in Computer Science (LNCS), vol. 3286, pp. 361–378. Springer, Berlin (2004)

  19. Greenyer, J., Kindler, E.: Reconciling TGGs with QVT. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil F. (eds.) Proceedings of the 10th International Conference on Model Driven Engineering Languages and Systems, MoDELS 2007, September 30–October 5, Nashville, USA, 2007. Lecture Notes in Computer Science (LNCS), vol. 4735, pp. 16–30. Springer, Berlin (2007)

  20. Griffin, C.: Eclipse Model Transformatioin Framework (MTF), available at http://www.alphaworks.ibm.com/tech/mtf. IBM (2003)

  21. Grundy, J.C., Hosking, J.G., Mugridge, W.B.: Inconsistency management for multiple-view software development environments. IEEE Trans. Softw. Eng. 24(11), 960–981 (1998)

    Article  Google Scholar 

  22. Guerra, E., de Lara, J.: Event-driven grammars: Towards the integration of meta-modelling and graph transformation. In Proceedings of the International Conference on Graph Transformation (ICGT’2004). Lecture Notes in Computer Science (LNCS), vol. 3265, pp. 54–69. Springer, Berlin (2004)

  23. Hearnden, D., Lawley, M., Raymond, K.: Incremental model transformation for the evolution of model-driven systems. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.), In Proceedings of the 9th International Conference on Model Driven Engineering Languages and Systems (MoDELS 2006), Genova, Italy, October 1-6, 2006. Lecture Notes in Computer Science (LNCS), vol 4199, pp. 321–335. Springer, Berlin (2006)

  24. Henriksson, A., Larsson, H.: A definition of round-trip engineering. Technical report, Linkopings Universitet, Sweden (2003)

  25. Hwan, C., Kim, P., Czarnecki, K.: Synchronizing cardinality-based feature models and their specializations. In: Hartman A., Kreische, D. (eds.) In Proceedings of the First European Conference on Model Driven Architecture—Foundations and Applications (ECMDA-FA 2005), Nuremberg, Germany, November 7–10, 2005. Lecture Notes in Computer Science (LNCS), vol. 3748, pp. 331–348. Springer, Berlin (2005)

  26. IBM. Rational Rose Developer for Java. http://www-306.ibm.com/software/awdtools/developer/rose/java/, March 2007

  27. ikv++ technologies ag. medini QVT. http://www.ikv.de (2007)

  28. International Telecommunication Union (ITU), Geneva. ITU-T Recommendation Z.100: Specification and Description Language (SDL), 1994 + Addendum 1996

  29. Ivkovic, I., Kontogiannis, K.: Tracing evolution changes of software artifacts through model synchronization. In Proceedings of the 20th IEEE International Conference on Software Maintenance (ICSM 2004), September 11th–17th, 2004 Chicago Illinois, USA, pp. 252–261. IEEE Computer Society, New York (2004)

  30. Johann, S., Egyed, A.: Instant and incremental transformation of models. In Proceedings of the 19th IEEE International Conference on Automated Software Engineering (ASE 2004), 20–25 September 2004, Linz, Austria, pp. 362–365. IEEE Computer Society, New York (2004)

  31. Kindler, E., Rubin, V., Wagner, R.: An adaptable TGG interpreter for in-memory model transformation. In: Proceedings of the Fujaba Days 2004, pp. 35–38, Darmstadt, Germany (2004)

  32. Königs, A., Schürr, A.: Tool integration with triple graph grammars—a survey. In: Heckel, R. (eds.) Proceedings of the SegraVis School on Foundations of Visual Modelling Techniques. Electronic Notes in Theoretical Computer Science (ENTCS), vol 148, pp. 113–150. Elsevier, Amsterdam (2006)

  33. Lefering, M., Schürr, A.: Specification of integration tools. In: Nagl, M. (eds.) Building Tightly-Integrated (Software) Development Environments: The IPSEN Approach. Lecture Notes in Computer Science (LNCS), vol. 1170, pp. 324–334. Springer, Berlin (1996)

  34. Marschall, F., Braun, P.: Model transformations for the MDA with BOTL. In Proceedings of the Workshop on Model Driven Architecture: Foundations and Applications, CTIT Technical Report TR-CTIT-03-27, Univeristy of Twente (2003)

  35. Mens, T., Van Der Straeten, R., D’Hondt, M.: Detecting and resolving model inconsistencies using transformation dependency analysis. In: Proceedings of the 9th International Conference on Model-Driven Engineering Languages and Systems (MoDELS 2006); October 1–6, 2006, Genova, Italy. Lecture Notes in Computer Science (LNCS), vol. 4199, pp. 200–214. Springer, Berlin (2006)

  36. Olsen, T., Grundy, J.: Supporting traceability and inconsistency management between software artefacts. In: Proceedings of the 2002 IASTED International Conference on Software Engineering and Applications, Boston, MA, USA. IASTED Press (2002)

  37. OMG. MOF QVT Final Adopted Specification, OMG Document ptc/05-11-01. http://www.omg.org/

  38. OMG, 250 First Avenue, Needham, MA 02494, USA. Unified Modeling Language Specification Version 1.5

  39. OMG. MDA Guide Version 1.0.1, June 2003. Document—omg/03-06-01

  40. OMG. OMG/RFP/QVT MOF 2.0 Query/Views/Transformations RFP. http://www.omg.org/mda/ (2003)

  41. OMG. Meta Object Facility (MOF) 2.0 Core Specification. Object Management Group, 140 Kendrick Street, Needham, MA 02494, USA, Jan. 2006. Document ptc/06-11-01

  42. Omondo. EclipseUML Free Edition. http://www.omondo.com/, February (2007)

  43. Paesschen, E.V., Meuter, W.D., D’Hondt M.: SelfSync: A dynamic round-trip engineering environment. In: Briand, L.C., Williams, C. (eds.) Model Driven Engineering Languages and Systems, 8th International Conference (MoDELS 2005), Montego Bay, Jamaica, October 2–7, 2005. Lecture Notes in Computer Science (LNCS), vol. 3713, pp. 633–647. Springer, Berlin (2005)

  44. Schäfer, W., Wagner, R., Gausemeier, J., Eckes, R.: An Engineer’s Workstation to support Integrated Development of Flexible Production Control Systems. In: Ehrig, H., Damm, W., Desel, J., Gros̈e-Rhode, M., Reif, W., Schnieder, E., Westkämper, E. (eds.) Integration of Software Specification Techniques for Applications in Engineering. Lecture Notes in Computer Science (LNCS), vol. 3147, pp. 48–68. Springer, Berlin (2004)

  45. Schürr, A.: Specification of graph translators with triple graph grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) Proceedings of the 20th International Workshop on Graph-Theoretic Concepts in Computer Science (WG ’94), Herrsching, Germany. Lecture Notes in Computer Science (LNCS), vol. 903, pp. 151–163, Springer, Berlin (1994)

  46. Schürr, A., Winter, A.J., Zündorf, A.: The PROGRES approach: language and environment. In: Ehrig, H., Engels, G., Kreowski, H., Rozenberg, G. (eds.) Handbook of Graph Grammars and Computing By Graph Transformation, vol. 2: Applications, Languages, and Tools, pp. 487–550. World Scientific Publishing Co., River Edge, NJ (1999)

  47. Sendall, S., Küster, J.: Taming model round-trip engineering. In: Proceedings of Workshop on Best Practices for Model-Driven Software Development (part of 19th Annual ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications), Vancouver, Canada, 25th October 2004

  48. Tata Consultancy Services. ModelMorf. http://www.tcs-trddc.com/ModelMorf/index.htm (2007)

  49. Tsiolakis, A., Ehrig, H.: Consistency analysis of UML class and sequence diagrams using attributed graph grammars. In: Ehrig, H., Taentzer, G. (eds.) Proceedings of Joint APPLIGRAPH/GETGRATS Workshop on Graph Transformation Systems, Berlin, March (2000)

  50. University of Paderborn, Germany. Fujaba Tool Suite. Online at http://www.fujaba.de/

  51. Varró, D., Varró, G., Pataricza, A.: Designing the automatic transformation of visual languages. Sci. Comput. Program. 44(2), 205–227 (2002)

    Article  MATH  Google Scholar 

  52. Varró, G., Varró, D., Graph transformation with incremental updates. In: Heckel, R. (ed.) Proc. of the 4th Workshop on Graph Transformation and Visual Modeling Techniques (GT-VMT 2004). Electronic Notes in Theoretical Computer Science (ENTCS), vol. 109, pp. 71–83. Elsevier, Amsterdam (2004)

  53. Vizhanyo, A., Agrawal, A., Shi, F., Towards generation of efficient transformations. In G. Karsai and E. Visser, editors, Generative Programming and Component Engineering: Proceedings of the Third International Conference (GPCE), Vancouver, Canada. Lecture Notes in Computer Science (LNCS), vol. 3286, pp. 298–316. Springer, Berlin (2004)

  54. W3C. XSL Transformations (XSLT) Version 1.0, November (1999)

  55. Wagner, R., Giese, H., Nickel, U.: A plug-in for flexible and incremental consistency management. In: Proceedings of the Workshop on Consistency Problems in UML-based Software Development II (UML 2003, Workshop 7), pp. 78–85. Blekinge Institute of Technology (2003)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Robert Wagner.

Additional information

Communicated by Prof. Oscar Nierstrasz.

This work was partly developed in the course of the Collaborative Research Center 614—Self-optimizing Concepts and Structures in Mechanical Engineering—University of Paderborn, and was published on its behalf and funded by the Deutsche Forschungsgemeinschaft. This article is an extended version of [17].

Rights and permissions

Reprints and permissions

About this article

Cite this article

Giese, H., Wagner, R. From model transformation to incremental bidirectional model synchronization. Softw Syst Model 8, 21–43 (2009). https://doi.org/10.1007/s10270-008-0089-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-008-0089-9

Keywords

Navigation