Industrial Experiences with a Formal DSL Semantics to Check the Correctness of DSL Artifacts

Sarmen Keshishzadeh
(Eindhoven University of Technology)
Arjan J. Mooij
(Embedded Systems Innovation by TNO)
Jozef Hooman
(Embedded Systems Innovation by TNO and Radboud University Nijmegen)

A domain specific language (DSL) abstracts from implementation details and is aligned with the way domain experts reason about a software component. The development of DSLs is usually centered around a grammar and transformations that generate implementation code or analysis models. The semantics of the language is often defined implicitly and in terms of a transformation to implementation code. In the presence of multiple transformations from the DSL, the correctness of the generated artifacts with respect to the semantics of the DSL is a relevant issue. We show that a formal semantics is essential for checking the correctness of the generated artifacts. We exploit the formal semantics in an industrial project and use formal techniques based on equivalence checking and model-based testing for validating the correctness of the generated artifacts. We report about our experience with this approach in an industrial development project.

In Jana Kofroň, Jana Tumova and Bara Buhnova: Proceedings of the 13th International Workshop on Formal Engineering Approaches to Software Components and Architectures (FESCA 2016), Eindhoven, The Netherlands, 3rd April 2016, Electronic Proceedings in Theoretical Computer Science 205, pp. 16–30.
Published: 28th March 2016.

ArXived at: http://dx.doi.org/10.4204/EPTCS.205.2 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org