Capability Maturity Model (CMM) förklaras på 5 minuter eller mindre

Capability Maturity Model (CMM) är ett effektivt och enklare sätt att skala flera funktioner i ditt företag.

För att driva ett företag, styra ett system eller hantera en grupp är det en viktig aspekt att förstå kapaciteten.

När du väl har begränsat ditt företags olika funktioner måste du bedöma prestandan för alla dessa funktioner. Enligt det sätter du standarder och mål för din verksamhet.

Så för att mäta och kontrollera prestanda och arbetsframsteg för varje funktion och individ måste entreprenörer och företagsledare ha en solid lösning och fånga den.

På så sätt kan ett företag utveckla system som kan ta bördan av komplexitet och ge den precision som behövs för att skala.

Det är här CMM kommer in i bilden.

I den här artikeln kommer jag att diskutera vad CMM och CMMI är, deras nivåer och skillnaderna mellan dem.

Låt oss börja!

Vad är Capability Maturity Model?

Capability Maturity Model (CMM) är en enkel metod som används för att skapa och förfina en organisations applikationsutvecklingsprocess. Detta gör det möjligt för utvecklare att utveckla och förbättra mjukvaruutvecklingsprocessen, vilket resulterar i högre konsekvens och effektivitet.

Oavsett vilken roll du har tilldelats i utvecklingsteamet, kan du bekanta dig med CMM hjälpa dig att öka din prestation. Således kan du säga att CMM är en metod som hjälper till att utvärdera, utveckla och förbättra mjukvaruutvecklingsprocessen.

CMM beskriver primära procedurer för mjukvaruutveckling och andra prinsessor som genomgår ingenjörskonst, ledning och planering. Den förutsätter att en regelbunden förbättringsprocess kan uppnås via små tecken på framsteg istället för större genombrott.

Dessutom erbjuder det ett ramverk för att hantera mindre tecken till olika mognadsnivåer för att tillhandahålla en plattform för kontinuerlig förbättring av mjukvaruutvecklingsprocessen. Därför fungerar denna metod som hjärtat i ledningssystem speciellt utformade för att förbättra utvecklingskvaliteten för produkter och tjänster tillsammans med deras leveranser.

CMM utvecklades och marknadsfördes av SEI (Software Engineering Institute), ett FoU-center som sponsras av US DOD. Det är nu en del av Carnegie Mellon University. SEI grundades först år 1984 för att ta itu med olika programvaruproblem och föra fram mjukvarumetoder.

SEI etablerades för att optimera utvecklingen, förvärvet och underhållsprocessen av kraftigt reserverade system för programvara för försvarsdepartementet (DOD). Den förespråkar branschcentrerad adoption av den framväxande CMM, dvs. CMM Integration (CMMI).

Varför behöver du CMM?

CMM har många styrkor, och den mest användbara fördelen med att använda denna metod är dess förmåga att spara tid och pengar. Detta beror på att systemet är perfekt designat för att känna till defekterna i förbättringsprocessen mer effektivt än andra modeller.

Dessutom förbättrar CMM affärsprocesser och minskar också den plötsliga förändringen i produktionsscheman. Eftersom CMM var den första modellen designad för att förbättra den industriella processen, kan den vara grundstenen för andra modellskapelser, som den förbättrade versionen av CMM (dvs. CMMI), Business Capability Maturity Model (BCMM) och mer.

CMM är en ganska flexibel modell för alla processer och marknader. Oavsett vilken sektor du tillhör, om du har ett utvecklingsteam kan medlemmarna använda modellen för att åtgärda fel i processen.

Fem mognadsnivåer i CMM

De fem nivåerna av Capability Maturity Model (CMM) i utvecklingsprocessen är:

#1. Initial nivå

På den här nivån är processerna inte i rätt ordning. Det kan till och med vara kaotiskt ibland. Här beror framgången på den enskilda medlemmens ansträngningar och anses inte vara en process som kan upprepas. Detta beror bara på att processen inte är tillräckligt väl dokumenterad och definierad för att den kan replikeras.

