Prozessgüte heißt Wettbewerbsvorteil

06.07.2007
Von Reimer Kornmeier
Wer fit für den globalen Markt sein will, sollte sich mit den Qualitäts-Management-Methoden für System- und Softwareentwicklung beschäftigen.

Der Markt für Softwareprojekte verändert sich. Immer mehr Endanwender außerhalb der eigentlichen Softwareindustrie bauen innovative Geschäftsprozesse auf der Grundlage individuell erstellter Programme auf, sei es in der Fertigung, im Handel, in der Dienstleistungs- oder Finanzbranche. Dabei lassen sich die hohen Standortkosten hierzulande gegenüber Offshoring-Ländern wie Indien nur über die Qualität der Software und eine möglichst effiziente Entwicklungsarbeit ausgleichen.

Die IT-Disziplin der Softwareprozessverbesserung (Software Process Improvement, kurz SPI) hat sich das Ziel gesetzt, entsprechende Projekte "on time" sowie "in budget" zu realisieren und dabei die Fehlerrate zu reduzieren. Mit speziellen Methoden zur Prozessoptimierung verspricht sie, Entwicklungsprojekte effizienter zu verwalten und so die Qualität der entwickelten Software, die Produktivität und am Ende auch das Geschäftsergebnis deutlich zu steigern.

Messlatte für die Softwareentwicklung

Die international am weitesten verbreitete Methode zur Bewertung und Verbesserung von Entwicklungsprozessen ist das Capability Maturity Model Integration (CMMI). Es wurde erstmals im Jahr 2000 veröffentlicht – als Nachfolger des Capability Maturity Model (SW-CMM), das 1991 vom Software Engineering Institute (SEI) der Carnegie Mellon University in Pittsburgh im Auftrag des amerikanischen Verteidigungsministeriums entwickelt wurde. Es sollte ursprünglich als Hilfsmittel für die Beurteilung von Softwarelieferanten dienen.

Die Methoden im Überblick

1. Speziell auf SPI ausgerichtete Methoden:

  • CMMI als detailliertes Framework für die systematische Bewertung und Verbesserung von Software- und Systementwicklungsprozessen anhand eines Reifegradmodells. Neben dem bereits veröffentlichten "CMMI for Development" befinden sich zwei weitere Ansätze zur Modellierung von Geschäftsprozessen in Bearbeitung: "CMMI for Acquisition" und "CMMI for Services".

  • ISO 15504/Spice definiert einen Standard für die Bewertung von Softwareentwicklungsprozessen anhand eines Reifegradmodells, das weitgehend dem von CMMI entspricht. Es enthält keine Vorgaben für die eigentliche Verbesserung der Prozesse.

2. Organisationsorientierte Methoden:

  • ISO 9000-2000: allgemeines Regelwerk zur Qualitätssicherung innerhalb eines Unternehmens. Es beschreibt Standards, die in einem Unternehmen erfüllt sein sollten, gibt jedoch keine konkrete Hilfe für das Erreichen dieser Standards. Ist eine Organisation ISO-9000-2000-zertifiziert, deckt sie Teile der Anforderungen von Level 2 bis 3 von CMMI beziehungsweise Spice ab. Auf diesem Niveau ist es sinnvoll, CMMI oder Spice anzuwenden, um weitere Prozessverbesserungen zu erzielen.

  • Lean (Management): eine Management-Philosophie, die danach strebt, Prozesse zu vereinfachen und effizienter zu gestalten. Lean hat seine Ursprünge im Toyota-Produktionssystem (TPS), das Toyota nach dem Zweiten Weltkrieg in seinen Werken entwickelt und äußerst erfolgreich umgesetzt hat, um auf dem Weltmarkt konkurrenzfähig zu sein. TPS beziehungsweise Lean Manufacturing zielen darauf ab, jegliche Verschwendung im Produktionsprozess zu eliminieren und die vorhandenen Ressourcen so effizient wie möglich einzusetzen. Die Grundsätze des Lean Manufacturing wurden auf das Management übertragen und sind auch im Bereich SPI anwendbar.

  • Six Sigma: Methode zur Verbesserung einzelner Geschäftsprozesse auf Basis einer statistischen Erfassung der Prozessgüte. Six Sigma stammt ursprünglich aus der verarbeitenden Industrie. Erst ab Level 3 bis 4 ist es sinnvoll und hilfreich, Six Sigma im SPI ergänzend zu CMMI oder Spice einzusetzen, da erst dann der Gütegrad der Softwareentwicklungsprozesse statistisch erfassbar ist.

