Académique Documents
Professionnel Documents
Culture Documents
Methodologie UML Cours Du Cycle B Du Cnam
Methodologie UML Cours Du Cycle B Du Cnam
doc
______________________________________________________________________________
Mthodologie des
systmes d'information -
UML
Cours du Cycle Probatoire
UML
UP
___________________________________________________________________
DI GALLO Frdric Page 1 15/10/200808
8820448.doc
______________________________________________________________________________
METHODOLOGIES
DES SYSTEMES
D'INFORMATION :
UML
___________________________________________________________________
DI GALLO Frdric Page 2 15/10/200808
8820448.doc
______________________________________________________________________________
UP - LE PROCESSUS UNIFI............................5
I. LE PROCESSUS DE DVELOPPEMENT : NOUVELLE APPROCHE.....................................................5
II. LE PROCESSUS UNIFI : CADRE GNRAL............................................................................6
III. LE PROCESSUS UNIFI EST PILOT PAR LES CAS DUTILISATION..............................................6
3.1) Prsentation.......................................................................................................6
3.2) Exemple: guichet de banque..............................................................................6
IV. LE PROCESSUS UNIFI EST CENTR SUR LARCHITECTURE......................................................8
4.1) Liens entre cas dutilisation et architecture ?....................................................8
4.2) Marche suivre :................................................................................................8
V. LE PROCESSUS UNIFI EST ITRATIF ET INCRMENTAL............................................................8
5.1) Avantages dun processus itratif contrl........................................................9
VI. LE CYCLE DE VIE DU PROCESSUS UNIFI............................................................................9
6.1) Prsentation du cycle de vie de UP..................................................................10
6.2) Exemple sur les diffrents modles...................................................................11
VII. CONCLUSION : UN PROCESSUS INTGR.........................................................................12
___________________________________________________________________
DI GALLO Frdric Page 3 15/10/200808
8820448.doc
______________________________________________________________________________
2.1) Les classes........................................................................................................50
2.2) Les associations................................................................................................51
III. LE DIAGRAMME DE COLLABORATION...............................................................................56
3.1) Interaction........................................................................................................56
3.2) De nouveaux strotypes de classe..................................................................56
3.3) Les Messages :.................................................................................................58
3.4) Exercice TVServices (parties III et IV).............................................................60
3.5) TP de synthse: Cration d'un site Web...........................................................63
___________________________________________________________________
DI GALLO Frdric Page 4 15/10/200808
8820448.doc
______________________________________________________________________________
UP - LE PROCESSUS UNIFI
UP MERISE
Cycle de vie itratif et Squentiel
incrmental
Mthode gnrique
___________________________________________________________________
DI GALLO Frdric Page 5 15/10/200808
8820448.doc
______________________________________________________________________________
Cas
d'utilisation
Acteur
Les cas dutilisation font apparatre les besoins fonctionnels et leur ensemble constitue le
modle des cas dutilisation qui dcrit les fonctionnalits compltes du systme.
On va se demander, en premier, quels sont les utilisateurs du systme (pas forcment des
utilisateurs physiques, mais plutt des rles). Ici, l'employ est aussi un client de la banque.
On a donc une personne physique pour deux rles. Nous ne sommes pas dans une approche de
type fonctionnelle mais une approche pilote par des cas d'utilisation.
___________________________________________________________________
DI GALLO Frdric Page 6 15/10/200808
8820448.doc
______________________________________________________________________________
Les cas dutilisation ne sont pas un simple outil de spcification des besoins du systme.
Ils vont compltement guider le processus de dveloppement travers lutilisation de
modles bass sur lutilisation du langage UML
A partir du modle des cas dutilisation, les dveloppeurs crent une srie de
modles de conception et dimplmentation ralisant les cas dutilisation.
Chacun des modles successifs est ensuite rvis pour en contrler la conformit
par rapport au modle des cas dutilisation.
Enfin, les testeurs testent limplmentation pour sassurer que les composants du
modle dimplmentation mettent correctement en uvre les cas dutilisation.
___________________________________________________________________
DI GALLO Frdric Page 7 15/10/200808
8820448.doc
______________________________________________________________________________
Il travaille ensuite, sur un sous ensemble des cas dutilisations identifis, ceux qui
reprsentent les fonctions essentielles du systme en cours de dveloppement.
___________________________________________________________________
DI GALLO Frdric Page 8 15/10/200808
8820448.doc
______________________________________________________________________________
Le choix de ce qui doit tre implment au cours dune itration repose sur deux facteurs :
Une itration prend en compte un certain nombre de cas dutilisation qui ensemble,
amliorent lutilisabilit du produit un certain stade de dveloppement.
Litration traite en priorit les risques majeurs.
Permet de limiter les cots, en termes de risques, aux strictes dpenses lies une
itration.
Permet de limiter les risques de retard de mise sur le march du produit dvelopp
(identification des problmes ds les premiers stades de dveloppement et non en
phase de test comme avec lapproche classique ).
Permet de prendre en compte le fait que les besoins des utilisateurs et les exigences
correspondantes ne peuvent tre intgralement dfinis lavance et se dgagent
peu peu des itrations successives
Larchitecture fournit la structure qui servira de cadre au travail effectu au cours des
itrations, tandis que les cas dutilisation dfinissent les objectifs et orientent le travail de
chaque itration. Il ne faut donc pas msestimer lun des trois concepts.
Chaque cycle se traduit par une nouvelle version du systme. Ce produit se compose dun
corps de code source rparti sur plusieurs composants pouvant tre compils et excuts et
saccompagne de manuels et de produits associs. Pour mener efficacement le cycle, les
dveloppeurs ont besoin de construire toutes les reprsentations du produit logiciel :
Tous ces modles sont lis. Ensemble, ils reprsentent le systme comme un tout. Les
lments de chacun des modles prsentent des dpendances de traabilit ; ce qui facilite
la comprhension et les modifications ultrieures.
___________________________________________________________________
DI GALLO Frdric Page 10 15/10/200808
8820448.doc
______________________________________________________________________________
dposer de l'argent
virement entre comptes
client de la banque
___________________________________________________________________
DI GALLO Frdric Page 11 15/10/200808
8820448.doc
______________________________________________________________________________
c) Diagramme de collaboration
___________________________________________________________________
DI GALLO Frdric Page 12 15/10/200808
8820448.doc
______________________________________________________________________________
Approche du
langage UML
___________________________________________________________________
DI GALLO Frdric Page 13 15/10/200808
8820448.doc
______________________________________________________________________________
UP - LE PROCESSUS UNIFI 5
I. LE PROCESSUS DE DVELOPPEMENT : NOUVELLE APPROCHE 5
II. LE PROCESSUS UNIFI : CADRE GNRAL 6
III. LE PROCESSUS UNIFI EST PILOT PAR LES CAS DUTILISATION 6
3.1) Prsentation 6
3.2) Exemple: guichet de banque 6
IV. LE PROCESSUS UNIFI EST CENTR SUR LARCHITECTURE 8
4.1) Liens entre cas dutilisation et architecture ? 8
4.2) Marche suivre : 8
V. LE PROCESSUS UNIFI EST ITRATIF ET INCRMENTAL 8
5.1) Avantages dun processus itratif contrl 9
VI. LE CYCLE DE VIE DU PROCESSUS UNIFI 9
6.1) Prsentation du cycle de vie de UP 10
6.2) Exemple sur les diffrents modles 11
a) Diagramme de cas d'utilisation: 11
b) Modle d'analyse: ralisation d'un cas d'utilisation 12
c) Diagramme de collaboration 12
VII. CONCLUSION : UN PROCESSUS INTGR 12
___________________________________________________________________
DI GALLO Frdric Page 14 15/10/200808
8820448.doc
______________________________________________________________________________
Synthse de la dmarche 29
4.3) Modlisation UML 29
Qu'est-ce qu'un modle ? 29
La modlisation UML 29
Les cas d'utilisation 30
Modlisation des classes et objets 30
Modlisation d'une classe 33
La visibilit des attributs 33
___________________________________________________________________
DI GALLO Frdric Page 15 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 16 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 17 15/10/200808
8820448.doc
______________________________________________________________________________
UML aujourd'hui : un standard incontournable
UML est le rsultat d'un large consensus (industriels, mthodologistes...).
UML est le fruit d'un travail d'experts reconnus.
UML est issu du terrain.
UML est riche (il couvre toutes les phases d'un cycle de dveloppement).
UML est ouvert (il est indpendant du domaine d'application et des langages
d'implmentation).
Aprs l'unification et la standardisation, bientt l'industrialisation d'UML :
les outils qui supportent UML se multiplient (GDPro, ObjectTeam, Objecteering,
OpenTool, Rational Rose, Rhapsody, STP, Visio, Visual Modeler, WithClass...).
XMI (format d'change standard de modles UML).
___________________________________________________________________
DI GALLO Frdric Page 18 15/10/200808
8820448.doc
______________________________________________________________________________
UML propose aussi une notation, qui permet de reprsenter graphiquement les
lments de modlisation du mtamodle.
Cette notation graphique est le support du langage UML.
___________________________________________________________________
DI GALLO Frdric Page 19 15/10/200808
8820448.doc
______________________________________________________________________________
Le processus (non couvert par UML) est une autre cl de la russite d'un projet.
Or, l'intgration d'UML dans un processus n'est pas triviale et amliorer un processus est
un tche complexe et longue. Les auteurs d'UML sont tout fait conscients de l'importance du
processus, mais l'acceptabilit industrielle de la modlisation objet passe d'abord par la
disponibilit d'un langage d'analyse objet performant et standard.
___________________________________________________________________
DI GALLO Frdric Page 20 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 21 15/10/200808
8820448.doc
______________________________________________________________________________
(si l'application se conforme au modle prsent au client, celui-ci peut difficilement
contester la validit du logiciel).
___________________________________________________________________
DI GALLO Frdric Page 22 15/10/200808
8820448.doc
______________________________________________________________________________
De plus, le fait de programmer l'aide d'un langage orient objet ne fait pas d'un
programmer un concepteur objet. En effet il est tout fait possible de produire un code
syntaxiquement juste sans pour autant adopter une approche objet. Ainsi la programmation
oriente objet implique en premier lieu une conception abstraite d'un modle objet (c'est le
rle de la mthode objet), en second plan l'implmentation l'aide d'un langage oriente
objet (tel que C++/Java/...)
Une mthode objet est donc d'une part une mthode d'analyse du problme (afin de
couvrir toutes les facettes du problmes), d'autre part un langage permettant une
reprsentation standard stricte des concepts abstraits (la modlisation) afin de constituer un
langage commun.
___________________________________________________________________
DI GALLO Frdric Page 23 15/10/200808
8820448.doc
______________________________________________________________________________
CORBA fait partie d'une vision globale de la construction d'applications rparties, appele
OMA (Object Management Architecture) et dfinie par l'OMG. Sans rentrer dans les dtails,
on peut rsumer cette vision par la volont de favoriser l'essor industriel des technologies
objet, en offrant un ensemble de solutions technologiques non propritaires, qui
suppriment les clivages techniques.
UML a t adopt (normalis) par l'OMG et intgr l'OMA, car il participe cette
vision et parce qu'il rpond la "philosophie" OMG.
___________________________________________________________________
DI GALLO Frdric Page 24 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 25 15/10/200808
8820448.doc
______________________________________________________________________________
La vue de dploiement
Cette vue trs importante dans les environnements distribus, dcrit les ressources
matrielles et la rpartition du logiciel dans ces ressources : la disposition et nature physique
des matriels, ainsi que leurs performances, l'implantation des modules principaux sur les
nuds du rseau, les exigences en terme de performances (temps de rponse, tolrance aux
fautes et pannes...).
___________________________________________________________________
DI GALLO Frdric Page 26 15/10/200808
8820448.doc
______________________________________________________________________________
Rsumons la dmarche...
Modliser une application ? Mais comme UML n'est pas un processus... Quelle dmarche
utiliser ? Trouver un "bon" modle est une tche difficile mais capitale !
1. Optez pour une approche itrative et incrmentale.
2. Centrez votre dmarche sur l'analyse des besoins des utilisateurs.
3. Prenez grand soin la dfinition de l'architecture de votre application (l'approche
"4+1" permet de mieux la cerner).
OK OK , mais en pratique ? ien qu'UML n'est pas un processus, il facilite une dmarche
d'analyse itrative et incrmentale, base sur les niveaux d'abstraction. Les niveaux
d'abstraction permettent de structurer les modles. Un micro-processus rgit les itrations
niveau d'abstraction constant. Un macro-processus rgit le passage de niveau niveau. Une
dmarche incrmentale consiste construire les modles de spcification et de conception en
plusieurs tapes (cible = catgories). Le schma ci-dessous montre les niveaux d'abstraction
principaux, qu'on peut identifier dans un processus de dveloppement logiciel :
___________________________________________________________________
DI GALLO Frdric Page 27 15/10/200808
8820448.doc
______________________________________________________________________________
Conceptualisation
L'entre de l'analyse ce niveau, est le dossier d'expression des besoins client. A ce niveau
d'abstraction, on doit capturer les besoins principaux des utilisateurs. Il ne faut pas chercher
l'exhaustivit, mais clarifier, filtrer et organiser les besoins ! Le but de la conceptualisation est
de dfinir le contour du systme modliser (de spcifier le "quoi"), de capturer les
fonctionnalits principales du systme, afin d'en fournir une meilleure comprhension (le
modle produit sert d'interface entre les acteurs du projet), de fournir une base la
planification du projet.
Analyse du domaine
L'entre de l'analyse ce niveau, est le modle des besoins clients (les "cas d'utilisation"
UML). Il s'agit de modliser les lments et mcanismes principaux du systme. On
identifie les lments du domaine, ainsi que les relations et interactions entre ces lments :
les lments du domaine sont lis au(x) mtier(s) de l'entreprise, ils sont indispensables la
mission du systme, ils gagnent tre rutiliss (ils reprsentent un savoir-faire). A ce stade,
on organise aussi (selon des critres purement logiques), les lments du domaine en
"catgories" : pour rpartir les tches dans les quipes, regrouper ce qui peut tre gnrique,
etc...
Analyse applicative
A ce niveau, on modlise les aspects informatiques du systme, sans pour autant rentrer
dans les dtails d'implmentation. Les interfaces des lments de modlisation sont dfinis
(cf. encapsulation). Les relations entre les lments des modles sont dfinies. Les lments
de modlisation utiliss peuvent tre propres une version du systme.
Conception
On y modlise tous les rouages d'implmentation et on dtaille tous les lments de
modlisation issus des niveaux suprieurs. Les modles sont optimiss, car destins tre
implments.
___________________________________________________________________
DI GALLO Frdric Page 28 15/10/200808
8820448.doc
______________________________________________________________________________
Synthse de la dmarche
Modliser une application n'est pas une activit linaire.
Il s'agit d'une tche trs complexe, qui ncessite une approche :
itrative et incrmentale (grce aux niveaux d'abstraction), car il est plus efficace de
construire et valider par tapes, ce qui est difficile cerner et matriser,
centre sur l'architecture (dfinie par la vue "4+1"), car il s'agit de la cl de vote
qui conditionne la plupart des qualits d'une application informatique,
guide par la prise en compte des besoins des utilisateurs ( l'aide des cas
d'utilisation), car ce qui motive l'existence mme du systme concevoir, c'est la
satisfaction des besoins de ses utilisateurs.
La modlisation UML
Le mta-modle UML fournit une panoplie d'outils permettant de reprsenter l'ensemble
des) lments du monde objet (classes, objets, ...) ainsi que les liens qui les relie. Toutefois,
tant donn qu'une seule reprsentation est trop subjective, UML fournit un moyen astucieux
permettant de reprsenter diverses projections d'une mme reprsentation grce aux vues.
Une vue est constitu d'un ou plusieurs diagrammes.
___________________________________________________________________
DI GALLO Frdric Page 29 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 30 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 31 15/10/200808
8820448.doc
______________________________________________________________________________
Un lien existe ds lors qu'un objet possde une visibilit vis--vis d'un autre, c'est--dire
lorsqu'un objet a un rapport direct avec un autre (appartenance, utilisation, communication,
...). Il est de plus possible d'ajouter des commentaires sur le modle sous forme de notes. Une
note est reprsente par un rectangle dont le coin suprieur droit est repli. Pour relier une
note un objet il faut utiliser un trait discontinu (en pointills).
___________________________________________________________________
DI GALLO Frdric Page 32 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 33 15/10/200808
8820448.doc
______________________________________________________________________________
publique: Les fonctions de toutes les classes peuvent accder aux donnes ou aux
mthodes d'une classe dfinie avec le niveau de visibilit public. Il s'agit du plus bas
niveau de protection des donnes
protge: l'accs aux donnes est rserv aux fonctions des classes hritires, c'est-
-dire par les fonctions membres de la classe ainsi que des classes drives
prive: l'accs aux donnes est limit aux mthodes de la classe elle-mme. Il s'agit
du niveau de protection des donnes le plus lev
___________________________________________________________________
DI GALLO Frdric Page 34 15/10/200808
8820448.doc
______________________________________________________________________________
Introduction au
langage UML
___________________________________________________________________
DI GALLO Frdric Page 35 15/10/200808
8820448.doc
______________________________________________________________________________
UP - LE PROCESSUS UNIFI 5
I. LE PROCESSUS DE DVELOPPEMENT : NOUVELLE APPROCHE 5
II. LE PROCESSUS UNIFI : CADRE GNRAL 6
III. LE PROCESSUS UNIFI EST PILOT PAR LES CAS DUTILISATION 6
3.1) Prsentation 6
3.2) Exemple: guichet de banque 6
IV. LE PROCESSUS UNIFI EST CENTR SUR LARCHITECTURE 8
4.1) Liens entre cas dutilisation et architecture ? 8
4.2) Marche suivre : 8
V. LE PROCESSUS UNIFI EST ITRATIF ET INCRMENTAL 8
5.1) Avantages dun processus itratif contrl 9
VI. LE CYCLE DE VIE DU PROCESSUS UNIFI 9
6.1) Prsentation du cycle de vie de UP 10
6.2) Exemple sur les diffrents modles 11
a) Diagramme de cas d'utilisation: 11
b) Modle d'analyse: ralisation d'un cas d'utilisation 12
c) Diagramme de collaboration 12
VII. CONCLUSION : UN PROCESSUS INTGR 12
___________________________________________________________________
DI GALLO Frdric Page 36 15/10/200808
8820448.doc
______________________________________________________________________________
Synthse de la dmarche 29
4.3) Modlisation UML 29
Qu'est-ce qu'un modle ? 29
La modlisation UML 29
Les cas d'utilisation 30
Modlisation des classes et objets 30
Modlisation d'une classe 33
La visibilit des attributs 33
___________________________________________________________________
DI GALLO Frdric Page 37 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 38 15/10/200808
8820448.doc
______________________________________________________________________________
UML est un langage de modlisation avec plusieurs objectifs qui en font un vritable outil
de communication:
- Comprendre et dcrire les besoins,
- Spcifier (un systme),
- Etablir l'architecture logicielle.
Un cas dutilisation est une manire spcifique dutiliser un systme. Cest limage
dune fonctionnalit du systme, dclenche en rponse la stimulation dun acteur
externe.
___________________________________________________________________
DI GALLO Frdric Page 39 15/10/200808
8820448.doc
______________________________________________________________________________
Cas
d'utilisation
Acteur
Acteur : entit externe qui agit sur le systme ; Le terme acteur ne dsigne pas
seulement les utilisateurs humains mais galement les autres systmes. les acteurs
sont des classificateurs qui reprsentent des rles au travers d'une certaine
utilisation (cas) et non pas des personnes physiques. Ce sont des acteurs types.
guichet
Retirer de l'argent
Client de la banque
Dposer de l'argent
Ravitailler distributeur
Rparer le distributeur
Agent de maintenance
___________________________________________________________________
DI GALLO Frdric Page 40 15/10/200808
8820448.doc
______________________________________________________________________________
A chaque fois quune instance dun acteur dclenche un cas dutilisation, un scnario est
cr : ce scnario suivra un chemin particulier dans la description dun cas dutilisation. Un
scnario ne contient pas de branche du type si la condition X est vraie alors faire Y , car
pendant lexcution la condition est soit vraie, soit fausse mais elle aura toujours une valeur.
Bien sr il est impossible de dcrire un cas dutilisation en crivant tous les scnarios,
lexhaustivit est difficile atteindre, mais il faut rpertorier les scnarios les plus
reprsentatifs afin de grer les risques. On recherchera donc le ou les scnarios nominaux et
les principaux cas dexceptions.
___________________________________________________________________
DI GALLO Frdric Page 41 15/10/200808
8820448.doc
______________________________________________________________________________
5- M. Martin prend largent.
___________________________________________________________________
DI GALLO Frdric Page 42 15/10/200808
8820448.doc
______________________________________________________________________________
Etapes de construction:
1. Les acteurs
2. Pour chaque acteur, recherche des cas d'utilisation,
3. Structuration des cas d'utilisation pour faire apparatre les comportements partags
(relation d'inclusion), les cas particuliers ou options (relation d'extension), les
gnralisations / spcialisations.
a) La relation dinclusion :
Lors de la description des cas dutilisation, il apparat quil existe des sous-ensembles
communs plusieurs cas dutilisation, il convient donc de factoriser ces fonctionnalits en
crant de nouveaux cas dutilisation qui seront utiliss par les cas dutilisation qui les avaient
en commun.
Un cas dutilisation A utilise un cas dutilisation B signifie que :
- une instance de A va engendrer une instance de B et lexcuter,
- A dpend de B,
- B nexiste pas tout seul et A nexiste pas sans B
Exemple :
Retirer de
largent include
Dposer de include
largent Sauthentifier
include
Effectuer des virements
include
Consulter solde
Les cas de base Dposer de largent , Retirer de largent , Effectuer des virements
entre comptes et Consulter solde incorporent de faon explicite le cas dutilisation
Sauthentifier , un endroit spcifi dans leurs enchanements.
___________________________________________________________________
DI GALLO Frdric Page 43 15/10/200808
8820448.doc
______________________________________________________________________________
Remarquez que dans une relation include , le cas dutilisation de base utilise
systmatiquement les enchanements provenant du cas inclus.
On utilise cette relation pour viter de dcrire plusieurs fois un mme enchanement
dactions. Ainsi on est amen factoriser un comportement commun plusieurs cas
dutilisation dans un cas dutilisation part.
b) La relation dextension
Exemple :
extend
Retenir carte
Sauthentifier
La relation d'hritage ou de gnralisation entre cas est plus subtile. La version 1.1 de
UML ne distinguait d'ailleurs pas <<extend>> et gnralisation. Cette relation est prendre
au sens classique de spcialisation, inhrent 'hritage. Ici, la gnralisation peut tre vue
aussi comme un "polymorphisme" de cas.
Rserver
voyage
Dans un systme d'agence de voyage, un acteur touriste peut participer un cas de base qui
est "Rserver voyage", qui suppose par exemple des interactions basiques au comptoir de
l'agence. Une rservation peut aussi tre ralise par tlphone ou internet. On voit qu'il ne
s'agit pas de relation <<extend>> car la rservation par Internet n'tend pas les interactions ni
les fonctionnalits du cas 'Rserver voyage". Elle les traduit diffremment. Les interactions
Internet ne sont pas une option des interactions comptoir. Par contre les deux cas "Rserver
voyage" et "Rserver voyage par Internet" sont lis : la rservation par Internet est un cas
particulier de rservation. De faon gnrale en objet, une situation de cas particulier se
traduit par une relation de gnralisation.
___________________________________________________________________
DI GALLO Frdric Page 45 15/10/200808
8820448.doc
______________________________________________________________________________
autoriss, plages horaires autorises, dure maximale hebdomadaire de visualisation
autorise appele "crdit hebdomadaire").
Travail faire:
I.l) Expliquer le diagramme ci-dessous par un texte dcrivant les informations qu'il contient
en les contextualisant dans le cadre de TVServices (deux sens possibles, ambigut ).
I.2) Quel peut-tre l'intrt de sparer les cas d'utilisation "ContrleAccsUtil" et "Identifier"
du cas d'utilisation "Administrer"?
I.3) Reprsenter par un fragment de diagramme de cas d'utilisation le fait que parmi les
acteurs sollicitant le systme, "Client" et "Administrateur" sont tous deux "Utilisateur".
Utilisateur
___________________________________________________________________
DI GALLO Frdric Page 46 15/10/200808
8820448.doc
______________________________________________________________________________
Client Administrateur
___________________________________________________________________
DI GALLO Frdric Page 47 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 48 15/10/200808
8820448.doc
______________________________________________________________________________
U M L_ D IG A LLO
R egarder m is s ion C o ns ult er m agaz ine C on s ult er lis t e im m diat em ent dis p on ible
___________________________________________________________________
DI GALLO Frdric Page 49 15/10/200808
8820448.doc
______________________________________________________________________________
Dans un premier temps cest cette dernire catgorie de classes que nous allons nous
intresser. Le diagramme de classe va tre un outil nous permettant de reprsenter le modle
du domaine. Le modle du domaine saisit les lments les plus importants pour comprendre
le contexte du systme :
- les objets mtiers (mis en uvre dans une activit professionnelle tels que les
commandes, les contrats..) ,
- les concepts du domaine modliser dont le systme doit garder une trace,
- les vnements stant produits ou devant se produire qui dclencheront un
certain comportement des objets.
b) Reprsentation
Nom de la classe
Attributs
Oprations
___________________________________________________________________
DI GALLO Frdric Page 50 15/10/200808
8820448.doc
______________________________________________________________________________
Exemple :
VEHICULE
Marque
Modle
Immatriculation
Niveau du carburant
..
Acclrer()
Vidanger()
Une classe correspond un concept global dinformation et se compose dun ensemble
dinformations lmentaires, appeles attributs de la classe qui servent la dcrire.
UML dfinit trois niveaux de visibilit pour les attributs et les oprations :
Public qui rend llment visible tous les clients de la classe,
Protg qui rend llment visible aux sous classes de la classe,
Priv qui rend llment visible la classe seule.
c) Syntaxe
Nom_attribut : type_attribut = valeur_par_dfaut
Dans un premier temps on ne retiendra comme attribut que des donnes non calcules,
cependant par commodit de gestion on pourra garder des attributs pouvant tre construits
partir dautres attributs (on rajoutera / devant lattribut dit driv).
d) Oprations
La dfinition dune classe est complte par lensemble des oprations quelle peut
excuter. Une opration est une fonctionnalit assure par la classe.
Le niveau de dtail retenir pour dcrire les oprations est fonction du niveau
davancement de ltude.
A B
___________________________________________________________________
DI GALLO Frdric Page 51 15/10/200808
8820448.doc
______________________________________________________________________________
Exemple : ENSEIGNANT
ETUDIANT SALLE
COURS
DateDbut
DateFin
b) Rle
Les extrmits dune association sont appeles rles et peuvent porter un nom. Le rle
dcrit comment une classe voit une autre classe au travers dune association.
___________________________________________________________________
DI GALLO Frdric Page 52 15/10/200808
8820448.doc
______________________________________________________________________________
GARAGE
LOCATAIRE
1
1
1..* 1..*
louer CONTRAT
BOX
1 0..1
1..* Autoriser
0..2 VEHICULE
Travail faire :
Faites une description de ce diagramme de classe en explicitant en une phrase chacune des
multiplicits.
Un box peut tre lou par au maximum un seul contrat ou peut rester non lou.
Un contrat concerne la location d'un seul box la fois.
Un box peut tre vide ou contenir au maximum 2 vhicule.
Un vhicule est autoris aller dans un box (au minimum) ou plus.
Un contrat ne concerne qu'un seul locataire.
Un locataire peut souscrire plusieurs contrat mais doit en avoir souscrit au moins un.
___________________________________________________________________
DI GALLO Frdric Page 53 15/10/200808
8820448.doc
______________________________________________________________________________
Il peut arriver que lon ait besoin de garder des informations (attributs ou oprations)
propres une association. Une classe de ce type est appele classe association.
Exemple :
LIG-COM LIVRAISON
1..* 1
Quantit
Une classe association est une classe comme une autre qui peut entretenir des relations
avec dautres classes
g) Agrgation
Une agrgation est un type particulier dassociation. Elle traduit la volont de renforcer la
dpendance entre les classes. Cest une association non symtrique dans laquelle une des
extrmits joue un rle prdominant par rapport lautre extrmit.
Attention : linverse nest pas toujours vrai ; lagrgation nimplique pas ncessairement
tous les critres ci-dessus.
1 1..*
GARAGE BOX
___________________________________________________________________
DI GALLO Frdric Page 54 15/10/200808
8820448.doc
______________________________________________________________________________
h) La composition
La composition est un cas particulier dagrgation dans laquelle la vie des composants est
lie celle de lagrgat. Dans la composition, lagrgat ne peut tre multiple. La
composition se reprsente par un losange noir.
C om m u n e
1 1 1
M ai ri e C on s e i l M u n i ci pal S e rvi ce
Une composition est une association contraignante : la suppression dun objet agrgat
entrane la suppression des objets agrgs.
i) Gnralisation :
UML emploie le terme de gnralisation pour dsigner la relation de classification entre
un lment plus gnral et un lment plus spcifique. La relation de gnralisation
signifie est un ou est une sorte de .
Instrument
La classe Instrument est une classe gnrique, elle porte les attributs communs tous les
instruments. La classe Instrument cordes est une classe spcialise qui porte les attributs
spcifiques ce type dinstrument.
Une classe spcialise peut avoir des relations avec dautres classes.
___________________________________________________________________
DI GALLO Frdric Page 55 15/10/200808
8820448.doc
______________________________________________________________________________
3.1) Interaction
La squence dactions dun scnario dun cas dutilisation dbute lorsquun acteur
invoque ce cas dutilisation en envoyant une forme quelconque de message au systme. En
fait ce nest pas le systme dans son ensemble qui va recevoir le message mais un objet
frontire (ou interface). Lobjet frontire va envoyer son tour un message un autre objet,
de sorte que les objets concerns vont dialoguer pour raliser ce cas dutilisation ou plus
prcisment un scnario de ce cas dutilisation.
___________________________________________________________________
DI GALLO Frdric Page 56 15/10/200808
Exemple : Utilisation dun diagramme de collaboration pour dcrire la ralisation du scnario retrait autoris du cas dutilisation
retirer de largent
IntGuichet/:IGuichetAccueil 2:DemanderAutorisation(Code)
Contrleur1/:CAutorisation
1:Identifier(Code)
4:AutoriserCration(ListeComptes) 3:[ContrleOK]ObtenirListe()
5:ChoixCompteMontant(Compte,Montant)
IntChoixMontant/:IGuichetMontant
ComptesMartin/:Compte
M. Martin/:Client de la banque
6:DemanderRetrait(Compte, Montant)
CompteClient/:Compte
9:DlivrerArgent()
7:ValiderEtEffectuerRetrait()
Contrleur2/:CRetrait Multi-objet
8:AutoriserRetrait(montant)
IntDistributeur/:Idistributeur
Le diagramme de collaboration peut tre complt par du texte dcrivant de quelle faon les objets dialoguent pour effectuer le scnario du
cas dutilisation. Cest une description de scnario un peu plus prcise.
___________________________________________________________________
DI GALLO Frdric Page 60 15/10/200808
8820448.doc
______________________________________________________________________________
e version du diagramme de classe faisant apparatre les classes entits et les attributs ncessaires la vision
e de classe.
Em i s s i on
1..* 1
T it re : s t ring C haine
D ure : s t ring Pr op os er
1..*
App ar tenir
1..*
T ype d' m i s s i on
1..*
Reg ar der
1..*
___________________________________________________________________
DI GALLO Frdric Page 61 15/10/200808
8820448.doc
______________________________________________________________________________
armi les chanes accessibles (fonction de l'abonnement) au client, parmi les missions en cours de diffusion,
s l'utilisateur qui a dclench la session.
t une.
images correspondantes au tlviseur.
lviseur.
30 secondes; au bout des 30 secondes, le tlviseur restant arrt, le systme ferme la session.
'utilisation.
___________________________________________________________________
DI GALLO Frdric Page 62 15/10/200808
8820448.doc
______________________________________________________________________________
sion d'un membre l'association doit se faire en ligne. Une personne peut demander devenir adhrente
e par deux membres en place. Le demandeur connect la partie du site de l'IWTS accessible au public,
demande d'adhsion. La premire partie du formulaire demande une @dresse lectronique et les rfrences
contrle de l'identit des parrains une cl est fournie au demandeur (dans sa bote aux lettres lectronique)
r au formulaire d'adhsion complet. L'association souhaite connatre; l'identit du demandeur, son adresse
e le plus important, son adresse professionnelle, sa profession (par exemple ingnieur d'tudes) et sa fonction
exemple directeur de laboratoire), ses thmes prfrs de recherche et les rcompenses obtenues (par
e la meilleure publication sur le thme du lagunage...). Le demandeur choisit les groupes thmatiques auquel
doit fournir galement sa photo numrise et les rfrences de deux articles dont il est l'auteur; ces articles
des revues scientifiques rpertories, ou tre disponibles sur un site, auquel cas c'est l'adresse rticulaire
ournit.Un des membres du conseil (compos d'un prsident, d'un vice prsident, et d'un nombre de membres
ortionnel au nombre d'adhrents de ce collge) qui dirige l'association examine la demande d'adhsion,
ientifique des deux articles cits par le demandeur et contrle le parrainage. Si le conseil apprcie le dossier
e lui est propos et il peut devenir membre. S'il confirme sa demande, le demandeur (admis) signale le mode
on qu'il souhaite. Le tarif dpend du collge du membre. Le membre admis peut, aprs s'tre acquitt du
des informations prives de l'association. L'enregistrement du paiement est effectu par le secrtariat. Il fait
diffusion du groupe thmatique auquel il a choisi d'appartenir; il pourra dialoguer avec les autres membres
charte dontologique des listes. Cela peut se faire tout moment notamment lors de la confirmation de
des articles:
ion est publie pour ses membres sur le web tous les trois mois. Les membres ont deux mois entre chaque
articles. Un article possde un titre, un thme et des mots clefs. La slection des articles est dcide par le
ux lecteurs du groupe thmatique correspondant, choisis par le conseil. Un article peut tre accept, refus
dements, pour une relecture. L'avis, aprs la deuxime lecture est dfinitif. L'auteur de l'article reoit une
sont notes les remarques prcises des lecteurs, ceux ci restent anonymes. Un rsum de chaque article
r la partie publique du site web, titre d'apritif, avec ses mots clefs.
vrages:
sociation ralisent parfois1 des ouvrages spcifiques (CDROM de photos par exemple).Ces ouvrages sont
condition qu'ils demeurent scientifiques et non publicitaires (le traitement de l'acceptation d'un ouvrage est
rticle sans que ne se pose le problme de dlai). Ces ouvrages sont alors mis en vente pour tout public sur le
bnfices entre auteur et diteur est alors calcule).
ure analytique du texte ci-dessus, produisez une premire version du diagramme des cas d'utilisation du
WTS". Veillez respecter les frontires du systme. Une des approches possibles consiste passer au crible
pes nominaux) ; ils sont candidats tre des objets du systme ou des acteurs extrieurs, utilisateurs du
___________________________________________________________________
DI GALLO Frdric Page 63 15/10/200808
8820448.doc
______________________________________________________________________________
rmes verbales), quand eux, marquent un aspect dynamique, un lien entre objets, un comportement du
'il rend.
mme des cas d'utilisation, on slectionnera les acteurs et les services.
___________________________________________________________________
DI GALLO Frdric Page 64 15/10/200808
8820448.doc
______________________________________________________________________________
dentit des parrains (0K) et veille la non redondance du nom du demandeur (0K). */
l'@ Pierre.Aver@eigsi.fr la cl LMU3288. PA renouvelle sa demande d'adhsion
un formulaire d'adhsion en ligne.
mulaire avec la cl qui lui a t fournie (LMU3268), son adresse personnelle (18, Rue des Roses Trmires
nne, France...), son diplme le plus important (Ph D en biologie), son adresse professionnelle (...), sa
tudes) et sa fonction dans l'organisation dont il fait partie (directeur du laboratoire de biologie applique),
recherche (l'utilisation des algues dans le processus de lagunage et les groupes thmatiques auxquels il
a ntation & traitements biologiques). */
aire incluant sa photo (magntique), et les rfrences de deux articles dont il est l'auteur publies sur le site
nieur.
message vers la bal du conseil.
), membre du conseil, demande accder au dossier.
le dossier.
n au collge des laboratoires. /* Le serveur enregistre l'avis du conseil. */
vis du conseil PA.
___________________________________________________________________
DI GALLO Frdric Page 65 15/10/200808
8820448.doc
______________________________________________________________________________
nde d'adhsion au collge des laboratoires, signale son mode de
ion par chque bancaire, et signe la charte afin d'utiliser les listes de
x thmes qu'il a choisi.
gistre le paiement de la cotisation. /* PA devient membre effectif */
dtail le texte de description du cas d'utilisation adhrer , produire une premire version du diagramme
cette application.
___________________________________________________________________
DI GALLO Frdric Page 66 15/10/200808
8820448.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frdric Page 67 15/10/200808