Qualitätssicherung Unter den Sammelbegriff Qualitätssicherung im SE fallen diverse Verfahren, die...

Post on 05-Apr-2015

108 views 1 download

transcript

Qualitätssicherung

• Unter den Sammelbegriff Qualitätssicherung im SE fallen diverse Verfahren, die parallel zu den Vorgehensmodellen für eine ständige Überprüfung und Messung (mit quantitativen Methoden) der Prozesse und Ergebnisse sorgen. Diese Verfahren wurden zum Teil aus dem Bereich der Fertigung übertragen (ISO9000, TQM).

Qualitätssicherung

• Ein wesentlicher Aspekt dieser QS-Verfahren ist die dem Kunden eröffnete Kontrollmöglichkeit und die Einbeziehung externer Organisationen (z.B. zur Zertifizierung).

Verfahren der Qualitätssicherung

• ISO 9000• TQM• CMM / CMMI• Bootstrap• Spice

ISO 9000

• Schnelle Entwicklung in der Software-Industrie verhindert Entstehung allgemeingültiger Standards.

• Kundenenttäuschung, da in den Anfangsjahren die Systeme oft nicht richtig dimensioniert oder nicht zukunftsfähig waren

Entwicklung der Norm

• Ursprünglich aus der Fertigungsindustrie:• Absatzprobleme der Industrie GBs Ende der 70er

Jahre auf Grund mangelnder Qualität Entwicklung der BS 5750

• später Entwicklung eines Qualitätsstandards in der Schweiz als weiterer Vorläufer der ISO 9000

• seit 1987 hat die ISO 9000 weltweit Bedeutung und ist inzwischen in mehr als 60 Ländern gültig.

Gliederung der einzelnen Normen in drei Kategorien

• Auslegungs- und Anwendungshilfen• (DIN EN ISO 9000-1, DIN EN ISO

9004-1)• 2. Nachweisstufen• (DIN EN ISO 9001, DIN EN ISO

9002, DIN EN ISO 9003)• 3. Leitfäden• (DIN ISO 9000-3, DIN ISO 9004-2)

Auslegungs- und Anwendungshilfen

Regelwerke, die beim Aufbau eines QM-Systems beachtet werden müssen.

Nachweisstufen

Leitfäden

• sind „Übersetzungshilfen“ für andere Branchen als die Fertigungsindustrie

• für Unternehmen der SW-Entwicklung ist besonders die ISO 9000-3 von Bedeutung

Aufbau: ist in 3 Hauptkapitel gegliedert:- Rahmen- Lebenszyklustätigkeit- Unterstützende Tätigkeiten (phasenunabhängig)

Inhalt: inhaltlich behandelt die Norm:- die Entwicklung- die Lieferung- die Wartung von Software

Zeit: zeitlich betrachtet, lassen sich die Notwendigen Maßnahmen gliedern in:- einmal durchzuführende und periodisch zu überprüfende Maßnahmen- pro Software Entwicklung / pro Projekt durchzuführende Maßnahmen

• Softwarefirmen müssen sich immer nach DIN EN ISO 9001 zertifizieren lassen. Diese Norm umfasst 20 Normelemente, die sich in drei Gruppen aufteilen lassen:

• Führungselemente• Phasenübergreifende Elemente• Phasenspezifische Elemente

ISO 9000Normenfamilie

ISO 9000GrundsätzlichesKonzept

ISO 9001-9003Externe Nachweisstufen

ISO 9004Leitfaden zumQMS-Aufbau

ISO 9000 Teil1Einführung

ISO 9000 Teil2Leitfaden zurAnwendung

ISO 9000 Teil3Leitfaden fürSoftwareentwicklung

ISO 9000 Teil4Zuverlässigkeits-managment

ISO 9001Design,Produktion,Montage, Kundendienst

ISO 9002Produktion,Montage, Kundendienst

ISO 9003Endprüfung

ISO 9004 Teil1Leitfaden

ISO 9004 Teil4Qualitäts-verbesserungen

ISO 9004 Teil2Dienstleistungs-unternehmen

ISO 9004 Teil5Qualitätsma-nagmentpläne

ISO 9004 Teil3Verfahrenstech-nische Produkte

ISO 9004 Teil7Konfigurationsmanagment

5 Hauptbereiche der ISO 9001(Minimalforderungen an das Qualitätsmanagementsystem)

1. Quality management system 1. General requirements 2. Documentation requirements

2. Management Responsibility 1. Management commitment 2. Customer focus 3. Quality policy 4. Planning 5. Responsibility, authority and communication 6. Management review

3. Resource management 1. Provision of resources 2. Human resources 3. Infrastructure 4. Work environment

5 Hauptbereiche der ISO 9001(Minimalforderungen an das Qualitätsmanagementsystem)

4. Product realization1. Planning of product realization2. Customer-related processes3. Design and development4. Purchasing5. Production & service provision6. Control of monitoring an measuring devices

5. Measurement, Analysis & Improvement1. General2. Monitoring and measurement3. Control of nonconforming product4. Analysis of data5. Improvement14

Forderungen 2

Führungselemente

PhasenübergreifendeElemente

PhasenspezifischeElemente

Forderungen 3

Normelement: 4.10 Prüfungen

