Skip to main content

Supporting Parallel Updates with Bidirectional Model Transformations

  • Conference paper
Theory and Practice of Model Transformations (ICMT 2009)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5563))

Abstract

Model-driven software development often involves several related models. When models are updated, the updates need to be propagated across all models to make them consistent. A bidirectional model transformation keeps two models consistent by updating one model in accordance with the other. However, it does not work when the two models are modified at the same time.

In this paper we propose a new algorithm that wraps any bidirectional transformation into a synchronizer with the help of a model difference approach. The synchronizer enables parallel updates by taking the two original models, the two updated models as input and producing two new models where the updates are synchronized. We also examine the requirements for synchronizing parallel updates, and demonstrate that our algorithm satisfies the requirements if the bidirectional transformation satisfies the correctness property and the hippocraticness property. Implementation of our algorithm showed that it works well in a runtime management framework in practical cases.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Object Management Group: MOF query / views / transformations specification 1.0 (2008), http://www.omg.org/docs/formal/08-04-03.pdf

  2. Schürr, A., Klar, F.: 15 years of triple graph grammars. In: Proc. of the 4th International Conference on Graph Transformation, pp. 411–425 (2008)

    Google Scholar 

  3. Stevens, P.: Bidirectional model transformations in QVT: Semantic issues and open questions. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 1–15. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  4. 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)

    Chapter  Google Scholar 

  5. Mehra, A., Grundy, J., Hosking, J.: A generic approach to supporting diagram differencing and merging for collaborative design. In: Proc. 20th ASE, pp. 204–213 (2005)

    Google Scholar 

  6. Abi-Antoun, M., Aldrich, J., Nahas, N., Schmerl, B., Garlan, D.: Differencing and merging of architectural views. In: Proc. 21st ASE, pp. 47–58 (2006)

    Google Scholar 

  7. Xiong, Y., Liu, D., Hu, Z., Zhao, H., Takeichi, M., Mei, H.: Towards automatic model synchronization from model transformations. In: Proc. 22nd ASE, pp. 164–173 (2007)

    Google Scholar 

  8. Diskin, Z.: Algebraic models for bidirectional model synchronization. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 21–36. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  9. Cicchetti, A., Ruscio, D.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)

    Chapter  Google Scholar 

  10. Xiong, Y., Hu, Z., Zhao, H., Takeichi, M., Hui, S., Mei, H.: Beanbag: Operation-based synchronization with intra-relations. Technical Report GRACE-TR-2008-04, GRACE Center, National Institute of Informatics, Japan (December 2008)

    Google Scholar 

  11. Khanna, S., Kunal, K., Pierce, B.C.: A formal investigation of diff3. In: Arvind, V., Prasad, S. (eds.) FSTTCS 2007. LNCS, vol. 4855, pp. 485–496. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  12. Song, H., Xiong, Y., Hu, Z., Huang, G., Mei, H.: A model-driven framework for constructing runtime architecture infrastructures. Technical Report GRACE-TR-2008-05, GRACE Center, National Institute of Informatics, Japan (December 2008)

    Google Scholar 

  13. ikv++ technologies: medini QVT homepage, http://projects.ikv.de/qvt

  14. Pierce, B.C., Schmitt, A., Greenwald, M.B.: Bringing Harmony to optimism: A synchronization framework for heterogeneous tree-structured data. Technical Report MS-CIS-03-42, University of Pennsylvania (2003)

    Google Scholar 

  15. Egyed, A.: Fixing inconsistencies in UML design models. In: Proc. 29th ICSE, pp. 292–301 (2007)

    Google Scholar 

  16. Kolovos, D., Paige, R., Polack, F.: Detecting and repairing inconsistencies across heterogeneous models. In: ICST 2008: Proceedings of the International Conference on Software Testing, Verification, and Validation, pp. 356–364 (2008)

    Google Scholar 

  17. Antkiewicz, M., Czarnecki, K.: Design space of heterogeneous synchronization. In: Lämmel, R., Visser, J., Saraiva, J. (eds.) GTTSE 2007. LNCS, vol. 5235, pp. 3–46. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Xiong, Y., Song, H., Hu, Z., Takeichi, M. (2009). Supporting Parallel Updates with Bidirectional Model Transformations. In: Paige, R.F. (eds) Theory and Practice of Model Transformations. ICMT 2009. Lecture Notes in Computer Science, vol 5563. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02408-5_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-02408-5_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-02407-8

  • Online ISBN: 978-3-642-02408-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics