46
Cyrille Desmoulins , MIAGE3, UFR IMA/ Université Joseph Fourier, 2005-2006 UML : Diagrammes de Cas d UML : Diagrammes de Cas d‘ Utilisation Utilisation Acteurs, Cas d Acteurs, Cas d’ utilisation, Système utilisation, Système Diagrammes de Cas d Diagrammes de Cas d’ utilisation utilisation Modèle de Cas d Modèle de Cas d’ utilisation préliminaire utilisation préliminaire CasU1 CasU4 CasU5 CasU2 CasU3 A1 A2 S A3

UML : Diagrammes de Cas d‘Utilisationselsek.free.fr/eloker/miage/cours M1/uml/UML-CasUtilisation.pdf · délimiter le projet de modélisation SystèmeX DistributeurDeBillets SystemeDeControleDAcces

  • Upload
    dinhdan

  • View
    278

  • Download
    7

Embed Size (px)

Citation preview

Cyrille Desmoulins , MIAGE3, UFR IMA/ Université Joseph Fourier, 2005-2006

UML : Diagrammes de Cas dUML : Diagrammes de Cas d‘‘UtilisationUtilisation

Acteurs, Cas dActeurs, Cas d’’utilisation, Systèmeutilisation, SystèmeDiagrammes de Cas dDiagrammes de Cas d’’utilisationutilisation

Modèle de Cas dModèle de Cas d’’utilisation préliminaireutilisation préliminaire

CasU1

CasU4

CasU5

CasU2

CasU3

A1

A2

S A3

2Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Les diagrammes de cas dLes diagrammes de cas d ’ ’utilisationutilisation

Une des notations dUne des notations d ’ ’UML (use-cases)UML (use-cases)

But :But : définir le système du point de vue des définir le système du point de vue des utilisateursutilisateurs définir les limites précises du définir les limites précises du systèmesystème

Notation très simple, compréhensible par tous, y compris le clientNotation très simple, compréhensible par tous, y compris le client

Permet de structurer :Permet de structurer : les besoins (cahier des charges)les besoins (cahier des charges) le reste du développementle reste du développement

CasU1

CasU4

CasU5

CasU2

CasU3

A1

A2

S A3

3Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Client

ExempleExemple

4Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple deExemple de diagrammes de cas d diagrammes de cas d ’ ’utilisationutilisation

DistributeurDeBillet

BanqueCentrale

Client

RetirerDeLArgentAuDistributeur

ConsulterSonCompte

AssurerLaMaintenance TechnicienAjouter

DesBilletsTransporteurDeBillets

RetirerLesCartesAvalées

5Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple deExemple de diagrammes de cas d diagrammes de cas d’’utilisationutilisation

DistributeurDeBillets

Client

RetirerDeLArgentAuDistributeur

ConsulterSonCompte

AssurerLaMaintenance TechnicienAjouter

DesBilletsTransporteurDeFonds

RetirerLesCartesAvalées

6Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Système bancaire

Exemple deExemple de diagrammes de cas d diagrammes de cas d ’ ’utilisationutilisation

RetirerDeLArgentAuDistributeur

ConsulterUnCompte

DeposerDeLArgentSurUnCompte

RetirerDeLArgentDUnCompte

Client

Guichetier

Directeur

GererLesPrets

CréerUnCompte

7Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Modèle des cas dModèle des cas d’’utilisationutilisation

Un Un diagrammediagramme de cas d de cas d’’utilisationutilisation décrit décrit lesles acteurs acteurs lesles cas d cas d’’utilisationutilisation le le systèmesystème

Un Un modèlemodèle de cas d de cas d’’utilisationutilisation d d’’un système ou dun système ou d’’une partie dune partie d’’ununsystème (grande fonction) peut être formésystème (grande fonction) peut être formé de plusieurs diagrammes de cas d'utilisation,de plusieurs diagrammes de cas d'utilisation, de descriptions textuelles ou de diagrammesde descriptions textuelles ou de diagrammes

précisant chacun des cas dprécisant chacun des cas d’’utilisation,utilisation,

CasU1

CasU4

CasU5

CasU2

CasU3

A1

A2

S A3

8Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Remarques essentielles (1)Remarques essentielles (1)

