D15: DEMOS: A Tool for Declarative Executable Modeling of Object-Based Systems
Tuesday, Oct 24, from 13:30 to 14:00
Wednesday, Oct 25, from 11:00 to 11:30
Wednesday, Oct 25, from 16:30 to 17:00
Thursday, Oct 26, from 15:30 to 16:00
UML is a powerful and expressive language - it is, however, a large and complex language. The complexity and size of the language becomes a hindrance when designing systems at a detailed level. While it is possible in principle to transform UML into an executable language this results in an even bigger language. Executability and simplicity seem to be conflicting goals. The EP-model is a recently developed declarative model. It combines the following triad of features: it has a small metamodel; it can represent both static and dynamic aspects of an application; finally, it allows executable models through annotating model elements with code snippets. This hybrid approach achieves executability while keeping the basic modeling language simple. The DEMOS tool is a plugin for Eclipse that uses GEF and Eclipse's JDT to provide an integrated development environment for EP systems. It features rule-based background code generation and is based on an Adaptive Object Model architecture allowing it to handle different metamodels. The demonstration will start with a short introduction to the EP model. We then show the basic features of the tool by modeling a simple application. Next we highlight those features of the tool that facilitate the comprehension of EP-models. We also explain a sandbox model for code snippets that helps in controlling the coupling of the resulting application. We close by showing how the code generation rules for EP-models can be defined within the DEMOS tool using a specialized metamodel. Keywords: executable models, object-based, software complexity, coupling, eclipse plugin, object-oriented programming, functional programming, visual programming, program comprehension.
Christian Glodt, University of Luxembourg
Pierre Kelsen, University of Luxembourg