1. Kurzerklärung

Zulieferungen müssen vor der Weiterverarbeitung geprüft werden. Zwischen den einzelnen Phasen des Design-, des Produktions- und des Wartungsprozesses müssen Prüfungenstattfinden, und Endprodukte müssen vor dem Versand geprüft werden.

Forderungen 4

2. Forderungen der DIN ISO 9001 (zwingend):

Das Unternehmen muß

1. die Prüftätigkeiten in Verfahrensanweisungen oder QM-Plänen festlegen

2. zugelieferte Produkte vor der Weiterverarbeitung entsprechend Verfahrensanweisung oder QM-Plan prüfen

3. Freigaben ohne Prüfung (z.B. aus Termindruck) identifizieren und dokumentieren

4. Zwischenprüfungen entsprechend Verfahrensanweisungen oder QM-Plan durchführen

5. durch Prozessüberwachung und –lenkung die Qualität der Produkte nachweisen

6. sicherstellen, daß Produkte erst dann freigegeben werden, wenn die Ergebnisse aller Prüfungen vorliegen

Forderungen 5

7. fehlerhafte Produkte identifizieren und kennzeichnen

8. vor Versand Endprüfungen durchführen, jedoch erst dann, wenn alle Eingangs- und Zwischenprüfungen erfolgreich durchgeführt wurden

9. sicherstellen, daß kein Produkt vor Durchführung aller im QM-Plan oder in den Verfahrensanweisungen vorgeschriebenen Prüfungen versandt wird

10. Prüfaufzeichnungen führen und aufbewahren (siehe Normelement 4.16 „Lenkung von Qualitätsaufzeichnungen“), die beweisen, daß die Produkte geprüft worden sind und die Qualitätskriterien erfüllen

11. sicherstellen, daß auf Prüfaufzeichnungen bei Produktfreigaben die freigebende Stelle vermerkt ist

Forderungen 6

3. Hinweise der DIN ISO 9000-3:

Das Unternehmen sollte

1. Testpläne, -spezifikationen und –verfahren vor Beginn des Tests erstellen

2. die Testergebnisse aufzeichnen

3. bei den Tests entdeckte Probleme erfassen und an die Verantwortlichen weitermelden

4. nachzubearbeitende Teile kennzeichnen und nach der Nacharbeit erneut testen

5. die Angemessenheit der Tests überprüfen

6. die Test-Hardware und Softwarekonfiguration beachten und dokumentieren

Forderungen 7

7. vor Auslieferung einen Validierungstest so durchführen, daß er der echten Produktionsumgebung der Software möglichst nahe kommt

8. bei Feldversuchen vorher definieren, welche Merkmale der Software unter Einsatzbedingungen zu testen sind

9. klären, welche Rolle der Kunde bei Feldversuchen spielt

10. dafür sorgen, daß nach dem Test die ursprüngliche Umgebung wiederhergestellt wird

11. zusammen mit seinem Kunden Annahmeprüfungen planen, die folgenden enthalten:• Terminplan• Bewertungsverfahren• Software-/Hardwareumgebung und Mittel• Annahmekriterien

Forderungen 8

4. Hinweise der Umsetzung

1. Die Durchführung von Tests muß in Verfahrenanweisungen oder QM-Plänen festgelegt sein.

2. Test müssen bereits im Vorfeld geplant werden.

3. Der Umfang der Tests variiert mit dem Projektumfang und oftmals auch mit der Projektart. Beispielswiese wird eine umfassende Software, die in großer Stückzahl an Kunden ausgeliefert wird, wesentlich umfangreicher getestet werden als eine kleine, kundenspezifische Modifikation an der Standardsoftware.

4. Es wird normalerweise eine Testhierarchie geben (z.B.: Funktionstest – Modultest – Integrationstest – Abnahmetest).

5. Testergebnisse müssen aufgezeichnet werden.

Forderungen 9

6. Testergebnisse müssen aufbewahrt werden, wenn sinnvoll.

7. Gefundene Fehler müssen an die Verantwortlichen gemeldet und bereinigt werden.

8. Testumgebungen bei Abnahmetests oder Feldversuchen müssen mit dem Kunden vereinbart werden.

9. Vor der Auslieferung muß ein „Validierungstest“ unter Bedingungen stattfinden, die den späteren Produktionsbedingungen möglichst nahe kommen.

Forderungen 10

5. Kernbereiche der Selbsteinschätzung

Feststellung Erfüllungsgrad 0 bis 100%

In unserem Unternehmen von Tests in QM-Plänen oder Verfahrensanweisungen geregelt.

50%

Die Testplanung findet in Abhängigkeit von Projektart und –umfang statt.

50%

Vor der Auslieferung an den Kunden wird ein Endtest durchgeführt. 50%

Abnahmeprüfungen werden zusammen mit den Kunden geplant. 50%

Testergebnisse werden aufgezeichnet. 50%

Nachzubearbeitende Softwareteile werden bei uns gekennzeichnet und nach der Nacharbeit erneut getestet.

50%

Summe der Erfüllungsgrade: 300%Geteilt durch Anzahl: 6Gesamterfüllungsgrad Normelement 10: 50%

Forderungen 11

Kein spezielles Vorgehensmodell, aber folgende Voraussetzungen:

- Softwareentwicklung findet in Phasen statt- Vorgaben für jede Phase sind festgelegt- geforderte Ergebnisse jeder Phase sind festgelegt- die in jeder Phase durchzuführenden Verifizierungsverfahren sind festgelegt

Die Norm empfiehlt, alle Tätigkeitsschritte im Prozess der Software-Erstellung zu dokumentieren, damit sie stets nachprüfbar sind. (z.B. für Produkthaftungsfällen, Beweissicherungsfragen)

- Vertrag Auftraggeber – Lieferant (Qualitätsrelevante Vertragspunkte)- Spezifikation- Entwicklungsplan- Qualitätssicherungsplan- Testplan- Wartungsplan- Konfigurationsmanagementplan

Dokumente nach ISO 9000-3:

Konfigurationsmanagement- Lenkung der Dokumente- Qualitätsaufzeichnungen- Messungen und Verbesserungen (am Produkt,

des Prozesses)- Festlegung von Regeln, Praktiken und

Übereinkommen- Unterauftragsmanagement- Einführung und Verwendung bereitgestellter SW-

Produkte- Schulungen

Phasenunabhängige und unterstützende Tätigkeiten

ISO 9000-Systemzertifikat- unabhängige, sehr aufwändige Zertifizierung- Audit: Überprüfung der Forderungen nach ISO 9000

Gültigkeit 3 Jahre- jährliche Überwachungsaudits- Wiederholungsaudit nach 3 Jahren (für weitere 3 Jahre

gültig)

Zertifizierung

Neue Normen und Richtlinien

• ISO 19001 (Richtlinien für das Auditing)• Spezialversion der ISO 9001 für die Automobilindustrie

ISO 9000 ISO 8402

ISO 9000:2000

ISO 9004

ISO 9004:2000

ISO 9001 - ISO 9003

ISO 9001:2000

Komprimierung:

Kritik am Zertifizierungsprozess

• Norm bleibt an vielen Stellen allgemein und bietet große Interpretationsspielräume

• Auslegungsmöglichkeiten werden für einen Außenstehenden nicht ersichtlich

Anspruch Wirklichkeit

Bei der Zertifizierung wird die Ausgestaltung der QM-Elemente in Hinblick auf deren Wirksamkeit geprüft.

Bei der Zertifizierung wird die Existenz der QM-Elemente geprüft

Für die Zertifizierung ist der Wortlaut der zum Zeitpunkt der Zertifizierungsaudits gültigen Version der Norm maßgeblich.

Für die Zertifizierung ist maßgeblich, ob die jeweilige Interpretation der Norm plausibel gemacht werden kann.(Zertifizierer nehmen zum Teil Normenänderungen vorweg)

Ein Zertifikat reduziert die Anzahl der externen Audits durch Auftraggeber.

Ein Zertifikat reduziert lediglich die Anzahl der externen Audits durch naive Auftraggeber.

Lenkt die Aufmerksamkeit der Geschäftsführung auf QS-Probleme- durch externe Zertifizierung und Wiederholungsaudits

entsteht Zwang eines Qualitätsmanagementsystems- Anforderungen festlegen („was“ wird „wie“ umgesetzt)- viele Auftraggeber fordern ISO 9000- Zertifikat- gute Werbung- Reduziert das Produkthaftungsrisiko (Nachweis,

Protokollierung)- Verstärkung des Qualitätsbewusstseins der Mitarbeiter

Vorteile

- Mischung von Tätigkeiten und Dokumenten- keine saubere Trennung zwischen fachlichen Aufgaben,

Managementaufgaben und Qualitätssicherungsaufgaben- Software-Bürokratie durch Vielzahl von Dokumenten- Gefahr von mangelnder Flexibilität- ist Qualifikation der Auditoren ausreichend ?- ohne CASE-Werkzeuge -> teurer, bürokratischer Aufwand- schlechte Übersetzung, viele englische Begriffe- niemand weiß, ob festgesetzte Anforderungen für die

Softwareentwicklungspraxis angemessen sind- die Wirksamkeit der geforderten Maßnahmen ist weder

wissenschaftlich noch empirisch nachgewiesen- die ISO 9000 bietet lediglich Lösungen für die Gestaltung

eines QMS an sie untersucht keine Probleme und Ursachen sie gibt keine Handlungsempfehlungen

Nachteile

Definition nach ISO 8402:Auf der Mitwirkung aller ihrer Mitglieder basierende Führungsmethode einer Organisation, die Qualität in den Mittelpunkt stellt und durch Zufriedenheit der Kunden auf langfristigen Geschäftserfolg sowie auf Nutzen für die Mitglieder der Organisation und für die Gesellschaft zielt.

Das gesamte Unternehmen mit allen Mitarbeitern werden ausnahmslos in die Qualitätsverbesserung einbezogen.Der Kunde entscheidet über die Qualität. Das Konzept wird aktiv gestaltet, und wird sozusagen „gelebt“.

TQM – Totales Qualitätsmanagement

Basis des TQM-Ansatzes:- Bereichs- und funktionsübergreifend- Kundenorientierung

- Prozessqualität- Produktqualität- Kontinuierliche Qualitätsverbesserung

