Das Capability Maturity Model (CMM) ist ein effektiver und einfacher Weg, mehrere Funktionen Ihres Unternehmens zu skalieren.
Um ein Unternehmen zu führen, ein System zu steuern oder eine Gruppe zu verwalten, ist das Verständnis der Fähigkeiten ein wesentlicher Aspekt.
Sobald Sie die verschiedenen Funktionen Ihres Unternehmens eingegrenzt haben, müssen Sie die Leistung all dieser Funktionen bewerten. Auf dieser Grundlage legen Sie Standards und Ziele für Ihr Unternehmen fest.
Um also die Leistung und den Arbeitsfortschritt jeder Funktion und jedes Einzelnen zu messen und zu kontrollieren, müssen Unternehmer und Unternehmensleiter eine solide Lösung haben und diese erfassen.
Auf diese Weise kann ein Unternehmen Systeme entwickeln, die die Last der Komplexität auf sich nehmen und die Präzision bieten, die für eine Skalierung erforderlich ist.
An dieser Stelle kommt CMM ins Spiel.
In diesem Artikel werde ich erläutern, was CMM und CMMI sind, welche Stufen sie haben und worin die Unterschiede zwischen ihnen bestehen.
Fangen wir an!
Was ist das Capability Maturity Model?
Das Capability Maturity Model (CMM) ist eine einfache Methodik, die zur Erstellung und Verfeinerung des Anwendungsentwicklungsprozesses eines Unternehmens verwendet wird. Dies ermöglicht es Entwicklern, den Softwareentwicklungsprozess zu entwickeln und zu verbessern, was zu mehr Konsistenz und Effizienz führt.
Unabhängig davon, welche Rolle Ihnen im Entwicklungsteam zugewiesen wurde, können Sie Ihre Leistung steigern, wenn Sie sich mit CMM vertraut machen. Man kann also sagen, dass CMM eine Methode ist, die hilft, den Softwareentwicklungsprozess zu bewerten, zu entwickeln und zu verbessern.

CMM skizziert primäre Verfahren für die Softwareentwicklung und andere Prozesse, die Engineering, Management und Planung durchlaufen. Es geht davon aus, dass ein regelmäßiger Verbesserungsprozess durch kleine Anzeichen von Fortschritt anstelle von größeren Durchbrüchen erreicht werden kann.
Darüber hinaus bietet sie einen Rahmen für die Verwaltung kleiner Anzeichen in verschiedenen Reifegraden, um eine Plattform für die kontinuierliche Verbesserung des Softwareentwicklungsprozesses zu schaffen. Daher bildet diese Methodik das Herzstück von Managementsystemen, die speziell darauf ausgerichtet sind, die Entwicklungsqualität von Produkten und Dienstleistungen sowie deren Auslieferung zu verbessern.
CMM wurde vom SEI (Software Engineering Institute), einem vom US-Verteidigungsministerium geförderten Forschungs- und Entwicklungszentrum, entwickelt und gefördert. Es ist jetzt Teil der Carnegie Mellon University. Das SEI wurde 1984 gegründet, um sich mit verschiedenen Softwareproblemen zu befassen und Software-Methoden zu verbessern.
Das SEI wurde gegründet, um den Entwicklungs-, Beschaffungs- und Wartungsprozess von Systemen mit hohem Softwareanteil für das Verteidigungsministerium (DOD) zu optimieren. Es setzt sich für die Übernahme des sich weiterentwickelnden CMM, d.h. CMM Integration (CMMI), durch die Industrie ein.
Warum brauchen Sie CMM?
CMM hat viele Stärken, und der nützlichste Vorteil dieser Methodik ist die Zeit- und Kostenersparnis. Das liegt daran, dass das System perfekt darauf ausgelegt ist, die Fehler im Verbesserungsprozess effizienter zu erkennen als andere Modelle.

