Estimering av kostnader i softwareutvikling. Hans Christian Benestad PhD, Expertware AS

Like dokumenter
Making IT your winning asset.

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

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

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

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

Forskning på gruppe-estimeringestimering

ESTIMERING I SMIDIGE PROSJEKTER

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

Hvordan få tak i reell usikkerhet av kost-nytte i en skjev verden? Magne Jørgensen

Figur 1: Estimat per gruppe

Fra idé til marked Hvorfor elektronikk handler om mer enn kretskort

Den gode kunde. Kompetanse, involvering og kultur. Magne Jørgensen Simula Research Laboratory

Inception Elaboration Construction Transition Bemanning 1 1,5 2 2 Varighet i uker Antall iterasjoner (lengde i uker i parentes) Tabell 1

Hvordan få tak i reell usikkerhet av kostnad og nytte - i en skjev verden?

Scrum. -nøkkelbegreper og noen personlige erfaringer

Usikkerhet i omfang og kostnader hvordan håndtere dette i kontrakten? IT-kontraktsdagen 2015 Kjetil Strand, Promis AS

Hvordan kundens anbudsprosess får deg til å estimere overoptimistisk og hva du kan gjøre med det

Prosjektledelse - fra innsiden

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

SALG. Hvorfor skal vi selge? For å sikre at. Hva er salg? Salg er å få. På samme måte

Modellering IT konferanse

Hvorfor (ikke) fastpris?!! Vinnerens forbannelse,! informasjonsasymmetri,! utvalgsrisiko,! opportunistisk adferd,! og! IT-kontrakter!!

Estimering. INF1050: Gjennomgang, uke 09

CONNECTING BUSINESS & TECHNOLOGY KURS OG SERTIFISERINGER - SCRUM

TRAFIKANTERS VURDERING AV FART OG AVSTAND. Sammenfatning av litteraturstudium

Making IT your winning asset.

Estimering av kostnader i ITprosjekter

SCRUM Smidig prosjektledelse og utvikling. 10 september 2009 JOSÉ MANUEL REDONDO LOPERA AVDELINGSLEDER PROSJEKT OG RESSURSANSVARLIG

Prosjektledelse - fra innsiden av et utviklingsprosjekt. Presentasjon hos UiO Ida Lau Borch, prosjektleder i Bouvet ASA

Kravhåndtering. INF1050: Gjennomgang, uke 03

Et IT-prosjekt = et prosjekt uten styring, er det virkelig slik det er?

Estimering av IT-prosjekter: Hva vet vi? Hvordan bli bedre?

Estimering av IT-prosjekter:

Prinsipper for Estimering av Utviklingskostnader i IT-prosjekter

Smidig metodikk, erfaringer fra NAV Fagportal

Følgende «tommelfinger-regler» bør (må) følges:

Estimering av kostnader i IT-prosjekter. Nils Christian Haugen Wasteless AS

VURDERING I INDUSTRIMONTØRFAGET Til vurdering Bestått meget Bestått Ikke bestått

Fra virksomhetsmål til prioritert produktkø

Lånekassen. gjør utdanning mulig!

11 Planlegging og dokumentasjon

Verdimatrisen verktøy for nyttestyring i og på tvers av tiltak HIT frokostseminar Kjetil Strand, Promis AS

Kap 11 Planlegging og dokumentasjon s 310

VURDERING I INDUSTRIRØRLEGGERFAGET Til vurdering Bestått meget Bestått Ikke bestått

Anbud Tips til lokale innkjøpere

Kapittel 9. Kvalitet i prosjekt. Kapittel 10. Tidsplanlegging Organisering. Kapittel 11. Usikkerhet og risiko

Vedlegg 6. Incitamentsordning. Vedlegg 6. Incitamentsordning Bussanbud Stor-Trondheim

User Story Mapping gir en nyttigere backlog

Hvordan lage gode offentlige nettsider?

Eli Toftøy-Andersen og Jon Gunnar. brukertesting

Nyttige samtaleverktøy i møte med studenten

Together. Free your energies Moden og modig! Ansvarsfull og fleksibel!

1dørs spiskammer MONTERINGSANVISNING

Kunden er en av Norges ledende leverandører av digital-tv og bredbåndstjenester.

Statusrapport. MUSIT Ny IT-arkitektur Pilot. NØKKELINFORMASJON Rapporteringstidspunkt 12. august 2016 Rapporteringsperiode Juli 2016

Erfaringer med PS2000 kontrakt og kontraktsstyring i PERFORM. Mette Gjertsen Prosjektleder Statens Pensjonskasse

Estimering av IT-utvikling

Gruppe 1 Gruppe 2 Gruppe a) Finn aritmetisk gjennomsnitt, median, modus og standardavvik for gruppe 2.

Skjema for vurdering av skriftlig pasientinformasjon

Inferens. STK Repetisjon av relevant stoff fra STK1100. Eksempler. Punktestimering - "Fornuftig verdi"

