Skip to main content
Log in

Scalable model views over heterogeneous modeling technologies and resources

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

Abstract

When engineering complex systems, models are typically used to represent various systems aspects. These models are often heterogeneous in terms of modeling languages, provenance, number or scale. As a result, the information actually relevant to engineers is usually split into different kinds of interrelated models. To be useful in practice, these models need to be properly integrated to provide global views over the system. This has to be made possible even when those models are serialized or stored in different formats adapted to their respective nature and scalability needs. Model view approaches have been proposed to tackle this issue. They provide unification mechanisms to combine and query various different models in a transparent way. These views usually target specific engineering tasks such as system design, monitoring and evolution. In an industrial context, there can be many large-scale use cases where model views can be beneficial, in order to trace runtime and design-time data, for example. However, existing model view solutions are generally designed to work on top of one single modeling technology (even though model import/export capabilities are sometimes provided). Moreover, they mostly rely on in-memory constructs and low-level modeling APIs that have not been designed to scale in the context of large models stored in different kinds of data sources. This paper presents a general solution to efficiently support scalable model views over heterogeneous modeling resources possibly handled via different modeling technologies. To this intent, it describes our integration approach between a model view framework and various modeling technologies providing access to multiple types of modeling resources (e.g., in XML/XMI, CSV, databases). It also presents how queries on such model views can be executed efficiently by benefiting from the optimization of the different model technologies and underlying persistence backends. Our solution has been evaluated on a practical large-scale use case provided by the industry-driven European MegaM@Rt2 project that aims at implementing a runtime \(\leftrightarrow \) design time feedback loop. The corresponding EMF-based tooling support, modeling artifacts and reproducible benchmarks are all available online.

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.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

Notes

  1. http://megamart2-ecsel.eu/.

  2. http://megamart2-ecsel.eu/.

  3. The Excel/CSV file stores the same requirement information than the ReqIF model from our initial MODELS 2018 paper but in a different format. For each row/requirement in the CSV file, the various columns contain the values of a requirement’s properties (an identifier and a textual description for each requirement in our current example).

  4. Note that the CSV file has no explicit semantics but a column layout that provides an implicit (pseudo-)semantic model. In such a case, in addition to our knowledge of this format, we can rely on the model representation provided by the Modeling Technology handling this particular resource.

  5. https://github.com/atlanmod/scalable-views-heterogeneous-models.

  6. https://www.atlanmod.org/emfviews.

  7. In past work [12], we provide insights into this weaving model and notably into how it can be created (by using the ViewPoint Description Language) and then internally used within the model view solution (via the Epsilon Comparison Language engine).

  8. https://neoemf.atlanmod.org.

  9. https://www.eclipse.org/epsilon/doc/.

  10. https://github.com/atlanmod/scalable-views-heterogeneous-models.

  11. https://www.eclipse.org/viatra/documentation/addons.html.

  12. https://drill.apache.org/.