- Einbeziehung aller Mitarbeiter- Vorbildfunktion des Managements- Qualität wird gleichberechtigt zu Kosten und Terminen bewertet

T

Q

M

Prinzipien des TQMs

Beim TQM-Ansatz handelt es sich um keinen fest umrissenen, scharf abgegrenzten Ansatz

- Prinzip des Primats der Qualität: Alle Prozesse sind Qualitätsprozesse. Verschwendung und Nacharbeitung sollen vermieden werden

- Prinzip der Zuständigkeit aller Mitarbeiter: Alle beteiligten Mitarbeiter müssen zur Qualität des Endproduktes beitragen. Qualität ist integraler Bestandteil seiner Arbeit. Eine Qualitätssicherungsabteilung wird überflüssig.

- Prinzip der ständigen Verbesserung (Kaizen):Kleine kontinuierliche Schritte zur Qualitätsverbesserung

- Prinzip der Kundenorientierung: Primäres Ziel ist die Erfüllung der Kundenanforderungen. Im Mittelpunkt stehen Kundennutzen und Kundenzufriedenheit

- Prinzip des internen Kunden-Lieferanten-Verhältnisses:Kundenorientierung gilt sowohl für externe als auch interne Kunden (andere Mitarbeiter). Jedes Team und jeder Mitarbeiter ist für die Qualität seines Teil- oder Zwischenprodukts selbst verantwortlich

- Prinzip der Prozessorientierung: Qualität ist das Ergebnis eines geplanten Prozesses. Fehlervermeidung kommt vor Fehlerbehebung.

Konzepte des TQM- Klar formulierte Qualitätspolitik (ist Allen bekannt und wird

von Allen befolgt)- Festlegung und Bekanntgabe der Kompetenzen,

Befugnisse und Verantwortlichen- Einführung eines Qualitätsmanagementsystems zur

ständigen Verbesserung aller Prozesse- Konsequente Schulungen aller Mitarbeiter in Qualität und

Qualitätsmanagement- Qualtitätszirkel- Quality Function Deployment (QFD)

Qualitätszirkel:Qualitätsprobleme werden in regelmäßigen Treffen weniger Mitarbeiter gelöst bzw. Verbesserungen eingeführt.

folgende Methoden haben sich bewährt:- Brainstorming- Pareto-Analyse- Ursache-Wirkungs-Diagramme

Quality Function Deployment (QFD)Qualitätsfunktionen werden entfaltet, und tragen zu- Kundenorientierung- internen Kunden-Lieferanten-Verhältnis und- Prozessorientierung bei.

Vorteile von TQM:- Integrierter Ansatz, der technische und soziale Komponenten

gleichrangig berücksichtigt- Fokussierung auf Kundenanforderungen- Qualitätsverbesserung ist Unternehmensziel

Nachteile von TQM:- nicht so konkret fassbar (wie zB. ISO 9000)- Schwer einführbar. Unternehmenskultur muss geändert

werden- Stark produktionsorientiert: nur mit geeigneten Anpassungen

auf Softwareentwicklung übertragbar- Unter dem Qualitätsbegriff wird alles subsumiert

einschließlich klassischer Managementaufgaben.

Das CMM

Einleitung / Motivation

Übersicht über CMM

Erwarteter Nutzen von CMM (Prozessverbesserung)

CMM im Detail

People Capability Maturity Model

Ziele von P-CMM

Struktur von P-CMM

P-CMM im Detail (Key Process Area)

Auf der Suche nach Auswegen aus der Softwarekrise

entstanden

Das Capability Maturity Model beschreibt ein

Rahmenprogramm, in dem die Schlüsselelemente

eines effektiven Softwareprozesses zusammengefaßt

sind

Entwicklung 1986-1993 des SEI,

Carnegie Mellon University in Pittsburgh

Weltweit anerkannt und eingesetzt

Motivation

Einsatz zur (langfristigen) Software-

Prozessverbesserung oder zur Prozessbewertung

Qualitätssicherung

5 Reife Grade werden evolutionär durchlaufen

Begriffe:

Capability = Fähigkeit

Maturity = Reife

Wozu dient das CMM?

Das CMM hat seinen Ursprung in einem Auftrag des DoD Das DoD wollte ein Hilfsmittel zur Beurteilung der Leistungsfähigkeit von Software-Lieferanten. Veranlassung war die häufige Überschreitung von Lieferterminen Überschreitung von Entwicklungsbudget mangelnde Qualit¨at Entwicklung des CMM ab 1986 im Auftrag des DoD.

DoD: Department of Defense (US-Verteidigungsministerium)

Ausgangs¨uberlegung Ausgangs¨uberlegung Die Ausgangs¨uberlegung hierzu lautet, daß die Qualit¨at

eines Softwareprodukts weitgehend von der Qualit¨at der

Entwicklungsprozesse abh¨angt, mit denen es hergestellt wird. Ziel des SEI ist es die Software-Praktiken in den USA zu verbessern und die Qualit¨atsbewertung Software-produzierender Unternehmen zu erm¨oglichen.

initial (32,2%)repeatable (39,3%)defined (19,4%)managed (5,4%)optimizing (3,7%)

Die Zahlen in den Klammernzeigen, wie viele von 4783Projekten in 1012 befragtenOrganisationen welche Stufe desCMM erreicht haben.

