J. Cardoso — C. Sibertin-Blanc — C

Slides:



Advertisements
Présentations similaires
Yassine Lakhnech Prof. UJF Verimag
Advertisements

Langage de modélisation objet unifié
Génie Logiciel 2 Julie Dugdale
UML / Réseaux de Petri Validation / Vérification
Systèmes en temps réel Modélisation du comportement en temps réel avec UML.
Systèmes en temps réel Services de Communication.
Urbanisation des Systèmes d'Information - Henry Boccon-Gibod1 Urbanisation de système d'information PLM 4 (Product Lifecycle Management) Préoccupation.
Les cas d’utilisation (use cases)
M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 3ème.
M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 3ème.
UML - Présentation.
Les diagrammes d’interactions
"Recherche de scénarios redoutés à partir d'un modèle réseau de Petri"
IRISA18 novembre ACI Sécurité DADDi Dependable Anomaly Detection with Diagnosis IRISA.
UML (Unified Modeling Langage)
Système de gestion de bases de données. Modélisation des traitements
Diagrammes de communication
Alain Le Guennec Jean-Marc Jézéquel Action Triskell
                                        République Algérienne Démocratique et Populaire Ministère de l’Enseignement Supérieur et de la Recherche Scientifique.
Modélisation orientée objet UML
PARTIE 3 : Le SYSTEME D’INFORMATION FUTUR
Le Modèle Dynamique 1. EADS Matra Datavision - Confidentiel
UML : GENERALITES Rappel Diagrammes Niveaux de visions
Diagrammes d’activités
UML : DIAGRAMME D’ACTIVITES
Analyse et Conception des Systèmes d’Informations
Aide à la décision et à la négociation dans un problème de gestion de production distribuée Jean-Pierre Camalot et Patrick Esquirol LAAS-CNRS 7, avenue.
NOTE : Pour faire évoluer le diaporama, si le clic de souris ne fait rien utilisez les touches du clavier : Pg up Pg down.
1 Introduction : Management des systèmes dinformation version 1.1 du 13 Novembre 2001 Introduction : Management des systèmes dinformation ENSGI Cours MSI.
Vers la conception objet
Modèle, Méthode et Conception
Outils pour la modélisation des systèmes distribués
IFT Complexité et NP-complétude
Diagramme d’interaction
Partie II Sémantique.
Le diagramme de séquences
Le diagramme de collaboration
UML (2) Modèle dynamique le diagramme de séquence
Diagrammes d’interaction
Sensibilisation a la modelisation
UML Séquence 3 : (Diagramme d’activités)
Architecture et développement Web
Méthodes de prévision (STT-3220)
GENIE LOGICIEL Détermination du périmètre cible d’une application
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Le problème central de l’ordonnancement (les plus longs chemins)
C++ L’HERITAGE Fayçal BRAÏKI DUT INFORMATIQUE.
Nouvelles Technologies Internet & Mobile
A) Avec l’ordonnancement Rate Monotonic les priorités des processus suivent l’ordre inverse des périodes : P1 est prioritaire sur P2, lui-même prioritaire.
Du discours aux modèles… Une tentative d’articulation
ISNET-43 Atelier de génie logiciel Approche fonctionnelle ou objets Concurrence ou complémentarité ? Synthèse.
Les procédés métiers : conception, modélisation et systèmes Claude Godart Université de Lorraine - Esstin 1.
UML : Vue fonctionnelle - Diagramme de collaboration et diagramme de séquence /2004 Cours d'UML.
Bruno Traverson (EDF R&D, pilote de ACCORD)
Modélisation orientée objet UML
Chapitre 5 Les diagrammes d’interaction (collaboration et séquence)
2 Tracks Unified Process
Machines à états finis.
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Outil de modélisation :
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Les concepts d’UML - Le Processus Unifié -
UML support à la COO 2ème année IUT Calais-Boulogne Bénédicte Talon
TP D’UML Groupe N° 3.
Conférence 2TUP Stéphane Barthon 03/12/
Café In: A quoi ca sert la recherche sur la programmation? Comment peut on faire travailler des ordinateurs ensemble? Ludovic Henrio SCALE TeamSCALE Team.
Diagrammes de comportement Présentation. Diagramme de séquence  Permet de modéliser les envois de messages entre objets chronologiquement.  Modélisation.
UML Unified Modeling Language. UML : 8 diagrammes 1.Classes 2.Activités 3.Séquences 4.Collaboration 5.Etats transition 6.Cas d’utilisation 7.Composants.
Les limites de l’UML Présenté par : Samah Dekhil 1.
Transcription de la présentation:

Une sémantique formelle des diagrammes d’interaction d’UML via les réseaux de Petri J. Cardoso — C. Sibertin-Blanc — C. Soulé-Dupuy Université Toulouse 1 - IRIT

Une notation pour la modélisation O-O des systèmes UML Une notation pour la modélisation O-O des systèmes Diagrammes de classe Diagrammes d’interaction : les communications entre les entités du système diagramme de Séquence / de Collaboration Diagrammes de comportement : diagramme d’Activité / d’Etat-Transition d’une entité Diagrammes d’architecture technique

Diagramme de Séquence

Diagramme de Collaboration

Diag. d’interaction : questions Quelle sémantique ? Analyse des propriétés, simulation, génération du code. Quelle modèle d’exécution ? Contrôle centralisé, ou la ligne de vie de chaque objet définit son comportement, et l’interaction résulte de l’exécution concurrente des objets.

Diag. d’interaction : syntaxe abstraite activation : structure arborescente (déclenchement d'une procédure) précédence : ordre partielle sur les messages d'une procédure action : action émettrice, synchrone ou non

De la syntaxe à la sémantique Formaliser la signification intuitive des diag. d’interaction 1) Passer de l’ordonnancement des messages à celui des actions : !m, ?m : actions d’envoi et de réception de m m1 précède m2 => !m1 < !m2 ; !m < ?m 2) traitement des procédures : _begin, _end : actions de début et de fin de procédure m active une procédure => ?m < m_begin ; . . . 3) Messages synchrone / asynchrone : m1 synchrone et précède m2 => ?m1 < !m2 4) Localisation du contrôle : ordonnancer l’ensemble des actions que chaque objet doit réaliser (=> faisabilité d’un contrôle purement local) 1) - 3) => l’ordre minimal < 1) - 4) => l’ordre d’exécution lg<

L’ordre minimal < Exple 1 Exple 2 Précédence UML : m1 préc m2 préc m3 L’ordre minimal < : Exécution conforme : respecte l’ordre minimal

Localisation du contrôle (1) On cherche une relation d'ordre qui : étende l’ordre minimal soit constituée de : - envoi / réception de messages - précédences locales à un objet O1 O3 O2 1: m1 2: m2 3: m3 Ordonnancement local des actions dans O1 : !m1 puis ?m3 dans O2 : ?m1 puis !m2 dans O3 : ?m2 puis !m3 L’ordre lg< :

Localisation du contrôle (2) Objectif : éviter les synchronisations inter-objet qui peuvent être obtenues par transitivité à partir de contraintes : de type envoi / réception d’un message locale à un objet Principe : ajouter dans chaque objet toutes les contraintes «raisonnables», sérialiser le plus possible les actions, en donnant priorité aux réceptions sur les émissions (= retarder le plus possible les émissions), l’interaction ne progresse (par émission) que lorsqu’elle est stabilisée (ttes les émissions précédentes ont été reçues).

Localisation du contrôle (3) Le calcul : L’ordre maximal << (sérialise) L’ordre local l< (obtenu par transitivité) L’ordre com< (complément de <) L’ordre lg< = l< U com<

Le réseau de Petri généré O1 O3 O2 1: m1 2: m2 3: m3

Exple 2 O1 O3 O2 1: m1 3: m3 2: m2 Le RP généré L’ordre lg<

Exploitation des résultats Th1 : toute exécution du RP est conforme (sans blocage et respecte l’ordre minimal). Th2 : le contrôle est local ssi l’ordre com< ne comporte que des envoie/réception de messages, Les autres contraintes nécessitent un communication supplémentaire. Pour chaque objet, l’ordre lg< indique les interactions qu’il doit réaliser => c’est la spécification de son diagramme d’activité.

ufrinfo: jkljkljkl klkopkkkkkkkkkkkk Conclusion Proposition d’une sémantique opérationnelle pour les diagrammes d’interaction d’UML qui : capture la possibilité d’un contrôle locale, rend un diagramme exécutable (par génération d’un RP), permet de vérifier la cohérence entre un diagramme d’interaction et le comportement de chaque objet. Reste à faire : gérer les alternatives d’un diagramme d’interaction, gérer les objets qui participent à plusieurs diag. d’inter. diagnostiquer les causes de la non-localité du contrôle.