Neben dem SW-CMM integriert CMMI weitere Reifegradmodelle wie das Capability Model für die Systementwicklung (EIA 731). Die aktuelle Fassung von CMMI ist seit August 2006 als Version 1.2 verfügbar. Neu eingeführt wurde darin das Konzept der "Constellations", das einzelne Anwendungsgebiete von CMMI beschreibt. Als "CMMI for Development" beschäftigt sich die erste Constellation mit der Entwicklung von Software und Systemen.

CMMI bildet dabei eine Art Messlatte für die Verbesserung von Prozessen, zum Vergleich mit der eigenen Prozessvorgehensweise und zur Bewertung der Zulieferer (Benchmarking). In einem kontinuierlichen Modell lässt sich kann dieser Maßstab separat auf die einzelnen Prozessgebiete anwenden. Man spricht dann vom Fähigkeitsgrad beziehungsweise vom Prozessfähigkeitsprofil, das sich aus den Fähigkeitsgraden der verschiedenen Prozessgebiete ergibt. Meist wird jedoch das Stufenmodell eingesetzt, das die Prozessreife des gesamten Unternehmens feststellt. Es umfasst die Reifegrade von 1 bis 5 an.

Die fünf CMMI-Grade

Sind für den Reifegrad 1 (initial) noch unstrukturierte und eher zufällig ablaufende Software-Entwicklungsprozesse typisch, erfordert Reifegrad 2 (managed) bereits ein funktionierendes Projekt-Management: Kosten, Zeiteinteilung und Funktion des Projekts werden geplant und gesteuert sowie der Arbeitsfortschritt dokumentiert. Das Projekt ist dann nicht mehr nur vom Können des einzelnen Entwicklers abhängig, sondern so strukturiert und protokolliert, dass ein Projektmitarbeiter während der Laufzeit leichter ersetzt oder eingearbeitet werden kann.

Foto: DNV Q-Labs

Ab dem Reifegrad 3 (definiert) liegt der Fokus auf der gesamten Organisation. Hier wird gefordert, dass nach einheitlichen Prozessen gearbeitet wird, so dass Mitarbeiter, Daten und Erfahrungen zwischen verschiedenen Projekten ausgetauscht werden können. Reifegrad 4 (quantitative gemanagt) führt Metriken ein, um die Ergebnisse von Prozessen (beispielsweise Aufwand, Fehlerquote) vorhersagbar zu machen und systematisch zu steuern. Um Reifegrad 5 (optimierend) zu erreichen, muss sich die gesamte Organisation der kontinuierlichen Verbesserung der etablierten Prozesse und Technologien verschrieben haben.

Zur initialen Bestandsaufnahme oder späteren Bewertung der erreichten Verbesserungen sieht CMMI Bewertungen der Prozessreifegrade vor, die auf einem Assessment-Modell und einem detaillierten Bewertungsschema basieren. Vor allem dienen diese "Appraisals" auch der Identifizierung weiterer Verbesserungspotenziale. Unter dem Namen "Scampi" (Standard CMMI Appraisal Method for Process Improvement) hat das SEI die Bewertungsmethodik standardisiert und überwacht deren strikte Ausführung.

Handlungsanweisungen inklusive

Nach CMMI untergliedern sich die zu verbessernden Prozesse in vier Kategorien mit jeweils einer Anzahl von Prozessgebieten. Am Ende der Untergliederung finden sich für jedes Prozessattribut Ziele (Goals) sowie als Handlungsanweisungen zu verstehende Praktiken (Practices), die entweder nur für das jeweilige Prozessgebiet gelten oder übergreifend sind.