Rapport fra e-handelsanalyse [organisasjonsnavn]

Forelesning 7: Store talls lov, sentralgrenseteoremet. Jo Thori Lind

Høgskolen i Sør-Trøndelag Avdeling Trondheim Økonomisk Høgskole EKSAMENSOPPGAVE

Eksamen 2013 Løsningsforslag

Innhold. Login. Påvirkningskraft som kvalitetskriterium Forskjeller mellom evalueringsmetoder? En til? Kanskje litt vanskeligere denne

GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG

Estimering av IT-prosjekter: Hvorfor bommer vi og hvordan kan vi

HVORDAN KOMME LANGT VED Å DELE UT RIKTIGE KORT

Hvordan PS2000 blir tilpasset til smidig gjennomføring

Hva, Hvorfor og litt om Hvordan

MODUL A Prosjektledelse Oversikt og Innsikt Dag 3 BETTER PROJECTS THE KNOWLEDGE TO GET YOU THERE

Presentasjon av veileder for tidligfase BA2015-konferanse

Bedømmelse av usikkerhet

Neste generasjon ERP-prosjekter

HVORDAN SKAPE STØRRE VERDIER GJENNOM MERKEVAREBYGGING I SJØMATNÆRINGA? Professor Magne Supphellen

Iden%fisere behov og etablere krav. INF 1500; introduksjon %l design, bruk og interaksjon 13 september 2010

Hva prosektledere bør vite om programmerere Presentasjon NUUG

Forelesning 6: Punktestimering, usikkerhet i estimering. Jo Thori Lind

Seminar om oppgaveskriving og gode besvarelser 2012

Estimater, usikkerhet, kommunikasjon

Suksessfaktorer for styring av prosjekt

BA 2015 tilgjengeliggjør benchmarkingsprogram fra Construction Industry Institute

L12-Dataanalyse. Introduksjon. Nelson Aalen plott. Page 76 of Introduksjon til dataanalyse. Levetider og sensurerte tider

Erfaringer fra bruk av Scrum i PS2000-prosjekter NSP temadag Agile metoder i prosjekt Motivasjon av kunder og Nyttige verktøy

Prosjektrettet systemarbeid

Fra urolig sjø til stille havn Forhandlingskurs

Lov og forskrift om offentlige anskaffelser

ST0202 Statistikk for samfunnsvitere

Prosjektestimering i norsk software-industri. Kjetil Moløkken-Østvold

Hvordan unngå skuffelser i ITprosjekter

Kontrakter og test i smidige prosjekter. Fagmøte Dataforeningen i Trondheim 12.Mars 2012

INF1040 Oppgavesett 4: CSS

SJEKKLISTE FOR VURDERING AV EN FAGLIG RETNINGSLINJE

PÅ VEI MOT SMIDIGE KONTRAKTER. Ståle L Hagen IT-kontraktsdagen september

1. Hvilke type krav angår sikkerhet og pålitelighet?

Markedsplan. En lærebok om hvordan du skriver en markedsplan som er utledet av virksomhetens forretningsplan. Utgitt av: Kunnskapssenteret.

1. Hvilke type krav angår sikkerhet og pålitelighet?

Oppgaver uke 42. Systemutvikling

FINN kundesenter. Hvordan FINN.no utnytter kundeinnsikt til produktutvikling. Anne Sandvin

Transkript:

Estimering av kostnader i softwareutvikling Hans Christian Benestad PhD, Expertware AS 1

Lesson 1: Planlegging er nødvendig 2

men ikke tilstrekkelig 3

Lesson 2: Vit hvorfor du estimerer 4

Estimering i SW livssyklus: Skreddersøm Før investeringsbeslutning: Anskaffelsens kost/nytte Basisestimat, kostnadsramme etc. Driftsfase: Vedlikeholdskostnader Analyse av alternativer Tilbuds- og kontraktsfase: Leverandørers pristilbud Forventet fortjeneste Før prosjektoppstart: Fremdriftsplan og bemanning Ressursforbruk/leveransetidspunkt Konstruksjonsfase: Planlegging av delleveranser Oppdatert fremdriftsplan Illustrasjon med tillatelse fra adg.no 5

Estimering i SW livssyklus: Start-ups og produktselskaper Introfasen langsom vekst, liten fortjeneste: Finansieringsbehov Kost/nytte mht. nyhetsgrad Tilbaketrekning: Lite nysalg, stabil fortjeneste Kost/nytte mht. renomme Analyse av alternativer Vekstfasen: Voksende salg og fortjeneste Kost/nytte mht. kundetilfredshet Modning/metningsfasen: Lavere salg, stabil fortjeneste Kost/nytte mht. kundelojalitet Illustrasjon med tillatelse fra adg.no 6

Lesson 3: Estimerere og andre IT-folk har menneskelige egenskaper (!) 7

