Approche pour le développement de logiciels intégrant des concepts de qualité de service
Langue
fr
Thèses de doctorat
Date de soutenance
2014-02-12Spécialité
Informatique
École doctorale
École doctorale de mathématiques et informatique (Talence, Gironde)Résumé
Dans les domaines critiques tels que l’avionique, le ferroviaire ou encore l’automobile, il faut, afin de pouvoir certifier un système, démontrer qu’il réalise la fonction pour laquelle il a été conçu, selon des exigences ...Lire la suite >
Dans les domaines critiques tels que l’avionique, le ferroviaire ou encore l’automobile, il faut, afin de pouvoir certifier un système, démontrer qu’il réalise la fonction pour laquelle il a été conçu, selon des exigences temporelles spécifiées. En effet, un rendu temporel trop long peut rendre des données erronées, et ainsi mettre en danger la sûreté des personnes. Aujourd’hui, la plupart des approches proposent d’assurer ces exigences de Qualité de service au niveau des couches basses, e.g., au travers d’une bande passante déterministe, d’allocation statique d’intervalles de temps, et d’un ordonnancement prédéfini. Ces contraintes assurent que les applications ne peuvent dépasser le temps d’exécution alloué ; les applications récupèrent de ce fait des exigences qui sont découplées de leur fonctionnalité. En revanche, il faut aussi pouvoir certifier des exigences temporelles spécifiques à une application. De là, les garanties au niveau des couches basses ne sont plus suffisantes. Il faudrait pouvoir prendre en compte ces exigences dès la phase de conception des applications. Aujourd’hui, la plupart des approches existant dans ce domaine se concentrent sur le support de QoS à des phases isolées du processus de développement logiciel, empêchant la traçabilité des exigences. Cette thèse propose une approche dirigée par la conception pour supporter les exigences de QoS tout au long du processus de développement logiciel, intégrée dans une méthodologie outillée, appelée DiaSuite. L’extension de QoS enrichit le langage de conception DiaSpec avec la capacité d’instancier les exigences de QoS sur les composants logiciels. Un support de surveillance à l’exécution de ces exigences temporelles est ensuite généré, directement à partir de la spécification. Cette thèse intègre uniformément les concepts temporels avec les concepts de gestion d’erreurs, au travers de la méthodologie DiaSuite, afin de proposer une couche de supervision qui puisse effectuer une reconfiguration applicative, dans le cas de violation de contrat de QoS. Les contributions de cette thèse sont évaluées au regard du respect des critères de cohérence et de conformité, illustrés au travers d’une étude de cas dans le domaine avionique.< Réduire
Résumé en anglais
In critical domains such as avionics, railways or automotive, to certify a system, it is required to demonstrate that it achieves its function, with respect to specified timing requirements. Indeed, longer-than-predicted ...Lire la suite >
In critical domains such as avionics, railways or automotive, to certify a system, it is required to demonstrate that it achieves its function, with respect to specified timing requirements. Indeed, longer-than-predicted function computing can make data erroneous, leading potentially to endanger people lives. Today, most approaches propose to ensure these Quality of Service requirements at platform level, e.g., through deterministic bandwidth, static time slots allocation and predefined scheduling. These constraints ensure applications can’t overpass allocated time slots; applications are then fed with requirements decoupled to their functionality. However, it shall be possible to certify timing requirements, dedicated to an application. Hence, guarantees at platform-level are not sufficient anymore. It should be possible to take into account these requirements from the stage of application design. Today, most of existing approaches in this domain, focus on supporting QoS at individual stages of the software development process, preventing requirements traceability. This thesis proposes a design-driven approach to supporting QoS throughout software development process, integrated in a tool-based methodology, namely DiaSuite. The QoS extension enriches the DiaSpec design language, with the capability to instantiate QoS requirements onto software components. A runtime execution support to monitoring these timing requirements, is then generated, directly from the specification. This thesis uniformly integrates timing concepts with error ones, around DiaSuite methodology, to propose a supervision layer that could lead to application reconfiguration in case of QoS contract violation. Contributions of this thesis are evaluated through respect of coherence and conformance critera, illustrated through a case study in avionics.< Réduire
Mots clés
Architecture logicielle
Langage dédié
Programmation générative
Qualité de service
Mots clés en anglais
Software architecture
Domain-specific language
Generative programming
Quality of service
Origine
Importé de STARUnités de recherche