Your SlideShare is downloading. ×
Soutenance bibliographique Analyse sémantique delangages de haut niveauMaster ARIA Filière TRCS – Année 2012/2013         ...
Problématique• Conception des systèmes   o Complexe   o Beaucoup d’acteurs• 1989 : Consortium d’industriels, création de l...
ProblématiquePeut-on effectuer une analyse formelle sur des langages de haut niveau ?
Plan• Introduction & Problématique• Langages de haut niveau   o UML   o SysML   o AADL• Analyse formelle   o Fiacre   o Ti...
Langages de haut niveau
Unified Modeling Language• Créé en 1995 par Booch, Rumbauch & Jacobson• Adopté en 1996 par l’OMG
Unified Modeling Language• Objectif : Fournir des outils d’analyse, de conception  et d’implémentation pour les systèmes à...
Unified Modeling Language• Sémantique graphique
Unified Modeling Language• Pour faire simple   o Langage facile à lire…   o mais dur à écrire !• Différence théorie / prat...
Systems Modeling Language• Créé en 2001 par l’OMG et l’INCOSE• Validé par l’OMG en 2006 comme Profil UML• Objectif :     E...
Systems Modeling Language• Notion d’exigence / besoin
Systems Modeling Language• Premier pas vers de la vérification de propriétés• Plus simple à adopter qu’UML   o Moins de di...
Architecture Analysis and Design Language• Débuté en 1999 par Peter Feiler• Publié en 2004 avec SAE comme profil UML
Architecture Analysis and Design Language• Objectif :          Modélisation des interactions       logiciel/matériel pour ...
Architecture Analysis and Design Language• AADL par rapport à SysML et UML:
Architecture Analysis and Design Language• Modélisation textuelle, représentation graphique
Architecture Analysis and Design Language• Principe :                         Composant 2         Composant 1
Architecture Analysis and Design Language• Principe :                                  Composant 2         Composant 1    ...
Architecture Analysis and Design Language• Principe :                                  Composant 2         Composant 1    ...
Architecture Analysis and Design Language• Sémantique forte, étape clé vers Model Checking• Long à mettre en place   o Cré...
Analyse formelle
Format Intermédiaire pour les Architectures de Composants Répartis• Article fondateur de Bernard Berthomieu en 2008• Trans...
Format Intermédiaire pour les Architectures de Composants Répartis• Langage fortement typé (robustesse)• Agit en « Back-En...
Time Petri Net Analyzer• Article fondateur de Bernard Berthomieu en 2004• Boîte à outil pour l’édition et l’analyse de RDP...
Time Petri Net Analyzer• Analyse formelle   o Basée sur l’outil « selt » (2006)• Extension de la LTL : S/E LTL   o State/E...
Time Petri Net Analyzer• Syntaxe  o   – p  négation de p  o   p / q  conjonction de p et q  o   () p  p vérifiée à l’ét...
Chaîne globale de vérification• Utilisation de Tina avec Fiacre• Fonctionnement de Fiacre   o Processus communiquant avec ...
Chaîne globale de vérification• Utilisation de Tina avec Fiacre• Avec Fiacre :   o 2 processus : process1 et process2   o ...
Chaîne globale de vérification• Utilisation de Tina avec Fiacre• Avec Tina :   o Utilisation de S/E-LTL avec selt• Analyse...
Chaîne globale de vérification• Chaîne complète
Chaîne globale de vérification• Chaîne complète                               Eclipse
Conclusion
Analyse de la chaîne• 2 outils à utiliser   o Eclipse (UML/SysML/AADL et conversion vers Fiacre) + Tina   o Chaîne simple ...
Merci pour votre attention       Avez-vous des questions ?
Bibliographie•   UML    o   [1] Allison June Barlow Chaney. Object management group.        http://www.princeton.edu/~acha...
Bibliographie•   Fiacre & Tina     o   [11] Bernard Berthomieu, Jean-Paul Bodeveix, Patrick Farail, Mamoun Filali, Hubert ...
Upcoming SlideShare
Loading in...5
×

Soutenance séminaire bibliographique

1,275

Published on

