Naar een hoger volwassenheidsniveau volgens de methode CMM

Capability Maturity Model (CMM)
CMM is een raamwerk om te komen tot een effectief software ontwikkelproces. Het model beschrijft een evolutionaire aanpak om van een ad-hoc werkwijze tot een gedisciplineerd, volwassen proces van systeemontwikkeling te komen...

Onwikkelorganisaties zijn al jaren op zoek naar productiviteitsverhogende technologiën... zonder duidelijk succes. Dit heeft vele tot het inzicht gebracht dat het fundamentele probleem zit in het primaire proces van softwareontwikkeling. Het nivo van volwassenheid van het proces wordt gemeten door middel van een zogenaamd Assesment. Dit is een schatting van een onafhankelijk team van oplgeleide professionals (in CMM) die het niveau meten waarop een organisatie zich bevindt.

Om te begrijpen wat de meest kritische stappen zijn op weg naar een hoger level in volwassenheid, moet men eerst begrijpen wat niveau in volwassenheid precies betekent. In een onvolwassen organisatie wordt er veel geïmproviseerd door beslissingsbevoegde managers. Ook wanneer de procedures uitgebreid beschreven zijn, worden deze niet opgevolgd. Managers worden afgerekend op de korte termijn en daarom zijn ze voornamelijk bezig met 'brandjes blussen'. Planningen worden altijd overschreden omdat ze niet gebaseerd zijn op realistische begrotingen. Omdat de deadine vaak hard is, gaat alles te koste van de kwaliteit. In volwassen organisaties daarentegen hebben managers oog voor kwaliteit. Ze monitoren en controleren de kwaliteit regelmatig gedurende het ontwikkelproces.

Een aardige metafoor in dit verband is de vergelijking met een voetbalteam van amateurs tegenover een professioneel team. Bij de amateurs wordt de bal geraakt en bekijkt met daarna hoe ze verder proberen tot een doelpunt te komen terwijl bij eenprofessioneel team alles van te voren afgesproken en doorgenomen is.

CMM is geen zilveren kogel waarin de oplossing voor alle problemen zit. Zo zegf CMM bijvoorbeeld weinig over het inhuren en motiveren van competente medewerkers. CMM is slechts een hulpmiddel (een tool) en daarom geldt ook hier: 'a fool with a tool is still a fool'.

 

Introductie CMM

Voorbeelden van uit de hand gelopen begrotingen en te laat opgeleverde softwareproducten zijn niet moeilijk te vinden. Automatiseringsprocessen zijn vaak voor verbetering vatbaar. Vele richtlijnen hiervoor worden gegeven door het Capability Maturity Model. Hieronder wordt kort toegelicht hoe dit model in de praktijk kan worden toegepast om de volwassenheid van processen te onderzoeken en te verbeteren.

Kwaliteit het meest misbruikte en verkeerd begrepen woord
Kwaliteit van onze dienstverlening, kwaliteit van ons bedrijf, kwaliteit van de door ons geleverde systemen. Vraag twintig mensen wat het woord betekent en je krijgt twintig verschillende antwoorden. Als het om programmatuur gaat, denkt men vaak aan de gouden randen die er aangebouwd worden en die goud geld kosten. Kwaliteitskosten noemt men dat dan. O ja?
Louis van Gaal heeft eens gezegd dat kwaliteit het uitsluiten van toevalligheden is. Philip Crosby (een van de grootheden op kwaliteitsgebied) noemt kwaliteit 'voldoen aan de vereisten'. Dus als een Cadillac voldoet aan alle vereisten van een Cadillac, is het een kwaliteitsauto. Als een Lelijke Eend voldoet aan alle vereisten van een Lelijke Eend, is dat dus ook een kwaliteitsauto.

Daarom wordt liever de volgende definitie gehanteerd. Kwaliteit is voldoen aan de gemaakte afspraken. Niets meer en niets minder. Daar kun je wat mee. Als een project een systeem oplever dat voldoet aan de afspraken, de eisen, is er kwaliteit geleverd. En kwaliteitskosten zijn dan simpelweg die kosten die gemaakt moeten worden om elkaar aan de afspraken te houden.
Nog steeds levert het merendeel van de ICT-projecten niet datgene op wat is afgesproken. Meestal ligt dat aan de kwaliteit van de afspraken waardoor verkeerde verwachtingen zijn geschapen. Of zijn de afspraken zo geformuleerd dat ze nooit waargemaakt kunnen worden.

