Chapitre 5 Les diagrammes d’interaction (collaboration et séquence)

Slides:



Advertisements
Présentations similaires
Didacticiel Mon EBSCOhost
Advertisements

Génie Logiciel 2 Julie Dugdale
Julie Dugdale Génie Logiciel 2 Julie Dugdale
Systèmes en temps réel Modélisation du comportement en temps réel avec UML.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II.
XML - Henry Boccon-Gibod 1 XML, Langage de description La question du choix de formalismes Les entités et leur représentations modalités de modèles et.
Les cas d’utilisation (use cases)
Les diagrammes d’interactions
UML (2) Rappel sur le modèle statique : classe / objet
Comprendre l’ergonomie du module STSWEB
Lexique des manœuvres de base pour utiliser à PowerPoint
UML (Unified Modeling Langage)
Diagrammes de communication
Modélisation orientée objet UML
PARTIE 3 : Le SYSTEME D’INFORMATION FUTUR
PRÉSENTATION Logiciel de traitement de texte:
Présentation SysML (Systems Modeling Language ) est basé sur UML et remplace la modélisation de classes et d'objets par la modélisation de blocs pour un.
Le Modèle Dynamique 1. EADS Matra Datavision - Confidentiel
Statecharts Décrit les changements d’état d’un objet en réponse à des evénements Point focal : l’objet et ses changements d’états Permet un hiérarchisation.
Aide-mémoire – FORMULAIRE Web DA/DT
UML : DIAGRAMME D’ACTIVITES
Une adresse gratuite... Comment créer une adresse gratuite...
Les Cas d’utilisation.
Analyse et Conception des Systèmes d’Informations
UML Etude de cas.
Modélisation des bases de données avec UML
Exploration de modèles de fonction linéaire Instructions en PowerPoint Partie 1 :Obtenez les données Partie 2 :Modélisez les données Partie 3 :Créez votre.
LOGICIEL PL7 MICRO PROGRAMMATION MISE AU POINT Consignes?
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
Les structure d’un programme :
Diagramme d’interaction
Module 2 : Préparation de l'analyse des performances du serveur
Le diagramme de séquences
Le diagramme d’activités
Le diagramme de collaboration
UML (2) Modèle dynamique le diagramme de séquence
Introduction : Management des systèmes d ’information
Diagrammes d’interaction
Sensibilisation a la modelisation
Langage de modélisation graphique de systèmes
Rappel sur les diagrammes de collaboration
Diagrammes D’activités UML
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Introduction à Visual Studio C++ (VC++)
Unified Modeling Langage
Nouvelles Technologies Internet & Mobile
Modélisation orientée objet UML
2 Tracks Unified Process
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Chapitre 2 Rappels objet et Présentation des diagrammes UML
Comprendre le SGBDR Microsoft Access – partie 2
Nouvelles Technologies Internet & Mobile
Les concepts d’UML - Le Processus Unifié -
UML support à la COO 2ème année IUT Calais-Boulogne Bénédicte Talon
LE COURRIER ELECTRONIQUE
TP D’UML Groupe N° 3.
LOGICIEL PL7 MICRO PROGRAMMATION MISE AU POINT Consignes?
Enregistrement sur le Forum de l’association. A partir de la page d’accueil du site Web, cliquer sur le lien « Forum » dans l’entête de la page.
Utiliser le dossier Mon EBSCOhost Tutoriel support.ebsco.com.
SI28 - Écriture multimédia interactive – A2004 Présentation Dreamweaver Partie 2 Pierre Malet GSU05.
Dreamweaver le retour Avec Les Formulaires Les Calques
Les formulaires Les calques Les comportements Les scénarios Les modèles Les feuilles de styles (CSS) La mise en ligne Les formulaires permettent à l’utilisateur.
DREAMWEAVER MX2 - Séance 2 Les calques Les comportements Les scénarios Les formulaires Les feuilles de style Les modèles Les cadres Mise en ligne Jérôme.
Les calques Les Template (modèles) Les Comportements Les scénarios Les formulaires Les CSS Le serveur Web de l’UTC Présentation.
SI28 : D REAMWEAVER 2 Audrey BUISSON – GSU05 Romain LASSALLE – GI05 1 SI28 – Ecriture interactive et multimedia.
Diagrammes de comportement Présentation. Diagramme de séquence  Permet de modéliser les envois de messages entre objets chronologiquement.  Modélisation.
USE CASE Présentation. Technique importante ● Pilotage par cas d'utilisation (use case) ● Spécifications des besoins fonctionnels des acteurs ● Unité.
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.
Transcription de la présentation:

