Documente Academic
Documente Profesional
Documente Cultură
UML (2)
Rappel sur le modle statique : classe / objet Modle dynamique les diagrammes tat - transition les diagrammes de squences IHM (sous Windows, HTML) Extension du modle de classes : le concept de gnralisation/spcialisation. Hritage. Polymorphisme. Implantation de lhritage en relationnel (SGBD) Liens entre modles statique et dynamique : Cohrence du modle
1
Michel Tollenaere
U.M.L. partie 2
cas d'utilisation
Cas dutilisation une fonctionnalit attendue du systme (VEGA2) par les diffrents acteurs. Diagramme de Classes
objet 1
message
Diagramme de squence Chaque cas d'utilisation apparat comme un scnario, dcrit par un ou plusieurs diagrammes de squence.
objet 4
objet 2
Un diagramme de squences montre les interactions entre les acteurs et le systme selon un point de vue temporel pour accomplir une fonctionnalit attendue du systme (un cas d utilisation). Cest une ensemble de messages changs entre les acteurs et le systme, ordonns chronologiquement.
2
Michel Tollenaere
U.M.L. partie 2
3
Michel Tollenaere
U.M.L. partie 2
commande
num date adresse livraison CalculMontant () ajout article modifier () paye comporte> 1 .. *
article
* code dsignation prix-U rayon ss-rayon
Ligne-Cmd
quantit
4
Michel Tollenaere
U.M.L. partie 2
article commande
comporte> 1 .. *
1: lignecmd 1: lignecmd
CMD003 :commande CMD007 :commande Pierre Dupond :client Jacky Durand :client 5
Michel Tollenaere
1: lignecmd
U.M.L. partie 2
commande Association
comporte> 1 .. *
Ligne-Cmd
article
Classe
Conceptualise
1: lignecmd 1: lignecmd
Photosmart50 0 :article
Illustre
RAM 512MO :article Compaq tabletPC :article Dell Lat400 :article Toshiba SD300 :article
2: lignecmd 1: lignecmd
Objet
1: lignecmd
6
Michel Tollenaere
U.M.L. partie 2
commande
num date adresse livraison CalculMontant () ajout article modifier () paye comporte> 1 .. *
article
* code dsignation prix-U
rayon ss-rayon
Ligne-Cmd
quantit
On peut affiner le modle au niveau de limplantation des articles (trs utile pour dfinir les tournes de constitution des commandes)
7
Michel Tollenaere
U.M.L. partie 2
commande
num date adresse livraison
article
* comporte> 1 .. * code dsignation prix-U
CalculMontant () Faut il dfinir lappartenance du ajout article modifier sous Passe commande () rayon au rayon ??() paie commande (cmd) paye
rayon ss-rayon
Ligne-Cmd
quantit comporte *
Sous rayon
Rayon emplacement 1 Implantation contient>
U.M.L. partie 2
rayon ss-rayon
comporte *
Sous rayon
Rayon emplacement nom 1 contient> Implantation
9
Michel Tollenaere
U.M.L. partie 2
rayon ss-rayon
comporte *
Rayon
Nom emplacement 1 *
Sous rayon
Rayon emplacement nom 1 contient> Implantation
10
Michel Tollenaere
U.M.L. partie 2
client
nom prnom adresse tlphone code postal Passe commande () paie commande (cmd) 1 Passe une> 0 .. *
commande
num date adresse livraison CalculMontant () ajout article modifier () paye comporte> 1 .. *
article
* code dsignation prix-U rayon ss-rayon
Ligne-Cmd
quantit
U.M.L. partie 2
Modle Dynamique
Diagramme dtat-transition Diagramme de squences
12
Michel Tollenaere
U.M.L. partie 2
Diagramme dtats-Transition
Description des squences possibles dtats et dactions par lesquels un objet peut passer tout au long de sa vie. Ces squences rsultent de sa raction des vnements discrets. Elments du diagramme : tat : situation dun objet un moment donn transition : connexion entre deux tats, permettant le passage dun tat lautre
13
Michel Tollenaere
U.M.L. partie 2
Diagramme dtat-transition
vnement : occurrence dune situation donne dans le domaine du systme qui dclenche la transition garde : condition boolenne qui valide ou non le dclenchement dune transition lors de loccurrence dun vnement (cas de plusieurs transitions exclusives dclenches par le mme vnement) action : opration excute pendant que lobjet est dans un tat donn ou lorsque une transition est dclenche (correspondant des oprations dclares dans la classe de lobjet destinataire). Une action dun tat est dite activit quand lopration associe a un temps dexcution non ngligeable (do : nom_opration) (exemple notification)
14
Michel Tollenaere
U.M.L. partie 2
En prparation
tat initial
do / ajout article
Livraison effectue Livre do / attente paiement paiement effectu Paye 10 ans aprs paiement
tat final
tat final
15
Michel Tollenaere
U.M.L. partie 2
un attribut Etat de type liste droulante dont le contenu correspond aux valeurs des tats du diagramme
16
Michel Tollenaere
U.M.L. partie 2
17
Michel Tollenaere
U.M.L. partie 2
18
Michel Tollenaere
U.M.L. partie 2
Diagramme dtat-transition
Exemple
personne
nom prnom age adresse tlphone code postal En activit
Plus de 60 ans
socit
est * employe 0..1 par> n SIREN Perte nom C.A. d emploi Implantation
do: travailler
Embauche
A la retraite
Plus de 60 ans
Diagramme d tats-transitions
Les personnes ne possdent pas toutes un emploi et se trouvent, un moment donn, dans un des tats suivants : en activit, au chmage, la retraite Ltat d une personne donne est dtermin selon son ge et la prsence ou non dun lien vers une socit.
19
Michel Tollenaere
U.M.L. partie 2
Diagramme dtat-transition
Une classe peut possder plusieurs diagrammes dtat (selon le point de vue examin). Exemple, pour une personne, ltat matrimonial et ltat professionnel.
Les diagrammes dtat-transition peuvent tre imbriqus et hirarchiss. Exemple : pour une machine, (cf photocopieuse, imprimante) commande, livre, qualifie, en service, en maintenance, au rebut, en service est dtaille par les diffrents lments du cycle de fonctionnement
20
Michel Tollenaere
U.M.L. partie 2
Diagramme de Squences
Niveau 1 : diagramme de squences fonctionnel = = interactions acteur(s) systme dans le cadre dun use case Niveau 2 : diagramme de squences technique = = interactions acteur IHM - objets systme ou objets systme/ objets systme dans le cadre dun use case Pour chaque cas dutilisation, un ou plusieurs scnario peut tre dtaill chacun par un diagramme de squences. Diagramme de squence : exprime la squence des interactions entre objets du systme selon un point de vue temporel, pour raliser le cas dutilisation.
21
Michel Tollenaere
U.M.L. partie 2
Objet 2
Objet 3
5 : message
4 : message
22
Michel Tollenaere
U.M.L. partie 2
Objet 2
2 : message synchrone 3 : message de cration 5: message 6 : [condition B] message 7 : message rflexif 8 : message de destruction 4: message
Objet 3
9 : message asynchrone
message synchrone: lmetteur est bloqu et attend que lappel ait fini de traiter le message (message 1) message asynchrone: lmetteur nest pas bloqu et peut continuer son excution (message 6) Un message rflexif indique souvent un point d entre dans une activit de plus bas niveau qui s exerce entre objets contenus par l objet composite (message 7)
23
Michel Tollenaere
U.M.L. partie 2
Objet 2
2 : message synchrone 3 : message de cration 5: message 6 : [condition B] message 7 : message rflexif 8 : message de destruction 4: message
Objet 3
9 : message asynchrone
Un message dont les dlais de transmission sont non ngligeables est matrialis par une flche oblique (message 4) Messages conditionns : flches prenant leur origine au mme instant avec des conditions mutuellement exclusives (messages 1 et 6) Possibilit de complments d informations sous forme de texte libre ou de pseudocode ct du diagramme U.M.L. partie 2
24
Michel Tollenaere
Objet 2
2 : message synchrone 3 : message de cration 5: message 6 : [condition B] message 7 : message rflexif 8 : message de destruction 4: message
Objet 3
9 : message asynchrone
Priode d activit : temps pendant lequel un objet effectue une action, directement ou par l intermdiaire d un autre objet sous-traitant Des contraintes temporelles peuvent tre exprimes en graduant la ligne de vie (pour dire par exemple: 10 secondes plus tard )
25
Michel Tollenaere
U.M.L. partie 2
Diagramme de Squences
Appelant
Ligne tlphonique dcroche tonalit numrotation indication de sonnerie sonnerie dcroche all
Appel
26
Michel Tollenaere
U.M.L. partie 2
27
Michel Tollenaere
U.M.L. partie 2
28
Michel Tollenaere
U.M.L. partie 2
Nouvelle mission
29
Michel Tollenaere
U.M.L. partie 2
I.H.M.
sous Windows html tendus
30
Michel Tollenaere
U.M.L. partie 2
U.M.L. partie 2
32
Michel Tollenaere
U.M.L. partie 2
33
Michel Tollenaere
U.M.L. partie 2
Gnralisation : Relation non rflexive : une classe ne peut driver dellemme Relation non symtrique : si une une voiture est une sorte de vhicule, alors le vhicule ne peut pas tre une sorte de voiture Relation transitive : si voiture est une sorte de vhicule terrestre qui elle mme est une sorte de vhicule alors voiture est une sorte de vhicule
34
Michel Tollenaere
U.M.L. partie 2
GENERALISATION
Super-classe Animal
Gnralisation
Spcialisation
Chat
Chien
Raton laveur
35
Sous-classe
U.M.L. partie 2
COHERENCE
Michel Tollenaere
GENERALISATION
CLASSES, PAQUETAGES, CAS D'UTILISATION EST UN A => => GENERALISATION COMPOSITION
GENERALISATION
=>
HERITAGE
U.M.L. partie 2
GENERALISATION
Tapis Vhicule MULTIPLE Super-classe
Super-classe
Terrestre
Arien
U.M.L. partie 2
GENERALISATION
DISCRIMINANT Motorisation
Vhicule
DISCRIMINANT
Milieu
A voile
A moteur
Terrestre
Marin
38
Michel Tollenaere
U.M.L. partie 2
GENERALISATION
Champignon
Pied bleu
39
Michel Tollenaere
Bolet de loup
U.M.L. partie 2
GENERALISATION
Vhicule Motorisation {Inclusif} A voile A moteur Terrestre Marin Milieu
Ptrolette
40
Michel Tollenaere
U.M.L. partie 2
GENERALISATION
Cours Complte Incomplte
{Incomplte}
Maths
Franais
Gographie
41
Michel Tollenaere
U.M.L. partie 2
GENERALISATION
Vue partielle Cours
Maths
...
Gographie
42
Michel Tollenaere
U.M.L. partie 2
CLASSE ABSTRAITE
Classe Abstraite
Non instanciable Sert de Type pour manipuler les objets instances d'une (ou plusieurs) de leurs sous-classes Proprit Abstraite dfinie pour tous les lments gnralisables Proprit Abstraite dfinie aussi pour une opration
43
Michel Tollenaere
U.M.L. partie 2
Rayon
*
Sous rayon
On ne factorise pas les attributs (Nom, emplacement) Il faudra coder 3 fois les accs communs dfinis dans la classe implantation
44
Michel Tollenaere
U.M.L. partie 2
Implantation
1
Rayon
Sous rayon
*
Rayon : entier
U.M.L. partie 2
<<rep>> schema
<<rep>> EM
sous-ensemble
Carte electronique
Micro-processeur
etiquette
composant
Acc essoires
tiquette vierge
Documentation comp. inter ne comp. externe comp. exter ne comp. interne conditionnement
soft
<<rep>> CdC
<<rep>> notice
<<rep>> caractristiques
<<rep>> M aster
46
Michel Tollenaere
U.M.L. partie 2
47
Michel Tollenaere
U.M.L. partie 2
cas d'utilisation
Acteur 1
cas d'utilisation
cas d'utilisation
Nom emplacement
Acteur 2
Rayon Nom emplacement
t a t i n i t i a l
Pa ye
t a t f i n a l
48
Michel Tollenaere
U.M.L. partie 2