Darüber hinaus verbessert das KMG die Geschäftsprozesse und reduziert auch die plötzlichen Änderungen in den Produktionsplänen. Da das CMM das erste Modell war, das zur Verbesserung des industriellen Prozesses entwickelt wurde, kann es als Grundstein für andere Modellkreationen dienen, wie z.B. die verbesserte Version des CMM (d.h. CMMI), das Business Capability Maturity Model (BCMM) und andere.
CMM ist ein recht flexibles Modell für alle Prozesse und Märkte. Ganz gleich, welcher Branche Sie angehören, wenn Sie ein Entwicklungsteam haben, können die Mitglieder das Modell nutzen, um Fehler im Prozess zu beheben.
Fünf Reifegradstufen im CMM
Die fünf Stufen des Capability Maturity Model (CMM) im Entwicklungsprozess sind:
#1. Erste Stufe
Auf dieser Stufe sind die Prozesse nicht in der richtigen Reihenfolge. Zuweilen kann es sogar chaotisch zugehen. Hier hängt der Erfolg von den Bemühungen des einzelnen Mitglieds ab und wird nicht als wiederholbarer Prozess betrachtet. Das liegt nur daran, dass der Prozess nicht gut genug dokumentiert und definiert ist, um ihn wiederholen zu können.
Die befolgten Prozesse sind unausgereift und ad hoc, was eine instabile Umgebung für Ihre Softwareentwicklung darstellt. Darüber hinaus gibt es keine Grundlage, um die Qualität des Produkts und die Zeit bis zur Fertigstellung vorherzusagen.
#2. Wiederholbar
Auf dieser Stufe sind die erforderlichen Prozesse gut etabliert, dokumentiert und definiert. Infolgedessen sind die Projektmanagementtechniken gut etabliert, und der Erfolg lässt sich in einigen wichtigen Prozessbereichen möglicherweise nicht wiederholen.
Die Ebene der Wiederholbarkeit kann durch die Festlegung einiger grundlegender Richtlinien für das Projektmanagement erreicht werden. Die Erfahrungen aus früheren Projekten werden genutzt, um ähnlich geartete Projekte zu verwalten. Dazu gehört die Festlegung der erforderlichen Ressourcen, Ziele, Einschränkungen und mehr für das Projekt.

Auf dieser Ebene wird ein detaillierter Plan vorgelegt, der für die erfolgreiche Fertigstellung von Qualitätssoftware ordnungsgemäß befolgt werden muss. Das Hauptziel besteht darin, die Leistung des Produkts, z. B. seiner Komponente, während des gesamten Lebenszyklus der Software zu erhalten.
Die wiederholbare Ebene umfasst auch das Management von Kundenfeedback und Überprüfungen, die zu einigen Änderungen der festgelegten Anforderungen führen können. Dieses Anforderungsmanagement besteht aus der Anpassung der geänderten Anforderungen.
Darüber hinaus konzentriert sich die Verwaltung von Unteraufträgen auf die Verwaltung von qualifizierten Auftragnehmern für die Softwareentwicklung. Das heißt, es verwaltet einige Softwareteile, die von Dritten entwickelt werden. Die Software-Qualitätssicherung garantiert ein qualitativ hochwertiges Softwareprodukt mit bestimmten Regeln und Standardrichtlinien während des Entwicklungsprozesses.
#3. Definiert
Auf dieser Ebene erfolgt die Dokumentation der Richtlinien und Verfahren. Es handelt sich um einen genau definierten Satz von Softwareentwicklungsprozessen und Management. Dazu gehören:
- Peer-Reviews: Bei dieser Methode müssen Fehler durch eine Vielzahl von Überprüfungsprozessen wie Inspektionen, Buddy Checks, Walkthroughs usw. beseitigt werden.
- Intergruppenkoordination: Diese Methode besteht aus der Interaktion zwischen mehreren Entwicklungsteams, um die ordnungsgemäße und effiziente Erfüllung der Anforderungen sicherzustellen.
- Definition von Organisationsprozessen: Diese Methode konzentriert sich auf die Entwicklung und Pflege von Softwareentwicklungsprozessen.
- Fokus des Organisationsprozesses: Dazu gehören Praktiken und Aktivitäten, die befolgt werden müssen, um die Prozessfähigkeiten der Organisation zu verbessern.
- Schulungsprogramme: Die Schulungsprogramme konzentrieren sich auf die Verbesserung der Kenntnisse und Fähigkeiten der Teammitglieder und sorgen für eine Verbesserung der Arbeitseffizienz.
#4. Verwaltet

