TH`ESE Zhe CHEN the Control System in Formal
Total Page:16
File Type:pdf, Size:1020Kb
N◦ d'ordre : 1036 THESE` pr´esent´ee`a l'Institut National des Sciences Appliquees´ de Toulouse pour l'obtention du titre de DOCTEUR de l'Universit´ede Toulouse d´elivr´epar l'INSA Sp´ecialit´e:Syst`emesInformatiques par Zhe CHEN Lab. Toulousain de Technologie et d'Ingenierie´ des Systemes` (LATTIS) Laboratoire d'Analyse et d'Architecture des Systemes` (LAAS-CNRS) Ecole´ Doctorale Syst`emes Titre de la th`ese: The Control System in Formal Language Theory and The Model Monitoring Approach for Reliability and Safety Soutenue le 9 Juillet 2010, devant le jury : Rapporteur : Maritta Heisel Professeur `al'Universit¨atDuisburg-Essen, Germany Rapporteur : Fabrice Bouquet Professeur `al'INRIA, Universit´ede Franche-Comt´e Examinateur: Gilles Motet Professeur `al'INSA de Toulouse - Directeur de th`ese Examinateur: Karama Kanoun Directeur de Recherche au LAAS-CNRS Examinateur: Jean-Paul Blanquart Astrium, European Aeronautic Defence and Space (EADS) Acknowledgement Although I have been mostly working independently in the lab during all those years, I would not have been able to do this thesis without the support, advice and encouragement of others, teachers, friends and colleagues. Accordingly, I would like to use this opportunity to express my gratitude to a number of people who over the years have contributed in various ways to the completion of this work. In the first place I would like to record my gratitude to my thesis supervisor Prof. Gilles Motet for guiding me in my research, and at the same time, for letting me the freedom to take initiatives in the development of my lines of research. He provided me unflinching encouragement and support in various ways. His truly scientist intuition has made him as a constant oasis of ideas and passions in science. Thanks also for being available almost at all times for me. Working with you was a real pleasure. Thanks to the reading committee, Prof. Maritta Heisel and Prof. Fabrice Bou- quet for accepting to spend time reading and evaluating my thesis and their con- structive comments on this thesis. I am thankful that in the midst of all their activities, they accepted to be members of the reading committee. Also, I would like to thank the other members of my committee, Prof. Karama Kanoun and Dr. Jean-Paul Blanquart who all immediately agreed when I asked them to join in. Thanks to all members of the lab LATTIS, LAAS-CNRS, and the Department of Electronic and Computer Engineering at INSA. If I look back to all these years, I think that at one moment or another, each one of them helped me in some way. Thanks in particular to St´ephanie,Roberto, Samuel, Guillaume and Karim for dis- cussions. Thanks to our director Dani`eleand our secretaries, Rosa, Estelle, Jo¨elle, Karima, Sophie, H´el`ene.I would like to thank you all for the nice atmosphere within the lab. I would like to thank all my Chinese friends in France: Ping, Ruijin, Yanwen, Junfeng, Susu, Yanjun, Hongwei, Yanping, Xiaoxiao, Fan, Letian, Wei, Dongdong, Haojun, Xinwei, Hong, Juan, Haoran, Linqing, Tao, Lijian, Jie, Jing, Lei, Binhong, Bo, Wenhua. With your friendship, the time in France became joyful and memo- rable. Our celebration of the Chinese Spring Festival, our parties and games were fantastic! I was extraordinarily fortunate in having several nice and apt supervisors in China. I could never have embarked and started all of this without their prior guidance in computer science and thus opened up unknown areas to me. I convey special acknowledgement to them: Dunwei Wen and Dezhi Xu at Central South University, Ming Zhou, Chin-Yew Lin and Jiantao Sun at Microsoft Research Asia, and Yuxi Fu at Shanghai Jiao Tong University. a·¤kP“‚§´\‚¦·‹e ûЕ£Ä:"AOaÙýP “§s´˜ ÑÚ•Ì?§sé·ìÚK•Ø•u=ŠÆS"±P “§asé·êÆÆSéu§s¹’° 4·ˆ"a·Ù¦¥Æ ãP“‚µŒS§Q“=§ÇïJ§4¤Œ§o§Nû§Ç[ù§oö§ ‘Š}§\‚3·þs¤Œþžmڰ姕·l¯‰ÆïÄÚŠ‹ e j¢Ä:§\‚°·òµP3%" a·ŠOI1§\‚‘·5ù‡•.§\‚›õc5é· [%ìÚ§\‚•N·=íÚØï§\‚‰·•`Dé„ ˜§\‚‰·Ép˜Å¬§\‚y4·‰Íu‰Ž"Éßu Y§ óŠñx§òùŸØ©¥‰·I1§±Lƒ%" Finally, I would like to thank everybody who were important to the successful realization of this thesis, as well as express my apology that I could not mention personally one by one. Abstract This thesis contributes to the study of reliability and safety of computer and software systems which are modeled as discrete event systems. The major contribu- tions include the theory of Control Systems (C Systems) and the model monitoring approach. In the first part of the thesis, we study the theory of control systems which com- bines and significantly extends regulated rewriting in formal languages theory and supervisory control. The control system is a generic framework, and contains two components: the controlled component and the controlling component that restricts the behavior of the controlled component. The two components are expressed using the same formalism, e.g., automata or grammars. We consider various classes of control systems based on different formalisms, for example, automaton control sys- tems, grammar control systems, and their infinite versions and concurrent variants. After that, an application of the theory is presented. The B¨uchi automata based control system is used to model and check correctness properties on execution traces specified by nevertrace claims. In the second part of the thesis, we investigate the model monitoring approach whose theoretical foundation is the theory of control systems. The key principle of the approach is \property specifications as controllers". In other words, the func- tional requirements and property specification of a system are separately modeled and implemented, and the latter one controls the behavior of the former one. The model monitoring approach contains two alternative techniques, namely model mon- itoring and model generating. The approach can be applied in several ways to im- prove reliability and safety of various classes of systems. We present some typical applications to show its strong power. First, the approach provides better support for the change and evolution of property specifications. Second, it provides the theoretical foundation of safety-related systems in the standard IEC 61508 for en- suring the functional validity. Third, it is used to formalize and check guidelines and consistency rules of UML. These results lay out the foundations for further study of more advanced control mechanisms, and provide a new way for ensuring reliability and safety. Keywords: C system, control system, model monitoring, model generating, model checking, formal language, automaton, grammar, regulated rewriting, supervisory control, safety-related system, UML Résumé Cette thèse contribue à l'étude de la abilité et de la sécurité-innocuité des systèmes informatisés, modélisés par des systèmes à événements discrets. Les prin- cipales contributions concernent la théorie des Systèmes de Contrôle (C Systems) et l'approche par Monitoring des modèles. Dans la première partie de la thèse, nous étudions la théorie des systèmes de contrôle qui combine et étend de façon signicative, les systèmes de réécriture de la théorie des langages et le contrôle supervisé. Un système de contrôle est une structure générique qui contient deux composants : le composant contrôlé et le com- posant contrôlant qui restreint le comportement du composant contrôlé. Les deux composants sont exprimés en utilisant le même formalisme comme des automates ou des grammaires. Nous considérons diérentes classes de systèmes de contrôle basés sur diérents formalismes comme, par exemple, les automates, les grammaires, ainsi que leurs versions innies et concurrentes. Ensuite, une application de cette théorie est présentée. Les systèmes de contrôle basés sur les automates de Büchi sont util- isés pour vérier par model-checking, des propriétés dénissant la correction sur des traces d'exécution spéciées par une assertion de type nevertrace. Dans la seconde partie de la thèse, nous investiguons l'approche de monitoring des modèles dont la théorie des systèmes de contrôle constitue les fondations formelles. Le principe pivot de cette approche est la spécication de propriétés comme con- trôleur. En d'autres termes, pour un système, les exigences fonctionnelles, d'une part, et des propriétés, d'autre part, sont modélisées et implantées séparément, les propriétés spéciées contrôlant le comportement issu des exigences fonctionnelles. De cette approche découle ainsi deux techniques alternatives, respectivement nom- mées monitoring de modèle et génération de modèle. Cette approche peut être util- isée de diverses manières pour améliorer la abilité et la sécurité-innocuité de divers types de systèmes. Nous présentons quelques applications qui montrent l'intérêt pratique de cette contribution théorique. Tout d'abord, cette approche aide à pren- dre en compte les évolutions des spécications des propriétés. En second lieu, elle fournit une base théorique à la sécurité fonctionnelle, popularisée par la norme IEC 61508. En troisième lieu, l'approche peut être utilisée pour formaliser et vérier l'application de guides de bonnes pratiques ou des règles de modélisation appliquées par exemple pour des modèles UML. Ces résultats constituent les bases pour des études futures de dispositifs plus perfectionnés, et fournissent une nouvelle voie pour s'assurer de la abilité et de la sécurité-innocuité des systèmes. Mots clef: C system, système de contrôle, monitoring de modèle, génération de modèle, model checking, langage formel, automate, grammaire, réécriture, contrôle supervisé, sécurité fonctionnelle, UML Contents 1 Introduction 1 1.1 Failures and Accidents of Computer and Software Systems . 1 1.2 Dependability, Reliability and Safety . 3 1.3 Formal Verification and Correctness . 4 1.4 Problems and Challenges . 5 1.4.1 Checking Properties on Execution Traces . 5 1.4.2 Supporting the Change and Evolution of Property Specifications . 6 1.4.3 Functional Validity of Safety-Related Systems in IEC 61508 . 6 1.4.4 Guidelines and Consistency Rules of UML Models . 6 1.5 A Preview of the Model Monitoring Approach .