Noen psykologiske effekter Overoptimisme Overkonfident (eplekjekk) i anslag av usikkerhet Vanskelig for å lære av tidligere estimeringsfeil Påvirket av forventninger Inkonsistens Påvirket av relevant og irrelevant informasjon 8

Effekten av irrelevant informasjon og «cues» Gruppe A: Fikk den originale spesifikasjonen, en side lang Gruppe B: Fikk identisk tekst, syv sider lang. Dobbel linjeavstand, vide marger, større fonter størrelse og mer avstand mellom avsnittene Gjennomsnitt estimat 117 timer 170 timer 9

Ankereffekt Gruppe A: Kravspek med tidlig antydning 1000 timer Gruppe B: Identisk kravspek med antydning 50 timerl Gjennomsnitt estimat 555 timer 99 timer NB: Ingen av utviklerne opplevde at de hadde blitt mye påvirket. De fleste mente at de ikke var påvirket i det hele tatt av kundens forventninger. 10

Timeslot-effekt Gruppe A: Hvor lang tid vil det ta å utvikle alle krav for system X? Gruppe A: Hvor mange av kravene for system X får du implementert i første iterasjon,30 timer)? Hvor lang tid tar det å utvikle resten av kravene? Gjennomsnitt estimat 200 timer 120 timer 11

Inkonsistens Syv utviklere estimerte de samme oppgavene i to runder med 3 måneders mellomrom 6 oppgaver 3 måneder Samme 6 oppgaver Gjennomsnittlig 71% forskjell fra første til andre runde Typisk: 29 timer -> 50 timer Inkonsistensen er 14% ved kombinasjon av enkeltestimatene Typisk 29 timer -> 33 timer 12

Lesson 4: Forstå hva et estimat er 13

Faktisk tidsforbruk for en gitt type oppgave varierer 20stk 10stk 5stk 25h 80h 200h 300h B2B-tjeneste: Integrer en ny business-partner, 100 ganger Partner# 1 80h 2 90h 3 25h 4 80h Faktisk forbruk 99 200h 100 90h Tidsforbruk kan ofte tilnærmes med en parametrisk fordeling, f.eks. gamma-fordeling 14

Hva er et «korrekt» estimat for fremtidige oppgaver? «Most likely» = 80 Median = p50 = 107h P10 = «best case» = 45h P90= «worst case» = 213h P70 = «bid?» = 145h 15

Lesson 5: Bruk historiske data i størst mulig grad I foregående eksempler kan realistiske estimater og usikkerhet leses rett ut av historiske data Men det skal mye til å samle inn slike data 16

Eksempel på anbefalt teknikk For Utviklingsfasen Iterativ utvikling Outsourcet utvikling 17

Prinsipper for poengestimering Estimer oppgaver i poeng, en relativ størrelse Mål antall poeng prosjektet løser i én iterasjon (fart) Alloker oppgaver for neste iterasjon i henhold til poengsum og fart Smidig «Planning poker» og «planning game» er basert på disse enkle prinsipper 18

Generell prosess for poengestimering Samle historikk Referanse 5 poeng Fart=20 poeng/itersjon Estimer A 2 p B 15 poeng C 5 poeng D 5 poeng E 2 p Lag alternative planer A, B, E B, D Gjennomfør iterasjon Oppdater historiikk A, B Fart=17 poeng/iterasjon 19

Fordeler og ulemper Tid for heft og uforutsette hendelser bakes inn i «fart» Slipper å estimere timer direkte Mindre press, passer bra som gruppeteknikk Enkel datainnsamling Ikke trivielt å enes om hva et poeng er Ikke direkte støtte for usikkerhetsvurdering Ikke en generell estimeringsteknikk 20

21

Low-tech løsning i MS Word Bruk mal og samme instruksjon hver gang Vis referanseoppgaver eksplisitt Be om at like store oppgaver blir gruppert sammen Send og motta elektronisk, kanskje anonymt 22

Lag iterasjonsplan Planlegg et par-tre sprinter framover Basert på poeng og kapasitet for en iterasjon (fart) Kombiner enkeltestimater Ta hensyn til spredning som indikator på usikkerhet 23

Low-tech alternativ:excel 24

Hvordan vi har benyttet forskningsresultater i EstimationWeb Inkonsistens Innhenting og kombinering av gruppeestimater Forventningspress Anonymisering Uklarhet i hva som estimeres Overkonfidens Overoptimisme for store oppgaver Format, anker, priming Standardiserte spørsmål og definisjoner, sjekkliste Justerbar tolkning av trepunktsestimater fra historiske data Spesielle input-metoder kan motvirke denne effekten, ideelle timer etc. Sjekklister, diskretisering av krav 25

En abonnementsbasert web-tjeneste 26

Oppsummering Tenk nøye gjennom hvordan estimatene skal brukes Lag en konsistent, repeterbar ramme rundt estimeringen, gjerne med verktøy Samle og benytt historiske data Unngå press mot individer Involver flere i estimeringen Så lett men allikevel så vanskelig Spørsmål og kommentarer? 27