Skip to main content
Log in

A unifying framework for homogeneous model composition

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

Abstract

The growing use of models for separating concerns in complex systems has lead to a proliferation of model composition operators. These composition operators have traditionally been defined from scratch following various approaches differing in formality, level of detail, chosen paradigm, and styles. Due to the lack of proper foundations for defining model composition (concepts, abstractions, or frameworks), it is difficult to compare or reuse composition operators. In this paper, we stipulate the existence of a unifying framework that reduces all structural composition operators to structural merging, and all composition operators acting on discrete behaviors to event scheduling. We provide convincing evidence of this hypothesis by discussing how structural and behavioral homogeneous model composition operators (i.e., weavers) can be mapped onto this framework. Based on this discussion, we propose a conceptual model of the framework and identify a set of research challenges, which, if addressed, lead to the realization of this framework to support rigorous and efficient engineering of model composition operators for homogeneous and eventually heterogeneous modeling languages.

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.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12

Similar content being viewed by others

Notes

  1. Cf. http://thingml.org/.

  2. We are using the subscript \(_{(i)}\) to emphasize that the dots in the event structure represent event occurrences and not event types.

References

  1. Aspect-Oriented Modeling Workshop Series. http://www.aspect-modeling.org/

  2. Al Abed, W., Schöttle, M., Ayed, A., Kienzle, J.: Concern-oriented behaviour modelling with sequence diagrams and protocol models. In: Behavior Modeling—Foundations and Applications, vol. 6368 of LNCS. Springer, Berlin (2015)

  3. André, C., Mallet, F., De Simone, R.: Modeling time(s). In: Proceedings of the 10th International Conference on Model Driven Engineering Languages and Systems, MODELS’07, pp. 559–573, Springer, Berlin (2007)

  4. Blouin, A., Combemale, B., Baudry, B., Beaudoux, O.: Kompren: modeling and generating model slicers. Softw. Syst. Model. 14(1), 321–337 (2015)

    Article  Google Scholar 

  5. Bockisch, C., Malakuti, S., Akşit, M., Katz, S.: Making aspects natural: events and composition. In: 10th International Conference on Aspect-Oriented Software Development (AOSD ’11). ACM (2011)

  6. Bull, C., Whittle, J.: Supporting reflective practice in software engineering education through a studio-based approach. IEEE Softw. 31(4), 44–50 (2014)

    Article  Google Scholar 

  7. Clarke, S., Walker, R.J.: Generic aspect-oriented design with Theme/UML. In: Filman, R.E., Elrad, T., Clarke, S., Aksit, A. (eds.) Aspect-Oriented Software Development, pp. 425–458. Addison-Wesley, Boston (2005)

  8. Clavreul, M., Barais, O., Jézéquel, J.-M.: Integrating legacy systems with MDE. In: 32nd ACM/IEEE International Conference on Software Engineering (ICSE’10), pp. 69–78. ACM (2010)

  9. Combemale, B., Deantoni, J., Larsen, M.V., Mallet, F., Barais, O., Baudry, B., France, R.: Reifying concurrency for executable metamodeling. In: Erwig, M., Paige, R.F., Van Wyk, E. (eds) SLE–6th International Conference on Software Language Engineering, vol. 8225, pp. 365–384, Indianapolis. Springer (2013)

  10. Deantoni, J., Diallo, P.I., Teodorov, C., Champeau, J., Combemale, B.: Towards a meta-language for the concurrency concern in DSLs. In: Design, Automation and Test in Europe Conference and Exhibition (DATE), Grenoble, France (2015)

  11. Deantoni, J., Mallet, F.: TimeSquare: treat your models with logical time. In Furia, S.N.C.A. (ed.) TOOLS—50th International Conference on Objects, Models, Components, Patterns—2012, vol. 7304, pp. 34–41, Prague, Czech Republic. Czech Technical University in Prague, in co-operation with ETH Zurich, Springer (2012)

  12. Deantoni, J., Mallet, F., Thomas, F., Reydet, G., Babau, J.-P., Mraidha, C., Gauthier, L., Rioux, L., Sordon, N.: RT-simex: retro-analysis of execution traces. In: Sullivan, K.J., Roman, G.-C. (eds.) SIGSOFT FSE, vol. ISBN 978-1-60558-791-2 of Proceedings of the 18th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 377–378, Santa Fe, United States (2010)

  13. Dijkstra, E.W.: A Discipline of Programming, vol. 1. Prentice-Hall, Englewood Cliffs (1976)

    MATH  Google Scholar 

  14. France, R., Fleurey, F., Reddy, R., Baudry, B., Ghosh, S.: Providing support for model composition in metamodels. In EDOC, pp. 253–264 (2007)

  15. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns. Addison Wesley, Reading (1995)

    MATH  Google Scholar 

  16. Garcés, K., Deantoni, J., Mallet, F.: A model-based approach for reconciliation of polychronous execution traces. In: SEAA 2011—37th EUROMICRO Conference on Software Engineering and Advanced Applications, Oulu, Finland, IEEE (2011)

  17. Glitia, C., Deantoni, J., Mallet, F.: Logical Time @ Work: capturing data dependencies and platform constraints. In: Kaźmierski, T.J.J., Morawiec, A. (eds) System Specification and Design Languages, vol. 106 of Lecture Notes in Electrical Engineering, pp. 223–238. Springer, New York (2012)

  18. Goknil, A., Deantoni, J., Peraldi-Frati, M.-A., Mallet, F.: Tool support for the analysis of TADL2 timing constraints using TimeSquare. In: ICECCS’2013—18th International Conference on Engineering of Complex Computer Systems, Singapore, Singapore, (2013)

  19. Hölzl, M., Knapp, A., Zhang, G.: Modeling the Car Crash Crisis Management System Using HiLA, pp. 234–271. Springer, Berlin (2010)

    Google Scholar 

  20. Jézéquel, J.-M., Combemale, B., Barais, O., Monperrus, M., Fouquet, F.: Mashup of metalanguages and its implementation in the Kermeta language workbench. Softw. Syst. Model. 14, 905–920 (2013)

    Article  Google Scholar 

  21. Kienzle, J., Al Abed, W., Klein, J.: Aspect-oriented multi-view modeling. In: 8th International Conference on Aspect-Oriented Software Development (AOSD’09), pp. 87–98. ACM Press (2009)

  22. Klein, J., Hélouet, L., Jézéquel, J.-M.: Semantic-based weaving of scenarios. In: AOSD, pp. 27–38. ACM Press (2006)

  23. Kramer, M.E., Klein, J., Steel, J.R.H., Morin. B., Kienzle, J., Barais, O., Jézéquel,J.-M.: Achieving practical genericity in model weaving through extensibility. In: 6th International Conference on Model Transformation (ICMT’13), vol. 7909 of LNCS, pp. 108–124. Springer, Berlin (2013)

  24. Larsen, M.V., Goknil, A.: Railroad crossing heterogeneous model. In: GEMOC workshop 2013—International Workshop on The Globalization of Modeling Languages, Miami, Florida, USA (2013)

  25. Larsen, M.E.V., Deantoni, J., Combemale, B., Mallet, F.: A behavioral coordination operator language (BCOoL). In: Lethbridge, T., Cabot, J., Egyed, A. (eds.) International Conference on Model Driven Engineering Languages and Systems (MODELS), vol. 18, pp. 462, Ottawa, Canada, September 2015. ACM (to be published in the Proceedings of the Models 2015 Conference)

  26. Latombe, F., Crégut. X., Combemale, B., Deantoni, J., Pantel, M.: Weaving concurrency in executable domain-specific modeling languages. In: 8th ACM SIGPLAN International Conference on Software Language Engineering (SLE), Pittsburg. ACM (2015)

  27. Lee, E.A., Sangiovanni-Vincentelli, A.: The tagged signal model-a preliminary version of a denotational framework for comparing models of computation. Memo. UCB/ERL M 96, 71 (1996)

    Google Scholar 

  28. Mallet, F., Deantoni, J., André, C., De Simone, R.: The clock constraint specification language for building timed causality models. Innov. Syst. Softw. Eng. 6(1–2), 99–106 (2010)

    Article  Google Scholar 

  29. Marchand. J., Combemale, B., Baudry, B.: A categorical model of model merging and weaving. In: 4th International Workshop on Modelling in Software Engineering (MiSE 2012). IEEE (2012)

  30. McNeile, A., Simons, N.: Protocol modelling: a modelling approach that supports reusable behavioural abstractions. SoSyM 5(1), 91–107 (2006)

    Google Scholar 

  31. Mosser. S., Blay-Fornarino. M., France. R.: Workflow design using fragment composition. In: TAOSD VII, vol. 6210, pp. 200–233 (2010)

  32. Mussbacher. G.: Aspect-Oriented User Requirements Notation. Ph.D. thesis, University of Ottawa, Canada (2010)

  33. Mussbacher, G., Alam, O., Alhaj, M., Ali, S., Amálio, N., Barn. B., Bræk, R., Clark, T., Combemale. B., Cysneiros, L.M., Fatima, U., France, R., Georg, G., Horkoff, J., Kienzle, J., Leite, J.C., Lethbridge, T.C., Luckey, M., Moreira, A., Mutz, F., Padua, A., Oliveira, A., Petriu, D.C., Schöttle, M., Troup, L., Werneck, V.M.B.: Assessing composition in modeling approaches. In: Workshop CMA’12. ACM (2012)

  34. Mussbacher. G., Amyot. D., Whittle, J.: Composing goal and scenario models with the aspect-oriented user requirements notation based on syntax and semantics. In: Aspect-Oriented Requirements Engineering. Springer, Berlin (2013)

  35. Nejati, S., Sabetzadeh, M., Chechik, M., Easterbrook, S., Zave, P.: Matching and merging of statecharts specifications. In: ICSE (2007)

  36. Nielsen, M., Plotkin, G., Winskel, G.: Petri nets, event structures and domains. In: Semantics of concurrent computation, vol. 70 of LNCS. Springer, Berlin (1979)

  37. Object Management Group.: Unified Modeling Language (v2.5.0) (2015)

  38. OMG.: Uml infrastructure specification v2.4 (2010)

  39. Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. Assoc. Comput. Mach. 15(12), 1053–1058 (1972)

    Google Scholar 

  40. Schmidt, D.C.: Model-driven engineering. IEEE Comput. 39, 41–47 (2006)

    Article  Google Scholar 

  41. Whittle, J., Jayaraman, P., Elkhodary, A., Moreira, A., Araújo, J.: MATA: a unified approach for composing UML aspect models based on graph transformation. In: Transactions on Aspect-Oriented Software Development VI, vol. 5560 of LNCS, pp. 191–237. Springer, Berlin (2009)

  42. Winskel, G.: Event structures. In: Brauer, W., Reisig, W., Rozenberg, G. (eds.) Advances in Petri Nets 1986, Part II on Petri Nets: Applications and Relationships to Other Models of Concurrency. Springer, New York (1987)

  43. Zhang, G., Hölzl, M.M.: HiLA: high-level aspects for UML state machines. In: MoDELS Workshops, vol. 6002 of LNCS, pp. 104–118. Springer (2009)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Benoit Combemale.

Additional information

Communicated by Dr Jeff Gray.

Publisher's Note

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

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Kienzle, J., Mussbacher, G., Combemale, B. et al. A unifying framework for homogeneous model composition. Softw Syst Model 18, 3005–3023 (2019). https://doi.org/10.1007/s10270-018-00707-8

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-018-00707-8

Keywords

Navigation