Skip to main content

Combining Versioning and Metamodel Evolution in the ChronoSphere Model Repository

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10706))

Abstract

Model Driven Engineering (MDE) has gained a lot of popularity in recent years and is being applied in a wide variety of domains. As teams, models and applications grow in size, the need for faster and more scalable technology emerges, in particular in the crucial area of model repositories. These software components are responsible for persisting, querying and versioning the model content and act as central hubs for interaction with the model. However, existing repository solutions do not consider metamodel evolution, which is important in long-running projects. In this paper, we present ChronoSphere, a novel model repository, targeted specifically towards developers working with MDE technology in industry, with a focus on models-at-runtime scenarios. By utilizing the latest innovations in graph databases and version control, ChronoSphere provides transparent and efficient versioning as well as metamodel evolution capabilities. This paper focuses on the core concepts of ChronoSphere, in particular data management, versioning and metamodel evolution. Our open-source implementation serves as proof of concept.

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

Buying options

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 EPUB and 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

Learn about institutional subscriptions

Notes

  1. 1.

    https://wiki.eclipse.org/CDO.

  2. 2.

    https://www.eclipse.org/modeling/emf/.

  3. 3.

    This work was partially funded by the research project “txtureSA” (FWF-Project P 29022).

  4. 4.

    http://tinyurl.com/chronosphere-github.

  5. 5.

    http://tinyurl.com/chronograph-github.

  6. 6.

    http://tinkerpop.apache.org/.

  7. 7.

    https://github.com/EsotericSoftware/kryo.

  8. 8.

    http://tinyurl.com/chronodb-github.

  9. 9.

    https://flywaydb.org/.

  10. 10.

    http://www.liquibase.org/.

  11. 11.

    We use the term “client” to refer to application code that operates on top of ChronoSphere. This can be a remote method invocation, another thread or simply a method call to the public API.

  12. 12.

    www.txture.io.

