Agile werken of wendbaar software ontwikkelen is niet nieuw. Vele soorten en vormen van Agile softwareontwikkeling zijn de afgelopen 25 jaar gebruikt. Elk van deze soorten bracht een bepaalde focus. Zoals Rapid Application Development (RAD) in de jaren negentig met het samenbrengen van ontwerpen en ontwikkelen en Extreme Programming met o.a. het vier ogen principe. Vanaf het millennium is Scrum als een Agile aanpak aan populariteit toegenomen. Scrum is een vorm van incrementeel werken waarbij in kleine teams steeds in korte tijd werkende software wordt geleverd. Een werkend opgeleverd stuk software prevaleert dan boven het produceren van (veel) documentatie.
De Agile werkwijze is niet nieuw maar de brede adoptie buiten software ontwikkeling en de opschaling is wel nieuw. Daarbij komt dat voorheen software werd ontwikkeld in één team, nu zijn dat in sommige gevallen 20 scrumteams ook vanuit beheer die samen werken aan één ketenproduct die elke drie weken nieuwe functies opleveren. Hiertoe worden oude projectmethoden vervangen met nieuwere Agile frameworks, zoals bijvoorbeeld SAFe. Deze worden te snel door vele organisaties als nieuwe waarheid ingevoerd. Dit is niet altijd handig, zeker als je bestaande (legacy) systemen hebt waarbij waarden als performance, toegang, beheersbaarheid en of veiligheid naast het nieuwe apps worden opgeleverd en beheerst. In deze blog geef ik vier handige tips voor de opdrachtgever over de besturing van Agile werken.
Vier praktische tips voor Agile besturen:
- Agile werken geeft meer wendbaarheid, maar niet alles moet via een Agile werkwijze.
- Agile besturen is écht anders. Tijd en geld staan vast, dan moet de scope flexibel zijn.
- Gebruik traditionele (MSP) en wendbare (Agile) filosofieën voor besturing van toenemende maatschappelijke en technische complexiteit.
- Financiële besturing van Agile werken vergt op een andere Business en ICT sturing.
Tip 1. Agile werken geeft wendbaarheid, maar niet alles moet Agile
Het verschil van wendbaar werken van nu en toen is dat we het Agile werken niet alleen voor software ontwikkeling gebruiken, maar ook toepassen in de gehele organisatie. Je ziet tegenwoordig op elke afdeling een status (Kanban of Scrum) bord ontstaan met actiegerichte kaartjes die wekelijks worden bijgehouden zonder een soort van samenhang naar de rest van de ICT en Business. Niet in alle gevallen is Agile werken een oplossing! De implementatie van een webapplicatie waarbij je nog niet goed weet wat bij de consument wel of niet werkt (zie figuur 1. oplossing onbekend, klantprobleem bekend) is in uren aangepast met de Scrum werkwijze. Maar een vervanging van complex systeem en bijbehorende samenhang en organisatieverandering kost meestal twee jaar. Zeker als het gaat om de realisatie van financiële administraties en bijbehorende procesverbetering (probleem en oplossing bekend) is een Agile werkwijze dus niet altijd de oplossing voor voorspelbare resultaten.
Tip 2. Agile besturen is echt anders. Tijd en geld staan min of meer vast, dan moet de scope flexibel zijn.
Mooi dat we Agile Werken omarmen, maar nu weet ik nog steeds niet wanneer wat precies wordt opgeleverd. Sterker nog: ”Men is zo flexibel dat zonder dat ik het weet de volledige scope is aangepast! Zo krijg ik niet geleverd wat is beloofd”. Het voordeel van Agile is dat je beter kortcyclisch kan volgen hoe tijd en geld en functies werkend (of niet!) worden opgeleverd. Je kunt dus eerder bijsturen als de opgeleverde waarde niet de gewenste waarde bevat. Daarnaast wordt met Agile elke oplevering ook voorzien van een evaluatie om het telkens een stukje beter te maken. Daarnaast kan het voorkomen dat het huis dat je aan het bouwen bent gaande weg verandert. In Agile is het zo dat architectuur bijgesteld kan worden. De scope in termen van tijd, geld functionaliteit en kwaliteit kan dus gaande weg wijzigen. Stuur daarom kortcyclischer met behulp van (verwachte en geleverde) waarde op een flexibele scope. Bestuur tevens de architectuur kaders. Meet op functionele waarde (iets voor de eindgebruiker), maar ook de waarde op het gebied van onderhoudbaarheid en koppelbaarheid (iets voor de techniek).
Tip 3. Gebruik traditionele (MSP) en wendbare (Agile) filosofieën voor besturing van toenemende maatschappelijke en technische complexiteit.
In een publieke omgeving is de besturing met complexere ICT projecten vaak gebaseerd op traditionele methoden zoals Prince2 en MSP. De MSP programmamanagement methode kan goed gebruikt worden om zowel bestuurlijk als wendbaar Agile ontwikkelingen succesvol te kunnen aansturen. Met MSP wordt de verandering in de organisatie en de incrementele opleveringen in samenhang bestuurd (Zie figuur 3.). Ook de besturing op informatieplanning en architectuurkaders blijven nodig voor succesvolle besturing in een veranderende maatschappij. De complexiteit van de technologie (en kansen!) neemt de komende jaren enorm toe. Digitalisering, virtualisatie, artificial intelligence, quantum computing, IoT, blockchain; het zijn technieken die in combinatie met politieke mijlpalen lastig te besturen zijn. Dan kan het gebruik van traditionele en Agile methoden aangepast in uw context (de eigen invulling) de bestuurbaarheid vergroten voor voorspelbaar en haalbare doelen. Bestuur complexe ICT projecten en organisatieveranderingen in samenhang door gebruik te maken van de MSP best practice en Agile filosofieën.
Tip 4. Agile werken vergt een andere financiële besturing
Agile werken vergt ook een andere kijk op financiële besturing met enerzijds investeringen aan de ontwikkelkant (Development) en anderzijds het operationele beheer (Operations). De moderne Agile frameworks houden rekening met meerdere teams in een keten en ook een versmelting van innovatie, ontwikkelprojecten en beheer (Dev-Ops). In deze wereld van snelle technologische ontwikkelingen die elkaar in rap tempo opvolgen, gaan bedrijven meer continue software en waarde leveren met Continueous Delivery (CD). Maar, zie DevOps en CD niet als heilige graal want legacy systemen en apps hebben echt een andere hartslag tot verandering. Dit kan je vanuit programmatisch oogpunt prima besturen (tip 3). Daarbij komt dat als je bestaande systemen moet vervangen naar een nieuw platform, de performance, de toegang, de beheersbaarheid en of veiligheid naast de nieuwe functies in een app worden opgeleverd. Als een ICT en veranderprogramma ten einde is, zul je de financiering van komende verbeteringen, innovatie, wijzigingen en beheer als geheel kunnen besturen door de financiering te relateren aan geleverde (functionele maar ook niet functionele) waarde.
Traditionele ontwikkel- en beheersbudgetten versmelten dus in continue leveringsstraten (Continueous delivery). Reserveer capaciteit in de ontwikkelteams voor functies die niet direct gericht zijn op de eindgebruikers, zoals non functionele eisen op het gebied van betrouwbaarheid, veiligheid en beheerbaarheid. Je krijgt ook meerdere business cases die opgeteld je totale business case maken met een forecast die elk kwartaal wordt bijgesteld. De Business is ICT.
Wilt u meer tips over het succesvol besturen van Agile trajecten en organisatieverandering, meld u dan aan voor onze ontbijtsessie “Agile besturen voor opdrachtgevers” op 11 januari 2018. In deze sessie nemen we u mee in de verschillende aspecten van het besturen van Agile en traditionele ICT-projecten en hoe u slagingskans kunt optimaliseren. We delen onze ervaring en expertise vanuit de publieke sector. U kunt zich aanmelden door mij een email te sturen: ed.vandoorn@vka.nl.