VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast...

35
VU Softwarequalitätssicherung WS2003 VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Testen von Softwaresystemen Dipl.-Ing. Denis Frast Dipl.-Ing. Denis Frast [email protected] [email protected] Institut für Softwaretechnik und Institut für Softwaretechnik und Interaktive Systeme Interaktive Systeme

Transcript of VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast...

Page 1: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

VU Softwarequalitätssicherung WS2003VU Softwarequalitätssicherung WS2003Testen von SoftwaresystemenTesten von Softwaresystemen

Dipl.-Ing. Denis FrastDipl.-Ing. Denis [email protected]@qse.ifs.tuwien.ac.at

Institut für Softwaretechnik und Interaktive Institut für Softwaretechnik und Interaktive SystemeSysteme

Page 2: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

2

Was kostet Qualität?

Testkosten und Fehlerkosten

Qualität bzw. Testfortschritt

Kos

ten

Testkosten Fehlerkosten Gesamtkosten

Minimum der Gesamtkosten

Page 3: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

3

Testkosten und Qualität in der Praxis

Testzyklus

Testkosten

Fehlerkosten

Test

- bzw

. Fe

hler

kost

en

Page 4: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

4

Definition des Begriffs Testen

Testen wird oft falsch definiert:• Testen ist der Prozess, der zeigen soll, dass ein Programm keine

Fehler enthält• Testen soll zeigen, dass ein Programm seine Spezifikation erfüllt• Testen ist der Prozess, der das Vertrauen erzeugt, dass ein

Programm das tut, was es soll

Page 5: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

5

Was ist Testen?

• Testen ist…Aufdecken von möglichst vielen Fehlern 

• Testen ist nicht…Fehlerstellen lokalisieren und Fehler entfernen (Debuggen)

• Testen ist nicht… Fehlerfreiheit nachweisen (das geht nur mit einem Korrektheitsbeweis!)

Page 6: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

6

Testen von Software

• Was ist Testen?– “Testen ist das Ausführen eines Programms, mit der Absicht,

Fehler zu finden.“ [Myers 1979]• Was ist ein Fehler?

– “Ein Fehler ist eine Abweichung zwischen einem Programm und dessen Spezifikation.“ [Kaner et al., 1999]

• Testen als Teil des Qualitätsmanagements ist ein wichtiger und fortlaufender Bestandteil des Software-Entwicklungsprozesses, nicht bloß eine Pflichtübung am Ende

Page 7: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

7

Testen: Ein Beispiel

Ein Programm liest 3 ganze Zahlen a, b und c und soll feststellen, ob sie die Seiten eines

– gleichseitigen Dreiecks– gleichschenkligen Dreiecks– rechtwinkeligen Dreiecks– sonstigen gültigen Dreiecks

bilden.

Mit welchen Eingaben würden Sie es testen?

b

c

a

Page 8: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

8

Beispiel: Testfälle

Gültige Dreiecke• Gleichseitig: 3, 3, 3• Gleichschenkelig: 5, 5, 3• Rechtwinkelig: 3, 4, 5• Sonstiges: 3, 5, 7• Permutationen davon

(3,5,5), (5,3,5),(3,5,4), (4,5,3), (4,3,5), (5,3,4), (5,4,3),(3,7,5), (5,7,3), (5,3,7), (7,3,5), (7,5,3)

Ungültige Dreiecke• a+b < c: 3, 3, 7• a+b = c: 3, 4, 7• Negative Seitenlänge: 3, 4, -5• 0, 0, 0• Nur 2 Seitenlängen: 3, 4• Permutationen davon

(3,7,3), (7,3,3),(3,7,4), (7,4,3),...(3,-5,4), (-5,3,4)...

• Haben Sie überall das erwartete Ergebnis dazugeschrieben?

Page 9: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

9

Testfälle

• Tests bestehen aus einer Menge von Testfällen (Testsuite)• Ein Testfall besteht aus einer Menge (V, E, A, R)

– V: Vorbedingungen– E: Eingabewerte– A: Aktionen zur Eingabe der Werte– R: erwartete Ergebnisse

• Testerfolg– Ein Testfall ist erfolgreich, wenn er einen Fehler gefunden hat– kein Fehler Information über Produktqualität

(Testüberdeckung!)

Page 10: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

10

Qualität von Testfällen

• Fehlerfindungsrate: Wahrscheinlichkeit, Fehler zu finden• Fehlerlokalisierung: Einschränkung der Fehlerlokation• Testüberdeckung: Wenige gute überdecken mehr als viele

schlechte• Komplexität: Allzu komplexe Testfälle sind selten zur Gänze

durchführbar! Kompromiss zwischen Anzahl und Komplexität! • Generalität: so allgemein wie möglich und so genau wie nötig

