Key Process Area

Transcription

Key Process Area
Qualitätssicherung von
Software (SWQS)
Prof. Dr. Holger Schlingloff
Humboldt-Universität zu Berlin
und
Fraunhofer FOKUS
2.7.2013: Reifegradmodelle
Fragen zur Wiederholung
• Was wissen Sie über die ISO 9000?
H. Schlingloff, Software-Qualitätssicherung
Folie 2
Wo stehen wir?
1.
2.
3.
4.
5.
6.
7.
8.
9.
Einleitung, Begriffe, Software-Qualitätskriterien
Testverfahren, Teststufen, Testüberdeckung
automatisierte Testfallerstellung
Verifikation und Validierung, Modellprüfung
statische und dynamische Analysetechniken
Softwarebewertung, Softwaremetriken
Codereview- und andere Inspektionsverfahren
Zuverlässigkeitstheorie, Fehlerbaumanalyse
Qualitätsstandards, Qualitätsmanagement, organisatorische
Maßnahmen
H. Schlingloff, Software-Qualitätssicherung
Folie 3
ISO 9000 - Kritikpunkte
• “alles oder nichts”, Zertifizierungsaspekt
• Schwerpunkt ist Prozessdokumentation, nicht
die Angemessenheit der Prozesse
• Prozess- statt Produktsicht
H. Schlingloff, Software-Qualitätssicherung
Folie 4
ISO 25000 “SQuaRE”
• Software engineering – Software product Quality Requirements and
Evaluation (Qualitätskriterien und Bewertung von Softwareprodukten)





2500n
2501n
2502n
2503n
...
–
–
–
–
Qualitätsplanung und -management
Qualitätsmodelle und Leitlinien
Qualitätsmessung
Qualitätsanforderungen
• Produkt- statt Prozessqualität
• Produkt im Umfeld
H. Schlingloff, Software-Qualitätssicherung
Folie 5
Anwendungsbezogene Qualität
• „Quality in use“
H. Schlingloff, Software-Qualitätssicherung
Folie 6
Produktqualität
• „Internal software quality“
H. Schlingloff, Software-Qualitätssicherung
Folie 7
Referenzmodell zur Qualitätsmessung
H. Schlingloff, Software-Qualitätssicherung
Folie 8
Qualitätsanforderungen
ISO 25000 identifiziert folgende Arten von
Systemanforderungen:
• Human business process requirements
• Information system requirements
 Computer system requirements
- Computer hardware requirements
- Operating system requirements
- Application software requirements
- Datra requirements
• Mechanical system requirements
H. Schlingloff, Software-Qualitätssicherung
Folie 9
CMMI
• Capability Maturity Model Integration,
Reifegradsmodellintegration
 Vorläufer: CMM
 “Erfinder”: CMU SEI
• Fokus auf Verbesserung der Prozesse
 nicht: Fokus auf Bewertung
 nicht: Fokus auf Personen (People-CMM)
 nicht: Fokus auf Technologie
• Ideologie (wie bei ISO9000)
 Produktqualität wird überwiegend durch den Herstellungsprozess des
Produktes bestimmt
 Prozesse werden in Prozessgruppen eingeteilt und verbessert
H. Schlingloff, Software-Qualitätssicherung
Folie 10
• Lesen (pp 1-70): http://www.sei.cmu.edu/
library/assets/whitepapers/10tr033de_v11.pdf
• Teil der Ablauforganisation
• Strukturierung und Organisation des
Projektablaufs („Softwareprozesse“)




Phaseneinteilung, Meilensteine
Berichtswesen und Dokumentation
Freigabeverfahren, Präsentation
...
• keine allgemeingültige Antwort auf die Frage
„was ist das optimale Vorgehen?“
• abgeleitete Frage: „wie kann die Effizienz
des Vorgehens beurteilt bzw. gesteigert
werden?“
H. Schlingloff, Software-Qualitätssicherung
Folie 11
Historie des CMMI
• Ausgangssituation: 1983 US DOD – 28 Monate-Projekt hat 20
•
•
•
•
•
•
Monate Verspätung, 4 Jahres-Projekt braucht 7 Jahre, kein
einziges SW-Projekt rechtzeitig; 59 Milliarden US$ Verlust
wegen Abbruch des A12 Flugzeugprojektes wg.
Softwareproblemen
1984 Gründung des SEI an der CMU
 Mission: Probleme des Software Engineering und Lösungsvorschläge aufzeigen
1987: CMM V 1, Fragebogen
1991 V1.0, revidiertes Modell
1997 V2.0 zurückgezogen, CMMI gestartet
2002 freigegeben
2010 V1.3 (CMMI-DEV, CMMI-ACQ, CMMI-SVC)
! Achtung, Folien beziehen sich teilweise noch auf CMM !
H. Schlingloff, Software-Qualitätssicherung
Folie 12
Zielsetzung des CMMI
• Keine “silver bullet”-Methoden, sondern nachhaltige
Prozessverbesserungen (langfristiger Ansatz)
 Bessere Vorhersagbarkeit der Prozesse
 Geordnete Menge inkrementeller, bewährter Verbesserungen in
