Abstract
In order to master the complexity of a system at the design stage, several models have to be defined and combined together. However, when heterogeneous and independent DSLs are used to define these models, there is a need to explicitly compose their semantics. While the composition of static semantics of DSLs is straightforward, the coordination of their execution semantics is still challenging. This issue is generally called inter-DSL collaboration. In this paper, we propose a formal Model Driven Engineering (MDE) framework built on the Meeduse language workbench that we extend with the Business Process Model and Notation (BPMN). Meeduse allows to instrument DSLs with formal semantics using the B method. BPMN provides an easy-to-use notation to define the coordination of execution semantics of these DSLs. A transformation of BPMN models into Communication Sequential Process (CSP) formal language enables the possibility for animation and verification. Our approach is successfully demonstrated by modeling the collaboration of two DSLs from a real case study.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Data Availability Statement
The artifact is available in the Software Heritage repository: swh:1:dir:c38d7336f13f438eab7212227f10fb0dbf0350c1
Notes
References
Abrial, J.R.: The B-book: assigning programs to meanings. Cambridge University Press (1996). https://doi.org/10.1017/CBO9780511624162
Boulanger, F., Hardebolle, C.: Simulation of multi-formalism models with Modhel’x. In: 2008 1st International Conference on Software Testing, Verification, and Validation, pp. 318–327 (05 2008). https://doi.org/10.1109/ICST.2008.15
Butler, M., Leuschel, M.: Combining CSP and B for specification and property verification. In: Fitzgerald, J., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 221–236. Springer, Heidelberg (2005). https://doi.org/10.1007/11526841_16
Chehida, S., Baouya, A., Bozga, M., Bensalem, S.: Exploration of impactful countermeasures on IoT attacks. In: 9th Mediterranean Conference on Embedded Computing, MECO 2020, Budva, Montenegro, 8–11 June 2020, pp. 1–4. IEEE (2020). https://doi.org/10.1109/MECO49872.2020.9134200
Chehida, S., Idani, A., Cortes-Cornax, M., Vega, G.: GitHub artifacts. http://github.com/SalimChehida/Inter-DSL-Collaboration
Clearsy: Atelier B. http://www.atelierb.eu/en/
Emerson, M., Sztipanovits, J.: Techniques for metamodel composition. In: OOPSLA - 6th Workshop on Domain Specific Modeling (2006)
Flavio, C., Alberto, P., Barbara, R., Damiano, F.: An ECLIPSE Plug-in for formal verification of BPMN processes. In: 2010 Third International Conference on Communication Theory, Reliability, and Quality of Service, pp. 144–149 (2010). https://doi.org/10.1109/CTRQ.2010.32
Gelernter, D., Carriero, N.: Coordination languages and their significance. Commun. ACM 35(2), 97–107 (1992)
Idani, A.: Meeduse: a tool to build and run proved DSLs. In: Dongol, B., Troubitsyna, E. (eds.) IFM 2020. LNCS, vol. 12546, pp. 349–367. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-63461-2_19
Idani, A., Ledru, Y., Ait Wakrime, A., Ben Ayed, R., Bon, P.: Towards a tool-based domain specific approach for railway systems modeling and validation. In: Collart-Dutilleul, S., Lecomte, T., Romanovsky, A. (eds.) RSSRail 2019. LNCS, vol. 11495, pp. 23–40. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-18744-6_2
Jouault, F., Vanhooff, B., Bruneliere, H., Doux, G., Berbers, Y., Bezivin, J.: Inter-DSL coordination support by combining megamodeling and model weaving. In: Proceedings of the 2010 ACM Symposium on Applied Computing, pp. 2011–2018. SAC 2010, Association for Computing Machinery, New York, NY, USA (2010)
Kleine, M.: CSP as a coordination language. In: De Meuter, W., Roman, G.-C. (eds.) COORDINATION 2011. LNCS, vol. 6721, pp. 65–79. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-21464-6_5
Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Merging models with the epsilon merging language (EML). In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MODELS 2006. LNCS, vol. 4199, pp. 215–229. Springer, Heidelberg (2006). https://doi.org/10.1007/11880240_16
Kordy, B., Mauw, S., Radomirović, S., Schweitzer, P.: Foundations of attack–defense trees. In: Degano, P., Etalle, S., Guttman, J. (eds.) FAST 2010. LNCS, vol. 6561, pp. 80–95. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-19751-2_6
Larsen, M.E.V.: BCOol: the behavioral coordination operator language, Ph. D. thesis, University of Nice Sophia Antipolis, France (2016)
Larsen, M.E.V., DeAntoni, J., Combemale, B., Mallet, F.: A behavioral coordination operator language (BCOoL). In: Proceedings of the 18th International Conference on Model Driven Engineering Languages and Systems. MODELS 2015, IEEE Press (2015)
Leuschel, M., Butler, M.: ProB: an automated analysis toolset for the B method. Int. J. Softw. Tools Technol. Transfer 10, 185–203 (2008)
Milner, R.: A Calculus of Communicating Systems. Springer-Verlag, Berlin, Heidelberg (1982). https://doi.org/10.1007/3-540-10235-3
OMG: Business Process Model and Notation (BPMN), Version 2.0 (2011). http://www.omg.org/spec/BPMN/2.0
OMG: Unified modeling language\(^{\rm TM}\) (uml®) (2011). http://www.omg.org/spec/UML/index.htm
Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice Hall PTR, USA (1997)
Schneider, S., Treharne, H.: CSP Theorems for Communicating B Machines. Form. Asp. Comput. 17(4), 390–422 (2005). https://doi.org/10.1007/s00165-005-0076-7
Tourchi Moghaddam, M., Rutten, E., Giraud, G.: Hierarchical control for self-adaptive IoT systems : a constraint programming-based adaptation approach. In: HICSS 2022 - Hawaii International Conference on System Sciences, pp. 1–10. Hawaii, United States (2022). http://hal.inria.fr/hal-03461137
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 IFIP International Federation for Information Processing
About this paper
Cite this paper
Chehida, S., Idani, A., Cortes-Cornax, M., Vega, G. (2023). A Formal MDE Framework for Inter-DSL Collaboration. In: Jongmans, SS., Lopes, A. (eds) Coordination Models and Languages. COORDINATION 2023. Lecture Notes in Computer Science, vol 13908. Springer, Cham. https://doi.org/10.1007/978-3-031-35361-1_13
Download citation
DOI: https://doi.org/10.1007/978-3-031-35361-1_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-35360-4
Online ISBN: 978-3-031-35361-1
eBook Packages: Computer ScienceComputer Science (R0)