Scenario automata : theory and applications - TEL - Thèses en ligne Accéder directement au contenu
Hdr Année : 2013

Scenario automata : theory and applications

Automates d'ordres : théorie et applications

Résumé

Partial order automata are more known under their standardized name "'Message Sequence Charts (MSCs). They have met a considerable interest during the last 15 years. This success is both industrial and academic, and has several reasons. First, the model is rather simple and can be learned very easily by engineers. Second, despite its apparent simplicity (MSCs are for instance more expressive than finite state automata), it has an interesting expressive power, and raises many difficult problems. Indeed, many algorithmic applications rapidly turn to be undecidable problems. In this document, we collect and sumarize a part of the work accomplished on MSCS during the last decade, and draw some conclusions from the obtained results. We first focus on formal properties of MSCs, the decidability of several standard problems, and the definition of subclasses of the language allowing for the decision of some problems when the general case is undecidable. The standard approach to work with MSCs is to find the larger subclass of the language allowing for the decision of a given problem. Another challenge is to increase the expressive power of MSCs without loosing decidability of too many problems. We propose several extensions to the formalism allowing dynamic creation of processes, or allowing for the design of protocols comporting sliding windows behaviors. As many formal models, MSCs can not exceed a limit size after which a diagram is not understandable for a human designer. A solution is then to build a specifcation in a modular way, and then to assemble the modules to obtain larger sets of behaviors. We propose several mechanisms to compose MSCs, and study the robustness of MSC sub-classes to composition. We then draw some conclusions from the properties of composition mechanisms described in this part of the document. Overall, composition is seldomly effective, and does not preserve formal properties of partial order automata. In a second part of this document, we study possible applications for MSCs. We consider model checking problems, that can be used to discover design errors during distributed systems specification. The second application considered is diagnosis, which allows to retreive out of a model the explanations of some partial observation of an instrumented system. Last, we consider the applicability of MSCs to the search for security breaches in distributed systems. To complete the work, we provide some conclusions on scenario models, based on the content of this document and on the experience gained these last 10 years. We then propose future research directions.
Les automates d'ordres, plus connus sous le nom de Message sequence Charts (MSC), ont connu une énorme popularité depuis les années 1990. Ce succès est à la fois académique et industriel. Les raisons de ce succès sont multiples : le modèle est simple et s'apprend très vite. De plus il possède une puissance d'expression supérieure à celle des automates finis, et pose des problèmes difficiles. L'apparente simplicité des MSCs est en fait trompeuse, et de nombreuses manipulations algorithmiques se révèlent rapidement être des problèmes indécidables. Dans ce document, nous revenons sur 10 années de recherches sur les Message Sequence Charts, et plus généralement sur les langages de scénarios, et tirons quelques conclusions à partir des travaux effectués. Nous revenons sur les propriétés formelles des Message Sequence charts, leur décidabilité, et les sous-classes du langage permettant la décision de tel ou tel problème. L'approche classique pour traiter un problème sur les MSCs est de trouver la plus grande classe possible sur laquelle ce problème est décidable. Un autre challenge est d'augmenter la puissance d'expression des MSCs sans perdre en décidabilité. Nous proposons plusieurs extensions de ce type, permettant la crétion dynamique de processus, ou la définition de protocoles de type "fenêtre glissante". Comme tout modèle formel, les MSCs peuvent difficilement dépasser une taille critique au delà de laquelle un utilisateur ne peut plus vraiment comprendre le diagramme qu'il a sous les yeux. Pour pallier à cette limite, une solution est de travailler sur de plus petits modules comportementaux, puis de les assembler pour obtenir des ensembles de comportements plus grands. Nous étudions plusieurs mécanismes permettant de composer des MSCs, et sur la robustesses des sous-classes de scénarios connues à la composition. La conclusion ce cette partie est assez négative: les scénarios se composent difficilement, et lorsqu'une composition est faisable, peu de propriétés des modèles composés sont préservées. Nous apportons ensuite une contributions à la synthèse automatique de programmes distribués à partir de spécification données sous forme d'automates d'ordres. Cette question répond à un besoin pratique, et permet de situer un role possible des scénarios dans des processus de conception de logiciels distribués. Nous montrons que la synthèse automatique est possible sur un sous ensemble raisonnable des automates d'ordres. Dans une seconde partie de ce document, nous étudions des applications possibles pour les MSCs. Nous regardons entre autres des algorithmes de model-checking, permettant de découvrir des erreurs au moment de la spécification d'un système distribué par des MSCs. La seconde application considérée est le diagnostic, qui permet d'expliciter à l'aide d'un modèle les comportement d'un système réel instrumenté. Enfin, nous regardons l'utilisation des MSCs pour la recherche de failles de sécurité dans un système. Ces deux applications montrent des domaines réalistes d'utilisation des scénarios. Pour finir, nous tirons quelques conclusions sur les scénarios au regard du contenu du document et du travail de ces 10 dernières années. Nous proposons ensuite quelques perspectives de recherche.
Fichier principal
Vignette du fichier
habil_V0.2.pdf (4.06 Mo) Télécharger le fichier
Loading...

Dates et versions

tel-00926742 , version 1 (27-01-2014)

Identifiants

  • HAL Id : tel-00926742 , version 1

Citer

Loïc Hélouët. Scenario automata : theory and applications. Formal Languages and Automata Theory [cs.FL]. Université Rennes 1, 2013. ⟨tel-00926742⟩
273 Consultations
644 Téléchargements

Partager

Gmail Facebook X LinkedIn More