Upload
bestbrains
View
115
Download
0
Embed Size (px)
Citation preview
Bliv en haj +l nedbrydning 5. oktober 2016 Jesper Thaning, partner BestBrains PS
Agenda
• Nedbrydning • Hvorfor? • Hvordan? • Øvelser 1 & 2 • Prioritering og planlægning med User Story Map
Er stort godt? • Leverancerne tager +d • Venter længe på features • Opgaverne passer ikke ind i en itera+on
• Vi har svært ved at blive færdige
Nej -‐ småt er bedre • Hur+gere leverancer • Features laves hur+gt • Opgaver passer i itera+oner • Små +ng der bliver færdige!
i effek+v produktudvikling
Nedbrydning er Fast feedback ikke big bang
Agile principper
1. Vores højeste prioritet er at s+lle kunden +lfreds gennem +dlige og løbende afleveringer af værdifuld soXware
3. … jo hyppigere des bedre
Hyppige leverancer = små nedbrudte user stories h\p://www.agilemanifesto.org/iso/dk/principles.html
Løbende leverancer og backloggen BA
CKLO
G
Løbende leverancer og backloggen
Løbende leverancer og backloggen
Løbende leverancer og backloggen
Løbende leverancer og backloggen
Løbende leverancer og backloggen
Nedbrydning
BACK
LOG
Størrelse på user stories
Ak+vitet
Feature/Behov
Tema
Epic
User Story
User Story
Epic
User Story
User Story
VEJLEDENDE
Regel: En User Story kan laves i ét sprint
INVEST-‐kriterier
Store user stories/epics – ”afventer”
Små user stories – “klar” BA
CKLO
G
• Independent (Uadængig) • Nego+able (Forhandles) • Valuable (Værdiskabende) • Es+mable (Es+meres) • Small (Lille) • Testable (Testes)
NEDBRYDNING
Hvorfor nedbryde noget?
1. Prioritere 2. Småt er bedre 3. Afdække adængigheder 4. Undgå gold-‐pla+ng
Batch size reduc+on Don Reinertsen
1
2
3
Mindre batches: Forudsigelighed Hur5g feedback Mindre rework
Hvordan nedbryder du …
9 teknikker +l nedbrydning af user story
Produkt
(Projekt)
Release
Feature
User story
h\p://www.agileforall.com/2009/10/pa\erns-‐for-‐splikng-‐user-‐stories/ h\p://bit.ly/PuCoC2 (Engelsk cheat sheet -‐ 1 PDF)
Start Indtast Indsend Kvittering
Teknik #1: Handlinger i en arbejdsproces For at kunne implementere en simpel end-to-end og putte komplicerede trin på bagefter
Start Indtast Indsend Kvittering
Simpel
Kompleks
Teknik#2 Simpel vs. kompleks Hvad er den simpleste version af denne funktionalitet? De mere komplekse variationer følger efter
Start Indtast Indsend Kvittering
Data
Alder + køn
Adresse
Navn
Teknik#3 Variationer i data Hvilke typer af data skal systemet kunne håndtere. Hvad er den mest basale type?
Start Indtast Indsend Kvittering Behandling Registrering
Teknik#4 Operationer De forretningsmæssige operationer kan være spredt over flere forskellige opgaver og roller. Systemet kan være en selvstændig rolle.
Start Indtast Indsend Kvittering Behandling Registrering
§1 §2
§3
Teknik#5: Hver enkelt forretningsregel Eller grupper af forretningsregler der hører sammen
Start Indtast Indsend Kvittering Behandling Registrering
§1 §2
§3 Data
Alder + køn
Adresse
Navn
Simpel
Kompleks
#1 HANDLINGER I EN PROCES
#4 OPERATIONER #2 SIMPEL KOMPLEKS
#3 VARIATIONER I DATA
#5 FORRETNINGSREGLER
ØVELSE 1 WEBSHOP
Levering og betaling 1. Kunden ser oversigt over samlet ordre og pris. Raba\en vises særskilt og fremhævet og vælger foretrukne levering (fx. pakkelevering eller adentning)
2. Kunden angiver fakturaadresse og leveringsadresse for danske og udenlandske adresser og betaler med kreditkort via betalingsgateway
3. Kunden ser kvi\eringsside 4. Kunden modtager email-‐kvi\ering med ordredetaljer (samme data som på leveringsside) og +lbud om andre lignende produkter
Tilbudsside Produkter kan få +lkny\et særlig rabat og vises særskilt i webshoppen 1. Administrator fra salgsafdelingen udvælger et
produkt +l at være +lbud og sæ\er periode og rabat 2. Tilbudssiden +lføjes +l websitets hovedmenu’en inkl.
blikfang 3. Tilbudssiden viser alle +lbudsprodukter sorteret på
største rabatprocent øverst og brugeren kan vælge forskellige sorteringer
4. Hvis et produkt med +lbud har under 2 dage +lbage bliver det fremhævet på +lbudssiden
5. Hvis kunden køber mere end 2 stk bliver der lagt 5% oven i raba\en, hvis 3 stk eller mere får kunden også bonuspoint
6. Raba\erne vises med særlig visuel fremtoning på søgelister, produktdetaljer og i nyhedsbrevet
Vælg dit eget produkt!? Individuelt ca. 7 min Diskutér resultatet med sidemanden ca. 7 min
Øvelse 1 – mulige nedbrydninger Levering og betaling 1. Kunden ser oversigt over samlet ordre og pris. Raba\en vises særskilt og fremhævet og vælger foretrukne levering (fx. pakkelevering eller adentning)
2. Kunden angiver fakturaadresse og leveringsadresse for danske og udenlandske adresser og betaler med kreditkort via betalingsgateway
3. Kunden ser kvi\eringsside 4. Kunden modtager email-‐kvi\ering med ordredetaljer (samme data som på leveringsside) og +lbud om andre lignende produkter
1a Oversigt over samlet ordre og pris
1b Oversigt med rabat
2a Foretrukne levering -‐ adentning
2c Fakturaadresse
2b Foretrukne levering -‐ pakkelevering
2d Leveringsadresse -‐ dansk
2f Betaling med kreditkort (nedbrydes)
2e Leveringsadresse -‐ udenlandsk
3 Kvi\eringsside
4a Email-‐kvi\ering – uden anbefaling
4b Email-‐kvi\ering –anbefalinger simpel liste
4c Email-‐kvi\ering – anbe-‐falinger kuns+g intelligens
#1
#3
#1
#5
#3
#3
#3
#1
#1
#1
#3,2
#2
Øvelse 1 – mulige nedbrydninger 1a Administrator vælger rabat
1b Administrator vælger periode
2,3a Tilbudsside default sortering inkl. menupunkt
4 Fremhævning
3b Tilbudsside vælge sortering
5a Rabat ved flere stk
6a Rabat på søgelister
5b Bonuspoint ved flere stk
6b Rabat på produktdetaljer
6c Rabat i nyhedsbrev
#4
#3
#4
#2
#5
#5
#5
#4
#4
#4
Tilbudsside Produkter kan få +lkny\et særlig rabat og vises særskilt i webshoppen 1. Administrator fra salgsafdelingen udvælger et
produkt +l at være +lbud og sæ\er periode og rabat 2. Tilbudssiden +lføjes +l websitets hovedmenu’en inkl.
blikfang 3. Tilbudssiden viser alle +lbudsprodukter sorteret på
største rabatprocent øverst og brugeren kan vælge forskellige sorteringer
4. Hvis et produkt med +lbud har under 2 dage +lbage bliver det fremhævet på +lbudssiden
5. Hvis kunden køber mere end 2 stk bliver der lagt 5% oven i raba\en, hvis 3 stk eller mere får kunden også bonuspoint
6. Raba\erne vises med særlig visuel fremtoning på søgelister, produktdetaljer og i nyhedsbrevet
Start Indtast Indsend Kvittering Behandling Registrering
Stor indsats
Teknik#6 Stor indsats og efterfølgende Den første user story bærer den tekniske byrde for de efterfølgende.
Start Indtast Indsend Kvittering Behandling Registrering
Teknik#7 Inputmetode for brugeren Hvordan ser den simple brugergrænseflade ud? Den mere brugervenlige og smarte?
Start Indtast Indsend Kvittering Behandling Registrering
2 s 20 ms
Teknik#8 Udskyd performance Hvordan får vi det til at fungere? Hvordan får vi det til at gå hurtigt?
Start Indtast Indsend Kvittering Behandling Registrering
PoC
Teknik#9 Undersøgelse (en spike) og implementation Ved dårlig forståelse af løsning eller manglende afhængigheder. Et nyt område enten teknisk eller forretningsmæssigt (kaldes også et Proof of Concept eller PoC). Sæt en timebox.
Hvordan nedbryder du en user story der allerede er nedbrudt?
ØVELSE 2 WEBSHOP
Produktdetaljer -‐ Pris og leveringsXd
Acceptkriterier: 1. Prisen uden moms beregnes på baggrund af prisen med moms
2. Prisen u. moms afrundes +l hele øre (fx. 245,45 kr.) 3. Hvis kunden vælger anden valuta (EUR, USD mv) hentes prisen fra økonomisystemet.
4. Hvis prisen er over 1.500 kr. vises skilt med fri fragt 5. Leverings+d vises over prisen (fx. 2 dage, 3 uger) 6. Produktets leverings+d hentes fra lagersystemet som antal hele dage fra dags dato
7. Hvis leverings+d ikke kendes vises ”info-‐boks” med kort forklaring
8. Kunden kan vælge at læse en længere forklaring om leverings+d
Vælg din egen User Story!? Individuelt ca. 5 min Diskutér resultatet med sidemanden Xl den anden side ca. 5 min
Øvelse 2 – mulige nedbrydninger 1,2 Pris uden moms
3a Anden valuta – hårdkodet kurs
3c Anden valuta EUR – fra økonomisystem
4 Fri fragt. Bliver fri fragt fratrukket ordren?
3d Anden valuta USD mv. – fra økonomisystem
7 Leverings+d kendes ikke
5b Leverings+d fra lagersystem i dage. Er uger nødvendigt?
5c Leverings+d fra lagersystem i uger.
8 Længere forklaring af leverings+d. Hvem laver siden?
3b Spike: Hente valuta fra økonomisystem.
#3
#2
#2
#6
#1
#5
#2
#2
#4
Produktdetaljer -‐ Pris og leveringsXd
Acceptkriterier: 1. Prisen uden moms beregnes på baggrund af
prisen med moms 2. Prisen u. moms afrundes +l hele øre (fx. 245,45
kr.) 3. Hvis kunden vælger anden valuta (EUR, USD mv)
hentes prisen fra økonomisystemet. 4. Hvis prisen er over 1.500 kr. vises skilt med fri
fragt 5. Leverings+d vises over prisen (fx. 2 dage, 3 uger) 6. Produktets leverings+d hentes fra lagersystemet
som antal hele dage fra dags dato 7. Hvis leverings+d ikke kendes vises ”info-‐boks”
med kort forklaring 8. Kunden kan vælge at læse en længere forklaring
om leverings+d
#9
Øvelse 1 -‐ genbesøg 1a Administrator vælger rabat
1b Administrator vælger periode
2,3a Tilbudsside default sortering inkl. menupunkt
4 Fremhævning
3b Tilbudsside vælge sortering
5a Rabat ved flere stk
6a Rabat på søgelister
5b Bonuspoint ved flere stk
6b Rabat på produktdetaljer
6c Rabat i nyhedsbrev
3c HURTIG Xlbudsside!
3d Smart valg af sortering
#4
#3
#4
#2
#1
#5
#5
#1
#1
#1
Tilbudsside Produkter kan få +lkny\et særlig rabat og vises særskilt i webshoppen 1. Administrator fra salgsafdelingen udvælger et
produkt +l at være +lbud og sæ\er periode og rabat
2. Tilbudssiden +lføjes +l websitets hovedmenu’en inkl. blikfang
3. Tilbudssiden viser alle +lbudsprodukter sorteret på største rabatprocent øverst og brugeren kan vælge forskellige sorteringer
4. Hvis et produkt med +lbud har under 2 dage +lbage bliver det fremhævet på +lbudssiden
5. Hvis kunden køber mere end 2 stk bliver der lagt 5% oven i raba\en, hvis 3 stk eller mere får kunden også bonuspoint
6. Raba\erne vises med særlig visuel fremtoning på søgelister, produktdetaljer og i nyhedsbrevet
#8
#7
Tre udfordringer
1. Overblik over backloggen 2. Prioritering af user stories 3. Kommunika+on om backloggen
Jeff Patton
Jeff’s book
usage sequence release 1
release 2
release 3
Walking skeleton
Body
big activities
smaller steps
light weight personas
summarizing
ordered tasks
Must have
Nice to have
h\p://jpa\onassociates.com/wp-‐content/uploads/2015/03/story_mapping.pdf
#1 HANDLINGER I EN PROCES
#4 OPERATIONER
#2 SIMPEL KOMPLEKS
#3 VARIATIONER I DATA
#5 FORRETNINGSREGLER
#6 STOR INDSATS
#7 INPUTMETODE FOR BRUGEREN
#8 UDSKYD PERFORMANCE
#9 UNDERSØGELSE (SPIKE ELLER POC)
Nedbrydning og user story map
Et User Story Map
Et User Story Map Prioriteret og inddelt i releases
Releases Ver1
Ver2
Later
God fornøjelse med nedbrydningen!
Jesper Thaning – [email protected]