Modèle fonctionnel externeModèle fonctionnel externe En premier lieu tout sous forme textuelleEn premier lieu tout sous forme textuelle

Diagramme utiliséDiagramme utilisé pour les réunion de "brainstorming"pour les réunion de "brainstorming" pourpour

définir les besoins et le futur SIdéfinir les besoins et le futur SI pour faciliter simplifier la communicationpour faciliter simplifier la communication

sur les fonctions dusur les fonctions du SISI pour structurer les documentspour structurer les documents pour structurer la modélisationpour structurer la modélisation

Diagramme = plan du documentDiagramme = plan du documentDiagramme =Diagramme = découpagedécoupage le plus fin du modèle externele plus fin du modèle externe

9Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Remarques essentielles (2)Remarques essentielles (2)

Modèle de cas d'utilisationModèle de cas d'utilisationpeu standardisépeu standardisé par UML par UML Différents stylesDifférents styles Différentes interprétationsDifférentes interprétations

Modèle construits par raffinementsModèle construits par raffinementssuccessifs et successifs et consensus grandissantconsensus grandissant

Peu de formalisme,Peu de formalisme,beaucoup de bon sens et de beaucoup de bon sens et de communicationcommunication

Du point de vue SI : un modèle à la fois plus fin et plus général queDu point de vue SI : un modèle à la fois plus fin et plus général quele modèle de flux globalle modèle de flux global

10Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

ElémentsEléments de basede base

ActeursActeurs Cas d'utilisationCas d'utilisation SystèmeSystème

11Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Cas dCas d’’utilisation (CU)utilisation (CU)

Cas dCas d’’utilisation (CU)utilisation (CU) une manière dune manière d’’utiliser le systèmeutiliser le système une suite dune suite d’’interactions entre un acteur et le systèmeinteractions entre un acteur et le système qui correspond aux fluxqui correspond aux flux ququ’’ilsils échangentéchangent

CasDUtilisationX

RetirerDeLArgentAuDistributeur

Entrer TaperSonCodeEnregistrerEntrée EntrerPendantLesHeuresDOuverture

Regroupe un Regroupe un ensemble de scénariiensemble de scénarii correspondant à un même correspondant à un même butbut

CorrespondCorrespond à une à une fonction du systèmefonction du système visible par visible par ll’’acteuracteur

PermetPermet à un acteur dà un acteur d ’ ’atteindre atteindre un un butbut

DoitDoit être être utile en utile en soisoi

SIdentifier

12Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Le systèmeLe système

Le système (ou une de ses parties) estLe système (ou une de ses parties) est modélisé par un ensemble de cas dmodélisé par un ensemble de cas d’’utilisationutilisation vu comme une vu comme une boîte noireboîte noire

Le système contientLe système contient les cas dles cas d ’ ’utilisation.sutilisation.s pas les acteurs : uniquement externes.pas les acteurs : uniquement externes.

Un modèle de cas dUn modèle de cas d’’utilisation permet de définir :utilisation permet de définir : les fonctions essentielles du système,les fonctions essentielles du système, les les limites du systèmelimites du système,, le système par rapport à son environnement,le système par rapport à son environnement, délimiter le projet de modélisationdélimiter le projet de modélisation

SystèmeX

DistributeurDeBillets

SystemeDeControleDAcces

SystemeDeSécuritéIncendie

13Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Description préliminaireDescription préliminairede chaque élémentde chaque élément

ActeursActeurs Cas d'utilisationCas d'utilisationSystèmeSystème

Descriptions en quelques lignes pour éviter les erreurs de compréhensionDescriptions en quelques lignes pour éviter les erreurs de compréhensionPeut êtrePeut être inclus dans une séance de "brainstorming"inclus dans une séance de "brainstorming"

14Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Description préliminaireDescription préliminairedu systèmedu système

Choisir un identificateurChoisir un identificateur Elément essentiel pour nommer le projetElément essentiel pour nommer le projet Baptiser le système, le plus tôt possibleBaptiser le système, le plus tôt possible Risque d'être référencé dans toute la vie future de l'entrepriseRisque d'être référencé dans toute la vie future de l'entreprise

