Vous êtes sur la page 1sur 33

Modlisation oriente objet UML

Le Langage de Modlisation objet Unifi

Les modles UML

Un modle est une abstraction de la ralit. Un modle est une vue subjective mais pertinente de la ralit. Un modle caractrise :

Un niveau mtier du domaine dapplication : connexion avec le vocabulaire du domaine. Diffrentes vues du modle objet final.

Vues de modlisation
Fonctionnel
Diagramme de Use Cases (Diagramme dactivits)

3 axes de modlisation

(Diagramme de squence)

Diagramme de Classes
(Diagramme dobjets)

Statique

Dynamique

Diagramme dtats
(Diagramme dactivits)

(Diagramme de squence)

Diagramme de composants (diagramme de dploiement

Diagramme de communication.

Cas d'utilisation (use cases)

Les fonctions du systmes sont reprsentes au travers des cas dutilisation.


Interaction entre le systme et lextrieur. Dfinissent les limites du systme et les relations entre le systme est lenvironnement. Dcrivent le comportement du systme du point de vue dun utilisateur, les acteurs. La structuration de la dmarche seffectue par rapport aux interactions dune seule catgorie dutilisateurs la fois.

Principes et dfinitions de base

Dfinitions :

Diagramme de communication, flux dvnements, ou de donnes entre des entits externes et le systme concevoir. Les use cases permettent de structurer les besoins des utilisateurs et les objectifs correspondants d'un systme. Ils permettent de classer les acteurs et structurer les objectifs du systme.

Les acteurs

Rle jou par une entit externe en interaction avec le systme tudi. Identification:

Utilisateurs humains directs. Les autres systmes connexes.

Reprsentation :
<<actor>> SI banque Client

Cas dutilisation

Use Case :

Ensemble de squences, dactions ralises par le systme et qui produisent un rsultat intressant pour un acteur particulier.
Fonction mtier du systme selon le point de vue dun de ses acteurs. Chercher le service fonctionnel du systme en rponse une action. Recenser les interactions entre les acteurs du systme.

Identification :

Cas dutilisation

Reprsentation :
<<actor>>
Acteur non Humain Cas dutilisation 1

Acteur humain 1

Cas dutilisation 2
Acteur humain 2

Exercice : Le GAB

Services offerts par le GAB :


Distribution dargent tout porteur de carte de crdit, va un lecteur de carte et distributeur de billets. Consultation de solde de compte, dpt en numraire et dpt de chques pour les clients porteurs dune carte de crdit de la banque. Toutes les transactions sont scurises. Il faut parfois recharger le distributeur!

Exercice : Le GAB

Identifier les acteurs ; Identifier les cas dutilisations ; Construire le diagramme des cas dutilisations.

Correction

Secondaire

<<actor>> Sys Auto

<<actor>> SI Banque

Secondaire

Affinement des cas dutilisation

Dtailler et organiser les cas dutilisation :

En ajoutant des relations dinclusion et/ou dextension. En regroupant en packages pour dfinir des blocs fonctionnel de plus haut niveau.

Relation dinclusion

Relation dextension

Structuration des cas dutilisation en packages

Plusieurs stratgies possibles :


Regroupement par acteur; Regroupement par domaine fonctionnel

Oprations non client Service support

<<actor>> Sys Auto


Sauthentifier

<<actor>> SI Banque

Oprations client

Maintenance

Acteur primaire (principal) ou secondaire

Tous les acteurs nutilisent pas forcment le systme.


Acteur principal : celui pour qui le cas dutilisation produit un rsultat observable. Acteur secondaire : participe au cas dutilisation, sollicit pour des informations complmentaires. Informe ou consulte le systme lors de lexcution du cas dutilisation.

Exercice : modlisation dun magasin

Le client entre dans le magasin, passe dans les rayons, demande ventuellement des renseignements ou procde des essais, prend des articles (ou les rserve si le stock est insuffisant), passe la caisse ou il rgle ses achats. Il peut bnficier dune rduction ou dun avoir. Il peut rgler en liquide, par chque (pour un montant suprieur 15 euros, ou par carte pour un montant suprieur 13 euros). Aucune rfrence nest attribu au client, mme si des renseignements sont conservs en cas de rclamation. Une livraison est possible pour les achats encombrants.

Diagramme de squence

Montrent des interactions entre objets selon un point de vue temporel. Pas de prsentation explicite du contexte des objets. Dans la vue fonctionnelle sert documenter les cas dutilisation.

Description des interactions entre objets sans dtails de synchronisation.

Diagramme de squence

Reprsentation :
appelant
dcroche tonalit

Ligne tlphonique

appelant

numrotation
indication de sonnerie sonnerie dcroche Les Flches correspondent des vnements dans le domaine dapplication Pas de distinction entre flots de donnes et flots de contrle.

Diagramme de squence en application

Ralisez un diagramme de squence qui dcrit le scnario du cas dutilisation Retirer de largent .

Diagramme dactivits

UML permet de reprsenter graphiquement le comportement d'une mthode ou le droulement d'un cas dutilisation, l'aide de diagrammes d'activits. Une activit reprsente une excution d'un mcanisme, un droulement d'tapes squentielles. Le passage d'une activit vers une autre est matrialis par une transition. Les transitions sont dclenches par la fin d'une activit et provoquent le dbut immdiat d'une autre (elles sont automatiques).

Diagramme dactivits

Reprsentation :
transition Activit 1 Activit 2

Demander addition garde [Prix < somme disponible] Rgler note [else] Faire vaisselle

Diagramme dactivits

Synchronisation

Synchronise des transitions : barre de synchronisation Ouvre et de ferme des branches parallles au sein d'un flot d'excution. Les transitions qui partent d'une barre ont lieu en mme temps. Franchissement dune barre aprs ralisation de toutes les transitions.

Diagramme dactivits

Synchronisation :
Appuyer touche ctrl Appuyer touche v

Coller texte

Diagramme dactivits en action

Ralisez un diagramme dactivits qui dcrit le cas dutilisation retirer de largent avec une carte .

Diagramme dtats transitions

Visualise des automates dterministes. On ne reprsente pas les automates des objets qui ne changent pas (ou peu) dtat. Un objet est tout moment dans un tat donn. Un objet passe dun tat un autre par les transitions. Les transitions sont dclenches par un vnement.

Diagramme dtats transitions

Reprsentation :

Etude dune caisse enregistreuse

Un systme simplifi de caisse enregistreuse de supermarch :


Un client arrive la caisse avec des articles payer Le caissier enregistre le numro didentification de chaque article, ainsi que la quantit si elle est suprieure un. La caisse affiche le prix de chaque article et son libell. Lorsque tous les achats sont enregistrs, le caissier signale la fin de la vente. La caisse affiche le total des achats. Le client choisit son mode de paiement :

Liquide : le caissier encaisse largent reu, la caisse indique la monnaie rendre au client. Chque : le caissier vrifie la solvabilit du client en transmettant une requte un centre dautorisation via la caisse. Carte de crdit : un terminal bancaire fait partie de la caisse. Il transmet une demande dautorisation en fonction du type de carte.

La caisse enregistre la vente et imprime le ticket Le caissier donne le ticket de caisse au client. Aprs saisie article le client peut prsenter des coupons de rduction. Lorsque le paiement est termine, la caisse transmet les informations sur le nombre darticles vendus au systme de gestion des stocks. Tous les matins, le responsable du magasin initialise les caisses pour la journe.

Etude dune caisse enregistreuse

Identifiez les acteurs et les cas dutilisation. Elaborez un diagramme des cas dutilisation. Ralisez un diagramme de squence dcrivant le scnario du cas dutilisation Traiter passage en caisse . Montrez par un diagramme dtats la succession des oprations pour le cas dutilisation Traiter passage en caisse .

Correction

<<actor>>

<<actor>>

Centre autorisation chques

Centre autorisation cartes

Quelques conseils

Identification des acteurs : Utilisateurs humains directs (admin, oprateur); Les systmes connexes interagissant avec le systme tudi. Acteurs logiques au profit des acteurs physiques: Lacteur est celui qui bnficie de lutilisation su systme. Permet de saffranchir des technologies dinterfaces. Utilisez le plus souvent possibles les relations dinclusions et dextensions.

Quelques conseils

Les relations entre cas dutilisation : Inclusion : vite de devoir dcrire plusieurs fois le mme enchanement; Extension : Permet de sparer un comportement complexe optionnel ou rare du comportement obligatoire; Gnralisation / Spcialisation : formalise des variations importantes sur le mme cas dutilisation. Compltez la description des cas dutilisation par un ou plusieurs diagramme dynamique dUML. Pour la dynamique des cas dutilisation => diagramme dactivits. Ou un diagramme dtats pour les cas dutilisation trs interactifs. Pour dcrire le scnario nominal, utilisez un diagramme de squence.