Towards Domain-specific Model Editors with Automatic Model Completion

Sagar Sen, Benoit Baudry, Hans Vangheluwe
2009 Simulation (San Diego, Calif.)  
Integrated development environments such as Eclipse allow users to write programs quickly by presenting a set of recommendations for code completion. Similarly, word processing tools such as Microsoft Word present corrections for grammatical errors in sentences. Both of these existing structure editors use a set of constraints expressed in the form of a natural language grammar to restrict/correct the user (syntax-directed editing) or formal grammar (language-directed editing) to aid document
more » ... mpletion. Taking this idea further, in this paper we present an integrated software system capable of generating recommendations for model completion of partial models built in editors for domain-specific modelling languages. We present a methodology to synthesize model editors equipped with automatic completion from a modelling language's declarative specification consisting of a metamodel with a visual syntax. This meta-model directed completion feature is powered by a first-order relational logic engine implemented in ALLOY. We incorporate automatic completion in the generative tool AToM 3 . We use the Finite State Machines modelling language as a concise running example. Our approach leverages a correct by construction philosophy that renders subsequent simulation of models considerably less error-prone.
doi:10.1177/0037549709340530 fatcat:fvyf6rkywbdb5j7bhprijgykh4