Chapitre 5 Les diagrammes d’interaction (collaboration et séquence) Conception Objet Chapitre 5 Les diagrammes d’interaction (collaboration et séquence)

Diagramme d’interaction Comment les éléments (objets) interagissent et collaborent pour fournir les fonctionnalités requises Réalisation du comportement d’un scénario d’un cas d’utilisation

Diagramme d’interaction Diagrammes de séquences Comportement dynamique des éléments composant un système au fil du temps Diagrammes de collaboration Comportement des éléments au fil du temps et de l’espace

Diagramme d’interaction Ces deux modèles sont redondants Chacun met l’accent sur une idée différente événements dans le temps (séquence) relations entre objets (collaboration)

Diagramme d’interactions Collaboration : collection de classes, de messages et d’associations Interaction : collection de messages Une interaction a lieu dans un contexte de collaboration

Diagramme de séquence Documente un cas d’utilisation Affiche les éléments au fil de leurs interactions dans le temps Axe horizontal : éléments impliqués Axe vertical : écoulement du temps de haut en bas Les cas d’utilisation doivent être vus comme des classes dont les instances sont les scénarios. Chaque fois qu’un acteur interagit avec le système, le cas d’utilisation instantie un scénario; ce scénario correspond au flot de messages échangés par les objets durant l’interaction particulière qui correspond au scénario.

Diagramme de séquence Décrire les cas d’utilisation (scénarios) Décrire les interactions entre objets Un scénario est une série d'événements ordonnés dans le temps, simulant une exécution particulière du système. Les scénarios permettent d'expérimenter les exécutions du système, ils sont donc très utiles pour les phases de tests et de maintenance.

Diagramme de séquence Ligne de vie Ligne verticale discontinue connectée à un élément (objet) Existence de l’élément dans le temps

Diagramme de séquence Activation Rectangle allongé sur une ligne de vie Période pendant laquelle un élément réalise une opération

Diagramme de séquence Messages Des flèches représentent les messages qui transitent d'une entité vers l'autre. Le nom des messages apparaît sur chaque flèche. Si l'extrémité de la flèche est pleine, le message est synchrone. Si l'extrémité de la flèche est creuse, le message est asynchone. Les cas d’utilisation doivent être vus comme des classes dont les instances sont les scénarios. Chaque fois qu’un acteur interagit avec le système, le cas d’utilisation instantie un scénario; ce scénario correspond au flot de messages échangés par les objets durant l’interaction particulière qui correspond au scénario.

Diagramme de séquence Flèche creuse (asynchrone) Flèche pleine Ligne de vie Période d’activité

Diagramme de séquence Création et destruction d’objets

Diagramme de séquence Message réflexif

Diagramme de séquence (Exemple)

Diagramme de séquence (Exemple)

Diagramme de séquence (Résumé) Communication Ligne horizontale continue allant de la ligne de vie ou de l’activation d’un émetteur vers celle d’un récepteur [garde] *[itération] n°séquence : variable_retour := nom_opération (liste_arguments) La classe de l’objet émetteur devrait avoir une association avec la classe de l’objet récepteur dans le diagramme de classes Garde : condition qui doit être satisfaite pour que la communication ait lieu Itération : nombre de fois ou la communication a lieu N°séquence : ordre de la communication Variable_retour : nom pour la valeur retournée par l’opération Nom_opération : opération à invoquer Liste_arguments : arguments transmis à l’opération Un élément peut communiquer avec lui-même

Diagramme de séquence Création d’élément Destruction Répétition Communication qui pointe directement sur l’élément créé Destruction Communication qui se termine par un X sur la ligne de vie de l’élément Répétition Rectangle qui regroupe des messages (expression d’itération au sommet du rectangle) Garde : condition qui doit être satisfaite pour que la communication aie lieu Itération : nombre de fois ou la comm a lieu N°séquence : ordre de la comm Variable_retour : nom pour la valeur retournée par l’opération Nom_opération : opération à invoquer Liste_arguments : arguments transmis à l’opération Un élément peut communiquer avec lui-même