Auf dieser Ebene werden quantitative Ziele für die Softwareproduktqualität und die Softwareprozesse einer Organisation festgelegt. Die durchgeführten Messungen ermöglichen es der Organisation, die Prozess- und Produktqualität innerhalb der quantitativ festgelegten Grenzen vorherzusagen.
Diese Ebene umfasst Strategien und Pläne, die zur Entwicklung und zum Verständnis der quantitativen Analyse und Produktqualität erstellt werden. Sie konzentriert sich auch auf das Management der Projektleistung.
#5. Optimieren
Dies ist die letzte Stufe der Prozessreife im CMM, die sich ausschließlich auf die kontinuierliche Verbesserung der Entwicklungsprozesse in der Organisation durch quantitatives Feedback konzentriert. Dies geschieht durch den Einsatz von Techniken, Bewertungen und Tools für Softwareprozesse, um die Wiederholung bekannter Fehler zu verhindern.
Diese Stufe umfasst:
- Prozessänderungsmanagement: Dieser Managementprozess konzentriert sich auf die kontinuierliche Verbesserung der Softwareentwicklungsprozesse. Dadurch werden Qualität, Durchlaufzeit und Produktivität des Softwareprodukts verbessert.
- Management von Technologieänderungen: Es besteht aus dem Einsatz von Technologien und Identifizierungstechniken, um die Qualität des Produkts zu verbessern und die Entwicklungszeit zu minimieren.
- Fehlervermeidung: Die Fehlervermeidung erfolgt durch die Identifizierung der Ursache von Fehlern und die Verhinderung, dass diese Fehler in den nächsten Projekten wieder auftreten. Dies verbessert die projektspezifischen Prozesse.
Integration des Reifegradmodells (Capability Maturity Model)

Capability Maturity Model Integration (CMMI) ist ein einfaches Prozessmodell, das Unternehmen nutzen können, um Entwicklungsprozesse zu verbessern, effiziente Verhaltensweisen zu fördern und die Produktivität im Arbeitsablauf bei der Entwicklung eines Produkts, einer Dienstleistung oder eines Projekts zu steigern. Dies führt zu einer Verringerung der Risiken während des gesamten Prozesses.
CMMI wurde von der Carnegie Mellon University entwickelt und eingeführt. Die primäre Absicht dieser Entwicklung ist es, die Effizienz und Nutzbarkeit von Reifegradmodellen zu erhöhen, mit denen die Fähigkeit einer Organisation gemessen werden kann, sich in bestimmten Bereichen kontinuierlich zu verbessern. Dies kann nur durch die Integration mehrerer Modelle in einem einzigen Rahmenwerk geschehen.
Die erste Version wurde im Jahr 2002 veröffentlicht, die nächste Version erschien 2006. Im Jahr 2010 erschien die Version 1.3 und die letzte Version, 2.0, wurde 2018 eingeführt, die verschiedene Änderungen mit sich brachte, z.B. dass sie für Unternehmen zugänglicher und effektiver wurde.
CMMI wurde von der ISACA (früher bekannt als Information Systems Audit and Control Association) aufgekauft, die auch Zertifizierungen wie das COBIT-Framework besitzt. CMMI ist ein Prozess- und Verhaltensmodell, das Unternehmen während des gesamten Entwicklungsprozesses von Produkten oder Dienstleistungen unterstützt.