Reifegrade

5 Die Reifegrade

Quelle: Software Engineering Measurement and Analysis Team: Process Maturity Profile of the Software Community, CMU/SEI, 03/99

Idee der Prozessverbesserung:

Assessments als Grundlage der

Prozess-Verbesserung

Die IDEAL Annäherungsmethode legt ein Rahmenwerk fest, wie die Prozessverbesserung ablaufen könnte

Es werden zyklisch die folgenden 5 Stufen durchlaufen:

Initialisieren (Initiating)

Diagnostizieren (Diagnosing)

Festlegen (Establishing)

Ausführen (Acting)

Lernen (Learning)

Prozessverbesserung im CMM

Maturity Levels

Key Process Areas

Common Features

Key Practices

Leistungsfähigkeit der Prozesse

Ziele

Einführung

Infrastruktur oder betriebl. Tätigkeiten

bezeichnet

erreichen

ansteuern

beschreiben

beinhalten

geregelt durch

beinhalten

CMM von SEI

= Software Engineering Institute (SEI)

- Kernstück: disciplined engineering - Programm

CMM- Modell (Capability Maturity Model)

- fünf Stufen zunehmender Prozeßreife

- Schlüsselbereichen (key process areas)

- Schlüsselpraktiken (key practices)

- relevanten Aspekten (common features)

CMM - Stufe1: ad-hoc• keine ordentlichen Vorkehrungen für die Verwaltung von Softwareprojekten

• keine stabile Umgebung für die Entwicklung

• Produkt wird abhängig vom Personal

• Qualität, Fertigstellungszeitpunkt eines Softwareprodukts sind unvorhersehbar

CMM - Stufe 2: geordnet• Einführung von Maßnahmen für eine geordnete Verwaltung und Verfolgung

von Softwareprojekten

• explizite und geordnete Nutzung der Erfahrungen aus früheren Projekten

• gewisse Vorhersagbarkeit des Prozesses

CMM - Stufe 3: definiert • Definition und Dokumentation aller Prozesse der Organisation

Standard-Softwareprozeß der Organisation

Auswahl einer speziellen Fassung für jedes Projekt

= definierte Prozess des Projekts

CMM - Stufe4: verwaltet • Formulierung und Überwachung quantitativer Ziele zur Prozeßgüte

• Einführung wohldefinierter Messungen

Verminderung von Leistungsvariationen

CMM - Stufe 5: selbstverbessernd • Ausrichtung auf laufende Verbesserung des Softwareprozesses

• Defektvermeidung

- Analyse begangener Fehler

- Ursachenfindung und Ursachenausschluss

Grundlegende Eigenschaften (Common Features)

Bereitschaft den Prozess einzuhalten

Fähigkeit den Prozess einzuhalten

Planung der Aktivitäten

Messung und Analysen

Überprüfen der Umsetzung

Kennzeichen der Stufe 1

chaotischer ad-hoc Prozess keine formelle Planung und Kontrolle kein oder schlechtes Konfigurationsmanagement unvorhersehbare Kosten, Zeit und Qualit¨at Unternehmen auf Stufe 1 kann trotzdem

funktionierende Software herstellen. Dieser Erfolg ist in der Regel Einzelpersonen zuzuschreiben, welche sich besonders engagiert haben.

Schlüssel-Prozess-Bereiche für Level 1 (Initial)

Stufe der meisten Firmen

Chaos zwischen Input und Ziel

Anforderungs-Management

Geringe Effizienz

Zeit und Kosten werden regelmaßig überschritten

Erfahrungen aus alten Projekten

werden nicht eingebracht

Schlüssel-Prozess-Bereiche für Level 2 (Repeatable)

Schwierig zu verstehen

Strukturiertes Anforderungs-Management

Problem wird in Teilschritte zerlegt

Genauere Software Projektplanung

Software Projektverfolgung

Immer noch wenige Leistungsträger

Versuch von Qualitätssicherung

Ressourcen-Planung wird realistischer

Hohe Anzahl an Nachbearteitungen

Schlüsse-Prozess-Bereiche für Level 3 (Defined)

Individuelle Prozessaktivitäten sichtbar

Unternehmens-Prozess definiert

Einzelne Phasengliederung

Integriertes Software Management

Koordination zwischen Entwicklungsteams

Teilschritte müssen weniger oft nachbearbeitet

werden

Peer Reviews

Schlüssel-Prozess-Bereiche für Level 4 (Managed)

Zentrales Steuerungsorgan erhält Rückkopplungen

Risikoeinschätzung durch rückkoppeln

Quantitatives Prozess-Management

Software Qualitätsmanagement

Selten werden Zeit und Kosten überschritten

Schlüssel-Prozess-Bereiche für Level 5 (Optimizing)

Technologiewandel - Management

Prozesse dynamisch in Abhängigkeit vom

Entwicklungsfortschritt

Frühe Fehlererkennung und –vermeidung

Prozessverbesserung

Erfahrungen und Zahlen aus der Praxis

NASA begann 1975 mit Prozessverbesserung, 1989 Reife-Grad 5 erreicht

Hohe Kosten für die Einführung von CMM, aber dann ca. das 10-fache an Einsparungen