Insgesamt kennt CMMI in der stufenweisen Betrachtung 22 Prozessbereiche mit jeweils zwei generischen Zielen und zwölf generischen Praktiken sowie 50 spezifische Ziele mit 168 spezifischen Praktiken. Diese Ziele und Praktiken in konkrete Arbeitsanweisungen für das jeweilige Projekt zu übersetzen erfordert einige Erfahrung.

Unterschiede zwischen CMMI und Spice

Eine Alternative zu CMMI bietet die International Organization for Standardization mit ISO 15504 oder Spice (Software Process Improvement and Capability dEtermination). Spice konzentriert sich auf die Bewertung von Entwicklungsprozessen und geht dabei über das ursprüngliche amerikanische CMM-Modell hinaus.

Die Verwandtschaft zu CMMI ist unverkennbar, auch das Prozessfähigkeitsmodell von Spice ähnelt dem von CMMI und verfügt über Fähigkeitsgrade von 0 bis 5. Allerdings werden die Assessments hier anhand eines normierten Fragenkatalogs vorgenommen und sind deshalb häufig mit geringerem Aufwand verbunden als bei CMMI. Wie bei ISO-Standards üblich, ist Spice in Europa stärker verbreitet als in den USA und bildet hierzulande beispielsweise den De-facto-Standard für die Bewertung von Zulieferern in der Automobilbranche.

Spice enthält – im Gegensatz zu CMMI – keine Handlungsanweisungen für die eigentliche Verbesserung der Prozesse und gibt folglich auch keine bestimmte Reihenfolge für die Prozessverbesserungen vor. Der Maßnahmenkatalog wird vielmehr durch das begleitende Beratungsunternehmen anhand von Erfahrungswerten aus den Ergebnissen des Assessments abgeleitet. In der Regel wird ein Unternehmen zuerst in dem Bereich ansetzen, in dem sich während des Assessments die größten Defizite gezeigt haben.

Ein anderer Unterschied der beiden Methoden liegt im Aufwand für die Assessments: CMMI setzt voraus, dass im Unternehmen selbst ein Mitarbeiter mit der Methode vertraut ist. Spice hingegen erfordert keine entsprechende Ausbildung. Dafür geht CMMI bei der Analyse und den anstehenden Verbesserungen deutlich tiefer als Spice, auch in organisatorischer Hinsicht. Deshalb sollte ein Unternehmen bei der Entscheidung zwischen den Methoden abwägen, ob eine solche Detailtiefe überhaupt benötigt wird und ob dem damit einhergehenden Aufwand ein adäquater Nutzen gegenübersteht. Für gezielte Prozessverbesserungen in kleineren bis mittelgroßen Unternehmen reicht Spice oft aus.

Zehn Erfolgsfaktoren für die Prozessverbesserung

  1. Identifizieren Sie die Bedürfnisse zur Prozessverbesserung innerhalb der Firmenorganisation. Die meisten Verbesserungsprogramme scheitern schon zu Beginn aufgrund der mangelhaften Ausrichtung an der Firmenstrategie und an den relevanten Business Cases.Erarbeiten Sie eine Ist-Aufnahme (extern oder auch als Self-Assessment) der relevanten Prozesse. Dabei werden die Qualität, die Effizienz und der Reifegrad der (IT-)Entwicklungsprozesse bewertet.

  2. Decken Sie die Schwachstellen in den (IT-)Entwicklungsprozessen auf und leiten Sie aus dem Assessment-Bericht die nötigen Verbesserungspotenziale ab (wenn nötig mit Hilfe externer Berater).

  3. Setzen Sie das Prozessverbesserungsprogramm als eigenständiges Projekt mit vorbildlicher Projektplanung auf. Definieren Sie die Infrastruktur und die Aktionen des Verbesserungsprogramms (unterstützende Prozesse wie Projekt-, Konfigurations- und Qualitäts-Management).

  4. Etablieren Sie einen visionären und charismatischen Vollzeit-Projekt-Manager aus Ihrer Firmenorganisation, keinen externen Berater! Jemand aus der eigenen Organisation kann das Verbesserungsprogramm intern viel besser "verkaufen".

  5. Etablieren Sie eine Kerngruppe, die das Verbesserungsprogramm in Ihrem Unternehmen vorantreibt. Die optimale Größe dieses Teams liegt zwischen drei und fünf Prozent der Mitarbeiter, abhängig von der Größe der IT-Abteilung.

  6. Präsentieren Sie so bald wie möglich den Nutzen des Prozessverbesserungsprogramms in ausgewählten Pilotprojekten Ihrer Organisation. Wichtig ist ein iteratives und inkrementelles Vorgehen. Der Nutzen kann nur auf Basis von individuell benannten und messbar gemachten Geschäftszielen bestimmt werden.

  7. Etablieren und fördern Sie firmeneigene Champions, die das Verbesserungsprogramm in den Pilotprojekten vorantreiben, und unterstützen Sie diese Champions laufend.

  8. Etablieren Sie nach erfolgreicher Pilotierung die Prozesse und das Kernteam auf Organisationsebene. Das Prozess-Deployment (Rollout) ist eine eigenständige Phase im Lebenszyklus des Verbesserungsprogramms.

  9. Definieren Sie Metriken für die Prozess-Performance; kontrollieren Sie, das heißt messen Sie ständig die Prozess-Performance. Sollte es nötig sein, beginnen Sie entsprechend Ihrer Zielsetzung ein neues Assessment und ein weiteres Verbesserungsprogramm.

