Capability Maturity Model (CMM) in Software Engineering
⚡ Slimme samenvatting
Het Capability Maturity Model (CMM) is een maatstaf die wordt gebruikt om de volwassenheid van het softwareproces van een organisatie te meten. Het model is ontwikkeld door het Software Engineering Institute en definieert vijf niveaus die teams begeleiden van chaotisch, ad-hoc werk naar continue, geoptimaliseerde verbetering.

Wat is CMM?
Vermogen volwassenheidsmodel wordt gebruikt als maatstaf om de volwassenheid van het softwareproces van een organisatie te meten.
CMM werd eind jaren 80 ontwikkeld aan het Software Engineering Institute. Het werd ontwikkeld als resultaat van een onderzoek, gefinancierd door de Amerikaanse luchtmacht, om het werk van onderaannemers te evalueren.tractoeren. LaterGebaseerd op het CMM-SW-model, dat in 1991 werd ontwikkeld om de volwassenheid van softwareontwikkeling te beoordelen, werden diverse andere modellen in CMM-I geïntegreerd.
Wat zijn Capability Maturity Model (CMM)-niveaus?
Het model definieert vijf progressieve rijpingsniveaus:
- Eerste
- Herhaalbaar/beheerd
- Bepaald
- Kwantitatief beheerd
- Het optimaliseren van
Wat gebeurt er op verschillende niveaus van CMM?
De tabel hieronder geeft een overzicht van de activiteiten en voordelen op elk niveau.
| Niveaus | Activiteiten | Voordelen: |
|---|---|---|
| Niveau 1 Initieel |
|
Geen. Een project is totale chaos. |
| Niveau 2 Beheerd |
|
|
| Niveau 3 gedefinieerd |
|
|
| Niveau 4 kwantitatief beheerd |
|
|
| Niveau 5 optimaliseren |
|
|
Het volgende diagram geeft een visuele weergave van wat er op verschillende CMM-niveaus gebeurt:
Hoe lang duurt het om CMM te implementeren?
CMM is het meest wenselijke proces om de productkwaliteit te waarborgen voor elk softwareontwikkelingsbedrijf, maar de implementatie ervan duurt iets langer dan verwacht.
- De implementatie van CMM vindt niet van de ene op de andere dag plaats.
- Het is niet zomaar "papierwerk".
- De gebruikelijke implementatietijden zijn:
- 3-6 maand -> ter voorbereiding
- 6-12 maand -> voor implementatie
- 3 maanden -> voor beoordelingsvoorbereiding
- 12 maanden -> voor elk nieuw niveau
Interne structuur van CMM
Elk niveau in CMM wordt gedefinieerd in een sleutelprocesgebied of KPA, met uitzondering van niveau 1. Elke KPA definieert een cluster van gerelateerde activiteiten die, wanneer ze gezamenlijk worden uitgevoerd, een reeks doelen bereiken die essentieel worden geacht voor het verbeteren van de softwarefunctionaliteit.
Voor verschillende CMM-niveaus zijn er sets KPA's. Voor CMM-model 2 zijn de KPA's bijvoorbeeld:
- REQM – Vereistenbeheer
- PP – Projectplanning
- PMC – Projectmonitoring en -controle
- SAM – Leveranciersovereenkomstbeheer
- PPQA – Proces- en kwaliteitsborging
- CM – Configuratiebeheer
Ook voor andere CMM-modellen gelden specifieke KPA's. Om te bepalen of de implementatie van een KPA effectief, duurzaam en herhaalbaar is, wordt deze op de volgende basis in kaart gebracht:
- Engagement om te presteren
- Vermogen om te presteren
- Uitgevoerde activiteiten
- Meting en analyse
- Het verifiëren van de implementatie
Beperkingen van CMM-modellen
Het model kent echter ook een aantal beperkingen:
- CMM bepaalt wat een proces moet aanpakken, in plaats van hoe het moet worden geïmplementeerd.
- Het beschrijft niet alle mogelijkheden voor verbetering van softwareprocessen.
- Het richt zich op softwarekwesties, maar houdt geen rekening met strategische bedrijfsplanning, het implementeren van technologieën, het opzetten van een productlijn en het beheren van personeel.
- Het zegt niets over wat voor soort bedrijf een organisatie zou moeten zijn.
- CMM zal niet nuttig zijn in een project dat zich momenteel in een crisis bevindt.
Waarom CMM gebruiken?
Tegenwoordig fungeert CMM als een soort keurmerk in de software-industrie. Het draagt op verschillende manieren bij aan de verbetering van de softwarekwaliteit.
- Het leidt tot een herhaalbaar standaardproces en verkort daardoor de leertijd voor het uitvoeren van taken.
- Het toepassen van CMM betekent het volgen van een standaardprotocol voor de ontwikkeling. Dit bespaart het team niet alleen tijd, maar zorgt ook voor een duidelijk beeld van wat er moet gebeuren en wat er verwacht kan worden.
- De kwaliteitsactiviteiten sluiten goed aan op het project en worden niet als een losstaand evenement beschouwd.
- Het fungeert als communicatiemiddel tussen het project en het team.
- De inspanningen van CMM zijn altijd gericht op het verbeteren van het proces.



