Sie sind auf Seite 1von 25

Mut zur Lcke

Gebhard Ebeling, Mario Krahmer

1 | arvato Financial Solutions | May 19, 2015

Testpolitik & Projektalltag

Hchste Qualittsansprche
Bester am Markt
Erstklassige Software

Termindruck
fehlende Spezifikationen
knappe Ressourcen
begrenzte Budgets

Qualitt ja aber zu welchem Preis?

2 | arvato Financial Solutions | May 19, 2015

Projektverlauf in der Praxis


Was passiert wenn die Qualitt nicht ausgereicht hat?

Warum wurde das nicht getestet?


Wann wird die Frage gestellt?

Wenn Kunden sich beschweren (zu spt)

Was war die hufigste Antwort?

Keine Zeit, kein Budget, nicht spezifiziert,

Wer kann das beeinflussen?

Projektleiter, Product Owner, Testmanager

Ziel: Ein gemeinsames Abwgen zwischen Qualittsmanahmen, Termin und Budget ermglichen

3 | arvato Financial Solutions | May 19, 2015

Wie kommen wir weiter?

Aufgrund des Termindrucks und fehlender Mittel ist ein vollstndiger Test oft nicht mglich

Das dadurch verbleibende Restrisiko muss fr alle transparent dargestellt werden um eine
Entscheidungsgrundlage / Diskussionsgrundlage zu haben

Wichtig: Was wird getestet?


Wichtiger: Was wird nicht getestet?

Wir brauchen einen Weg vom Fingerpointing zu einer gemeinsamen Risikoabschtzung

Wie knnen wir Qualitt messbar darstellen?

4 | arvato Financial Solutions | May 19, 2015

Wie knnen wir Qualitt messbar darstellen?

Alle geplanten Tests


Alle ausgefhrten Tests

System under Test

Komponente

Sub Komponente

85%

Restrisiko

Mehr bersicht

83%

72%

96%

50%

100%

94%

Mehr Details

Testabdeckung
Wie kann eine praktische Umsetzung aussehen?

5 | arvato Financial Solutions | May 19, 2015

Praktische Umsetzung
Ausgangslage:

Unvollstndige Systemdokumentation
Unvollstndige Testdokumentation
Unterschiedliche Testtools im Einsatz
Testreport(s) nicht belastbar / aussagekrftig genug fr Produktionsfreigabe

Problemlsung durch Umsetzung des Testkreislaufs


Testanforderung

Testfallspezifikation
Testimplementierung

Testaktualisierung

Testausfhrung
Testreport

6 | arvato Financial Solutions | May 19, 2015

Testspezifikation
1.

Testflle werden in einer separaten Testspezifikation beschrieben

Standard Merkmale von Tests

Jeder Testfall hat eine eindeutige ID


Testflle sind zielgerichtet und prfen nur das erwartete Ergebnis

ID
Name
TOP_TEP-0001 Testname

Description
Precondition
Expected Result
- Kurze aber
- Alle bentigten - Erwartendes
Aussagekrftige
Voraussetzungen Testverhalten
Beschreibung
fr die
des Tests, die
erfolgreiche
sein Ziel enthlt
Testausfhrung

7 | arvato Financial Solutions | May 19, 2015

Comment
- Zustzliche
Informationen
- Z.B. Wieso kann
der Test nicht
implementiert
werden
- Z.B. Wieso wurde
der Test gelscht

Status
- Planned
- Designed
- Implemented
- Known Failed
- Disabled
- Deleted

Testspezifikation
2.

Testflle haben einen Status

Implemented
Es gibt eine Implementierung zu einem Test
Designed
Ein Test ist vorgesehen und beschrieben
Planned
Ein Test ist vorgesehen aber nicht beschrieben

ID
Name
TOP_TEP-0001 Testname

Description
Precondition
Expected Result
- Kurze aber
- Alle bentigten - Erwartendes
Aussagekrftige
Voraussetzungen Testverhalten
Beschreibung
fr die
des Tests, die
erfolgreiche
sein Ziel enthlt
Testausfhrung

8 | arvato Financial Solutions | May 19, 2015

Comment
- Zustzliche
Informationen
- Z.B. Wieso kann
der Test nicht
implementiert
werden
- Z.B. Wieso wurde
der Test gelscht