Processer som följs är omogna och Adhoc som är en instabil miljö för din mjukvaruutveckling. Dessutom finns det ingen grund för att förutsäga produktens kvalitet och dess tid för färdigställande.

#2. Repeterbar

På denna nivå är de nödvändiga processerna väletablerade, dokumenterade och definierade. Som ett resultat är projektledningstekniker korrekt etablerade och framgången kanske inte upprepas i vissa viktiga processområden.

Den repeterbara nivån kan uppnås genom att fastställa några grundläggande principer för projektledning. Erfarenhet av tidigare projekt används för att leda liknande projekt. Det inkluderar att definiera nödvändiga resurser, mål, begränsningar och mer för projektet.

Denna nivå presenterar en detaljerad plan som måste följas ordentligt för ett framgångsrikt slutförande av kvalitetsmjukvara. Det primära målet är att bibehålla produktens prestanda, såsom dess komponent, under hela programvarans livscykel.

Den repeterbara nivån inkluderar även kundfeedback och granskningshantering, vilket kan leda till vissa förändringar i det uppställda kravet. Denna kravhantering består av att anpassa de ändrade kraven.

Vidare fokuserar underleverantörshantering på ledning av kvalificerade entreprenörer för mjukvaruutveckling. Detta innebär att den hanterar vissa programvarudelar som utvecklats av tredje part. Kvalitetssäkring av programvara garanterar en kvalitetsprodukt med vissa regler och standardriktlinjer under utvecklingsprocessen.

#3. Definierad

Dokumentation av riktlinjer och rutiner sker på denna nivå. Det är en väldefinierad uppsättning mjukvaruutvecklingsprocesser och hantering. Detta inkluderar:

  • Peer reviews: I den här metoden måste defekter tas bort med en mängd olika granskningsprocesser som inspektioner, kompiskontroller, genomgångar, etc.
  • Intergruppsamordning: Denna metod består av interaktioner mellan flera utvecklingsteam för att säkerställa korrekt och effektiv uppfyllelse av behov.
  • Organisationsprocessdefinition: Metoden fokuserar på utveckling och underhåll av mjukvaruutvecklingsprocesser.
  • Organisationsprocessfokus: Detta inkluderar praxis och aktiviteter som måste följas för att förbättra organisationens processkapacitet.
  • Utbildningsprogram: Utbildningsprogram fokuserar på kunskaps- och kompetenshöjning hos teammedlemmarna och säkerställa en förbättring av arbetseffektiviteten.

#4. Hanterade

På denna nivå ställs kvantitativa mål upp för mjukvaruproduktens kvalitet och mjukvaruprocesser i en organisation. De mätningar som görs gör det möjligt för organisationen att förutsäga processen och produktkvaliteten inom de gränser som definieras kvantitativt.

Denna nivå inkluderar strategier och planer som upprättats för att utveckla och förstå kvantitativ analys och produktkvalitet. Den fokuserar också på att hantera projektprestanda.

#5. Optimerande

Detta är det sista stadiet av processmognad i CMM som enbart fokuserar på kontinuerlig förbättring av utvecklingsprocesser i organisationen via kvantitativ feedback. Detta görs genom att använda tekniker, utvärdering och verktyg för mjukvaruprocesser för att förhindra upprepning av kända defekter.

Denna nivå inkluderar:

  • Process change management: Denna förvaltningsprocess fokuserar på kontinuerlig förbättring av processerna för mjukvaruutveckling. Detta förbättrar kvalitet, cykeltid och produktivitet för mjukvaruprodukten.
  • Teknikförändringshantering: Den består av användning av teknologier och identifieringstekniker för att förbättra produktens kvalitet och minimera utvecklingstiden.
  • Defektförebyggande: Defektförebyggande kan göras genom att identifiera orsaken till defekterna och förhindra att dessa defekter återkommer i nästa projekt. Detta förbättrar projektdefinierade processer.

Capability Mognadsmodell Integration

