Ladda ner presentationen
Presentation laddar. Vänta.
1
Krav & dokumentation, del 2
Robert Åhlén Krav & dokumentation, del 2 Krav som user stories
2
User stories & acceptanskriterier
Snabbkurs i agil kravhantering
4
Agil kravhantering i praktiken
Detaljera ”just in time” – lösningen måste inte vara färdigtänkt när kravet skrivs Kundkontakt (=användarkontakt), välkomna sena ändringar, det är viktigare med rätt innehåll än rätt process => Framgång mäts i en fungerande produkt Användningsfallen är inte beställningen till utvecklingen; beställningen görs i form av ärenden/stories
5
User story – vad är det ens?
Metod för att tvinga fram kommunikation Genom att endast beskriva det allra mest fundamentala måste en diskussion hållas mellan kravskrivare och utvecklare Ju mer som är detaljerat vid första anblick, desto sämre är det (illusion av ”genomtänkthet”/”oändringsbarhet”) Storyn kallas ibland för ”ett löfte om ett samtal” Får utvecklas och förändras under sprinten – är inte låst som en beställning, utan vi välkomnar förändring!
6
User story – mallen Som en <roll>
Vill jag <kunna/vilja/se/få XYZ> För att <motiv> Som en ny användare Vill jag skapa ett konto För att kunna köpa en bok Som säljansvarig Vill jag att bokköpare ska skapa användarkonton För att kunna skicka riktad reklam till dem och sälja mer
7
User story – beståndsdelar
Tanken är att rollerna ska vara hyfsat fasta och att motiven ska vara kända Jämför med en effektkarta där man börjar med att ta fram målgrupper/användare och deras behov – då är halva storyn gjord! Rollen ska fylla i det som inte sägs – handläggare har andra behov än sökande, handläggar-personan ”Edit” har andra behov än personan ”Björn” Kan precisera en roll med ett ”när” Som handläggare när jag försöker byta telefonnummer vill jag… Som någon som vill byta telefonnummer vill jag… Motivet! Varför är det här intressant? Vilken är verksamhetsnyttan? Vem underlättar vi för och varför? I företag: Hur tjänar vi pengar? Hos oss: Hur sparar vi pengar?
8
User story – någon slags process
När storyn skrivs Tillåts vara oklar, breda roller, brett varför, kanske saknar beståndsdelar Står knappt på egna ben Efter första diskussion krav <-> team Roller blir klarare, varför framstår, vad som behövs börjar skönjas, lösningar skissas Börjar klara sig själv Utredning/analys Förtydligas: Vilka roller definierar vi in och bort? Vilka lösningar är värda att gå vidare med?
9
User story – någon slags process
Inför sprint Alla är överens om vad som ingår Under sprint Ingen överens (), ändra/backa/justera Efter sprint Kasta bort! Dokumentation löses lämpligast på annat sätt Olika processer tillåts Allt måste inte vara klart inför sprinten Kan låta föregående slide ingå i sprintprocessen Primära objektet som drivs genom sprinten Kan ibland vara detsamma som ett sprintmål Är en utgångspunkt, ej nödvändigtvis slutresultatet En story kan bli 15 ärenden i 7 sprintar…
10
User story – krav på kraven
INVEST: Independent (står på egna ben – är inte endast en del) Negotiable (tillåta diskussion) Valuable (tillföra värde, värdet ska helst inte komma från annan story) Estimable (säga något om scope – vad innehåller det, vad innehåller det inte?) Small (se ovan, inte för stort scope!) Testable (självständigt och värdefullt kan testas) Stories som inte uppfyller INVEST kan behöva delas eller slås ihop eller splittras på annat sätt När vill man att storyn ska uppfylla INVEST? Före sprint, under sprint? Stories som levereras ska ge nytta I SIG
11
User story – tips & trix Otroligt lätt att de här bara görs för sakens skull Individuals and interactions over processes and tools Att utföra meningslöst arbete är just meningslöst: waste i lean Se till att de blir meningsfulla och fyller sitt syfte Ska underlätta, inte ersätta, kommunikation Tips för att det inte ska bli en tom rutin!
12
User story – tips & trix Vänd på mallen! Halvera mallen!
För att <motiv> För att inte riskera felaktiga telefonnummer Vill jag, som en <roll> Vill jag som sökande som bytt telefonnummer <Kunna/vilja/se/få XYZ> Få ett bekräftelse-SMS skickat till mig Detta lyfter fram motivet på ett oväntat tydligt sätt – vad är det ens för problem vi försöker lösa? Halvera mallen! När jag <situation> När telefonnummer byts Utelämna roll och ”vill” – fokusera på problemet och situationen och låt lösningen arbetas fram Använd storyn som diskussionsunderlag med teamet Fyll i roller och behov allt eftersom
13
Acceptanskriterier Beskriv i förväg hur det ser ut/fungerar när storyn är färdig, klar och accepterad Lite mer fri form än storyn i sig själv: ”Det ska gå att göra X” Kan vara i form av ”lokalt användningsfall”: Användare gör X Systemet gör Z Osv Punktlistor är finfint Ska fortfarande vara fokus på användaren och nyttan – inte på systemet och lösningen Kan ersättas av testfallsbeskrivning / demoplan: ”Storyn demas genom A, B, C, sedan X, Y…” Funkar det, funkar storyn Fungerande mjukvara är främsta framgångskriteriet
14
Återigen: agila principer
Stories och acceptanskriterier ska inte ses som slutgiltiga förrän koden är pushad och ärendet avslutat Formuleringar görs i samarbete mellan krav och utveckling Formuleringar, inriktningar, lösningar ändras beroende på användares reaktioner Inget är egentligen färdigt förrän det är klart, produktionssatt och använt Fokusera på användarnyttan – eller egentligen verksamhetsnyttan Användaren kanske vill ha något som egentligen verksamheten i stort inte är hjälpt av Vilket är det överordnade målet egentligen? Men allt passar inte som user story!
15
Nyttopyramid – ”big picture quality pyramid”
SUCCESSFUL? USEFUL? USABLE? WORK WELL? DOES IT WORK? Adzic, Evans & Roden (2015:10-11)
16
Nyttopyramid – enkla definitioner
SUCCESSFUL? USEFUL? USABLE? WORK WELL? DOES IT WORK? Uppfyller affärsbehov Används i produktion Går att använda Fungerar utan uppenbara fel Fungerar enligt specifikation
17
Nyttopyramid – kvalitetsaktiviteter
SUCCESSFUL? USEFUL? USABLE? WORK WELL? DOES IT WORK? Uppfyller affärsbehov Används i produktion Går att använda Fungerar utan uppenbara fel Fungerar enligt specifikation Kontrollera... ...produktionsdata! Acceptanstest Funktionell test Enhetstest
18
Varför gör vi något alls?
Vilken förmåga möjliggör vi för verksamheten? Vad kan de göra nu som de inte kunde göra nyss? Testa detta överordnade!
19
Exempel VAD När går det? När går det bra? När kan det användas? När används det? När är det en succé? Det finns anledning att fundera kring dessa frågor när vi startar upp ärenden. Inte bara ”acceptanskriterier” utan ”succékriterier”! ”Inga felrapporter” på det vi skickar ut är ett självklart mål, men det ambitiösa målet är ”inga supportärenden” – användarna förstår vad som ska göras utan att behöva kontakta supporten! (Det finns också en tredje nivå – inga ärenden till produktionssupporten, något att fundera på!)
20
Tack! Frågor?
Liknande presentationer
© 2024 SlidePlayer.se Inc.
All rights reserved.