De planning is de eerste fase van iedere nieuwe iteratie in Smart. Nu wordt bepaald wat er in het bijbehorende increment (eindproduct van de iteratie) wordt opgeleverd. Hierbij wordt vastgesteld welke bedrijfsprocessen en use cases op dit moment het belangrijkst zijn voor de gebruikersvertegenwoordiger.Een iteratie beslaat grofweg drie delen. Allereerst wordt vastgesteld wat dient te worden gedaan tijdens de iteratie. Dit is de fase planning. Vervolgens wordt de nieuwe functionaliteit toegevoegd, of wordt bestaande functionaliteit verder uitgewerkt. Dit gebeurt in kleinere - zogeheten - use case iteraties van ontwerp en bouw. Uiteindelijk wordt de iteratie afgerond, en wordt het increment geaccepteerd en overgedragen. Dit gebeurt tijdens de fase invoering. DoelHet doel van de planning is tweeledig. Voor de start van de allereerste iteratie wordt het projectplan uitgewerkt. Hierbij wordt bepaald hoeveel iteraties zullen worden gedaan en hoe lang deze duren. Parallel aan de eerste iteratie wordt vaak de applicatiearchitectuur ontwikkeld of uitgebreid. Bij de start van iedere iteratie (inclusief de eerste) wordt het incrementplan geschreven. Hierin wordt bepaald wat er in het increment zal komen; welke bedrijfsprocessen en use cases worden geimplementeerd. Vervolgens worden de benodigde resources gepland. Hierbij wordt rekening gehouden met de resultaten van eerdere iteraties; deze kunnen immers leiden tot het bijstellen van de schatting. AfrondingVoor de start van de iedere iteratie wordt het projectplan aangescherpt. Dit plan toont globaal de indeling van de te bouwen functionaliteit in iteraties. Bovendien wordt bij de start van iedere iteratie een incrementplan opgeleverd dat een gedetailleerde planning bevat van de in deze iteratie op te leveren functionaliteit. RichtlijnenIndien wordt onderkend dat de huidige applicatiearchitectuur onvoldoende is om het project te laten starten, kan een eerste iteratie worden gewijd aan het ontwikkelen dan wel uitbreiden van de applicatiearchitectuur. Op deze wijze wordt de planbaarheid van een dergelijke activiteit vergroot. Zo'n iteratie dient bij voorkeur een korte iteratie te zijn. Hierdoor is het vereist de scope betreffende de applicatiearchitectuur zoveel mogelijk te beperken. Streef tijdens een iteratie altijd naar het in zijn geheel opleveren van use cases. Het is zinvoller om de helft van de geplande use cases af te hebben, dan allemaal voor een deel. In het eerste geval hoeft slechts een gedeelte van de use cases te worden meegenomen naar een volgende iteratie; in het laatste geval zullen alle use cases moeten worden overgeheveld. In beide gevallen geldt overigens dat het niet vanzelfsprekend is dat de use cases ook daadwerkelijk worden uitgevoerd in een volgende iteratie. Dit wordt bepaald tijdens het prioriteren van de use cases. Bij de start van een iteratie wordt ook meestal de lengte van de timebox vastgesteld. Dit betekent dat al bekend is wanneer de eerstvolgende iteratie zal starten. De verschillende deelnemers aan de workshops die worden georganiseerd kennen vaak volle agenda's. Dit geldt in het bijzonder voor projectleiders en gebruikersvertergenwoordigers. Het is handig om nu ook al de workshops voor de eerstvolgende iteratie ook in te plannen. Smart wijkt in deze fase bewust af van de fasering van DSDM. In Smart is de fase planning explicieter dan in DSDM het plannen van iteraties en incrementen wordt aanschouwd. Dit is mogelijk doordat de use cases een prima eenheid bieden op basis waarvan het schatten van de complexiteit van de functionaliteit en het invullen van de iteraties kan plaatsvinden. DSDM kent niet zo'n eenheid en ontbeert derhalve heldere en eenduidige aanwijzingen omtrent planning. | ActiviteitenBest practices
Referenties
|