logischer Abfolge
• Spezialisierungen:
 "CMMI for Development" (CMMI-DEV)
 "CMMI for Acquisition" (CMMI-ACQ)
 "CMMI for Services" (CMMI-SVC)
• CMMI-DEV
 4 Fähigkeitsgrade
 5 Reifegrade
 18 “Key Process Areas”
H. Schlingloff, Software-Qualitätssicherung
Folie 13
Nutzungsvorteile
Process improvement benefits fall into eight general categories:








improved schedule and budget predictability
improved cycle time
increased productivity
improved quality (as measured by defects)
increased customer satisfaction
improved employee morale
increased return on investment
decreased cost of quality
• Staged representation
vs. continuous representation
H. Schlingloff, Software-Qualitätssicherung
Folie 14
Begriffe des CMM (I)
• Capability Level: Der Fähigkeitsgrad bezeichnet den Grad
•
•
•
•
der Institutionalisierung eines einzelnen Prozessgebiets
Maturity Level: beschreibt den Reifegrad des
Entwicklungsprozesses
Key Process Area: Mengen von Schlüsselprozessen, die im
entsprechenden Reifegrad durchgeführt werden
Common Features: Unterteilung der Schlüsselprozesse in
gemeinsame Bereiche
Key Practices: konkrete Schlüsselpraktiken (Anweisungen),
um die Schlüsselprozesse zu erfüllen
H. Schlingloff, Software-Qualitätssicherung
Folie 15
Fähigkeitsgrade
CMMI kennt folgende Fähigkeitsgrade
• 0 – Incomplete : Die Arbeit wird so durchgeführt, dass die
fachlichen Ziele ("Specific Goals“) nicht erreicht werden
• 1 – Performed : Die Arbeit wird so durchgeführt, dass die
fachlichen Ziele erreicht werden
• 2 – Managed : Die Arbeit wird vom Management geführt
• 3 – Defined : Die Arbeit wird mit Hilfe eines angepassten
Standardprozesses durchgeführt und die Arbeitsweise
kontinuierlich verbessert
Der Fähigkeitsgrad kann von einem Auditor bestätigt werden
H. Schlingloff, Software-Qualitätssicherung
Folie 16
Maturity Level (Reifegrade)
• Stufen in der Entwicklung einer Organisation auf dem Weg zu
•
•
•
optimalen Softwareprozessen
5 Stufen definiert: initial, wiederholbar, definiert, beherrscht,
optimierend (Definition siehe später)
Jeder Grad ist eine
spezifische Schicht in der
kontinuierlichen
Prozessverbesserung, die
mit definierten Schritten
erreicht wird
Reifegrade können nur
nacheinander durchlaufen
werden
H. Schlingloff, Software-Qualitätssicherung
Folie 17
Key Process Areas
• Jeder Reifegrad ist in Key Process Areas unterteilt
• Key Process Areas identifizieren eine Menge von
•
•
zusammenhängenden Aktivitäten, welche bestimmte
Ziele verfolgen.
Es müssen alle Ziele einer Key Process Area über
mehrere Projekte hinweg kontinuierlich erfüllt sein,
damit die durch die Key Process Area definierten
Fähigkeiten institutionalisiert sind.
Die Key Process Areas in höheren Reifegraden bauen
auf den Key Process Areas niedrigerer Grade auf.
H. Schlingloff, Software-Qualitätssicherung
Folie 18
Common Features
Die Key Process Areas sind jeweils in fünf Aufgabenbereiche
(Common Features) untergliedert:
• Unterstützung der Durchführung: Definition von
Leitlinien, Unterstützung durch das Management
• Fähigkeit zur Durchführung: Zuweisung von Ressourcen,
Errichten von Organisationsstrukturen, Training
• Durchzuführende Aktivitäten: Beschreibung der
Schlüsselaufgaben
• Bewertung und Analyse: Erhebung von Daten über die
Umsetzung
• Überprüfung der Umsetzung: Überprüfung durch die
Qualitätssicherung und das Management
H. Schlingloff, Software-Qualitätssicherung
Folie 19
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” (Infrastruktur, Tätigkeiten usw.)
und nicht das ,,wie” (Tools, Formate o.ä.)
• Sie werden in jeder Key Process Area einem
der Common Features zugeordnet.
H. Schlingloff, Software-Qualitätssicherung
Folie 20
Grafik: CMU SEI
H. Schlingloff, Software-Qualitätssicherung
Folie 21
Grafik: CMU SEI
H. Schlingloff, Software-Qualitätssicherung
Folie 22
Erwarteter Nutzen
(Vorhersagbarkeit, Kontrolle, Effektivität)
Grafik: CMU SEI
H. Schlingloff, Software-Qualitätssicherung
Folie 23

Documents pareils