Status
- Planned
- Designed
- Implemented
- Known Failed
- Disabled
- Deleted

Testspezifikation
Warum Status Planned?
(Ein Test ist vorgesehen aber nicht beschrieben)?
Zeitaspekt
Wissen fehlt
Effekt:
Testabdeckung wird geringer
Genauigkeit der Qualittsaussage steigt
10 geplante Tests sind besser als eine nicht dargestellte Testlcke

ID
Name
TOP_TEP-0001 Testname

Description
Precondition
Expected Result
- Kurze aber
- Alle bentigten - Erwartendes
Aussagekrftige
Voraussetzungen Testverhalten
Beschreibung
fr die
des Tests, die
erfolgreiche
sein Ziel enthlt
Testausfhrung

9 | arvato Financial Solutions | May 19, 2015

Comment
- Zustzliche
Informationen
- Z.B. Wieso kann
der Test nicht
implementiert
werden
- Z.B. Wieso wurde
der Test gelscht

Status
- Planned
- Designed
- Implemented
- Known Failed
- Disabled
- Deleted

Testspezifikation
3.

Testspezifikation unabhngig von der Testimplementierung


Toolfreiheit

Scrum Team und PO beschreiben Testflle


ohne Rcksicht auf Umsetzungsmglichkeiten
Testable Requirements als Antwort auf fehlende Produktspezifikation
ist die Basis der Testabdeckung
Testdesign mittels Testmethoden (Aquivalenzklassen, Pairwise, etc )

ID
Name
TOP_TEP-0001 Testname

Description
Precondition
Expected Result
- Kurze aber
- Alle bentigten - Erwartendes
Aussagekrftige
Voraussetzungen Testverhalten
Beschreibung
fr die
des Tests, die
erfolgreiche
sein Ziel enthlt
Testausfhrung

10 | arvato Financial Solutions | May 19, 2015

Comment
- Zustzliche
Informationen
- Z.B. Wieso kann
der Test nicht
implementiert
werden
- Z.B. Wieso wurde
der Test gelscht

Status
- Planned
- Designed
- Implemented
- Known Failed
- Disabled
- Deleted

Testimplementierung
Testtool kann frei gewhlt werden, mit folgender Einschrnkung:
Toolunabhngige Reporting Schnittstelle (z.B. CSV Format)

SoapUI
Umsetzung durch Groovy Erweiterung
JUnit
Umsetzung durch Annotation
Skripte wie Python, Perl, Batch
Umsetzung trivial
Bezug zur Testspezifikation ber die Testfall ID
Result
- Status der
letzten
Ausfhrung

Start Time
- Startzeit der letzten
Ausfhrung

11 | arvato Financial Solutions | May 19, 2015

Duration
- Laufzeit des Tests

Location
- Wo ist der Test
implementiert

Failed Reason
- Detailliertes Fehlermeldung
beim Fehlschlagen

Testausfhrung
Continiuous Integration System (z.B. Hudson)
Ausgabe: Report Dateien mit

Testergebnissen fr den Testreport


Spezifikationsnderungen zur Testaktualisierung

Result
Start Time
- Status der
- Startzeit der letzten
letzten
Ausfhrung
Ausfhrung - Wird vom Testwerkzeug
- Wird vom
generiert
Testwerkzeug
generiert

12 | arvato Financial Solutions | May 19, 2015

Duration
- Laufzeit des Tests
- Wird vom Testwerkzeug
generiert

Location
- Wo ist der Test
implementiert
- Wird vom Testwerkzeug
generiert

Failed Reason
- Detailliertes Fehlermeldung
beim Fehlschlagen
- Wird vom Testwerkzeug
generiert.

Testreport
Release Test
Testspezifikation (Soll) + Report Dateien (Ist) = Testreport

Teil der Releasedokumentation

Testreporterstellung erfolgt automatisiert

Result
Start Time
- Status der
- Startzeit der letzten
letzten
Ausfhrung
Ausfhrung - Wird vom Testwerkzeug
- Wird vom
generiert
Testwerkzeug
generiert

13 | arvato Financial Solutions | May 19, 2015

Duration
- Laufzeit des Tests
- Wird vom Testwerkzeug
generiert

Location
- Wo ist der Test
implementiert
- Wird vom Testwerkzeug
generiert

