>>> Field 1: Model-driven software engineering  
RECENT EVENTS

THE PROGRAMME

THE CARROLL AGREEMENT

CURRENT PROJECTS

CONTACTS: THALES, CEA, INRIA

Model-driven software engineering (MDE) is a software development approach in which the concept of the model (rather than the code) is central to the development cycle. This approach makes extensive use of the UML modeling language and the model-driven architecture initiative (MDA), conducted by the Object Management Group (OMG), of which THALES is a contributing member.

The model-driven architecture initiative is intended to ensure organisation of development featuring layered models, extending from platform independent models (PIM) to platform specific models (PSM). This layered approach ensures that the development work is more rationally organised (as it notably makes it possible to make a clearer distinction between business and technical concerns), and allows greater capitalisation (the models are re-used and the code is generated).

The following four areas of research have been established with Carroll to consolidate the model-driven engineering approach:

1.1 Transformation of models
In the field of model-driven software engineering, model transformation is the fundamental technology that underlies most of the others. This is because it is model transformation that serves as a framework for the model layer-based software engineering approach (MDA). Transformation is the technical step at which a substantial part of the software and system development experience comes to the fore, thus making it possible to focus resources on the "business-related added value" of development of the system.

1.2 Validation by test generation in the MDE context
Testing remains the best way of verifying the value of a system throughout its development cycle. The cost of writing appropriate tests is however substantial and the associated activities can be tedious. A study is therefore to be made of how tests and validation can be automated and the associated technology made generally applicable in model-driven engineering (thus making it possible to test models and model transformations).

1.3 Architecture and quality of service of software systems
It is known that it is important for THALES to achieve greater capitalisation of the architecture and its systems, particularly as concerns the models underlying the architecture. This section is devoted to study of these approaches for modeling the architecture and thus achieving greater control of the cost of integration of the systems and, above all, greater synergy between the systems engineering and software engineering.

1.4 Model-driven engineering for embedded real-time systems
Many of the systems developed by THALES are subject to the stringent constraints of embedded and real-time operation (software radio, embedded computer, electronic weapon systems etc.). This field accordingly relates to studying how model-driven software engineering can be applied in its sector of activity. It is also desired to eventually achieve greater decoupling of concerns specific to real-time operation from business-related issues. And it planned to develop analysis tools for assisting the designer of a system in establishing the appropriate design basis and technology.
 

Last update: 07/01/2004 - Legal provisions

The software development cycles of MIRROR and ALICE, two pilot programmes conducted by THALES relating to model-driven software engineering and middleware. The research carried out by Carroll corresponds to the requirements of these pilot programmes.