Abstract
Existing surveys about language workbenches (LWBs) ranging from 2006 to 2019 observe a poor usage of formal methods within domain-specific languages (DSLs) and call for identifying the reasons. We believe that the lack of automated formal reasoning in LWBs, and more generally in MDE, is not due to the complexity of formal methods and their mathematical background, but originates from the lack of initiatives that are dedicated to the integration of existing tools and techniques. To this aim we developed the Meeduse LWB and investigated the use of the B method to rigorously define the semantics of DSLs. The current applications of Meeduse show that the integration of DSLs together with theorem proving, animation and model-checking is viable and should be explored further. This technique is especially interesting for executable DSLs (xDSLs), which are DSLs with behavioural features. This paper is a review of our Formal MDE (FMDE) approach for xDSLs and a proposal for new avenues of investigation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Abrial, J.R.: The B-book: Assigning Programs to Meanings. Cambridge University Press, New York (1996)
Baar, T.: Non-deterministic constructs in OCL – what does any() mean. In: Prinz, A., Reed, R., Reed, J. (eds.) SDL 2005. LNCS, vol. 3530, pp. 32–46. Springer, Heidelberg (2005). https://doi.org/10.1007/11506843_3
Bobbio, A.: System modelling with petri nets. In: Colombo, A.G., de Bustamante, A.S. (eds.) Systems Reliability Assessment, vol. 7, pp. 103–143. Springer, Dordrecht (1990). https://doi.org/10.1007/978-94-009-0649-5_6
Bryant, B.R., Gray, J., Mernik, M., Clarke, P.J., France, R.B., Karsai, G.: Challenges and directions in formalizing the semantics of modeling languages. Comput. Sci. Inf. Syst. 8(2), 225–253 (2011). https://doi.org/10.2298/CSIS110114012B
Combemale, B.: Towards Language-Oriented Modeling. Habilitation à diriger des recherches, Université de Rennes 1, December 2015
Dormoy, F.X.: SCADE 6: a model based solution for safety critical software development. In: Embedded Real Time Software and Systems (ERTS2008), Toulouse, France, January 2008. https://hal-insu.archives-ouvertes.fr/insu-02270108
Gargantini, A., Riccobene, E., Scandurra, P.: Combining formal methods and MDE techniques for model-driven system design and analysis. Int. J. Adv. Softw. 1&2 (2010)
Gemoc: Gemoc. http://gemoc.org/
Idani, A.: Formal model-driven executable DSLs: application to Petri-Nets. Int. J. Innov. Syst. Softw. Eng. (ISSE) 18(1) (2022). https://doi.org/10.1007/s11334-021-00408-4
Idani, A., Ledru, Y., Vega, G.: Alliance of model driven engineering with a proof-based formal approach. Innov. Syst. Softw. Eng. 16(3), 289–307 (2020)
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
Idani, A., Ledru, Y., Ait Wakrime, A., Ben Ayed, R., Collart-Dutilleul, S.: Incremental development of a safety critical system combining formal methods and DSMLs. In: Larsen, K.G., Willemse, T. (eds.) FMICS 2019. LNCS, vol. 11687, pp. 93–109. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-27008-7_6
Idani, A., Vega, G., Leuschel, M.: Applying formal reasoning to model transformation: the meeduse solution. In: Proceedings of the 12th Transformation Tool Contest, co-located with STAF 2019, Software Technologies: Applications and Foundations. CEUR Workshop Proceedings, vol. 2550, pp. 33–44 (2019)
Iung, A., et al.: Systematic mapping study on domain-specific language development tools. Empir. Softw. Eng. 25(5), 4205–4249 (2020). https://doi.org/10.1007/s10664-020-09872-1
Kosar, T., Bohra, S., Mernik, M.: Domain-specific languages: a systematic mapping study. Inf. Softw. Technol. 71, 77–91 (2016)
Körner, P., Bendisposto, J., Dunkelau, J., Krings, S., Leuschel, M.: Embedding high-level formal specifications into applications. In: ter Beek, M.H., McIver, A., Oliveira, J.N. (eds.) FM 2019. LNCS, vol. 11800, pp. 519–535. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-30942-8_31
Laleau, R., Mammar, A.: An overview of a method and its support tool for generating B specifications from UML notations. In: 15th IEEE International Conference on Automated Software Engineering, pp. 269–272 (2000)
Laleau, R., Polack, F.: Coming and going from UML to B: a proposal to support traceability in rigorous IS development. In: Bert, D., Bowen, J.P., Henson, M.C., Robinson, K. (eds.) ZB 2002. LNCS, vol. 2272, pp. 517–534. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45648-1_27
Ledang, H.: Automatic translation from UML specifications to B. In: Automated Software Engineering, p. 436 (2001)
Leuschel, M., Butler, M.: ProB: an automated analysis toolset for the B method. Softw. Tools Technol. Transf. (STTT) 10(2), 185–203 (2008)
Mashkoor, A., Kossak, F., Egyed, A.: Evaluating the suitability of state-based formal methods for industrial deployment. Softw. Pract. Exp. 48(12), 2350–2379 (2018)
Meeduse. http://vasco.imag.fr/tools/meeduse/. Accessed 15 Dec 2020
Merilinna, J., Pärssinen, J.: Verification and validation in the context of domain-specific modelling. In: Proceedings of the 10th Workshop on Domain-Specific Modeling, pp. 9:1–9:6. ACM, New York (2010)
Meyer, E.: Développements formels par objets: utilisation conjointe de B et d’UML. Ph.D. thesis, Université de Nancy 2, March 2001
Rivera, J., Durán, F., Vallecillo, A.: Formal specification and analysis of domain specific models using maude. Simulation 85, 778–792 (2009)
Snook, C., Butler, M.: UML-B: formal modeling and design aided by UML. ACM Trans. Softw. Eng. Methodol. 15(1) (2006)
Snook, C., Butler, M.: U2B-A tool for translating UML-B models into B. In: Mermet, J. (ed.) UML-B Specification for Proven Embedded Systems Design (2004)
Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework 2.0, 2nd edn. Addison-Wesley Professional, Amsterdam (2009)
Tikhonova, U., Manders, M., Brand, van den, M., Andova, S., Verhoeff, T.: Applying model transformation and Event-B for specifying an industrial DSL. In: Workshop on Model Driven Engineering, Verification and Validation, pp. 41–50. CEUR Workshop Proceedings, CEUR-WS.org (2013)
Tikhonova, U.: Reusable specification templates for defining dynamic semantics of DSLs. Softw. Syst. Model. 18, 691–720 (2017)
Vallecillo, A., Gogolla, M.: Adding random operations to OCL. In: Proceedings of MODELS 2017 Satellite Event, pp. 324–328. CEUR Workshop Proceedings. CEUR-WS.org (2017)
Voelter, M., et al.: Using language workbenches and domain-specific languages for safety-critical software development. Softw. Syst. Model. 18(4), 2507–2530 (2018). https://doi.org/10.1007/s10270-018-0679-0
Zalila, F., Crégut, X., Pantel, M.: Formal verification integration approach for DSML. In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds.) MODELS 2013. LNCS, vol. 8107, pp. 336–351. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-41533-3_21
Acknowledgements
The author would like to thank the LIG lab and CNRS for supporting the development of Meeduse, and he is much obliged to German Vega for his great technical contribution to the tool. This work is funded by the ANR-18-CE25-0013 PHILAE project.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Idani, A. (2022). The B Method Meets MDE: Review, Progress and Future. In: Guizzardi, R., Ralyté, J., Franch, X. (eds) Research Challenges in Information Science. RCIS 2022. Lecture Notes in Business Information Processing, vol 446. Springer, Cham. https://doi.org/10.1007/978-3-031-05760-1_29
Download citation
DOI: https://doi.org/10.1007/978-3-031-05760-1_29
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-05759-5
Online ISBN: 978-3-031-05760-1
eBook Packages: Computer ScienceComputer Science (R0)