20
«SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

Embed Size (px)

Citation preview

Page 1: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

SEG 3601

Élaboration de cas d'utilisationavec UCEd

Stéphane S. SoméSITE, Université d' Ottawa

Page 2: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Use Case Editor (UCEd)

•Objectif: aider à la capture/validation de cas d'utilisation― Edition de cas d'utilisation― Edition du modèle de domaine― Edition de scénarios ― Validation de cas d'utilisation du modèle de

domaine ― Combinaison de cas d'utilisation en

modèles à états― Simulation de modèles exécutables dérivés

de cas d'utilisation― Génération de scénarios

Page 3: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Éléments d'UCEd

UCED(Use Case Editor)

Simulateur

Édition de cas d’usage

Synthèse de modèles à états

Édition de domaine

Édition de scénarios

Page 4: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Édition de cas d'utilisation

Modèle de cas d'utilisation

Description de cas d'utilisation

Page 5: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Modèle de cas d'utilisation

Inclus

Cas d'utilisation

cas normal

cas d'extension

Relations

“include”

“extend”

condition

d'extension

Acteurs

Page 6: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Cas d'utilisationnormal

Description de cas d'utilisation (1)

Page 7: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

•Title: label identifiant le cas d'utilisation de façon unique

•Description: texte qui fait un sommaire du cas d’usage

•System Under Design: spécifie le système (l’entité qui réagi aux stimuli des acteurs externes)

•Primary Actor: l'acteur qui initie le cas d'utilisation

•Participants: autre acteurs participant au cas d'utilisation

•Goal: énoncé de l'attente de l'acteur primaire lors de la complétion du cas d'utilisation

Description de cas d'utilisation (2)

Page 8: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Description de cas d'utilisation (3)

•Following Use Cases: une liste des cas d’usage qui peuvent suivre directement

•Invariant: condition devant être vérifiée tout au long de l'exécution d'une instance du cas d'utilisation

•Precondition: condition devant être vérifiée avant l'exécution

•Success Postcondition: condition devant être vérifiée à la fin de l'exécution sans faute

•Steps: séquence d'étapes (blocs répétés et de steps) constituant le cas d'utilisation

•Alternatives: étapes alternatives•Alternative Postcondition: condition devant être vérifiée à la fin d’une alternative.

Page 9: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Description de cas d'utilisation - Conditions

•Plusieurs types

― Conditions simples– Entity bound conditions: basées sur les

entités du domaine– Non-Entity bound conditions: déclarées

verbatim dans le modèle du domaine

― Conditions complexes– négation, conjonction, disjonction de

conditions simples

Page 10: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

'

Description de cas d'utilisation - Conditions

•Condition simple (entity-bound)[déterminant] entité verbe valeur● Déterminant: a, an, ou the● Entité: séquence de mots nommant une entité du

modèle du domaine (voir plus loin)● Verbe: un parmi is, isn't, is not, are, aren't, are not,

has, hasn't, has not, have, haven't, have not● Valeur:

– séquence de mots définie comme une valeur possible de l'entité dans le modèle du domaine

– comparaison

Page 11: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Description de cas d'utilisation - Conditions

•Exemples de conditions simplesThe User Card is not validUser number of attempts is > 3The System Display is blinkingSystem registered users are less than 10....

Page 12: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Description de cas d'utilisation - Conditions

•Conditions complexes― Négation

NO condition NOT condition

ex: Not User identification is valid.― Conjonction

condition AND condition― Disjonction

condition OR condition

Page 13: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Description de cas d'utilisation - Étapes

•Exécution d’opération― Phrase décrivant une action faite par un acteur ou

le système― Au présent― Exemples:

– The User inserts a card– ATM ejects the user's card– The system displays a pin enter prompt

•Branchement à une étape du scénario principal― GOTO 5.

Page 14: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Description de cas d'utilisation - Étapes

•Spécification de délai before valeur unité after valeur unité•Peuvent être combinés•Exemples

―after 10 sec―before 60 sec AND after 20 sec

•Expression conditionnelle IF condition THEN

Page 15: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

•Exemples― before 60 sec, the user inserts a card― IF the system is ON THEN, the operator turns

the system OFF― System displays pin enter prompt to

Customer― after 2 min, the ATM ejects the user card

Description de cas d'utilisation - Étapes

Page 16: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Description de cas d'utilisation – Étapes alternatives

• Une alternative peut suivre une étape (step)• Par exemple:

―alternative condition – condition under which the extension takes place

―steps Alternative steps can not have further

alternatives

―alternative postconditionpostcondition when the alternative is taken

Page 17: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Description de cas d'utilisation – Étapes alternatives

• Conditions alternatives:―Un délai―Une condition, ou―Combinaison de délais et conditions

• Exemples―after 30 sec―before 2 min AND after 20 sec―The User identification is not valid―after 60 sec, IF Bank hasn't responded

Page 18: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Exemple de description de cas d'utilisationTitle: User loginSystem Under Design:PMSystemDescription: This use case describes a login process in the PMSystem. The use case is executed by a User (Doctor or Nurse).Primary Actor: UserParticipants: Goal: A User want to identify herself in order to use a PM system. Precondition: System is ON AND NO user is logged inFollows Use Cases: turn system onturn system onSteps: 1: The User inserts a Card in the card slot 2: The PMSystem asks for PIN 3: The User types a PIN 4: The PMSystem validates the USER identification 5: IF the USER identification is valid THEN The PMSystem displays a welcome message to the USER 6: After 60 sec The PMSystem ejects the CardSuccess Postcondition: User is logged in

Page 19: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Alternatives:

1a: User Card is inserted1a1: User presses cancel button1a2: PMSystem ejects CardAlternative Postcondition: User is not logged in

1b: The Card is not regular1b1: The PMSystem emits an alarm1b2: After 20 sec The System ejects the CardAlternative Postcondition: User is not logged in

2a: after 60 seconds 2a1: PMSystem emits alarm2a2: After 20 sec PMSystem ejects CardAlternative Postcondition: User is not logged in

4a: The user identification is invalid AND number of attempts is less than 4

4a1: Goto Step 2

4b: User identification is invalid AND number of attempts is equal to 4

4b1: The PMSystem emits an alarm4b2: After 20 sec PMSystem ejects the CardAlternative Postcondition: User is not logged in

Page 20: «SEG 3601» D. Amyot uOttawa SEG 3601 Élaboration de cas d'utilisation avec UCEd Stéphane S. Somé SITE, Université d' Ottawa

«SEG 3601»

D. Amyot uOttawa

Sources

•Pour― Télécharger UCEd― Obtenir le guide de l’utilisateur ― Obtenir des articles sur UCEd

http://www.site.uottawa.ca/~ssome/Use_Case_Editor_UCEd.html