7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

34
7M701 1 Use Case Modelling

Transcript of 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

Page 1: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M7011

Use Case Modelling

Page 2: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M7012

Use Case diagram voorbeeldVideotheek

Huur videoband

Lever nieuwebanden

Retourneer video-band

KLant

Filmimporteur

Page 3: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M7013

Use Case diagram voorbeeld

Page 4: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M7014

Use Case Diagram : Doel

• Een diagram waarmee use-cases kunnen worden gevisualiseerd (basisconceptenbasisconcepten: actors, use-cases, relaties).

• Het modelleren van gedrag van het te ontwikkelen systeem in termen van functionaliteit.

• Het use-case diagram toont hoe het systeem kan worden door externe entiteiten zoals menselijke gebruikers;

• Het use-case diagram speelt in de conceptualisatiefase een belangrijke rol.

Page 5: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M7015

Conceptualisatie

• Veelvuldige communicatie met de eindgebruikers, opdrachtgever en andere betrokkenen is noodzakelijk om een goed beeld te krijgen van de taken die eindgebruikers met het systeem moeten gaan uitvoeren.

• Het maken van use-cases is een enigszins informele beschrijving van deze taken in natuurlijke taal. Het gaat erom een goed beeld te vormen van de situatie en de wensen van de gebruiker.

Page 6: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M7016

Use Case definitie

• Fowler: A use case is a typical interaction that a user has with

a system in order to achieve some goals. A use case is a description of a set of sequence of

actions, including variants, that a system performs to yield an observable result of value to an actor.

• Cockburn: A use case describes a system’s behavior.

Een use case is een duidelijke manier om met de eindgebruiker te communiceren over wat een systeem zou moeten doen onder welke omstandigheden.

Page 7: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M7017

Actor

• Een actor is een entiteit die buiten het systeem staat en direct communiceert met het systeem.

• Een actor is een rol die een gebruiker in de context van een systeem speelt.

• Actors – what exists outside the system (Rumbaugh) [external “participants”/”roles”]

Page 8: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M7018

Use Case diagram voorbeeld

Page 9: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M7019

Use cases• Een use-case is een beschrijving van

een bepaalde wijze waarop het systeem gebruikt kan worden; het representeert een functioneel requirement van het systeem als geheel.

• Een use-case is een beschrijving van een reeks van interacties tussen één of meer actoren en het systeem.

• Een use-case is een verzameling scenario’s; deze scenario’s hebben gemeen dat ze een doelstelling van een gebruiker ondersteunen.

Page 10: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70110

Use Case diagram voorbeeldVideotheek

Huur videoband

Lever nieuwebanden

Retourneer video-band

KLant

Filmimporteur

Page 11: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70111

Use Case diagram voorbeeld

Page 12: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70112

Page 13: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70113

Scenario

Een scenario is een reeks stappen waarmee een interactie wordt beschreven tussen een gebruiker en een systeem.• Een scenario is een instantie van een use-case.• Een scenario beschrijft een mogelijke interactie

met het systeem.• Een scenario is een soort voorbeeld van hoe een

use-case in de praktijk gebruikt wordt.

Page 14: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70114

Scenario voorbeeld

• Beschouw on-line winkel op het web met het scenario ‘Koop een product’ :De klant bladert door de catalogus en plaatst de

gewenste artikelen in het boodschappenwagentje. Wanneer de klant wil gaan betalen, geeft hij of zij de informatie op die voor de verzending noodzakelijk is en voert de creditcardgegevens in. Het systeem controleert of het nummer van de creditcard in orde is en bevestigt de koop onmiddellijk en met een e-mail bericht dat wat later wordt verstuurd.

Page 15: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70115

Voorbeeld van een scenario

Page 16: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70116

Template van een Use Case beschrijving

Naam De naam die gebruikt wordt om aan de use-case te refereren.

Actoren Alle actoren die in de use-case een rol spelen.

Aannamen De toestand van het systeem bij de start van de use-case.

Beschrijving Een uitgebreide, complete, stapsgewijze beschrijving van de interactie tussen systeem en actor(en).

Uitzondering Speciale c.q. te voorziene uitzonderingsgevallen die optreden bij een use-case.

Resultaat De toestand van het systeem na afloop van de use-case.

