Systems and software engineering


Formalising the design of complex systems

The design and development of systems, and in particular software-intensive systems, require an approach that is sufficiently rigorous to avoid the pitfalls of poor specification (under-specification or over-specification), and yet be sufficiently flexible to quickly adapt to organisational, technical or technological changes.
For this reason, the “Systems and software engineering” scientific axis focuses on the agile and robust design and development of complex systems in the field of information technologies with collaborative approaches, the implementation of model and language engineering and verification and validation techniques (tests, model-checking, proof). The understanding of needs and the elicitation of requirements must lead to an optimised system/software architecture that makes a satisfactory compromise within a reasonable timeframe between the various functional and extra-functional properties (performance, cost, consumption, etc.) for all stakeholders.
Particular attention is also paid to the analysis of operating safety and, more specifically, to approaches that allow the dynamic properties of systems and the sequence of failures to be taken into account. The diagnosability of systems, formal proof, prognosis, advanced diagnostic methods coupled with conditional preventive maintenance strategies work towards controlling risks and optimising the health of the systems maintained.

Discover results and impacts of the IRT SystemX in the field of scientific computation and optimisation