Capability Maturity Model
Waar hebben we het dus over? Over vakmanschap, of anders gezegd professionaliteit. Maar ook over creativiteit. Vakmanschap is nodig om creatief te kunnen zijn, dat wil zeggen: d¡e systemen op tijd en binnen budget leveren, die werkelijk een toegevoegde waarde voor de klant hebben. Binnen de ICT-wereld heerst het grote misverstand dat chaotisch werken hetzelfde is als creatief werken. Daardoor is er weinig gelegenheid geweest om echt creatief te zijn. Een andere misvatting is dat creatief werken niet kan gedijen binnen een gestructureerde omgeving. Beide misverstanden vormen de bron van falende projecten.
Gelukkig is er een kentering zichtbaar. De software-wereld begint te snappen dat het professioneler kan. Na de ISO 9000 beweging, die deels mislukte door het creëren van papieren tijgers, wordt nu het Capability Maturity Model (CMM) populair. Het besef dat goede procedures en vakmanschap een noodzaak zijn voor die gewenste creativiteit, groeit. En het begint er op te lijken dat de professionalisering van de ICT nu echt gaat aanslaan. En dat wordt tijd in een samenleving waarin ICT een steeds crucialere rol speelt.

Hoe begint zo'n volwassenheidstraject? Wel, heel logisch - je zult eerst moeten weten waar je staat en waar je naar toe wilt! Het maakt niet zoveel uit welk model je hanteert of welk stappenplan je gebruikt, als je maar energie in de organisatie weet los te maken. Het CMM-onderzoek ('CMM-assessment') is zo'n instrument waarmee je je plaats kunt bepalen, dat je kan helpen in het definiëren van je doelen en dat het mogelijk maakt die belangrijke energie los te krijgen. Het CMM-onderzoek kent een doorlooptijd van twee à drie weken en bestaat uit vier stappen.

Initiatie en Voorbereiding
De eerste stap van een CMM-onderzoek is het bepalen van het doel en de omvang van de ICT-bedrijfsdoorlichting. Wil men uiteindelijk efficiënter werken; projecten binnen tijd en budget realiseren? Is het dus de start van een professionaliserings-traject? Of is CMM louter bedoeld als een commercieel instrument, om een mooi plaatje voor de buitenwereld te maken? Hiervoor is het CMM-onderzoek in feite niet bedoeld. In het eerste geval, professioneler werken, is betrokkenheid van het management een noodzakelijke voorwaarde. Een CMM-onderzoek heeft alleen zin als het management bereid is wat met de resultaten te doen. En betrokkenheid wordt pas zichtbaar als men bereid is in het verbeteringstraject te investeren. In overleg met het management wordt afgesproken op welke niveaus van het CMM we ons richten, welke projecten aan het onderzoek meedoen en welke medewerkers van de ICT-afdeling deel uit maken van het onderzoeksteam. In deze aanpak gaat de voorkeur uit naar een team bestaande uit twee externe consultants en twee medewerkers van de organisatie, die het vervolgtraject - het uitwerken van de verbeteringsvoorstellen - gaan trekken. Maar in feite wordt de omvang van het onderzoeksteam bepaald door de omvang van de organisatie die wordt doorgelicht en de gewenste doorlooptijd. De geselecteerde projecten moeten representatief zijn voor de organisatie en in verschillende stadia van de projectlevenscyclus verkeren. Bij een gemiddeld grote ICT-organisatie, zo tussen de vijftig en honderdvijftig man, kiezen we vijf à zes projecten. De voorbereiding wordt afgesloten met een presentatie aan alle medewerkers van de ICT-afdeling, die daarmee een duidelijk beeld krijgen van wat er gaat gebeuren. De eerste stap om energie te creëren voor het verbetertraject. Die eerste stap mag nooit worden overgeslagen, omdat er anders al gaten in het draagvlak zijn geslagen.