DonnerDonner uneune brève description textuelle brève description textuelle (quelques lignes maximum)(quelques lignes maximum)

CGDR24/7

Le système logiciel CGDR24/7 ("Crédit GrenobloisDans la Rue, 24h/24, 7j/7"), déployé sur undistributeur de billets de la gamme DB600, a pourbut de contrôler l'ensemble des fonctions associéesau distributeur en incluant son fonctionnementnormal, mais aussi sa sécurité et sa maintenance..

15Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple Exemple AssurAutoAssurAuto

16Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Description préliminaireDescription préliminairedes cas ddes cas d’’utilisationutilisation

Pour chaque cas dPour chaque cas d ’ ’utilisationutilisation choisir un choisir un identificateur représentatifidentificateur représentatif notes de stylenotes de style : :

choisir une forme verbale décrivant une actionchoisir une forme verbale décrivant une action l'acteur est généralement le sujetl'acteur est généralement le sujet identification concise mais préciseidentification concise mais précise éviter les connecteurs (et, ou, puis, ...)éviter les connecteurs (et, ou, puis, ...) terme provenant autant que possible du métierterme provenant autant que possible du métier utiliser par exemple le styleutiliser par exemple le style MajMinMajMin terme générique comme "Gérer" si on nterme générique comme "Gérer" si on n’’arrive pas à arrive pas à être plus précisêtre plus précis

Gérer = Créer, Supprimer, Ajouter, Modifier, ...Gérer = Créer, Supprimer, Ajouter, Modifier, ...Exemple:Exemple: GérerLesDroitsGérerLesDroits

CasDUtilisationX

17Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Description préliminaireDescription préliminairedes cas ddes cas d’’utilisationutilisation

Pour chaque cas dPour chaque cas d ’ ’utilisationutilisation choisir un identificateur représentatifchoisir un identificateur représentatif donner une donner une description textuelle simpledescription textuelle simple la fonction réalisée doit être comprise de tousla fonction réalisée doit être comprise de tous préciser ce que fait le système, ce que fait lpréciser ce que fait le système, ce que fait l’’acteuracteur pas trop de détails, se concentrer sur le pas trop de détails, se concentrer sur le scénario "normal"scénario "normal"

CasDUtilisationX

RetirerDeLArgent

AuDistributeur

Lorsqu’un client a besoin de liquide il peut en utilisant un distributeur retirerde l’argent de son compte. Pour cela :- le client insère sa carte bancaire dans le distributeur- le système demande le code pour l ’identifier- le client choisit le montant du retrait- le système vérifie qu ’il y a suffisamment d ’argent- si c ’est le cas, le système distribue les billets et débite le compte du client- le client prend les billets et retire sa carte

18Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Relations entre éléments de baseRelations entre éléments de base

Relations acteurs <-> cas d'utilisation ?Relations acteurs <-> cas d'utilisation ?

Relations acteurs <-> acteurs ?Relations acteurs <-> acteurs ?

Relations cas d'utilisation <-> cas d'utilisation ?Relations cas d'utilisation <-> cas d'utilisation ?

?? ?

19Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Relation acteur - cas d'utilisationRelation acteur - cas d'utilisation

ClientRetirerDeLArgent

AuDistributeur

Point de vue besoin de lPoint de vue besoin de l’’utilisateur : la utilisateur : la possibilité d'atteindre un butpossibilité d'atteindre un but Point de vue système: un Point de vue système: un canal de communicationcanal de communication et let l’’interface (IHM ouinterface (IHM ou

API) qui le supporteAPI) qui le supporte Echange de messages, potentiellement dans les deux sensEchange de messages, potentiellement dans les deux sens Protocole particulier concernant le cas d'utilisation considéréProtocole particulier concernant le cas d'utilisation considéré

ClientRetirerDeLArgent

AuDistributeur

20Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Relation cas d'utilisation - cas d'utilisationRelation cas d'utilisation - cas d'utilisation

SystèmeBancaire

Directeur

Client

RetierDeLArgent

ConsulterLesSoldes

• Les communications internesnon modélisées.

• UML se concentre sur ladescription du système et de sesinteractions avec l'extérieur

• Formalisme pas assez détaillé pourdécrire l'intérieur du système :autres modèles UML.

