Académique Documents
Professionnel Documents
Culture Documents
Les diagrammes
Diagrammes Diagrammes de classes de Use Cases et packages Diagrammes Diagrammes dobjets de squence
Diagrammes Collaboratif
Modle
Diagrammes de composants
Diagrammes dtat
Diagrammes dactivit
Diagrammes de dploiement
4-2
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4-3
Cas dutilisation
Systme Attendu
Comportement
USE CASES
Diagramme de cas dutilisation Fonctions Attendues Cas dutilisation Environnement Acteurs
4-4
Dfinition
Le Diagramme Use Cases permet de dcrire les besoins fonctionnels du systme futur . Il illustre le comportement du systme dans son environnement
4-5
Clarifier, Filtrer et Organiser les besoins Guider la communication entre les intervenants du projet tout au long du projet
4-6
Use case
Relations
4-7
Acteur
Entit situe hors des frontires du systme Toute entit pouvant interagir avec le systme Les acteurs changent des informations avec le systme Un acteur peut reprsenter un rle, une machine ou un autre systme Les acteurs identifient des rles et non des individus
Utilisateur Anonyme
4-8
Employ
Directeur
Assistante
4-9
Use case
Passer Dcrit la raction du systme une une commande stimulation externe Dcrit un ensemble de successions d'actions ralises par le systme qui produisent un rsultat pour un acteur particulier Modlise un service rendu par le systme, les interactions entres acteurs et systme
4 - 10
Use case
L'ensemble des cas d'utilisations dcrit le comportement du systme, donc les fonctionnalits du systme. Dcrit une seule et unique fonctionnalit de haut niveau Attention : un cas d utilisation est un ensemble de succession d action et en aucun cas une seule action
4 - 11
Client
<< include >>
Effectuer paiement
4 - 12
Le comportement d'un cas d'utilisation est incorpore dans le comportement d'un autre cas d'utilisation
Passer une commande
<< include >> << include >> << include >>
Effectuer paiement
4 - 13
le cas d utilisation source comprend le comportement du cas d utilisation cible l inclusion est obligatoire permet de dfinir des comportements partageables entre plusieurs cas
<<include>>
Le comportement d'un cas d'utilisation tend le comportement d'un autre cas d'utilisation sous certaines conditions
Effectuer paiement
<< extend >> << extend >>
4 - 15
le cas d utilisation source ajoute son comportement au cas d utilisation cible l extension peut tre soumise condition permet de dfinir des variantes de comportement
<<extend>>
4 - 16
Les cas d'utilisation fils hritent du comportement et des relations de leur anctre. Chacun d entre eux peut comprendre des interactions spcifiques supplmentaires
Effectuer paiement
module 2 module 2
Cas dutilisation
Exemple Guichet Automatique de Banque
Effectuer un virement
4 - 18
module 2 module 2
Cas dutilisation
Exemple En utilisant l extend
Utiliser le GAB <<include>> <<extend>> Retirer des espces
Dposer de l'argent
Client GAB
<<extend>>
Client guichet
Effectuer un virement
4 - 19
module 2 module 2
Cas dutilisation
Exemple En utilisant l hritage
<<include>> Utiliser GAB
Client GAB
Scnario
Chaque cas d'utilisation est une collection de scnario Un scnario est une suite spcifique d interaction entre les acteurs et le systme Un scnario dcrit une instance de cas dutilisation
Lensemble des excutions possibles du cas dutilisation sont dcrites par les scnarios Mme les cas danomalies
4 - 21
Scnario
La manire la plus simple de dcrire un scnario consiste recenser de faon textuelle toutes les interactions entre acteurs et systme. Les scnarios permettent de dfinir les tests effectuer sur le systme
4 - 22
4 - 23
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4 - 24
Diagramme dactivits
Utilis pour la description d'oprations composes de suites d'actions lmentaires continues Ils permettent de reprsenter
le droulement dun cas dutilisation, le comportement dune mthode, tout mcanisme tapes squentielles...
4 - 25
4 - 26
Les activits
4 - 27
Les transitions
Passage instantan et automatique l'action suivante Dclenches par la fin d'une activit et provoquent le dbut immdiat de l activit suivante Enter login Elle sont appeles and password
transitions automatiques transitions sans dclencheur transitions de terminaison
Authentify user
4 - 28
Les dcisions
Les transitions peuvent dpendre de conditions boolennes, mutuellement exclusives, appeles dcisions Indique les conditions selon lesquelles, la sortie d'une action, l'action suivante excuter (parmi plusieurs possibles) est dtermine
Check validity [ ok ] Activity 1 [ nok ] Activity 2
4 - 29
Les synchronisations
Une barre de synchronisation permet d'ouvrir et de fermer des branches parallles au sein d'un flot d'excution
Les transitions qui partent d'une barre de synchronisation ont lieu en mme temps On ne franchit une barre de synchronisation qu'aprs ralisation de toutes les transitions qui s'y rattachent
4 - 30
module 4 module 4
Exemple de synchronisation
Placer tasse
Allumer machine
4 - 31
Les traves
4 - 32
Exemple de traves
Acheteur Ngociation devis Assistante
Rdiger commande
Viser commande
Commande [Projet]
Commande [Dfinitif]
Commander
4 - 33
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4 - 34
Diagramme de squences
Diagrammes dinteraction
diagrammes de squence, diagrammes de collaboration
4 - 35
Illustration dun cas dutilisation avec une approche gnraliste sans entrer dans le dtail des synchronisations en restant proche de lutilisateur Documentation des interactions entre les objets, linvocation des mthodes et la rpartition du flot de contrle
4 - 36
4 - 37
La ligne de vie matrialise la dure de vie de lobjet La priode dactivation correspond au temps pendant lequel lobjet effectue une action directement ou en invoquant un autre objet sous traitant
Elle est reprsente par une bande superpose la ligne de vie
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4 - 39
Diagramme de collaborations
Aide la ralisation de diagramme de classes, tat-transition, ... Prsente les interactions entre objets, leur cycle de vie visant latteinte d un objectif dans un contexte donn Les interactions entre objets sont reprsentes par des envois de messages
4 - 40
Interactions
Les interactions entre objets sont reprsentes par des envois de messages
1 : ouvrir
:Ascenseur
:Porte
4 - 41
Squence
La chronologie des oprations est reprsente par un numro de squence des messages
5 : monter() 2 : allumer() :Lumiere
:Ascenseur
4 - 42
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4 - 43
Diagramme de classe
4 - 44
Diagramme de classe
Ignore les aspects temporels et dynamiques Plusieurs diagrammes de classe peuvent tre ncessaires pour modliser le systme
4 - 45
4 - 46
Diagramme de classe
Customer name address 1
Cardinalit Cardinalit
Order 1
1 Payment amount
Navigation
Agrgation Classe
Gnralisation
Cash currency
Diagramme de classe
4 - 48
La classe
4 - 49
Association
4 - 50
4 - 51
4 - 52
Client
4 - 53
un rle exprime la vision dune classe par une autre classe au travers de la relation permet de clarifier les diagrammes
Entreprise
+Employeur
+Salari +Client
Personne
4 - 54
module 4 module 4
Des contraintes peuvent tre dfinies sur les associations Limiter son utilisation La notation utilise peut tre une expression entre accolade ou de lOCL
{ordonn} {sous-ensemble} {ou exclusif}
4 - 55
module 4 module 4
La contrainte indique que la relation d ordre doit tre maintenue durant l ajout ou la suppression d un lment dans la collection
4 - 56
module 4 module 4
Entreprise
Personne
4 - 57
module 4 module 4
Personne
La contrainte indique qu une personne peut tre soit un enseignant dans une promotion soit un tudiant mais pas les deux
4 - 58
Classe association
Classe association
permet dajouter des attributs lassociation
Etudiant Travail
Note
Rsultat Note
Travail
4 - 59
Qualification de lassociations
permet de slectionner un sous-ensemble d'objets, parmi l'ensemble des objets qui participent une association La restriction de l'association est dfinie par une cl, qui permet de slectionner les objets cibls
Hotel N tage 1 Etage N chambre 1 Chambre
4 - 60
La navigation est habituellement dans les deux sens Dans certains cas, seule la navigation dans une direction na dintrt ou de signification. Le sens de navigation est matrialis par une flche L utilisation d une navigation restreinte rduit le couplage entre les classes
Classe A Classe B
4 - 61
Agrgation
Lagrgation est une relation composcomposant ou partie de Il sagit dune relation entre deux classes spcifiant que les objets dune classe sont des composants de lautre classe Les actions de la classe compose sont reportes sur les composants
4 - 62
Exemple dagrgation
Le message peut contenir plusieurs pices jointes et la pice jointe peut tre envoye dans plusieurs messages
PieceJointe
4 - 63
Composition
La composition est une forme forte dagrgation Les cycles de vies des lments (les "composants") et du compos sont lis
si l'agrgat est dtruit (ou copi), ses composants le sont aussi
A un mme moment, une instance de composant ne peut tre lie qu' un seul agrgat
Hotel Etage
Chambre
4 - 64
Lusage des agrgations et des compositions est manier avec prudence Ne jamais oublier quune agrgation nest quune association particulire, un peu plus riche en sens
4 - 65
La relation de gnralisation signifie est un ou est une sorte de Vehicule Les sous-classes hritent des attributs, des oprations, des relations et des contraintes de la super-classe.
Moto
4 - 66
Gnralisation
En UML, concept abstrait permettant la classification Lhritage est une technique servant la ralisation de la relation de gnralisation La gnralisation raisonne en terme danalyse, l hritage en terme de conception
Rien n empche de concevoir une solution sans hritage (mais plus difficilement)
4 - 67
Gnralisation simple
Cas le plus courant de gnralisation ( prfrer) Une classe a un seul anctre direct La classe fille est une spcialisation avec ses propres attributs et mthodes en plus de ceux hrits de la classe anctre
4 - 68
Cercle dessiner()
Rectangle dessiner()
Triangle dessiner()
4 - 69
Gnralisation multiple
La gnralisation est dite multiple quand une classe plusieurs anctres directs (ou super classes) La classe est la fusion de ces super-classes
Radio Reveil
RadioReveil
4 - 70
La relation de gnralisation peut tre enrichie de contraintes Limiter leur utilisation La notation est la mme que celle utilise pour les contraintes sur les associations
{disjoint} {chevauchement} {incomplet}...
4 - 71
Pied bleu
Bolet de loup
A voile
Marin
Ptrolette
La gnralisation ne peut tre tendue, il n est pas possible dajouter des sous classes
{incomplet}
La gnralisation peut tre tendue
4 - 74
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4 - 75
Diagramme de packages
troitement li avec le diagramme de classes Permet de structurer
regroupement des classes dans des packages structurer un systme structurer le projet
Package
4 - 76
Class B
Class C
4 - 77
Exemple
GUI
Accounting Bank
Shipping Ordering
Dpendance cyclique
Stock
4 - 78
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4 - 79
Diagramme dobjets
Est appel aussi diagramme dinstances (de classes) Reprsentation de la structure statique tout comme le diagramme de classe Instance du diagramme de classe pour un tat du systme modlis un instant donn
4 - 80
Diagrammes dobjets
Prsente un contexte (avant ou aprs une interaction entre objets par exemple) Sutilisent en phase initiale dun projet Les principaux lments de modlisations sont
Les objets Les liens.
4 - 81
Objet
L objet est une instance dune classe Est reprsent par un rectangle
On nomme lobjet par son nom ou son nom suivi de deux points et du nom de la classe Le nom de lobjet et la classe sont souligns
maRadio:Radio marque = Sony frequence = 103.6 :Reveil monObjet
4 - 82
Lien
4 - 83
Ltat dun objet = valeurs de ses attributs Possibilit de modliser les tats et changements dtats
:Television etat = allumee chaine = TF1
<< devient >>
4 - 84
PLiquide monnaie
4 - 85
au diagramme dobjets
produit1:Produit monClient:Client nom = Martin adresse = Genve maCommande:Commande date = 20/1/2001 etat = dlivr poids = 500 prix = 30 produit2:Produit poids = 100 prix = 10 produit3:Produit maCarte:PCarteCredit numero = 123-456-78 dateExpiration = 12/2001 poids = 1000 prix = 70
4 - 86
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4 - 87
Diagramme dtats
Utilisent des automates tats finis pour modliser le comportement Souvent utiliss pour dcrire le comportement des classes, MAIS aussi dacteurs, de mthodes. de tout lment de modlisation susceptible davoir un comportement
4 - 88
4 - 89
Les tats
Un tat se caractrise par sa dure et sa stabilit, il reprsente une conjonction instantane des valeurs des attributs d'un objet
4 - 90
Les tats
Par nature, les automates tats finis sont non ambigus. Ils possdent
un seul tat initial et de 0 N tats finaux
4 - 91
C o nta c te rP o ur * *
P ersonne
N om P r n o m P ro fe s s io n
tra valle rP o ur i 00 ..
P roposition
Socit
Dans le Diagramme de classe: - Un objet Personne possde un Nom, Prnom, une Profession - Il travaille ou non pour une socit. - Il peut tre sollicit par dautres ou par AMPE pour une ou plusieurs propositions de postes
4 - 92
Si lon sintresse de prs aux tats de lobjet Personne, on peut dire qune personne passe par 3 tats dpendant : - De la valeur de lattribut (variable dinstance):Profession. - De liens de cet objet avec un objet socit et avec un ou plusieurs objets proposition
Les trois tats de lobjet personne sont: 1- Employ (Actif): 2- Demandeur demploi: 3- En Phase dembauche
4 - 93
Les transitions
Une transition est le changement dtat dun objet (dun tat un autre) caus par un vnement. Les diagrammes dtats sont des graphes orients Les tats sont relis par des relations orientes, appeles transitions
Etat A Etat B
Les transitions indiquent les parcours possibles dans le graphe Les transitions sont reprsents par des flches portant le nom et les paramtres des vnements associs
4 - 94
Les vnements
Le passage d un tat un autre seffectue lorsquune transition est dclenche par un vnement Contrairement aux tats qui ont obligatoirement une certaine dure, lvnement est instantan et doit tre trait immdiatement Un objet reoit un vnement et passe dun tat source ltat cible dune transition
4 - 95
Pour prciser la notion dvnement, considrons lobjet Personne tel quil a t dans lexemple prcdent.
Le licenciement effectu par une socit. Larrive dune proposition en provenance dune socit. Lattribution dun poste dans une socit. La dmission dcide par lemploy.
4 - 96
ArriveProposition
Actif
Dmission
AttributionEmploi Transition
Licenciement ArriveProposition
Demandeur Emploi
RefusEmploi
En Phase Emploi
tat
4 - 97
Linvocation d une mthode Linstanciation ou la destruction dun objet La vrification dune condition Le temps qui passe
Capture du login
Capture du password
4 - 98
Expression boolenne qui conditionne le dclenchement dune transition lorsquun vnement survient Une garde est value au moment du dclenchement de lvnement
si elle est vrai la transition sopre, sinon lvnement est perdu.
Inscrite entre [ ]
Appuyer sur une touche [ touche != tab & touche != entrer ]
Capture du login
4 - 99
Les gardes renforcent l aspect dterministe de l automate (surtout dans le cas o un vnement
dclenche potentiellement plusieurs transitions)
Exemple :
dispositif de rgulation de temprature
INACTIF
FROID
CHAUD
4 - 100
Lien entre les oprations dans les diagramme de classes (ou objet) et les vnements dans les diagrammes dtatstransitions Les actions correspondent
une gnration de signaux (vnements) l invocation de mthodes disponibles dans l'objet dont on reprsente les tats.
Prcde du signe /
4 - 101
On peut aussi associer une action l vnement qui dclenche une transition.
Exemple : il pleut / mettre les essuies glace
Appuyer sur une touche [ touche != tab & touche != entrer ] / affiche caractre
Capture du login
Etat
entry / Action 1 do / Action 3 event e / Action 4
exit / Action 2
4 - 103
ETAT0
- Entry /Signer contrat de travail - Do / assurer fonction - Arriv propos r e ition /pondre la Proposition - Mutation / changer affectation d
4 - 104
Les tats dun objet peuvent correspondre des niveaux de granularit diffrents. Plusieurs sous-tats peuvent tre associs un tat, ils permettent de le dtailler Ltat
Act AuTravail if
PrendreCong(NbrJoursCongePasss) RepredreTravail [NbrJrsRestant >= NbrJoursCongPasss]
EnCong
4 - 105
annuler
Appuyer sur tab Bouger curseur sur password / afficher curseur sur password
Appuyer sur shift + tab Bouger curseur sur login / afficher curseur sur login
Authentification
do / valider login et password
Capture du password
Appuyer sur une touche [ touche != tab & touche != entrer ] / affiche caractre
4 - 106
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4 - 107
Diagramme de composants
Dcrit limplantation physique dune application, son architecture statique Les relations entre composants matrialisent les dpendances Se rvlent trs utiles pour des systmes complexes
4 - 108
Le composant
Modlise un lment implment dans le systme (source, binaire, excutable, fichier, table ) Peut tre enrichi dune interface dfinissant les services offerts aux autres composants Ils peuvent tre organiss en paquetages dfinissant des sous-systmes
Composant
4 - 109
La notion de composant reste trs gnrale UML Propose plusieurs strotypes pour enrichir et prciser les composants
<<document>> document divers <<excutable>> programme excutable <<bibliothque>> bibliothque <<fichier>> fichier de sources ou donnes <<EJB>> composant dans le monde JAVA <<ActiveX>>
4 - 110
Les modules
Composants strotyps Servent stocker des lments utiliss dans la fabrication des applications informatiques (fichier source, bibliothques, package)
4 - 111
Processus et thread
Il s agit de composants strotyps (<<processus>>, <<thread>>) ayant leur propre flux de contrle Processus
programme qui s excute dans un espace d adressage virtuel indpendant de celui du processus voisin
Thread
programme qui sexcute dans un processus, et partage les ressources du processus avec les autres thread du processus
4 - 112
Matrialisent l usage fait par un composant des services offerts par les autres composants Les dpendances entre composants permettent de mettre en vidence :
les contraintes de compilation la rutilisation de composants les appels inter composants
4 - 113
Interface
Les composants communiquent entre eux via des interface Ces interfaces sont reprsentes par
4 - 114
Exemple
Back-office bancaire
Systme denvoi
Comptabilit
4 - 115
Les diagrammes
Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes Diagrammes
de cas dutilisation dactivits de squences de collaborations de classes de packages dobjets dtats de composants de dploiement
4 - 116
Diagramme de dploiement
4 - 117
Les nuds
Les ressources matrielles (serveur, priphrique, personnel) sont reprsentes par des nuds Le nud peut possder des attributs (exemple: capacit de stockage, mmoire )
Nud
4 - 118
Les nuds sont connects entre eux laide dun lien de communication La nature des lignes de communication et leurs caractristiques peuvent tre prcises
TCP / IP AS400 Serveur UNIX
4 - 119
Exemple
PC
IHM
Back-office bancaire
AS400
TCP / IP TCP / IP
Systme de commande
Server UNIX
Systme denvoi
Comptabilit
4 - 120