Failed Reason
- Detailliertes Fehlermeldung
beim Fehlschlagen
- Wird vom Testwerkzeug
generiert.

Informationsverdichtung
Viele Testreports -> Qualittsaussage?

Alle Testflle (durchgefhrt, implementiert, spezifiziert, geplant)


System
Under Test

Keine bersicht
Qualifizierte Aussage noch nicht mglich
Testobjekt

Testelement

Testfall

14 | arvato Financial Solutions | May 19, 2015

Testfall

Testobjekt

Testelement

Testfall

Testfall

Testelement

Testfall

Testfall

Informationsverdichtung
Strukturierung

Testobjekt - Die Komponente, welche getestet wird


System
Under Test

Testelement Funktionale Einheit


Testfall
Testobjekt

Testelement

Testfall

15 | arvato Financial Solutions | May 19, 2015

Testfall

Testobjekt

Testelement

Testfall

Testfall

Testelement

Testfall

Testfall

Informationsverdichtung Testobjekt

Alle Tests

Durchgefhrte Tests

Test mit Status: implementiert, spezifiziert, geplant

Anzahl der implementierten


durchgefhrten Tests

Spezifizierte Tests
Test ist vollstndig beschrieben
(implementiert, spezifiziert, geplant)

Implementierte Tests
Es gibt eine Implementierung zu
dem spezifizierten Test
(implementiert, spezifiziert, geplant)

Implementierungsgrad
Anzahl Implementierten Tests / Anzahl Alle Tests

16 | arvato Financial Solutions | May 19, 2015

Fehlgeschlagene Tests
Anzahl der Tests mit einem Fehler

Bekannte Fehlgeschlagene Tests


Tests die ein dokumentiertes Fehlverhalten
aufzeigen

Funktionelle Testabdeckung
Anzahl Durchgefhrter Tests / Anzahl Aller
vorgesehenen Tests

Informationsverdichtung Testobjekt
Testobjekt:
Ansprechpartner
Testobjekt Prfix
Beschreibung:

Metriken eines Testobjekt

Neues Produkt
Scrum Team 1
B_FC_C

Getestete Version
Umgebung
Alle Tests
Summe Spezifizierte Tests:
Summe Implementierte Tests:

79%
Implementierungsgrad
13
Anzahl Review Findings
Durchgefhrte Tests
865
Bedeutung der Spaltenfarbe:
Fehlgeschlagene Tests
13
Inhalt ist durch den Tester einzutragen (Testspezifikation)
Inhalt wird automatisch anhand von Excel-Formeln ermittelt
Bekannte Fehlgeschlagene Tests 13
Testabdeckung
70%

Testfallspezifikation
Testobjekt:

Neues Produkt

Ansprechpartner
Testobjekt Prfix
Beschreibung:
Getestete Version
Umgebung
Alle Tests
Summe Spezifizierte Tests:
Summe Implementierte Tests:
Implementierungsgrad
Anzahl Review findings
Durchgefhrte Tests
Fehlgeschlagene Tests
Bekannte Fehlgeschlagene Tests
Testabdeckung

Scrum Team 1
B_FC_C
Lsch Batch Job fr abgelaufene Produkt Daten
13.02.001
DEV
1234
1048
978
79%
13
865
13
13
70%

Lsch Batch Job fr abgelaufene


Produkt Daten
13.02.001
DEV
1234
1048
978

Testelement Arbeitsblatt
Prfix

Name

Beschreibung

FUNC

B_FC_C_FUNC - Funktionell

Batchfunktion

Funktionale
Anforderungen
werden getestet

1189

1003

933

78%

13

820

13

13

68%

NFUNC

B_FC_C_NFUNC - Nicht Funktionel

Performance

Nichtfunktionale
Anforderungen
werden getestet

45

45

45

100%

45

100%

1234

1048

978

79%

13

865

13

13

70%

Gesamt

17 | arvato Financial Solutions | May 19, 2015

Alle Tests

Spezifizierte Tests

Implementierte
Tests

Implementierungsgr Anzahl Review


ad
Findings

Durchgefhrte Tests Fehlgeschlag Bekannte


Testabdecku
ene Tests
Fehlgeschlag ng
ene Tests

Informationsverdichtung System Under Test

System besteht aus mehreren Testobjekten

System
Under Test

Testobjekt

Testelement

Testfall