Diagramme de séquence (Structures de contrôle) La message1() est envoyé seulement si la condition specifiée dans la guard (entre brackets) est vraie. Une branche. Le sender envoie soit le message2() soit le message3(). Les conditions de ‘guard’ sont exclusives. L’Itération. Le sender envoie la message4() tant que la condition est vraie. “Pour chaque“. Si le receiver est une collection d’objets, envoyer le message à tous ces objets. Grouping. Les activités dans la boîte ont lieu seulement si le test est vrai. L’asterisque indique l’itération.

Diagramme de séquence (Exemple)

Diagramme de collaboration Montre une collaboration Affiche les éléments, leurs relations et leurs interactions (ordonnées dans le temps) Se concentre sur structurel Met l’accent sur les interactions entre objets de manière plus explicite Utile pour visualiser l’impact d’une interaction sur les éléments

Diagramme de collaboration Communication Flèche attachée à une relation (émetteur vers récepteur) Le numéro de séquence est obligatoire Numérotation à point (1, 1.1, 1.2, etc.)

Exemple : Retrait en espèce Rédigez un diagramme de séquence basé sur l’énoncé suivant: Le guichetier ouvre une session Le guichetier saisit le numéro de compte du client. Le système guichet valide le compte auprès du système central. Le système guichet demande le type d’opération au guichetier Le guichetier sélectionne le montant du retrait Le système guichet  interroge le système central pour s’assurer que le compte est suffisamment approvisionné Le système guichet demande au système central de débiter le compte Le système notifie au guichetier qu’il peut délivrer le montant demandé

Retraite en espèce – Diagramme de Séquence 3. Créez le diagramme de séquence ci-dessus. Le diagramme doit être créé comme document (enfant) du cas d’utilisation précédent.

Retraite en espèce – Diagramme de Collaboration

Exercice 1: Imprimante A partir du diagramme de classe ci-dessus Rédigez un diagramme de séquence pour modéliser le scénario où un utilisateur voudrait imprimer un fichier. Rédigez un diagramme de collaboration à partir du diagramme de séquence obtenu à la question 1.

Imprimante – Diagramme de Séquence

Imprimante – Diagramme de Collaboration

Exercice 2: Simple Watch Button 1 Button 2 A partir du diagramme de classe ci-dessus Rédigez un diagramme de séquence pour modéliser un scénario où un utilisateur voudrait régler l’heure (particulièrement les minutes) sur sa montre. En appuyant 2X sur le bouton 1 il accède au réglage des minutes (heure clignote puis minute clignote). Ensuite avec le bouton 2 (sans relâcher le bouton) il incrémente les minutes, le LCD display est rafraîchi. En appuyant sur le bouton 1 un autre fois l’heure est enregistrée et l’affichage s’arrête de clignoter. 2. Rédigez un diagramme de collaboration à partir du diagramme de séquence obtenu

Simple watch: Diagramme de Séquence *[B2..state = Pushed]

Simple Watch: Diagramme de Collaboration

Exercice 3 : Ascenseur A partir du diagramme de classe ci-dessus Rédigez un diagramme de séquence pour modéliser un scénario où un usager voudrait monter en utilisant un ascenseur Rédigez un diagramme de collaboration à partir du diagramme de séquence obtenu Lorsque les classes sont reliées par une association, celle-ci peut être reprise comme base de liens. Lorsque la classe cible d’un lien dispose d’opérations, celles-ci peuvent être reprises comme base de messages. Créez un nouveau modèle ou projet. Créez le diagramme de classe comme ci-dessus; dotez les classes des opérations selon l’exemple. Créez le diagramme de collaboration en utilisant les opérations des classes cibles comme messages.

Ascenseur – Diagramme de Séquence Créez un nouveau modèle ou projet. Créez le diagramme de séquence ci-dessus. Le paramètre de l’étage d’appel peut être indiqué comme paramètre dans le diagramme de collaboration

Ascenceur – Diagramme de Collaboration

Diagramme d’interaction Bibliographie PowerPoint de [DO Thanh Tung] Introduction à UML [Sinan Si Alhir] Edition O’Reilly Transparents [Benoît Charroux] Mai 1999