Sie sind auf Seite 1von 38

Cost-Optimisation of Analytical Software Quality Assurance

Stefan Wagner Software & Systems Engineering Technische Universit at Mu nchen wagnerst@in.tum.de
16. April 2007

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 1 / 22

Motivation
Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

s s

Analytische Qualit atssicherung (QS) ist ein wichtiger Teil der Entwicklung von Software Die Kosten fu r diese Manahmen sind signikant (Anteil an den Entwicklungskosten): Jones (1987): 3040% fu atssicherung und r Qualit Fehlerentfernung x Myers (1979): 50% fu r Test x Das amerikanische National Institute of Standards and Technology (2002): 80% fu r Fehlerentdeckung und -entfernung
x

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 2 / 22

Motivation
Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

s s

Analytische Qualit atssicherung (QS) ist ein wichtiger Teil der Entwicklung von Software Die Kosten fu r diese Manahmen sind signikant (Anteil an den Entwicklungskosten): Jones (1987): 3040% fu atssicherung und r Qualit Fehlerentfernung x Myers (1979): 50% fu r Test x Das amerikanische National Institute of Standards and Technology (2002): 80% fu r Fehlerentdeckung und -entfernung
x

Eine groe Chance zur Kostenoptimierung!

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 2 / 22

Problem
Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

s s

Wie optimiere ich die Kosten von analytischer Qualit atssicherung? Dies kann in drei Hauptfragen zusammengefasst werden: 1. Welche QS-Manahmen sollen benutzt werden? 2. In welcher Reihenfolge? 3. Mit welchem Aufwand fu r jede Manahme?

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 3 / 22

Problem
Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

s s

Wie optimiere ich die Kosten von analytischer Qualit atssicherung? Dies kann in drei Hauptfragen zusammengefasst werden: 1. Welche QS-Manahmen sollen benutzt werden? 2. In welcher Reihenfolge? 3. Mit welchem Aufwand fu r jede Manahme?

Ntafos (2001) Kosten sind ein zentraler Faktor Sie sind schwer zu messen und Daten schwer zu beschaen x Es wurde bisher wenig getan dies zu andern
x x

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 3 / 22

Problem
Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

s s

Wie optimiere ich die Kosten von analytischer Qualit atssicherung? Dies kann in drei Hauptfragen zusammengefasst werden: 1. Welche QS-Manahmen sollen benutzt werden? 2. In welcher Reihenfolge? 3. Mit welchem Aufwand fu r jede Manahme?

Ntafos (2001) Kosten sind ein zentraler Faktor Sie sind schwer zu messen und Daten schwer zu beschaen x Es wurde bisher wenig getan dies zu andern
x x

Rai, Song, Troutt (1998): Entscheider brauchen


x x

ein besseres Verst andnis der Kosten und Nutzen von QS. Verbesserungen von quantitativen Modellen.
Rigorosum 16.04.2007 3 / 22

Stefan Wagner, TU Mu nchen

Beitrag
Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

Ein analytisches Modell der Qualit atso konomie


x x x x

Fu r alle Arten von analytischer QS Detaillierter als u bliche Okonomiemodelle Genereller als u bliche Modelle fu r spezische Methoden Kosten-Optimierung der QS-Planung

Umfangreiche empirische Meta-Analyse Experimente und Fallstudien zu Eingabefaktoren (bspw. Fehlerentfernungskosten) x Analyse bestehender und eigener Fallstudien x Durchschnittswerte, Verteilungen fu r Eingabefaktoren
x

Sensitivit atsanalyse
x x

Identizierung der wichtigen und unwichtigen Faktoren Wichtig fu r praktische Anwendung und weitere Forschungen
Rigorosum 16.04.2007 4 / 22

Stefan Wagner, TU Mu nchen

Uberblick
Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

ats okonomie Software-Qualit Beispiel Ein analytisches Modell Sensitivit atsanalyse Zusammenfassung

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 5 / 22

Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Qualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

Software-Qualit ats okonomie

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 6 / 22

Qualit ats okonomie


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Qualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

s s

Qualit ats okonomie ist die Kosten/Nutzen-Analyse im Bezug auf Qualit at Der Nutzen sind die gesparten Kosten

cost of quality

conformance

nonconformance

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 7 / 22

Qualit ats okonomie


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Qualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

s s

Qualit ats okonomie ist die Kosten/Nutzen-Analyse im Bezug auf Qualit at Der Nutzen sind die gesparten Kosten
cost of quality

conformance

nonconformance

prevention costs appraisal costs

internal failure

external failure

PAF-Modell: P revention, Appraisal, F ailure (Feigenbaum 1956)


Rigorosum 16.04.2007 7 / 22

Stefan Wagner, TU Mu nchen

Qualit ats okonomie


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Qualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

s s

Qualit ats okonomie ist die Kosten/Nutzen-Analyse im Bezug auf Qualit at Der Nutzen sind die gesparten Kosten
cost of quality

conformance

nonconformance

prevention costs appraisal costs

internal failure

external failure

setup

execution fault removal