18 | arvato Financial Solutions | May 19, 2015

Testfall

Testobjekt

Testelement

Testfall

Testfall

Testelement

Testfall

Testfall

Informationsverdichtung System Under Test

System besteht aus mehreren Testobjekten

System
Under Test

Testobjekt

Testelement

Testfall

19 | arvato Financial Solutions | May 19, 2015

Testfall

Testobjekt

Testelement

Testfall

Testfall

Testelement

Testfall

Testfall

Informationsverdichtung System Under Test


System under Test:
Beschreibung:
Umgebung
Alle Tests:
Summe Spezifizierte Tests:
Summe Implementierte Tests:
Implementierungsgrad:
Anzahl Review findings
Durchgefhrte Tests:
Fehlgeschlagene Tests:
Testabdeckung:
Anzahl Testobjekte
Testobjekte mit mind. einem
spezifizierten Test

Neues Produkt

Test Objekt Abdeckung

50%

Fachliche Funktionalitt des Produkt


QA
5491
4415
3194
58,%
66
2789
16
51%
58
29

20 | arvato Financial Solutions | May 19, 2015

83%

85%

72%

96%

50%

100%

Testabdeckung

94%

Fazit

Qualittssicherung ist messbar

Planned / Designed Tests zur Ermittlung der Testbasis nutzen


Der Testumfang wird allen Verantwortlichen verstndlich und transparent dargestellt
Es knnen gezielt Manahmen zur Qualittsverbesserung eingeleitet werden
Eine Releasefreigabe kann entschieden werden

Die Qualittsverantwortung kann von allen getragen werden.

21 | arvato Financial Solutions | May 19, 2015

Thanks!

Gebhard Ebeling
Testmanager
gebhard.ebeling@bertelsmann.de
Mario Krahmer
Testmanager
mario.krahmer@bertelsmann.de

arvato Financial Solutions


Rheinstrae 99
76532 Baden-Baden
finance.arvato.com

22 | arvato Financial Solutions | May 19, 2015

Testaktualisierung
Entwicklung
Zur Akzeptanz
Vermeidung Brokratie
Reverse Engineering
Vernderung der Spezifikationsmerkmale aus den Testtools automatisch in die Spezifikation
zurckfhren
(z.B. Beschreibung, Erwartetes Ergebnis)

ID
Name
TOP_TEP-0001 Testname

Description
Precondition
Expected Result
- Kurze aber
- Alle bentigten - Erwartendes
Aussagekrftige
Voraussetzungen Testverhalten
Beschreibung
fr die
des Tests, die
erfolgreiche
sein Ziel enthlt
Testausfhrung

23 | arvato Financial Solutions | May 19, 2015

Comment
- Zustzliche
Informationen
- Z.B. Wieso kann
der Test nicht
implementiert
werden
- Z.B. Wieso wurde
der Test gelscht

Status
- Planned
- Designed
- Implemented
- Known Failed
- Disabled
- Deleted

Verbesserung mit Reviews

Anzahl Review Findings

Regelmige Reviews verbessern die Testbeschreibungsqualitt


- Was ist das Ziel des Testes
- Ist die Formulierung verstndlich
- Hlt sich der Test an vorhandene Vorgaben

Anmerkungen knnen an jeden Tests geschrieben werden


Zhlen aller Anmerkungen
Je mehr Anmerkungen -> Eine Verbesserung sollte eingeplant werden

24 | arvato Financial Solutions | May 19, 2015

Qualitt - Risiko

Quelle ISTQB Glossar


Qualitt = Der Grad, in dem ein System, eine Komponente oder ein Prozess die
Kundenerwartungen und -bedrfnisse erfllt. [Nach IEEE 610] (2) Der Grad, in dem ein Satz
inhrenter Merkmale Anforderungen erfllt. [ISO 9000:2000]
Risiko = Ein Faktor, der zu negativen Konsequenzen in der Zukunft fhren knnte; gewhnlich
ausgedrckt durch das Schadensausma und die Eintrittswahrscheinlichkeit.
Risikoanalyse = Bewertung von identifizierten Projektrisiken oder Produktrisiken um ihre Risikostufe
zu bestimmen, typischerweise durch die Bewertung von Schadensausma und
Eintrittswahrscheinlichkeit.

25 | arvato Financial Solutions | May 19, 2015