Pragmatic reuse for DSML development
- PDF / 1,457,044 Bytes
- 30 Pages / 595.276 x 790.866 pts Page_size
- 15 Downloads / 194 Views
REGULAR PAPER
Pragmatic reuse for DSML development Composing a DSL for hybrid CPS modeling Stefan Klikovits1,2 · Didier Buchs1 Received: 29 October 2019 / Revised: 26 July 2020 / Accepted: 14 September 2020 © The Author(s) 2020
Abstract By bridging the semantic gap, domain-specific language (DSLs) serve an important role in the conquest to allow domain experts to model their systems themselves. In this publication we present a case study of the development of the Continuous REactive SysTems language (CREST), a DSL for hybrid systems modeling. The language focuses on the representation of continuous resource flows such as water, electricity, light or heat. Our methodology follows a very pragmatic approach, combining the syntactic and semantic principles of well-known modeling means such as hybrid automata, data-flow languages and architecture description languages into a coherent language. The borrowed aspects have been carefully combined and formalised in a well-defined operational semantics. The DSL provides two concrete syntaxes: CREST diagrams, a graphical language that is easily understandable and serves as a model basis, and crestdsl, an internal DSL implementation that supports rapid prototyping—both are geared towards usability and clarity. We present the DSL’s semantics, which thoroughly connect the various language concerns into an executable formalism that enables sound simulation and formal verification in crestdsl, and discuss the lessons learned throughout the project. Keywords Cyber-physical systems · Domain-specific language · Modeling · Simulation · Verification
1 Introduction Modeling and simulation are used by engineers to design, probe and verify their systems before construction, thereby reducing design flaws and increasing the development speed. From large monolithic installations such as oil platforms to wide, distributed networks (e.g. electrical power grids), to intricate robotic designs for medical applications, the use of these modeling techniques is indispensable. To aid the process of model creation, system engineers rely on a broad set of formalisms, languages and tools. The ever-growing Communicated by Gabor Karsai.
B
Stefan Klikovits [email protected] Didier Buchs [email protected]
1
University of Geneva, Route de Drize 7, CH-1227 Carouge, Switzerland
2
Present Address: ERATO Meta-Mathematics for System Design Hasuo Project, National Institute of Informatics, Tokyo, Japan
diversity allows expert modellers to choose the most appropriate formalism for their particular system, and even use a combination of different languages to model the various aspects of their system. Modern modeling platforms therefore often support the choice between different formalisms and languages (e.g. Matlab Simulink [58]) or even encourage the use of several modeling paradigms in concert (e.g. Ptolemy II [70]). These developments enable the creation of large-scale and high-performance models but require a lot of experience with the individual languages and a good knowledge of the underlying mo
Data Loading...