• Autres relations possibles entre CU(concepts avancés)

• Différence avec Flux de Merise ouSADT

21Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Relation de communication acteur-acteurRelation de communication acteur-acteur

SystèmeBancaire

Guichetier

Client

RetirerDeLArgentAuDistributeur

ConsulterSonCompte

RetirerDeLArgentParChèque

• Communications externesnon modélisée

• UML se concentre sur ladescription du système logiciel etde ses interactions avecl'extérieur

• Idem SADT et Merise

22Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Relation acteur - acteur :Relation acteur - acteur :généralisationgénéralisation

GuichetierEnChef

Guichetier

CréerUnCompte

RetirerDeLArgentDUnCompte

AnnulerUnCompte

FermerUnCompte

La seule relation entre acteurs est la relation de généralisationLa seule relation entre acteurs est la relation de généralisation

GuichetierEnChef

Guichetier

CréerUnCompte

RetirerDeLArgentDUnCompte

AnnulerUnCompte

FermerUnCompte

23Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Description de l'interactionDescription de l'interaction

ClientRetirerDeLArgent

AuDistributeur

Description desDescription desscénarios via desscénarios via desdiagrammes dediagrammes deséquences ou desséquences ou desdiagrammesdiagrammesde collaborationde collaboration

24Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Limites du système interface de communicationLimites du système interface de communication•• acteur humain interface homme acteur humain interface homme –– système (IHM) système (IHM)•• acteur logiciel interface logicielle (e.g. API)acteur logiciel interface logicielle (e.g. API)

Limites du système et interfacesLimites du système et interfaces

DistributeurDeBillets

ClientRetirerDeLArgentA

uDistributeur

ConsulterSonCompte

TechnicienRetirerLes

CartesAvalées

SystèmeBancaire<<actor>>

25Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

DistributeurDeBillets

ClientRetirerDeLArgentA

uDistributeur

ConsulterSonCompte

TechnicienRetirerLes

CartesAvalées

SystèmeBancaire<<actor>>

Interface Interface homme- homme-systèmesystème

Interface Interface système- système-systèmesystème

<?<?xml xml v ersion="1.0"?>v ersion="1.0"?><<xsxs::schema xmlnsschema xmlns::xs="xs="XMLSchemaXMLSchema"">> < <xsxs::element name="note"element name="note">> < <xsxs::complexTy pecomplexTy pe>> < <xsxs::sequencesequence>> < <xsxs::element name="to" ty pe="xselement name="to" ty pe="xs:string"/>:string"/> < <xsxs::element name="f rom" ty pe="xselement name="f rom" ty pe="xs:string"/>:string"/> < <xsxs::element name="heading" ty pe="xselement name="heading" ty pe="xs:string"/>:string"/> < <xsxs::element name="body " ty pe="xselement name="body " ty pe="xs:string"/>:string"/> < </xs/xs::sequencesequence>> < </xs/xs::complexTy pecomplexTy pe>> < </xs/xs::elementelement>><</xs/xs::schemaschema>>

26Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple Exemple AssurAutoAssurAuto

UnUn diagramme de cas ddiagramme de cas d’’utilisation (au moins) par grande fonction duutilisation (au moins) par grande fonction dusystèmesystème

Attaché au package dans Attaché au package dans ObjecteeringObjecteering Un mUn même cas dême cas d’’utilisation peut figurer dans différents diagrammesutilisation peut figurer dans différents diagrammes

Diagramme par fonctions ou Diagramme par fonctions ou sous-fonctionsous-fonction Diagramme par acteurDiagramme par acteur AutreAutre……

27Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Description détailléeDescription détailléede chaque cas dde chaque cas d’’utilisationutilisation

Chaque cas dChaque cas d ’ ’utilisation doit être décrit en détailutilisation doit être décrit en détail Commencer par les CU prioritairesCommencer par les CU prioritaires Description utile pour la suite de la modélisationDescription utile pour la suite de la modélisation Description détaillée plus où moins formelleDescription détaillée plus où moins formelle

langue naturelle mais structurée, vocabulaire précislangue naturelle mais structurée, vocabulaire précis Scénarii décrits plus formellement avec des diagramme UMLScénarii décrits plus formellement avec des diagramme UML