effect

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 7 / 22

Qualit ats okonomie


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Qualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

s s

Qualit ats okonomie ist die Kosten/Nutzen-Analyse im Bezug auf Qualit at Der Nutzen sind die gesparten Kosten
cost of quality

conformance

nonconformance

prevention costs appraisal costs

internal failure

external failure

setup

execution fault removal

effect

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 7 / 22

Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein Software-Projekt Ein Qualit atssicherungsplan Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

Beispiel

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 8 / 22

Ein Software-Projekt
Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein Software-Projekt Ein Qualit atssicherungsplan Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

Inspektion

Unit Test

Integrations Test

System Test

100 kLOC CCode

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 9 / 22

Ein Qualit atssicherungsplan


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein Software-Projekt atssicheEin Qualit rungsplan Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

Planungsfragen
x x

Was ist die beste Reihenfolge der Manahmen? Mit wie viel Aufwand betreibt man die einzelnen Manahmen?

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 10 / 22

Ein Qualit atssicherungsplan


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein Software-Projekt atssicheEin Qualit rungsplan Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung

Planungsfragen
x x

Was ist die beste Reihenfolge der Manahmen? Mit wie viel Aufwand betreibt man die einzelnen Manahmen?

Was muss ich zur Beantwortung wissen? Wie eektiv sind die Manahmen bei der Entdeckung der Fehler? x Was kostet es die Manahmen zu benutzen? x Was kostet es mich die Fehler nicht zu entdecken? x Wie wahrscheinlich ist es, dass die Fehler beim Kunden auftreten?
x

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 10 / 22

Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

Ein analytisches Modell

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 11 / 22

Grundlagen des Modells


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

s s s

Analyse des Return on Investment (ROI) fu r einen QS-Plan Stochastisch, basierend auf Erwartungswerten Drei Komponenten des Modells:
x x x

Direkte Kosten Zuku nftige Kosten Nutzen / gesparte Kosten

s s

Schwierigkeitsfunktion nach Littlewood et al. (2000) erweitert um die Dimension Aufwand Annahme
x

Gefundene Fehler werden perfekt entfernt Time to market Net present value (Kapitalwert/Abzinsung)

Nicht abgedeckt
x x

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 12 / 22

Beispiel: Direkte Kosten (Vereinfacht)


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

Software mit Fehlern

Die Kosten, die direkt bei der Anwendung einer Manahme gemessen werden k onnen E [d(t)] = (1)

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 13 / 22

Beispiel: Direkte Kosten (Vereinfacht)


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

QS Manahme

Setup Costs

Software mit Fehlern

Die Kosten, die direkt bei der Anwendung einer Manahme gemessen werden k onnen E [d(t)] = u (1)

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 13 / 22

Beispiel: Direkte Kosten (Vereinfacht)


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

Aufwand t
QS Manahme

Setup Costs

Execution Costs

Software mit Fehlern

Die Kosten, die direkt bei der Anwendung einer Manahme gemessen werden k onnen E [d(t)] = u + e(t) (1)

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 13 / 22

Beispiel: Direkte Kosten (Vereinfacht)


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

Aufwand t
QS Manahme

Setup Costs

Execution Costs

Fehler i entdeckt
Software mit Fehlern

Die Kosten, die direkt bei der Anwendung einer Manahme gemessen werden k onnen E [d(t)] = u + e(t) (1)

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 13 / 22

Beispiel: Direkte Kosten (Vereinfacht)


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

Aufwand t
QS Manahme

Setup Costs

Execution Costs

Removal Costs

Fehler i entdeckt
Software mit Fehlern

Die Kosten, die direkt bei der Anwendung einer Manahme gemessen werden k onnen E [d(t)] = u + e(t) +
i

v (i)

(1)

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 13 / 22

Beispiel: Direkte Kosten (Vereinfacht)


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

Aufwand t
QS Manahme

Setup Costs

Execution Costs

Removal Costs

Fehler i entdeckt
Software mit Fehlern

Schwierigkeit (i, t)

Die Kosten, die direkt bei der Anwendung einer Manahme gemessen werden k onnen E [d(t)] = u + e(t) +
i

(1 (i, t))v (i)

(1)

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 13 / 22

Anwendung des Modells


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

Theoretische Analyse
x x

Welche Faktoren sind die wichtigsten? Welche sind unwichtig? Gruppierung von Fehlern zu Defekttypen Sammeln von Daten in einem Unternehmen Voraussagen fu r neue Projekte basierend auf alten Daten

Optimierte Planung
x x x

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 14 / 22

Beispiel der Anwendung


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

s s

Vier QS-Pl ane mit beispielhaften Daten fu r das Beispielprojekt Verteilung der Personenstunden QS-Plan 1 2 3 4 Inspekt. 650 0 100 50 Unit-T. 300 500 100 50 Int-T. 550 750 100 50 Systemt. 550 750 100 2000 ROI 0.12 0.08 -0.31 -0.04

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 15 / 22

