Vous êtes sur la page 1sur 34

INSIA SIGL 2 UML 2 : ANALYSE FONCTIONNELLE Diagrammes de cas dutilisation, de squence, dactivits

Bertrand LIAUDET

SOMMAIRE
LES UC 1. 2. 3. 4. 5. 6. 7. Prsentation gnrale de la notion de cas dutilisation : UC Approche par lexemple Les acteurs Les UC du logiciel Formalisme Mthode de construction dun diagramme des UC Architecture et diagramme des cas dutilisation Complments, limites et alternatives du diagramme des cas dutilisation. 2 2 4 10 13 18 20 21 22 22 27 28 30 30 33 33

LE DIAGRAMME DE SEQUENCE SYSTEME 1. 2. 3. Le diagramme de squence systme Architecture et diagramme de squence systme Modularit, test et boucle

LE DIAGRAMME DACTIVITE DES SCENARIOS 1. 2. 3. Les diagrammes dactivit dans lanalyse fonctionnelle Diagramme dactivit dun UC : tous ses scnarios Diagramme dactivit dun traitement MERISE

Premire dition : janvier 2009 Deuxime dition : dcembre 2009

INSIA UML SIGL 2 Cours 02 page 1/34 - Bertrand LIAUDET

LES UC
Il est facile de dcrire la mthode encore que son application exige coup sr savoir et pratique.

1.

Prsentation gnrale de la notion de cas dutilisation : UC

Diagramme UML Cas dutilisation ANALYSE FONCTIONNELLE Squence Activits Cas dutilisation : UC Cas dutilisation = Use Case = UC Un UC est : un usage du systme (du programme), une fonctionnalit du systme. Plus prcisment : une fonctionnalit complte du systme. Exemple : Dans le systme guichet automatique dune banque , retirer de largent est un UC. Cest une fonctionnalit complte du systme qui va de linsertion de la carte de retrait par le client jusqu la rcupration de la carte de retrait par le client. Du point de vue de lutilisateur, un UC est : un ensemble dactivits du systme qui produit un rsultat intressant pour un utilisateur Du point de vue du systme lui-mme, un UC est : un ensemble dactivits qui part dun systme au repos pour arriver de nouveau un systme au repos.

INSIA UML SIGL 2 Cours 02 page 2/34 - Bertrand LIAUDET

Acteur Les UC sont initis par des acteurs. Un acteur est lextrieur du systme. Il interagit avec le systme. Exemple : Dans le systme guichet automatique dune banque , le client qui vient retirer de largent est un acteur du systme. Le scnario : une instance dun UC Dfinition Un scnario est un droulement concret dun UC parmi tous les droulement concrets possibles. Un UC est donc un ensemble de scnarios. Le scnario est lUC ce que lobjet est la classe : une instance concrte. Un scnario est une instance concrte dun UC (un lment de lensemble de tous les scnarios pour le UC considr). Scnario nominal Le scnario nominal est le scnario qui correspond au fonctionnement normal du UC, cest-dire sa finalit premire. Les autres scnarios, alternatifs, sont des cas particuliers. Exemple : Il y aura plusieurs scnarios pour retirer de largent : si le code de la carte de retrait est faux ; si le client nest pas autoris retirer de largent ; si le guichet na plus de billets ; etc. Le scnario nominal dcrit le retrait dargent normal . Acteur et instance dacteur Lacteur est une abstraction. Linstance dacteur est une personne concrte. Linstance dacteur est lacteur ce que lobjet est la classe. Exemple : M. Dupond qui vient retirer de largent est un acteur concret.

INSIA UML SIGL 2 Cours 02 page 3/34 - Bertrand LIAUDET

2.

Approche par lexemple

Gnralisation et spcialisation des UC : UC concrets et abstraits Partons du logiciel Word et dcrivons les UC. Les UC sont donns par les menus. Les UC abstraits sont les menus qui contiennent des sous-menus. Les UC concrets sont les menus qui conduisent une activit. Arborescence des menus Menu gnral

Fichier

Edition

Affichage

Insertion etc.

New

Ouvrir

Save

Save as

Envoyer vers

Destinataire

Dossier exchange

etc.

Les UC concrets correspondent aux feuilles de larbre. Ils sont souligns. Les UC abstraits correspondent aux nuds non-feuilles.

INSIA UML SIGL 2 Cours 02 page 4/34 - Bertrand LIAUDET

