Vous êtes sur la page 1sur 14

Modlisation UML Diagrammes Structurels

Diagramme des Classes


Le diagramme des classes identifie la structure des classe d'un systme, y compris les proprits et les mthodes de chaque classe. Les diverses relations, telles que la relation d'hritage par e emple, qui peuvent e ister entre les classes y sont galement reprsentes. Le diagramme des classes est le diagramme le plus largement rpandu dans les spcifications d'UML. Une partie de la popularit du diagramme des classes provient du fait qu'il e iste des outils tels que !ational "D#, $lass%uilder, &modo for #lipse ou 'ose(don permettant de produire directement du code source dans les principau langages informatiques ) *ava, $++, et de $ ,, 'hyton-. / partir de ces modles )foward engennering.. $es outils peuvent synchroniser les modles et le code, rduisant votre charge de travail. 0ls peuvent galement produire des diagrammes de classes / partir du code source orient o12et. )reverse engennering.

Reprsentation
Les lments d'un diagramme des $lasses sont les classes et les relations qui les lient. les classes sont les modules de 1ase de la programmation oriente o12et. Une classe est reprsente en utilisant un rectangle divis en trois sections. La section suprieure est le nom de la classe. La section centrale dfinit les proprits de la classe. La section du 1as numre les mthodes de la classe. une association est une relation gnrique entre deu classes. #lle est modlise par une ligne reliant les deu classes. $ette ligne peut 3tre qualifie avec le type de relation, et peut galement comporter des rgles de multiplicit )par e emple un / un, un / plusieurs, plusieurs / plusieurs. pour la relation. si une classe ne peut pas e ister par elle4m3me, mais doit 3tre un mem1re d'une autre classe, alors elle possde une relation de composition avec la classe contenante. Une relation de composition est indique par une ligne avec un 5diamant5 rempli. quand une classe utilise une autre classe, par e emple comme mem1re ou comme paramtre d'une de ces fonctions, elle 5dpend5 ainsi de cette classe. Une

Classes

Association

Composition

Dpendance

M. Grimaldi fvrier 2007 page 1/14

relation de dpendance est reprsente par une flche pointille. les agrgations indiquent une relation de contenant4 contenu. #lle dcrite par une relation 5possde5. Une relation d'agrgation est reprsente par une ligne avec un 5diamant5 creu . une relation de gnralisation est l'quivalent d'une relation d'hritage en terme orients o12et )relation 5est4un 5.. Une relation de gnralisation est indique par une flche creuse se dirigeant vers la classe 5parent 5.

Agrgation

Gnralisation

$onsidrons l'e emple d'un systme vtrinaire. Des animau de compagnie, comme des chiens ou des oiseau , sont suivis par leurs propritaires. Le diagramme suivant modlise une solution potentielle. $onsidrant que les chiens comme les oiseau sont 5un genre5 d'animal, nous utilisons un relation de gnralisation.

'our valider votre modle, vous pouve6 affecter des donnes relles dans chacune de ces classes. 0l y a un diagramme ddi / cette t7che, le diagramme des objets.

Diagramme des Objets


les diagrammes des o12ets modlisent des e emples de classes. $e type de diagramme est employ pour dcrire le systme / un instant particulier. #n utilisant cette technique, vous pouve6 valider le diagramme des classes et ses rgles de multiplicit avec des donnes et des scnarios rels. D'un point de vue de la notation, les diagrammes des o12ets empruntent des lments du diagrammes des classes

Reprsentation
Souvent, le diagramme des o12ets utilise une notation plus simple que le diagramme des classes correspondant, se focalisant sur les instances des o12ets et non sur les relations entre leurs classes )hritage compris.. %eaucoup de diagrammes des o12ets reprsentent seulement les o12ets et les associations.

M. Grimaldi fvrier 2007 page 2/14

Objet

des o12ets sont identifis en pla8ant le nom d'instance suivi des deu points )9. devant le nom de la classe. Les valeurs de proprit sont crites comme des paires 5 nom:valeur 5. L'ic;ne reprsentant un o12et est un rectangle divis en sections. le diagramme des o12ets peut contenir galement des associations. Souvent, les contraintes, le dtail des relations et les rgles de multiplicit trouves dans le diagramme de classe ne sont pas reprsents pour ne se concentrer que sur les o12ets et leurs proprits. Les associations entre les o12ets sont reprsentes simplement en utilisant une ligne les 2oignant.

