Hva er CMM?
Capability Maturity Model brukes som målestokk for å måle modenheten til en organisasjons programvareprosess.
CMM ble utviklet på Software engineering instituttet på slutten av 80-tallet. Den ble utviklet som et resultat av en studie finansiert av US Air Force som en måte å evaluere arbeidet til underleverandører på. Senere basert på CMM-SW-modellen opprettet i 1991 for å vurdere modenheten til programvareutvikling, er flere andre modeller integrert med CMM-I de er
I denne veiledningen vil vi lære,
- Hva er CMM-nivåer (Capability Maturity Model)?
- Hva skjer på forskjellige nivåer av CMM?
- Hvor lang tid tar det å implementere CMM?
- Intern struktur av CMM
- Begrensninger for CMM-modeller
- Hvorfor bruke CMM?
Hva er CMM-nivåer (Capability Maturity Model)?
- Første
- Gjentasbar / administrert
- Definert
- Kvantitativt administrert
- Optimalisering
Hva skjer på forskjellige nivåer av CMM?
Nivåer | Aktiviteter | fordeler |
---|---|---|
Nivå 1 Initial |
| Ingen. Et prosjekt er Total Chaos |
Nivå 2 administrert |
|
|
Nivå 3 definert |
|
|
Nivå 4 Kvantitativt administrert |
|
|
Nivå 5 Optimalisering |
|
|
Følgende diagram gir en billedlig fremstilling av hva som skjer på forskjellige CMM-nivå
Hvor lang tid tar det å implementere CMM?
CMM er den mest ønskelige prosessen for å opprettholde kvaliteten på produktet for ethvert programvareutviklingsselskap, men implementeringen tar litt lenger tid enn forventet.
- CMM-implementering skjer ikke over natten
- Det er bare ikke bare et "papirarbeid."
- Typiske tider for implementering er
- 3-6 måneder -> for klargjøring
- 6-12 måneder -> for gjennomføring
- 3 måneder -> for utarbeidelse av vurdering
- 12 måneder -> for hvert nye nivå
Intern struktur av CMM
Hvert nivå i CMM er definert i sentralt prosessområde eller KPA , bortsett fra nivå 1. Hver KPA definerer en klynge av relaterte aktiviteter, som når de utføres samlet, oppnår et sett med mål som anses viktige for å forbedre programvarekapasiteten
For forskjellige CMM-nivåer er det sett med KPA-er, for eksempel for CMM-modell 2, er KPA
- REQM- Kravstyring
- PP- Prosjektplanlegging
- PMC- Prosjektovervåking og kontroll
- SAM- Leverandøravtalehåndtering
- PPQA-prosess og kvalitetssikring
- CM-Configuration Management
På samme måte, for andre CMM-modeller, har du spesifikke KPA-er. For å vite om implementering av en KPA er effektiv, varig og repeterbar, blir den kartlagt på følgende basis
- Forpliktelse til å utføre
- Evne til å utføre
- Aktiviteter utfører
- Måling og analyse
- Verifiserer implementering
Begrensninger for CMM-modeller
- CMM bestemmer hva en prosess skal adressere i stedet for hvordan den skal implementeres
- Det forklarer ikke alle muligheter for forbedring av programvareprosessen
- Den konsentrerer seg om programvareproblemer, men vurderer ikke strategisk forretningsplanlegging, vedta teknologier, etablere produktlinje og administrere menneskelige ressurser
- Den forteller ikke hva slags virksomhet en organisasjon skal være i
- CMM vil ikke være nyttig i prosjektet som har en krise akkurat nå
Hvorfor bruke CMM?
I dag fungerer CMM som et "godkjenningsstempel" i programvarebransjen. Det hjelper på forskjellige måter å forbedre programvarekvaliteten.
- Den guider mot repeterbar standardprosess og reduserer dermed læringstiden for hvordan du får ting gjort
- Å praktisere CMM betyr å øve på standardprotokoll for utvikling, noe som betyr at det ikke bare hjelper teamet å spare tid, men også gir et klart bilde av hva de skal gjøre og hva de kan forvente
- Kvalitetsaktivitetene passer godt sammen med prosjektet enn tenkt på som en egen begivenhet
- Det fungerer som pendler mellom prosjektet og teamet
- CMM-arbeidet er alltid mot forbedring av prosessen
Sammendrag
CMM ble først introdusert på slutten av 80-tallet i US Air Force for å evaluere arbeidet til underleverandører. Senere, med forbedret versjon, ble den implementert for å spore kvaliteten på programvareutviklingssystemet.
Hele CMM-nivået er delt inn i fem nivåer.
- Nivå 1 (innledende): Der kravene til systemet vanligvis er usikre, misforstått og ukontrollerte. Prosessen er vanligvis kaotisk og ad-hoc.
- Nivå 2 (administrert): Beregn prosjektkostnad, tidsplan og funksjonalitet. Programvarestandarder er definert
- Nivå 3 (definert): Sørger for at produktet oppfyller kravene og tiltenkt bruk
- Nivå 4 (Kvantitativt administrert): Styrer prosjektets prosesser og delprosesser statistisk
- Nivå 5 (modenhet): Identifiser og distribuer nye verktøy og prosessforbedringer for å møte behov og forretningsmål