TY - GEN
T1 - An exercise in iterative domain-specific language design
AU - Amstel, van, M.F.
AU - Brand, van den, M.G.J.
AU - Engelen, L.J.P.
PY - 2010
Y1 - 2010
N2 - 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.
AB - 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.
UR - http://doi.acm.org/10.1145/1862372.1862386
U2 - 10.1145/1862372.1862386
DO - 10.1145/1862372.1862386
M3 - Conference contribution
SN - 978-1-4503-0128-2
T3 - ACM International Conference Proceeding Series
SP - 48
EP - 57
BT - Proceedings 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)
PB - Association for Computing Machinery, Inc
CY - New York NY
T2 - conference; IWPSE-EVOL; 2010-09-20; 2010-09-21
Y2 - 20 September 2010 through 21 September 2010
ER -