Verbesserung g von Softwareprozessen p mit CMMI Seminar Software Management
Philip Demey
Verbesserung g von Softwareprozessen p mit CMMI
Agenda • Einordnung und Motivation • Aufbau des CMMI • Umsetzung von CMMI mit dem IDEAL Modell • Bewertung
Philip Demey
2
Verbesserung g von Softwareprozessen p mit CMMI
Agenda • Einordnung und Motivation • Aufbau des CMMI • Umsetzung von CMMI mit dem IDEAL Modell • Bewertung
Philip Demey
3
Verbesserung g von Softwareprozessen p mit CMMI
CMMI • CMMI = Capability Maturity Model Integration • Enwickelt am SEI (Software Engineering Institute) • Carnegie Mellon University Pittsburgh
Philip Demey
4
Verbesserung g von Softwareprozessen p mit CMMI
Einordnung • Qualitätsmanagement • Vorgehensmodelle V h d ll • Qualitätsmanagementmodelle • Reifegradmodelle • Modelle zur Bewertung der Reife / Qualität einer Organisation • Vorgehensanleitung und Best Practices zur Verbesserung der Reife • z. B. CMMI, SPICE (ISO 15 504) • Fokus: CMMI C f Development (CMMI-DEV for (C 1.2)) zur Softwareentwicklung S f
Philip Demey
5
Verbesserung g von Softwareprozessen p mit CMMI
Motivation • Zusammenhang zwischen Produkt- und Prozessqualität • Verbesserung der Entwicklungsprozesse kann Produktqualität verbessern
Philip Demey
6
Verbesserung g von Softwareprozessen p mit CMMI
Motivation • Qualität der Produkte für Erfolg eines Unternehmens entscheidend • Fehler F hl iin P Produkten d kt vermeiden id • Kundenzufriedenheit erhöhen • Zeit einsparen • Flexibler auf Marktveränderungen reagieren • Vorgaben erfüllen
Philip Demey
7
Verbesserung g von Softwareprozessen p mit CMMI
Agenda • Einordnung und Motivation • Aufbau des CMMI • Entstehung • Elemente • Prozessgebiete • Ziele und Praktiken • Darstellungsvarianten
• Umsetzung von CMMI mit dem IDEAL Modell • Bewertung
Philip Demey
8
Verbesserung g von Softwareprozessen p mit CMMI
Entstehung • 1991: Entwicklung des CMM durch SEI (Software Engineering Institute) • 1993: CMM Version 1 1.1 1 • 1997: SEI startet Entwicklung eines integriertes CMM (CMMI) • 1998: CMM Version 2.0 zurückgezogen • 2000: CMMI Version 1.0 • 2002: CMMI Version 1.1 • 2005: Unterstützung von CMM eingestellt • 2006: CMMI Version 1.2
Philip Demey
9
Verbesserung g von Softwareprozessen p mit CMMI
Anwendungsgebiete und Erweiterungen • CMMI-DEV • Systementwicklung S t t i kl • Softwareentwicklung • Integrierte Produkt- und Prozessentwicklung • Lieferantenauswahl • CMMI-ACQ: CMMI ACQ Akquisition Ak i iti von P Produkten d kt und d Di Dienstleistungen tl i t • CMMI-SVC (in CMMI Product Suite integriert): Dienstleistungen • Erweiterungen: +IPPD +IPPD, +SAFE
Philip Demey
10
Verbesserung g von Softwareprozessen p mit CMMI
Elemente • Reifegrade • Prozessgebiete (PA) • Generische Ziele (GG) • Generische Praktiken (GP) • Spezifische Ziele (SG) • Spezifische Praktiken (SP)
Philip Demey
11
Verbesserung g von Softwareprozessen p mit CMMI
Prozessgebiete • 22 Prozessgebiete • Einteilung in 4 Kategorien in kontinuierlicher Darstellung • Projektmanagement • Ingenieursdisziplinen • Unterstützung • Prozessmanagement P t • Feste Einteilung zu Reifegraden in stufenförmiger Darstellung • Reifegrad 2: 7 PA, PA Reifegrad 3: 11 PA • Reifegrad 4: 2 PA, Reifegrad 5: 2 PA
Philip Demey
12
Titel der Präsentation
Prozessgebiete • Benötigte Komponenten • Was W muss eine i Organisation O i ti erreichen i h um ein i P Prozessgebiet bi t zu erfüllen füll • Generische und Spezifische Ziele • Erwartete Komponenten • Beschreibt, was eine Organisation implementieren sollte um benötigte Komponenten umzusetzen. umzusetzen • Generische und spezifische Praktiken • Informative Komponenten • Details zur Umsetzung der benötigten und erwarteten Komponenten • Subpraktiken Philip Demey
13
Verbesserung g von Softwareprozessen p mit CMMI
Ziele und Praktiken • Generische Ziele und Praktiken • Generisches G i h Zi Ziell GG 2: 2 Ei Einen gemanagten t P Prozess institutionalisieren i tit ti li i • Generische Praktik GP 2.3: Dem Prozess adäquate Ressourcen zur Verfügung stellen
• Spezifische Ziele und Praktiken (Beispiel Anforderungsentwicklung) • Spezifisches Ziel SG 1: Kundenanforderungen entwickeln • Spezifische Praktik SP 1 1.1: 1: Bedürfnisse eruieren
Philip Demey
14
Verbesserung g von Softwareprozessen p mit CMMI
Prozessgebiete Beispiele • Prozessmanagement • Organisationsweise O i ti i P Prozessdefinition d fi iti (OPD) (RG 3) • Projektmanagement • Projektplanung (PP) (RG 2) • Ingenieursdisziplinen • Technische Umsetzung (TS) (RG 3) • Unterstützung • Ursachenanalyse und Problemlösung (CAR) (RG 5)
Philip Demey
15
16
Verbesserung g von Softwareprozessen p mit CMMI
Darstellungsvarianten • Stufenförmige Darstellung
Reifegrad 1: Initial Reifegrad 2: Gemanagt Reifegrad 3: Definiert Reifegrad 4: Qua Quantitativ gemanagt ga 4 t tat g a agt Reifegrad 5: Optimierend • GG 1: Gemanagten Prozess institutionalisieren (Reifegrad 2) • GG 2: Definierten Prozess institutionalisieren (Reifegrad > 2)
Philip Demey
GG 1 GG 2 GG 2 GG 2
Verbesserung g von Softwareprozessen p mit CMMI
Darstellungsvarianten • Kontinuierliche Darstellung
Fähigkeiitsgrad
Fähi k it Fähigkeitsgrad d 0: U Unvollständig ll tä di
CM
PP
CAR
Fähigkeitsgrad 1: Durchgeführt
GG 1
Fähigkeitsgrad 2: Gemanagt
GG 2
Fähigkeitsgrad ä g e tsg ad 3: Definiert e et
GG 3
Fähigkeitsgrad 4: Quantitativ gemanagt
GG 4
Fähigkeitsgrad 5: Optimierend
GG 5
• GG 1: Spezifische Ziele erreichen • GG > 1: Prozesse institutionalisieren Philip Demey
17
Verbesserung g von Softwareprozessen p mit CMMI
Auswahl der Darstellungsvariante • Es gibt keine falsche Variante • An Darstellung vormals genutzter Reifegradmodelle orientieren
• Kontinuierliche Darstellung bietet mehr Flexibilität • Abhängigkeiten zwischen Prozessgebieten müssen beachtet werden
• Besser erkennbarer Pfad der Verbesserung bei stufenförmige Darstellung • Abhängigkeiten sind bereits berücksichtigt
• Kombination beider Varianten möglich
Philip Demey
18
Verbesserung g von Softwareprozessen p mit CMMI
Appraisals • Begutachtung zur Bewertung des Reifegrads • Verbesserungspotential identifizieren • Einsatz durch Organisation oder Auftraggeber • Methode des SEI: SCAMPI (Standard CMMI Appraisal Method for Process Improvement)
• Alternative Appraisalmethoden vom SEI in 3 Klassen eingeteilt: • A - Zuverlässige und korrekte Informationen, hoher Aufwand • B - geringe Anforderungen an Ergebnisse, mittlerer Aufwand • C - Geringere Zuverlässigkeit, für häufige, schnelle Überprüfungen
Philip Demey
19
Verbesserung g von Softwareprozessen p mit CMMI
Agenda • Einordnung und Motivation • Aufbau des CMMI • Umsetzung von CMMI mit dem IDEAL Modell • Initiating Phase • Diagnosting Phase • Establishing stab s g Phase ase • Acting Phase • Learning Phase
• Bewertung
Philip Demey
20
Verbesserung g von Softwareprozessen p mit CMMI
Das IDEAL Modell • Modell zur Einführung des CMMI • Am SEI entwickelt • 5 Phasen: • Initiating, Initiating • Diagnosting, • Establishing. Establishing • Acting, • Learning. Learning
Philip Demey
21
Verbesserung g von Softwareprozessen p mit CMMI
Initiating / Diagnosing • Initiative durch Stimilus • Maßnahmen in Organisationskontext einordnen • Unterstützung geben • Infrastruktur einrichten
• Ist- und Soll-Zustand ermitteln • Empfehlungen entwickeln
Philip Demey
22
Verbesserung g von Softwareprozessen p mit CMMI
Establishing, Acting • Prioritäten setzen • Strategie entwickeln • Detaillierter Aktionsplan
• Lösung erstellen • Lösung testen • Lösung verfeinern • Umsetzen
Philip Demey
23
Verbesserung g von Softwareprozessen p mit CMMI
Learning • Analysieren und Validieren • Zukünftige Maßnahmen
Philip Demey
24
Verbesserung g von Softwareprozessen p mit CMMI
Agenda • Einordnung und Motivation • Aufbau des CMMI • Umsetzung von CMMI mit dem IDEAL Modell • Bewertung
Philip Demey
25
Verbesserung g von Softwareprozessen p mit CMMI
Bewertung • Verbesserung der Produktqualität, Kundenzufriedenheit, Flexibilität • Best Practices und Handlungsrahmen • Kompatibel zu ISO 15 504 (SPICE)
• Prozesse außerhalb der Entwicklung unberücksichtigt • Prozessorientierung problematisch in schnelllebigen Umfeldern • Hoher Aufwand für kleine Organisationen
Philip Demey
26
Verbesserung g von Softwareprozessen p mit CMMI
Quellen • BITKOM: Ergebnisse einer BITKOM Befragung zu System Life Cycle Modellen, http://www.bitkom.org/de/themen_gremien/55109_28200.aspx, abgerufen am 30.11.2008. • Ralf Kneuper: CMMI. Verbesserung von Software- und Systementwicklungs-prozessen mit Capability Maturity Model Integration (CMMI-DEV), dpunkt, 2007. • CMMI Product Team: CMMI for Development, Version 1.2, Software Engineering Institute, 2006, http://www.sei.cmu.edu/publications/documents/06.reports/06tr008.html, abgerufen am 01.11.2008. • Jennifer Gremba, Chuck Myers: The IDEAL Model: A Practical Guid for Improvement, Software Engineering g g Institute,, 1997,, http://www.sei.cmu.edu/ideal/ideal.bridge.html, p g , abgerufen g am 06.12.2008. • Software Engineering Institute: CMMI History, http://www.sei.cmu.edu/cmmi/faq/his-faq.html, abgerufen am 11.11.2008. • Software Engineering Institute: CMMI Performance Results, Results http://www.sei.cmu.edu/cmmi/results.html, http://www sei cmu edu/cmmi/results html abgerufen am 09.12.2008.
Philip Demey
27