generische Beschreibung der relevanten Eigenschaften ohne konkrete Werte; diese werden erst beim Test inkludiert

Page 11: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

11

Testfälle: Negativ-Beispiel 1 (Badeanstalt)

• Zwei an sich gute Testfälle testen dasselbe• TF 1

– V: Schlüssel ist Garderobeschlüssel, zum Schlüssel existiert ein noch nicht zurückgegebenes Codeband.

– E/A: Kunde gibt Schlüssel zurück– R: Automat akzeptiert Schlüssel

• TF 2– V: Codeband noch nicht zurückgegeben– E/A: Codeband und Schlüssel werden zurückgegeben– R: Ausgang wird freigegeben

Page 12: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

12

Testfälle: Negativ-Beispiel 2 (Bibliothek)

• Vermischung von Eingaben und Ergebnissen• TF 1

– V: -– E/A: Leser möchte Buch x entlehnen– R: Entlehnung wird vom System zugelassen

• TF 2– V: -– E/A: Leser möchte Buch x entlehnen– R: Entlehnung wird nicht zugelassen

• vielleicht fehlt aber auch nur die Vorbedingung: Buch x ist entlehnbar / nicht entlehnbar

Page 13: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

13

Testfälle: Negativ-Beispiel 3 (Bibliothek)

• kein Ergebnis• TF 1

– V: -– E/A: Leser möchte Buch x entlehnen– R: -

Page 14: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

14

Testfälle: Negativ-Beispiel 4 (Bibliothek)

• keine Eingabe an das System bzw. kein vom System beeinflusstes Ergebnis

• TF 1 – V: -– E/A: Person kann sich nicht ausweisen, gibt aber Adresse

bekannt. Leser soll angelegt werden.– R: Leser wird ohne Vorlage eines Ausweises nicht angelegt.

Leserkarte wird nicht ausgegeben

Page 15: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

15

Testfall-Spezifikationsmethoden

• Strukturierte Anweisungen zur Generierung von Testfällen• Vorteile gegenüber zufälliger Testfalldefinition

– Höhere Qualität der Testfälle– Machen Qualität und Intensität eines Tests transparent– Erreichen gewünschte Abdeckung für jeden Teil der

Applikation– Effektiver für gegebene Fehlertypen– Tests werden nachvollziehbar– Testprozess wird unabhängig von Personen– Testfall-Spezifikationen werden übertragbar und aktualisierbar– Testprozess wird besser plan- und steuerbar

• „Nachteile“– Fundiertes Wissen der Tester notwendig

Page 16: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

16

Black Box vs. White Box

• Black Box– Basiert auf Spezifikation– Wissen über innere Struktur

wird ignoriert– Daten-getriebene, Input-

Output-getriebene Tests– Anforderungsüberdeck.– Partitionierung der Eingabe-

Daten

• White Box (Glass Box)– Basiert auf Code(struktur)– Wissen über innere Struktur

notwendig– Logik-getriebene Tests– Überdeckung von Pfaden im

Kontrollflussgraphen– Partitionierung von Daten f.

Bedingungsauswertung

Input Output Input Output

Page 17: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

17

Ableitungsprinzipien

• Äquivalenzklassen• Grenzwertanalyse• Verarbeitungslogik• CRUD-Matrix• Ursache/Wirkungs-Graphen• Zustandsübergänge• Error Guessing

• Überdeckungsmaße geben Testintensität an– Pathn coverage: Pfade der

Länge n– Anweisungs- bzw.

Knotenüberdeckung (C0)– Entscheidungs- bzw.

Kanten-Überdeckung (C1)– Bedingungsüberdeckung– Anforderungsüberdeckung– Abdeckung aller Eingaben,

Ausgaben, Funktionen...

Page 18: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

18

Äquivalenzklassenzerlegung

• Zerlegung einer Menge von Daten (Input oder Output) in Untermengen (Klassen), welche das selbe oder ähnliche Ergebnisse oder Auswirkungen produzieren

• Jede Klasse(nkombination) sollte mindestens einmal getestet werden

• Bestimmung des Eingabe-Vektors (A,B,C,...) und der Ausprägungen (Klassen A1, A2, ...; B1, B2, ...; ...)