Beispiel der Anwendung


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell Grundlagen des Modells Beispiel: Direkte Kosten (Vereinfacht) Anwendung des Modells Beispiel der Anwendung atsanalyse Sensitivit Zusammenfassung

s s

Vier QS-Pl ane mit beispielhaften Daten fu r das Beispielprojekt Verteilung der Personenstunden QS-Plan 1 2 3 4 V Inspekt. 650 0 100 50 800 Unit-T. 300 500 100 50 250 Int-T. 550 750 100 50 250 Systemt. 550 750 100 2000 200 ROI 0.12 0.08 -0.31 -0.04 0.28

Analyse der Verbesserungsm oglichkeiten: QS-Plan V

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 15 / 22

Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Anwendung der Sensitivit atsanalyse Meta-Analyse der empirischen Ergebnisse Ergebnisse der Sensitivit atsanalyse Zusammenfassung

Sensitivit atsanalyse

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 16 / 22

Anwendung der Sensitivit atsanalyse


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Anwendung der Sensitivit atsanalyse Meta-Analyse der empirischen Ergebnisse Ergebnisse der Sensitivit atsanalyse Zusammenfassung

Eingabefaktoren

Modell

Ausgabe

x1

x2

d(t) f (t)
x3
ROI

r(t)

xn

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 17 / 22

Anwendung der Sensitivit atsanalyse


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Anwendung der Sensitivit atsanalyse Meta-Analyse der empirischen Ergebnisse Ergebnisse der Sensitivit atsanalyse Zusammenfassung

Eingabefaktoren

Modell

Ausgabe

x1

x2

d(t) f (t)
x3
ROI

r(t)

xn

Szenarien: Factors Priorisation


Stefan Wagner, TU Mu nchen Rigorosum 16.04.2007 17 / 22

Anwendung der Sensitivit atsanalyse


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Anwendung der Sensitivit atsanalyse Meta-Analyse der empirischen Ergebnisse Ergebnisse der Sensitivit atsanalyse Zusammenfassung

Eingabefaktoren

Modell

Ausgabe

x1

x2

d(t) f (t)
x3
ROI

r(t)

xn

Szenarien: Factors Priorisation und Factors Fixing


Stefan Wagner, TU Mu nchen Rigorosum 16.04.2007 17 / 22

Meta-Analyse der empirischen Ergebnisse


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Anwendung der Sensitivit atsanalyse Meta-Analyse der empirischen Ergebnisse Ergebnisse der Sensitivit atsanalyse Zusammenfassung

Empirische Studien Meta Analyse Eigene Fallstudien

Durchschnitt/Eingabefaktor

Verteilung/Eingabefaktor

Dreiecksverteilungen fu r fast alle Eingabefaktoren

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 18 / 22

Meta-Analyse der empirischen Ergebnisse


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Anwendung der Sensitivit atsanalyse Meta-Analyse der empirischen Ergebnisse Ergebnisse der Sensitivit atsanalyse Zusammenfassung

Empirische Studien Meta Analyse Eigene Fallstudien

Durchschnitt/Eingabefaktor

Verteilung/Eingabefaktor

Dreiecksverteilungen fu r fast alle Eingabefaktoren

Beispiel: Fehlerentfernungskosten im Feld (in Personenstunden) Minimum Arithm. Mittel Median Maximum 3,9 27,24 27 66,6

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 18 / 22

Ergebnisse der Sensitivit atsanalyse


Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Anwendung der Sensitivit atsanalyse Meta-Analyse der empirischen Ergebnisse Ergebnisse der Sensitivit atsanalyse Zusammenfassung

Eingabefaktoren, die hohen Einuss haben:


x x x x

Fehlerverteilung u ber Dokumenttypen Ausfu hrungskosten Durchschnittliche Schwierigkeit (nach Littlewood et al.) Entfernungskosten im Feld Personalkosten Reihenfolge Wahrscheinlichkeit des Auftretens eines Fehlers im Feld

Eingabefaktoren, die niedrigen Einuss haben:


x x x

Ergebnis kann zur Priorisierung der Kalibrierung genutzt werden

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 19 / 22

Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung Zusammenfassung

Zusammenfassung

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 20 / 22

Zusammenfassung
Motivation Problem Beitrag Uberblick SoftwareQualit ats okonomie Beispiel Ein analytisches Modell atsanalyse Sensitivit Zusammenfassung Zusammenfassung

s s s

Analytische QS hat signikanten Anteil an den Entwicklungskosten Wie kann QS geplant und verbessert werden? Ein analytisches Modell der Qualit ats okonomie
x x x x x

Detaillierter als u okonomische Modelle bliche Genereller als spezische Modelle Kosten-Optimierung der QS Umfangreiche empirische Meta-Analyse Sensitivit atsanalyse

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 21 / 22

Cost-Optimisation of Analytical Software Quality Assurance


Stefan Wagner Software & Systems Engineering Technische Universit at Mu nchen wagnerst@in.tum.de
16. April 2007

Stefan Wagner, TU Mu nchen

Rigorosum 16.04.2007 22 / 22