Ohjelmistokehityksen kypsyysmalli (CMM)
⚡ Älykäs yhteenveto
Kyvykkyysmalli (CMM) on mittari, jota käytetään mittaamaan organisaation ohjelmistoprosessien kypsyyttä. Software Engineering Instituten kehittämä malli määrittelee viisi tasoa, jotka ohjaavat tiimejä kaoottisesta ja satunnaisesta työstä kohti jatkuvaa ja optimoitua parantamista.
Mikä on CMM?
Kykykypsyysmalli käytetään vertailuarvona organisaation ohjelmistoprosessin kypsyyden mittaamiseen.
CMM kehitettiin Software Engineering Institutessa 80-luvun lopulla. Se kehitettiin Yhdysvaltain ilmavoimien rahoittaman tutkimuksen tuloksena keinona arvioida sukellusveneiden työtä.tracTors. LaterVuonna 1991 luodun ohjelmistokehityksen kypsyyden arvioimiseksi tarkoitetun CMM-SW-mallin pohjalta CMM-I:hen integroitiin useita muita malleja.
Mitä ovat Capability Maturity Model (CMM) -tasot?
Malli määrittelee viisi asteittaista kypsyystasoa:
- Ensimmäinen
- Toistettavissa/hallittu
- Määritelty
- Määrällisesti hallinnoitu
- Optimointi
Mitä tapahtuu CMM:n eri tasoilla?
Alla oleva taulukko erittelee kunkin tason toiminnot ja edut.
| Tasot | Toiminta | Hyödyt |
|---|---|---|
| Taso 1 Alkuperäinen |
|
Ei mitään. Projekti on täydellinen kaaos. |
| Taso 2 Hallittu |
|
|
| Taso-3 määritelty |
|
|
| Taso 4 määrällisesti hallinnoitu |
|
|
| Tason 5 optimointi |
|
|
Seuraava kaavio havainnollistaa, mitä tapahtuu eri CMM-tasoilla:
Kuinka kauan CMM:n käyttöönotto kestää?
CMM on halutuin prosessi tuotteen laadun ylläpitämiseksi mille tahansa ohjelmistokehitysyritykselle, mutta sen käyttöönotto vie hieman odotettua kauemmin.
- CMM:n käyttöönotto ei tapahdu yhdessä yössä.
- Se ei ole pelkkää "paperityötä".
- Tyypillisiä käyttöönottoaikoja ovat:
- 3-6 kuukautta -> valmistelua varten
- 6-12 kuukautta -> täytäntöönpanoa varten
- 3 kuukautta -> arvioinnin valmistelua varten
- 12 kuukautta -> jokaiselle uudelle tasolle
CMM:n sisäinen rakenne
Jokainen CMM:n taso on määritelty avainprosessialue tai KPA, lukuun ottamatta tasoa 1. Jokainen KPA määrittelee joukon toisiinsa liittyviä toimintoja, jotka yhdessä suoritettuina saavuttavat joukon tavoitteita, joita pidetään elintärkeinä ohjelmiston kyvykkyyden parantamiseksi.
Eri CMM-tasoille on olemassa joukkoja KPA:ita. Esimerkiksi CMM-mallissa 2 KPA:t ovat:
- REQM – Vaatimustenhallinta
- PP – Projektisuunnittelu
- PMC – Projektin seuranta ja hallinta
- SAM – Toimittajasopimusten hallinta
- PPQA – Prosessi- ja laadunvarmistus
- CM – Konfiguraation hallinta
Samoin muissa CMM-malleissa on tiettyjä avainasemassa olevia tavoitteita (KPA). Jotta tiedetään, onko avainaseman toteutus tehokasta, kestävää ja toistettavaa, se kartoitetaan seuraavien perusteiden perusteella:
- Sitoutuminen suoritukseen
- Kyky suorittaa
- Suoritetut toiminnot
- Mittaus ja analyysi
- Toteutusta tarkistetaan
CMM-mallien rajoitukset
Mallilla on myös useita rajoituksia:
- CMM määrittää, mihin prosessin tulisi puuttua, sen sijaan, miten se tulisi toteuttaa.
- Se ei selitä kaikkia ohjelmistoprosessien parantamisen mahdollisuuksia.
- Se keskittyy ohjelmistoasioihin, mutta ei ota huomioon strategista liiketoimintasuunnittelua, teknologioiden käyttöönottoa, tuotelinjan perustamista tai henkilöstöresurssien hallintaa.
- Se ei kerro, millaista liiketoimintaa organisaation tulisi harjoittaa.
- CMM:stä ei ole hyötyä projektissa, jossa on juuri nyt kriisi.
Miksi käyttää CMM:ää?
Nykyään CMM toimii ohjelmistoalalla eräänlaisena hyväksyntämerkkinä. Se auttaa monin tavoin parantamaan ohjelmistojen laatua.
- Se ohjaa kohti toistettavissa olevaa standardiprosessia ja siten vähentää asioiden tekemisen oppimiseen kuluvaa aikaa.
- CMM:n harjoittelu tarkoittaa kehitystyön vakioprotokollan harjoittelua, mikä tarkoittaa, että se paitsi auttaa tiimiä säästämään aikaa, myös antaa selkeän kuvan siitä, mitä tehdä ja mitä odottaa.
- Laadukkaat aktiviteetit sopivat hyvin osaksi projektia sen sijaan, että niitä pidettäisiin erillisenä tapahtumana.
- Se toimii viestinvälittäjänä projektin ja tiimin välillä.
- CMM:n pyrkimykset ovat aina prosessin parantamiseen.