UC des menus
Affichage

Edition

Utilisateur hrite hrite

Gestion des fichiers hrite hrite hrite

Nouveau

Ouvrir

Sauver

Sauver sous hrite

Envoyer vers

hrite

Destinataire

Dossier exchange

UC abstraits Il y a 4 UC abstraits : Edition , Affichage , Gestion de fichier et Envoyer vers . Ces UC abstraits regroupent des UC concrets. UC concrets Il y a 6 UC concrets : Nouveau , Ouvrir , Sauver , Sauver sous , Destinataire , et Dossier exchange . Les UC concrets correspondent un usage concret du logiciel. Niveaux de prsentation des UC On peut proposer un seul diagramme des UC : il risque dtre trs embrouill. On aura donc intrt prsenter plusieurs diagrammes dutilisation par niveau dabstraction descendant.

INSIA UML SIGL 2 Cours 02 page 5/34 - Bertrand LIAUDET

UC du menu gnral
Affichage

Edition

Utilisateur

Gestion des fichiers

Etc.

UC du menu gnral

UC du menu Gestion de fichier


Gestion des fichiers hrite Utilisateur Nouveau Ouvrir hrite hrite hrite hrite

Sauver

Sauver sous hrite

Envoyer vers hrite

Destinataire

Dossier exchange

UC du menu Gestion de fichier

INSIA UML SIGL 2 Cours 02 page 6/34 - Bertrand LIAUDET

UC dune borne de retrait dargent : inclusion et extension

Systme Borne interactive de banque

extends si demand

Demander un ticket

Demande d'autorisation Retirer argent * hrite Tout porteur de carte Faire virement S'authentifier Serveur uses *

uses

Consulter compte Porteur de carte de la banque

