An exercise in iterative domain-specific language design

M.F. Amstel, van, M.G.J. Brand, van den, L.J.P. Engelen

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

22 Citations (Scopus)


We describe our experiences with the process of designing a domain-specific language (DSL) and corresponding model transformations. The simultaneous development of the language and the transformations has lead to an iterative evolution of the DSL. We identified four main influences on the evolution of our DSL: the problem domain, the target platforms, model quality, and model transformation quality. Our DSL is aimed at modeling the structure and behavior of distributed communicating systems. Simultaneously with the development of our DSL, we implemented three model transformations to different formalisms: one for simulation, one for execution, and one for verification. Transformations to each of these formalisms were implemented one at the time, while preserving the validity of the existing ones. The DSL and the formalisms for simulation, execution, and verification have different semantic characteristics. We also implemented a number of model transformations that bridge the semantic gaps between our DSL and each of the three formalisms. In this paper, we describe our development process and how the aforementioned influences have caused our DSL to evolve.
Original languageEnglish
Title of host publicationProceedings of the Joint ERCIM Workshop on Software Evolution (EVOL) and the International Workshop on Principles of Software Evolution (IWPSE) (IWPSE-EVOL 2010, Antwerp, Belgium, September 20-21, 2010)
Place of PublicationNew York NY
PublisherAssociation for Computing Machinery, Inc
ISBN (Print)978-1-4503-0128-2
Publication statusPublished - 2010
Eventconference; IWPSE-EVOL; 2010-09-20; 2010-09-21 -
Duration: 20 Sep 201021 Sep 2010

Publication series

NameACM International Conference Proceeding Series


Conferenceconference; IWPSE-EVOL; 2010-09-20; 2010-09-21

Fingerprint Dive into the research topics of 'An exercise in iterative domain-specific language design'. Together they form a unique fingerprint.

Cite this