Jeg vet ikke hva et story point er, men det virker bra. Magne Jørgensen Simula Research Laboratory

Like dokumenter
Hvordan estimering av ideell tid gjør deg mer realistisk (med innlagt NM i estimering)

Slope-Intercept Formula

Endelig ikke-røyker for Kvinner! (Norwegian Edition)

Medisinsk statistikk, KLH3004 Dmf, NTNU Styrke- og utvalgsberegning

Den som gjør godt, er av Gud (Multilingual Edition)

GEOV219. Hvilket semester er du på? Hva er ditt kjønn? Er du...? Er du...? - Annet postbachelor phd

SAMPOL115 Emneevaluering høsten 2014

Speed Racer Theme. Theme Music: Cartoon: Charles Schultz / Jef Mallett Peanuts / Frazz. September 9, 2011 Physics 131 Prof. E. F.

Emneevaluering GEOV272 V17

ESTIMERING I SMIDIGE PROSJEKTER

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

EN Skriving for kommunikasjon og tenkning

Hvor mye teoretisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye)

FIRST LEGO League. Härnösand 2012

Forskning på gruppe-estimeringestimering

5 E Lesson: Solving Monohybrid Punnett Squares with Coding

PATIENCE TÅLMODIGHET. Is the ability to wait for something. Det trenger vi når vi må vente på noe

Hvor mye teoretisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye)

C13 Kokstad. Svar på spørsmål til kvalifikasjonsfasen. Answers to question in the pre-qualification phase For English: See page 4 and forward

Hvor mye praktisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye)

Unit Relational Algebra 1 1. Relational Algebra 1. Unit 3.3

What is is expertise expertise? Individual Individual differ diff ences ences (three (thr ee cent cen r t a r l a lones): easy eas to to test

Tyve fagpersoner fra samme firma estimerte hver for seg arbeidsmengden for det samme systemutviklingsprosjektet [*]

Planleggingsfasen.. Estimering av kostnader i IT-prosjekter. Gjennomføringen. Hvor gode er vi til å planlegge (estimere kostnader) ihht Standish Group

Hvordan forbedre estimering av tid og kostnader i IT-prosjekter. Magne Jørgensen Simula Research Laboratory

Jørgen Petersen (PROMIS AS), Hans Christian Benestad og Jo Hannay (Simula Research Laboratory) PROMIS AS. Statens pensjonskasse, Accenture, Steria,

Exercise 1: Phase Splitter DC Operation

Han Ola of Han Per: A Norwegian-American Comic Strip/En Norsk-amerikansk tegneserie (Skrifter. Serie B, LXIX)

Examination paper for (BI 2015) (Molekylærbiologi, laboratoriekurs)

Oppgave. føden)? i tråd med

UNIVERSITETET I OSLO

Ole Isak Eira Masters student Arctic agriculture and environmental management. University of Tromsø Sami University College

6350 Månedstabell / Month table Klasse / Class 1 Tax deduction table (tax to be withheld) 2012

Appendix B, not for publication, with screenshots for Fairness and family background

Smidige metoder i praksis Høgskolen i Oslo Kristin Meyer Kristiansen Objectnet AS

Estimering av kostnader i IT-prosjekter. Stein Grimstad (Simula)

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Information search for the research protocol in IIC/IID

Prosjektet Digital kontaktinformasjon og fullmakter for virksomheter Digital contact information and mandates for entities

Du er mer lik meg! enn jeg er lik deg!!! Asymmetri i relativ estimering!

Kartleggingsskjema / Survey

Hvor mye praktisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye)

Nyttestyring og viktigheten av den gode kunde

Vekeplan 4. Trinn. Måndag Tysdag Onsdag Torsdag Fredag AB CD AB CD AB CD AB CD AB CD. Norsk Matte Symjing Ute Norsk Matte M&H Norsk

Kunnskapsinfrastruktur for forskningsdata i Norge

Hvor mye teoretisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye)

Enkel og effektiv brukertesting. Ida Aalen LOAD september 2017

Fakultet for informasjonsteknologi, Institutt for datateknikk og informasjonsvitenskap AVSLUTTENDE EKSAMEN I. TDT42378 Programvaresikkerhet

Nyttestyring og viktigheten av den gode kunde. Magne Jørgensen

Tuberkulosescreening fra et brukerperspektiv. Frokostmøte LHLI,

KROPPEN LEDER STRØM. Sett en finger på hvert av kontaktpunktene på modellen. Da får du et lydsignal.