Das Ziel von CMMI ist also ganz klar. Es dient dazu, die Qualität einer Dienstleistung oder eines Produkts zu verbessern, indem es dem Modell folgt, das die Erwartungen der Kunden erfüllt und den Wert einer Organisation auf dem Markt erhöht. Es bewertet auch den Ruf Ihres Unternehmens und den Wert der Stakeholder in der Branche.
Das CMMI befasst sich derzeit mit den folgenden Bereichen:
- CMMI für die Entwicklung: Es ist für die Entwicklung von Produkten und Dienstleistungen.
- CMMIfür Dienstleistungen: Es ist für die Einrichtung, Bereitstellung und Verwaltung von Dienstleistungen.
- CMMIfür die Beschaffung: Es geht um die Beschaffung von Produkten und Dienstleistungen.
Repräsentation von CMMI
Mit der CMMI-Darstellung kann eine Organisation eine Reihe von Verbesserungszielen verfolgen. Es gibt zwei Repräsentationen:
Stufenweise Repräsentation
- Sie verwendet einen definierten Satz von Entwicklungsprozessbereichen, um den Verbesserungspfad zu beschreiben.
- Sie bietet eine Reihe von Verbesserungen, wobei jeder Teil der Reihe als Struktur für die nächste Verbesserung dient.
- Es definiert einen Verbesserungspfad mit Hilfe von Reifegraden. Und der Reifegrad gibt Aufschluss über den Reifegrad der verschiedenen Prozesse in der Organisation.
- Es ermöglicht den Vergleich zwischen verschiedenen Organisationen für verschiedene Reifegrade.
Kontinuierliche Darstellung
- Es ermöglicht die Auswahl bestimmter Prozessbereiche.
- Es verwendet Fähigkeitsstufen, um die Verbesserung des einzelnen Prozesses zu messen.
- Darüber hinaus ermöglicht sie den Vergleich zwischen Organisationen auf der Grundlage der einzelnen Prozessbereiche.
- Die kontinuierliche Darstellung ermöglicht es Organisationen auch, aus verschiedenen Prozessen zu wählen, um sich zu verbessern.
- In dieser Darstellung können Organisationen ihre Ziele besser erreichen und Risiken reduzieren, indem sie die Reihenfolge der Verbesserung verschiedener Prozesse auswählen.
Stufen in CMMI
Es gibt fünf Reifegradstufen in CMMI mit stufenweiser Darstellung:
#1. Initial: Auf dieser Stufe werden die Entwicklungsprozesse nur unzureichend kontrolliert oder verwaltet. Außerdem sind die Ergebnisse der Entwicklungsprozesse nicht vorhersehbar. Darüber hinaus werden chaotische und Ad-hoc-Ansätze verwendet. Sie werden keine definierten Schlüsselprozessbereiche (KPAs) finden. Die Qualität ist nicht besonders gut, und das Produkt oder die Dienstleistungen sind höchst gefährdet.
#2. Verwaltet: In diesem Reifestadium werden die Anforderungen ordnungsgemäß verwaltet und die Entwicklungsprozesse kontrolliert und geplant. Hier wird das Projekt ordnungsgemäß verwaltet und gemäß den dokumentierten Plänen umgesetzt. Das Risiko besteht zwar immer noch, ist aber geringer als in der ersten Stufe.

