florian deißenböck eine wertbasierte sicht auf ...€¦ · j. juran & f. gryna (eds.):...
TRANSCRIPT
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�
Florian Deißenböck
Eine wertbasierte Sicht auf Softwarequalität
25. Juni 2008BITKOM AK SQM und PG BE&QM
Gemeinsame Arbeiten mit S. Wagner, E. Jürgens, B. Hummel, M. Pizka, M. Broy
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
2
» Quality is a complex and multifaceted concept. It is also the source of great confusion…«
David A. Garvin, 1984
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�
QualitätSichtweisen, Fragestellungen
QualitätsmodellierungAktivitäten, Modelle, Qualitäts-Controlling
ErfahrungenQualitätssicherungstechniken, Prozessvarianten
Herausforderungen
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�
Qualität – Sichtweisen
Transzendenter Ansatz Qualität ist immanente Güte, sie ist erkennbar aber nicht definierbar
Produktorientierter Ansatz Qualitäts-Unterschiede zwischen Produkten spiegeln sich in der unter-schiedlichen Ausprägung von Produkt-Attributen wieder
Benutzerorientierter Ansatz »Qualität liegt im Auge des Betrachters«
Herstellungsorientierter Ansatz Qualität ist definiert durch die Erfüllung der Anforderungen bzw. durch Abweichungen von der Spezifikation
Wertorientierter Ansatz Qualität als Tradeoff zwischen Kosten und Nutzen
David A. Garvin, What does »Product Quality« Really Mean?, 1984
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�
Qualitätsattribute
ISO 9126, 2003
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
6
QualitätskostenQuality Costs
Appraisal CostsPrevention Costs Internal Failure Costs External Failure Costs
Conformance Costs Non-Conformance Costs
Qualität is kein Selbstzweck
Maintainability: »The effort needed to make specified modifications to a component implementation« (SEI)
Monetäre Einheiten erlauben quantitative Vergleich unterschiedlicher Aspekte
»Money is the basic language of upper management« (Gryna, 1988)
F.M. Gryna, Quality Costs, 1988
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�F. Deißenböck, S. Wagner, M. Pizka, Kosten-basierte Klassifikation von Qualitätsanforderungen, 2007
Q-AttributNutzbarkeit
Wartbarkeit
Performanz
Portierbarkeit
Zuverlässigkeit
Aktivitäten
Nutzung
Wartung
Betrieb
Schulung
Stakeholder
Nutzer
Entwickler
Operator
Trainer
Definieren Kosten
Qualitätskosten
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�
Qualitäts-Matrix
M. Broy, F. Deissenboeck, M. Pizka, Demystifying Maintainability, WoSQ, 2006F. Deissenboeck et al., An Activity-Based Quality Model for Maintainability, ICSM, 2007
Entitäten
Aktivitäten
Attribute
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�
Quality Engineer
Developer
Artifacts
Guidelines& ReviewChecklists
QualityReports
Analysis Tool
creates/modi�es
interprets
con�gures
educates
analzyesrespects
designs
generates
de�nes
generates
reviews
Quality Model
uses
Qualitäts-Controlling
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�0
Quality-Dashboards
Deissenboeck et al., Tool Support for Continuous Quality Controlling, 2008
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
��S. Wagner, A Model and Sensitivity Analysis of the Quality Economics of Defect-Detection Techniques, 2006
Dist Inspection Unit Test Int. Test System Test Profit ROI1 650 300 550 550 74.467 0,122 0 500 750 750 54.254 0,083 100 100 100 100 -111.410 -0,314 50 50 50 2000 -33,035 -0,045 800 250 250 200 153.674 0,28
QS-Planung Frage: Verteilung der Aufwände für verschieden Testmethoden?
Gesucht: Optimaler ROI
Nutzen = gesparte zukünftige Kosten
Benötigt: Systemgröße, Fehlerdichte, Fehlerbehebungskosten, Effekti-vität der Testmethoden, …
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�2S. Wagner, A Literature Survey of the Quality Economics of Defect-Detection Techniques, 2006
Fehler-FindungTesten Inspektionen
Effektivität [%]Type Lowest Mean Median HighestFunctional 33 53.26 48.85 88Structural 17 54.78 56.85 89All 7.2 49.85 47 89
Type Lowest Mean Median HighestFunctional 1.22 1.72 1.71 2.47Structural 0.22 1.5 2.07 2.2All 0.04 1.26 1.5 2.47
Effizienz [Defekte/PS]
Type Lowest Mean Median HighestUnit 1.5 3.46 2.5 6Integration 3.06 5.42 4.55 9.5System 2.82 8.37 6.2 20All 0.2 8 4.95 52
Entfernungskosten [PS/Defekt]
Effizienz [Defekte/PS]
Phase Lowest Mean Median HighestReq.ments 0.05 1.06 1.1 2Design 0.07 2.31 0.83 6.3Coding 0.17 2.71 1.95 6.3All 0.05 1.91 1.2 7.5
Entfernungskosten [PS/Defekt]
Effektivität [%]Lowest Mean Median Highest
8.5 34.14 30 92.7
Lowest Mean Median Highest0.16 1.87 1.18 6
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
��S. Wagner et al., An Evaluation of Two Bug Pattern Tools for Java, 2008
Statische Analyse
Frage: Wie gut funktionieren die statische Analysewerkzeuge Findbugs und PMD? Ist er Einsatz wirtschaftlich?
Abgleich Systemhistorie und Feldfehler-Datenbank
Leistung der Analysewerkzeuge ist abhängig von Entwicklungsphase
Analysewerkzeuge konnten keinen Feldfehler für Produktionssystem finden
Analysewerkzeuge erfordern Konfigurationsaufwand
Aber: Entdeckung eines schweren Fehlers führt zu positivem ROI
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
��F. Deissenboeck, M. Pizka, Probabilistic Analysis of Process Economics, 2008
Prozess-Varianten
Frage: Ist der für Mainframe-Entwicklung eingesetzte Isolations-Me-chanismus wirtschaftlich?
Vergleich von realen Projekten nicht durchführbar
Entwurf eines Prozess-Analyse-Modells auf Basis von Markov-Ketten
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
��F. Deissenboeck, M. Pizka, Probabilistic Analysis of Process Economics, 2008
Prozess-Varianten Relative Bewertung von drei Prozess-Varianten
Datenbasis: Vergangene Projekte + Forschungsergebnisse
Kalibrierung des Analyse-Modells
Auswertung
Aufwand [%] Aufwand [%]
Konflikt-Wahrscheinlichkeit Konflikt-Wahrscheinlichkeit
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
�6
Herausforderungen
Ziel Wirtschaftlich fundierte Praxis des Software-Qualitäts-Managements
Erforderliche Schritte Integration der »Qualitäts-Managements-Inseln«
Definition eines integrierten, operationalisierten Kosten/Nutzen-Modells
Konsequente Datenerhebung
QuaMoCo BMBF-Projekt (in Beantragung)
»Software-Qualität: Flexible Modellierung und integriertes Controlling«
Partner: TU München, Fraunhofer IESE, SAP, Siemens, sd&m, itestra
Dei
ßenb
öck
Sof
twar
e-Q
ualit
ät
��
ReferenzenDemystifying Maintainability
M. Broy, F. Deissenboeck, M. Pizka Workshop on Software Quality (WOSQ) 2006
Tool Support for Continuous Quality Controlling F. Deissenboeck, E. Juergens, B. Hummel, S. Wagner, B. Mas y Parareda, M. Pizka IEEE Software, September 2008, to appear
Probabilistic Analysis of Process Economics F. Deissenboeck, M. Pizka Software Process: Improvement and Practice, 2008, 13, 5-17
An Activity-Based Quality Model for Maintainability F. Deissenboeck, S. Wagner, M. Pizka, S. Teuchert, J.-F. Girard International Conference on Software Maintenance (ICSM) 2007
Kosten-basierte Klassifikation von Qualitätsanforderungen Florian Deissenboeck, Stefan Wagner, Markus Pizka Erhebung, Spezifikation und Analyse nichtfunktionaler Anforderungen in der Systementwicklung Workshop in Zusammenhang mit der SE Konferenz 2007
What Does »Product Quality« Really Mean? D.A. Garvin MIT Sloan Management Review, 1984, 26, 25-43
Quality Costs F. Gryna J. Juran & F. Gryna (eds.): Juran‘s Quality Control Handbook, McGraw-Hill, 1988
An Evaluation of Two Bug Pattern Tools for Java S. Wagner, F. Deissenboeck, M. Aichner, J. Wimmer, M. Schwalb International Conference on Software Testing, Verification and Validation (ICST) 2008
A Model and Sensitivity Analysis of the Quality Economics of Defect-Detection Techniques S. Wagner International Symposium on Software Testing and Analysis (ISSTA) 2006
A literature survey of the quality economics of defect-detection techniques S. Wagner International symposium on International symposium on empirical software engineering (ISESE) 2006
ISO 9126 Standard for Software engineering — Product quality — Part 1: Quality model ISO Standard 2003