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.
Similar content being viewed by others
Notes
Cf. http://thingml.org/.
We are using the subscript \(_{(i)}\) to emphasize that the dots in the event structure represent event occurrences and not event types.
References
Aspect-Oriented Modeling Workshop Series. http://www.aspect-modeling.org/
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)
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)
Blouin, A., Combemale, B., Baudry, B., Beaudoux, O.: Kompren: modeling and generating model slicers. Softw. Syst. Model. 14(1), 321–337 (2015)
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)
Bull, C., Whittle, J.: Supporting reflective practice in software engineering education through a studio-based approach. IEEE Softw. 31(4), 44–50 (2014)
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)
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)
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)
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)
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)
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)
Dijkstra, E.W.: A Discipline of Programming, vol. 1. Prentice-Hall, Englewood Cliffs (1976)
France, R., Fleurey, F., Reddy, R., Baudry, B., Ghosh, S.: Providing support for model composition in metamodels. In EDOC, pp. 253–264 (2007)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns. Addison Wesley, Reading (1995)
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)
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)
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)
Hölzl, M., Knapp, A., Zhang, G.: Modeling the Car Crash Crisis Management System Using HiLA, pp. 234–271. Springer, Berlin (2010)
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)
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)
Klein, J., Hélouet, L., Jézéquel, J.-M.: Semantic-based weaving of scenarios. In: AOSD, pp. 27–38. ACM Press (2006)
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)
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)
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)
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)
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)
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)
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)
McNeile, A., Simons, N.: Protocol modelling: a modelling approach that supports reusable behavioural abstractions. SoSyM 5(1), 91–107 (2006)
Mosser. S., Blay-Fornarino. M., France. R.: Workflow design using fragment composition. In: TAOSD VII, vol. 6210, pp. 200–233 (2010)
Mussbacher. G.: Aspect-Oriented User Requirements Notation. Ph.D. thesis, University of Ottawa, Canada (2010)
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)
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)
Nejati, S., Sabetzadeh, M., Chechik, M., Easterbrook, S., Zave, P.: Matching and merging of statecharts specifications. In: ICSE (2007)
Nielsen, M., Plotkin, G., Winskel, G.: Petri nets, event structures and domains. In: Semantics of concurrent computation, vol. 70 of LNCS. Springer, Berlin (1979)
Object Management Group.: Unified Modeling Language (v2.5.0) (2015)
OMG.: Uml infrastructure specification v2.4 (2010)
Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. Assoc. Comput. Mach. 15(12), 1053–1058 (1972)
Schmidt, D.C.: Model-driven engineering. IEEE Comput. 39, 41–47 (2006)
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)
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)
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)
Author information
Authors and Affiliations
Corresponding author
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
About this article
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
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-018-00707-8