Association

Dans la section prcdente sur le diagramme des classes, nous avons considr les classes d'un systme vtrinaire. 0ci, nous utiliserons des instances de ces classes dans un diagramme des o12ets. <ous considrerons le cas de *ohn, un amoureu des animau de compagnie de %oston, du M=, client de l'h;pital vtrinaire. 0l a deu animau de compagnie, !over, un chien, et >?eety, un oiseau.

<ote6 comme dans cet e emple, un propritaire avec plusieurs animau de compagnie peut 3tre utilis pour vrifier la relation de multiplicit dfinie dans le diagramme des classes.

Diagramme des composants


les diagrammes des composants tom1ent sous la catgorie des diagrammes d'implmentation, un genre de diagramme qui modlise l'implmentation et le dploiement du systme. Le diagramme des composants est principalement employ pour dcrire les dpendances entre les divers composants logiciels tels que la dpendance entre les fichiers e cuta1les et les fichiers source. $ette information est sem1la1le / celle contenue dans les fichiers makefile, qui dcrivent des dpendances des codes sources qui doivent 3tre employs pour compiler correctement une application.

M. Grimaldi fvrier 2007 page 3/14

Reprsentation
un composant reprsente une entit logicielle d'un systme. )fichier de code source, programmes, documents, fichiers de ressource .etc... Un composant est reprsent par une 1o@te rectangulaire, avec deu rectangles dpassant du c;t gauche. une dpendance est utilise pour modliser la relation entre deu composants. La notation utilise pour cette relation de dpendance est une flche pointille, se dirigeant d'un composant donn au composant dont il dpend

Composant

Dpendance

'ar e emple, le diagramme des composants ci4dessous identifie myWebComps.dll comme dpendante des fichiers sources BaseDB.cs et SiteConfig.cs.

Aous pouve6 personnaliser l'affectation des ic;nes, en utilisant les ic;nes strotypes pour certains composants / la place de l'ic;ne standard. 'ar e emple, vous pouve6 modliser une application Be1, oC vous diffrencie6 graphiquement les pages =S', les fichiers *avascript, et les images. Aoici un e emple de diagramme des composants utilisant les ic;nes strotypes pour modliser les dpendances dans un formulaire =S'9

M. Grimaldi fvrier 2007 page 4/14

Diagramme de dploiement
les diagrammes de dploiement sont un autre modle de la catgorie des diagrammes d'e cution. Le diagramme de dploiement modlise les composants matriels utiliss pour implmenter un systme et l'association entre ces composants. Des composants peuvent appara@tre galement sur un diagramme de dploiement pour montrer le lieu gographique leur dploiement. Des diagrammes de dploiement peuvent 3tre mise en Duvre ds la phase de conception pour documenter l'architecture physique du systme.

Reprsentation
les lments utiliss dans des diagrammes de dploiement sont des composants, comme dans les diagrammes des composants, et des nDuds, qui reprsentent les ressources physiques de traitement du systme, et leurs associations. Un composant reprsente une entit logicielle du systme. )fichier de code source, programmes, documents, fichiers de ressource .etc... Sur un diagramme de dploiement, les composants sont placs dans des nDuds pour identifier l'endroit de leur dploiement.

Composant

Nud

Un nDud reprsente un ensem1le d'lments matriels du systme. $ette entit est reprsente par un cu1e tridimensionnel.

Association

une association, reprsente par une ligne pleine entre deu nDuds, indique une ligne de communication entre les lments matriels.

'ar e emple, le diagramme de dploiement ci4dessous montre que le composant Site$onfig est dploy sur le serveur Be1 et le composant %aseD% est dploy sur le serveur =''. <ous pouvons galement dterminer que le serveur Be1 communique avec le serveur ='', et le serveur ='' communique avec le serveur de 1ase de donnes et une imprimante.

M. Grimaldi fvrier 2007 page 5/14

M. Grimaldi fvrier 2007 page 6/14

Modlisation UML Diagrammes $omportementau


