Graphes de localités : une approche formelle à l'encapsulation et implémentation - Archive ouverte HAL Accéder directement au contenu
Thèse Année : 2021

Location graphs : a formal approach to encapsulation and its implementation

Graphes de localités : une approche formelle à l'encapsulation et implémentation

Résumé

Component based systems ease programming, thanks to the ability tocompose multiples small and independent atoms into bigger aggregates,reducing the individual complexity of each atom. The counterpart of thisprogramming paradigm is the emergence of new kinds of errors related tothe very composition of those elements. Multiple approaches have beenproposed in order to certify the correctness of the composition withrespect to a chosen policy.The location graphs framework make the choice to authorise or forbideach component transition, according the topology of the component graphat the time of the transition. This model offers a wide range ofpolicies that can be implemented.This thesis is formed of two parts: first, we study the notion ofencapsulation, inherited from object oriented programming, in thecontext of component based programming, taking the location graphframework as a substrate; second, we propose an implementation, given asa Rust library, of the location graph framework.The study of the notion of encapsulation leads us to three maincontributions: (i) a new notion of strong bisimulation for locationgraphs, allowing the comparison of heterogeneous location graphinstances; (ii) the exhibition of a strong notion of encapsulation forthat model; and (iii) the instanciation, for illustration purposes, ofmultiple encapsulation policies, highlighting both the precision and thediversity of policies available in the location graph framework. Asidethe contribution of the implementation itself, we implemented multiplenon-trivial examples showing, in practice, how the original frameworkcan be used.
Les systèmes informatiques fondés sur des composants facilitent la programmation grâce à la possibilité de composer différents petits atomes indépendants en aggrégats plus gros, réduisant la complexité individuelle de chaque atome. La contrepartie à ce modèle de programmation est l'apparition de nouvelles erreurs liés à la composition de ces éléments. Plusieurs approches ont été proposées afin de garantir la correction de la composition par rapport à une politique choisie. L'approche du modèle des graphes de localités consiste à autoriser ou d'interdire chaque transition de composant, en fonction de la topologie du graphe de composants au moment de la transition. Ce modèle s'illustre par la diversité des politiques qui peuvent être implémentées.Cette thèse est composée de deux parties : dans un premier temps, nous étudions la notion de d'encapsulation, héritée de la programmation orientée objet, dans le contexte de la programmation par composant, en prenant pour support le modèle des graphes de localités; dans un second temps, nous proposons une implémentation, sous la forme d'une bibliothèque logicielle pour le langage Rust, du modèle de graphes de localités. L'étude de la notion d'encapsulation nous a conduit à trois contributions majeures :(i) une nouvelle notion de bi simulation forte pour les graphes de localités, permettant la mise en relation d'instances de graphes de localités hétérogènes; (ii) la mise en évidence d'une notion forte d'encapsulation dans ce modèle; (iii) l'instanciation, à titre d'exemple, de plusieurs politiques d'encapsulation, illustrant à la fois la finesse et la diversité des politiques disponibles avec les graphes de localités. Au-delà de la contribution que constitue en elle-même l'implémentation, nous avons implémenté plusieurs exemples non triviaux, illustrant, en pratique, une utilisation possible du modèle original.
Fichier principal
Vignette du fichier
VASSOR_2021_archivage.pdf (1.61 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)

Dates et versions

tel-03354281 , version 1 (24-09-2021)

Identifiants

  • HAL Id : tel-03354281 , version 1

Citer

Martin Vassor. Graphes de localités : une approche formelle à l'encapsulation et implémentation. Génie logiciel [cs.SE]. Université Grenoble Alpes [2020-..], 2021. Français. ⟨NNT : 2021GRALM015⟩. ⟨tel-03354281⟩
145 Consultations
95 Téléchargements

Partager

Gmail Facebook X LinkedIn More