Messir, a Text-first DSL-based Approach for UML Requirements Engineering (Tool Demo)
This tool paper presents the design and implementation of Messir, a domain-specific textual language supported by our open-source UML requirements engineering tool, named Excalibur. The novelty of our approach is a textual DSL requirements specification allowing flexible and precise UML-based specifications.
Generative approaches benefit from the last decades of tools support development like the Eclipse workbench, and its extensible plugins architecture. In our context, we use the two well-established eclipse plugins: XText to generate the textual editor for Messir, and Sirius to display graphical representations of the textual specification.
We designed our Messir language, with a grammar-based approach generating a textual editor, using XText eclipse plugins. The static semantics is a set of validation rules guiding end-users through the requirements analysis phase. The semantics of our messir DSL is semi-automatic as a translation to prolog code. We also generate, from the requirements model elements, read-only graphical views (using the Sirius eclipse plugin) as well as a complete requirements analysis document in LaTeX.
Excalibur is the eclipse-based workbench supporting the Messir DSL presented in this paper, allowing to write textually UML specifications, and handle the generated views, as well as the prolog and LaTeX code.