Diagramme des cas d'utilisation
les diagrammes des cas d'utilisation identifient les fonctionnalits fournies par le systme )cas d'utilisation., les utilisateurs qui interagissent avec le systme )acteurs., et les interactions entre ces derniers. Les cas d'utilisation sont utiliss dans la phase d'analyse pour dfinir les 1esoins de 5haut niveau5 du systme. Les o12ectifs principau des diagrammes des cas d'utilisation sont9 fournir une vue de haut4niveau de ce que fait le systme 0dentifier les utilisateurs )5acteurs5. du systme Dterminer des secteurs ncessitant des interfaces homme4machine. )0EM.

Les cas d'utilisation se prolongent au del/ des diagrammes imags. #n fait, des descriptions te tuelles des cas d'utilisation sont souvent employes pour complter ces derniers et reprsentent leurs fonctionnalits plus en dtail.

Reprsentation Graphique
Les composants de 1ase des diagrammes des cas d'utilisation sont l'acteur, le cas d'utilisation, et l'association. un acteur est un utilisateur du systme, et est reprsent par une figure filaire. Le r;le de l'utilisateur est crit sous l'ic;ne. Les acteurs ne sont pas limits au humains. Si le systme communique avec une autre application, et effectue des entresFsorties avec elle, alors cette application peut galement 3tre considre comme un acteur. un cas d'utilisation reprsente une fonctionnalit fournie par le systme, typiquement dcrite sous la forme Verbe+objet )par e emple immatriculer voiture, e acer utilisateur!. Les cas d'utilisation sont reprsents par une ellipse contenant leurs nom. les associations sont utilises pour lier des acteurs avec des cas d'utilisation. #lles indiquent qu'un acteur participe au cas d'utilisation sous une forme quelconque. Les associations sont reprsentes par une ligne reliant l'acteur et le cas d'utilisation.

Acteur

Cas d'utilisation

Association

M. Grimaldi fvrier 2007 page 7/14

L'image suivante montre comment ces trois lments de 1ase colla1orent pour former un diagramme de cas d'utilisation9 le testeur cre un registre des bugs .

Reprsentation te"tuelle
$haque cas d'utilisation, est associ / une srie d'actions reprsentant la fonctionnalit voulue, ainsi que les stratgies / utiliser dans l'alternative oC la validation choue, ou des erreurs se produisent. $es actions peuvent 3tre galement dfinies dans la description de cas d'utilisation. !ien n'tant prvu / ce su2et dans UML G.H, il n'y a donc aucune norme pour reprsenter ces cas te tuellement. $ependant, il y a quelques rgles communes que vous pouve6 suivre9 !gles communes de description te tuelle des cas d'utilisation9 - #crire un paragraphe dcrivant l'ordre des actions - Lister deu colonnes comprenant d'une part les actions de l'acteur et d'autre part les rponses du systme - Utiliser un patron identifiant les acteurs, les conditions prala1les, les postconditions, les scnarios principau de russite du processus, .etc. !appele64vous, le 1ut du processus de modlisation est de pouvoir illustrer le mieu possi1le les 1esoins du systme, aussi n'hsite6 pas / employer toutes les mthodes qui permettront une meilleurs comprhension des mem1res du pro2et. Aoici un e emple de reprsentation te tuelle9 Crer le Registre des #ogues $paragraphe de description! Le >esteur ouvre un registre de %ogues. Le >esteur indique la source du %ogue, une description du pro1lme, et la personne / qui le %ogue devrait 3tre assign. Le systme enregistre le %ogue et informe la personne affecte qu'un nouveau 1ogue lui a t soumis. Crer le Registre des #ogues $patron! cteur primaire! Le >esteur Le testeur e amine une application et dcouvre un nouveau 1ogue. 0l, But ! ou elle, veut le rapporter de sorte qu'il puisse 3tre trait. "orte! systme 4 le systme de garantie de la qualit pour l'application "IJ #iveau! Utilisateur Le testeur9 veut enregistrer un nouveau 1ogue Destinataires et L'assign9 veut 3tre avis de tous les nouveau 1ogues intr$ts! Directeur de la qualit9 veut conna@tre tous les 1ogues enregistrs Condition pralable! aucune Dclenchement! Le testeur dcouvre un 1ogue en e aminant une application Scnario "rincipal de G. Le testeur contr;le lance un nouveau rapport de 1ogue. Succ%s! K. Le systme enregistre le 1ogue avec la date de la soumission.

