Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23
-
Upload
megaplanet20 -
Category
Education
-
view
238 -
download
2
Transcript of Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23
megaplanet
UML : Diagrammes de Cas d‘UtilisationUML : Diagrammes de Cas d‘UtilisationModèle PréliminaireModèle Préliminaire
Acteurs, Cas d’utilisation, SystèmeActeurs, Cas d’utilisation, Système
Diagrammes de Cas d’utilisationDiagrammes de Cas d’utilisation
Modèle préliminaire Modèle préliminaire de Cas d’utilisationde Cas d’utilisation
{P1}
{P2}
{P3}
{P3}
{P1}
megaplanet
Modèle des cas d ’utilisation Modèle des cas d ’utilisation Objectifs Objectifs
Description « fonctionnelle » du systèmeDescription « fonctionnelle » du système
Définir les limites précises du systèmeDéfinir les limites précises du système
StructurerStructurer : :� les besoinsles besoins� le projetle projet {P1}
{P2}
{P3}
{P3}
{P1}
megaplanet
Modèle des C.U. Modèle des C.U. Caractéristiques Caractéristiques
� Rôle central: e.g. Rôle central: e.g. 11+4 views+4 views
� Simple Simple � Modèle communicationnelModèle communicationnel� Modèle organisationnel (GL)Modèle organisationnel (GL)
� ≠ ≠ Modèle de tâches (IHM)Modèle de tâches (IHM)
3
Use case view
{P1}
{P2}
{P3}
{P3}
{P1}
megaplanet
Diagramme de Cas D’utilisationDiagramme de Cas D’utilisationExemplesExemples
4
megaplanet 5
Client
ExempleExemple
megaplanet 6
Client
« Canal » de communication « Canal » de communication
megaplanet 7
Mutliples ActeursMutliples Acteurs
DistributeurDeBillet
BanqueCentrale
Client
RetirerDeLArgentAuDistributeur
ConsulterSonCompte
AssurerLaMaintenance
TechnicienAjouterDesBillets
TransporteurDeBillets
RetirerLesCartesAvalées
megaplanet 8
Technique dite de « boite noire »Technique dite de « boite noire »
DistributeurDeBillet
BanqueCentrale
Client
RetirerDeLArgentAuDistributeur
ConsulterSonCompte
AssurerLaMaintenance
TechnicienAjouterDesBillets
TransporteurDeBillets
RetirerLesCartesAvalées
megaplanet 9
Diagramme de cas d ’utilisationDiagramme de cas d ’utilisation
DistributeurDeBillets
Client
RetirerDeLArgentAuDistributeur
ConsulterSonCompte
AssurerLaMaintenance
TechnicienAjouterDesBillets
TransporteurDeBillets
RetirerLesCartesAvalées
BanqueCentrale
GererLEtatDuDistributeur
megaplanet 10
Diagramme de cas d ’utilisationDiagramme de cas d ’utilisation
DistributeurDeBillets
Client
RetirerDeLArgentAuDistributeur
ConsulterSonCompte
AssurerLaMaintenance
TechnicienAjouterDesBillets
TransporteurDeBillets
RetirerLesCartesAvalées
BanqueCentrale
GererLEtatDuDistributeur
megaplanet 11
SystemeBancaire
Exemple 2Exemple 2
RetirerDeLArgentAuDistributeur
ConsulterUnCompte
DeposerDeLArgentSurUnCompte
RetirerDeLArgentDUnCompte
Client
Guichetier
Directeur
GererLesPrets
CréerUnCompte
megaplanet 12
Exemple 3Exemple 3
SystemeDeContrôleDAcces
CapteurAIncendie
PorteurDeCarte
Entrer
DebloquerLesPortes
GererLesCartes
Administrateur
ListerLesTentativesDeFraudes
Gardien
Sortir
megaplanet
Diagramme de Cas D’utilisationDiagramme de Cas D’utilisationEléments de basesEléments de bases
13
CasDUtilisationXSystèmeX ActeurX
megaplanet 14
ActeursActeurs
Un Acteur = Un Acteur = � élément élément externeexterne qui qui interagitinteragit avec le système avec le système� (prend des décisions, des initiatives. Il est "actif")(prend des décisions, des initiatives. Il est "actif")� rôlerôle qu’un "utilisateur" joue par rapport au système qu’un "utilisateur" joue par rapport au système
Client
CapteurAIncendie
PorteurDeCarte AdministrateurGardien
megaplanet 15
Acteurs vs. utilisateursActeurs vs. utilisateurs
� Une même personne peut jouer plusieurs rôlesUne même personne peut jouer plusieurs rôlesex: Maurice est directeur mais peut jouer le rôle de guichetierex: Maurice est directeur mais peut jouer le rôle de guichetier
� Plusieurs personnes peuvent jouer un même rôlePlusieurs personnes peuvent jouer un même rôleex: Paul et Pierre sont deux clientsex: Paul et Pierre sont deux clients
� Un rôle par rapport au système plutôt que position dans l'organisationUn rôle par rapport au système plutôt que position dans l'organisationex: PorteurDeCarte plutôt qu'Enseignantex: PorteurDeCarte plutôt qu'Enseignant
� Un acteur n’est Un acteur n’est pas forcémentpas forcément un être un être humainhumainex: un distributeur de billet peut être vu comme un acteurex: un distributeur de billet peut être vu comme un acteur
Client
megaplanet 16
Différents notations possiblesDifférents notations possibles
� Notations alternatives pour les acteurs Notations alternatives pour les acteurs
PorteurDeCarte
PorteurDeCarte
<<actor>>
PorteurDeCarte
PorteurDeCarte
CapteurAIncendie
<<actor>>
SystemeBancaire
<<actor>>
� Note de styleNote de style : : utiliser plutot le stéréotype utiliser plutot le stéréotype <<actor>><<actor>> pour les acteurs non humains pour les acteurs non humains
megaplanet 17
Différents types d ’acteursDifférents types d ’acteurs
Liste pour ne pas oublier d'acteurs :Liste pour ne pas oublier d'acteurs :
� Utilisateurs principauxUtilisateurs principauxex: client, guichetierex: client, guichetier
� Utilisateurs secondairesUtilisateurs secondairesex: contrôleur, directeur, ingénieur système, administrateur...ex: contrôleur, directeur, ingénieur système, administrateur...
� Périphériques externesPériphériques externesex: un capteur, une horloge externe, ...ex: un capteur, une horloge externe, ...
� Systèmes externesSystèmes externesex: système bancairesex: système bancaires
Client
megaplanet 18
Cas d’utilisation (CU)Cas d’utilisation (CU)
� Cas d’utilisation (CU) Cas d’utilisation (CU) – une manière d’utiliser le système une manière d’utiliser le système
– une suite d’interactions entre un acteur et le systèmeune suite d’interactions entre un acteur et le système
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
� Correspond à une fonction du système Correspond à une fonction du système visible par l’acteurvisible par l’acteur� Permet à un acteur d ’atteindre Permet à un acteur d ’atteindre un butun but� Doit être Doit être utile en soiutile en soi
SIdentifier
megaplanet 19
Le système Le système
� Le système est Le système est – modélisé par un ensemble de cas d’utilisationmodélisé par un ensemble de cas d’utilisation
– vu comme une vu comme une boîte noireboîte noire
� Le système contient :Le système contient :– les cas d ’utilisation,les cas d ’utilisation,
– mais pas les acteurs.mais pas les acteurs.
� Définir :Définir :– les les limites du systèmelimites du système,,
– délimiter le cadre du projet !délimiter le cadre du projet !
SystèmeX
DistributeurDeBillets
SystemeDeControleDAcces
SystemeDeSécuritéIncendie
megaplanet
Diagramme de Cas D’utilisationDiagramme de Cas D’utilisation Relations entre éléments de base Relations entre éléments de base
20
megaplanet 21
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 ?
??
?
megaplanet 22
Relation acteur - cas d'utilisationRelation acteur - cas d'utilisation
ClientRetirerDeLArgent
AuDistributeur
� vision objectifs:vision objectifs: possibilité d'atteindre un but possibilité d'atteindre un but
� vision technique: vision technique: canal/protocole de communicationcanal/protocole de communication
ClientRetirerDeLArgent
AuDistributeur
megaplanet 23
Relation cas d'utilisation - cas d'utilisationRelation cas d'utilisation - cas d'utilisation
SystèmeBancaire
Directeur
Client
RetierDeLArgent
ConsulterLesSoldes
• Communications internes non modélisées.
• Interactions système exterieur↔•• Formalisme bien trop pauvre pour
décrire l'intérieur du système.Utiliser les autres modèles UML pour cela.
• Autres relations possibles entre CU(concepts avancés)
megaplanet 24
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 la description du système etde ses interactions avecl'extérieur
megaplanet 25
Relation acteur - acteur :Relation acteur - acteur :généralisation gé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
megaplanet 26
Retour sur la relation de communicationRetour sur la relation de communication
ClientRetirerDeLArgent
AuDistributeur
� Canal de communicationCanal de communication� Décrit le comportement du système vu de l'exterieurDécrit le comportement du système vu de l'exterieur� Echange de messagesEchange de messages
ClientRetirerDeLArgent
AuDistributeur
megaplanet 27
Description de l'interactionDescription de l'interaction
ClientRetirerDeLArgent
AuDistributeur
Plus tard dans le cours ...Plus tard dans le cours ...
Diagrammes deDiagrammes deséquencesséquences
"système""système"
megaplanet 28
Limites du système et interfacesLimites du système et interfaces
DistributeurDeBillets
ClientRetirerDeLArgentAu
Distributeur
ConsulterSonCompte
TechnicienRetirerLes
CartesAvalées
SystèmeBancaire
<<actor>>
megaplanet 29
DistributeurDeBillets
ClientRetirerDeLArgentAu
Distributeur
ConsulterSonCompte
TechnicienRetirerLes
CartesAvalées
SystèmeBancaire
<<actor>>
Description (Description (par la suitepar la suite) dans les documents de ) dans les documents de spécification externesspécification externes
Interfaces Interfaces Homme-Système (Homme-Système (IHMIHM))
megaplanet 30
DistributeurDeBillets
ClientRetirerDeLArgentAu
Distributeur
ConsulterSonCompte
TechnicienRetirerLes
CartesAvalées
SystèmeBancaire
<<actor>>
Description (Description (par la suitepar la suite) dans les documents de ) dans les documents de spécification externesspécification externes
Interfaces Interfaces Homme-Système (IHM)Homme-Système (IHM)
megaplanet
Andrew Dunn
megaplanet 32
DistributeurDeBillets
ClientRetirerDeLArgentAu
Distributeur
ConsulterSonCompte
TechnicienRetirerLes
CartesAvalées
SystèmeBancaire
<<actor>>
Description (Description (par la suitepar la suite) dans les documents de ) dans les documents de spécification externesspécification externes
……
<xs:element name="note"><xs:element name="note"> <xs:complexType> <xs:complexType> <xs:sequence> <xs:sequence> <xs:element name="to" type="xs:string"/> <xs:element name="to" type="xs:string"/> <xs:element name="from" type="xs:string"/> <xs:element name="from" type="xs:string"/> <xs:element name="heading" … > <xs:element name="heading" … > <xs:element name="body" type="xs:string"/> <xs:element name="body" type="xs:string"/> </xs:sequence> </xs:sequence> </xs:complexType> </xs:complexType></xs:element></xs:element>
......
Interfaces Interfaces Système-SystèmeSystème-Système
megaplanet
ModèleModèle de Cas D’utilisation de Cas D’utilisation
33
megaplanet 34
Diagramme vs. ModèleDiagramme vs. Modèle
� Diagramme Diagramme de cas d’utilisationde cas d’utilisation� notation graphiquenotation graphique
CasU1
CasU4
CasU5
CasU2
CasU3
A1
A2
S A3
� ModèleModèle de cas d’utilisation de cas d’utilisation� descriptions textuelles,descriptions textuelles,� diagrammes de cas d'utilisationdiagrammes de cas d'utilisation� diagrammes de séquencesdiagrammes de séquences� ......
megaplanet 35
Modèle "communicationnel"Modèle "communicationnel"
� Modèle informelModèle informel� Multiple intervenants (stakeholders)Multiple intervenants (stakeholders)� Texte structuré + diagrammes + ref…Texte structuré + diagrammes + ref…
� DiagrammesDiagrammes� pour les réunions de "brainstorming"pour les réunions de "brainstorming"� pour simplifier la communicationpour simplifier la communication� pour structurer les documentspour structurer les documents� pour structurer le développementpour structurer le développement
Diagramme = plan du documentDiagramme = plan du document
megaplanet 36
Modèlisation par « Consensus Grandissant »Modèlisation par « Consensus Grandissant »� Modèle Modèle informelinformel� Différents styles Différents styles � Différentes interprétationsDifférentes interprétations� Raffinements successifsRaffinements successifs
{P1}
{P2}
{P3}
{P3}
{P1}
ModèleModèle préliminairepréliminaire ModèleModèle détaillédétaillé
megaplanet
Modèle Modèle PréliminairePréliminaire de Cas D’utilisation de Cas D’utilisation
37
megaplanet
Description préliminaire Description préliminaire de chaque élémentde chaque élément
Quelques lignesQuelques lignes Eviter les incompréhensionsEviter les incompréhensions Collaboration Collaboration
megaplanet 39
Description préliminaire Description préliminaire du systèmedu système
� IdentificateurIdentificateur� 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
� Brève description textuelle Brève description textuelle (quelques lignes max.)(quelques lignes max.)
CGDR24/7
Le système logiciel CGDR24/7 ("Crédit Grenoblois Dans la Rue, 24h/24, 7j/7"), déployé sur un distributeur de billets de la gamme DB600, a pour but de contrôler l'ensemble des fonctions associées au distributeur en incluant son fonctionnement normal, mais aussi sa sécurité et sa maintenance.
.
megaplanet 40
Identifier un Acteur Identifier un Acteur Client
RèglesRègles• forme nominaleforme nominale• vocabulaire métiervocabulaire métier• style MajMinstyle MajMin
Importance Importance ::
réunions avec le clientréunions avec le client
manuels utilisateursmanuels utilisateurs
IHMIHM
CodeCode
megaplanet 41
Description préliminaire Description préliminaire des acteursdes acteurs
Guichetier
Un guichetier est un employé de la banque chargé de faire l’interface entre le système informatique et les clients qu’il reçoit au comptoir. Le guichetier peut réaliser les opérations courantes : création d ’un
compte, dépôt et retrait d ’argent, etc.
Client
megaplanet 42
Identifier un Cas d'UtilisationIdentifier un Cas d'Utilisation
RèglesRègles
forme verbale décrivant une actionforme verbale décrivant une action
l'acteur est généralement le sujetl'acteur est généralement le sujet
éviter les connecteurs (et, ou, puis, ...)éviter les connecteurs (et, ou, puis, ...)
vocabulaire métiervocabulaire métier
style MajMinstyle MajMin
terme générique comme "Gérer" en cas de besoin seulementterme générique comme "Gérer" en cas de besoin seulement
Gérer = Créer, Supprimer, Ajouter, Modifier, ...Gérer = Créer, Supprimer, Ajouter, Modifier, ...Exemple: GérerLesDroitsExemple: GérerLesDroits
Importance Importance ::
réunions avec le clientréunions avec le client
CasDUtilisationX
megaplanet 43
Description préliminaire Description préliminaire des cas d’utilisationdes cas d’utilisation
● description textuelle simpledescription textuelle simple● se concentrer sur le se concentrer sur le scénario nominalscénario nominal• comprehensible par touscomprehensible par tous• pas trop de détailspas trop de détails
CasDUtilisationX
RetirerDeLArgent
AuDistributeur
Lorsqu’un client a besoin de d'argent liquide il peut en utilisant un distributeur retirer de l’argent de son compte. Pour cela :- le client insère sa carte bancaire- le système demande le code- 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
megaplanet
Structuration, Annotation, MéthodeStructuration, Annotation, Méthode
44
megaplanet 45
Structuration et AnnotationsStructuration et Annotations
� Structuration du modèleStructuration du modèle� Vision globale sur le systèmeVision globale sur le système� Ensemble de transparentsEnsemble de transparents
� AnnotationsAnnotations� priorités : MUST, SHOULD, MAYpriorités : MUST, SHOULD, MAY� risquesrisques� critères non fonctionnels : critères non fonctionnels :
utilisabilité, délais, charge, fréquence, …utilisabilité, délais, charge, fréquence, …
R e t ir e r D e L A r g e n t A uD is t r ib u t e u r
C o n s u lt e r U n C o m p t e
D e p o s e r D e L A r g e n tS u r U n C o m p t e
R e t ir e r D e L A r g e n tD U n C o m p t e
G u i c h e t i e r
G e r e r L e s P r e t s
C r é e r U n C o m p t e
{ M U S T }
{ M U S T }
{ M U S T }
{ M A Y }
{ S H O U L D }
{ S H O U L D }
{ 1 2 / 0 3 / 0 2 }
{ 1 2 / 0 5 / 0 2 }
{ 2 0 /0 3 /0 2 }
{ 2 5 / 1 2 / 0 2 }
{ 1 0 /1 2 / 0 2 }
{ 1 0 /1 0 / 0 2 }
RetirerDeLArgentAuDistributeur
ConsulterUnCompte
DeposerDeLArgentSurUnCompte
RetirerDeLArgentDUnCompte
Client
Guichetier
DirecteurGererLesPrets
CréerUnCompte
Système bancaire
{ MUST }
{ MUST }
{ MUST }
{ MAY }
{ SHOULD }
{ SHOULD }
{ 12/03/02 }
{ 12/05/02 }
{ 20/03/02 }
{ 25/12/02 }
{ 10/12/02 }
{ 10/10/02 }
megaplanet 46
Exemple Exemple de diagramme de CU annotéde diagramme de CU annoté
RetirerDeLArgentAuDistributeur
ConsulterUnCompte
DeposerDeLArgentSurUnCompte
RetirerDeLArgentDUnCompte
Client
Guichetier
Directeur
GererLesPrets
CréerUnCompte
Système bancaire
{ MUST }
{ MUST }
{ MUST }
{ MAY }
{ SHOULD }
{ SHOULD }
{ 12/03/02 }
{ 12/05/02 }
{ 20/03/02 }
{ 25/12/02 }
{ 10/12/02 }
{ 10/10/02 }
megaplanet 47
Le Processus UnifiéLe Processus Unifié
(1) Définir le modèle de cas d’utilisation(1) Définir le modèle de cas d’utilisation(1.1)(1.1) Trouver les acteurs Trouver les acteurs
(1.2)(1.2) Décrire brièvement chaque acteur Décrire brièvement chaque acteur
(1.3)(1.3) Trouver les cas d ’utilisation Trouver les cas d ’utilisation
(1.4)(1.4) Décrire brièvement chaque cas d ’utilisation Décrire brièvement chaque cas d ’utilisation
(1.5)(1.5) Décrire le modèle comme un tout Décrire le modèle comme un tout
(2) Définir des priorités et les risques entre CU(2) Définir des priorités et les risques entre CU
(3) Détailler chaque CU (3) Détailler chaque CU (en tenant compte des priorités et des risques)(en tenant compte des priorités et des risques)