Development

Software-ontwikkeling
crash

Flexibel?

Bij agile werken is kwaliteit belangrijker dan flexibiliteit

© CC0 - Unsplash Rob Potter
3 oktober 2017

Ik kan natuurlijk niet in de hoofden van alle CIO’s kijken. Ik weet niet waar ze allemaal mee zitten, wat ze willen. Als ik zo om me heen kijk, dan zie ik wel één ding heel vaak terugkomen: “We moeten flexibeler worden!” Ik heb dan altijd het idee dat je daarmee fijn kunt verbloemen dat je gewoon niet in staat bent om op tijd een verstandige nieuwe koers te kiezen en voldoende vast te houden aan die koers.

Als we maar flexibel genoeg zijn, dan kunnen we morgen kiezen voor all-in-the-cloud, overmorgen wordt alles AI, om de dag daarna opnieuw alles over een andere boeg gooien. Hoe flexibel moet een organisatie nu werkelijk zijn?

Oké, laten we er vanuit gaan dat organisaties meer flexibiliteit in hun IT willen. Wat kan daar op tegen zijn, tenslotte? Zodra je flexibiliteit roept, roep je direct ook agile. Of andersom: als ik vraag waarom organisaties agile willen gaan werken, dan is dat altijd omdat ze flexibiliteit nodig zeggen te hebben.

De meeste mensen uit de agile-wereld worden blij van die argumentatie. “Je kunt vandaag niet specificeren wat voor een IT je morgen nodig hebt”. Ik ben het daar niet helemaal mee eens. Het klopt wel dat je nu moeilijk kunt specificeren wat je morgen nodig hebt, maar het is net zo goed moeilijk om echt goed te specificeren wat je vandaag nodig hebt. IT is gewoon complex, al gauw te complex voor onze kleine breintjes. Als organisaties dan agile gaan werken, dan valt die flexibiliteit vaak nogal tegen. Dat is niet zo raar. Het was namelijk niet de oude werkwijze die inherent inflexibel was, maar vooral het resultaat van die oude werkwijze.

Flexibiliteit verbloemt dat je niet in staat bent een nieuwe koers te kiezen

Al die oude systemen die op onhandige manieren aan elkaar hingen, al die foute keuzes die geleid hebben tot een spaghetti van code, al die bugs waar op zijn best pleisters op geplakt zijn, al die functionaliteit die nét niet was wat we nodig hadden… Dát is de werkelijke reden dat je niet flexibel bent. Het is de slechte kwaliteit die ervoor zorgt dat elke release langer duurt dan alle vorige releases, dat elke release minder nieuwe functionaliteit levert dan je gehoopt had, dat je bij elke release bang moet zijn dat alles (weer) instort.

Als je agile gaat werken, zijn niet ineens alle oude kwaliteitsproblemen verdwenen. Agile is geweldig. Het is geweldig, omdat je ondanks onduidelijke en veranderende wensen van gebruikers toch continu focust op goede, aantoonbare kwaliteit. Als die kwaliteit dankzij agile werken steeds beter wordt, heeft dat verrassend snel meer flexibiliteit tot gevolg. Die flexibiliteit is als een soort ‘fijne bijkomstigheid’. Allereerst draait agile om kwaliteit.

Reactie toevoegen