#3. Definiert: In der definierten Reifegradstufe sind die Entwicklungsprozesse gut beschrieben und durch geeignete Verfahren, Standards, Tools und Methoden gekennzeichnet. Sie finden hier eine mittlere Qualität vor, und auch das Risiko ist mittelhoch.
#4. Quantitativ verwaltet: In diesem Modell werden die quantitativen Ziele für Qualitäts- und Leistungsprozesse festgelegt. Sie basieren auf den Bedürfnissen der Organisation, den Anforderungen der Kunden und mehr. Die Messungen der Prozessleistung werden quantitativ ausgewertet. Hier finden Sie qualitativ hochwertigere Prozesse bei geringerem Risiko.
#5. Optimieren: Dies ist die letzte Stufe des Reifegradmodells, die eine kontinuierliche Verbesserung der Leistung und der Prozesse beinhaltet. Die Verbesserung in dieser Stufe ist sowohl innovativ als auch inkrementell. Die Prozesse und Leistungen sind von höherer Qualität, und das Risiko ist am geringsten.
Fähigkeitsstufen von CMMI
Ein Capability Level gibt Auskunft über die relevanten Praktiken für einen bestimmten Prozessbereich, um die Prozesse einer Organisation in diesem Bereich zu verbessern. Es gibt sechs Fähigkeitsstufen für CMMI-Modelle:
- Fähigkeitsstufe 0 (unvollständig): Sie umfasst unvollständige, teilweise und nicht durchgeführte Prozesse. Auf dieser Stufe gibt es keine generischen Ziele.
- Fähigkeitsstufe 1 (Durchgeführt): Die Prozessleistung ist auf dieser Stufe nicht stabil. Die Kosten-, Termin- und Qualitätsziele werden nicht erreicht. Der Prozess der Stufe 1 muss bestimmte Praktiken ausführen.
- Fähigkeitsstufe 2 (Gemanagt): Auf dieser Stufe wird der Prozess überwacht, gesteuert und geplant. Hier sind die Ziele sowohl das Modell als auch andere wie Qualität, Zeitplan und Kosten. Die Organisation muss die Prozesse mit Hilfe von Metriken aktiv verwalten.
- Fähigkeitsstufe 3 (Definiert): Es handelt sich um eine definierte Ebene, auf der der Prozess gut verwaltet wird und eine Reihe von organisatorischen Richtlinien und Standards erfüllt. Sie konzentriert sich auf die Standardisierung von Prozessen.
- Fähigkeitsstufe 4 (quantitativ gesteuert): Hier wird der Prozess mit Hilfe quantitativer und statistischer Techniken gesteuert. Auf dieser Ebene wird die Prozessleistung in Form von Metriken und statistischen Begriffen verstanden.
- Fähigkeitsstufe 5 (Optimieren): Diese Stufe konzentriert sich auf die kontinuierliche Verbesserung der Prozessleistung. Die Leistung wird sowohl auf innovative als auch auf inkrementelle Weise verbessert.
CMM vs. CMMI: Unterschied

CMMI ist ein aktualisiertes oder neueres Modell des CMM. Das SEI hat CMMI entwickelt, um das CMM zu standardisieren und zu integrieren, das über verschiedene Modelle für jede Funktion verfügt, die es abdeckt. Diese Modelle sind nicht aufeinander abgestimmt; ihre Integration macht den Prozess flexibel und effizient.
In Bezug auf die wichtigsten Prozessbereiche, Praktiken, Reifegrade und Ziele ist die CMMI-Struktur der CMM-Struktur ähnlich. Allerdings bietet CMMI zwei unterschiedliche Darstellungen der Prozesse.
Lassen Sie uns einige weitere Unterschiede zwischen CMM und CMMI herausfinden:
CMM | CMMI |
CMM steht für Capability Maturity Model und wurde im Jahr 1984 entwickelt. | CMMI steht für Capability Maturity Model Integration und wurde im Jahr 2006 entwickelt. |
Es ist ein Verhaltensmodell, das entwickelt wurde, um die Softwareentwicklungsprozesse in einer Organisation zu messen. | Es ist die aktualisierte Version des CMM-Modells, die stärker aufgabenorientiert und effektiv ist. |
Der Hauptzweck besteht darin, die Reifegrade im Softwareentwicklungsprozess zu bewerten. | Der Hauptzweck besteht darin, verschiedene Softwaremodelle in einer einzigen Software zu kombinieren und einige Nachteile des CMM zu überwinden. |
CMM hat fünf Stufen: Initial, Wiederholen, Definiert, Verwaltet und Optimiert | CMMI hat fünf Stufen: Erstmalig, verwaltet, definiert, quantitativ verwaltet und optimiert. |
CMM ist weniger effektiv. | CMMI ist effektiver. |
Es ist zu prozessorientiert. | Es ist zielorientiert. |
Fazit
Das Capability Maturity Model (CMM) ist ein Problemlösungssystem für Softwareentwicklungsprozesse in der Industrie. Es kann Unternehmen davor bewahren, sich mit Prozessproblemen zu befassen.
Andererseits hat CMMI eine fortschrittlichere Methodik als CMM. Sie umfasst die Erfüllung von Kundenerwartungen, die Wertschätzung der Schöpfung, das Marketingwachstum, die Verbesserung der Produkt- und Servicequalität und die Verbesserung des Rufs.
Sie können sich auch mit dem Application Lifecycle Management Framework befassen, das Ihnen hilft, die Software termingerecht, innerhalb des Budgets und in Top-Qualität zu entwickeln und zu liefern.