References

  1. Afzal, W., Bruneliere, H., Di Ruscio, D., Sadovykh, A., Mazzini, S., Cariou, E., Truscan, D., Cabot, J., Gomez, A., Gorronogoitia, J., Pomante, L., Smrz, P.: The MegaM@Rt2 ECSEL project: megamodelling at runtime—scalable model-based framework for continuous development and runtime validation of complex systems. Microprocess. Microsyst. 61, 86–95 (2018)

    Article  Google Scholar 

  2. Apache TinkerPop: The Gremlin language (2020). https://tinkerpop.apache.org/gremlin.html. Accessed 6 Apr 2020

  3. Bancilhon, F., Spyratos, N.: Update semantics of relational views. ACM Trans. Database Syst. (TODS) 6(4), 557–575 (1981)

    Article  Google Scholar 

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

  5. Barmpis, K., Kolovos, D.S.: Comparative analysis of data persistence technologies for large-scale models. In: Proceedings of the 1st XM Workshop, pp. 33–38. ACM (2012)

  6. Bergmann, G., Horváth, Á., Ráth, I., Varró, D., Balogh, A., Balogh, Z., Ökrös, A.: Incremental evaluation of model queries over EMF models. In: International Conference on Model Driven Engineering Languages and Systems (MODELS 2010), pp. 76–90. Springer (2010)

  7. Bruneliere, H., Burger, E., Cabot, J., Wimmer, M.: A feature-based survey of model view approaches. Softw. Syst. Model. 18(3), 1931–1952 (2019)

    Article  Google Scholar 

  8. Bruneliere, H., Cabot, J., Dupé, G., Madiot, F.: MoDisco: a model driven reverse engineering framework. Inf. Softw. Technol. 56(8), 1012–1032 (2014)

    Article  Google Scholar 

  9. Bruneliere, H., Eramo, R., Gomez, A., Besnard, V., Bruel, J.M., Gogolla, M., Kästner, A., Rutle, A.: Model-driven engineering for design-runtime interaction in complex systems: scientific challenges and roadmap. In: MDE@DeRun 2018 Workshop, Co-located with the Software Technologies: Applications and Foundations (STAF 2018) Federation of Conferences, Software Technologies: Applications and Foundations (STAF 2018) Workshops, vol. LNCS 11176. Toulouse, France (2018)

  10. Bruneliere, H., Garcia, J., Desfray, P., Khelladi, D.E., Hebig, R., Bendraou, R., Cabot, J.: On lightweight metamodel extension to support modeling tools agility. In: European Conference on Modelling Foundations and Applications (ECMFA 2015), pp. 62–74. Springer, Berlin (2015)

  11. Bruneliere, H., Marchand de Kerchove, F., Daniel, G., Cabot, J.: Towards scalable model views on heterogeneous model resources. In: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, pp. 334–344. ACM, New York (2018)

  12. Bruneliere, H., Perez, J.G., Wimmer, M., Cabot, J.: EMF views: a view mechanism for integrating heterogeneous models. In: International Conference on Conceptual Modeling (ER 2015), pp. 317–325. Springer, Berlin (2015)

  13. Burger, E., Henss, J., Küster, M., Kruse, S., Happe, L.: View-based model-driven software development with modeljoin. Softw. Syst. Model. 15(2), 473–496 (2016)

    Article  Google Scholar 

  14. Chevalier, M., El Malki, M., Kopliku, A., Teste, O., Tournier, R.: How can we implement a multidimensional data warehouse using nosql? In: International Conference on Enterprise Information Systems, pp. 108–130. Springer, Berlin (2015)

  15. Cho, J., Garcia-Molina, H.: Synchronizing a database to improve freshness. In: ACM SIGMOD Record, pp. 117–128. ACM (2000)

  16. Daniel, G., Jouault, F., Sunyé, G., Cabot, J.: Gremlin-ATL: a scalable model transformation framework. In: Proceedings of the 32nd ASE Conference, pp. 462–472. IEEE (2017)

  17. Daniel, G., Sunyé, G., Benelallam, A., Tisi, M., Vernageau, Y., Gómez, A., Cabot, J.: NeoEMF: a multi-database model persistence framework for very large models. Sci. Comput. Program. 149, 9–14 (2017)

    Article  Google Scholar 

  18. Daniel, G., Sunyé, G., Cabot, J.: Mogwaï: a framework to handle complex queries on large models. In: Proceedings of the 10th RCIS Conference, pp. 225–237. IEEE (2016)

  19. Debreceni, C., Horváth, Á., Hegedüs, Á., Ujhelyi, Z., Ráth, I., Varró, D.: Query-driven incremental synchronization of view models. In: Proceedings of the 2nd Workshop on View-Based, Aspect-Oriented and Orthographic Software Modelling, p. 31. ACM (2014)

  20. Derler, P., Lee, E.A., Vincentelli, A.S.: Modeling Cyber-Physical Systems. Proc. IEEE 100(1), 13–28 (2012)

    Article  Google Scholar 

  21. Eclipse Foundation: Connected Data Objects (CDO) (2020). https://www.eclipse.org/cdo/. Accessed 6 Apr 2020

  22. ECMA International: JSON (JavaScript Object Notation) (2020). https://www.json.org. Accessed 6 Apr 2020

  23. Eramo, R., de Kerchove, F.M., Colange, M., Tucci, M., Ouy, J., Bruneliere, H., Di Ruscio, D.: Model-driven design-runtime interaction in safety critical system development: an experience report. J. Object Technol. 18(2), 1–22 (2019)

    Article  Google Scholar 

  24. Golra, F.R., Beugnard, A., Dagnat, F., Guérin, S., Guychard, C.: Addressing modularity for heterogeneous multi-model systems using model federation. In: Companion Proceedings of the 15th International Conference on Modularity, pp. 206–211. ACM (2016)

  25. Gupta, H.: Selection of views to materialize in a data warehouse. In: International Conference on Database Theory, pp. 98–112. Springer, Berlin (1997)

  26. Hutchinson, J., Whittle, J., Rouncefield, M.: Model-driven engineering practices in industry: social, organizational and managerial factors that lead to success or failure. Sci. Comput. Program. 89, 144–161 (2014)

    Article  Google Scholar 

  27. ISO/IEC/IEEE: Standard 42010:2011, systems and software engineering—architecture description (2020). https://www.iso.org/standard/50508.html. Accessed 6 Apr 2020

  28. Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: a model transformation tool. Sci. Comput. Program. 72(1–2), 31–39 (2008)

    Article  MathSciNet  Google Scholar 

  29. Kolev, B., Valduriez, P., Bondiombouy, C., Jimenez-Peris, R., Pau, R., Pereira, J.: Cloudmdsql: querying heterogeneous cloud data stores with a common language. Distrib. Parallel Databases 34(4), 463–503 (2016)

    Article  Google Scholar 

  30. Kolovos, D.S., Paige, R.F., Polack, F.A.: Merging models with the epsilon merging language (eml). In: International Conference on Model Driven Engineering Languages and Systems, pp. 215–229. Springer, Berlin (2006)

  31. Kolovos, D.S., Rose, L.M., Matragkas, N., Paige, R.F., Guerra, E., Cuadrado, J.S., De Lara, J., Ráth, I., Varró, D., Tisi, M., et al.: A research roadmap towards achieving scalability in model driven engineering. In: Proceedings of the Workshop on Scalability in Model Driven Engineering (BigMDE’13), Co-located with STAF Conferences, p. 2. ACM (2013)

  32. Kolovos, D.S., Rose, L.M., Matragkas, N.D., Paige, R.F., Polack, F.A., Fernandes, K.J.: Constructing and navigating non-invasive model decorations. In: International Conference on Theory and Practice of Model Transformations (ICMT 2010), pp. 138–152. Springer, Berlin (2010)

  33. Kolovos, D.S., Wei, R., Barmpis, K.: An approach for efficient querying of large relational datasets with OCL based languages. In: Proceedings of the Workshop on Extreme Modeling co-located with ACM/IEEE 16th International Conference on Model Driven Engineering Languages & Systems (MoDELS 2013), Miami, FL, USA, September 29, 2013, pp. 46–54 (2013). http://ceur-ws.org/Vol-1089/6.pdf

  34. Langlois, B., Exertier, D., Zendagui, B.: Development of modelling frameworks and viewpoints with Kitalpha. In: Proceedings of the 14th Workshop on Domain-Specific Modeling (DSM), Co-located with SPLASH 2014, pp. 19–22. ACM (2014)

  35. Madani, S., Kolovos, D., Paige, R.F.: Towards optimisation of model queries: a parallel execution approach. J. Object Technol. The 15th European Conference on Modelling Foundations and Applications (ECMFA’19) 18(2), 3:1–21 (2019)

  36. Marussy, K., Semeráth, O., Varró, D.: Incremental view model synchronization using partial models. In: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (MODELS 2018), pp. 323–333. ACM (2018)

  37. Object Management Group (OMG): Requirements Interchange Format (ReqIF) (2020). https://www.omg.org/spec/ReqIF. Accessed 6 Apr 2020

  38. Object Management Group (OMG): Unified Modeling Language (UML) (2020). http://www.uml.org. Accessed 6 Apr 2020

  39. OMG: MOF 2 XMI Mapping Specification version 2.5.1 (2020). http://www.omg.org/spec/XMI/2.5.1/. Accessed 6 Apr 2020

  40. Pagán, J.E., Cuadrado, J.S., Molina, J.G.: A repository for scalable model management. Softw. Syst. Model. 14(1), 219–239 (2015)

    Article  Google Scholar 

  41. Paige, R.F., Kolovos, D.S., Rose, L.M., Drivalos, N., Polack, F.A.C.: The design of a conceptual framework and technical infrastructure for model management language engineering. In: Proceedings of the 2009 14th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS’09), pp. 162–171. IEEE Computer Society (2009)

  42. Semeráth, O., Debreceni, C., Horváth, Á., Varró, D.: Incremental backward change propagation of view models by logic solvers. In: Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems (MODELS 2016), pp. 306–316. ACM (2016)

  43. Eclipse Sirius project (2020). https://eclipse.org/sirius/. Accessed 6 Apr 2020

  44. Steinberg, D., Budinsky, F., Merks, E., Paternostro, M.: EMF: Eclipse Modeling Framework. Pearson Education, London (2008)

    Google Scholar 

  45. The Eclipse Foundation: Teneo (2020). https://wiki.eclipse.org/Teneo. Accessed 6 Apr 2020

  46. Ujhelyi, Z., Bergmann, G., Hegedüs, Á., Horváth, Á., Izsó, B., Ráth, I., Szatmári, Z., Varró, D.: EMF-IncQuery: an integrated development environment for live model queries. Sci. Comput. Program. 98, 80–99 (2015)

    Article  Google Scholar 

  47. Varró, D., Bergmann, G., Hegedüs, Á., Horváth, Á., Ráth, I., Ujhelyi, Z.: Road to a reactive and incremental model transformation platform: three generations of the VIATRA framework. Softw. Syst. Model. 15(3), 609–629 (2016)

    Article  Google Scholar 

  48. Wei, R., Kolovos, D.S.: An efficient computation strategy for allInstances(). In: Proceedings of the 3rd BigMDE Workshop pp. 32–41 (2015)

  49. Whittle, J., Hutchinson, J., Rouncefield, M.: The state of practice in model-driven engineering. IEEE Softw. 31(3), 79–85 (2014)

    Article  Google Scholar 

  50. Willink, E.D.: Deterministic lazy mutable OCL collections. In: Federation of International Conferences on Software Technologies: Applications and Foundations (STAF 2017), pp. 340–355. Springer, Berlin (2017)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hugo Bruneliere.

Additional information

Communicated by Richard Paige, Andrzej Wasowski, and Oystein Haugen.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This work has received funding from the ECSEL Joint Undertaking under Grant Agreement No. 737494 (MegaM@Rt2 project). This Joint Undertaking receives support from the European Union’s Horizon 2020 research and innovation program and from Sweden, France, Spain, Italy, Finland & Czech Republic.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Bruneliere, H., de Kerchove, F.M., Daniel, G. et al. Scalable model views over heterogeneous modeling technologies and resources. Softw Syst Model 19, 827–851 (2020). https://doi.org/10.1007/s10270-020-00794-6

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-020-00794-6

Keywords

Navigation