Coping with Modular Modelling in fUML
Keywords
Executable UML Model, Modular Operational Semantics, AspectOriented Modelling, Kermeta.
Description
The UML models have long been used to help discussions and design the future system early in the development process, thus leaving much ambiguity about the final solution adopted. Nowadays, models are increasingly used throughout the development process, and are then refined to specify the future system. As UML is defined today, the ambiguity of its semantics does not allow to unambiguously interpret or compile a UML model, and thus does not allow to consider models as terminal artefacts.
In this context, OMG has recently adopted a subset of UML to define executable models: fUML (Foundational Subset for Executable UML Models)1. The operational semantics of this subset is described in [1]. It allows an unambiguous interpretation of a fUML model and thus, the definition of a fUML compiler or interpreter (i.e. a virtual machine) to execute the system described in the model. We propose in this internship to investigate modularity issues in the use of UML behavioural diagrams by the introduction of aspectoriented modelling (AOM) [2] in fUML.
The candidate will first evaluate the possibility of using AOM to enable a modular use of the UML behavioural diagrams, borrowing ideas from Modular Structural Operational Semantics [3] and building on recent advances on Model Typing [4]. Accordingly, the candidate will propose an implementation of the fUML semantics with Kermeta [5] introducing modularity in the use of fUML. This work will be validated through the refactoring of java program and its execution at the model level using the virtual machine and the compiler provided by Kermeta.
Bibliography
[1] Object Management Group, Inc. Semantics of a Foundational Subset for Executable UML Models (fUML) 1.0, Beta 1, November 2008.
[2] Jean‐Marc Jézéquel. Model Driven Design and Aspect Weaving. Journal of Software and Systems Modeling (SoSyM) 7(2), 2008.
[3] P.D. Mosses. Modular structural operational semantics. Journal of Logic and Algebraic Programming, 60, 2004.
[4] Jim Steel and Jean‐Marc Jézéquel. On model typing. Journal of Software and Systems Modeling (SoSyM) 6(4), December 2007.
[5] Pierre‐Alain Muller, Franck Fleurey, and Jean‐Marc Jézéquel. Weaving executability into objectoriented metalanguages. In MODELS/UML’2005, Springer.
Working Environment
- Laboratories:
- IRISA, EPI Triskell (Campus de Beaulieu, Université de Rennes 1, France)
- Scientific Advisors:
- Jean-Marc Jézéquel (jezequel@irisa.fr)
- Benoît Combemale (benoit.combemale@inria.fr)