autresautres ......

28Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Informations à décrireInformations à décrire

Quand le CU commence,Quand le CU commence,pré-conditionspré-conditions

Quand le CU se termine,Quand le CU se termine,post-conditionspost-conditions

Le chemin correspondantLe chemin correspondantau déroulement normalau déroulement normal

Les variantes possibles etLes variantes possibles etles cas dles cas d’’erreurserreurs

Les interactions entre leLes interactions entre lesystème et les acteurssystème et les acteurs

Les informationsLes informationséchangéeséchangées

Les éventuels besoins nonLes éventuels besoins nonfonctionnelsfonctionnels

29Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple deExemple de description détaillée d description détaillée d’’un CUun CU

RetirerDeLArgent

AuDistributeur

Précondition :Le distributeur contient des billets, il est en attente d ’uneopération, il n’est ni en panne, ni en maintenance

Début : lorsqu ’un client introduit sa carte bancaire dans ledistributeur.

Fin : lorsque la carte bancaire et les billets sont sortis.

Postcondition :Si de l ’argent a pu être retiré la somme d’argent sur lecompte est égale à la somme d ’argent qu’il y avait avant,moins le montant du retrait. Sinon la somme d ’argent surle compte est la même qu’avant.

30Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple deExemple de description détaillée d description détaillée d ’ ’un CUun CU

RetirerDeLArgent

AuDistributeur

Déroulement normal :(1) le client introduit sa carte bancaire(2) le système lit la carte et vérifie si la carte est valide(3) le système demande au client de taper son code(4) le client tape son code confidentiel(5) le système vérifie que le code correspond à la carte(6) le client choisi une opération de retrait(7) le système demande le montant à retirer…Variantes :(A) Carte invalide : au cours de l ’étape (2) si la carte estjugée invalide, le système affiche un message d ’erreur,rejète la carte et le cas d ’utilisation se termine.(B) Code erroné : au cours de l ’étape (5) ...

31Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple deExemple de description détaillée d description détaillée d’’un CUun CU

RetirerDeLArgent

AuDistributeur

Contraintes non fonctionnelles :

(A) Performance : le système doit réagir dans un délaiinférieur à 4 secondes, quelque soit l’action de l ’utilisateur.

(B) Résistance aux pannes : si une coupure de courant ouune autre défaillance survient au cours du retrait, latransaction sera annulée, l’argent ne sera pas distribué.Le système doit pouvoir redémarrer automatiquementdans un état cohérent et sans intervention humaine.

(C) Résistance à la charge : le système doit pouvoir gérerplus de 1000 retraits d ’argent simultanément...

32Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple Exemple AssurAutoAssurAuto

33Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Format(s) "standardisé(s)"Format(s) "standardisé(s)"

Pas de format standard proposéPas de format standard proposéen UMLen UML

Différents formats proposésDifférents formats proposésdans la littératuredans la littérature Choix du format en fonction des besoinsChoix du format en fonction des besoins

34Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Relations entre cas d'utilisation :Relations entre cas d'utilisation :inclusion, extension et spécialisationinclusion, extension et spécialisation

S'Identifier

TransfererDeLArgent

« include »

RetirerDeLArgentAvecDifféré

RetirerDeLArgent

« extends »

« include »

« extends »

RetirerDeLArgent

« include »

RetirerDeLArgentRetirerDeLArgentAuDistributeur

35Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

AttentionAttention

"The UML includes other relationships between use cases beyond the simple"The UML includes other relationships between use cases beyond the simpleincludes, such as <<extend>>. I strongly suggest that you ignore them. I'veincludes, such as <<extend>>. I strongly suggest that you ignore them. I'veseen too many situations in which teams can get terribly hung up on when toseen too many situations in which teams can get terribly hung up on when touse different use case relationships, and such energy is wasted. Instead,use different use case relationships, and such energy is wasted. Instead,concentrate on the textual description of a use case."concentrate on the textual description of a use case."[UML Distilled, Martin Fowler][UML Distilled, Martin Fowler]