Slides de présentation de soutenance - Master ARIA - Analyse sémantique de langages de haut niveau

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,275
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Soutenance séminaire bibliographique"

  1. 1. Soutenance bibliographique Analyse sémantique delangages de haut niveauMaster ARIA Filière TRCS – Année 2012/2013 ALAY-EDDINE Maxime
  2. 2. Problématique• Conception des systèmes o Complexe o Beaucoup d’acteurs• 1989 : Consortium d’industriels, création de l’OMG o Définition des standards de modélisation o Forte participation des entreprises• En parallèle, émergence du Model-Checking o Vérification de modèles o Analyse formelle
  3. 3. ProblématiquePeut-on effectuer une analyse formelle sur des langages de haut niveau ?
  4. 4. Plan• Introduction & Problématique• Langages de haut niveau o UML o SysML o AADL• Analyse formelle o Fiacre o Tina o Chaîne globale de vérification• Conclusion
  5. 5. Langages de haut niveau
  6. 6. Unified Modeling Language• Créé en 1995 par Booch, Rumbauch & Jacobson• Adopté en 1996 par l’OMG
  7. 7. Unified Modeling Language• Objectif : Fournir des outils d’analyse, de conception et d’implémentation pour les systèmes à dominante logicielle ou similaires
  8. 8. Unified Modeling Language• Sémantique graphique
  9. 9. Unified Modeling Language• Pour faire simple o Langage facile à lire… o mais dur à écrire !• Différence théorie / pratique o Peu de diagrammes sont réellement employés en entreprise o En théorie, tous sont nécessaires pour modéliser un système• Problèmes o Trop orienté ingénierie logicielle o Manque de formalisme o Bases solides adaptées à chaque entreprise
  10. 10. Systems Modeling Language• Créé en 2001 par l’OMG et l’INCOSE• Validé par l’OMG en 2006 comme Profil UML• Objectif : Etendre la modélisation UML à des systèmes génériques à composantes physiques
  11. 11. Systems Modeling Language• Notion d’exigence / besoin
  12. 12. Systems Modeling Language• Premier pas vers de la vérification de propriétés• Plus simple à adopter qu’UML o Moins de diagrammes o Langage orienté métier• Manque encore de formalisme (héritage d’UML)
  13. 13. Architecture Analysis and Design Language• Débuté en 1999 par Peter Feiler• Publié en 2004 avec SAE comme profil UML
  14. 14. Architecture Analysis and Design Language• Objectif : Modélisation des interactions logiciel/matériel pour les systèmes embarqués• Langage de description d’architecture o ≠ langage de modélisation !
  15. 15. Architecture Analysis and Design Language• AADL par rapport à SysML et UML:
  16. 16. Architecture Analysis and Design Language• Modélisation textuelle, représentation graphique
  17. 17. Architecture Analysis and Design Language• Principe : Composant 2 Composant 1
  18. 18. Architecture Analysis and Design Language• Principe : Composant 2 Composant 1 Instance Comp2 Instance Comp1 Instance Comp1
  19. 19. Architecture Analysis and Design Language• Principe : Composant 2 Composant 1 Instance Comp2 Instance Comp1 Système Instance Comp1
  20. 20. Architecture Analysis and Design Language• Sémantique forte, étape clé vers Model Checking• Long à mettre en place o Création des bibliothèques de composants de base o Nécessite d’apprendre un nouveau langage textuel• Réutilisation efficace o Plus simple une fois la base de composants classiques définie o Equivalence langages textuel et graphique o Véritable ciment entre UML et SysML
  21. 21. Analyse formelle
  22. 22. Format Intermédiaire pour les Architectures de Composants Répartis• Article fondateur de Bernard Berthomieu en 2008• Transforme un ensemble de langages de modélisation distincts en un langage intermédiaire unique• Conserve les propriétés définies dans chaque langage
  23. 23. Format Intermédiaire pour les Architectures de Composants Répartis• Langage fortement typé (robustesse)• Agit en « Back-End » pour l’utilisateur• Ne sera donc pas plus développé ici
  24. 24. Time Petri Net Analyzer• Article fondateur de Bernard Berthomieu en 2004• Boîte à outil pour l’édition et l’analyse de RDP et RDP temporels.• Contient : o Editeur graphique o Construction de comportements o Analyse et vérification formelle
  25. 25. Time Petri Net Analyzer• Analyse formelle o Basée sur l’outil « selt » (2006)• Extension de la LTL : S/E LTL o State/Event Linear Temporal Logic o => Analyse LTL sur les états et les transitions !
  26. 26. Time Petri Net Analyzer• Syntaxe o – p  négation de p o p / q  conjonction de p et q o () p  p vérifiée à l’état suivant (Next) o [] p  p vérifiée dans tout état du chemin (Always) o <> p  p vérifiée dans un état futur du chemin étudié (Eventually) o p U q  vérifiée si p vérifiée jusqu’à q vérifiée (Until)
  27. 27. Chaîne globale de vérification• Utilisation de Tina avec Fiacre• Fonctionnement de Fiacre o Processus communiquant avec des ports typés (entiers, booléens…) o Pour faire simple : programmation fonctionnelle fortement typée • 1 processus = 1 fonction let square x = x *. x;; Illustration avec Caml square : float -> float = <fun> let int_square x = int_of_float (square (float_of_int x));; int_square : int -> int = <fun>
  28. 28. Chaîne globale de vérification• Utilisation de Tina avec Fiacre• Avec Fiacre : o 2 processus : process1 et process2 o Ajout d’états sur ces processus : • cs_* (entrée en zone critique) • w_* (mode attente)• Objectif : non-famine o w_process1 doit donc entraîner cs_process1 o De même pour process2
  29. 29. Chaîne globale de vérification• Utilisation de Tina avec Fiacre• Avec Tina : o Utilisation de S/E-LTL avec selt• Analyse formelle : o []( (w_process 1 => <> cs_process 1) / (w_process 2 => <> cs_process 2) )
  30. 30. Chaîne globale de vérification• Chaîne complète
  31. 31. Chaîne globale de vérification• Chaîne complète Eclipse
  32. 32. Conclusion
  33. 33. Analyse de la chaîne• 2 outils à utiliser o Eclipse (UML/SysML/AADL et conversion vers Fiacre) + Tina o Chaîne simple en termes de logistique• Courbe d’apprentissage élevée o Logique temporelle o Syntaxes des différents langages à maîtriser• Améliorations possibles o Analyse formelle graphique : suppression des prérequis en LTL (Tina) o Problèmes de représentation des architectures paramétriques (Fiacre)
  34. 34. Merci pour votre attention Avez-vous des questions ?
  35. 35. Bibliographie• UML o [1] Allison June Barlow Chaney. Object management group. http://www.princeton.edu/~achaney/tmve/wiki100k/docs/Object_Managemen_Group.html. [En ligne ; dernier accès 04 Février 2013]. o [2] Armin Biere. Tutorial on model checking modelling and verification in computer science. http://fmv.jku.at/papers/Biere-AB08.pdf, 2008. o [3] Omg unified modeling language tm (omg uml), superstructure version 2.4.1, 2011. o [4] P.A. Muller and N. Gaertner. Modélisation objet avec UML, volume 514. Eyrolles, 2000. o [5] Lispy. Why uml fails to add value to the design and development process. http://lispy.wordpress.com/2008/10/29/why-uml-fails-to-add-value-to-the-design-and-development-process/. [En ligne ; dernier accès 04 Février 2013]. o [6] Yohann Poiron. Les raisons d’utiliser ou non l’uml dans vos phases de conception pour un développeur. http://www.blog-nouvelles-technologies.fr/archives/1038/les-raisons-dutiliser-ou-non-luml-dans-vos-phases-de- conception-pour-un-developpeur/. [En ligne ; dernier accès 04 Février 2013].• SysML o [7] T. Weilkiens. Systems engineering with SysML/UML : modeling, analysis, design. Morgan Kaufmann, 2008. o [8] Pascal Roques. Comparatif des diagrammes uml et sysml. http://www.uml-sysml.org/sysml. [En ligne ; dernier accès 09 Décembre 2012]. o [9] Hélène Mollère Youssef Srour Raphaël Sudre Karen Lavignasse, Nathalie Lépine. Génération de fichiers de paramétrage. 2007.• AADL o [10] Peter H. Feiler and David P. Gluch. Model-Based Engineering with AADL - An Introduction to the SAE Architecture Analysis and Design Language. SEI series in software engineering. Addison-Wesley, 2012.
  36. 36. Bibliographie• Fiacre & Tina o [11] Bernard Berthomieu, Jean-Paul Bodeveix, Patrick Farail, Mamoun Filali, Hubert Garavel, Pierre Gaufillet, Frederic Lang, and François Vernadat. Fiacre : an Intermediate Language for Model Verification in the Topcased Environment. In ERTS 2008, Toulouse, France, 2008. o [12] Bernard Berthomieu, Jean-Paul Bodeveix, Christelle Chaudet, Silvano Zilio, Mamoun Filali, and François Vernadat. Formal verification of aadl specifications in the topcased environment. In Proceedings of the 14th Ada-Europe International Conference on Reliable Software Technologies , Ada-Europe ’09, pages 207–221, Berlin, Heidelberg, 2009. Springer-Verlag. o [13] B. Berthomieu, P.-O. Ribet, and F. Vernadat. The tool tina – construction of abstract state spaces for petri nets and time petri nets. Journal of Production Research, 42(14) :2741–2756, 2004. o [14] Bernard Berthomieu. The tina toolbox home page. http://projects.laas.fr/tina//news.php. [En ligne ; dernier accès 09 Décembre 2012]. o [15] S. Chaki, E. Clarke, J. Ouaknine, N. Sharygina, and N. Sinha. State/event based software model checking. In Integrated Formal Methods, pages 128–147. Springer, 2004.

×