Arbeitsmoral der Mitarbeiter hat sich deutlich verbessert

0

1020

30

4050

60

7080

Initi

alW

iede

rhol

bar

Def

inie

rtM

anag

edO

ptim

iere

nd

CMM im Gesamtkontext

Prozess- Mitarbeiter Technologie Marketing Management

CMM vs. ISO-9000

Vorteile von CMM gegenüber anderen Vorgehensmodellen Zyklische Prozessoptimierung : Mögliche Einführungsstrategie für ein

Vorgehensmodell wie RUP (Rational Unified Process) oder das V-Modell (Vorgehensmodell)

CMM legt kein Vorgehensmodell bzw. OO-Technik (Objektorientierte Systementwicklung) fest: Mögliches Referenzmodell zum Vergleich von Vorgehensmodellen

CMM sieht (ab Level 3) im Vergleich zu manchen Vorgehensmodellen über Projekte hinaus auf die gesamte Organisation

Vorteile von CMM

Systematische Möglichkeit zur Verbesserung der

Prozessqualität

Bei sorgfältiger Anwendung hohe Wirksamkeit,

im Bezug auf Fehlervermeidung

Nutzen höher als Kosten

Großes Verbesserungspotential bei

Entwicklungsprozessen

Zustandsvergleich mit anderen Organisationen

Nachteile von CMM

Kein garantierter Zusammenhang zwischen hohem

Reifegrad und erfolgreicher Softwareproduktion Stark technikbezogen, wenig personalbezogen Für hohe Stufe müssen alle Bedingungen der unteren

Stufen erfüllt sein Für Softwareentwicklung konzipiert nicht

optimal geeignet für Anwendungsbereiche, wie z.B. Systementwicklung

Assessment-Fragen können nur mit ja und nein beantwortet werden

People Capability Maturity Model

CMM primär zur Verbesserung des Software

Entwicklungsprozesses

Zusätzlich People Capability Maturity Model (P-CMM)

zur Verbesserung des Personalmanagements bei

der Software-Entwicklung

5 Reifegrade (P - CMM)

Ziele des P - CMM

Erhöhung der Fähigkeiten des Unternehmens durch

Erhöhung der Fähigkeiten der Entwickler

Die Fähigkeit, Software zu entwickeln, wird in der

organisationalen und nicht in der individuellen Ebene

angesiedelt

Motivierung von Mitarbeitern

Halten von wichtigen Mitarbeitern im Unternehmen

Struktur (P - CMM)

P-CMM beschreibt wie CMM den Entwicklungsprozess mit den Mitteln:

- Maturity Level - Key Process Area - Common Features - Key Practices

CMM Struktur (P - CMM)

Maturity Levels

Key Process Areas

Common Features

Key Practices

Entwicklungsfähigkeit des Personals

Ziele

Einführung

Schlüsselprozesse

beschreibt

erreichen

ansteuern

erfüllen

beinhalten

geregelt durch

beinhalten

Struktur (P - CMM) (2)

Maturity Level: beschreibt den Reifegrad der

Entwicklungsfähigkeiten des Personals

Key Process Area: Schlüsselprozesse, die je nach

Reifegrad verfolgt werden sollten

Common Features: Unterteilung der

Schlüsselprozesse in gemeinsame

Bereiche

Key Practices: Anweisungen, die die

Schlüsselprozesse erfüllen

Key Process Areas identifizieren eine Menge von zusammenhängenden Aktivitäten, welche bestimmte Ziele verfolgen.

Kontinuierliche Erfüllung aller Ziele einer Key Process Area über mehrere Projekte hinweg

Institutionalisierung definierter Fähigkeiten

Key Process Areas höherer Maturity Levels bauen auf Key Process Areas niedrigerer Level auf

Key Process Areas

Einordnung der Key Process Areas

Zusammenfassung der KPAs in 4 Gruppen,

unabhängig vom jeweiligen Maturity Level:

Aufbau von Fähigkeiten

Zusammensetzung von Teams

Motivierung

Personalplanung

Einordnung der Key Process Areas

Aufbau von Personal-

Fähigkeiten Teambildung Motivierung planung

Optimizing

Managed

Defined

Repeatable

Initial

LevelProzesskategorie

Common Features

Untergliederung der Key Process Areas in jeweils

5 Aufgabenbereiche (Common Features):

Unterstützung der Durchführung

Fähigkeit zur Durchführung

Durchzuführende Aktivitäten

Bewertung und Analysen

Überprüfung der Umsetzung

Key Practices

Die Aktivitäten, Vorgehensweisen und Anweisungen innerhalb der Key Process Areas werden in den Key Practices beschrieben.

Die Key Practices beschreiben dabei aber nur das „was“ und nicht das „wie“.

Sie werden in jeder Key Process Area einem der Common Features zugeordnet

Level 1 - Initial

Keine besonderen Aktivitäten zur Personalplanung

und Personalentwicklung

Keine Basis für vernünftige Verbesserung von

Arbeitsabläufen

Unbekannte Entwicklungspotentiale

Mitarbeiter streben eher persönliche Vorteile an

Grad der Fachkompetenz im Unternehmen wächst

nicht

Level 2 - Repeatable

Es müssen grundlegende Probleme behandelt