Remarques: Le serveur est un acteur passif. C'est un logiciel. Le lien Retier argent -> serveur est orient du fait de la passivit de l'acteur. On nomme le lien pour faciliter la comprhension (slectionner le lien, forme / action / option d'affichage

UC concret Il y a trois UC concrets: retirer de largent , effectuer un virement et consulter le compte . Composant : sous-UC inclus Ces trois UC incluent le sous-UC sauthentifier . Ce sous-UC est un composant du UC concret. Composant : sous-UC tendu Le UC retirer de largent est tendu par le sous-UC demander un ticket la condition que ce soit demand. Ce sous-UC est un composant du UC concret.

INSIA UML SIGL 2 Cours 02 page 7/34 - Bertrand LIAUDET

Inclusion de UC Un UC correspond au film du droulement du programme pour une utilisation donne. Un UC inclus est un morceau de ce film. Il faut viter de mettre trop de UC inclus pour viter dalourdir inutilement le diagramme des UC. On met des UC inclus dans 3 cas : 1. Quand on pense que cela apporte quelque chose la comprhension du diagramme 2. Quand le UC inclus est partag par plusieurs UC. 3. Quand le UC inclus est aussi un UC pour un acteur. Extension de UC Cest le mme principe que pour les inclusions : Un UC correspond au film du droulement du programme pour une utilisation donne. Lextension dun UC inclus est un morceau de ce film. Mais ce morceau ne sexcute que sous condition. Il faut viter de mettre trop dextension de UC pour viter dalourdir inutilement le diagramme des UC. On met des UC tendus dans 3 cas : 1. Quand on pense que cela apporte quelque chose la comprhension du diagramme. 2. Quand le UC tendu est partag par plusieurs UC. 3. Quand le UC tendu est aussi un UC pour un acteur. Les acteurs Gnralisation des acteurs Les acteurs peuvent tre gnraliss et inversement spcialiss. Lintrt de la gnralisation, cest de montrer que certains acteurs hritent de tous les UC dautres acteurs, et quils ont en plus leur UC spcifiques. Dans lexemple trait, lacteur porteur de carte de la banque peut consulter son compte et faire des virements. En plus de cela, il peut faire ce que peuvent faire tous les porteurs de carte, savoir retirer de largent.

INSIA UML SIGL 2 Cours 02 page 8/34 - Bertrand LIAUDET

Version avec hritage


Retirer argent

hrite Tout porteur de carte Faire virement

Consulter compte Porteur de carte de la banque

Version quivalente sans hritage


Retirer argent

Tout porteur de carte Faire virement

Consulter compte Porteur de carte de la banque

INSIA UML SIGL 2 Cours 02 page 9/34 - Bertrand LIAUDET

3.

Les acteurs

Relation entre les acteurs : la gnralisation Il ny a quune seule relation possible entre les acteurs : la gnralisation Lacteur source est une espce de lacteur destination. Lacteur destination est un genre de lacteur source. Exemple et formalisme

affichage utilisateur

paramtrage administrateur

Ladministrateur est une espce dutilisateur. Tous les administrateurs sont des utilisateurs. Donc les administrateurs accdent aux UC des utilisateurs : ils accdent affichage . Par contre, les utilisateurs naccdent pas au paramtrage. Catgories dacteurs Les distinctions ci-dessous permettent danalyser compltement tous les acteurs du systme. Acteur principal vs Acteur secondaire Lacteur principal : lutilisateur. Celui pour qui est fait le systme. Lacteur secondaire : ladministrateur du systme, etc.

Acteur humain vs Acteur mcanique Les acteurs humains sont les fonctions des personnes (le bibliothcaire, le client, ladministrateur) ou les services (la comptabilit). Les acteurs mcaniques peuvent tre matriels (des priphriques), logiciels (un serveur, un autre systme), ou temporels (une chance).

INSIA UML SIGL 2 Cours 02 page 10/34 - Bertrand LIAUDET

Acteur actif vs Acteur passif Lacteur actif est lorigine du UC. Il utilise le systme Lacteur passif nest pas lorigine du UC. Il est utilis par le systme. Formalisme :
affichage utilisateur imprimante

Les flches distinguent un acteur actif dun acteur passif.

ou bien :
affichage utilisateur imprimante

Par dfaut, labsence de flche caractrise les acteurs actifs. Acteur externe vs Acteur interne Les acteurs externes sont les acteurs normal , lextrieur du systme. Les acteurs internes sont internes au systme. Ils correspondent soit un acteur mcanique temporel (une chance), soit un tat particulier du systme ncessitant un usage particulier du systme.

Bilan En gnral : Lacteur principal est une personne et est actif Les logiciels sont des acteurs passifs et secondaires. Notion dvnement Un vnement est un stimulus qui conduit un usage du systme. Il y a trois types dvnement : Les dcisions externes : cest la principale cause de lintervention dun acteur. Le client dcide de retirer de largent. Un systme externe dcide denvoyer un message au systme.

INSIA UML SIGL 2 Cours 02 page 11/34 - Bertrand LIAUDET

Les chances : ces vnements peuvent conduire une action automatique du systme ou seulement intervenir dans une dcision externe. Les tats : ces vnements correspondent une situation particulire du systme ncessitant un usage particulier du systme. Comme pour les chances, un tel vnement peut conduire une action automatique du systme ou seulement intervenir dans une dcision externe.

Lanalyse des vnements est une technique permettant la mise au jour des cas dutilisation et des acteurs.

INSIA UML SIGL 2 Cours 02 page 12/34 - Bertrand LIAUDET

4.

Les UC du logiciel Formalisme

Description des UC Exemple

Borne interactive dune banque Retirer de largent

Effectuer un virement

Client

Consulter les comptes

UC
<<strotype>> Nom du cas Liste de proprits Ou bien Nom du cas Liste de proprits Le petit ovale symbolise le strotype <<UC >> Ou bien <<UC>> Nom du cas Liste de proprits

Strotype Un strotype est une utilisation particulire dun lment de modlisation. Llment strotyp a un parent non strotyp. La syntaxe est la mme pour llment strotyp et pour son parent, mais la smantique est diffrente. Le rectangle (qui est un classeur) est strotyp en <<UC >> Lovale (qui est un UC) peut tre strotyp si on en voit lutilit.
INSIA UML SIGL 2 Cours 02 page 13/34 - Bertrand LIAUDET

Le classeur Un classeur est un lment de modlisation qui dcrit une unit comportementale ou structurelle. Cest la forme la plus simple du regroupement. Un classeur se reprsente par un rectangle. Le systme complet est un classeur.

Borne interactive dune banque Retirer de largent

Effectuer un virement

Consulter les comptes

Lacteur

Nom de lacteur Ou bien <<acteur>> Nom de lacteur

Lassociation entre acteur et UC Lassociation est un lien entre un acteur et un UC. Par dfaut, lassociation nest pas oriente : cela signifie que la communication se fait dans les deux sens. En orientant lassociant dans un sens, on signifie la priorit dun sens de communication sur un autre. Ce nest quune priorit. Elle nexclut pas la communication dans lautre sens. Usage : Pour les acteurs actifs, on laisse une association non oriente. Pour les acteurs passifs, on oriente lassociation vers lacteur.

INSIA UML SIGL 2 Cours 02 page 14/34 - Bertrand LIAUDET

Les 3 relations entre les UC 3 relations possibles entre les UC : gnralisation inclusion extension

La gnralisation correspond la gnralisation classique. Inclusion et extension sont deux formes de la relation de composition.

La relation relie deux UC par une flche. Du ct du dpart de la flche, on parle de source, du ct de larrive de la flche, on parle de destination.
Source destination

La gnralisation Le UC source est une espce du UC destination. Le UC destination est un genre pour le UC source. Par exemple Le UC consulter le compte carte bleue est une espce du UC consulter les comptes Formalisme Ce formalisme vaudra pour toutes les relations de gnralisation / spcialisation.
Consulter les comptes

Consulter le compte CB

Linclusion Le UC source comprend le comportement du UC destination. Donc la destination est une partie ncessaire de la source : D inclut dans S.
INSIA UML SIGL 2 Cours 02 page 15/34 - Bertrand LIAUDET

On peut aussi dire que la destination est une tape oblige de la source. Donc : si S alors D si non D alors non S Linclusion, comme la gnralisation, sont des relations structurelles et ncessaires. Par exemple Le UC Retirer de largent inclut le UC sauthentifier . Sauthentifier est une tape oblige de retirer de largent . Formalisme
Retirer de largent <<inclut>>

Sauthentifier

Lextension Le UC source ajoute son comportement au UC destination. Il lajoute sous condition. Remarque : Sil ny avait pas de condition, alors lextension serait une inclusion inverse : le UC destination comprendrait le comportement du UC source. Mise part la condition, lextension peut tre vue comme quivalente linclusion (mais lenvers). Ce qui distingue les deux, cest le caractre ncessaire de lune (inclusion) et le caractre accidentel de lautre (extension). Par exemple Le UC Acheter un billet est tendu par le UC tablir une facture. En effet, le UC tablir une facture sera effectu uniquement la demande du client.

INSIA UML SIGL 2 Cours 02 page 16/34 - Bertrand LIAUDET

Formalisme
Acheter un billet Condition : si le Client le demande <<tend>> tablir une facture

INSIA UML SIGL 2 Cours 02 page 17/34 - Bertrand LIAUDET

5.

Mthode de construction dun diagramme des UC

Recherche des acteurs Est acteur du systme tout ce qui est lextrieur du systme et qui interagit avec le systme. Les principaux acteurs sont les utilisateurs du systme. Mais il ne faut pas oublier ceux qui ladministrent dune faon ou dune autre. Ni les acteurs mcaniques : Les priphriques manipuls par le systme (imprimantes, systme de tltransmission, etc.) Les logiciels interfacs ou intgrs au systme (serveur, etc.)

Lacteur principal dun UC est celui pour qui le UC produit le rsultat utile. En gnral, lacteur principal initie le UC, mais ce nest pas toujours vrai. Les autres acteurs du UC sont dits secondaires. Recherche des UC Les UC sont les finalits du systme : ses objectifs, ce quon veut quil permette de raliser. Les UC doivent couvrir tous les besoins fonctionnels du systme. Par exemple : Un logiciel de rservation de billet de train sur internet trois UC : La recherche des voyages possibles La rservation des places (on peut rserver et payer plus tard). Le paiement

Autre exemple : Dans le cas des retraits dargent, le systme interagit avec le systme central qui donne les autorisations. Ce systme central doit tre reprsent comme un acteur. Dans ce systme il y a trois UC : Le retrait dargent La consultation de compte Les virements de compte compte
INSIA UML SIGL 2 Cours 02 page 18/34 - Bertrand LIAUDET

Si on distinguait entre consultation du solde et consultation des oprations, on aurait deux espces de UC pour le genre consultation de compte. Mais il ny a pas dacteur qui soit spcifiquement associ lun de ces UC sans tre associ aussi au cas gnral. Approche par abstraction : de lUC abstrait lUC concret On peut produire un diagramme des UC les plus abstraits. Cest celui qui donne la vision fonctionnelle du systme la plus globale. Ensuite, pour chaque UC abstrait, on peut entrer dans le dtail et aller jusquau UC concrets : ceux qui seront finalement concrtiss en scnarios. UC principaux Les UC principaux sont les UC les plus abstraits : ce sont ceux qui sont directement associs un acteur. La liste des UC principaux doit couvrir exhaustivement toutes les fonctionnalits du systme. Les extensions, les inclusions et les spcialisations sont des prcisions apportes au modles dUC principaux. Recherche des UC par la recherche des vnements Lanalyse des vnements est une technique permettant la mise au jour des cas dutilisation et des acteurs. Recherche par le diagramme des flux et les diagrammes dactivit Pour dterminer les UC et les acteurs externes, on peut reprendre la technique de lanalyse des flux de la mthode MERISE : diagramme organisationnel des flux, diagrammes dactivit correspondants, tableau des phases (pralable au MOT).

INSIA UML SIGL 2 Cours 02 page 19/34 - Bertrand LIAUDET

6.

Architecture et diagramme des cas dutilisation Le diagramme des cas dutilisation permet de reprsenter de deux faons les sous-systmes de larchitecture systme

Le sous systme en tant que sous ensemble de cas dutilisation Les cas dutilisation dun sous-systme peuvent tre regroups dans un classeur. Formalisme : celui du classeur

Sous systme 1 Retirer de largent

Effectuer un virement

Acteur

Sous systme 2

Effectuer un virement

Le sous-systme en tant quacteur Un sous-systme peut tre considr comme un acteur, et reprsent comme tel. Ce soussystme sera acteur pour dautres sous-systme. Formalisme : strotype sous-systme Les acteurs en tant que sous-systme sont strotyps <<sous-systme>>.

UC 1 Acteur 1 UC 2 Acteur 2 <<sous-systme>>

INSIA UML SIGL 2 Cours 02 page 20/34 - Bertrand LIAUDET

7.

Complments, limites et alternatives du diagramme des cas dutilisation.

Complments Description du droulement des cas dutilisation Le diagramme des cas dutilisation est complt par un ensemble de diagrammes de squence systme qui permettent de dtailler le droulement effectif dun scnario. A ces diagrammes de squence on peut aussi associer des diagrammes dactivit. Maquettage de lIHM Laspect visuel de lutilisation nest pas dcrit par les diagrammes UML. Un simple maquettage (dessin des crans prvus) permet de clarifier lusage rel du logiciel Prototype Sur certains points particulirement complexes, on peut aussi produire un prototype (une simulation du logiciel final) pour pousser un peu plus loin la concrtisation de la conception. Alternatives Le diagramme des cas dutilisation et les diagramme de squence peuvent tre remplacs par une analyse purement textuelle. En gnral, on conserve au moins lanalyse des cas dutilisation sous forme graphique pour faciliter la communication avec le matre douvrage (le client, lutilisateur final).

INSIA UML SIGL 2 Cours 02 page 21/34 - Bertrand LIAUDET

LE DIAGRAMME DE SEQUENCE SYSTEME


Il est facile de dcrire la mthode encore que son application exige coup sr savoir et pratique.

1.

Le diagramme de squence systme

Diagramme UML Cas dutilisation ANALYSE FONCTIONNELLE Squence Activits Prsentation UC, scnario, scnario nominal Un UC est une abstraction. Les scnarios correspondent aux instances concrtes dun UC. Le scnario nominal est le scnario pour lequel le UC est conu. Les scnarios alternatifs sont les scnarios alternatifs au scnario nominal. Dfinition dun diagramme de squence systme Le diagramme de squence systme dcrit les changes entre lutilisateur et le systme, cest--dire le logiciel raliser (et plus gnralement entre le systme et tous les acteurs) pour un ou plusieurs scnarios dun UC donn. On peut choisir de se limiter au diagramme de squence systme du scnario nominal. Version textuelle La squence des changes entre lutilisateur et le systme pour un UC donn peut tre prsente de faon uniquement textuelle. Dans ce cas, on prsente tous les scnarios de lUC et non pas seulement le scnario nominal.

INSIA UML SIGL 2 Cours 02 page 22/34 - Bertrand LIAUDET

Diagramme de squence systme du save as Diagramme de squence du scnario nominal du UC : save as

UC : save as But : sauvegarder un fichier sous un nouveau nom Scnari o nominal Pr-conditions : fichi er ouvert sous l'ancien nom Post-conditions : ficiher ouvert sous le nouveau nom utilisateur Affichage menu

systmeWord

Choix du "save as"

affichage cran de saisie

Sai sie du nom et du rpertoire

ok

Syntaxe des diagrammes de squence systme : En commentaires, on prcise les caractristiques du diagramme : UC concern, but de lUC, cas nominal ou alternatif, pr-condition, post-condition. Lutilisateur communique avec le systme considr comme un objet : ici cest lobjet systmeWord. Il est soulign, la premire lettre du nom de lobjet est en minuscule. Pr-conditions et post-conditions dcrivent ltat du systme avant et aprs lusage de lUC. Message synchrone : une fois le message envoy, lexpditeur est bloqu jusqu ce que le destinataire accepte le message. Message asynchrone : le message envoy ninterrompt pas lexcution de lexpditeur. Caractre synchrone ou asynchrone est indtermin. Attention, cette reprsentation peut aussi tre utilise pour les messages asynchrones. Remarque : on pourrait se passer des deux premiers changes : menu et choix du save as et entrer directement dans le droulement du save as : affichage de lcran de saisie.

INSIA UML SIGL 2 Cours 02 page 23/34 - Bertrand LIAUDET

Description textuelle du UC : save as On peut aussi dcrire les scnarios de faon uniquement textuelle (on nutilisera pas cette mthode). En gnral dans ce cas, on dcrit la fois le cas nominal et les cas alternatifs.

Identification Nom du cas : Save as But : sauvegarder dans un autre fichier Acteur principal : lutilisateur Acteur secondaire : aucun Squencement Un fichier a t ouvert Pr-conditions (tat du systme avant lopration). Fichier ouvert sous lancien nom Enchanement nominal 1.0 Affichage du menu 2.0 Choix du save as 3.0 Affichage de lcran de saisie du save as 4.0 Saisie du nom et du rpertoire du nouveau fichier et validation. 5.0 Lapplication renvoie un message de confirmation de lopration. Post-conditions (tat du systme aprs lopration) Fichier ouvert sous le nouveau nom. Alternative n1 4.1 Annulation en cours de saisie (4.1 est une alternative 4.0) Post-conditions (tat du systme aprs lopration) Fichier ouvert sous lancien nom. Alternative n2 5.1.1 Message derreur : le disque nest pas accessible 5.1.2 Validation du message Retour en 3.0 Syntaxe des descriptions textuelles des diagrammes de squence systme On dcrit lenchanement nominal, puis les alternatives. Les alternatives peuvent conduire la fin de lUC ou un retour une tape du cas nominal. Toute sortie de lUC saccompagne dune description des post-conditions. Remarques La description textuelle permet de reprsenter les alternatives et les rptitions. On na pas prsenter cette possibilit dans les diagrammes de squence, toutefois la syntaxe UML le permet, quoique ce soit peu recommand et peu utilis pour des questions de lisibilit. Pour reprsenter les alternatives, on prfrera lutilisation de diagrammes dactivits.

INSIA UML SIGL 2 Cours 02 page 24/34 - Bertrand LIAUDET

Diagramme de squence systme de retirer de largent Diagramme de squence du scnario nominal du UC : retirer de largent. On sintresse au logiciel dune banque : un client vient retirer de largent sur son compte. Cest le guichetier qui gre lopration.

UC : retirer argent But : retirer de l'argent sur un compte Scnario nominal Pr-conditions : rien Post-conditions : le compte est ouvert

systme guichetier Affichage cran de saisie Saisie du numro de compte Demande de validit du compte ok Affichage cran de choix des oprations Saisie d'un retrait de 200 euros Demande de dbit du compte ok impression bordereau ok systme Central imprimante

Syntaxe des diagrammes de squence systme Dans cet exemple, on a 2 acteurs secondaires qui sont des machines : le systme central (un logiciel) et limprimante (une machine physique). Remarques On a choisi dentrer dans lUC par louverture du compte et den sortir avec un compte ouvert. On pourrait aussi choisir de fermer le compte dans lUC ou dentrer dans lUC avec un compte ouvert.

INSIA UML SIGL 2 Cours 02 page 25/34 - Bertrand LIAUDET

Description textuelle du UC : retirer de largent.

Identification Nom du cas : retirer de largent But : opration de retrait dargent par un guichetier de banque Acteur principal : le guichetier Acteurs secondaires : le systme central, limprimante Squencement LUC est utilisable tout moment Pr-conditions (tat du systme avant lopration). rien Enchanement nominal 1.0 Le systme affiche un cran de saisie 2.0 Le guichetier saisit le numro de compte du client 3.0 Lapplication demande la validit du compte auprs du systme central 4.0 Le systme central valide le compte 5.0 Lapplication affiche un cran de choix des oprations 6.0 Le guichetier slectionne un retrait despces de 200 euros 7.0 Lapplication demande au systme central de dbiter le compte. 8.0 Le systme central valide la demande 9.0 Le systme imprime un bordereau 10.0 Le systme notifie au guichetier quil peut dlivrer le montant demand. Post-conditions (tat du systme aprs lopration). Le compte est ouvert pour dautres oprations Alternative n1 4.1 Le systme central ne valide pas le compte (alternative 3.0) Retour en 1.0 Alternative n2 8.1 Le systme central ne valide pas le retrait (alternative 7.0) Retour en 5.0

Remarques : La description textuelle permet de reprsenter les alternatives et les rptitions. On na pas prsenter cette possibilit dans les diagrammes de squence, toutefois la syntaxe UML le permet, quoique ce soit peu recommand et peu utilis pour des questions de lisibilit. Pour reprsenter les alternatives, on prfrera lutilisation de diagrammes dactivits.

INSIA UML SIGL 2 Cours 02 page 26/34 - Bertrand LIAUDET

2.

Architecture et diagramme de squence systme

Appel rflexif sur lobjet systme On peut montrer des appels rflexifs qui signifient lexistence de communication entre soussystmes :
systme Acteur_1 Message 1

message 2 ok

Dfinition de plusieurs objets sous systme On peut reprsenter plusieurs sous-systmes dans le diagramme de squence systme :

sous Systme 1 Acteur_1 Message_1 Message_2 ok ok

sous Systme 2

INSIA UML SIGL 2 Cours 02 page 27/34 - Bertrand LIAUDET

3.

Modularit, test et boucle

Modularit On peut regrouper dans un module une squence dchanges entre lutilisateur et le systme. Ce module pourra tre utilis dans dautres diagrammes de squence sans avoir re-dtailler son contenu. Exemple et syntaxe : Diagramme de squence du Cas dutilisation 1 :

Use Case 1 Acteur LOGIN demande login et mot de passe saisie login et mot de passe

systme

Message 1 message 2

Diagramme de squence du Cas dutilisation 2 : On rutilise le module LOGIN :


systme

Use Case 2 Acteur LOGIN

Message 3 Message 4

INSIA UML SIGL 2 Cours 02 page 28/34 - Bertrand LIAUDET

Test et boucle On peut reprsenter des tests et des boucles dans les diagrammes de squence. Toutefois, au niveau des diagrammes de squence, il est prfrable de ne pas le faire et de privilgier une lecture facilite en se limitant un seul scnario par diagramme de squence systme. Les diagrammes dactivits sont plus appropris pour reprsenter les tests et les boucles. On les utilisera pour reprsenter la totalit des scnarios dun cas dutilisation.

INSIA UML SIGL 2 Cours 02 page 29/34 - Bertrand LIAUDET

LE DIAGRAMME DACTIVITE DES SCENARIOS


Il est facile de dcrire la mthode encore que son application exige coup sr savoir et pratique.

1.

Les diagrammes dactivit dans lanalyse fonctionnelle

Diagramme UML Cas dutilisation ANALYSE FONCTIONNELLE Squence Activits

Prsentation Le diagramme dactivit montre lenchanement des actions (une action est un partie de lactivit) et des dcisions au sein dune activit du systme, ou au sein de tout le systme (do son utilisation en analyse fonctionnelle et en analyse organique). Le diagramme dactivit correspond aux organigrammes de lalgorithmique classique. Lactivit permet de reprsenter nimporte quel blocs dinstructions, de la simple instruction au programme complet en passant par la fonction ou nimporte quel morceau de code. Les tests sont reprsenter par des transitions Les boucles sont reprsenter par un retour en arrire dans le flots des activits. Elments des diagrammes dactivit et formalisme UML Activit Une activit est lexcution dun comportement, autrement dit un programme ou un bout de programme qui sexcute. Action Une action est une partie de lactivit. Une activit est par exemple constitue de plusieurs actions qui se droulent lune aprs lautre : elles seront relies par des transitions.

INSIA UML SIGL 2 Cours 02 page 30/34 - Bertrand LIAUDET

Laction permet de reprsenter nimporte quel blocs dinstructions, de la simple instruction au programme complet en passant par la fonction ou nimporte quel morceau de code. Transition Une transition relie deux actions entre elles (source - destination).

Une transition peut tre rflexive (ce sera alors forcment une transition conditionnelle). Elle montre le passage dune activit lautre. En gnral, elle est dclenche par la fin du comportement de lactivit source. Etat initial Ltat initial montre le point de dpart de la premire activit. Il ny a quun seul tat initial par activit. Etat final Ltat final montre le point darrive de la dernire activit. Il peut y avoir plusieurs tats finaux pour une activit.

Transition conditionnelle = dcision

Cest un aiguillage dans une transition. On peut prciser la condition de laiguillage. non oui

condition

On prcise les conditions de passage dans les diffrentes branches de laiguillage. Attention : la transition conditionnelle indique que le flux va partir dun ct ou de lautre. Mais attention : il ny a pas dactivits (de saisie, daffichage, daffectation) ce niveau. Le choix a t fait au niveau de lactivit qui prcde. La transition correspond au test de la programmation imprative (C, C++, etc.) Etat sous-activit Un tat sous-activits encapsule un diagramme dactivit.

INSIA UML SIGL 2 Cours 02 page 31/34 - Bertrand LIAUDET

Synchronisation fourche ou Transition fourche Certaines activits peuvent se drouler en parallle :

Synchronisation jonction ou Transition jonction Certaines activits peuvent tre dclenches par la fin coordonne de plusieurs autres Trave ou Couloir Les traves rpartissent les activits par responsable des activits (personnes ou service). On peut aussi reprsenter les acteurs dans les traves. Transition objet objet : Classe [valeur]

On peut faire apparatre les objets dans une transition entre deux activits Les objets reprsents sont ceux qui initient des activits, qui sont utiliss par des activits, ou qui sont modifis par des activits. Transition signal : envoi et rception

Envoi :

Recption :

On peut faire apparatre lenvoi ou la rception dun signal entre deux activits

INSIA UML SIGL 2 Cours 02 page 32/34 - Bertrand LIAUDET

2.

Diagramme dactivit dun UC : tous ses scnarios On peut reprsenter tous les scnarios dun UC dans un diagramme dactivit. On utilisera cette possibilit dans le projet.

Exemple : le save as

afficher accs disque impossible

[erreur] [ok] saisie nom et rpertoire validation test d'existence test [ok] criture

[esc]

[confirmation]

demande de confirmation d'crasement

[esc] confirmation

[ok]

Dans un tel diagramme, on aura intrt essayer de faire apparatre le scnario nominal. Dans notre exemple, il correspond au chemin tout droit. On pourrait aussi mettre des transitions en gras.

3.

Diagramme dactivit dun traitement MERISE On peut reprsenter un traitement au sens MERISE avec un diagramme dactivit. Un traitement au sens MERISE est un ensemble dactivits coordonnes dans le temps qui pourront tre ralises par plusieurs acteurs humains en utilisant plusieurs logiciels. Lanalyse dun traitement MERISE permet danalyser les relations entre les diffrents acteurs humains indpendamment des relations directes avec le logiciel raliser. Dans le cas dun systme dinformation complexe, son utilisation peut permettre une meilleure comprhension du cahier des charges et permettre ainsi une mise au jour facilite des UC du logiciel raliser.

INSIA UML SIGL 2 Cours 02 page 33/34 - Bertrand LIAUDET

Exemple : diagramme dactivit du traitement PasserCommande


Client Service comptable Service livraison

Passer Commande

Etablir devis Vrifier disponibilit

[modifier] Calculer le prix

Devis Valider valider Annuler

Facture [mise] Rgler la facture Facture [rgle]

tablir la facture

prparer la commande

valider le paiement

Livrer commande Clturer dossier

UML2, p. 165 Etat initial Etat final Synchronisation

Activit

transition

Classe / Objet

INSIA UML SIGL 2 Cours 02 page 34/34 - Bertrand LIAUDET

Vous aimerez peut-être aussi