M. Grimaldi fvrier 2007 page 8/14

&'tension!

L. Le systme informe l'utilisateur affect. Ga. Le testeur ne sait pas / qui assigner le 1ogue. Le systme assigne le 1ogue au directeur de la qualit.

Diagramme des squences


les diagrammes des squences documentent les interactions / mettre en Duvre entre les classes pour raliser un rsultat, tel qu'un cas d'utilisation. UML tant con8u pour la programmation oriente o12et, ces communications entre les classes sont reconnues comme des messages. Le diagramme des squences numre des o12ets hori6ontalement, et le temps verticalement. 0l modlise l'e cution des diffrents messages en fonction du temps.

Reprsentation
Dans un diagramme des squences, les classes et les acteurs sont numrs en colonnes, avec leurs lignes de vie verticales indiquant la dure de vie de l'o12et. Objet les o12ets sont des instances des classes, et sont rangs hori6ontalement. La reprsentation graphique pour un o12et est similaire / une classe )un rectangle. prcde du nom d'o12et )facultatif. et d'un point4virgule ) 9 . . les acteurs peuvent galement communiquer avec des o12ets, ainsi ils peuvent eu aussi 3tre numrs en colonne. Un acteur est modlis en utilisant le sym1ole ha1ituel9 Stickman. les lignes de vie, (ife(ine, identifient l'e istence de l'o12et par rapport au temps. La notation utilise pour une ligne de vie est une ligne pointille verticale partant de l'o12et. les activations, sont modlises par des 1o@tes rectangulaires sur la ligne de vie. #lles indiquent quand l'o12et effectue une action. les messages, modliss par des flches hori6ontales entre les activations, indiquent les communications entre les o12ets.

Acteur

%igne de vie

Activation

&essage

L'e emple ci4dessous reprsente un diagramme des squences qui utilise des o12ets par dfaut )aucun nom n'est spcifi.. Aous pouve6 imaginer 1eaucoup d'e emples oC un utilisateur effectue une action dans l'interface utilisateur, et le systme appelle alternativement un autre o12et pour le traitement.

M. Grimaldi fvrier 2007 page 9/14

Diagramme des collaborations


$omme les autres diagrammes comportementau , les diagrammes de colla1oration modlisent les interactions entre les o12ets. $e type de diagramme est un croisement entre un diagramme des o12ets et un diagramme des squences. M la diffrence du diagramme des squences qui modlise l'interaction dans un format de type ligne4colonne, le diagramme des colla1orations emploie une disposition li1re des o12ets tels qu'on les trouve dans un diagramme des o12ets. $eci facilite la vision de toutes les interactions impliquant un o12et particulier. =fin de maintenir l'ordonnancement des messages dans un tel diagramme de formes li1res, ces derniers sont nots avec un numro chronologique. La lecture d'un diagramme des colla1oration implique de commencer au message G.N, et de suivre ainsi la squence des messages d'o12et en o12et.

Reprsentation
les o12ets, instances des classes, reprsentent une des entits impliques dans les communications. La reprsentation graphique pour un o12et est similaire / une classe )un rectangle. prcde du nom d'o12et )facultatif. et d'un point4 virgule ) 9 . . les acteurs peuvent galement communiquer avec des o12ets, aussi peuvent ils 3tre prsents sur des diagrammes de colla1orations. Un acteur est modlis en utilisant le sym1ole ha1ituel9 Stickman. les messages, modliss par des flches entre les o12ets, sont affects d'un numro et indiquent les communications entre les o12ets.

Objet

Acteur

&essage

Aoici l'e emple d'un administrateur utilisant une application Be1 d'encha@nement pour contr;ler un compte d'utilisateur. <ote6 que vous pouve6 suivre le processus d'un o12et / l'autre, selon le squencement ci4dessous9
M. Grimaldi fvrier 2007 page 10/14

G. !echerche utilisateur G.G. !cupration utilisateur K. Mise / 2our utilisateur K.G. Aalidation utilisateur K.K. mise / 2our utilisateur