Capability Maturity Model Integration (CMMI) är en enkel processmodell som organisationer kan använda för att förbättra utvecklingsprocesser, öka effektiva beteenden och förbättra produktiviteten i arbetsflödet samtidigt som de utvecklar en produkt, tjänst eller projekt. Detta resulterar i att riskerna minskar under hela processen.

CMMI utvecklades och introducerades av Carnegie Mellon University. Den primära avsikten med denna utveckling är att öka effektiviteten och användbarheten av mognadsmodeller som kan mäta en organisations förmåga att ha en pågående förbättring inom vissa områden. Detta kan bara ske genom att integrera flera modeller i ett enda ramverk.

Den första versionen släpptes 2002 och nästa version släpptes 2006. 2010 dök version 1.3 upp och den senaste versionen 2.0 lanserades 2018, vilket kom med olika förändringar som att göra den mer tillgänglig, effektiv osv. ., för företag.

CMMI köptes av ISACA (tidigare känt som Information Systems Audit and Control Association), som äger certifieringar som COBIT-ramverket. CMMI är en process- och beteendemodell som hjälper organisationer genom hela utvecklingsprocessen av produkter eller tjänster.

Målet med CMMI är således ganska tydligt. Det används för att förbättra kvaliteten på tjänsten eller produkten genom att följa den modell som uppfyller kundernas förväntningar och ökar värdet på en organisation på marknaden. Den utvärderar också ditt företags rykte och värdet av intressenter i branschen.

CMMI tar för närvarande upp följande intresseområden:

  • CMMI för utveckling: Det är för att utveckla produkter och tjänster.
  • CMMI för tjänster: Det är för tjänstetablering, leverans och hantering.
  • CMMI för förvärv: Det innebär förvärv av produkter och tjänster.

Representation av CMMI

CMMI-representation låter en organisation sträva efter en uppsättning förbättringsmål. Det finns två representationer:

Iscensatt representation

  • Den använder en definierad uppsättning utvecklingsprocessområden för att beskriva förbättringsvägen.
  • Det ger en rad förbättringar, där varje del av serien fungerar som en struktur för nästa förbättring.
  • Den definierar en förbättrad väg med hjälp av mognadsnivåer. Och mognadsnivån berättar om mognaden i olika processer i organisationen.
  • Det möjliggör jämförelser mellan olika organisationer för olika mognadsnivåer.

Kontinuerlig representation

  • Det möjliggör val av särskilda processområden.
  • Den använder kapacitetsnivåer för att mäta förbättringen av den individuella processen.
  • Dessutom tillåter det jämförelser mellan organisationer baserat på processområde för processområde.
  • Kontinuerlig representation tillåter också organisationer att välja mellan olika processer för bättre förbättringar.
  • I denna representation kan organisationer bättre uppfylla sina mål och minska risker genom att välja förbättringsordning för olika processer.

Stadier i CMMI

Det finns fem mognadsstadier i CMMI med stegvis representation:

#1.Initial: På den här nivån är utvecklingsprocesser dåligt kontrollerade eller hanterade. Det innebär också oförutsägbara resultat av utvecklingsprocesserna. Dessutom används kaotiska och ad hoc-metoder. Du kommer inte att hitta några definierade nyckelprocessområden (KPA). Kvaliteten är inte så bra, och produkten eller tjänsterna löper den högsta risken.

#2. Hanteras: I detta mognadsstadium hanteras kraven på rätt sätt och utvecklingsprocesser kontrolleras och planeras. Här hanteras och genomförs projektet korrekt enligt de dokumenterade planerna. Risken finns dock fortfarande men är lägre än den initiala nivån.

#3.Definierat: På den definierade mognadsnivån är utvecklingsprocesserna väl beskrivna och karakteriserade med hjälp av korrekta procedurer, standarder, verktyg och metoder. Kvaliteten du hittar är av medelhög kvalitet, och risken är också medelhög.