Læring uten grenser. Trygghet, trivsel og læring for alle

Utvikling av skills for å møte fremtidens behov. Janicke Rasmussen, PhD Dean Master Tel

Bibliotekundervisningens fremtid nytt fokus på metodikk og digitalisering

Trigonometric Substitution

Moving Objects. We need to move our objects in 3D space.

Assignment. Consequences. assignment 2. Consequences fabulous fantasy. Kunnskapsløftets Mål Eleven skal kunne

CAMES. Technical. Skills. Overskrift 27pt i to eller flere linjer teksten vokser opad. Brødtekst 22pt skrives her. Andet niveau.

Interaksjonsdesign Utvikling for og med brukere

The Norwegian Citizen Panel, Accepted Proposals

Mannen min heter Ingar. Han er også lege. Han er privatpraktiserende lege og har et kontor på Grünerløkka sammen med en kollega.

EKSAMENSOPPGAVE I SØK 1002 INNFØRING I MIKROØKONOMISK ANALYSE

Språkleker og bokstavinnlæring

Eksamensoppgave i GEOG1004 Geografi i praksis Tall, kart og bilder

Perpetuum (im)mobile

Figur 1: Estimat per gruppe

AMS-case forts. Eksemplifisering av modellbasert. tilnærming til design av brukergrensesnitt

UNIVERSITETET I OSLO

Neural Network. Sensors Sorter

GEO231 Teorier om migrasjon og utvikling

Elektronisk termostat med spareprogram. Lysende LCD display øverst på ovnen for enkel betjening.

BIBSYS Brukermøte 2011 Live Rasmussen og Andreas Christensen. Alt på et brett? -om pensum på ipad og lesebrett

Skjema for spørsmål og svar angående: Skuddbeskyttende skjold Saksnr TED: 2014/S

The regulation requires that everyone at NTNU shall have fire drills and fire prevention courses.

EKSAMENSOPPGAVE I BI2034 Samfunnsøkologi EXAMINATION IN: BI Community ecology

0:7 0:2 0:1 0:3 0:5 0:2 0:1 0:4 0:5 P = 0:56 0:28 0:16 0:38 0:39 0:23

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

// Translation // KLART SVAR «Free-Range Employees»

FASMED. Tirsdag 21.april 2015

Stein Grimstad. Konsulent i Scienta AS. Prosjekt hos Skatteetaten. Forsker hos Simula (deltid) 3/7/18

"Somebody That I Used To Know" Gotye feat. Kimbra (2011)

Dagens tema: Eksempel Klisjéer (mønstre) Tommelfingerregler

Samarbeidsbasert forskning er det mulig også i arbeidet med systematiske kunnskapsoversikter?

case forts. Alternativ 1 Alternativer Sammensetning Objekt-interaktor med valg

TILLEGGSSPØRSMÅL BILLETT- OG ADMINISTRASJONSSYSTEM KINONOR AS COMPLEMENTARY QUESTIONS POINT OF SALE SOFTWARE PACKAGE KINONOR AS

Fagevalueringsrapport FYS Diffraksjonsmetoder og elektronmikroskopi

Besvar tre 3 av følgende fire 4 oppgaver.

Hvordan føre reiseregninger i Unit4 Business World Forfatter:

Hvordan etablere "objektive" standarder ved eksamen?» Rolf Vegar Olsen Institutt for lærerutdanning og skoleforskning

Årsplan ENGELSK 5.trinn. Setningsmønster It starts at It finishes at I want to be a when I grow up

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

OM KJØNN OG SAMFUNNSPLANLEGGING. Case: Bidrar nasjonal og lokal veiplanlegging til en strukturell diskriminering av kvinner?

Gir vi de resterende 2 oppgavene til én prosess vil alle sitte å vente på de to potensielt tidskrevende prosessene.

Eksamen ENG1002/1003 Engelsk fellesfag Elevar og privatistar/elever og privatister. Nynorsk/Bokmål

Planleggingsfasen.. Estimering av kostnader i IT-prosjekter. Overskridelser. Gjennomføringen. Stein Grimstad (Simula)

Jennifer Ann Foote September 7 th, 2010

Duke Energy Seminar September 3 5, 2008 Concord, NC

UNIVERSITY OF OSLO. Faculty of Mathematics and Natural Sciences

Transkript:

Jeg vet ikke hva et story point er, men det virker bra Magne Jørgensen Simula Research Laboratory

Innhold Hva ligger bak (og bør ligge bak) konseptet story point? Noen resultater fra studier på relativ estimering, story points, ideelle timer og timeverk Anbefalinger