werden, welche die Effektivität behindern, um Level

2 zu erreichen:

Ungeeignete Arbeitsumgebung

Unklare Zielvorgaben

Fehlendes Fachwissen

Schlechte Kommunikation

Ziele in Level 2

Identifikation der Personalentwicklung (wichtig in

Organisation)

Etablierung grundlegender Mechanismen zur

Personalentwicklung

Aufbau von Verantwortung für die

Personalentwicklung

Ausstattung der Mitarbeiter mit dem nötigen

Fachwissen

Key Process Areas in Level 2

Arbeitsumgebung

Kommunikation

Personaleinstellung

Leistungsmanagement

Training

Kompensation

Level 3 - Defined

Nach Etablierung von Mechanismen in Level 2 Level 3: Angleichung im ganzen

Unternehmen

Analyse der Geschäftsprozesse

Ableitung der benötigten Kompetenzen

Ausrichtung der Methoden zur

Personalentwicklung an die Anforderungen

Key Process Areas in Level 3

Analyse von Wissen und Fähigkeiten

Personalplanung

Entwicklung von Kompetenzen

Karriere - Entwicklung

Ausrichtung auf Kompetenzen

Beteiligung der Mitarbeiter

Level 4 - Managed Nutzen der etablierten Mechanismen Level 4: Strategischen Vorteil aus

Kompetenzen der Mitarbeiter ziehen

Schwerpunkte:

Teambildung

gezieltes Management der

Personalentwicklung

Key Process Areas in Level 4

Mentoring

Teambildung

Teambasierte Methoden

Kompetenzmanagement

Leistungsangleich

Level 5 - Optimizing

Kontinuierliche Verbesserung der Mitarbeiter-kompetenz und des Unternehmens (ähnlich CMM)

Verbesserungen auf: eigener Ebene Teamebene Organisationsebene

Dazu gehört auch die Verbesserung der Methoden zur Personalentwicklung selbst

Key Process Areas in Level 5

Persönliche Kompetenzentwicklung

Coaching

Kontinuierliche Innovation

Bootstrap - Methode zur Softwareprozess- Verbesserung

• Was sind Software-Prozesse?

• Was ist Prozessverbesserung?

• BOOTSTRAP - Software Prozess Assessment

- Übersicht

- BOOTSTRAP-Fragenkatalog

- Grundlagen

(CMM, ESA PSS 05, ISO 9000, EFQM)

- BOOTSTRAP - wichtigsten Phasen

- Einteilung in Bereiche

• Wozu bedarf es Sofware Prozess Assessments wie BOOTSTRAP?

• Ziele von Sofware Prozess Assessments

Was sind Software-Prozesse?

= Herstellung, Pflege und Betrieb von Software

= eine Folge von Schritten, die zur Erreichung eines gegebenen Zwecks

ausgeführt wird

• ad-hoc Prozesse - Ablauf spontan, individuell und ungeregelt

• systematische Prozesse - Ablauf geplant und gelenkt

- Vereinheitlichung der Arbeitsweise

- geringere Abhängigkeit

Projekterfolge wiederholbar

Qualität wird lenkbar

Was ist Softwareprozess- Verbesserung?

einmal definierten Prozesse

fortlaufend zu analysieren

Schwachstellen und Verbesserungsmöglichkeiten zu identifizieren

entsprechende Anpassungen in den Prozessabläufen vorzunehmen

nicht für immer in gleicher Weise anzuwenden

Plan-Do-Check-Act

Plan = Planung von Qualitätsmaßnahmen

Do = Durchführung nach Plan

Check = Messung der Erfolges während und nach der Durchführung der Maßnahmen

Act = Handeln bei Abweichungen

- Maßnahmen zur Korrektur der festgestellten Abweichungen

- Planänderungen

- Verbesserungen im Qualitätsmanagementsystem

Definition - Planung der Prozesse

Anwendung - Leben und Führen der Prozesse

- Prozessabläufe beobachten und erheben

Ergebnis: Verbesserungspotenziale

- kontinuierliche Messung der wichtigen Prozessgrößen

konkrete Änderungsmaßnahmen

Änderung - Durchführung der Verbesserungsmaßnahmen

• Früher: - Kriterienkatalog und ein Bewertungsschema

- Studium vorhandener Dokumente (Arbeitsanweisungen und -prozeduren Arbeitsergebnisse)

- Interne Assessoren

• Heute: - Einzel- oder Gruppen-Interviews

- Workshops

- moderieren die Erhebung der Fakten

-analysieren die Ergebnisse

- Externe Assessoren

- unterstützen bei der Identifikation von Verbesserungsmassnahmen

- garantieren Objektivität und Vergleichbarkeit der vorgenommenen Bewertungen

BOOTSTRAP - Übersicht

• Europäisches Assessment- Verfahren

• Alle Projektgrößen

• Auch für kleine Unternehmen

• ISO 9000 und ISO 9000-3 basierend

• Ergebnis ist nicht eine Zahl (Reifegrad) sondern ein detailliertes Profil

- CMM

- Spice

- Trilium

BOOTSTRAP - Fragebogen

BOOTSTRAP - Der Ansatz

• Verwendung bewährter Metriken (SEI CMM)

• Verbesserung existierender Modelle (ESA PSS-05)

