introductie tot use cases
DESCRIPTION
Een introductie tot use cases vertrekkende van scenario's zoals beschreven in user centered designTRANSCRIPT
![Page 1: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/1.jpg)
Scenarios & Use Cases
Frans Van Assche
![Page 2: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/2.jpg)
• 14u00-14u30: uitleg use cases / scenario's• 14u30-15u30: werken aan scenario in groepje• 15u30-15u45: scenario pitch• 15u45-16u00: break• 16u00-16u30: meer uitleg use cases• 16u30-17u30: werken aan use cases in groepje• 17u30-17u45: use case pitch• 17u45-18u00: consolidatie en planning follow-up
![Page 3: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/3.jpg)
Bezint eer je begint
Wat moet onze applicatie doen ?Wie is onze gebruiker ?Wat doet hij ?Hoe kan ons systeem helpen ?
Programmeren
![Page 4: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/4.jpg)
How to understand the user ?
World
ComputerSystem
Business
BIS
Wat gebeurt er in de leefwereld van de student dat
we kunnen tracken en die een positieve of negatieve
impact hebben op het leren ?
Welke zijn de studie inspanningen ?
Hoe kunnen we die voorstellen?
Wat kunnen we er uit leren?
![Page 5: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/5.jpg)
Scenario ExampleProfessor Donaldson teaches introductory chemistry at a large state university. An analytics program linked to the learning management system (LMS) helps him monitor the progress of the more than 500 students in this lecture class by compiling and analyzing information such as the number of times class notes are viewed, frequency of contributions to the discussion board, and quiz grades. From the application dashboard, Donaldson sees an indicator beside each student’s name, reflecting the program’s assessment of the likelihood that the student is on track to earn a C or better in the course—green denotes high likelihood, yellow suggests possible risk, and red indicates that, statistically, the student is at elevated risk. Donaldson can send e-mail to notify students if they appear at risk, congratulate them for work well done, or suggest ways to get more from the class.
![Page 6: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/6.jpg)
Scenario Example (2)In the third week of the term, Donaldson runs a diagnostic tool from the dashboard. The results show that for the past three years, the work of the 25 most active discussion-board contributors has correlated heavily with the top 25 class performers. Factoring in additional data, including scores on the departmental chemistry exam, Donaldson has quantifiable evidence that increased participation correlates with greater success in the course and with the subject in general. He sends e-mail notices to the top 25 discussion-board contributors, thanking them for their participation and underscoring that their efforts suggest ongoing success in the study of chemistry. He also e-mails alerts to students whose profiles suggest they might be at risk of not earning at least a C in the course, and he includes individual suggestions of campus resources and strategies that, according to data, correlate with better academic performance.
![Page 7: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/7.jpg)
Scenario Example (3)Kelly is pleased to receive a congratulatory note about her high level of discussion-board participation.
Ben, who never had difficulty in high school, is surprised by the e-mail that says he may be at risk. At the same time, he admits he has felt overwhelmed by the transition to college, and he is relieved to know that his professor cares enough about his success to suggest action. Accordingly, Ben uses his dashboard to schedule an appointment with his instructor, and he looks over the list of options in the e-mail, deciding to attend the help sessions held in the university resource center. He also resolves to take an active role in the discussion board and in class, rather than simply watching the questions other students pose.
http://net.educause.edu/ir/library/pdf/ELI7059.pdf
![Page 8: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/8.jpg)
Persona
• It is a fictional character with all the characteristics of the user
• Representing stakeholder groups• Often more than one per stakeholder
group• http://thinkvitamin.com/design/how-t
o-understand-your-users-with-personas/
![Page 9: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/9.jpg)
Defining a Scenario• Narrative (a story)• Bounded (or scoped)• Descriptive
– Actors/Persona– Activities (tasks) – Things (objects)
• Within a given time-frame• For a given purpose • They can describe:
– ‘current/now’ or ‘as is’and/or– ‘proposed/future’ or ‘what-if’ situations
![Page 10: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/10.jpg)
![Page 11: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/11.jpg)
Self tracking• Prime questions
– What can you track that impacts learning ?– How do you do it ?– What can you learn from it ?
• Dashboard– What contextual information do you need ?
• Time, geolocation, weather ?• Learner profile?• Lesson schedule ?• What others do ?
• http://ariadne.cs.kuleuven.be/mediawiki2/index.php/Quantified_learning
![Page 12: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/12.jpg)
8 Learning Events• Imitation – Pronunciation• Reception – Attending a lecture, reading
course material• Exercising – P & O 1• Exploration – Wikipedia Search• Experimentation – Science lab• Creation – Writing a thesis• Self reflexion – P & O 3• Debate – Toledo forum
http://www.labset.net/media/prod/8LEM.pdf
![Page 13: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/13.jpg)
Opdracht
Maak een paar scenariosBegin met de personas te
definiëren
![Page 14: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/14.jpg)
• http://www.w3.org/WAI/EO/2003/ucd • http://en.wikipedia.org/wiki/User-centered_
design
![Page 15: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/15.jpg)
World
ComputerSystem
Book selling company
BIS
![Page 16: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/16.jpg)
Example Use CaseThe on-line store
The customer browses the catalogue and adds desired items to the shopping basket. When the customer wishes to pay, the customer describes the shipping and credit card information and confirms the sale. The system checks the authorisation on the credit card and confirms the sale both immediately and by email
What about if the credit card fails ?
![Page 17: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/17.jpg)
World
ComputerSystem
Book selling company
The customer browses the catalogue ...The system
checks ...
![Page 18: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/18.jpg)
•Different Forms–Casual–Terse–Fully dressed
•No standard template
![Page 19: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/19.jpg)
Example: Buy a product 1. Customer browses through catalogue and selects
items to buy2. Customer goes to check out3. Customer fills in shipping information (address;
next-day or 3-day delivery)4. System presents full pricing information, including
shipping5. Customer fills in credit card information6. System authorises purchase7. System confirms sale immediately8. System sends confirming email to customer
![Page 20: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/20.jpg)
http://nl.wikipedia.org/wiki/Use_case• Use case naam • Versie • Doel• Samenvatting• Actoren • Precondities• Triggers• Basis verloop van de
events • Alternatieve wegen• Post condities• Business rules• Notes• Auteur en datum
• + Prioriteit
![Page 21: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/21.jpg)
Use case naamEen use case naam levert een unieke identificatie voor de use case
– Validate user– Submit cost statement– Admin::Add student
Syntax: [<package name>::]<name>
![Page 22: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/22.jpg)
VersieEen versie is van belang om de lezer inzicht te geven in het stadium dat de use case heeft bereikt
– Draft– Final
![Page 23: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/23.jpg)
DoelEen doel beschrijft in het kort, wat de gebruiker met de use case wenst te bereiken
Describes an observable result(s) of value to an actor
![Page 24: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/24.jpg)
Samenvatting
Deze sectie bevat de essentie van de use case, en geeft een overzicht.
![Page 25: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/25.jpg)
ActorenEen actor is iemand of iets buiten het systeem, dat een interactie aangaat met het systeem
![Page 26: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/26.jpg)
Actors and Users• A human actor describes a role
– Many-to-many relationship• Not necessarily correspond to job titles• Actors carry out use cases
– Many-to-many relationship• In order to start off, it is sometimes easier
to come up with a list of actors instead of a list of use cases
![Page 27: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/27.jpg)
Actors (cont.)• Can we find all use cases by tracking
the actors ?
• External events
![Page 28: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/28.jpg)
Precondities en Postcondities
• Een sectie die alle condities definieert, die waar dienen te zijn voor en na het uitvoeren van de use case
![Page 29: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/29.jpg)
TriggersEen sectie beschrijft de gebeurtenissen (events), waardoor de use case geïnitieerd wordt
![Page 30: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/30.jpg)
Basis verloop van de eventsEen primair scenario, of verloop van de gebeurtenissen
• An outsider should be able to understand it easily
• Include – how and when the use case starts and ends– the interaction with the actors– what objects are exchanged– basic flow and alternative flows of the behaviour
![Page 31: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/31.jpg)
Example: Buy a product 1. Customer browses through catalogue and selects
items to buy2. Customer goes to check out3. Customer fills in shipping information (address;
next-day or 3-day delivery)4. System presents full pricing information, including
shipping5. Customer fills in credit card information6. System authorises purchase7. System confirms sale immediately8. System sends confirming email to customer
![Page 32: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/32.jpg)
Alternatieve wegen: Variant
Secundaire wegen of alternatieve scenario's
Beschreven als varianten op het primaire scenario
![Page 33: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/33.jpg)
Example: Buy a product• Alternative: Authorisation failure
Replace step 6 by1. System fails to authorise credit purchase2. System presents customer opportunity to re-enter credit card
information3. Customer fills in credit card information4. System authorises purchase
• Alternative: Regular customerReplace step 3-5 by1. System displays current shipping information, pricing
information, and Last four digits of credit card information2. Customer may accept or override these defaults
![Page 34: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/34.jpg)
Business rulesGeschreven of ongeschreven regels of beleid, die bepalen hoe een organisatie dient te reageren op een bepaalde use case– Constraints– Derivation (also computational) rules– Pre & post-conditions– Stimulus-Response rules
![Page 35: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/35.jpg)
Notes
Belangrijke aantekeningen, die niet in de vooropgezette format passen
![Page 36: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/36.jpg)
Use Case Diagrams
C aptureD eal
L im itsExceeded
SetL im its
AnalyzeR isk
PriceD eal
UpdateAccounts
Valuation
T rad ing M anager
T rader
AccountingSystem
Salesperson
A c to r
U se C a se
in c lu d e
G en era lisa tio n
«include»
«include»
Fowler: UML Distilled
![Page 37: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/37.jpg)
Use Case Diagrams• Names • Symbols for
– Use Cases– Actors– Associations– Variant relationships
• generalisation• include• extend
• You don’t need to draw diagrams to use use cases
![Page 38: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/38.jpg)
How to make use cases• UML does not provide a standard way
of describing use cases. Variations are possible.
• How to divide use cases: no strict rules
• Amount of detail:– The more risk, the more detail you need– During iteration you add more detail
![Page 39: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/39.jpg)
• Active sentences• Subject of the sentence: Actor or
‘The system’• What not How
– Put possibly ‘How’ in italics
http://ariadne.cs.kuleuven.be/mediawiki/index.php/Aandachtspunten_Use_Cases
![Page 40: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/40.jpg)
Req.ts Impl. Test
Use Cases bind these workflows together
Analysis Design
![Page 41: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/41.jpg)
?
![Page 42: Introductie tot use cases](https://reader033.vdocuments.mx/reader033/viewer/2022061207/54850acbb4af9f81778b4ada/html5/thumbnails/42.jpg)
Opdracht• Identify Use Cases• Prioritise use cases• Make a use case diagram• Start elaborating use cases
– Everyone one or two