It-projecten worden vaak gezien als kostbaar, lastig te beheersen, complex en daardoor risicovol. Niet voor niets stonden de kranten jarenlang vol met berichten over grote mislukte it-projecten. Volgens een nieuw onderzoek van het Project Management Institute (PMI) melden inmiddels steeds meer bedrijven succesvolle projecten die bovendien binnen budget worden afgerond. Maar waar ligt dat precies aan?
Uit het onderzoek van PMI blijkt dat het aantal bedrijven is gedaald dat in het afgelopen jaar een it-project meemaakte dat niet op tijd werd afgerond, over budget ging of niet de vooraf gestelde doelen bereikte. Bovendien blijken voor het eerst in vijf jaar ook de kosten van it-projecten te dalen. Dat is een positieve ontwikkeling voor zowel bedrijven als softwareleveranciers, die sterk lijkt samen te hangen met een betere afstemming tussen business en it bij software-implementaties.
Samenhang business en IT
Jarenlang was er niet of nauwelijks overlap tussen de doelstellingen van de business- en it-afdeling. Die lagen mijlenver uit elkaar, doordat de primaire doelstelling vaak eerst door de it-verantwoordelijke in technische termen wordt uitgelegd en om later beoordeeld te worden op business-doelstellingen, die vaak veel abstracter zijn. Als gevolg hiervan blijkt het uiteindelijk gebouwde systeem misschien technisch wel te functioneren (standaardsoftware), maar vervolgens niet aan de behoefte van de organisatie te voldoen. Ook het tegenovergestelde komt voor. Hier worden alles door de business tot in de puntjes dichtgetimmerd. De scope, het budget en de planning moeten vooraf 100 procent duidelijk zijn, en het liefst in een fixed price contract. Maar ook dan blijkt de uitkomst meestal niet volgens verwachting. De software blijkt vaak veel te complex door overbodig ontwikkelde functionaliteit, waarbij niet genoeg rekening is gehouden met de technologische component.
Het is onmogelijk om een complex it-project op voorhand helemaal te fixeren en een systeem volledig te specificeren. Er zou dus meer aandacht moeten komen voor de samenhang tussen de bedrijfsvoering en it. En die lijkt er nu te zijn. Volgens Mark Langley, de ceo van PMI, kijken organisaties tegenwoordig minder naar kosten, tijd en middelen, maar veel meer naar de voordelen die voor de business zijn gerealiseerd.
Requirements en doorlooptijd
Dat neemt niet weg dat de kosten tijd en middelen nog steeds belangrijk zijn. Budgetten stijgen logischerwijs mee naarmate een it-project meer tijd kost, ofwel de doorlooptijd toeneemt. De doorlooptijd is van meerdere factoren afhankelijk, waaronder de complexiteit van het project, de afspraken die gemaakt zijn tussen de klant en de softwareleverancier en de productiviteit van de ontwikkelaars. De requirements zijn een belangrijk onderdeel hiervan, omdat ze de eisen en wensen van de klant beschrijven over wat een systeem eigenlijk zou moeten kunnen. Op de complexiteit heb je weinig invloed, maar wel op de productiviteit van de ontwikkelaars en de gemaakte afspraken.
Bij aanvang van een project is vaak wel duidelijk welke behoefte de klant heeft, maar deze behoefte verandert gedurende een it-project door voortschrijdend inzicht. Dit is op zich niet erg. Het voortschrijdend inzicht kan tijdens een ontwikkeltraject de vrije hand krijgen mits flexibiliteit en bijsturen tijdens het traject mogelijk zijn. Maar wat met name helpt is het opstellen van requirements vanuit het perspectief van de business. En die requirements moeten vervolgens geharmoniseerd worden met de technische eisen.
Nadat de requirements helder zijn, moeten prioriteiten gesteld worden. Ligt de nadruk op bijvoorbeeld op veel functionaliteit, een snelle doorlooptijd of juist op een relatief laag budget? Een praktische manier om hiermee om te gaan is door de primaire bedrijfsprocessen die ieder ISO-gecertificeerd bedrijf in diagrammen heeft uitgetekend, te gebruiken om vanuit het proces te kunnen analyseren en redeneren. Dit maakt het veel makkelijker om te bepalen waar de software de gebruikers moet ondersteunen, en op een manier die zowel de business als it-afdeling begrijpt. Deze visuele methode wordt onder andere gehanteerd door leveranciers van low-code modelgedreven bedrijfssoftware. Dit alles kan vervolgens gebruikt worden als kapstok om de requirements aan op te hangen. Hierdoor spreken de verschillende afdelingen al vroeg in het ontwikkelproces dezelfde taal, en worden direct in het begin van het project dus wél de juiste vragen gesteld. Dit gebeurt in een uniforme ontwikkelomgeving, zodat het voor iedereen, transparant is hoe het proces verloopt en wat de doorlooptijd is.
Productiviteit en doorlooptijd
De doorlooptijd van een it-project is direct te relateren aan de productiviteit van de ontwikkelaars, maar wordt ook beïnvloed door de klant. Die is namelijk niet altijd in staat om snel genoeg akkoord te geven op de software die de ontwikkelaars opleveren. Met low-code modelgedreven software is de productiviteit veel hoger dan bij traditioneel programmeren, vaak zo’n 5 tot 8 keer hoger. Zodoende kunnen systemen voor erp en crm of andere business-applicaties in korte tijd ontwikkeld worden. De modelgedreven manier van ontwikkelen zorgt er bovendien voor dat het ‘ambachtelijke programmeren’ meer naar de achtergrond verdwijnt. Met dit ontwikkelmodel worden bovendien de voordelen van continuous delivery versterkt: grote aanpassingen kunnen met een zeer laag risico en een lage doorlooptijd op ieder moment worden doorgevoerd naar productie.
Deze denk- en werkwijze behaalt dus een dusdanig hoge productiviteit dat de stakeholders in de organisatie, zoals opdrachtgevers, managers en key-users, snel resultaat kunnen zien. Maar hier zit tevens het enige nadeel van op een low-code modelgedreven manier software realiseren
Doordat er veel meer software in een kortere periode opgeleverd wordt, kunnen de stakeholders nog weleens een achterstand opbouwen bij het evalueren en goedkeuren ervan, een luxe probleem. Er is eigenlijk maar een oplossing voor deze onverwachte bottleneck bij productieve softwareontwikkeling. Betrek de business nog meer bij je it-projecten en zorg dat er voldoende capaciteit is om de ontwikkelaars regelmatig van feedback te voorzien.