Section: Contracts and Grants with Industry
Language Families for Systems Families
The goal of our research proposal is to place domain expertise at the centre of the software development process. It is aimed to lift the current limitations of software engineering regarding large scale software production, robustness, reliability, maintenance and evolution of software components. Our key innovation is to introduce a software development process parameterized with respect to a specific domain of expertise. This process covers all the stages of software development and combines the following three emerging approaches:
Domain-specific modelling, also known as model engineering;
Domain-specific languages, in contrast with general-purpose languages;
Generative programming and in particular aspect-oriented programming as a means to transform models and programs.
These three approaches have already demonstrated concrete and well-recognized software engineering benefits, in isolation; their combination will permit to cover the entire software development process dedicated to a specific domain of expertise.