Page 17: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70117

Use Cases definiëren: stappen

1. Identificeer grenzen (uit welke elementen bestaat het systeem).

2. Definieer de actoren (kunnen zowel mensen als andere systemen zijn).

3. Definieer use-cases.

4. Definieer scenario’s.

5. Beschrijf elke use-case.

6. Identificeer gemeenschappelijke sub-cases (sommige use cases kunnen door verschillende use cases worden hergebruikt).

Page 18: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70118

Use case relaties

• Generalisatie tussen use-cases• Include relatie tussen use-cases• Extend relatie tussen use cases

Page 19: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70119

Generalisatie

• Er kan van een use-case generalisatie gebruik worden gemaakt wanneer er over een use-case wordt beschikt die in veel opzichten overeenkomt met een andere use-case maar net iets meer kan. In feite biedt dit type use-case een andere manier om alternatieve scenario’s vast te leggen.

Page 20: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70120

Use Case diagram voorbeeld

Page 21: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70121

Include / Uses

• Uses / Include : wanneer een bepaald gedrag in verschillende use-cases terugkeert en ervoor gekozen is de beschrijving van dit gedrag niet te kopiëren.

Page 22: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70122

Use Case diagram voorbeeld

Page 23: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70123

Extend

• Extend : is in principe hetzelfde als een generalisatie maar is aan meer regels gebonden. De uitbreidende use-case mag alleen extra gedrag toevoegen bij bepaalde gedeclareerde extensiepunten.

Page 24: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70124

OndertekeningVerzekeringspolis

OndertekeningContract Auto-

aankoop

«extends»

OndertekeningVerzekeringspolis

OndertekeningAutoverzekering

OndertekeningLevensverzekering

«uses»

«uses»

Page 25: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70125

Gebruik van use case relaties

• Gebruik een relatie include wanneer er bij de uitwerking van twee of meer use-cases in herhaling wordt gevallen en dat men dat wil voorkomen dat een aantal keren hetzelfde wordt gedaan.

• Gebruik een generalisatie om een variatie van normaal gedrag te beschrijven en men deze beschrijving oppervlakkig wilt houden.

• Gebruik een extend om een variatie op normaal gedrag te beschrijven en men deze variatie nauwkeuriger naar de hand wilt zetten.

Page 26: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70126

Use Case Diagram / Use Cases

Summary

Page 27: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70127

What is Use Case modeling?

• Use Case model: a view of a system that emphasizes the behavior as it appears to outside users. A use case model partitions system functionality into transactions(“use cases’) that are meaningful to users (‘actors’)

• A Use Case Diagram visualizes a use case model.

Page 28: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70128

Core Elements

Construct Description Syntax

use case A sequence of actions, inclu-ding variants, that a system (or other entity) can perform, interacting with actors of the system.

actor A coherent set of roles that users of use cases play when interacting with these use cases.

system boundary

Represents the boundary between the physical system and the actors who interact with the physical system.

UseCaseName

ActorName

Page 29: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70129

Core Relationships

Construct Description Syntax

association The participation of an actor in a use case. I.e., instance of an actor and instances of a use case communicate with each other.

extend A relationship from an extension use case to a base use case, specifying how the behavior for the extension use case can be inserted into the behavior defined for the base use case.

generalization A taxonomic relationship between a more general use case and a more specific use case.

<<extend>>

Page 30: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70130

Core Relationships

Construct Description Syntax

Include (uses)

An relationship from a base use case to an inclusion use case, specifying how the behavior for the inclusion use case is inserted into the behavior defined for the base use case.

<<extend>> (<<uses>>)

Page 31: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70131

Use Case Diagram Use Cases

Use Case text: Voorbeeld

Page 32: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70132

NS Kaartjesautomaat

• Maak een use case diagram van de NS kaartjesautomaat.

• Beschrijf één of meer use cases.

Page 33: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70133

Use Case diagram NS kaartjesautomaat

Ontleend aan Mallens/Hengeveld 2001

Page 34: 7M701 1 Use Case Modelling. 7M701 2 Use Case diagram voorbeeld.

7M70134

Use Case: Koop Ticket

Ontleend aan Mallens/Hengeveld 2001

Beschrijving