Architecture Models Refinements for Software Development of Critical Real-time Embedded Systems - Archive ouverte HAL
Hdr Année : 2019

Architecture Models Refinements for Software Development of Critical Real-time Embedded Systems

Raffinements de Modèles d'Architectures pour le Développement Logiciel des Systèmes Temps-réels Embarqués Critiques

Résumé

Cyber Physical Systems are systems controlled or monitored by computer-based programs, tightly integrated networks, sensors, and actuators. Trains, aircrafts, cars, and some medical equipments are examples of complex CPS. Software development of complex CPS has become so difficult that it represents most of the cost of CPS production. According to domain experts, this trend is going to reach a point where software development would represent the main source of cost of a CPS production. In addition, it is interesting to note that the integration, verification and validation of software in CPS require more efforts than the analysis, design, and implementation activities. The main reason is that these activities are conducted late in the development process and issues discovered at this stage of the process will require to rework artifacts produced in the previous activities (i.e. analysis, design and/or implementation). In this document, we present our work aiming to improve the reliability of software development in the domain of CPS. In this context, we define the reliability of the development process as its capacity to deliver intermediate artifacts for which the rework effort would be as small as possible. This problem is very difficult for general purpose software (i.e. used on desktop computers or servers), and even more difficult for software in CPS. The main reason is that software in CPS is often critical, real-time and embedded on domain specific execution platforms. As a consequence, non-functional properties (also called quality attributes) of software applications in CPS are often as important and difficult to satisfy as the logical correctness of these applications. In order to the improve the reliability of software development in the domain of CPS, we propose a Model Driven Engineering (MDE) method based on step-wise refinements of software architecture descriptions (also called architectural models). An architecture description being an abstraction of the software being developed, the implementation of this software (i.e. source or binary code) is an interpretation of the architecture model. In the framework we propose, such interpretations are automated using model refinements, i.e. model to model transformations lowering the abstraction level of the architecture description. However, models interpretation may introduce faults such as bugs or invalidation of nonfunctional requirements. It is hence necessary to control as much as possible the correctness, consistency, and optimality of artifacts produced along the model refinement steps. To reach this objective, we propose to 1. define model transformations so as to interleave refinement steps with analysis of the resulting artifacts. We thus improve the consistency between the analysis results and the software implementation by analyzing models as close as possible to the implementation. 2. define timing analysis and real-time scheduling techniques to ensure the correctness of software architectures from a timing perspective. 3. formalize model transformations in order to ensure their correctness using formal verification techniques. 4. compose model transformations in order to automate the search for optimal (or nearoptimal) architectures. The work presented in this document is thus at the frontier among different research domains: MDE, real-time systems scheduling, formal verification, and operational research. In this work, we chose to rely and extend the Architecture Analysis and Design Language (AADL) to model the cyber part of CPS. The reasons for this choice are simple: Firstly, AADL is a standard and a domain specific language for real-time embedded systems. Secondly, It allows to represent software architectures with different abstraction levels. Last but not least, AADL supports different types of models of computations communications, some of which being deterministic. As a guideline for our work, we developed the methodology we propose in a MDE framework called RAMSES (Refinement of AADL Models for the Synthesis of Embedded Systems). This document presents both the methodology and some illustrations of its implementation in RAMSES.
Fichier principal
Vignette du fichier
Borde_HDR.pdf (2 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-04339297 , version 1 (13-12-2023)

Licence

Identifiants

  • HAL Id : tel-04339297 , version 1

Citer

Etienne Borde. Architecture Models Refinements for Software Development of Critical Real-time Embedded Systems. Computer Science [cs]. Sorbonne Universite, 2019. ⟨tel-04339297⟩
74 Consultations
23 Téléchargements

Partager

More