Onderzoek
Het onderzoek zelf begint met het invullen van een uitvoerige vragenlijst door de projectleiders van de geselecteerde projecten. Vaak worden daarbij vragenlijst zoals deze door het SEI (Sofware Engineering Institute) zijn opgesteld. De enquêteresultaten zijn invoer om een eerste beeld van de organisatie te verkrijgen en de interviews voor te bereiden. Mensen op diverse niveaus in de organisatie worden geïnterviewd. Meestal voeren twee interviewteams de interviews parallel uit. Elk interview duurt circa anderhalf uur. Projectleiders en management worden individueel geïnterviewd; voor de projectmedewerkers en de specialisten worden enkele groepssessies georganiseerd. Die groepssessies zijn altijd heel bijzondere bijeenkomsten omdat daar meestal heel veel ideeën uit voortkomen in een relatief korte tijd. Naast de interviews wordt ook een documentatiestudie uitgevoerd, waarbij steekproeven worden genomen uit de projectdocumentaties en het eventueel aanwezige kwaliteitssysteem.

Feedback
Na de interviews worden de resultaten op een rijtje gezet, waarbij het Capability Maturity Model het referentiekader is. Op welke punten scoort de organisatie goed en welke zaken kunnen verbeterd worden? De indrukken van het onderzoeksteam worden gepresenteerd aan de medewerkers, bij voorkeur in een bijeenkomst zonder het management zodat d
De medewerkers zich niet belemmerd voelen in het leveren van commentaar. Verwarmend is elke keer de openheid van de medewerkers en de veelal zeer goede inzichten in de punten waarop de organisatie zich kan verbeteren.

Analyse en rapportage
De resultaten van het onderzoek worden nader geanalyseerd en er wordt een 'foto' van de organisatie gemaakt: wat zijn de sterke en wat zijn de zwakke punten? Hoe staat de organisatie op de CMM-ladder? Wat opvalt is dat organisaties nooit alleen maar aspecten van één CMM-niveau vertonen. Een organisatie die tegen niveau 2 aan zit, heeft altijd ook enkele elementen van niveau 3 ingevuld en soms zelfs van niveaus 4 en 5. Ook valt op dat in veel organisaties de softwarekwaliteitsborging matig tot slecht is. Op basis van de 'foto' worden verbeteringsvoorstellen opgesteld. Ook hierbij is het CMM de kapstok. Maar de eigenaardigheden van de organisatie bepalen de inkleuring van de voorstellen. Deze voorstellen worden eerst gepresenteerd aan de medewerkers die aan de enquête en de interviews hebben meegedaan. Meestal leidt dit tot aanscherping van enkele voorstellen, en altijd eindigt deze bijeenkomst in een 'commitment' van de medewerkers aan het verbetertraject. De eindrapportage vindt allereerst plaats via een presentatie aan het management, dat zijn commentaar kan leveren. Daarna worden de resultaten gepresenteerd aan alle medewerkers van de ICT-organisatie. Dit zijn vaak boeiende sessies waarin soms nog wel eens wat loskomt. Meestal weet men, vaak niet uitgesproken, in hoofdlijnen wel hoe het er voor stond. Er wordt als het ware een spiegel voorhouden met zo'n onderzoek. En via de feedback-sessies wordt de juistheid van de bevindingen bevestigd.

Actieplannen
De verbeteringsvoorstellen zijn nog van algemene aard en nog niet gedetailleerd genoeg voor een organisatie om concreet aan de slag te gaan. Daarom wordt het onderzoek meestal aangevuld met het opstellen van concrete actieplannen. Hier wordt de relatie gelegd met de bedrijfsdoelstellingen. Daarbij is de incrementele aanpak, waarbij de verbetervoorstellen in korte verbetertrajecten worden opgedeeld sterk aan te bevelen. Het maakt het project, want dat is het, beter bestuurbaar en houdt het 'commitment' van management en werkvloer vast. Resultaten van iedere verbeteractie zijn binnen zes tot acht weken zichtbaar. Bijsturing, indien nodig, kan direct plaatsvinden. En wat is er mooier dan na zes tot acht weken al een eerste resultaat direct toe te passen? Een typische niveau-1-organisatie kan, om niveau 3 te halen, wel eens circa veertig tot vijftig stapjes moeten nemen, deels parallel uit te voeren. De ervaring heeft geleerd dat een brede frontale aanpak van het software-verbeteringsproces, bijvoorbeeld met dertien tegelijkertijd startende werkgroepen, tot mislukking leidt. Het project blijft namelijk lange tijd onzichtbaar en de besturing is dan erg lastig. Het onderzoek wordt formeel afgesloten met de overhandiging van het onderzoeksrapport aan het management. Het onderzoeksteam draagt de resultaten over aan het 'verbeterteam' en sluit het CMM-onderzoek af met een evaluatie en het vastleggen van diverse statistieken.