Welche Methode wann?

Es muss von Anfang an auf allen Ebenen operiert werden.
Es muss von Anfang an auf allen Ebenen operiert werden.
Foto: DNV - Q-Labs

Andere Kriterien für die Methodenauswahl sind die Lage der anvisierten Absatzmärkte und die Branchenausrichtung. Wer sich zum Beispiel primär auf den US-amerikanischen Markt konzentriert, sollte davon ausgehen, dass ein SPI-Projekt ein CMMI-Assessment einschließt. In der europäischen Automobilindustrie hingegen erfreut sich Spice zunehmender Beliebtheit.

Damit am Ende des Verbesserungsprozesses der nächste Reifegrad nachhaltig erreicht wird, sind jedoch nicht nur technische Herausforderungen zu meistern. Prozessveränderungen betreffen am Ende immer Menschen, und so hat sich als entscheidender Erfolgsfaktor in vielen Projekten die permanente Verankerung des Verbesserungsprozesses in der Firmenkultur gezeigt.

Dabei muss von Anfang an auf allen Ebenen operiert werden. Das obere Management hat die Verantwortung für das SPI-Projekt zu übernehmen. Hier müssen die Ziele gesteckt werden, und hier ist die strategische Planung anzusiedeln. Das mittlere Management übernimmt Verantwortung für die einzelnen Prozessbereiche; es treibt Planung und Umsetzung der jeweiligen Verbesserungsmaßnahmen voran. Das Prozess-Consulting motiviert die Mitarbeiter und nimmt sie in die Verantwortung für die Umsetzung der einzelnen Maßnahmen. Im operativen Consulting schließlich liegt der Fokus auf der Ausführung der einzelnen Verbesserungsschritte. Für das reibungslose Zusammenspiel ist die wichtigste Rahmenbedingung eine regelmäßige Kommunikation zwischen allen Beteiligten über alle Ebenen und die gesamte Projektlaufzeit hinweg. Fehlt sie, ist der Misserfolg fast schon sicher.

Fazit: Verbesserungen, die sich lohnen

Aus Branchen wie dem Bankwesen, der Automobilindustrie, der Luft- und Raumfahrt oder der Elektronikfertigung ist Software Process Improvement heute nicht mehr wegzudenken. Einen Beleg dafür, dass sich Verbesserungsprojekte lohnen, liefern auch die Untersuchungen der Carnegie Mellon University, die umfangreiche Ergebnisse aus den Assessments von SPI-Projekten veröffentlicht (www.sei.cmu.edu/cmmi/results.html). Qualitätsverbesserungen um durchschnittlich 50 Prozent und eine mittlere Produktivitätssteigerung von 62 Prozent sind Wettbewerbsvorteile, auf die man heute kaum mehr verzichten kann. (ue)