ATLANMODELS Research team
Modeling Technologies for Software Production, Operation, and Evolution
- Leader : Gerson Sunye
- Research center(s) : CRI Rennes - Bretagne Atlantique
- Field : Networks, Systems and Services, Distributed Computing
- Theme : Distributed Systems and middleware
Model Driven Engineering (MDE) is a software engineering paradigm that advocates for the rigorous use of (software) models and model manipulation operations (known as model transformations) as the main artifacts in all software engineering activities. This comes from an industrial need to have a regular and homogeneous organization where different facets of a software system may be easily separated or combined when appropriate. The basic assumption of MDE is that models provide a better abstraction level than the classical programming code to manage the complexity of software development (and, in general, any other software-related task). When needed, executable code can be semi-automatically generated from (low-level) models of the system.
AtlanModels focuses on developing pioneering solutions to solve core research challenges in MDE and to ensure its successful application on relevant industrial problems. In particular, AtlanMod is focusing on three key challenges: evaluating the correctness of models and model transformations, ensuring the scalability of mod- eling techniques to deal with very large models and developing software comprehension and modernization methods by means of the application of model-driven reverse engineering techniques on running software.
Model Transformation: In the scope of model-driven engineering, model transformation aims to provide a mean to specify the way to produce target models from a number of source models. For this purpose, it enables developers to define the way source model elements must be matched and navigated in order to initialize the target model elements. Formally, a simple model transformation has to define the way for generating a model Mb, conforming to a metamodel MMb, from a model Ma conforming to a metamodel MMa.
Model-Driven Reverse Engineering: Legacy systems embrace a large number of technologies, making the development of tools to cope with the understanding and evolution of legacy systems (e.g. software modernization, migration, etc.) a tedious and time consuming task. As reverse engineering projects face with both technologies combination and various scenarios, model-driven approaches and techniques offer the required abstraction level to elaborate on mature and flexible reverse engineering solutions. To this intent, MoDisco is an initiative proposing a generic and extensible framework dedicated to Model Driven Reverse Engineering (MDRE).
Model Scalability: The increasing adoption of Model-Driven Engineering in industrial contexts highlights scalability as a critical limitation. Indeed, several Model-driven tools show critical efficiency limitations in handling very large models (VLMs), e.g. models made by millions of model elements, not unusual in real-life industrial scenarios (Examples of such models appear both at development time, e.g. while reverse-engineering big systems and runtime, e.g. coming from a set of sensors, from OpenData repositories or when building applications on social networks). Moreover, the proliferation of models produced as input-outputs of software engineering tasks at development/maintenance time also highlights scalability problems in the management of the model artifacts.
Model-Based Testing: Model-based testing consists in using models to assist the software testing process. The computational systems are becoming ever more complex. As a consequence, the difficulties of testing these systems increase. Models may be used to abstract these systems, and other parts of the testing process. For instance, they may represent the System Under Test (SUT), the SUT behavior, the test strategies, the test environment, etc.
International and industrial relations
The AtlanMod team takes part into several international, European, and national projects on MDE like:
- MONDO (Scalable Modeling and Model Management on the Cloud European STREP 2012 (November 2013 - April 2016)
- MoNoGe (New Generation Modeling) French FUI 15 (October 2013 - Mars 2016)
- ITM Factory (Information Technology Modernization Factory) French FUI 14 (January 2013 - June 2015)
- ARTIST (Advanced software-based seRvice provisioning and migraTIon of legacy SofTware) European FP7-ICT (October 2012 - September 2015)