Twee jaar
CMM-onderzoeken zijn bedoeld om de organisatie een spiegel voor te houden. Waar staat de organisatie en wat is er allemaal nodig om volwassener te worden. Het CMM-onderzoek kent geen certificatie, zoals bij ISO 9000 het geval is. Het gaat ook niet om een papiertje, maar om de start van een verbetertraject, waar iedereen achter staat.

Uit ervaringcijfers blijkt dat alle onderzochte bedrijven in Nederland op niveau 1 of 2 zitten. Een niveau-3-bedrijf is in Nederland nog niet mogen aangetroffen. Dat wil niet zeggen dat die er niet zijn. Zo is er een Indiaas bedrijf dat binnenkort voor niveau 4 gaat en in het CMM-boek staat het Space Shuttle project beschreven als een level-5 organisatie. Daar werd duidelijk zichtbaar wat goede procedures en vakmanschap betekenen. Geen bureaucratie maar ruimte voor de creativiteit! In het algemeen duurt het ongeveer twee jaar om niveau 2 te bereiken. Dat heeft vooral te maken met een mentaliteitsomslag. Het bereiken van niveau 3 kost relatief minder tijd. Een en ander is natuurlijk wel afhankelijk van de investeringen die men wil plegen. Want de kost gaat voor de baat uit! Er zijn ook onderzoeken die niet succesvol afgerond worden. Soms blijkt aan het eind van het onderzoek dat het 'commitment' van het management ontbreekt, waardoor niemand van de werkvloer in een vervolgtraject geloofd. Het kan ook zijn dat het bedrijf midden in het traject verkocht wordt waardoor het 'commitment' van het management ook geheel weg valt. Opvallend is hoe snel in relatief korte tijd een nauwkeurige 'foto' van de ICT-organisatie te maken is. Een foto waar iedere medewerker zich in herkent. Opvallend is ook dat door de vele interviews, de terugkoppelingen naar de medewerkers en de mate waarin men kan meedenken veel energie voor de vervolgacties loskomt. Het is zaak deze energie vast te houden en te richten. Maar dat is een volgend verhaal...

De Fasen van CMM

Het in Amerika ontwikkelde Capability Maturity Model (CMM) geeft aan hoe via gerichte stappen automatiseringsprocessen te verbeteren zijn. Uitgangspunt is dat men continu bezig moet zijn met de verbetering van het maakproces.
Het CMM veronderstelt dat de uitvoering van projecten door een onderneming in een bepaald stadium van volwassenheid verkeert. Het model onderkent vijf niveaus van volwassenheid, de zogenaamde 'maturity levels':

1. Initieel
Een organisatie bevindt zich op niveau 1 als nog onbekend is hoe een proces in elkaar zit en hoeveel hulpmiddelen er nodig zijn om een resultaat te bereiken. Planningen lopen meestal uit, budgetten worden overschreden. Procesverbetering is niet systematisch.

2. Herhaalbaar
Het proces is onder normale omstandigheden voorspelbaar in termen van tijd en geld. Bij invoering van nieuwe technologieën of methoden valt men nog terug op niveau 1.

3. Gedefinieerd
Het proces is gedefinieerd en onder controle. Ook bij afwijking van de normale omstandigheden kan goed worden gereageerd. Procesverbetering vindt plaats op basis van een kwalitatieve analyse.

4. Beheerst
Er wordt systematisch aan het proces gemeten om afwijkingen vroegtijdig te constateren en te verbeteren. Procesverbetering vindt plaats op basis van kwantitatieve analyse.

5. Optimaliserend
Systematische procesverbetering op basis van metingen is een geïntegreerd onderdeel geworden van de bedrijfsvoering. Nieuwe technologieën kunnen beheerst worden ingevoerd.

Als een onderneming weet welk volwassenheidsniveau zij heeft, is aan te geven welke activiteiten van belang zijn om het software engineerings-proces te verbeteren en welke sterke punten uitgebuit kunnen worden om een volgend volwassenheidsniveau te bereiken.

De evolutie van CMM

In november 1986 is de SEI (Software Engineering Institute) begonnen met het ontwikkelen van een raamwerk.

Het CMM-boek
De eerste versie van CMM is gepubliceerd in 1991. Daarna is het verbeterd en opnieuw uitgebracht in versie 1.1 uit 1994. Het bekende boek met richtlijnen voor verbetering van het software process is inmiddels in een 8e druk uitgebracht in 1997.