University of Minnesota
Software Engineering Center

You are here

Flexible and Extensible Notations for Modeling Languages

Date of Publication: 
March 2007
Associated Research Groups: 
Publication Files: 
In model-based development, a formal description of the software (the model) is the central artifact that drives other development activities. The availability of a modeling language well-suited for the system under development and appropriate tool support are of utmost importance to practitioners. Considering the diverse needs of different application domains, flexibility in the choice of modeling languages and tools may advance the industrial acceptance of formal methods. We describe a flexible modeling language framework by which language and tool developers may better meet the special needs of various users groups without incurring prohibitive costs. The framework is based on a modular and extensible implementation of languages features using attribute grammars and forwarding. We show a prototype implementation of such a framework by extending the host language Mini-Lustre, an example synchronous data-flow language, with a collection of features such as state transitions, condition tables, and events. We also show how new languages can be created in this framework by feature composition.
In Proceedings of Fundamental Approaches to Software Engineering (FASE).
@inproceedings{vanwyk07fase, author = "Gao, Jimin and Heimdahl, Mats and Van Wyk, Eric", title = "Flexible and Extensible Notations for Modeling Languages", booktitle = "Fundamental Approaches to Software Engineering, FASE 2007", series = "Lecture Notes in Computer Science", publisher = "Springer Verlag", volume = 4422, pages = "102--116", month = "March", year = 2007 }