• Anforderung: 18 < Alter 65 drei Äquivalenzklassen– A1: Alter 18 (ungültig)– A2: 18 < Alter 65 (gültig)– A3: Alter > 65 (ungültig

• Drei Testfälle: x A1, z.B. 10, x A2, z.B. 35, x A3, z.B. 70• Kombinationen: (A1, B1), (A1,B2), ...

Page 19: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

19

Grenzwertanalyse

• Erweiterung der Äquivalenzklassenzerlegung für bessere Überdeckung

• Grenzwerte werden als Klassenrepräsentanten gewählt je Klassengrenze ein Testfall

• Anforderung: 18 < Alter 65– 18 (ungültig), 19 (gültig), 65 (gültig) and 66 (ungültig)

• Ev. mehrere Testfälle je Klassengrenze: Alter 18– 17 (gültig), 18 (ungültig) and 19 (ungültig)

Bedenke Tippfehler: Alter = 18!

Page 20: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

20

Strukturtest: Testmaß 1

• Pfade der Länge 1– -: (1)– A: (2); (3); (4)– B: (5); (6)

• Testfälle– (1, 2, 5)– (1, 3, 6, 4, 5)

A

B6

5

2 3 4

1

Page 21: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

21

Strukturtest: Testmaß 2

• Pfade der Länge 2– A: (1,2); (1,3); (1,4);

(6,2); (6,3); (6,4)– B: (2,5); (3,5); (4,5);

(2,6); (3,6); (4,6)• Testfälle

– (1, 2, 5)– (1, 3, 5)– (1, 4, 5)– (1, 2, 6, 2, 5)– (1, 3, 6, 4, 6, 3, 5)

A

B6

5

2 3 4

1

Page 22: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

22

Datenzyklustest

• Bilde CRUD-Matrix• Testfälle für jede Entität

– Create, Read– Update, Read– Delete, Read

• Relationen nicht vergessen!

Entität 1 Entität 2 Entität 3

Funktion 1 R C, U, D -

Funktion 2 C R -

Funktion 3 C, R, D - -

Page 23: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

23

Testen als Prozess

• Also was tun Sie wenn Sie die Aufgabe bekommen, ein Programm zu testen?– „Unter Testen versteht man den Prozess des Planens, der

Vorbereitung und der Messung, mit dem Ziel, die Eigenschaften eines IT-Systems festzustellen und den Unterschied zwischen dem tatsächlichen und dem erforderlichen Zustand aufzuzeigen.“ [Pol et al., 2000]

• Phasen im Testprozess– Planung und Verwaltung– Spezifikation– Durchführung– Abschluss

Planung

und Verwaltung

Spezifikation AbschlussDurchführung

Page 24: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

24

Testmanagement

Umgang mit• verschiedenen Abteilungen im

Unternehmen• gegensätzlichen Interessen• Unvorhersehbarkeit• Komplexen administrativen

Aufgaben• Mangel an Erfahrung(-szahlen)• Zeitdruck

Organisatorische Aspekte:• Betrieblich: Wie viele Personen?

Wann sollen sie was tun? Welches Wissen benötigen sie? ...

• Strukturell: Welche Organisationsstruktur? Ein Test-Team für alle Projekte? ...

• Management: Verwaltung und Kontrolle

• Personal und Ausbildung: Kurse und Motivation

Page 25: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

25

CM im Testprozess

• Dokumente– Testplan– Testfall-Spezifikationen– Testprotokolle (auch ad

hoc erfundene Testfälle!)– Spezifikation, Design, ...

• Fehlerverfolgung– Fehlerverfolgungs-Tool– Definierter Workflow

• Testware– Backups der Test-DB– Freigabe-Versionen f. Test

Melde Fehler Fehler bewerten

Fehler delegieren

Fehler korrigieren

Korrektur ausliefern

Nachtest

Fehler schließen

Tester Test-Manager Entwickler CM

Fehler ablehnen

Page 26: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

26

Position von Testen im SE-Prozess

Page 27: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

27

Teststufen und Testtypen

• Teststufen– Komponententest– Integrationstest– Systemtest– Regressionstest– Akzeptanztest

• Testtyp– Funktionaler Test– Massentest– Stresstest– Performance-Test– Review– etc.

• Jede Teststufe besteht aus einem oder mehreren Testtypen• Jeder Testtyp testet ein oder mehrere Qualitätskriterien und

verlangt eigene Test-Methoden

Page 28: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

28

Beispiel: Test IBS

• Insurance Business Server– E-Commerce Applikation zur Erfassung von

Versicherungsanträgen über einen Internet-Browser– DHTML-Frontend, generiert aus XML-Schnittstelle mittels XSLT,

basierend auf Produktmodelldaten aus DB– Kommunikationsschnittstelle von IIS-Webserver zu Unix

Backend-Server über VB-Programm und COM+– Antragsberechnung auf Unix-Server mit Natural und Oracle– Entwicklungsaufwand ca. 100 (125) Personenmonate (PM)

• Tests:– Modultest: Statement-Abdeckung (C0)– Integrationstest: mehrere Phasen mit verschiedener Modul-

Zusammensetzung und speziellen Treiberprogrammen– Lasttest: Simulation von steigender Anzahl Anträge– Testaufwand ca. 25 (40) PM

Page 29: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

29

Beispiel: Architektur des IBS

Web-Server

Legende

RechnerTechnologie Technologie

Geschäftslogik-ServerDB-Server

Web-Client

Wartungs-Client

CNatural

Oracle C

Visual C++Visual BasicIIS ASP

Visual BasicVisual Basic

MSXML MSXML

Visual Basic

Internet Explorer

Geschäftslogik Verbindungs-Auf-/Abbau

Verbindungs-Pooling

Produkt-Datenbank

Dialog-Komponente

Kommunika-tions-Arbiter

Generator

Web-Server

XMLXSL

Transformator

Java-Script

XML-Übersetzer

HTML

Socket

SocketEntire-Access

ADO SocketCOM

COMCOM/XML

Socket

HTTP/XML

COM/XML

Asynchrone Schnittstelle über File Synchrone Schnittstelle

Kommunikations-protokollKomponente Komponente

Page 30: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

30

Planung und Durchführung von Tests

• Finden einer Teststrategie– Die wichtigsten Fehler so früh wie möglich mit geringen

Kosten zu finden effizienter Personaleinsatz, solider Testbericht!

– Variation in der Testintensität je Produktkomponente– Eigene Strategie für jede Teststufe

• Testfallspezifikation– Definition der Testfälle der Teststrategie entsprechend

• Checklisten– Test von Qualitätskriterien ohne Programmausführung

• Review-Techniken– Dokumente und Source-Code im Team prüfen

Page 31: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

31

Qualitätskriterien nach ISO 9126 / DIN 66272

Page 32: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

32

Test-Strategie – Generisches BeispielKompon. (kLOC)

Kriterium

Teilsyst. 1 (50)

Teilsyst. 2 (20)

Teilsyst. 3 (15)

Migration (10)

Gesamt-system (5)

Relative Bedeutung

Sicherheit + +       5

Einsetzbarkeit           -

Kontinuität           -

Kontollierbarkeit           -

Funktionalität ++ + + ++ + 60

Benutzungs-freundlichkeit

++ +       10

Leistung +   +     5

Integrierbarkeit + + +   ++ 20

Sparsamkeit           -

Rel. Bedeutung 30 15 20 15 20 100%

Page 33: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

33

Teststrategie – Funktionaler Test

Kompon.Methode

G/B

#TF / kLOC

Teilsyst. 1 (50/30)

Teilsyst. 2 (20/15)

Teilsyst. 3 (15/20)

Migration (10/15)

Gesamt (5/20)

Strukturtest Maß 2 80  Strukturtest Maß 1 60Entsch.tabellentest 40  Datenzyklus-Test 30    Error Guessing 10• Schätze Anzahl Testfälle je Methode und Größeneinheit sowie

Aufwand je Testfall (wenn möglich, aus empirischen Daten!)• Ermittle Aufwand für mehrere verschiedene Szenarien (hier H, M, L)

für Angebote, Reaktion auf eingetretene Risken etc.• Beispiel: Definiere 3 Szenarien H, M, L.

Page 34: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

34

Zusammenfassung

• Testen hat zum Ziel, Fehler zu finden• Testfälle sind Eingaben an das System mit definierten erwarteten

Ergebnissen• Testfall-Spezifikationsmethoden sind strukturierte Anweisungen zur

Generierung von qualitativ hochwertigen Testfällen mit vielen Vorteilen gegenüber „zufälligen“ Tests

• Eine Teststrategie hat zum Ziel, die wichtigsten Fehler so früh wie möglich mit geringen Kosten zu finden

• Testen ist ein Prozess, der den gesamten Software-Lebenszyklus begleitet

• Der Testprozess basiert auf vier Eckpfeilern:– Phasenmodell– Brauchbare Methoden– Ressourcen und Infrastruktur– Organisatorische Einbettung

Page 35: VU Softwarequalitätssicherung WS2003 Testen von Softwaresystemen Dipl.-Ing. Denis Frast denis.frast@qse.ifs.tuwien.ac.at Institut für Softwaretechnik und.

35

Literaturempfehlungen

• Martin Pol, Tim Koomen, Andreas Spillner: “Management und Optimierung des Testprozesses: ein praktischer Leitfaden für erfolgreiches Testen von Software, mit TPI und TMap”, dpunkt.verlag, 2000, ISBN 3-932588-65-7

• Cem Kaner, Jack Falk, Hung Quoc Nguyen: “Testing Computer Software", Wiley, 1999, ISBN 0-471-35846-0

• DeMarco, Tom: “Der Termin: Ein Roman über Projektmanagement”, Carl Hanser Verlag, 1998, ISBN 3-446-19432-0

• Thaller, "Software-Test", dPunkt, 2002• Spillner et al., "Basiswissen Software-Test", dPunkt, 2003