Vet du hva et story point er? Dersom User Story A har dobbelt så mange story points som User Story B, så har User Story A: 1. Dobbelt så stor størrelse 2. Dobbelt så stor kombinert størrelse og kompleksitet 3. Dobbelt så stor kombinert størrelse, kompleksitet og risiko 4. Dobbelt så stor kombinert arbeidsmengde, størrelse, kompleksitet, risiko osv. 5. Dobbelt så stor arbeidsmengde (timeverk) 6. Dobbelt så lang varighet (kalendertid) 7. Ingen av alternativene ovenfor

Oppklaringer om story points Et knippe av Mike Cohn s forklaringer: pure measure of size ; units of relative size ; measurement of complexity and/or size of a requirement ; an amalgamation of the amount of effort involved in developing the feature, the complexity of developing it, the risk inherent in it, and so on. frank.vanpuffelen.net/2008/02/scrum-story-points-ideal-man-days-real.html What is a story point? The correct Scrum answer would be that it doesn't matter what unit it is. But of course there is a different unit behind the story points.. So a story point is a so-called "ideal man day".

Oppklaringer om story points www.renaissancesoftware.net/blog/archives/19 (James Grenning) When we give one story a four and another a two, we are saying the four is twice as difficult, will take twice the effort, as the two. Norsk IT-utvikler: Gitt konkrete eksempler forstår folk dette veldig fort. Men å forklare det akademisk strever jeg fortsatt med selv etter mange år. Er det helt opp til teamet å bestemm om story points er: Relativ størrelse, kompleksitet og/eller risiko Relativ arbeidsmengde Relativ varighet

Historien til Story Points Ron Jeffries: As far as I know, story points started at Chrysler, on the C3 project, the first Extreme Programming project. Kent Beck originally suggested that the team estimate stories in days. We observed that we could estimate "perfect days" pretty well, that is, how long a story would take if we didn't get distracted by all the other things going on. However, perfect days caused trouble in communication, because a "three day" story always took longer than three days, leading to questions from management and others. So we decided to use an abstract number instead, which we called a "point". We actually used one point = one perfect day ourselves, though of course they can be scaled any way one wants.

Dette ser for meg ut som: C3-prosjektet innser Historien til Story Points at dagsverk (arbeidsmengde) og dager (varighet) ikke er sammenfallende og at det er lettere å estimere ideell arbeidsmengde (effektiv arbeidstid) enn varighet. De innfører perfect days (som i sin opprinnelse ligner svært på effektiv arbeidstid). De ser imidlertid at skille mellom effektiv arbeidsmengde ( perfect day ) og varighet er vanskelig å kommunisere. Derfor fjerner de koblingen til arbeidsmengde ved at de kaller det points. Som senere har blitt til story points (norsk: Kravpoeng?). 1 : 1 - forholdet mellom perfect day og story point har etter hvert blitt oppløst. I etterkant har også ideell tid fjernet seg fra opprinnelig ideell tid (effektiv arbeidsmengde) ved at man har lagt til andre ideelle forutsetninger ( flyt, ingen problemer, ).

Mitt forsøk på klargjøring av Story Point Dersom nøyaktighetshensyn i estimeringen [f eks som respons til hvilke og hvor mange user stories rekker vi i neste release?] teller mest, bør %- vis forskjell i story points være identisk med %-vis forskjell i arbeidsmengde. To ganger som mange story points bør dermed tilsvare to ganger så stor arbeidsmengde. Story points bør da beskrives som et estimat av relativ arbeidsmengde (som tar størrelse, kompleksitet, risiko og and so on som inndata!). Velocity bør referere til arbeidsmengde (f eks story points per ukesverk), ikke varighet. Unntak for situasjoner med svært stabilt teaminnsats, der denne forskjellen ikke spiller noen rolle. Estimering relatert til varighet bør ha en tilleggsprosess der man justere for antall arbeidsdager, variasjon i tilgjengelige ressurser, etc..

Mitt forsøk på klargjøring av Story Point Klargjøringen gir en relativt uproblematisk forståelse innad i en release, men kan (som de andre klargjøringene ) kreve mer kompliserte betraktninger mellom releasene: Det viktige er å holde klart at målet med estimeringen er at arbeidsmengderelasjonene også skal gjelde mellom releaser (ellers bør man re-estimere). Det er også viktig å ikke la seg forvirre av at konverteringsfaktoren mellom story point og arbeidsmengde (noe forvirrende kalt velocity ) vil kunne variere mellom releaser. Dersom vi hadde kalt Story Points for Work Points hadde vi kanskje ikke hatt disse forståelsesproblemene. Story points gir lett en følelse av at det er størrelse man måler (ref. function points som er et størrelsesmål). Ikke veldig viktig hva vi kaller det, men viktig at vi er enige hva som er målet (estimeringsnøyaktighet) og hvordan vi oppnår det (samvariasjon med arbeidsmengde).