• Abstimmung mit den anerkannten Normen (ISO 9000, 9000-3)

• Integration der Prinzipien von TQM (EFQM)

Zum Vergleich: Bootstrap - Reifegradstufen

· Level 0: Incomplete Process

· Level 1: Performed Process

· Level 2: Managed Process

· Level 3: Established Process

· Level 4: Predictable Process

· Level 5: Optimizing Process

BOOTSTRAP - Der Ansatz

• Verwendung bewährter Metriken (SEI CMM)

• Verbesserung existierender Modelle (ESA PSS-05)

• Abstimmung mit den anerkannten Normen (ISO 9000, 9000-3)

• Integration der Prinzipien von TQM (EFQM)

PSS-05 von ESA

= European Space Agency

- Board for Software Standardisation and Control (BSSC)

- 1984 PSS-05

- für alle ESA- Entwicklungen

- auch für Industrieunternehmen

(Motorola, Ford, UK Defense Research Agency)

PSS-05 von ESA

Software- Lebenszyklen:

Waterfall Incremental Delivery Evolutionary Development

PSS-05 von ESA

Phasen:

User requirements

Software requirements

Architectural design

Detailed design & production of code

Transfer of software to operations

Operations and maintenance

BOOTSTRAP - Der Ansatz

• Verwendung bewährter Metriken (SEI CMM)

• Verbesserung existierender Modelle (ESA PSS-05)

• Abstimmung mit den anerkannten Normen (ISO 9000, 9000-3)

• Integration der Prinzipien von TQM (EFQM)

EFQM

= European Foundation for Quality Management

Grundlage: amerikanische Modell MBNQA

(Malcolm Baldrige National Quality Awards).

Ziel: Wettbewerbsfähigkeit im Konkurrenzkampf

auf den Weltmärkten zu erhöhen

800 Mitglieder

EFQM-Modell

• Gleichzeitige Betrachtung von

- Mensch

- Prozess

- Ergebnis

Prinzipien von EFQM

• Kundenorientierung

• Zielorientierung

• Innovation und kontinuierliches Lernen

• Mitarbeiterentwicklung und -einbeziehung

• Partnerschaftliche Beziehung

• Gesellschaftliche Verantwortung

• Führung und Zielkonsequenz

• Management mit Prozessen und Fakten

BOOTSTRAP - Der Ansatz

• Verwendung bewährter Metriken (SEI CMM)

• Verbesserung existierender Modelle (ESA PSS-05)

• Abstimmung mit den anerkannten Normen (ISO 9000, 9000-3)

• Integration der Prinzipien von TQM (EFQM)

ISO 9001 und ISO 9000-3

• ISO 9000-3 Richtlinien für den Einsatz von ISO 9001

• ISO 9001 - Entwicklung, Lieferung und Wartung von Software

- kein bestimmtes Vorgehensmodell

- definiert, dass das Projekt in Phasen organisiert werden muss

- genaue Definition der einzelnen Phasen

• definiert alle qualitätsrelevanten Teile eines Projektes

BOOTSTRAP - wichtigsten Phasen

• Briefing für die Geschäftsführung

- Umfang abstecken

- Ernennung eines lokalen Koordinators oder Teams

• Briefing für die Informatikleitung

- Erläuterung des Ablaufs

- Auswahl repräsentativer Projekte

- Sammlung relevanter Dokumente

• Allgemeine Orientierung

- Site Interview und Projektbefragungen

- Ermittlung der Prozessdaten

- Überprüfung der Erkenntnisse

BOOTSTRAP - wichtigsten Phasen

• Vorläufige Analyse & Präsentation

- Identifikation der Stärken und Schwächen

- Diskussion der Empfehlungen

- Festlegung der Prioritäten

- Sammeln von Rückmeldungen und Kommentaren

• Konsolidierung & Berichterstattung

- Unterstützung der Aktionsplanung

- Moderation eines Workshop mit dem Assessment-Betreuer

- Zusammenfassung und tiefgehende Analyse der Ergebnisse

Einteilung in Bereiche

Wozu bedarf es Software Process Assessments

wie BOOTSTRAP?

• Ein besseres Verständnis für die Entwicklungspraxis zu erreichen

• Mitarbeiter zu motivieren

• Eine unabhängige Meinung über Stärken und Schwächen der Organisation

zu erhalten

• Konsistente Ziele zu setzen (z.B. die ISO-Zertifizierung vorzubereiten)

• Realistische Verbesserungsmaßnahmen zu identifizieren

• Einen Vorgehensplan zu erstellen, Prioritäten zu setzen, Meilensteine

festzulegen

Ziele von Softwareprozess Assessments

• Reduzierung der Entwicklungskosten

• Steigerung der Produktivität

• höheren Kundenzufriedenheit

• zuverlässiger und verständlicher Eindruck der Fähigkeiten der

Entwicklungsorganisation

• Benchmarking

• Steigerung Prozessfähigkeit

• Erhöhung der Wirtschaftlichkeit des Unternehmens/Abteilung

• Verbesserung der Qualität der Software

Quellen

http://www.bootstrap-institute.comhttp://www.deutsche-efqm.de http://www.tqm-online.dehttp://www.deming.dehttp://www.esa.int