Een benchmark-onderzoek bij de ict-afdeling van ABN Amro bracht in 1999 aan het licht dat de productiviteit van de software-ontwikkelaars omhoog kon. In 2000 startte daarom het project Inspiration, dat halverwege 2004 moet zijn afgerond. Dan heeft de bank in heel Nederland de ‘dynamic systems development method’ ingevoerd. Bovendien zal een groot deel van de ontwikkel- en servicesafdelingen zich dan moeten bewegen op niveau 2 van het ‘capability maturity model’, en enkele op niveau 3. Een tussenstand.
De negen uitgangspunten van dsdm ‘Dynamic systems development method (dsdm) is een standaard raamwerk om ontwikkeltrajecten voor applicaties vorm te geven en te kunnen beheersen. Binnen dsdm kan zowel iteratief als lineair ontwikkeld worden. Actieve gebruikersparticipatie is noodzakelijk De gebruikers en ontwikkelaars werken als één team samen gedurende het gehele ontwikkeltraject. Dsdm-teams moeten bevoegd zijn om beslissingen te nemen Dsdm-teams bestaan uit gebruikers en ontwikkelaars. Het team moet zelfstandig kunnen besluiten over het aanpassen van functionaliteit, zonder dat het in alle gevallen goedkeuring van het hoger management nodig heeft. De werkwijze is gericht op frequente oplevering van producten Een dsdm-team richt zich op het opleveren van werkende prototypes of systeemdelen binnen een afgesproken tijdsspanne. Dit stelt het team in staat om de beste benadering te kiezen om de vereiste producten binnen de gegeven tijd te realiseren. Geschiktheid voor bedrijfsdoeleinden is het essentiële criterium voor acceptatie van producten Dsdm richt zich op het op tijd opleveren van voldoende functionaliteit die de bedrijfsprocessen ondersteunt. Het systeem kan desgewenst later worden verfijnd of uitgebreid. De aanpak is iteratief en incrementeel Dsdm stelt het team in staat om systemen incrementeel te ontwikkelen. De ontwikkelaars kunnen optimaal gebruik maken van de terugkoppeling van de gebruikers, om snel te komen tot een bruikbaar systeem. Alle veranderingen tijdens ontwikkeling zijn omkeerbaar Iteratief ontwikkelen maakt het mogelijk flexibel om te gaan met veranderingen. Eisen worden gedefinieerd op een hoog niveau Tijdens het ontwikkeltraject wordt functionaliteit verder gedetailleerd op basis van voortschrijdend inzicht. Testen vindt plaats gedurende de gehele ontwikkelfase Testen wordt niet beschouwd als een afzonderlijke activiteit. Terwijl het systeem incrementeel wordt ontwikkeld, wordt het continu beoordeeld en getest door ontwikkelaars en gebruikers. Goede samenwerking tussen alle bij het project betrokken partijen is essentieel Keuzen die betrekking hebben op het project, mogen niet gehinderd worden door restrictieve procedures. Afspraken met externe leveranciers dienen voldoende flexibiliteit te bieden. |
De bank was overigens niet de enige organisatie in de wereld waar het gevoel leefde dat it-projecten beter gerund kunnen worden. De Standish Group doet al vele jaren onderzoek naar faal- en slaagfactoren van ict-projecten. Daarbij maakt het bureau een onderscheid in succesvolle projecten – projecten die op tijd en binnen budget een systeem opleveren dat de functies herbergt die waren afgesproken – en de ‘challenged’ projecten. Laatstgenoemde projecten worden boven het budget en te laat opgeleverd en hebben minder functionaliteit in zich dan was afgesproken. Er is zelfs nog een derde categorie, die bestaat uit projecten die tijdens de rit zijn stopgezet.
Uit het laatste rapport, dat in 2000 is uitgekomen, blijkt dat 28 procent van de onderzochte projecten als ‘succesvol’ kan worden betiteld (1994: 16 procent, 1996: 27 procent en 1998: 26 procent) en dat 23 procent gedurende de rit is stopgezet (1994: 31 procent, 1996: 40 procent en 1998: 28 procent). Dat betekent dat bijna de helft van alle projecten (49 procent) het predikaat ‘challenged’ krijgt (1994: 53 procent, 1996: 33 procent, 1998: 46 procent).
Productiviteitsverbetering
"De ABN Amro was geen uitzondering op de regel", zegt Jean Kleijnen, senior vice president en leider van het Inspiration-project. "Er konden verbeteringen worden doorgevoerd op het gebied van productiviteitsverhoging. De vraag is alleen hoe je dat aanpakt in een grote en complexe organisatie. Uiteindelijk kwamen we tot de slotsom dat er veel zou kunnen verbeteren wanneer we zouden overgaan op één ontwikkelmethodiek. In een ver verleden was besloten om te standaardiseren op ‘Method One’, een ontwikkelmethodiek die ooit door Andersen was ingevoerd. Daaraan is echter niet strak de hand gehouden. Het gevolg was dat met elk extern bureau dat werd ingehuurd om met applicatieontwikkeling mee te helpen, een nieuwe methodiek werd binnengedragen. Daarnaast lieten we onze gedachten gaan over de vraag hoe we de totale kwaliteit van de ontwikkelafdeling zouden kunnen opkrikken. Het kwam immers regelmatig voor dat we moeite hadden om een goede afstemming te vinden tussen datgene wat de business-units van ons wilden en wat wij uiteindelijk als product opleverden."
In 2000 startte het project Inspiration om het hele proces van software-ontwikkeling te verbeteren. Ze hebben van Inspiration zelfs nog een acroniem weten te maken: ‘Initiative for Software Proces Improvement and Re-engineering of Abn amro’s Terminology, Implementation & OrganisatioN’.
Zo’n tweeduizend mensen hebben ermee te maken. Het gaat om ontwikkelaars, applicatiebeheerders, projectmanagers en de mensen binnen de business-units die fungeren als contactpersoon met de it-afdeling. "Vooraf zijn doelstellingen geformuleerd die halverwege 2004 bereikt moesten zijn" zegt Onno van der Klei, die als externe inhuurkracht – afkomstig van Cap Gemini Ernst & Young – van meet af aan bij het project betrokken is. Een productiviteitsverhoging van 20 procent, de implementatie van een uniforme ontwikkelmethodiek, een aanmerkelijke kwaliteitsverbetering van de te ontwikkelen applicaties (die onder meer tot uiting komt in een betere onderhoudbaarheid van de software), een hogere gebruikerstevredenheid en betere samenwerking tussen gebruikers en ontwikkelaars. " Kortom: een verbetering van de professionaliteit van de ontwikkelafdeling, meer arbeidsvreugde bij de bestaande medewerkers en de creatie van een werkomgeving die zó attractief is dat we vacatures makkelijker kunnen vervullen", aldus Kleijnen.
Dsdm
De zoektocht naar een uniforme ontwikkelmethodiek leidde uiteindelijk naar dsdm (‘dynamic systems development method’). Philippe Castermans, projectmanager ‘invoering dsdm’: "We wilden een toekomstvaste en leveranciersonafhankelijke methode hebben, waarop we bovendien ook zelf nog enige invloed kunnen uitoefenen. En natuurlijk een methodiek die rad (‘rapid application development’) ondersteunt. Maar omdat we binnen de bank toch te maken hebben met legacy-applicaties die volgens de traditionele watervalmethoden zijn ontwikkeld, moest de nieuwe methodiek ten behoeve van het onderhoudswerk aan die systemen ook de meer traditionele werkwijzen ondersteunen. Dat hebben we gevonden in dsdm. Bovendien speelden de kosten, zowel de aanschaf- als de opleidingskosten, een niet onbelangrijke rol bij de uiteindelijke keuze."
Het capability maturity model In de jaren tachtig heeft het Software Engineering Institute (SEI) van de Carnegie Mellon University het ‘capability maturity model’ (cmm) ontwikkeld. Dit model is op inmiddels wereldwijd geaccepteerd als hulpmiddel om de volwassenheid van organisaties voor applicatieontwikkeling vast te stellen en deze organisaties op een hoger niveau te brengen. Het sw-cmm (software-cmm) meet de effectiviteit in vijf niveaus van volwassenheid: 1-‘Initial’, 2-‘Repeatable’, 3-‘Defined’, 4-‘Managed’, 5-‘Optimizing’. Op deze manier omvat het sw-cmm een evolutionair pad, dat organisaties kunnen volgen van de uitvoering van een onvolwassen, ad hoc-proces naar een gedisciplineerd en steeds verbeterend proces. Het dekt nieuwbouw van software en applicaties en het projectmatig aangepakte grootschalig onderhoud ervan. Daarbij richt het sw-cmm zich op aspecten van projectmanagement, de techniek van applicatieontwikkeling en de organisatie waarin ontwikkeling en onderhoud wordt uitgevoerd. Ieder volwassenheidsniveau bestaat uit een aantal ‘key process areas’ (kpa’s). Elke kpa heeft een aantal doelstellingen. Om als organisatie op een bepaald niveau te opereren, moeten niet alleen de doelstellingen van de kpa’s van dat niveau worden gerealiseerd, maar ook van de lagere niveaus. De nadruk van de kpa’s van niveau 2 ligt op managementaspecten van ontwikkelings- of wijzigingsprojecten. Naast een verfijning van deze managementaspecten richt niveau 3 zich op een aantal aspecten die spelen op organisatieniveau, en op de beschrijving van een aantal technische activiteiten. Niveaus 4 en 5 beschrijven het sluiten van de kwantitatief gedreven feedbackcyclus van uitvoering, meting, afweging en verbetering. Deze niveaus doorkruisen derhalve zowel de managementaspecten als de organisatieaspecten en technische activiteiten. Uit de registers van het SEI blijkt dat wereldwijd meer dan 70 procent van de organisaties werkt op niveau 1, terwijl zo’n 18 procent op niveau 2 zit. Het aantal organisaties op niveau 4 en 5 is slechts zeer beperkt. Dit is overigens te zien op de site van het SEI: http://www.sei.cmu.edu/sema/pub_ml.html |
CMM
Om het hele proces van systeemontwikkeling en -onderhoud te professionaliseren, is besloten ook het ‘capability maturity model’ in te voeren. Kleijnen: "Cmm is in wezen een kwaliteitssysteem dat je hanteert om processen te beschrijven. Het gaat dan om de processen om software te ontwikkelen en te onderhouden. Terwijl cmm beschrijft wát je moet doen, biedt dsdm een raamwerk hóe je het moet doen, zonder je overigens vast te pinnen op de tools. Beide systemen zijn dus complementair aan elkaar."
"We zijn een half jaar bezig geweest om beide methodieken aan elkaar te koppelen. Toen we eenmaal een geïntegreerd kwaliteitsmanagementsysteem hadden opgesteld, zijn beide processen – procesverbetering volgens cmm en de acceptatie van dsdm – in een forse stroomversnelling geraakt", aldus Kleijnen, die meent dat ABN Amro het enige bedrijf ter wereld is dat een dergelijk geïntegreerd kwaliteitssysteem heeft. Daarmee neemt de bank volgens hem een unieke positie in.
ABN Amro streeft ernaar om in de loop van volgend jaar op niveau 2 en in sommige kpa’s (‘key process areas’) op niveau 3 van cmm te komen. De nadruk ligt op ‘requirementsmanagement’, softwareprojectplanning, -tracking en -oversight, ‘software subcontract management’, ‘quality assurance’ en ‘configuration management’. Dsdm is in wezen een niveau 3-proces, aangezien daarmee een goed gedocumenteerd en gestandaardiseerd ontwikkelproces wordt nagestreefd. En dat is nu precies één van de relevante kpa’s van niveau 3. Medewerkers van het Indiase bedrijf Emphasis – zelf aangeland op het allerhoogste niveau – begeleiden de bank in het proces naar cmm-certificering.
‘Balanced scorecard’
Inspiration is een project dat tal van zaken rond het proces van softwareontwikkeling zichtbaar en meetbaar moet gaan maken. Daarvoor is in een vroegtijdig stadium een meetinstrumentarium ontwikkeld. "We wilden niet voortdurend afhankelijk zijn van externe partijen om onze prestaties te meten", zegt Kleijnen. "Daarom hebben we zelf een dashboard gemaakt gebaseerd op de ‘Balanced Scorecard’. Het dashboard zoals we dat nu kennen is een verzameling samenhangende meters met productiviteitsgegevens over projecten. Die meters bieden ons inzicht in de productiviteit in termen van ‘functiepunten per mensmaand’. Op basis van deze gegevens hebben we kunnen vaststellen dat de productiviteit in projecten waarin met dsdm wordt gewerkt, tien tot twintig procent is gestegen ten opzichte van projecten waarin we nog met andere methoden werken."
Overigens was dat meetinstrumentarium wel een vereiste om Inspiration te starten. Ook ABN Amro is er de afgelopen jaren door schade en schande achter gekomen dat ict-projecten bodemloze putten kunnen zijn, waarin miljoenen euro’s nutteloos verdwijnen. Vandaar dat er tegenwoordig met strakke budgetten wordt gewerkt en investeringen in ict-projecten pas goedgekeurd worden wanneer er een duidelijke kosten-batenanalyse aan ten grondslag ligt.
Over de bedragen die met de uitvoering van Inspiration gemoeid zijn, wil Kleijnen weinig loslaten: "Het budget voor Inspiration ligt rond 5 tot 7 procent van onze ict-capaciteit voor onze Nederlandse vestigingen. Dat verdienen we terug wanneer we een productiviteitsstijging van de softwareontwikkelaars kunnen realiseren die ligt tussen de 10 en 20 procent. De winst ligt daarin dat we dat bedrag elk jaar gaan terug verdienen." Alleen insiders kunnen uit deze opmerkingen opmaken of Inspiration een renderend project is.
Beklijven
Inspiration is opgezet als een project. Dat betekent dat de activiteiten eindig zijn: halverwege 2004 wordt het team opgeheven. De vraag is óf en zo ja, in welke mate alle vernieuwingen en veranderingen beklijven. Om dat te bereiken is een derde deelproject binnen Inspiration gestart, dat is gericht op het bijbrengen van een professionele instelling bij alle medewerkers van de ontwikkelafdeling. Iedereen krijgt een tweedaagse training en daarna een coach toegewezen. Inmiddels zijn al meer dan duizend medewerkers getraind in dsdm. De werkwijze en de werkhouding van de mensen wordt gemeten en vervolgens met een ieder individueel besproken. "Daarnaast zijn er nieuwe functies gecreëerd in de bestaande organisatie. Die functionarissen treden op als ‘hoeders van de kwaliteitsgedachte’ rond dsdm en cmm. Bovendien is er een centrale ‘Quality Officer’ voor het totale applicatiedomein aangesteld. Hij zal ervoor moeten zorgen dat het kwaliteitssysteem dat we vanaf 2000 met Inspiration hebben opgezet, ook daadwerkelijk in de lijnorganisatie beklijft wanneer het projectteam is opgeheven", aldus Kleijnen.
Cok de Zwart, freelance medewerker