ASSALE Adjé Louis UML 1 U.M.L. Généralités • UML (Unified Modeling Language) adopté par OMG (Object Management Group) en 1997 • OMG définit le méta-modèle de UML Syntaxe et interprétation en partie formalisées • UML = Fusion de différentes méthodes objets OOSE, OMT, BOOCH et autres • Définition Langage visuel dédié à la spécification, la construction et la documentation des artefacts d’un système logiciel UML est un langage non une méthode
121
Embed
U.M.L. - labs.ivoiretalents.com · ASSALE Adjé Louis UML 1 U.M.L. Généralités • UML (Unified Modeling Language) adopté par OMG (Object Management Group) en 1997 • OMG définit
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
ASSALE Adjé Louis UML 1
U.M.L.
Généralités
• UML (Unified Modeling Language) adopté par OMG
(Object Management Group) en 1997
• OMG définit le méta-modèle de UML
Syntaxe et interprétation en partie formalisées
• UML = Fusion de différentes méthodes objets
OOSE, OMT, BOOCH et autres
• Définition
Langage visuel dédié à la spécification, la construction et la documentation des artefacts d’un système logiciel
• Comportement du système en termes d’interactions
Système vu comme une boite noire :
Qui interagit avec le système, et dans quel but ?
Diagramme de cas d’utilisation
Comment interagit le système avec son environnement ?
Diagramme de séquence système
Système vu comme une boite blanche :
Comment interagissent les objets du système ?
Diagramme de séquence et/ou de communication
• Évolution du système dans le temps Comment évoluent les états des objets ?
Diagrammes d’états-transitions
ASSALE Adjé Louis UML 58
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisationPermettre au client de décrire ses besoins
Parvenir à un accord (contrat) entre clients et développeurs
Point d’entrée pour les étapes suivantes du développement
Définition d’un cas d’utilisation ?
Usage que des acteurs font du système
Acteur : Entité extérieure qui interagit avec le système
Une même personne peut jouer le rôle de différents acteurs
Un acteur peut être un autre système (SGBD, Horloge, ...)
Usage : Séquence d’interactions entre le système et les acteurs
Généralement composé de plusieurs scénarios (instances)
Scénario de base et ses variantes (cas particuliers)
Description des scénarios à l’aide de diagrammes de séquence
ASSALE Adjé Louis UML 59
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisationComment découvrir les cas d’utilisation ?
Délimiter le périmètre du système
Déterminer ce qu’il devra faire, services qu’il rendra
Mais pas comment il devra le faire
Point de vue de l’utilisateur
Identifier les acteurs interagissant avec le système :
rôles
Déterminer les grandes catégories d’utilisation
Cas d’utilisation
Nommer les cas d’utilisation : Nom = Verbe à l’infinitif + Groupe nominal
Décrire textuellement les interactions de chaque cas
scénarios
ASSALE Adjé Louis UML 60
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisationActeur
Entité (humain ou machine) située hors du système
Permet de déterminer les limites du système
Joue un rôle par rapport au système soit
déclenche un stimulus entrainant une réaction du système
est sollicité par le système au cours d’un scénario
Un acteur est décrit précisément en quelques ligne
Catégories d’acteurs
Acteurs principaux (fonctions principales du système)
Acteurs secondaires (administration/maintenance)
Matériel externe
Autres systèmes
ASSALE Adjé Louis UML 61
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisationCas d’utilisation
Ensemble de séquence d’actions réalisées par le système, produisant un résultat observable pour un acteur particulier
Exemple : s’identifier, retirer du liquide, répondre à un mail
Un cas d’utilisation
Définit un ensemble de scénarios d’exécutions impliquant le même acteur (déclencheur) avec le même objectif utilisateur
Recense les informations échangées et les étapes dans la manière d’utiliser le système, les différents points d’extension et tous les cas d’erreur
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisationScénario
Séquence d’étapes dans la réalisation d’un cas d’utilisation
Séquence particulière de messages dans le cas d’utilisation pendant une interaction particulière
Tous les scénarios d’un cas d’utilisation sont issus du même acteur ont le même objectif
Description du cas d’utilisation
Ensemble de scénarios couvrant le cas d’utilisation
Documents avec flot d’événements : détaille ce qui se passe entre utilisateur et système quand le cas est exécuté
• flot nominal des événements
• flot d’événements alternatifs
• flots d’exceptions (terminaison incorrecte)
Serviront de base pour les jeux d’essais
ASSALE Adjé Louis UML 63
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisationExemple de diagramme de cas d’utilisation
ASSALE Adjé Louis UML 64
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisation
• Relations entre cas d’utilisation
Inclusion :
le cas A inclut le cas B (B est une partie obligatoire de A, comportement décrit par A inclut comportement de B)
Extension :
le cas B étend le cas A (B est une partie optionnelle de A, B peut être appelé au cours d’exécution de A)(préciser la condition)
Généralisation :
le cas A est une généralisation du cas B (B est une sorte de A).
ASSALE Adjé Louis UML 65
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisation
• Dépendances d’inclusion et d’extension
Les inclusions et les extensions sont représentées par des dépendances.
Lorsqu'un cas B inclut un cas A, B dépend de A.
Lorsqu'un cas B étend un cas A, B dépend aussi de A.
On note toujours la dépendance par une flèche pointillée B --->A qui se lit « B dépend de A » .
Lorsqu'un élément A dépend d'un élément B, toute modification de B sera susceptible d'avoir un impact sur A.
Les « include » et les « extend » sont des stéréotypes (entre guillements) des relations de dépendance.
sens des flèches indique la dépendance, pas sens de la relation
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisationReprésentation textuelle du cas d’utilisation
Associée à une représentation graphique (élément le plus utile)
Ensemble de champs de description (nom, préconditions…)
Lisible et informelle (langage naturel, pas trop long, …)
décrit
Un scénario nominal (suite d’étapes avec objectifs de l’acteur bien identifiés et menés à bien)
Des points d’extension et étapes d’extension
Des points d’échec
Des liens vers d’autres scénarios s’il y a trop d’étapes
Complément de description (permet de mieux comprendre le cas)
Diagramme de séquence
Diagramme d’activité, de machine d’états
Dessin, maquette d’interface ou documents quelconques
ASSALE Adjé Louis UML 67
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisation
• Rédaction de cas d’utilisation
Généralités
Intérêts et intervenants
Portée de conception
Acteurs et objectifs
Préconditions, garanties et déclencheurs
Scénarios
Extension
Variantes de technologies et de données
Formats de cas d’utilisation
divers
ASSALE Adjé Louis UML 68
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisationPhases de rédaction de cas d’utilisation
Nom :<objectif sous forme de courte expression verbale infinitive exprimant une action>
Contexte d’utilisation : <formulation plus longue de l’objectif>
Portée :<quel système est considéré comme boite noir en cours de conception>
Niveau :<stratégie, objectif utilisateur, sous-fonction>
Acteur principal :<nom de rôle de l’acteur principal ou description>
Intervenants et intérêts :<liste d’intervenants et d’intérêts essentiels dans le CU>
Préconditions :<ce que doit être l’état du monde avant le début>
Garanties minimales :<mode de protection des intérêts quelle que soit l’issue>
ASSALE Adjé Louis UML 69
U.M.L. : Modéliser le comportement
Diagramme des cas d’utilisationPhases de rédaction de cas d’utilisation
Garanties en cas de succès : <état du monde si l’objectif est rempli>
Déclencheur :<ce qui démarre le CU; peut être un événement temporel>
Scénario nominal :<étapes du scénario du déclenchement à la réalisation de l’objectif><numéro étape><description de l’action>
Extensions : <extensions, une par une, chacune faisant référence à l’étape concernée du scénario nominal><numéro d’étape modifiée><condition> : <action ou sous cas d’utilisation>
Listes de variantes de technologies et de données
Informations connexes : <tout type d’information dont peut avoir besoin le projet>
ASSALE Adjé Louis UML 70
U.M.L. : Modéliser le comportement
Travaux Pratiques N°2
• Exercices 3 et 4 fiche de TD
ASSALE Adjé Louis UML 71
U.M.L. : Modéliser le comportement
Diagramme d’états-transitions
• Utilisé pour modéliser :
les états simples, les transitions et les états composites imbriqués
L’état d’un objet à un instant t peut changé à l’instant t+1
Le passage d’un état à un autre est une transition
La condition de passage est appelée «garde»
État-transition
ASSALE Adjé Louis UML 72
U.M.L. : Modéliser le comportement
Diagramme d’états-transitionsÉtat-transition : on peut préciser une action ou activité
Suite d’états et de transitions avec
Début:
Fin:
Ti : transition –Ci : condition –Ai : action
ASSALE Adjé Louis UML 73
U.M.L. : Modéliser le comportement
Diagramme d’états-transitions
• Différents types d’événements
Signaux :
Q0 ————————————–> Q1
Appels d’opérations :
Q0 ————————————–> Q1
Les paramètres peuvent être typés ou non
Evénements temporels :
Q0 ————————————–> Q1
Passage dans l’état Q1 qté tps après l’arrivée dans l’état Q0
Evénements de changement :
Q0 ————————————–> Q1
Passage dans l’état Q1 quand cond devient vraie
nomSignal
nomOp(paramètres)
after(qté tps)
when(cond)
ASSALE Adjé Louis UML 74
U.M.L. : Modéliser le comportement
Diagramme d’états-transitions
• États imbriqués ou composites
Un état peut contenir des sous-états
Permet de factoriser les transitions de sortie du composite
Chaque transition de sortie s’applique à tous les sous-états
Une seule transition d’entrée
Exemple
ASSALE Adjé Louis UML 75
U.M.L. : Modéliser le comportement
Diagramme d’états-transitions
• États concurrents
Plusieurs sous-automates peuvent être concurrents :
Etat courant = n-uplet de sous-états
Etats de S = f(Z;A); (Z;B); (X;A); (X;B); (Y;A); (Y;B)g
Exécution indépendante des sous-automates
Un évt peut déclencher une transition dans plusieurs sous-auto.
Sortie possible quand tous les sous-auto. sont dans un état final
ASSALE Adjé Louis UML 76
U.M.L. : Modéliser le comportement
Diagramme d’états-transitions
• Gardes et transitions composites
Conditions de gardes
Transition de A vers B réalisée si cond est vraie quand e1 arrive
Si cond est fausse alors e1 est perdu
Transitions composites
Factorisation de l’événement déclencheur validation
Les gardes doivent être mutuellement exclusives pour que l’automate soit déterministe
ASSALE Adjé Louis UML 77
U.M.L. : Modéliser le comportement
Diagramme d’états-transitions
• Actions et activités
Actions (envoi de signaux, invocation d’opérations, ...) :
Peuvent être exécutées :
Lors d’une transition (ex. : action4)
En entrant dans un état (ex. : action1)
En sortant d’un état (ex. : action3)
Sont atomiques (ne peuvent être interrompues par un événement)
Activités :
Peuvent être exécutées dans un état (ex. : activité2)
Peuvent être continues ou non
Sont interrompues à l’arrivée d’un événement en sortie de l’état
Si plusieurs transitions partant d’un état ont le même événement, alors il doit y avoir des gardes qui garantissent le déterminisme
Tous les états doivent être accessibles depuis l’état initial
S’il y a des états terminaux alors, pour chaque état non terminal, il doit exister un chemin de cet état vers un état terminal (...en général)
ASSALE Adjé Louis UML 80
U.M.L. : Modéliser le comportement
Diagramme d’activités
• Objectifs
Permet de s’intéresser aux traitements
Modélisation du flot de contrôle et du flot de données
Permet de regrouper graphiquement
Le comportement d’une méthode
Le déroulement d’un cas d’utilisation
Offre une vision très proche des langages de programmation impératifs
U.M.L. : Modéliser le comportement
Diagramme d’activités
• Action
Plus petit traitement exprimé en UML
Équivalent instruction d’un langage de programmation
Principales actions
Action appeler (call operation)
Action comportement (call behavior)
Action envoyer (send)
Action accepter événement (accept event)
Action accepter appel (accept call)
Action répondre (reply)
Action créer (create)
Action détruire (destroy)
Action lever exception (raise exception)
ASSALE Adjé Louis UML 82
U.M.L. : Modéliser le comportement
Diagramme d’activités
• Action
Graphiquement actions sont dans des nœuds actions
Rectangle avec bords arrondis
Notation spéciale pour action de communication
ASSALE Adjé Louis UML 83
U.M.L. : Modéliser le comportement
Diagramme d’activités
• Activité
Définit un comportement décrit par un séquencement organisé d’unités dont les éléments simples sont les actions
Le flot d’exécution est modélisé par des nœuds reliés par des arcs (transitions)
Groupe d’activités
Activité regroupant des nœuds et des arcs
Un diagramme d’activités est lui-même un groupe d’activités
Nœuds d’activités
ASSALE Adjé Louis UML 84
U.M.L. : Modéliser le comportement
Diagramme d’activités
• Transition
Passage d’une activité à une autre
2 types de transitions
Automatique : fin d’1 activité entraine début de l’autre
Gardée : le passage d’1 activité à l’autre n’est possible que si condition mentionnée est vérifiée
ASSALE Adjé Louis UML 85
U.M.L. : Modéliser le comportement
Diagramme d’activités
• exemple
ASSALE Adjé Louis UML 86
U.M.L. : Modéliser le comportement
Diagramme d’activités
• Nœuds de contrôle
Nœud initial (initial node)
Nœud de fin d’activité (final node)
Nœud de fin de flot (flow final)
Nœud de décision (decision node)
Nœud de fusion (merge node)
Nœud de bifurcation (fork node)
Nœud d’union (join node)
ASSALE Adjé Louis UML 87
U.M.L. : Modéliser le comportement
Diagramme d’activités
• Nœuds de contrôle
ASSALE Adjé Louis UML 88
U.M.L. : Modéliser le comportement
Diagramme d’activités
• Nœud d’objet
Permet de définir un flot de données
Dispose de pins d’entrée ou sortie
Flot d’objets
Permet de passer des valeurs d’une activité à une autre
ASSALE Adjé Louis UML 89
U.M.L. : Modéliser le comportement
Diagramme d’activités
• Nœud d’objet
Nœud tampon central
Nœud de stockage des données
ASSALE Adjé Louis UML 90
U.M.L. : Modéliser le comportement
Diagramme d’activitésPartitions
Permettent d’organiser les nœuds d’activités en des regroupements
Graphiquement, partitions délimitées par lignes continue
Appelées couloirs ou lignes d’eau
ASSALE Adjé Louis UML 91
U.M.L. : Modéliser le comportement
Travaux Pratiques N°3
• Exercices 5, 6 et 7 fiche de TD
ASSALE Adjé Louis UML 92
U.M.L. : Modéliser le comportement
Diagrammes d’interaction
• Point de vue temporel sur les interactions
Pendant la capture des besoins (système = boite noire) :
Interactions entre acteurs et système
Décrire les scénarios des cas d’utilisation
Pendant la conception (système = boite blanche) :
Interactions entre objets
Réfléchir à l’affectation de responsabilités aux objets
Qui crée les objets - Qui permet d’accéder à un objet ?
Quel objet reçoit un message provenant de l’IHM ? ...
de façon à avoir un faible couplage et une forte cohésion
Elaboration en parallèle avec les diagrammes de classes
Contrôler la cohérence des diagrammes !
ASSALE Adjé Louis UML 93
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Objectif
décrire scénarii nominaux de chq cas d’utilisation (description textuelle de cas d’utilisation)
Point de vue analyse : interaction entre acteurs et système global
ASSALE Adjé Louis UML 94
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Objectif Point de vue conceptuelle : interaction entre acteurs et différents
objets du système
ASSALE Adjé Louis UML 95
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Message
élément nommé qui définit une catégorie spécifique de communication entre des lignes de vie d’une interaction
Un message reflète
L’appel d’une opération (méthode) et le début de l’exécution
Envoi et réception d’un signal
Un message peut être
Un appel synchrone
Un appel asynchrone
Une création
Une destruction
Une réponse
ASSALE Adjé Louis UML 96
U.M.L. : Modéliser le comportement
Diagramme de séquenceAppel synchrone / Appel asynchrone
Représente un appel de méthode
- L’émetteur envoie un message- Il suspend son exécution durantl’attente de la réponse
- Flèche pleine à son extrémité
- L’émetteur envoie un message- Il continue son exécution sansattendre la réponse
- Flèche ouverte à son extrémité
ASSALE Adjé Louis UML 97
U.M.L. : Modéliser le comportement
Diagramme de séquenceMessage de création / Message de destruction
- Message envoyé à une ligne de vie- Flèche pointillée, ouverte à sonextrémité, pointant sur la tête d’uneligne de vie
- Message envoyé à une ligne devie pour la terminer
- La ligne de vie se termine parune croix
ASSALE Adjé Louis UML 98
U.M.L. : Modéliser le comportement
Diagramme de séquenceMessage de réponse /Message avec contrainte temporelle
- Message envoyé en réponse à un appel- Flèche pointillée avec extrémité
- Message envoyé avec une certaine durée- flèche oblique
ASSALE Adjé Louis UML 99
U.M.L. : Modéliser le comportement
Diagramme de séquenceDifférents événements liés à un message
Envoi du message / Réception du message
Début d’exécution / Fin d’exécution
ASSALE Adjé Louis UML 100
U.M.L. : Modéliser le comportement
Diagramme de séquenceObjet actif / objet passif
Objet actif
Initie et contrôle le flux d’activités
La ligne pointillée verticale est remplacée par un double trait vertical
Objet passif
À besoin d’un flux d’activité pour pouvoir exécuter méthode
Exécution d’une réaction représentée par rectangle blanc ou gris placé sur ligne de vie en pointillé
ASSALE Adjé Louis UML 101
U.M.L. : Modéliser le comportement
Diagramme de séquenceExécution simultanées sur la même ligne de vie
Messages réflexifs
ASSALE Adjé Louis UML 102
U.M.L. : Modéliser le comportement
Diagramme de séquencecadres
ASSALE Adjé Louis UML 103
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Opérateurs pour fragments d’interactions combinés
Opérateurs de choix et boucle
Alternative
Option
Loop
Break
Opérateurs contrôlant l’envoi en parallèle de messages
Parallel
Critical region
Opérateurs fixant l’ordre d’envoi des messages
Strict sequencing
Weak sequencing
ASSALE Adjé Louis UML 104
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Fragments d’interactions combinés
Opérateur alternative
Le fragment représente un choix
Similaire à un switch en C
ASSALE Adjé Louis UML 105
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Fragments d’interactions combinés
Opérateur option
Équivalent à un opérateur alternative avec une seule condition
ASSALE Adjé Louis UML 106
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Fragments d’interactions combinés
Opérateur loop
Permet de spécifier une boucle
Boucle qui s’exécute possiblement une infinité de fois
Boucle qui s’exécute 10 fois
Boucle s’exécute au minimum 5 fois et au maximum 10 foisSi condition est fausse, on sort de la boucle, quelque soit le nombre d’exécution de la boucle
ASSALE Adjé Louis UML 107
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Fragments d’interactions combinés
Opérateur break
Si condition du break est vraie, on exécute fragment associé et on ignore le reste du fragment dans lequel break est inclus
Si condition du break est fausse on passe directement à la suite du fragment englobant
ASSALE Adjé Louis UML 108
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Fragments d’interactions combinés
Opérateur parallel
Spécifie l’exécution en parallèle de plusieurs sous fragments
ASSALE Adjé Louis UML 109
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Fragments d’interactions combinés
Opérateur strict sequencing
Les fragments s’exécutent les uns après les autres
ASSALE Adjé Louis UML 110
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Fragments d’interactions combinés
Opérateur weak sequencing
Si les lignes de vie atteintes sont les mêmes exécution
séquentielle
Si les lignes de vie atteintes sont différentes exécution
parallèle
Google en parallèle avec bing et/ou yahoo
Bing puis yahoo
ASSALE Adjé Louis UML 111
U.M.L. : Modéliser le comportement
Diagramme de séquence
• Utilisation d’interactions
Possibilité de faire référence à une interaction dans la définition d’une autre interaction
Permet la réutilisation d’une définition dans des contextes différents
ASSALE Adjé Louis UML 112
U.M.L. : Modéliser le comportement
Diagramme de communication
• Diagrammes d’interactions
Les diagrammes de communication et les diagrammes de séquences sont deux types de diagramme d'interaction
Un diagramme de séquence montre des interactions sous un angle temporel, en mettant l'emphase sur le séquencement temporel de messages échangés entre des lignes de vie
Un diagramme de communication montre une représentation spatiale des lignes de vie. Ils représentent la même chose, mais sous des formes différentes.
UML 2.0 ajoute un troisième : le diagramme de timing.
usage limité à la modélisation des systèmes qui s'exécutent sous de fortes contraintes de temps, comme les systèmes temps réel.
ASSALE Adjé Louis UML 113
U.M.L. : Modéliser le comportement
Diagramme de communication
• Diagrammes de séquence et de communication
ASSALE Adjé Louis UML 114
U.M.L. : Modéliser le comportement
Diagramme de communication
• Rôles et connecteurs
Rôle permet de définir contexte d'utilisation de l'interaction.
Une rôle dans un diagramme de communication correspond à une ligne de vie dans un diagramme de séquences.
« connecteurs » relations entre les lignes de vie
Un connecteur se représente de la même façon qu'une association mais la sémantique est plus large : un connecteur est souvent une association transitoire.
Comme pour les diagrammes de séquence, la syntaxe d'une ligne de vie est :
<nomRole >[< selecteur >]: < nomClasseur >
ASSALE Adjé Louis UML 115
U.M.L. : Modéliser le comportement
Diagramme de communication
• Types de messages
idem diagrammes de séquence, 2 types de messages :
Un message synchrone bloque l'expéditeur jusqu'à la réponse du destinataire. Le flot de contrôle passe de l'émetteur au récepteur.
Un message asynchrone n'est pas bloquant pour l'expéditeur. Le message envoyé peut être pris en compte par le récepteur à tout moment ou ignoré.
ASSALE Adjé Louis UML 116
U.M.L. : Modéliser le comportement
Diagramme de communication
• Représentation des messages
Les flèches représentant les messages sont tracées à côté des connecteurs qui les supportent.
N.B. : Bien faire la distinction entre les messages et les connecteurs : on pourrait avoir un connecteur sans message, mais jamais l'inverse.
ASSALE Adjé Louis UML 117
U.M.L. : Modéliser le comportement
Diagramme de communication
• Numéros de séquence des messages
Utiliser pour représenter aspects temporels
messages successifs ordonnés selon numéro croissant (1, 2, ... )
messages envoyés en cascade (appel de méthode à l'intérieur de méthode) ont numéro d'emboîtement avec une notation pointée (1.1, 1,2, …) Équivalent diagramme de séquence
ASSALE Adjé Louis UML 118
U.M.L. : Modéliser le comportement
Diagramme de communication
• Messages simultanés
Lorsque des messages sont envoyés en parallèle, on les numérote avec des lettres
1.a, 1.b,... pour des messages simultanés envoyés en réponse à un message dont l'envoi portait le numéro 1
ASSALE Adjé Louis UML 119
U.M.L. : Modéliser le comportement
Diagramme de communicationSyntaxe générale des messages
synchronisation : les préalables à l’envoi du message;
n° du message : ordre chronologique du message;
condition du déclenchement de l’envoi;
type d’envoi: séquentiel ou parallèle;
résultat : valeur retournée…
Exemples :
[activitéprofessionnelle=Ok] 1: établir plan()
Un élève ne peut s’inscrire que si il a une activitéprofessionnelle
2 / || [j=1…n] 3 : inscrireUE()
Le message 3 ne sera envoyé qu’après le message 2 Envoi en // de n messages
ASSALE Adjé Louis UML 120
U.M.L. : Modéliser le comportement
Diagramme de communication
• Contrat d’opérations
Réaliser via diagramme de séquence ou communication
Affinement diagramme des classes
Écriture de code
public void op(e :E) { C obj = Obj1.fonc(var) Obj2.op1()