Tag Archive for Estimation

Estimations

Het inschatten van de projectwerkzaamheden is misschien wel een van de meest uitdagende onderdelen van het totale project. De wijze waarop de inschattingen tot stand zijn gekomen zal normaliter de uitkomst en het succes van een project grotendeels bepalen. Zonder onderbouwde inschattingen geen planning, zonder planning geen sturing en zonder sturing geen beheersing.

Gedurende het totale project kunnen er in ieder geval vijf verschillende fasen worden onderscheiden, beginnend bij de ballpark fase en eindigend bij de sign-off. Naarmate de kennis over de klant groter is, het einddoel gespecificeerd en afgebakend en deze kennis over een groter aantal teamleden is verspreid, zal de kwaliteit van inschatting beter zal worden. Het is de uitdaging om dit optimum zo snel mogelijk te bereiken zonder hierbij de kwaliteit van het resultaat te belemmeren. Kwaliteit is in dit geval een breed begrip. Het staat niet alleen voor de kwaliteit van bijvoorbeeld de code of de hoeveelheid bugs, maar eerder nog of het resultaat zal worden geaccepteerd door haar doelgroep als volwaardige oplossing voor een probleem en/of commerciele invulling. Mijn primaire uitgangspunt hierbij is dat het eindresultaat moet voldoen aan de verwachtingen op het moment van opleveren. De rode draad gedurende het gehele project zijn hierbij de minimaal benodigde requirements en het budget.

In de aanloop van een project zullen er een aantal kerntaken moeten worden uitgevoerd. Naast een functioneel- en technisch ontwerp, kan hierbij worden gedacht aan een testplan, risico inventarisatie en het invullen van de definitions of done. Verder zal er veelal, met name in een commercieel traject, een ballpark zijn afgegeven om een budgetindicatie af te kunnen geven.

  • Ballpark: Een high-level budgetindicatie op basis van de op dat moment aanwezige informatie. Dit kan een aangeleverd Functioneel Ontwerp zijn, maar het is belangrijk om te realiseren dat een dergelijke inschatting een beperkte waarde heeft. Er kan globaal rekening worden gehouden met aanwezige randvoorwaarden en/of eisen en het gewenst om hier al een MoSCoW-analyse toe te voegen, maar je mist hierbij de input van het development team bij de kwaliteit van bugettering. Een ballpark moet om die reden echt gezien worden als startpunt en niet meer dan dat.
  • Functioneel- en Technisch Ontwerp: Beide documenten zullen gedurende het project verder aangevuld en uitgewerkt moeten worden, maar de basis omvat in ieder geval voldoende afbakening voor de start van de eerste Iteratie. Daarnaast is het raadzaam om de resultaten uit de MoSCoW-analyse toe te voegen en de Must-haves in dit stadium al verder uit te werken.
  • Definition(s) of Done: Binnen een project zijn een aantal vaste fasen te onderscheiden: Story, Iteratie, Acceptatie en Productie. Voor elk van deze momenten kun je een Defintion of Done bepalen. In principe geeft dit een vertaling van de kwaliteitseisen waar elke fase aan moet voldoen. Hierbij kun je denken aan de vastgestelde kwaliteitseisen, zoals code coverage, bugfixing, e.d., en werkzaamheden uit het Testplan.
  • Budgetteren Iteratie(s): Vanuit enerzijds een opsomming van uitgewerkte stories en anderzijds eenduidigheid over de kwaliteitseisen en activiteiten per story (definition of done), kan er gestart worden met het inschatten van de werkzaamheden voor een Iteratie. Belangrijk hierbij is om discussie en concensus te bereiken. Hiervoor is het noodzakelijk dat alle teamleden afzonderlijk van elkaar een inschatting geven en zij voldoende ruimte krijgen om zijn/haar inschatting te verdedigen.

Naarmate het project verder gestalte krijgt, zal het team beter in staat zijn om kwalitatief betere oplossingen en inschattingen te maken. Dit is een combinatie van in een ‘flow’ raken en individuele kwaliteit binnen het team. Aan de individuele kwaliteit binnen het team zal ook een beperking gelden. Het vermogen om vanuit een bepaalde afstandelijkheid naar een functionele eis te kijken en hierbij geen aannames te doen heeft een beperking in de tijd. Het is belangrijk om hier scherp op te blijven en niet vanuit een ‘comfortzone’ het project te managen. Verse inzichten binnen het team betrekken, het organiseren van een klankbord sessie of het laten rouleren van verantwoordelijkheden kan hierbij helpen.

Share on TwitterShare via email