UML: La Notation LeS NotationSselsek.free.fr/eloker/miage/cours M1/uml/UML-VisionGlobale.pdf ·...
Transcript of UML: La Notation LeS NotationSselsek.free.fr/eloker/miage/cours M1/uml/UML-VisionGlobale.pdf ·...
http://www-lsr.imag.fr/users/Ioannis.Parissis Jean-Marie Favre, Ioannis Parissis ©http://www-adele.imag.fr/~jmfavre
UML: La NotationUML: La Notation LeS NotationS LeS NotationS
2http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
La notation UML ?La notation UML ?
Unified Modeling Language Unified Modeling Language ??
LeLeSS notationnotationSS UML : plusieurs notations UML : plusieurs notations
Notations graphiques + notation textuelleNotations graphiques + notation textuelle Des objets de conceptions : texte et graphismes éventuelsDes objets de conceptions : texte et graphismes éventuels Visualisables dans des diagrammes : une vue particulière et standardiséeVisualisables dans des diagrammes : une vue particulière et standardisée
regroupant des objets de conceptionregroupant des objets de conception
Signification précise (dans un contexte donné et avec la sémantiqueSignification précise (dans un contexte donné et avec la sémantiquestandard)standard)
Notation standard (mais pas toujours respectée)Notation standard (mais pas toujours respectée) Notation très générale (mais pas toujours suffisante)Notation très générale (mais pas toujours suffisante) Notation extensible (via un méta-modèle et un méta-langage)Notation extensible (via un méta-modèle et un méta-langage)
3http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
C lien t
1 ..4
0 ..*
titu la ires
C o n s o rtium
Comp te
n um é ros o ld e...
1 ..*
0 ..1
1
Banquenumé ronom
D is trib u te u r
0 ..*
1
0 ..*
1 ..*
s ig na ta ire
1
0 ..*
C a rte B le u e
C od ere tra itM ax
1 ..*
E s tA c c e p té P a r>
v ire m e n tP o s s ib le
0 ..*
c1:
Compt
ec2:
Compt
e
paul :
Cli
entpi
err
e:
Cli
ent
mari
e:
Cli
ent
c3:
Compt
e
titul
air
estit
ul
air
es
:Cart
eBl
eue
titul
air
es
titul
air
es
si
gnat
air
e
:Cart
eBl
eue
sophi
e:
Cli
ent
:Banque
:Banque
fred:
Cli
ent
c4:
Compt
e
titul
air
es
:Banque
si
gnat
air
e
:Consorti
um
:Consorti
um
:Di
stri
but
eur
:Cart
eBl
eue
si
gnat
air
e
:Di
stri
but
eur
Est
Accept
éPar
>
Est
Accept
éPar
>
Est
Accept
éPar
>
le c o m p te d e P .le d is trib . la b a n q u ep a u l
re tire r 5 0 0 fr
d é b ite r 5 0 0 fr
la c a rte d e P .
lire n ° c o m p te
la re s e rv e
re tire r d e 5 0 0 fr s u r le c o m p te n
s o rtir 5 b ille ts d e 1 0 0 fr
p re n d re la c a rte
c o n fi rm e r
le c o m p te d e p a u l
le d is trib u te u r la b a n q u e
la c a rte d e P .
la re s e rv e d e b ille ts
p a u l
4 : d é b ite r(5 0 0 )1 : re tire r 5 0 0 fr
2 : lire n ° d e c o m p te
5 : c o n fi rm e r
6 : s o rtir 5 b ille t d e 1 0 0 fr
3 : re tire r 5 0 0 fr s u r c o m p te n
E n a tte n te E n a tte n te d u c o d e
E n v é rifi c a tio n
E n a tte n te d u m o n ta n t
c a rte in s é ré e
c o d e fra p p ém a u v a is c o d e
E n d is trib u tio n
c o d e b o n
E n a tte n te re tra it c a rte
c a rte re tiré e
m o n ta n t c o rre c t
m o n ta n t in c o rre c t
b ille ts re tiré s
LeS notationS UML en vracLeS notationS UML en vrac
Diagrammes des cas dDiagrammes des cas d ’ ’utilisationutilisation Diagrammes de classesDiagrammes de classes Diagrammes d'objetsDiagrammes d'objets Diagrammes de séquencesDiagrammes de séquences Diagrammes de collaborationDiagrammes de collaboration Diagrammes dDiagrammes d’é’étatstats Diagrammes dDiagrammes d’’activitésactivités Diagrammes de composantsDiagrammes de composants Diagrammes de déploiementDiagrammes de déploiement Langage de contraintes (OCL)Langage de contraintes (OCL) Langage d'actionsLangage d'actions Langage textuelsLangage textuels ……
4http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagrammes et modèlesDiagrammes et modèles
Un Un diagrammediagramme est une vue graphique (partielle) sur un modèle est une vue graphique (partielle) sur un modèle Un modèle est décrit par plusieurs diagrammesUn modèle est décrit par plusieurs diagrammes
C lien t
1 ..4
0 ..*
titu la ires
C o n s o rtium
Comp te
n um é ros o ld e...
1 ..*
0 ..1
1
Banquenumé ronom
D is trib u te u r
0 ..*
1
0 ..*
1 ..*
s ig na ta ire
1
0 ..*
C a rte B le u e
C od ere tra itM ax
1 ..*
E s tA c c e p té P a r>
v ire m e n tP o s s ib le
0 ..*
paul :
Cli
entpi
err
e:
Cli
ent
titul
air
estit
ul
air
es
:Cart
eBl
eue
si
gnat
air
e
fred:
Cli
ent
c4:
Compt
e
titul
air
es
:Banque
:Consorti
um
:Cart
eBl
eue
si
gnat
air
e
:Di
stri
but
eur
Est
Accept
éPar
>
le c o m p te d e P .le d is trib . la b a n q u ep a u l
re tire r 5 0 0 fr
d é b ite r 5 0 0 fr
la c a rte d e P .
lire n ° c o m p te
la re s e rv e
re tire r d e 5 0 0 fr s u r le c o m p te n
s o rtir 5 b ille ts d e 1 0 0 fr
p re n d re la c a rte
c o n fi rm e r
C o n s o rtium
Comp te
n um é ros o ld e...
1 ..*
0 ..1
1
Banquenumé ronom
1
0 ..*
1 ..*
C a rte B le u e
C od ere tra itM ax
Cli
ent
C o n s o rtiu m
Compt
enumé roso lde...
Banquenuméronom
D is trib u teu r
C a rteB le u
e
Codere tra itMax
Cli
ent
D is trib u teu r
C a rteB le u
e
Codere tra itMax
C a rteB le u
e
Codere tra itMax
C a rteB le u
e
Codere tra itMax
Cli
ent
D is trib u teu r
Cli
ent
5http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagrammes et modèlesDiagrammes et modèles
Un même élément peut apparaître ou être référencé dans plusieursUn même élément peut apparaître ou être référencé dans plusieursdiagrammes, sous des formes différentesdiagrammes, sous des formes différentes
C lien t
1 ..4
0 ..*
titu la ires
C o n s o rtium
Comp te
n um é ros o ld e...
1 ..*
0 ..1
1
Banquenumé ronom
D is trib u te u r
0 ..*
1
0 ..*
1 ..*
s ig na ta ire
1
0 ..*
C a rte B le u e
C od ere tra itM ax
1 ..*
E s tA c c e p té P a r>
v ire m e n tP o s s ib le
0 ..*
paul :
Cli
entpi
err
e:
Cli
ent
titul
air
estit
ul
air
es
:Cart
eBl
eue
si
gnat
air
e
fred:
Cli
ent
c4:
Compt
e
titul
air
es
:Banque
:Consorti
um
:Cart
eBl
eue
si
gnat
air
e
:Di
stri
but
eur
Est
Accept
éPar
>
le c o m p te d e P .le d is trib . la b a n q u ep a u l
re tire r 5 0 0 fr
d é b ite r 5 0 0 fr
la c a rte d e P .
lire n ° c o m p te
la re s e rv e
re tire r d e 5 0 0 fr s u r le c o m p te n
s o rtir 5 b ille ts d e 1 0 0 fr
p re n d re la c a rte
c o n fi rm e r
C o n s o rtium
Comp te
n um é ros o ld e...
1 ..*
0 ..1
1
Banquenumé ronom
1
0 ..*
1 ..*
C a rte B le u e
C od ere tra itM ax
Cli
ent
C o n s o rtiu m
Compt
enumé roso lde...
Banquenuméronom
D is trib u teu r
C a rteB le u
e
Codere tra itMax
Cli
ent
D is trib u teu r
C a rteB le u
e
Codere tra itMax
C a rteB le u
e
Codere tra itMax
C a rteB le u
e
Codere tra itMax
Cli
ent
D is trib u teu r
Cli
ent
6http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagramme
Objets
Cas d'utilisation
Collaboration
Composants Déploiement
ActivitéClasses Séquence
Etats-Transitions
Types de diagrammesTypes de diagrammes
7http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Vue Conception de SIVue Conception de SI
ÉtatÉtatClasseClasseObjetsObjetsComposantsComposantsDéploiementDéploiement
InteractionInteractionActivitéActivité
InterneInterne
ÉtatÉtatClassesClassesObjetsObjets
FluxFluxCas dCas d’’utilisationutilisationInteractionInteractionActivitéActivité
ExterneExterne
GénétiqueGénétiqueOrganiqueOrganiqueFonctionnelFonctionnel
8http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagramme
Objets
Cas d'utilisation
Collaboration
Composants Déploiement
ActivitéClasses Séquence
Etats-Transitions
DiagrammesDiagrammes
lien d’héritage :«est un diagramme»
9http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Vue Vue fonctionnelle fonctionnelle externeexterne diagrammes de diagrammes de cas dcas d’’utilisationutilisation : acteurs et utilisation du système : acteurs et utilisation du système
diagrammes de diagrammes de collaboration, decollaboration, de séquence ou dséquence ou d’’activitéactivité entre acteurs externes ouentre acteurs externes ou
internes et fonctions du systèmeinternes et fonctions du système
[diagrammes de [diagrammes de fluxflux : acteurs externes, fonctions et flux entre eux]: acteurs externes, fonctions et flux entre eux]
Vue Vue organique organique externeexterne diagramme de diagramme de classesclasses : classes et relations statiques : classes et relations statiques
diagramme des diagramme des objetsobjets : objets et liens : objets et liens
Diagramme
Cas d'utilisation
Collaboration
Composants
Classes Objets Séquence
Etats-transitions Déploiement
Activité
10http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Vue Vue fonctionnelle fonctionnelle interneinterne diagramme de diagramme de collaborationcollaboration entre objets (y compris acteurs): vision entre objets (y compris acteurs): vision
spatiale des interactionsspatiale des interactions
diagramme de diagramme de séquence séquence entre objets : vision temporelle des interactionsentre objets : vision temporelle des interactions
Vue Vue génétique génétique interne ou externeinterne ou externe diagramme diagramme dd’é’états-transitionstats-transitions : comportement des classes: comportement des classes
Diagramme
Cas d'utilisation
Collaboration
Composants
Classes Objets Séquences
Etats-transitions Déploiement
Activité
11http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Vue Vue organiqueorganique interne du logiciel interne du logiciel diagrammes de diagrammes de classesclasses physiquesphysiques
diagramme de diagramme de composantscomposants : : réalisationréalisation
diagramme de diagramme de déploiementdéploiement : : implantation, distribution implantation, distribution
Diagramme
Objets
Cas d'utilisation
Collaboration
Composants Déploiement
ActivitésClasses Séquence
Etats-Transitions
12http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagrammes des cas dDiagrammes des cas d’’utilisationutilisation
Client
AssurerLaMaintenance Technicien
AjouterDesBillets Transporteur
DeBillets
DistributeurDeBillet
FaireUnVirement
RetirerDeLArgent
ConsulterSonCompte
13http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagrammes de classesDiagrammes de classes
Client1..4 0..*titulaires
Consortium
Comptenumérosolde...
1..*
0..1
1
Banquenuméronom
Distributeur 0..*
1
0..*
1..*
signataire1
0..* CarteBleue
CoderetraitMax
1..*AcceptéPar>
14http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagrammes dDiagrammes d’’objetsobjets
c1 : Compte
c2 : Compte
paul : Client
pierre : Client
marie : Client c3 : Compte
titulaires
titulaires
: CarteBleue
titulaires
titulaires
signataire
: CarteBleue
sophie : Client
: Banque
: Banque
fred : Client c4 : Comptetitulaires
: Banque
signataire
: Consortium
: Consortium
: Distributeur
: CarteBleuesignataire
: Distributeur
EstAcceptéPar>
EstAcceptéPar>
EstAcceptéPar>
15http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagrammes de séquenceDiagrammes de séquence
le compte de P.le distrib. la banquepaul
retirer 500 fr
débiter 500 fr
la carte de P.
lire n° compte
la reserve
retirer 500 fr sur le compte n
sortir 5 billets de 100 frprendre la carte
confirmer
16http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagrammes de collaborationDiagrammes de collaboration
le compte de paul
le distributeur la banque
la carte de P.
la reserve
paul
4 : débiter(500)1 : retirer 500 fr
2 : lire n° de compte
5 : confirmer
6 : sortir 5 billet de 100 fr
3 : retirer 500 fr sur compte n
17http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
En attente En attente du code
En vérification
En attente du montant
carte insérée
code frappémauvais code
En distribution
code bon
En attente retrait carte
carte retirée
montant correct
montant incorrect
billets retirés
Diagrammes dDiagrammes d’é’étatstats
18http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Client Vendeur Livreur
Se renseigner
Etablir un devis
Commander
Facturer
Payer Livrer
Diagrammes dDiagrammes d’’activitésactivités
19http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Diagrammes de composantsDiagrammes de composants
20http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
distributeur
Serveur
ServeurWebPC
<<S1SLT>>
<<https>>
<<tcpip>>
Palm
Diagrammes de déploiementDiagrammes de déploiement
21http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Vue langageVue langageDiagrammes Diagrammes et et objets conceptuels centrauxobjets conceptuels centraux
9 types de 9 types de diagrammesdiagrammes Diagramme Diagramme de de cas dcas d’’utilisationutilisation Diagrammes Diagrammes ““objetobjet””
Diagramme Diagramme de de classeclasse Diagramme dDiagramme d’’objetobjet
Diagrammes Diagrammes de de comportementcomportement Diagramme Diagramme dd’é’étattat Diagramme dDiagramme d’’activitéactivité Diagrammes dDiagrammes d’’interactioninteraction
Diagramme Diagramme de de séquenceséquence Diagramme Diagramme de collaborationde collaboration
Diagrammes dDiagrammes d’’implantationimplantation Diagramme Diagramme de de composantscomposants Diagrammes Diagrammes de de déploiementdéploiement
Acteur Acteur et et cas dcas d’’usageusage
ClasseClasse
ObjetObjet
État État et et événementévénement
ActivitéActivité
ComposantComposant
NoeudNoeud
22http://www-adele.imag.fr/~jmfavre Jean-Marie Favre, Ioannis Parissis ©http://www-lsr.imag.fr/users/Ioannis.Parissis/
Principaux éléments graphiquesPrincipaux éléments graphiques
classe ou objet
cas d'utilisation
état
état initial/final
interface
paquetage
association
spécialisation
raffinement
message asynchrone
message synchrone
agrégation
composition
dépendance ou retour demessage synchrone
note