Académique Documents
Professionnel Documents
Culture Documents
VUE SYSTEME INFORMATIQUE__________________________________________________________ 17 1. 2. 3. 4. Le contexte statique Les cas dutilisation Le contexte dynamique Le modle du domaine affin 17 19 30 32
VUE APPLICATIVE ____________________________________________________________________ 37 1. 2. 3. La maquette La navigation (optionnel) Les classes participantes (optionnel - dbut de conception de larchitecture) 37 39 41
Fvrier 2005
3 / 42
A propos de ce manuel
Ce manuel dutilisation a pour but de dcrire la mthode dexpression et danalyse des besoins, utilisant le langage de modlisation UML et supporte par loutil PowerAMC. Il sadresse aux concepteurs des quipes projet, qui partent dune expression initiale des besoins par des utilisateurs ou des matres douvrage. UML (Unified Modeling Langage) nest pas une mthode de dveloppement mais un langage de modlisation qui dfinit des standards relatifs la modlisation oriente objet. Ce langage permet de mettre en uvre neuf diagrammes diffrents . Dans la mise en uvre dune mthode de dveloppement, lun ou lautre des diagrammes est choisi en fonction des concepts que lon veut reprsenter une tape de dveloppement donne. Les concepts permettent de couvrir les tapes, depuis lexpression des besoins jusquau codage.
Diagrammes de cas d'utilisation Diagrammes de classes Diagrammes d'objets Diagrammes de composants Diagrammes de dploiement
La dmarche dfinie dans le prsent guide, a pour objectifs de couvrir lexpression et lanalyse des besoins ; elle utilise cinq diagrammes UML : deux diagrammes statiques (diagrammes de classes et de cas dutilisation), trois diagrammes dynamiques (diagramme dactivits, de collaboration et de squence). Lexpression et lanalyse des besoins se matrialise par des documents Word de diffrents niveaux, dans lesquels on insre des diagrammes UML produits laide de loutil PowerAMC. Les plans types de ces documents sont disponible s depuis le site dveloppement Web : http://www.dsi.cnrs.fr/bureau_qualite/developpement-web/guides-modeles/guides-modeles.asp : Note de cadrage (inclut des diagrammes de la vue mtier) Exigences fonctionnelles (inclut des diagrammes de la vue systme informatique) Conception de linterface utilisateur (inclut des diagrammes de la vue applicative)
Fvrier 2005
5 / 42
Remarques : Le terme strotype est frquemment utilis dans ce guide et mrite une dfinition pralable : Extension du vocabulaire UML, qui permet de crer de nouvelles varits d'lments constitutifs drivs d'lments existants, mais qui sont spcifiques votre problme. [PowerAMC MOO Guide de lutilisateur]. Exemple dutilisation de strotypes : dans la premire tape de la dmarche, qui sintresse aux processus mtier du domaine tudi, l concept processus mtier ntant pas directement e support par UML, un strotype de cas dutilisation est utilis. Le terme systme est utilis dans ce document pour dsigner de manire globale lapplication informatique. Utilisation de ce manuel Le premier chapitre Prsentation globale de la mthode donne un aperu global de la mthode utilise et montre la progressivit de lapproche. Les autres chapitres se lisent a priori dans lordre, chacun dentre eux dcrit une tape de la dmarche de modlisation. Naturellement, le concepteur peut tre amen revenir sur lun ou lautre des chapitres dans le c adre des itrations successives quil va mettre en uvre pour son projet. Chaque chapitre spare la prsentation des concepts manipuls et leur reprsentation avec loutil PowerAMC. Utilisation de loutil PowerAMC Un modle type PowerAMC est mis la disposition des concepteurs. Ce modle permet de dmarrer une modlisation avec les packages et les diagrammes dj crs, ainsi que quelques exe mples de concepts dans chaque diagramme. Le nom du modle est : Modle application web.moo. Ce modle contient galement un exemple de rapport, produit laide dun modle de rapport (il inclut les diagrammes crs dans chacune des vues, ainsi que les classes dfinies avec leur liste dattributs et doprations). Par ailleurs, des exemples de projets modliss selon la dmarche contenue dans le prsent guide sont disponibles. Les documents Word et modles PowerAMC sont mis disposition des quipes DSI dans le rpertoire PROJETS de TOULOUSE Uml/DSI/Dmarche UML DSI. Pour accder au modle type et aux exemples PowerAMC, le fichier ouvrir est lespace de travail : Espace de travail - Dmarche UML DSI.sws . Conventions Les noms de fentre, de zone de dialogue ou de zone de saisie apparaissent entre guillemets. Les noms de commande dun menu apparaissent en gras italique spars par des /, par exemple : menu Fichier/Imprimer
Ce pictogramme identifie des remarques utiles mais sans incidence sur le cours des instructions exposes.
Ce pictogramme identifie des informations lire et/ou excuter imprativement qui peuvent influencer le cours des instructions suivantes.
Assistance Pour des complments dinformation, vous pouvez contacter le groupe de travail UML la DSI : Liste Uml(at)dsi.cnrs.fr .
6 / 42
Fvrier 2005
Mises jour
V 0.1 Septembre 2003
Version initiale du manuel dutilisation PowerAMC pour lexpression des besoins avec UML, cre suite la formation du groupe de travail. Cration dun manuel spar de prsentation de PowerAMC. Mise jour de la dmarche suite aux retours dexprience de projets pilotes et ajouts de complments issus de ltat de lart (en particulier, conseils pour la rdaction des cas dutilisation). Ajout dun chapitre Modle du domaine affin dans la vue systme informa tique, dcrivant les concepts du diagramme de classe et mise niveau du chapitre Modle du domaine .
V1.0
Janvier 2005
V1.1
Fvrier 2005
Pour une premire prise en main de PowerAMC, pour quelques trucs et astuces, pour en savoir plus sur les rapports, ou pour connatre la liste des strotypes dfinis, consulter le Manuel dutilisation de PowerAMC : GnralitsRapports-Strotypes , accessible dans le rpertoire PROJETS de TOULOUSE Uml/DSI/PowerAMC ou depuis le site dveloppement Web : http://www.dsi.cnrs.fr/bureau_qualite/developpement-web/guidesmodeles/guides-modeles.asp.
Avec la version 9 de PowerAMC, ne pas utiliser de fonctions sur les symboles car ces fonctions provoquent des dgradations du modle irrversibles. Ces fonctions sont accessibles partir du menu principal Symbole/ ou bien partir du menu contextuel sur un objet (clic droit de la souris et Disposition ou Cacher le symbole).
Fvrier 2005
7 / 42
Ltape suivante sintresse au systme informatique. On reprsente dans un premier temps le contexte dutilisation : le systme vu comme une bote noire et les acteurs qui interagissent avec lui (contexte statique). Ensuite on dcrit les services rendus aux diffrents utilisateurs sous forme de cas dutilisation. Il est possible de complter ces descriptions par des reprsentations de la dynamique des changes de messages entre le systme et les utilisateurs (contexte dynamique). Ces diffrentes reprsentations forment la vue systme informatique. Vue systme informatique
Cas dutilisation Modle du domaine affin
Contexte statique
Contexte dynamique
Fvrier 2005
9 / 42
Enfin, la vue applicative permet de donner une vision concrte du futur systme grce une maquette et la modlisation des principes de navigation entre les pages. Egalement, il est possible de reprsenter un dbut darchitecture applicative : la sparation entre les couches Dialogue, Traitements applicatifs et Donnes. Vue applicative
Navigation entre les pages (optionnel) Classes participantes Dialogue, contrleur, entit
Maquette
En pratique, les diagrammes de la vue mtier sont raliss en premier. Puis les diagrammes des vues systme informatique et applicative en parallle. Des itrations successives entre ces deux vues permettent daffiner les diffrents diagrammes. Par exemple, la ralisation dune maquette permet de prciser la spcification des cas dutilisation avec les utilisateurs. De mme, lidentification des classes participantes peut permettre de complter le modle du domaine affin. Lexpression et lanalyse des besoins se matrialisent par des documents Word de diffrents niveaux, dans lesquels on insre des diagrammes UML produits laide de loutil PowerAMC. Les plans types de ces documents sont disponibles depuis le site dveloppement Web : http://www.dsi.cnrs.fr/bureau_qualite/developpement-web/guidesmodeles/guides-modeles.asp : Note de cadrage (inclut des diagrammes de la vue mtier) Exigences fonctionnelles (inclut des diagrammes de la vue systme informatique) Conception de linterface utilisateur (inclut des diagrammes de la vue applicative) Dans loutil PowerAMC, les diffrents diagrammes prennent place dans des packages qui structurent le modle. Le modle type DSI (Modle application web.moo) se prsente ainsi :
10 / 42
Fvrier 2005
Vue mtier
Vue mtier
La vue mtier permet de mieux connatre et comprendre les processus dans lesquels va sintgrer le futur systme informatique.
1. Les acteurs
Pour dmarrer, les acteurs mtier concerns par le systme dinformation sont identifis.
Fvrier 2005
11 / 42
Vue mtier
Dans le package Vue mtier , un diagramme de cas dutilisation nomm Acteurs , contient les acteurs du systme, reprsents sous forme dacteurs PowerAMC. Dans le cas de fonctions CNRS, strotypez les acteurs <<Fonction>>. Dans le cas de structures, strotypez les acteurs <<Structure>>.
12 / 42
Fvrier 2005
Vue mtier
Exemple :
Dpendance
Dans le package Vue mtier, un diagramme de cas dutilisation nomm Les processus mtier , contient les processus, reprsents sous forme de cas dutilisation PowerAMC, strotyps <<Processus>>.
Fvrier 2005
13 / 42
Vue mtier
Les acteurs sont copis sous forme de raccourcis depuis le diagramme des acteurs de la vue mtier.
Exemple : Acteur
Activit
Synchronisation
Dans le package Vue mtier, un diagramme dactivits est cr par processus que lon souhaite dcrire en dtail.
14 / 42
Fvrier 2005
Vue mtier
Le nom de chaque diagramme reprend le nom du processus qui est dcrit. Le diagramme contient lenchanement des activits du processus. Pour reprsenter les acteurs dans les colonnes, crez des units dorganisation (reprendre si possible labrviation du nom dun rle, dune fonction ou structure : pour des raisons de taille de la colonne). Pour crer un tat dobjet (concept mtier), crez une nouvelle classe dans le diagramme de classes Modle du domaine . Copiez cette classe et collez la en raccourci dans le diagramme dactivits : un tat dobjet se cre sur le diagramme. Saisissez le nom de ltat dans la fentre Proprits de ltat dobjet . On peut modliser la rfrence un autre processus, en le reprsentant sous forme dactivit, strotype <<Processus>>. Matrialisez le primtre du systme en entourant avec un lment de dessin les activits qui vont tre supportes par le systme informatique.
Fvrier 2005
15 / 42
Vue mtier
3. Le modle du domaine
Le modle du domaine permet de reprsenter les concepts du domaine, les objets mtier, cest--dire les informations cres, transformes ou manipules par les experts du domaine. Les concepts sont modliss dans un diagramme de classes. Lobjectif de ce diagramme est que lexpert du domaine y retrouve le vocabulaire de son mtier. Un concept fait partie du domaine sil est ncessaire la comprhension du problme et sil rpond des exigences fonctionnelles visibles par un utilisateur. Les concepts lis la mise en uvre du systme informatique (contraintes techniques par exe mple) ne doivent pas apparatre ce niveau, il ne sagit pas de dcrire le modle de donnes de lapplication mais didentifier les principaux concepts ainsi que leur dfinition. On aboutit ainsi un glossaire du voc abulaire mtier. Lors de la description des cas dutilisation (chapitre suivant : vue systme informatique), le modle du d omaine est affin : complt par de nouvelles classes ou attributs, par des dfinitions et rgles de gestion, par les types et taille s des attributs...
Exemple :
Classe
Dans le package Vue mtier, un diagramme de classes, nomm Modle du domaine, contient les classes du domaine.
16 / 42
Fvrier 2005
1. Le contexte statique
On modlise ici le systme informatique dans son environnement, en le reprsentant comme une bote noire , en relation avec des acteurs externes. Ce diagramme est utile pour avoir une vision gnrale externe du systme. De plus il permet de donner les premiers lments de volumtrie des utilisateurs.
Fvrier 2005
17 / 42
Dans le package Vue systme informatique , un diagramme de cas dutilisation nomm Contexte statique , contient le systme, reprsent sous forme dun cas dutilisation PowerAMC, strotyp <<Sy stme>>. Les acteurs sont copis sous forme de raccourcis depuis le diagramme des acteurs de la vue mtier ou bien crs dans ce diagramme.
18 / 42
Fvrier 2005
Fvrier 2005
19 / 42
20 / 42
Fvrier 2005
Structurez la spcification
Il peut tre souhaitable de structurer la spcification en crant plusieurs diagrammes de cas dutilisation. Les critres de regroupement des cas dutilisation peuvent tre les domaines dexpertise mtier, les itrations dfinies, les acteurs concerns. Remarque : les cas dutilisation ne senchanent pas entre eux : si on veut dcrire un enchanement, le faire au n iveau de la vue mtier.
Si un mme enchanement peut tre utilis plusieurs fois (partageable), il peut faire lobjet dun cas dutilisation part, inclus dans dautres cas dutilisation. : ce sous cas dutilisation permet de factoriser la partie commune de la description de plusieurs cas dutilisation. Les cas dutilisation qui lincluent, prcisent explicitement lendroit o il est inclus dans les scnarios (cf. paragraphe suivant). Un cas dutilisation inclus nest jamais excut seul, mais seulement en tant que partie dun cas plus vaste, il na pas dacteur dclencheur.
Relation extend :
Un enchanement complexe, optionnel par rapport un enchanement obligatoire dactions (variante de comportement), peut faire lobjet dun cas dutilisation part, qui tend dautres cas dutilisation. Les cas dutilisation qui sont tendus par ce cas dutilisation, prcisent explicitement les points dextension (cf. paragraphe suivant). Les cas dutilisation qui sont tendus peuvent fonctionner seuls , ils ont un acteur dclencheur. Nutiliser cette relation quen cas de ncessit car elle est plus difficile comprendre. Les situations qui la ncessitent sont : - lorsque lutilisateur dispose dun grand nombre de services asynchrones ou de services provoquant une interruption, qui ne doivent pas dranger le cas de dutilisation de base, - pour complter un cas dutilisation dans une version ultrieure. Pour savoir si on utilise une relation include ou extend , se poser la question : Si le cas 1 sait quand, o, pourquoi le cas 2 doit tre dclench, alors le cas 1 inclut le cas 2. Si le cas 2 sait quand, o, pourquoi il doit tre dclench, alors le cas 2 tend le cas 1.
Fvrier 2005
21 / 42
Dans le cas dutilisation Prendre commande , on trouve : Le responsable clientle choisit des produits (cas dutilisation Choisir produits ). Dans le cas dutilisation Enregistrer client , on trouve : A chaque fois que le client est nouveau quand on passe une commande (cas dutilisation Prendre commande ), le responsable clientle enregistre le client.
La trame de la spcification dun cas dutilisation est la suivante : Objectif Prsenter succinctement ce que perme t de faire le cas dutilisation. Acteurs principaux Donner la liste des acteurs qui dclenchent le cas dutilisation dans le but datteindre son objectif et qui rcuprent un rsultat du systme (positionns gauche du cas dutilisation dans le diagramme). Prciser leurs intrts vis --vis de la ralisation du cas dutilisation.
22 / 42
Fvrier 2005
Acteurs secondaires Donner la liste des acteurs qui sont sollicits par le systme (positionns droite du cas dutilisation dans le diagramme). Prciser leurs intrts vis --vis de la ralisation du cas dutilisation. Prconditions Dcrire les contraintes qui doivent tre vrifies lorsque le cas dutilisation est dclench. En gnral une prcondition indique quun autre cas dutilisation sest droul auparavant. Postconditions Dcrire les contraintes qui doivent tre vrifies lorsque le cas dutilisation est termin. Scnario nominal Dcrire la squence normale d'actions associe au cas d'utilisation. En gnral, utiliser 3 9 actions. Numroter les actions de manire chronologique. 1. Action 1 2. Action 2 3. La premire action est gnralement le dclencheur du cas dutilisation. A la fin du scnario nominal, lobjectif du c as dutilisation doit tre atteint. Chaque action donne lieu une phrase. Commencer systmatiquement chaque phrase par lacteur xxx ou le systme . La phrase indique lintention de lacteur (pas ses gestes) : les dtails de lIHM ne doivent pas apparatre. Eviter : 1. Le systme demande le nom. 2. Lutilisateur saisit son nom. 3. Le systme invite lutilisateur saisir son adresse. 4. Lutilisateur saisit son adresse. 5. Lutilisateur clique sur ok . 6. Le systme prsente le profil de lutilisateur. Prfrer : 1. Lutilisateur saisit son nom et son adresse. 2. Le systme prsente le profil de lutilisateur. Il faut insister sur les vnements entre les acteurs et le systme sans dcomposer le traitement effectu lintrieur du systme (vu comme une bote noire). Chaque action na de justification que si elle dcrit une action protgeant ou accroissant les intrts de lintervenant. On peut associer une action une partie dune transaction : 1. lacteur envoie la requte et les donnes au systme. 2. le systme valide la requte et les donnes. 3. le systme change dtat interne. 4. le systme rpond lacteur en lui prsentant le rsultat. ou associer les diffrentes parties en une ou plusieurs actions, selon le degr de complexit de chaque partie et les lieux de rupture naturels dans le traitement. Par exemple : Version 1 : 1. Le client saisit son numro de commande. 2. Le systme dtecte que ce numro correspond au numro gagnant du mois, inscrit lutilisateur et le numro de commande comme gagnant du mois, envoie un ml au responsable des ventes, flicite le client et lui donne les instructions ncessaires pour retirer son prix. Version 2 : 1. Le client saisit son numro de commande. 2. Le systme dtecte que ce numro correspond au numro gagnant du mois.
Fvrier 2005
23 / 42
3. Le systme inscrit lutilisateur et le numro de commande comme gagnant du mois, envoie un ml au responsable des ventes, flicite le client et lui donne les instructions ncessaires pour ret irer son prix. Ecrire des phrases simples, montrant clairement qui a le ballon et montrant le processus en train davancer. Mentionner le droulement temporel uniquement lorsque cest ncessaire. Exemple : A tout moment entre les actions 3 et 5, lutilisateur ou Ds que lutilisateur, le systme . Il est possible de souligner le fait que des actions peuvent se rpter ou seffectuer dans nimporte quel ordre. Exe mples : Le client rpte les actions 3 5 jusqu ce quil indique quil a termin ( placer aprs laction 5) ou Les actions 3 5 peuvent se produire dans nimporte quel ordre ( placer avant laction 3). Il ne doit pas y avoir de si sinon . Le systme ne vrifie pas mais valide (en cas derreur il y aura un scnario alternatif, cf ci-aprs). Exemple : Eviter : 2. Le systme vrifie si le mot de passe est correct. 3. Si cest le cas, le systme prsente les actions disponibles lutilisateur. Prfrer : 2. Le systme valide que le mot de passe est correct. 3. Le systme prsente les actions disponibles lutilisateur. Faire rfrence explicite aux cas dutilisation inclus ou qui tendent le cas dutilisation courant (on peut souligner ces cas dutilisation). Scnarios alternatifs Il sagit didentifier toutes les autres situations possibles de succs ou dchec. Pour chaque action du scnario nominal, se poser la question si quelque chose dautre peut se passer : si cest le cas, dcrire les actions qui prolongent la squence d'actions normale. Ces scnarios alternatifs ouvrent le cas d'utilisation une possibilit de prolongement (extension). Le titre de chaque scnario alternatif est la condition ncessaire pour que se droule ce scnario. Chaque scnario alternatif est numrot en faisant rfrence aux numros du scnario nominal prcdemment dcrit. Ajouter une sous-numrotation 1, 2, 3 (et si besoin a, b, c... de nouveau ainsi quune indentation). Un scnario alternatif sachve par la satisfaction ou labandon de son objectif. Terminer chaque scnario alternatif par le cas dutilisation se termine ou le cas dutilisation reprend au point N ou le cas dutilisation continue au point N . Faire rfrence explicite aux cas dutilisation inclus ou qui tendent le cas dutilisation courant (on peut souligner ces cas dutilisation). Exemple : 1-a : description du scnario alternatif a de laction 1 du scnario nominal 1. Action 1 2. Action 2 Le cas dutilisation se termine (chec). 1-b : description du scnario alternatif b de laction 1 du scnario nominal 1. Action 1 Le cas dutilisation continue au point 4. 2-a : description du scnario alternatif a de laction 2 du scnario nominal 1. Action 1 2. Lutilisateur excute le cas dutilisation xxx
24 / 42
Fvrier 2005
3. 4.
Action 3
Variantes de technologies et de donnes (optionnel) Les scnarios alternatifs indiquent que ce que fait le systme diffre (le quoi). Si on veut indiquer quil y a plusieurs faons de procder (le comment), les lister dans ce paragraphe. Exemple : Scnario nominal : 7. Rembourser le client du montant des marchandises rendues. Variantes de technologies et de donnes : 7a. Rembourser par chque, virement lectronique ou crdit sur les prochains achats. Rgles de gestion (optionnel) Dcrire les rgles de gestion du cas dutilisation. Les numroter. Exigences supplmentaires (optionnel) Dcrire les exigences non fonctionnelles du cas dutilisation : frquence dutilisation du cas dutilisation, contraintes de performance Les numroter. Questions en suspend (optionnel) Les questions poser aux utilisateurs peuvent tre regroupes dans un paragraphe spcifique en fin de description du cas dutilisation. Les numroter.
Exemple de spcification du cas dutilisation Valider et complter les ressources actuelles : Objectif Valider et complter les ressources actuelles. Acteurs principaux -directeur d'unit Prconditions Import de la description des ressources actuelles effectu avec succs Scnario nominal 1 : le directeur d'unit demande dcrire un personnel 2 : le systme prsente la liste des personnels 3 : le directeur slectionne 1 personnel 4 : le systme prsente les informations relatives ce personnel 5 : le directeur modifie des informations 6 : le systme valide et prsente les informations jour Le directeur rpte les actions 1 6 jusqu ce quil indique quil a termin. Scnarios alternatifs 1a : le directeur demande la modification de la description de l'unit 1a1 : le systme prsente les informations relatives son unit 1a2 : le directeur saisi les informations obligatoires t Le cas d'utilisation continue au point 6 3a : le directeur demande la cration d'un nouveau personnel 3a1 : le systme affiche un formulaire vierge
Fvrier 2005
25 / 42
3a2 : le directeur saisit les informations obligatoires Le cas d'utilisation continue au point 6 5a : le directeur demande la suppression du personnel 5a1 : le systme valide qu'il n'y a pas d'activit dcrite pour ce personnel Le cas d'utilisation continue au point 6
Dans le package Vue systme informatique , un diagramme de cas dutilisation, nomm Les cas dutilisation , contient les cas dutilisation. Les cas dutilisation qui ne sont pas tudis dans la version en cours peuvent tre strotyps <<Cas dutilisation non tudi>> ou bien il est possible de les dcrire mais on peut prciser sils ne sont pas raliss dans la version en cours. Les acteurs sont copis sous forme de raccourcis depuis le diagramme des acteurs de la vue mtier ou depuis le diagramme de contexte statique. Des associations sont tablies entre les acteurs et les cas dutilisation. Positionnez sil y a lieu les dpendances entre cas dutilisation. Strotypez ces dpendances include ou extend . Structurez les reprsentations des cas dutilisation dans un ou plusieurs diagrammes pour favoriser la clart de lecture par les utilisateurs.
A la DSI, nous avons choisi de ne pas renseigner la description des cas dutilisation dans PowerAMC mais plutt dans le document Word dexigences fonctionnelles - cf modle sur le site : http://www.dsi.cnrs.fr/bureau_qualite/developpement-web/guidesmodeles/guides -modeles.asp.
Dans longlet Classes de mise en oeuvre des proprits de chaque cas dutilisation, indiquez les classes du modle du domaine affin utilises par le cas dutilisation. Remarque : les classes choisies comme classes de mise en uvre dans le package Vue mtier sont automatiquement copies sous forme de raccourcis dans le package Vue systme in formatique . Si une classe est une classe de mise en uvre pour plusieurs cas dutilisation, slectionnez le raccourci dj cr.
26 / 42
Fvrier 2005
Ne pas abuser de ces diagrammes, veiller ce quils apportent une plue value.
Dans le package Vue systme informatique , crez un diagramme de squence pour chaque cas dutilisation qui le ncessite. Le nom du diagramme commence par Squence et est suivi du nom du cas dutilisation. Reprsentez le systme sous forme dun objet instance dune classe ayant pour nom le systme tudi. Cet objet est strotyp <<Sy stme>>. Les acteurs sont copis sous forme de raccourcis depuis le diagramme des acteurs de la vue mtier ou depuis le diagramme de contexte statique. Les messages sont crs dans le diagramme ou copis depuis le diagramme de contexte dynamique sil existe.
Fvrier 2005
27 / 42
28 / 42
Fvrier 2005
La mise en uvre de la dmarche : Une premire sance de travail en groupe (quipe projet + utilisateurs) peut permettre didentifier les acteurs, objectifs, rsums des cas dutilisation et le formalisme utilis pour un cas dutilisation. Puis lquipe projet rdige une premire version des descriptions des cas dutilisation ltude. Cette rdaction est ensuite revue en groupe (quipe projet + utilisateurs). Check-list pour la description des cas dutilisation : Extraite et adapte de : Rdiger des cas dutilisation efficaces dAlistair Cockburn. Champ Titre du cas dutilisation Objectif Prconditions Scnario nominal Question 1. Lobjectif de lacteur principal est-il formul laide dune expression verbale active ? 2. Le systme est-il en mesure de remplir cet objectif ? 3. Sont-elles obligatoires et peuvent-elles tre mises en place par le systme ? 4. Est-il vrai quelles ne sont aucun moment vrifies dans le cas dutilisation ? 5. Comprend-il entre 3 et 9 actions ? 6. Se droule -t-il du dclencheur la satisfaction des postconditions en cas de succs ? 7. Autorise-t-il les bonnes variantes de squencement ? 8. Est-elle formule comme un objectif mener bien ? 9. Le processus avance-t-il clairement aprs sa ralisation fructueuse ? 10. Voit-on clairement quel acteur poursuit lobjectif (qui a le ballon ) ? 11. Lintention de lacteur est-elle claire ? 12. Etes-vous sr que laction ne dcrit pas la conception de lIHM ? 13. Voit-on clairement quelles sont les informations transmises dans cette action ? 14. Cette action est-elle une validation, par opposition une vrification dune condition ? 15. Le systme peut-il et doit-il les dtecter ? 16. Est-ce vraiment ce dont le systme a besoin ? 17. Etes-vous sr que ce nest pas l simplement une alternative au scnario nom inal ?
Scnarios alternatifs
Variantes de technologies et de donnes Contenu gnral du cas 18. Question aux reprsentants matrise douvrage et aux utilisateurs : est-ce vraiment dutilisation ce que vous voulez ? 19. Question aux reprsentants matrise douvrage et aux utilisateurs : serez-vous en mesure la livraison de dire si oui ou non, vous avez obtenu cela ? 20. Question lquipe de ralisation : tes -vous en mesure dimplmenter ceci ?
Fvrier 2005
29 / 42
3. Le contexte dynamique
Ce diagramme prsente les mmes lments que le contexte statique mais en y ajoutant les flux de messages qui transitent entre le systme et les acteurs externes. Ce diagramme permet de reprsenter globalement les interactions entre les acteurs et le systme. Il est produit en parallle la description des cas dutilisation.
De la mme faon que pour le contexte statique, le systme est reprsent au centre du diagramme, avec les acteurs en relation autour.
Identifiez les flux entre le systme et les acteurs Pour chaque acteur, modlisez les messages envoys au systme et les messages que lacteur reoit du systme . Exemple :
Fvrier 2005
Pour chaque acteur, modlisez les messages envoys au systme et les messages que lacteur reoit du systme. Exemple :
Dans le package Vue systme informatique , un diagramme de collaboration nomm Contexte dynamique , contient le systme, reprsent sous forme dun objet, instance dune classe ayant pour nom le systme tudi. Cet objet est strotyp <<Systme>>. Les acteurs sont copis sous forme de raccourcis depuis le diagramme des acteurs de la vue mtier ou depuis le diagramme de contexte statique. Crez les messages entrants et sortants du systme. Dans longlet Gnral des proprits de chaque message, enlevez le num dordre. ro
Dans le package Vue systme informatique , crez un diagramme de squence nomm Contexte dynamique , contient le systme, reprsent sous forme dun objet instance dune classe ayant pour nom le systme tudi. Cet objet est strotyp <<Systme>>. Les acteurs sont copis sous forme de raccourcis depuis le diagramme des acteurs de la vue mtier ou depuis le diagramme de contexte statique. Les messages sont crs dans le diagramme.
Fvrier 2005
31 / 42
Attribut
Parmi les classes candidates, cart ez celles qui sont redondantes (indiquer les synonymes dans la documentation), trop gnrales ou trop spcifiques, celles qui reprsentent une valeur (dans ce cas cest un attribut dune classe) ou un comportement (dans ce cas ce serait une opration dune classe). Parmi les classes identifies, prcisez les classes qui sont des rfrentiels partags (par exemple, BAP, emploi-type) pour le domaine tudi. Examinez la liste des rfrentiels partags du CNRS pour rutiliser leur modlisation dans le projet. Exemple :
Dterminez les attributs qui sont drivs, cest--dire dont la valeur est dductible dautres informations du modle (autres attributs du mme objet ou lments externes la classe). Explicitez la rgle de drivation des attributs drivs d ans la documentation. Exemple : ge = partie entire (date courante - date de naissance)
32 / 42
Fvrier 2005
Exemple : Association
Il est possible dajouter de linformation sur lassociation pour prciser le rle des classes dans la relation. Exemple :
Rle
Dfinissez la multiplicit de lassociation (notation min..max) : cest--dire le nombre dinstances dune classe qui peuvent tre mises en relation avec une seule instance de la classe associe. Exemples : 1..1 obligatoire 0..1 optionnel 0..* quelconque 1..* au moins 1 1..5, 10 entre 1 et 5, ou 10 Les multiplicits sont positionnes sur lassociation linverse de Merise.
Une association entre classes peut aussi porter des attributs (surtout utile quand on a une multiplicit 0..* des deux cts). Dans ce cas lassociation est aussi considre comme une classe, appele classe dassociation. (Cette reprsentation est toutefois plutt dconseille : il est prfrable de reprsenter une classe intermdiaire.) Exemple :
Classe dassociation
Fvrier 2005
33 / 42
Il existe des cas particuliers dassociation : agrgations et compositions. Lagrgation spcifie une relation est compos de . La composition est une agrgation forte, de type est construit avec ou est labor base de : un compos nappartient qu un seul composite un moment donn (la multiplicit du ct de la classe composite doit toujours tre 1..1 ou 0..1) ; si le composite est dtruit tous ses composs le sont auss i. Exemple : Association de composition
Modlisation de lhritage entre classes : gnralisation-spcialisation. La gnralisation consiste regrouper des caractristiques communes un ensemble de classes au sein dune sur-classe plus gnrale (relation de type est un ou est une sorte de ). La spcialisation consiste ajouter des caractristiques spcifiques dans une sous-classe ou adapter les caractristiques transmises. La sur-classe peut tre abstraite, cest--dire quil ny a pas dinstance de cette classe. Exemple : Sur-classe
Sous classe
34 / 42
Fvrier 2005
Dans le package Vue mtier, un diagramme de classes, nomm Modle du domaine affin, contient les classes du domaine.
Fvrier 2005
35 / 42
Vue applicative
Vue applicative
La vue applicative permet de donner une vision concrte du futur systme grce une maquette, la modlis ation des principes de navigation entre les pages et dun dbut darchitecture.
1. La maquette
Maquette = reprsentation graphique des pages, du systme de navigation et donc du dcoupage en tches pour l'utilisateur. Son dveloppement ne s'effectue pas forcment dans la technologie retenue pour l'application ; la maquette est a priori jetable. La maquette permet aux utilisateurs de concrtiser le rsultat de leur expression de besoins. Elle est essentielle dans la phase dexpression et analyse des besoins. Elle se ralise en parallle avec les autres modlisations, en particulier le diagramme de navigation dcrit ci-aprs.
Dfinissez lergonomie
La maquette permet de dfinir l'enchanement des pages de l'application et les rgles dergonomie. Dans un premier temps, il sagit didentifier les principes gnriques d'ergonomie (navigation, en respectant la charte graphique CNRS) puis ensuite de dfinir les rgles d'ergonomie spcifiques l'application : pour cela faire intervenir l'ergonome de la DSI. La charte graphique CNRS doit tre applique sur les pages de lapplication. Pour cela, faire intervenir le graphiste de la DSI.
Fvrier 2005
37 / 42
Vue applicative
38 / 42
Fvrier 2005
Vue applicative
2. La navigation (optionnel)
Cette modlisation seffectue en parallle avec la ralisation dune maquette. Il sagit de reprsenter les diffrents cheminements possibles des utilisateurs dans lapplication. Contrairement la maquette (qui peut ne couvrir quune branche de lapplication), tous les cheminements possibles sont reprsents dans le diagramme de navigation. Si la navigation dans lapplication est trs simple (peu de niveaux dimbrication des pages), il nest pas utile de raliser ce diagramme.
Exemple :
Bouton daction
Lien hypertexte
Paramtres saisir
Option de menu
Fvrier 2005
39 / 42
Vue applicative
Dans le package Vue applicative, un diagramme de classes, nomm Navigation, contient les classes strotypes <<Dialogue>>. Il existe deux autres strotypes qui peuvent tre utiliss : <<Dialogue nouvelle fentre>> : pour prciser que la page saffiche dans une autre fentre que la fentre courante du navigateur, avec la barre d'outils complte (deux fentres du navigateur sont ouvertes en mme temps),
<<Dialogue popup>> : pour indiquer que la page s affiche dans une petite fentre qui se superpose la fentre courante, avec une barre d'outils minimale ou mme inexistante (message, demande d'informations).
Dans longlet Gnral des proprits de la classe : saisissez le nom de la classe, en commenant gnralement par Page . Reprsentez les liens hypertextes, les boutons daction ou les options de menu sous forme dassociation entre les classes. Dans le cas dun lien hypertexte, strotypez lassociation <<Lien pour navigation>> et nommez la avec le texte du lien qui apparatra lutilisateur. Dans le cas dun bouton daction, strotypez lassociation <<Bouton pour navigation>> et nommez la avec le texte du bouton qui apparatra lutilisateur, entour des caractres < et >. Dans le cas dune option de menu, nutilisez aucun strotype. Veillez ce que la navigabilit entre les pages soit bonne (cochez la case navigable dans longlet Dtails des proprits de lassociation, pour positionner la flche sur le diagramme du ct de la page destination). Pour ne pas afficher les multiplicits sur les associations (elles nont aucun sens dans ce diagramme ), faites apparatre le menu contextuel du diagramme avec un clic droit de la souris sur le fond du diagramme. Choisissez loption Prfrences daffichage puis Association . Dcochez Afficher la multiplicit .
40 / 42
Fvrier 2005
Vue applicative
3.1. Modlisation des classes participantes ( dialogue , contrleur , entit ) par cas dutilisation
Fvrier 2005
41 / 42
Vue applicative
Dans le package Vue applicative, crez un diagramme de classes, nomm DCP (= Diagramme Classes Participantes) suivi du nom du cas dutilisation. Copiez sous forme de raccourcis les classes dialogue dj dfinies dans le diagramme de navigation ou bien crez en de nouvelles. Crez une classe, strotype <<Contrleur>>, dont le nom commence par CTRL , suivi gnralement du nom du cas dutilisation. Copiez sous forme de raccourcis les classes entit dj dfinies dans le modle du domaine (ainsi que les associations entre elles) ou bien crez en de nouvelles. Reprsentez les liens sous forme dassociations entre les classes. Veillez ce que la navigabilit, essentiellement entre le contrleur et les classes entit , soit bonne (sens du flux) : cochez la case navigable dans longlet Dtails des proprits de lassociation, pour positionner la flche sur le diagramme soit du ct de lentit (signifie une criture de donnes) ou du ct du contrleur (signifie une lecture de donnes ). Supprimer les multiplicits sur les associations entre les classes dialogue , contrleur et entit (les multiplicits doivent par contre tre conserves entre les classes entit issues du modle du d omaine). Pour cela, dans longlet Dtails des proprits de lassociation, mettre vide la rubrique Multiplicit .
42 / 42
Fvrier 2005