Diagramme d'tat
Les diagrammes d'tat sont utiliss pour documenter les divers modes )5tat5. qu'une classe peut prendre, et les vnements qui causent une transition d'tat. 'ar e emple, votre tlviseur peut 3tre teint )dans l'tat 5teint5., et l'action sur le 1outon d'alimentation le fait s'allumer )tat 5allum5.. Une nouvelle action sur le 1outon d'alimentation provoque une transition d'tat 5allum5 vers l'tat 5teint5. #n comparaison avec le autres diagrammes comportementau qui modlisent les interactions entre des classes multiples, les diagrammes d'tat modlisent eu typiquement les transitions d'une seule classe.

Reprsentation
'tat la notation de l'tat dcrit le mode de l'entit. #lle est reprsente par rectangle avec les coins arrondis, contenant le nom de l'tat. une transition dcrit le changement de l'tat d'un o12et, provoqu par un vnement. La notation utilise pour reprsenter une transition est une flche, avec le nom d'vnement crit au4dessus, au4dessous, ou / c;t. l'tat initial est l'tat d'un o12et avant toute transitions. 'our des o12ets, ceci pourrait 3tre l'tat lors de leur instanciation. L'tat initial est reprsent par un cercle plein. Un seul tat initial est autoris sur un diagramme. l'tat final reprsente la destruction de l'o12et que nous modlisons. $es tats sont reprsents par un cercle plein entour d'un cercle.

(ransition

'tat initial

'tat inal

Aoici un e emple de diagramme d'tat qui modlise l'tat du compte d'un utilisateur9

M. Grimaldi fvrier 2007 page 11/14

Diagramme d'activit
les diagrammes d'activit sont utiliss pour documenter le droulement des oprations dans un systme, du niveau commercial au niveau oprationnel )de haut en 1as.. #n regardant un diagramme d'activit, vous trouvere6 des lments des diagrammes d'tat. #n fait, le diagramme d'activit est une variante du diagramme d'tat oC les 5tats5 reprsentent des oprations, et les transitions reprsentent les activits qui se produisent quand l'opration est termine. L'usage gnral des diagrammes d'activit permet de faire appara@tre les flots de traitements induits par les processus internes par rapport au vnements e ternes.

Reprsentation
'tat d'activit l'tat d'activit marque une action faite par un o12et. 0l est reprsent par un rectangle arrondi. quand un tat d'activit est accompli, le traitement passe / un autre tat d'activit. Les transitions sont utilises pour marquer ce passage. Les transitions sont modlises par des flches. Dans un diagramme d'activit, on peut placer les activit dans des couloirs )Swimlanes. qui reprsentent des systmes. Les o12ets sont numrs au dessus de la colonne, et les 1arres verticales sparent les colonnes pour former les s?imlanes . l'tat initial marque le point d'entre la premire activit. 0l est reprsent, comme dans le diagramme d'tat, par un cercle plein. 0l ne peut y avoir qu'un seul tat initial sur un diagramme. L'tat final marque la fin du droulement des oprations

(ransition

Couloir (Swimlane)

'tat initial

'tat inal

M. Grimaldi fvrier 2007 page 12/14

modlises. 0l peut y avoir des tats finau multiples sur un diagramme. 0ls sont reprsents par un cercle plein entour d'un autre cercle. Souvent, certaines activits peuvent 3tre faites en parallle. 'our ddou1ler le traitement 5OorP5 , ou le reprendre quand des activits multiples ont t accomplies )52oin5., des 1arres de synchronisation sont utilises. $elles4 ci sont modlises par des rectangles pleins, avec des transitions multiples entrantes ou sortantes.

#arre de )*nchronisation

'"emple
$onsidrons l'e emple de diagramme suivant, respectant les spcifications d'UML G.H. Le diagramme d'activit commence par un appel / l'activit 5!equest Service. = l'accomplissement de cette opration, une 1arre de synchronisation est utilise pour indiquer un traitement en parallle, oC le paiement du client, et la prise en charges de la commande par le service des ventes et le magasin sont effectus simultanment. Une autre 1arre de synchronisation est utilise pour indiquer que quand le client a 1ien pay et que la commande / 1ien t procde. La commande est alors pr3te pour la livraison. =prs la livraison le client peut recevoir sa commande et le processus est complet.

M. Grimaldi fvrier 2007 page 13/14

M. Grimaldi fvrier 2007 page 14/14