References

  1. Mohagheghi, P., Gilani, W., Stefanescu, A., Fernandez, M.A., Nordmoen, B., Fritzsche, M.: Where does model-driven engineering help? Experiences from three industrial cases. Softw. Syst. Model. 12(3), 619–639 (2013)

    Article  Google Scholar 

  2. Brosch, P., Kappel, G., Langer, P., Seidl, M., Wieland, K., Wimmer, M.: An introduction to model versioning. In: Bernardo, M., Cortellessa, V., Pierantonio, A. (eds.) SFM 2012. LNCS, vol. 7320, pp. 336–398. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-30982-3_10

    Chapter  Google Scholar 

  3. Di Rocco, J., Di Ruscio, D., Iovino, L., Pierantonio, A.: Collaborative repositories in model-driven engineering. IEEE Softw. 32(3), 28–34 (2015)

    Article  Google Scholar 

  4. Iovino, L., Pierantonio, A., Malavolta, I.: On the impact significance of metamodel evolution in MDE. J. Object Technol. 11(3), 1–3 (2012)

    Article  Google Scholar 

  5. Seybold, D., Domaschka, J., Rossini, A., Hauser, C.B., Griesinger, F., Tsitsipas, A.: Experiences of models@ run-time with EMF and CDO. In: Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering, pp. 46–56. ACM (2016)

    Google Scholar 

  6. Blair, G., Bencomo, N., France, R.B.: Models@ run.time. Computer 42(10), 22–27 (2009)

    Article  Google Scholar 

  7. Haeusler, M.: Scalable versioning for key-value stores. In: Proceedings of 5th International Conference on Data Management Technologies and Applications, Lisbon, Portugal, 24–26 July 2016, DATA 2016, pp. 79–86. http://dx.doi.org/10.5220/0005938700790086

  8. Haeusler, M., Nowakowski, E., Farwick, M., Breu, R., Kessler, J., Trojer, T.: ChronoGraph - versioning support for OLTP TinkerPop Graphs. In: Proceedings of the 6th International Conference on Data Science, Technology and Applications, DATA, INSTICC, vol. 1, pp. 87–97. SciTePress (2017)

    Google Scholar 

  9. Breu, M., Breu, R., Löw, S.: Living on the move: towards an architecture for a living models infrastructure. In: The Fifth International Conference on Software Engineering Advances, 22–27 August 2010, Nice, France, ICSEA 2010, pp. 290–295. http://dx.doi.org/10.1109/ICSEA.2010.51

  10. Breu, R., Agreiter, B., Farwick, M., Felderer, M., Hafner, M., Innerhofer-Oberperfler, F.: Living models - ten principles for change-driven software engineering. Int. J. Softw. Inform. 5(1–2), 267–290 (2011). http://www.ijsi.org/ch/reader/view_abstract.aspx?file_no=i84

    Google Scholar 

  11. Trojer, T., Farwick, M., Häusler, M., Breu, R.: Living modeling of IT architectures: challenges and solutions. In: De Nicola, R., Hennicker, R. (eds.) Software, Services, and Systems. LNCS, vol. 8950, pp. 458–474. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-15545-6_26

    Chapter  Google Scholar 

  12. Trojer, T., Farwick, M., Haeusler, M.: Modeling techniques for enterprise architecture documentation: experiences from practice. In: Multi-level Modelling Workshop Proceedings, MULTI 2014, p. 113 (2014)

    Google Scholar 

  13. ISO: SQL Standard 2011 (ISO/IEC 9075:2011) (2011)

    Google Scholar 

  14. Rodriguez, M.A., Neubauer, P.: The graph traversal pattern. In: Graph Data Management: Techniques and Applications, pp. 29–46 (2011). http://dx.doi.org/10.4018/978-1-61350-053-8.ch002

  15. Benelallam, A., Gómez, A., Sunyé, G., Tisi, M., Launay, D.: Neo4EMF, a scalable persistence layer for EMF models. In: Cabot, J., Rubin, J. (eds.) ECMFA 2014. LNCS, vol. 8569, pp. 230–241. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-09195-2_15

    Google Scholar 

  16. Salzberg, B.: File Structures: An Analytic Approach. Prentice-Hall Inc., Upper Saddle River (1988)

    Google Scholar 

  17. Toulmé, A., Intalio, Inc.: Presentation of EMF compare utility. In: Eclipse Modeling Symposium, pp. 1–8 (2006)

    Google Scholar 

  18. Wachsmuth, G.: Metamodel adaptation and model co-adaptation. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 600–624. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-73589-2_28

    Chapter  Google Scholar 

  19. Cicchetti, A., Di Ruscio, D., Eramo, R., Pierantonio, A.: Automating co-evolution in model-driven engineering. In: 12th International IEEE Enterprise Distributed Object Computing Conference, EDOC 2008. IEEE, pp. 222–231 (2008)

    Google Scholar 

  20. Khelladi, D.E., Hebig, R., Bendraou, R., Robin, J., Gervais, M.-P.: Detecting complex changes during metamodel evolution. In: Zdravkovic, J., Kirikova, M., Johannesson, P. (eds.) CAiSE 2015. LNCS, vol. 9097, pp. 263–278. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-19069-3_17

    Chapter  Google Scholar 

  21. ben Fadhel, A., Kessentini, M., Langer, P., Wimmer, M.: Search-based detection of high-level model changes. In: 2012 28th IEEE International Conference on Software Maintenance (ICSM), pp. 212–221. IEEE (2012)

    Google Scholar 

  22. Rose, L.M., Paige, R.F., Kolovos, D.S., Polack, F.A.: An analysis of approaches to model migration. In: Proceedings of the Joint MoDSE-MCCM Workshop, pp. 6–15 (2009)

    Google Scholar 

  23. Wimmer, M., Kusel, A., Schönböck, J., Retschitzegger, W., Schwinger, W., Kappel, G.: On using inplace transformations for model co-evolution. In: Proceedings of the 2nd International Workshop Model Transformation with ATL, vol. 711, pp. 65–78 (2010)

    Google Scholar 

  24. Meyers, B., Wimmer, M., Cicchetti, A., Sprinkle, J.: A generic in-place transformation-based approach to structured model co-evolution. Electron. Commun. EASST 42 (2012)

    Google Scholar 

  25. Rose, L.M., Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Model migration with epsilon flock. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 184–198. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13688-7_13

    Chapter  Google Scholar 

  26. Herrmannsdoerfer, M., Benz, S., Juergens, E.: COPE - automating coupled evolution of metamodels and models. In: Drossopoulou, S. (ed.) ECOOP 2009. LNCS, vol. 5653, pp. 52–76. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03013-0_4

    Chapter  Google Scholar 

  27. Narayanan, A., Levendovszky, T., Balasubramanian, D., Karsai, G.: Automatic domain model migration to manage metamodel evolution. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 706–711. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04425-0_57

    Chapter  Google Scholar 

  28. Haeusler, M., Breu, R.: Sustainable management of versioned data. In: Proceedings of the 24th PhD Mini-Symposium. Budapest University of Technology and Economics (2017)

    Google Scholar 

  29. Koegel, M., Helming, J.: EMFStore: a model repository for EMF models. In: Kramer, J., Bishop, J., Devanbu, P.T., Uchitel, S. (eds.) ICSE, vol. 2, pp. 307–308. ACM (2010). http://dblp.uni-trier.de/db/conf/icse/icse2010-2.html#KoegelH10

  30. Barmpis, K., Kolovos, D.: Hawk: towards a scalable model indexing architecture. In: Proceedings of the Workshop on Scalability in Model Driven Engineering, p. 6. ACM (2013)

    Google Scholar 

  31. Espinazo Pagán, J., Sánchez Cuadrado, J., García Molina, J.: Morsa: a scalable approach for persisting and accessing large models. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 77–92. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-24485-8_7

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Martin Haeusler .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Haeusler, M., Trojer, T., Kessler, J., Farwick, M., Nowakowski, E., Breu, R. (2018). Combining Versioning and Metamodel Evolution in the ChronoSphere Model Repository. In: Tjoa, A., Bellatreche, L., Biffl, S., van Leeuwen, J., Wiedermann, J. (eds) SOFSEM 2018: Theory and Practice of Computer Science. SOFSEM 2018. Lecture Notes in Computer Science(), vol 10706. Edizioni della Normale, Cham. https://doi.org/10.1007/978-3-319-73117-9_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-73117-9_11

  • Published:

  • Publisher Name: Edizioni della Normale, Cham

  • Print ISBN: 978-3-319-73116-2

  • Online ISBN: 978-3-319-73117-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics