Tijdens een gesprek met een potentiële opdrachtgever kwam een dilemma naar voren dat ik vaker gehoord heb: Agile willen werken maar wel vooraf een volledig sluitend functioneel ontwerp. Werkt dat?
Projecten hebben meerdere dimensies. Vaak worden de dimensies Tijd, Geld en Product (of Kwaliteit) gehanteerd.
Door een bepaalde methodiek toe te passen wordt getracht deze dimensies voorspelbaar te maken en overschrijding van Geld of Tijd te voorkomen. In de praktijk is het dan vaak het Product of de Kwaliteit die te wensen overlaat.
Een belangrijk voordeel van een dekkend functioneel ontwerp is dat de scope van wat geleverd moet worden helder is. Op basis van een functioneel ontwerp kan bijvoorbeeld ook een externe partij worden ingeschakeld op basis van een resultaatverplichting in plaats van een inspanningsverplichting.
Dat vervolgens deze externe partij een Agile methodiek toepast om het gewenste product te produceren heeft dan vooral voordelen voor deze partij zelf: met regelmaat (deel-) producten opleveren, die getest en geaccepteerd kunnen worden is een goede graadmeter voor de voortgang van een project.
Toch ligt in deze hybride aanpak ook een addertje onder het gras. De opdrachtgever wil zekerheid, die de opdrachtnemer alleen bereid is te geven tegen een premie - een hogere vergoeding voor het project.
De wens naar een volledig dekkend functioneel ontwerp komt vaak voor uit slechte ervaringen in een eerder Agile traject. Mijn ervaring is dat wanneer het management het Agile gedachtengoed niet heeft omarmd en in de praktijk toepast en de uitvoerende partij wordt voorzien van een volledig functioneel ontwerp, het uit eindelijke product bij oplevering al achterhaald is.
Is er een tussenvorm denkbaar, waarbij het functioneel ontwerp op hoofdlijnen wordt uitgewerkt, en dan Agile wordt uitgevoerd? Je zou kunnen denken aan het uitwerken van Customer Journeys. Op basis hiervan kan een Minimum Viable Product worden gedefinieerd. Dit MVP kan dan een prima startpunt zijn voor een Agile ontwikkelproces, waarbij zowel opdrachtgever als uitvoerende partij Agile kunnen werken.