Benoit Combemale (Univ. Rennes 1, ESIR & IRISA) DiverSE team (IRISA & Inria) Campus de Beaulieu F-35042 Rennes Cedex benoit.combemale AT irisa.fr
Model Driven Engineering (MDE) is primarily concerned with reducing the accidental complexities associated with developing complex software-intensive systems. This is accomplished through the use of technologies that support rigorous analysis and transformation of abstract descriptions of software to concrete implementations. At the core of MDE are modeling languages that are typically defined as metamodels. Developers can use these modeling languages to describe complex systems at multiple levels of abstraction and from a variety of perspectives. MDE is essentially concerned with transforming descriptions of software artefacts to other forms that better serve specific purposes. MDE is now becoming mature, and more and more integrated in industrial software development processes to improve quality and productivity, as recognized in various experience reports.
This course introduces the cornerstones of MDE using OMG standards and Eclipse-based open source technologies. You will discover how to leverage your experience into domain-specific modelling languages and model transformations. Then, you will learn how to use them to systematize some development tasks (“Why I’d like write program that write programs rather than write programs?”), and to lead to better quality software thanks to abstract models throughout the software development process.
- Advanced Features of Software Engineering: from Modeling to Metamodeling...
- Domain-Specific Languages
- A Tutorial about Metamodeling Using OMG Norms and Eclipse Modeling
- Object Constraint Language (OCL)
- Model Transformation (Principles, Standards and Examples)
- Model Management with Xtend
- Kermeta: Breathe Life into your Metamodels
- Atlas Transformation Language (ATL)
- Model Typing
- Model Composition
- How to address V&V in Model-Driven Engineering?
- Hyper-Agility: A Model-Driven Software Agility from Design-Time to Run-Time (la vidéo !)
- MDE Pragmatique
- Project description (in french)
- Android installation guide (in french)
- Short Android overview
- Slides about Android (from J. Bourcier)
MINDSTORMS NXT Project
- Homework (first part)
- Homework (second part)
- Réseaux de Petri temporels, SE-LTL et boîte à outils TINA (in french)
Lab Sessions (materials)
- Métamodéliser avec Eclipse Modeling Framework (from S. Mosser)
- Free refcard about EMF
- Tutorial "Define a metamodel with ECore Tools"
- The Kermeta memento
- OMG Formal Specifications
- "Domain Specific Language à l'aide des technologies Eclipse Modeling", Conférence de Goulwen Le Fur (Obeo) le 23 novembre 2012 à l'Université de Rennes 1 (.pdf)
- "Modélisation & Développement de logiciels avioniques", Conférence de Pierre Gaufilet (Airbus France) le 11 octobre 2007 à l'INSAT (.pdf)
- "MDA pragmatique", Conférence de David Sciamma (Anyware Technologies) le 21 novembre 2007 à l'INSAT (.pdf)