#4.Kvantitativt hanterad: I denna modell sätts de kvantitativa målen för kvalitets- och prestationsprocesser. Det är baserat på organisationens behov, kundkrav med mera. Processprestandamåtten analyseras kvantitativt. Här hittar du processer av högre kvalitet till lägre risk.

#5.Optimering: Detta är det sista steget i mognadsmodellen som innebär ständiga förbättringar av prestanda och processer. Förbättringen av denna nivå är både innovativ och inkrementell. Processerna och prestationerna är av högre kvalitet och risken är lägst.

Kapacitetsnivåer för CMMI

En kompetensnivå berättar om relevant praxis för ett visst processområde för att förbättra en organisations processer relaterade till processområdet. Det finns sex kapacitetsnivåer för CMMI-modeller:

  • Kapacitetsnivå 0 (Ofullständig): Den inkluderar ofullständiga, partiella och ej utförda processer. På den här nivån finns det inga generella mål.
  • Kapacitetsnivå 1 (Utförd): Processprestandan är inte stabil på denna nivå. Mål för kostnad, tidsplan och kvalitet uppfylls inte. Nivå 1-processen måste utföra specifika metoder.
  • Kapacitetsnivå 2 (Managed): Processen övervakas, kontrolleras och planeras på denna nivå. Här är målen både modell och andra som kvalitet, schema och kostnad. Organisationen behöver hantera processer aktivt med hjälp av mätetal.
  • Kapacitetsnivå 3 (definierad): Det är en definierad nivå där processen hanteras väl och den uppfyller en uppsättning organisatoriska riktlinjer och standarder. Den fokuserar på processstandardisering.
  • Kapacitetsnivå 4 (Kvantitativt hanterad): Här styrs processen med kvantitativa och statistiska tekniker. På denna nivå förstås processprestanda i mått och statistiska termer.
  • Kapacitetsnivå 5 (Optimering): Denna nivå fokuserar på kontinuerlig förbättring av processprestanda. Prestanda förbättras på både innovativa och inkrementella sätt.

CMM vs. CMMI: Skillnad

CMMI är en uppdaterad eller nyare modell av CMM. SEI utvecklade CMMI för att standardisera och integrera CMM, som har olika modeller för varje funktion den täcker. Dessa modeller är inte synkroniserade; Att integrera dem gör processen flexibel och effektiv.

När det gäller nyckelprocessområden, praxis, mognadsnivåer och mål, liknar CMMI-strukturen CMM-strukturen. CMMI erbjuder dock två olika representationer av processerna.

Låt oss ta reda på några fler skillnader mellan CMM och CMMI:

CMMCMMICMM står för Capability Maturity Model, utvecklad år 1984. CMMI står för Capability Maturity Model Integration, utvecklad år 2006. Det är en beteendemodell som är utvecklad för att mäta mjukvaruutvecklingsprocesserna i en organisation. Det är den uppdaterade versionen av CMM-modellen som är mer uppgiftsorienterad och effektiv. Det primära syftet är att utvärdera mognadsnivåerna i mjukvaruutvecklingsprocessen. Det primära syftet är att kombinera olika programvarumodeller till en enda mjukvara och övervinna vissa CMM-nackdelar.CMM har fem steg: Initial, repeat, defined, managed och optimizedCMMI har fem steg: Initial, managed, definied, quantitatively managed, and optimized. CMM är mindre effektivt. CMMI är mer effektivt. Det är för processorienterat. Det är målinriktat.

Slutsats

Capability Maturity Model (CMM) är ett problemlösningssystem för mjukvaruutvecklingsprocesser i industrier. Detta kan rädda företag från att hantera processproblem.

Å andra sidan har CMMI en avancerad metodik än CMM. Det innebär att uppfylla kundernas förväntningar, värdesätta skapande, marknadsföringstillväxt, förbättra produkt- och tjänstekvaliteten och förbättra ryktet.

Du kan också utforska Application Lifecycle Management-ramverket som hjälper till att utveckla och leverera programvaran enligt schema, inom budget och av högsta kvalitet.