"A common sign of a novice (or academic) use case "A common sign of a novice (or academic) use case modeler modeler is ais apreoccupation with use case diagrams and use case relationships, ratherpreoccupation with use case diagrams and use case relationships, ratherthan writing text. ... Use case diagrams and use case relationships arethan writing text. ... Use case diagrams and use case relationships aresecondary in use case work. Use cases are text documents. Doing use casesecondary in use case work. Use cases are text documents. Doing use casework means to write text."work means to write text."[Applying UML and Patterns, Craig [Applying UML and Patterns, Craig LarmanLarman]]

La généralisation se justifie en général par des liens différents des La généralisation se justifie en général par des liens différents des sous-rsous-rôlesôlesavec les cas davec les cas d’’utilisationutilisation

36Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple Exemple AssurAutoAssurAuto

37Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

ScénarioScénario

Pour décrire ou valider un CU : les Pour décrire ou valider un CU : les scénariiscénarii Un scénario est un exemple :Un scénario est un exemple :

une manière particulière dune manière particulière d’’utiliser le système utiliser le système …… …… par un acteur particulier par un acteur particulier …… …… dans un contexte particulier. dans un contexte particulier.

cas dcas d’’utilisation = ensemble de scénariosutilisation = ensemble de scénarios scénario = une exécution particulière dscénario = une exécution particulière d’’un CUun CU

38Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple de scénarioExemple de scénario

RetirerDeLArgent

AuDistributeur

SCENARIO 4• Paul insère sa carte dans le distributeur d2103 • Le système accepte la carte et lit le numéro de compte • Le système demande le code• Paul tape ‘ 1234 ’• Le système indique que ce n ’est pas le bon code• Le système affiche un message et propose de recommencer• Paul tape ‘ 6622’• Le système affiche que le code est correct• Le système demande le montant du retrait• Paul tape 50000 fr• Le système vérifie s ’il y a assez d ’argent sur le compte•...

39Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Diagrammes de séquences "systèmes"Diagrammes de séquences "systèmes"

Pour décrire un scénario : un diagramme de séquencesPour décrire un scénario : un diagramme de séquences Diagramme de séquences :Diagramme de séquences :

LL’’une des notations UML, une notation généraleune des notations UML, une notation générale Peut être utilisée dans de nombreux contextesPeut être utilisée dans de nombreux contextes Permet de décrire une séquence des messagesPermet de décrire une séquence des messages

échangés entre différents objetséchangés entre différents objets Différents niveaux de détailsDifférents niveaux de détails

Pour décrire un scénario simple,Pour décrire un scénario simple,deux objets : ldeux objets : l’’acteur et le systèmeacteur et le système

"Diagramme de séquences système""Diagramme de séquences système"

40Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple de scénarioExemple de scénario

Paul:Client SystèmeXX27:

Insérer carte

Entrer code ‘1234 ’ 

Demander code

Message d ’erreur

Demander code

Entrer code ‘6622 ’ 

Vérifier carte

Vérifier code

...

Appeler Sylvia

41Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Cas d'utilisationCas d'utilisation vs. scénariivs. scénarii

Niveau générique.Rôle et réalisation

d’objectif

Niveau instances.un épisode précis :

personne, date,lieu, etc.

42Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Exemple Exemple AssurAutoAssurAuto

43Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Pour en savoir un peu plus...Pour en savoir un peu plus...

Chapitre gratuit téléchargeable àChapitre gratuit téléchargeable àhttp://www.http://www.craiglarmancraiglarman.com/book_applying_2nd/Applying_2nd..com/book_applying_2nd/Applying_2nd.htmhtm

http://alistair.cockburn.us/usecases/uctempla.http://alistair.cockburn.us/usecases/uctempla.htmhtm

Pour un template "standard" de description de cas d'utilisationPour un template "standard" de description de cas d'utilisation

44Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Pour en savoir encore plus ...Pour en savoir encore plus ...

Des livres spécialisésDes livres spécialisés

45Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Des livres spécialisésDes livres spécialisés

Pour en savoir encore plus ...Pour en savoir encore plus ...

46Cyrille Desmoulins d’après Jean-Marie Favre, Ioannis Parissis ©

Des livres spécialisésDes livres spécialisés

Pour en savoir encore plus ...Pour en savoir encore plus ...