ACSD sommar 2004 Övning / Handledning Användningsfall Uppsala universitet & Stefan Blomkvist @ 2004 Stefan Blomkvist stefan.blomkvist@it.uu.se ACSD sommar 2004. Övning / handledning Användningsfall Ett exempel Övningsuppgift (Varianter på användningsfall) Tid för handledning inlupp 2 (och 1) ACSD sommar 2004. Informationsteknologi 2004-06-17 #2 1
Användningsfall det klassiska exemplet! ACSD sommar 2004. Informationsteknologi 2004-06-17 #3 AF: Ta ut pengar Aktör (A): Kund System (S): Bankomat A för in ett kort i automaten. A anger PIN-kod. A väljer uttag A anger önskat belopp. S läser och kontrollerar information på kortet. S frågar efter PIN-koden. S verifierar kod. S frågar vad kunden vill göra ( uttag, kontobesked, överföring ) S ber om belopp. S kommunicerar med bank för att kontrollera saldo. ACSD sommar 2004. Informationsteknologi 2004-06-17 #4 2
Aktör (A): Kund System (S): Bankomat Frågar A om kvitto önskas (om papper finns). S matar ut kort och ber A att ta kortet. A tar sitt kort. S matar ut det begärda beloppet. S matar ut kvitto. A tar pengar. A tar kvitto. AF avslutas. ACSD sommar 2004. Informationsteknologi 2004-06-17 #5 Bankkund Aktören (actor) Aktör är en roll, ej en enskild individ eller användare En användare kan ha många roller (ej nödvändigtvis en människa) Aktör finns utanför och interagerar med systemet Aktören har mål med att använda systemet. ACSD sommar 2004. Informationsteknologi 2004-06-17 #6 3
Användningsfallet (use case) Representerar något som systemet gör och innebär ett värde för aktören. Namnet uttrycker det värde som AF:et ger aktören, till exempel: Ta ut pengar Överför pengar Kontrollera saldo ACSD sommar 2004. Informationsteknologi 2004-06-17 #7 Användningsfallet (use case) Beskrivs som en sammanhängande sekvens händelser mellan aktör system. Händelseförloppet är en hel väg genom interaktion med systemet tills aktörens mål är uppfyllt. Abstrakt och Generell beskrivning (Scenarion däremot är konkreta) Undvik för mycket designlösningar ACSD sommar 2004. Informationsteknologi 2004-06-17 #8 4
Textbeskrivning av händelseförlopp Aktör (A): Kund A för in ett kort i automaten. A anger PIN-kod. A väljer uttag A anger önskat belopp. System (S): Bankomat S läser och kontrollerar information på kortet. S frågar efter PIN-koden. S verifierar kod. S frågar vad kunden vill göra ( uttag, kontobesked, överföring ) S ber om belopp. S kommunicerar med bank för att kontrollera saldo. ACSD sommar 2004. Informationsteknologi 2004-06-17 #9 Systemgränser Kund Bankomat Bankomat Bankdator Bankdator Bankomat Ta ut pengar Bankkund ACSD sommar 2004. Informationsteknologi 2004-06-17 #10 5
Primär aktör UML-diagram Bankomat Ta ut pengar Bankdator Överför pengar Bankkund Kontrollera saldo Ladda bankomat Sekundär aktör Serviceperson ACSD sommar 2004. Informationsteknologi 2004-06-17 #11 Det finns många sätt en annan bankomat Överkurs: OO tankesätt. Hierarkier av AF, AF som ärver av andra. AF som utökar eller är inkluderade i andra AF. ACSD sommar 2004. Informationsteknologi 2004-06-17 #12 6
Övning 1-2 Användningsfall för P-automat (eller något annat). Processen, enligt föreläsning 5: Dra upp systemets gränser Lista primära aktörer och ev övriga aktörer Lista aktörernas mål (Skriv översiktliga scenarier för att nå målen) Gå igenom scenarier och förfina dessa till användningsfall Revidera fallen Välj ett huvudsakligt (lyckat) fall Fyll i detaljerna skriv en händelsesekvens I senare iterationer kan man förfina AF (överkurs): Dela upp i mindre delsekvenser om nödvändigt (OO struktur includes, extends) Lista alternativa sekvenser och sekvenser vid fel För varje fel/alt. sekvens, skriv ner hur aktören bör handla Sammanställ alla era AF i ett UML-diagram ACSD sommar 2004. Informationsteknologi 2004-06-17 #13 Vad har Användningsfall med Användarcentrerad systemdesign att göra egentligen? ACSD sommar 2004. Informationsteknologi 2004-06-17 #14 7
Många varianter på AF Vanliga AF / System use case / Formal use case Varianter på ovanstående Text och UML-representation Essential Use Case (Constantine & Lockwood) Cockburn hittade 18 varianter: Syfte samla användarhistorier eller krav Innehåll detaljeringsgrad skiljer Pluralitet AF = scenario, kan ett AF innehålla ett AF Struktur ostrukturerad, semi-formell, formell ACSD sommar 2004. Informationsteknologi 2004-06-17 #15 gettingcash Essential Use Case User Intention identify self choose System Responsibility verify identity offer choices dispense cash take cash ACSD sommar 2004. Informationsteknologi 2004-06-17 #16 8
Läs mer: Resurser & Länkar www.it.uu.se/edu/course/homepage/acsd/s04 Användbarhet & användningsfall Are Use Cases the death of good UI Design?, uppföljande artikel Use Cases still considered Dangerous! Generellt om användningsfall Alistair Cockburns sida om användningsfall, systemutveckling och Agile. Mycket material. Use Case Fundamentals av Cockburn. UseCases.org Cockburns sida om användningsfall. Innehåller t.ex. mallar för användningsfall + artiklar och länkar]. Use Cases, Ten Years Later From their evolution, learn what to expect and how to better work with them by Alistair Cockburn. The use case zone. Samling artiklar och länkar om användningsfall. Use cases: best practices IBM Rational. System Use Case Overview. The Official Agile Modeling Site Med mera ACSD sommar 2004. Informationsteknologi 2004-06-17 #17 Inlupp 2 Användningsfall (use cases) 2a. Användningsfall som beskriver ett system för självscanning Minst 2 olika aktörer Minst 3 olika AF vanliga AF, text 2b. Egen reflektion Resurser Föreläsning 6 Handledning/övning 2, torsdag 17/6 Boken + kurssidan + länkar Deadline: On 23/6 kl. 09:00 ACSD sommar 2004. Informationsteknologi 2004-06-17 #18 9
Formalia inlämning Lämnas in skriftligen i elektronisk version: 1it240-inlupp@hci.uu.se Filnamn: inlupp<nr>_dittnamn Rapportens omfattning: motsvarande 1 5 A4-sidor exklusive framsida. Handledning: Övning/lektion 1 och 2 Stefan Blomkvist, rum 1157 E-post: 1it240@hci.uu.se Arkiv: www.hci.uu.se/courses/1it240/s04/mail/ Mer info: www.it.uu.se/edu/course/homepage/acsd/s04 ACSD sommar 2004. Informationsteknologi 2004-06-17 #19 Resultat Webbsida med era resultat + epostadresser www.it.uu.se/edu/course/homepage/acsd/s04/result Användarnamn & lösenord behövs Mer info på kurswebben. Uppdateras kontinuerligt. www.it.uu.se/edu/course/homepage/acsd/s04 ACSD sommar 2004. Informationsteknologi 2004-06-17 #20 10