Noen myter om story points Story Points er unit less : Det at enhetene til story points ikke er vel-definert, universelle eller refererer til synbare eller fysiske enheter er ikke det samme som at det er enhetsløst. Story points har enheten story points. Vi bruker ofte samme navn både som navn på måling og enhet, for eksempel er timeverk ofte brukt både som målestørrelse og enhet. Story points gir en relativt og arbeidsmengde et absolutt estimat: Arbeidsmengde (f eks timeverk) og story points har de samme relative egenskapene (begge er på en ratio-skala). Forskjellen ligger i hvor universell og veldefinert enheten er. Arbeidsmengde-estimering gjøres typisk relativt, i likhet med story points. Det er i det hele tatt vanskelig å forestille seg hvordan man ikke skal estimere relativt. En fare med story points er at referanse-rommet ved relativ estimering reduseres i forhold til timeverk-estimering!!!! Dvs, at story-point basert estimering er en redusert variant av relativ estimering.

Noen myter om story points Systemutviklere er bedre i å estimere relativt enn absolutt: Estimering av IT-prosjekter som ikke er basert på sammenligninger (er relativ) neppe finnes. Dersom det menes at forholdet mellom estimerte story points og faktiske timeverk samvarierer bedre enn estimerte timeverk og faktiske timeverk, så mangler dokumentasjon. Dersom det menes at vi er bedre til å vurdere om A er større enn B, enn hvor mye større A er enn B, så er utsagnet irrelevant (og helt opplagt). Story point gjør at vi ikke trenger å estimere dagsverk/dager: Kalendere og klokker styrer fortsatt hverdagen. Eneste forskjellen er at vi utsetter konverteringen

Noen beskrivelser av ideelle timer/dager www.targetprocess.com/blog/2004/12/iteration-velocitys-and-user-story.html I can imagine and estimate how much work I could accomplish within a single ideal day. No interruption, no coffee breaks, great mood and so on. So I estimate User Stories in ideal days. www.extremeplanner.com/blog/2006/11/agile-estimating-how-long-is-ideal-day.html After doing some reading and thinking, I decided an ideal week was something like a "man-week", adjusting for daily distractions. agilesoftwaredevelopment.com/2006/12/measures-of-size Ideal days are the imaginable amount of time that would be spent on the project if there were no interruptions (including email checking), everybody was working full time at full speed without any vacations and everything needed was present from the day one. Lett å forstå, men det er vanskelig å være konsistent mhp hvor ideelt man skal tenke. Også her uklart I hvilken grad et relateres til arbeidsmengde (manweek) og varighet (distraction).

Sammenligning (noe subjektiv) Timeverk Ideelle timer Story points Klarhet i konseptet OK OK- Nei Effektiv å bruke OK OK OK+ Lett å forstå for kunde OK- Nei Nei Underveislæring OK- OK- OK+ Lett å re-estimere OK- OK- OK+ Nøyaktighet???

Eksperiment 1: Gruppe 1: Er vi bedre til å estimere relativt? 1. Opplæring/eksempler relativ estimering. 2. Rangering av antall innbyggere i fem store byer (Berlin, Warsawa, Napoli, London, og Praha) 3. Velg byen som er rangert som 3. størst og gi den 10 by-poeng. Gi de andre byene by-poeng relatert til antall innbyggere. 4. Anslå antall innbyggere for den byen du tror du kan gi det mest nøyaktige estimatet. Gruppe 2: 1. Direkte estimering av antall innbyggere.

Resultater Indikerer at: 1) Nøyaktigheten (MdRelErr = median relativ error) ble bedre med relativ estimering. 2) De relative forskjellene var bedre representert ved estimering med fysisk enhet!!! (Sum diff viser gjennomsnittlig sum av prosentvis differanse mellom estimert og faktisk verdi per estimerer)

Eksperiment 2: Er vi bedre til å estimere relativt? Som eksperiment 1, men med estimering av vekten på fem dyr (løve, isbjørn, jaguar, hyene, tiger)

