Methodisch Begroten van Projecten Harold van Heeringen Amersfoort, 11 mei 2010
Harold van Heeringen Consultant Software Metrics Afdeling Sizing, Estimating & Control Sogeti Nederland B.V. harold.van.heeringen@sogeti.nl Twitter: @haroldveendam Nesma -Voorzitter wg COSMIC -Wg Benchmarking -Wg Begroten COSMIC -Benchmarking initiative ISBSG -Executive advisor DACE/ISPA -SIG Parametrische Analyse Computable -Expert panel ICT branche Even voorstellen
Wat wil ik jullie laten zien? Methodisch begroten van Projecten is een cruciale factor voor het succesvol realiseren van projecten.
Outline De IT industrie heeft een enorm probleem met het begroten van projecten. Waarom? Wat kunnen we doen om realistisch te begroten? Enkele tips
Waarom heeft de IT industrie een begrotingsprobleem?
Veel projecten falen Standish Chaos report (2009) [1] 32% van de projecten is succesvol Op tijd Binnen budget Bevat alle benodigde functionaliteit 44% van de projecten is niet succesvol 24% is voortijdig gestopt of is opgeleverd maar nooit gebruikt Een duidelijke afname van het succes percentage (35%) ten opzichte van de vorige studie (2007).
Maar waarom?? Instabiele user requirements Te vroeg starten met realisatie Gebruikers te weinig/ te laat betrokken Onrealistische begroting en planning Expertbegrotingen niet gebaseerd op ervaringscijfers Gewenste doorlooptijd ipv. Realistische doorlooptijd Onrealistische verwachtingen!!
Hoe worden projecten begroot? Vrijwel altijd: expertbegroting Kennis/ervaring experts Hulpmiddelen (vaak excel) bottom-up: uren per activiteit Resultaat: gemiddeld 30% te optimistisch Moeilijk te onderbouwen, Uren optimistisch ingeschat Experts gaan niet zelf al het werk doen Vergeten activiteiten
Te optimistisch schatten [3] Bv: taak Codeer en Unittest Programma X realistische begroting 100% Waarschijnlijkheid expertbegroting 90%................ 24 uur 75%................ 22 uur 50%................ 20 uur 10%................ 18 uur 0%................ 16 uur........ 14 uur........ 12 uur........ 10 uur........ 8 uur........ 6 uur........ 4 uur........ 2 uur 0% Inspanning Expert Schatting: 1 e mogelijkheid 50/50 mediaan resultaat
Gevaar van expertbegrotingen Industrie leunt zwaar op experts Matige onderbouwing Niet gebaseerd op kwantitatieve data Vergeten activiteiten Ongefundeerd optimisme Geen mogelijkheid om ervaringscijfers op te bouwen Gemiddeld 30% te optimistisch
Onderschatten of overschatten [3] >100% Extra Kosten Non- Lineaire extra kosten -Planningsfouten -Vergroten team veel duurder maar nauwelijks sneller -Extra management attentie / overhead -Stress: Meer defects, lagere onderhoudbaarheid!! Lineaire extra kosten Extra uren worden besteed Onderschatten Overschatten 0% Te lage schattingen Realistische schattingen Te hoge schattingen
Effect in de praktijk Begroting A: Optimistisch 3.000 uur 5 maanden B: Realistisch 5.000 uur 7 maanden Resultaat Faalt! 10.000 uur 12 maanden Slaagt! Efficiënt! 5.000 uur 7 maanden Realisatie (uur) 15.000 10.000 7.000 5.000 C: Pessimistisch 7.000 uur 11 maanden Slaagt! Inefficiënt! 7.000 uur 11 maanden 3.000 uur 5.000 uur 7.000 uur A B Realisatie is zeer sterk afhankelijk van de begroting!!! C
Voordelen van realistische begrotingen Projectstatus beter controleerbaar Realistisch plan actuals Minder stress hogere kwaliteit Oorzaak 40% software defects is stress Extreme druk leidt tot 4x zoveel defects Onderhoudbaarheid van de code!! Verhoogde geloofwaardigheid
Druk van de klant! De IT heeft een probleem! Klant: Het moet goedkoper Klant: Het moet sneller Klant: Weet exacte requirements (nog) niet Klant: Wil een vaste prijs aanbieding (te) vroeg in de project levenscyclus Klant pusht richting optimisme ipv realisme!
De IT heeft een probleem! IT begroot (te) optimistisch! IT - Weet niet precies hoe groot het is Onvolwassen begrotingsmethodieken IT - kent haar eigen performance niet Kan begroting niet goed onderbouwen Weet niet goed wat realistisch is Leert slecht van verleden IT gaat relatief eenvoudig mee met optimisme
Wat kunnen we doen om realistisch te begroten?
Realistisch begroten Optimisme leidt tot falende projecten Maar hoe kunnen we een realistische begroting maken? Naast expertbegroting ook een methodische begroting!!
Methodische Begroting Meten van Functionele Omvang Omvang in Functiepunten Gebruik ervaringscijfers Productiviteit: Uren per functiepunt Gebruik Tools Scenario-analyse (doorlooptijd, teamsize, etc.)
Analogie begroten van verven muur Meten omvang met ISO maat (centimeters) en instrument (meetlat) oppervlakte in m 2 Ervaringscijfers (benchmark data??) Roller: 15 m 2 per uur Blokwitter: 8 m 2 per uur Kwast: 4 m 2 per uur Scenario analyse 1 of 2 schilders? Moet in 1 dag af! Voorbewerken? Onregelmatig oppervlak? ETC!
Meten van functionele omvang Functiepunt analyse (FPA) of COSMIC Omvang is samen met productiviteit de belangrijkste factor die de benodigde inspanning bepaald Objectieve, herhaalbare, verifieerbare methodes (beiden ISO normen) Kwantificeren de door de gebruiker gewenste functionaliteit in een eenheid (functiepunt (FP) of COSMIC functiepunt (CFP)) Ook toepasbaar vroeg in PLC!
Functiepuntanalyse Gebruikers Transacties Gegevensverzamelingen IF ILGV UF KGV OF
COSMIC Gebruikers Transacties Gegevens E W X R
Cone of uncertainty Variability (%) 200 Feasibility study 150 100 Requirements specification De kegel wordt niet vanzelf nauwer. Men neemt beslissingen om hem nauwer te maken. Het later wijzigen van deze beslissingen leidt ertoe dat de kegel weer wijder wordt. Software development Project closure 50 Slecht begroot of slecht beheerst project 0-50 Time
Meten van functionele omvang Functiepunt analyse (FPA) of COSMIC Objectief, herhaalbaar, verifieerbaar Technologie onafhankelijk Eenheid product maakt verzamelen ervaringscijfers mogelijk Productiviteit: uur per functiepunt Kwaliteit: defects per functiepunt Benchmarking!!
Ervaringscijfers Eigen ervaringscijfers Per omgeving (Java, Oracle,.Net, etc.) Per ontwikkelfase (ontwerp, bouw, test) Per locatie (onshore, offshore) Benchmarkcijfers Databases van de tools ISBSG repository (R11-5.200 projecten) [4]
Voorbeeld QSM Datamanager [6]
ISBSG Primary Programming Language = Cobol ISBSG R11 MEASUREMENT VALUES in INTERVAL 435 AVERAGE (P50) 25,3 PERCENTILE10% (P10) 4,1 PERCENTILE 25% (P25) 7,6 MEDIAN 15,7 PERCENTILE 75% (P75) 28,1 PERCENTILE 90% (P90) 51,6 www.isbsg.org
Omvang Generiek begrotingsmodel Behoefte Inspanning Energie Productiviteit Software ontwikkel proces Factor: Productiviteit Tijd Samenstelling en Doorlooptijd ervaring team Factor: OmvangOntwikkelomgeving Afval Functiepunten Complexiteit Kwaliteitssysteem Externe beinvloedingsfactoren Fouten Factor: Inspanning Aantal uur Instroomsnelheid Piekbezetting Omvang Software Fouten Factor: Kwaliteit Factor: Aantal Omvang fouten Factor: Lines Doorlooptijd of Code Aantal weken
Doorlooptijd is extreem belangrijk [4] Constante Inspanning (uur) = Doorlooptijd 4 Inspanning Onmogelijk Voorbeeld: Kiezen voor een doorlooptijd van 8 maanden in plaats van 7 maanden (14 % langere doorlooptijd) resulteert in een afname van het aantal benodigde uren met 40 %!! (bij dezelfde productiviteit en omvang) Plan A: 7.500 uur, 7 maanden Plan B: 4.400 uur, 8 maanden Onpraktisch Doorlooptijd
Voorbeeld Scenario 1: 2: 3: 4: 5: 6: 7: Doorlooptijd: 5,5 5,2 4,8 4,5 5,8 6,1 6,3 maanden Inspanning: 5.000 5.500 5.900 6.300 5.200 4.900 4.700 uur Teamsize: 6,7 7,5 8,3 9,4 6,2 5,8 5,5 fte Kosten: 430.000 480.000 530.000 620.000 400.000 380.000 360.000 Estimate / Business Case Kosten afhankelijk van Time-to-market
Tools: Galorath SEER [7] Galorath - SEER for Software [6]
Tools: QSM SLIM [6] QSM SLIM toolsuite [5]
QSM SLIM Estimate [6]
Historische data [6]
Tuning van de PI
FO B&T 2 Avg Staff (people) <Single Goal - Life Duration 9,9> 3 4 5 6 10 8 6 Milestones 2 - FOG 3 - TOG 4 - BG 5 - STG 6 - UAG Avg Staff (people) 4 2 okt '09 1 2 3 4 5 6 7 8 9 10 11 nov dec jan feb mrt apr mei jun jul aug sep '10 0
WBS [6]
Vergelijken met history Compare Estimates to Historical Data B&T Duration (Months) vs Effective FP 100 10 B&T Duration (Months) 1 10 100 1.000 10.000 Effective FP B&T Effort (MHR) vs Effective FP 1.000 100 10 1 B&T Effort (MHR) (thousands) 0,1 10 100 1.000 10.000 Effective FP Current Solution Logged Solutions Historical Projects QSM 2008 Business FP Avg. Line Style 1 Sigma Line Style Project: Klant X - Project Y
Defects Total Defect Estimate 2 Defect Rate Total <Single Goal - Life Duration 9,9> 3 4 5 6 120 2 Defects Remaining Total <Single Goal - Life Duration 9,9> 3 4 5 6 500 100 400 80 60 40 Defect Rate Total 300 200 Defects Remaining Total 20 100 3 4 5 6 7 8 9 10 11 jan '10 feb mrt apr mei jun jul aug sep 0 3 4 5 6 7 8 9 10 11 jan '10 feb mrt apr mei jun jul aug sep 0 2 MTTD Total (Days) <Single Goal - Life Duration 9,9> 3 4 5 6 1,0 2 Cum Defects Total <Single Goal - Life Duration 9,9> 3 4 5 6 500 0,8 400 0,6 0,4 MTTD Total (Days) 300 200 Cum Defects Total 0,2 100 3 4 5 6 7 8 9 10 11 jan '10 feb mrt apr mei jun jul aug sep 0,0 3 4 5 6 7 8 9 10 11 jan '10 feb mrt apr mei jun jul aug sep 0 Project: Klant X - Project Y
Wat levert methodisch begroten op? Voor de organisatie >Inzicht in de performance over projecten heen >Mogelijkheden tot interne en externe benchmarking >Verhoogde grip: voorspelbaarheid en transparantie > Onderbouwing initiatieven voor procesverbetering > Afspraken met leveranciers m. b. t. kostenreductie Welke organisatie wil dit niet?
Wat levert methodisch begroten op? Voor het project, de projectleider >Beter onderbouwde en verdedigbare begroting >Aanvullende zekerheid naast de expertbegroting >Uitspraak over de kwaliteit van de documentatie Welke Projectleider wil dit niet?? Maar hoe richt u zoiets in??
Hoe kunt u uw organisatie hierop inrichten?
Estimating & Performance Measurement Proces Per kwartaal Finetunen begrotingstools: Analyseer metrics, Raporteer trends Tool: QSM Metrics / SEER SEM Resultaat: Management rapportage en Bijgewerkte begrotingstools act Rapporteer plan Begroot Verzoek tot begroting Omvangsmeting: COSMIC/FPA/andere methode Begrotingstools: QSM SLIM Estimate/ SEER SEM/ ISBSG / Eigen tool Resultaat: Methodische Begroting (naast expertbegroting!) Project afgelopen Data collectie: Administreer projectresultaat Omvang: geleverde omvang Tool: QSM Datamanager / SEER SEM / Eigen database Evalueer check Administreer do Project uitvoering Project administratie -Standaard WBS -Zuiver boeken van uren -Registreren issues Tracking tools -QSM SLIM Control -SEER SEM Resultaat: Database met project ervaringscijfers Gecontroleerde uitvoering
Estimating Wizard (voorbeeld) Input Functional design parameters Functional Design Yes Overlap Yes, calculated 0 Language Availability key users Location Build and test parameters Development tool English Low On site Java Onshore Offshore Construction 0% 100% Translation FD required No System test approach System test strategy Complexity B&T General parameters Size 100% India TMap Heavy High 1.200 FP Start date 01-01-09 Risk surcharge (%) 10 % Warranty (%) 4 % Organization type Government Quality documentation 4 m14v20090724
Resultaten Estimating Wizard Result in hours, euros and Function Points. Number of Function Points: 1.200 Functional design phase Duration in weeks 27 Design complete 9-07-09 Total effort 3.178 Effort per FP 2,65 Totaal cost 356.578 Cost per FP 297 Note: Data randomly altered Build and test phase Duration in weeks 25 27 29 31 33 35 37 Start phase 7-05-09 7-05-09 7-05-09 7-05-09 7-05-09 7-05-09 7-05-09 Total effort 12.984 11.760 10.776 10.080 9.600 9.240 8.952 Effort per FP 10,82 9,80 8,98 8,4 8 7,7 7,46 Totaal cost 536.832 486.204 445.704 417.012 396.888 382.164 370.020 Cost per FP 447 405 371 348 331 318 308 Total Duration in weeks 43 45 47 49 51 53 55 Delivery for acceptance 29-10-09 12-11-09 26-11-09 10-12-09 24-12-09 7-01-10 21-01-10 Total effort 16.162 14.938 13.954 13.258 12.778 12.418 12.130 Effort per FP 13,47 12,45 11,63 11,05 10,65 10,35 10,11 Totaal cost 893.410 842.782 802.282 773.590 753.466 738.742 726.598 Cost per FP 745 702 669 645 628 616 605 Select an option ONWAAR ONWAAR ONWAAR WAAR ONWAAR ONWAAR ONWAAR Estimate / Business Case Kosten afhankelijk van Time-to-market
WBS Standard WBS Every task specified Per task : number of hours (experience) Function level + hourly rate per task Costs per task per function point Management Phase Construction (Onshore) # hrs # Hrs/FP FL Rate /hr Cost Cost /FP Project management Construction Contract management 88 0,82 10.2 250,00 22.000,00 72,00 Project management 352 0,41 8.2 200,00 70.400,00 224,00 Quality management 90 0,32 7.4 SC 230,00 20.700,00 134,00 Project preparation Construction Preparation workplace/infrastr/developenviron 12 0,8 6.2 200,00 2.400,00 12,00 Preparation application framework 112 0,4 6.2 220,00 24.640,00 42,00 Start up/reading 33 0,7 6.2 150,00 4.950,00 17,00 Kick off 8 0,1 6.2 140,00 1.120,00 12,00 Data randomly altered
Total project Total project # hrs # Hrs/FP FL Rate /hr Cost Cost /FP Total Total onshore 351 1,76 39.120,00 745,05 Total offshore 6566 9,36 99.236,00 - Total 6917 11,10 138.356,00 455,32 Cost # hrs # Hrs/FP FL Rate /hr Cost Cost /FP Workplace cost onshore 351 12,50 4.387,50 6,56 Workplace cost offshore 6566 3,00 19.698,00 3,56 travel cost 10.465,00 28,54 Translation cost 2.145,00 2,45 Licence cost 8.998,00 22,56 Harware/infrastructure cost - Risk surcharge cost (0%) - - Total cost 45.693,50 63,67 Overal total 6917 11,10 184.049,50 518,99 Data randomly altered
Vergelijk Begrotingen Methodische Begroting Expert Begroting - Technisch Ontwerper Management Phase Construction (Onshore) # hrs # Hrs/FP FL Rate /hr Cost Cost /FP Project management Construction Contract management 88 0,82 10.2 250,00 22.000,00 72,00 Project management 352 0,41 8.2 200,00 70.400,00 224,00 Quality management 90 0,32 7.4 SC 230,00 20.700,00 134,00 Project preparation Construction Preparation workplace/infrastr/developenviron 12 0,8 6.2 200,00 2.400,00 12,00 Preparation application framework 112 0,4 6.2 220,00 24.640,00 42,00 Start up/reading 33 0,7 6.2 150,00 4.950,00 17,00 Kick off 8 0,1 6.2 140,00 1.120,00 12,00 Management Phase Construction (Onshore) # hrs # Hrs/FP FL Rate /hr Cost Cost /FP Project management Construction Contract management 88 0,82 10.2 250,00 22.000,00 72,00 Project management 352 0,41 8.2 200,00 70.400,00 224,00 Quality management 90 0,32 7.4 SC 230,00 20.700,00 134,00 Project preparation Construction Preparation workplace/infrastr/developenviron 12 0,8 6.2 200,00 2.400,00 12,00 Preparation application framework 112 0,4 6.2 220,00 24.640,00 42,00 Start up/reading 33 0,7 6.2 150,00 4.950,00 17,00 Kick off 8 0,1 6.2 140,00 1.120,00 12,00 Ontwikkelaar Project Manager Management Phase Construction (Onshore) # hrs # Hrs/FP FL Rate /hr Cost Cost /FP Project management Construction Contract management 88 0,82 10.2 250,00 22.000,00 72,00 Project management 352 0,41 8.2 200,00 70.400,00 224,00 Quality management 90 0,32 7.4 SC 230,00 20.700,00 134,00 Project preparation Construction Preparation workplace/infrastr/developenviron 12 0,8 6.2 200,00 2.400,00 12,00 Preparation application framework 112 0,4 6.2 220,00 24.640,00 42,00 Start up/reading 33 0,7 6.2 150,00 4.950,00 17,00 Kick off 8 0,1 6.2 140,00 1.120,00 12,00 Test Manager Management Phase Construction (Onshore) # hrs # Hrs/FP FL Rate /hr Cost Cost /FP Project management Construction Contract management 88 0,82 10.2 250,00 22.000,00 72,00 Project management 352 0,41 8.2 200,00 70.400,00 224,00 Quality management 90 0,32 7.4 SC 230,00 20.700,00 134,00 Project preparation Construction Preparation workplace/infrastr/developenviron 12 0,8 6.2 200,00 2.400,00 12,00 Preparation application framework 112 0,4 6.2 220,00 24.640,00 42,00 Start up/reading 33 0,7 6.2 150,00 4.950,00 17,00 Kick off 8 0,1 6.2 140,00 1.120,00 12,00
Uitvoering Project Won? Uitvoering Uren boeken in urenadministratie tool standaard WBS Management Phase Construction (Onshore) # hrs # Hrs/FP FL Rate /hr Cost Cost /FP Project management Construction Contract management 88 0,82 10.2 250,00 22.000,00 72,00 Project management 352 0,41 8.2 200,00 70.400,00 224,00 Quality management 90 0,32 7.4 SC 230,00 20.700,00 134,00 Project preparation Construction Preparation workplace/infrastr/developenviron 12 0,8 6.2 200,00 2.400,00 12,00 Preparation application framework 112 0,4 6.2 220,00 24.640,00 42,00 Start up/reading 33 0,7 6.2 150,00 4.950,00 17,00 Kick off 8 0,1 6.2 140,00 1.120,00 12,00 Project Control Scope management
Project afgerond Data collectie Evaluatie Uren besteed per activiteit en fase # Defects ST, AT en 1 e maand productie Management Phase Construction (Onshore) # hrs # Hrs/FP FL Rate /hr Cost Cost /FP Project management Construction Contract management 88 0,82 10.2 250,00 22.000,00 72,00 Project management 352 0,41 8.2 200,00 70.400,00 224,00 Quality management 90 0,32 7.4 SC 230,00 20.700,00 134,00 Project preparation Construction Preparation workplace/infrastr/developenviron 12 0,8 6.2 200,00 2.400,00 12,00 Preparation application framework 112 0,4 6.2 220,00 24.640,00 42,00 Start up/reading 33 0,7 6.2 150,00 4.950,00 17,00 Kick off 8 0,1 6.2 140,00 1.120,00 12,00 Nieuwe FPA geleverde omvang
Analyse Analyse en Rapportage Vaststellen metrieken Productiviteit (uur/fp), kwaliteit (defects/fp), etc. Eventueel aanpassen tools obv de gerealiseerde data Rapportage [6] Uren / FP vs Effective FP 1.000 Trendlines uren/fp 3GL enkel fp Uren / FP vs Effective FP 100 100 Uren / FP 10 Uren / FP 10 1 10 100 1.000 10.000 Effective FP 1 10 100 1.000 10.000 Effective FP Uren / FP vs Effective FP 1.000 100 Uren / FP 10 1 10 100 1.000 10.000 Effective FP 3GL Cobol Java QSM 2008 Business FP Avg. Line Style 1 Sigma Line Style
Inrichten is niet eenvoudig. Een paar tips! Tip 1: Stel een E&PM proces in met een proces eigenaar in MT. Tip 2: Zorg voor standaardisatie en templates! Tip 3: Gebruik indien mogelijk COSMIC. Tip 4: Kies een goede toolsuite. Tip 5: Implementeer een standaard WBS. Tip 6: Laat je niet afschrikken door gebrek aan CFPA s. FPA/COSMIC kan eenvoudig worden uitbesteed.
Wat kun je nu al doen als PM?? Maak gebruik van standaarden Laat een omvangmeting maken Reality check van de expertbegroting Achteraf vastleggen van data Benchmark je project bij ISBSG www.isbsg.org
Tijdelijke Tip http://realitytest.isbsg.org t/m 15 mei 2010 gratis
ISBSG Not-for-profit organisatie 3 Belangrijke Questionnaires en repositories Software New Developments & Enhancements Software Maintenance & Support COSMIC Industry Data Download questionnaire: www.isbsg.org ISBSG anonimiseert de data Je ontvangt gratis een benchmark rapport!
Conclusies Veel projecten mislukken omdat wordt uitgegaan van onrealistische verwachtingen. Realistische begrotingen zijn te maken door naast de expertbegroting ook een methodische begroting te maken. Om dit te doen is het nodig om een Estimating & Performance Measurement proces in te richten
Wat heb ik u laten zien? Methodisch begroten van projecten is een cruciale factor voor het succesvol realiseren van projecten.
Software Measurement European Forum 2010 Rome, 10-11 juni 2010 RFP management ask the right questions and choose wisely Mocht je interesse hebben in deze paper, stuur me dan een mail. harold.van.heeringen@sogeti.nl http://metrieken.sogeti.nl/home/sec/p ublicaties.jsp [2]
Hoofdsponsors Sponsors IPMA-NL Jaarsponsors
Bronnen [1] Standish Group Chaos report 2009, http://www.standishgroup.com [2] Sogeti Nederland B.V., http://metrieken.sogeti.nl/home/sec/publicaties.jsp [3] McConnell Software Estimation, demystifying the black art, 2006 [4] Putnam & Myers - Five core metrics, The Intelligence Behind Successful Software Management, Dorset House Publishing 2003 [5] ISBSG http://www.isbsg.org [6] QSM http://www.qsm.com of http://www.qsm-europe.com [7] Galorath SEER www.galorath.com