Resultater Indikerer at: 1) Nøyaktigheten ble her dårligere med relativ estimering, 2) De relative forskjellene fortsatt bedre representert ved estimering med fysisk enhet!!! Det er mao så langt liten grunn til å si at vi er bedre til å estimere relativt. Men hva med IT-prosjekter?

Studie: Timeverk (ML) vs Ideelle timer vs Story Points Tre releaser (R1, R2 og R3), ca. like vanskelige. Beskrevet som user stories. Det tok ca. 800 timeverk å utvikle hele systemet. Tre grupper G1, G2, G3: Dag 1: Alle estimerte R1. G1 vha ML, G2 vha Ideelle timer og G3 vha Story Points Dag 2: Alle estimerte R2. G1 vha Ideelle timer, G2 vha Story Points og G3 vha ML Dag 3: Alle estimerte R3. G1 vha Story Points, G2 vha ML og G3 vha Ideelle timer Alle som estimerte vha Ideelle timer ble etterpå bedt om å estimere ML. Alle som estimerte vha Story Points ble bedt om å estimere referanseoppgaven i timeverk. Ideelle timer: Assume that you are able to work without interruptions, that there are no unexpected events and you are fully productive all the time. NB: Studiet sier dessverre ikke så mye om effekten av story point ved bruk av historisk velocity-data. Sier mest om hvilken effekt denne typen relativ estimering har på diskriminering mellom user stories. [Blir User Stories likere ved bruk av story ponts?]

Resultater Indikerer at: - Estimatene ble høyere med Story Points! (oversatt til timeverk vha at de estimerte referanse-user story også i timeverk. - Idelle timer ML fører typisk til 25-30% økning målt mot ML direkte. - Minst diskriminering mellom User Stories (målt som mean/std) med Story Points!

Masteroppgave (Ivar Fredriksen) Studie av iterasjoner i et norsk IT-firma. De som gjorde jobben ( interns under opplæring) estimerte eget teams arbeid. Eksperter som estimerte arbeidet til internes Noen sprints ble estimert i ideelle timer andre i story points Funn: Story points mer konsistent enn ideelle timer ( konsistens = bedre korrelasjon med faktisk arbeidsmengde) Story points ville trolig gi mer realistiske estimater av arbeidsmengde enn ideelle timer (MEN, analysen er basert på antagelser som var vanskelig å verifisere)

Hva med ideelle timer, så mest realistisk Studier fra andre domener finner at: Prediksjoner under ideelle og realistiske betingelser er svært like Ved å først estimere under ideelle betingelser, blir man mer oppmerksom på forskjelle på ideelle og realistiske betingelser når man skal estimere realistisk. Se for eksempel: Tanner, R. J. and Carlson, K. A. (2009). "Unrealistically Optimistic Consumers: A Selective Hypothesis Testing Account for Optimism in Predictions of Future Behavior." Journal of Consumer Research 35(5): 810-822. Egne studier: JavaZone-eksperiment: Fant en stor effekt. De med ideelle timer først startet på nivå med mest sannsynlig-estimatene, og justerte seg ca. 30% opp. Polen-eksperiment: Fant en stor effekt (30% økning, mye nærmere faktisk tidsforbruk) To andre norske firma: Fant også ca. 30% økning ved å starte med ideelle timer. Gjennomsnittlig overskridelse i IT-prosjekter er på ca. 30%. Kan det være en sammenheng med at vi estimerer ideelt når vi tror vi er realistiske?

Noen anbefalinger Innfør en presisering av hva story points betyr, og baser denne på relative forskjeller i arbeidsmengde Jeg ser ingen god grunn til å beskrive story points som et mål av det som er input (størrelse, kompleksitet, risiko,..) til målestørrelsen. Det er som å beskrive hastighet som et mål på vei og tid, fordi de inngår som input. Det er viktig å ikke blande arbeidsmengde og varighet. Dersom man velger en forståelse av story point som går på varighet, må man i det minste være tro mot denne oppfattelsen, blant annet ved å justere velocity for ulik innsatsmengde. Story points har trolig en stor fordel av lettere bruk av historiske data og raskere estimering. Dette kan i seg selv være god nok grunn til å bruke den, f eks for å se hvor mye man rekker i de neste releasene. Re-estimer så snart antagelsene story point estimatene bygger på ikke gjelder, f eks dersom arbeidsmengden til en gruppe user stories oppdages å være mye større i forhold til andre user stories enn først antatt. Et godt alternativ er å først be om ideelt antall timeverk, så om mest sannsynlig arbeidsmengde.