Slide 1

Slide 1 text

Testen fangt beim Schneiden an Ina Einemann [email protected] @IEinemann ..

Slide 2

Slide 2 text

??? Wie kann ich da testen? Tester Tim

Slide 3

Slide 3 text

Gemeinsames Verstandnis Das ist ein Baum Das ist Schnee Das ist ein Fenster Das ist ein Wald ..

Slide 4

Slide 4 text

Produktvision OK – was brauch ich um eine gute Vision zu machen?

Slide 5

Slide 5 text

Personas Zielgruppen erkennen und gruppieren Persona erstellen Ein Verständnis für den Nutzer

Slide 6

Slide 6 text

Personas > 60 Jahre > 1.000.000€ Gehalt Verheiratet > 1 Kind Lebt in einer Großstadt Ozzy Osbourne & Prinz Charles

Slide 7

Slide 7 text

Personas Jetzt weiß ich auch wer das System nutzt und welche Bedürfnisse und Probleme er hat

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

Produktvision  HEC Produkt Vision Poster  Textmuster  Produkt Karton  Cover Story

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

Produktvision  Textmuster Elevator Pitch

Slide 13

Slide 13 text

Muster anwenden

Slide 14

Slide 14 text

Produktvision  Produkt Karton Was Tolles!

Slide 15

Slide 15 text

Produktvision  Cover Story Zitate Titelseite Dahin soll also die Reise gehen ! Dann kann‘s ja mit den User Stories losgehen…

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

Backlog Liste unübersichlich Teile passen nicht zusammen

Slide 18

Slide 18 text

Gibt’s da nicht was besseres um User Stories zu erstellen und zu priorisieren?

Slide 19

Slide 19 text

Hüttendetails durchsuchen Bezahlen Account managen Hütte anbieten Buchen Bestätigung erhalten Nach Datum suchen Bewertung schreiben Bewertungen einsehen Beschreibungen lesen Skigebietinfos lesen

Slide 20

Slide 20 text

Persona 1 Bewertungen lesen Persona 2 Persona 3 Nach Datum suchen Hüttendetails durchsuchen Hütten buchen Hütte anbieten Bewertungen einsehen User Story Buchen Anbieten Bewertungen User Story User Story Bestätigung erhalten Bewertung schreiben Suchen User Story User Story User Story User Story User Story User Story Bezahlen User Story User Story

Slide 21

Slide 21 text

User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story

Slide 22

Slide 22 text

Jetzt hab ich einen guten Überblick über meine User Stories… Worauf muss ich eigentlich achten wenn ich User Stories erstelle?

Slide 23

Slide 23 text

User Story Card eine DinA5 Karte Überschrift und eindeutige Nummer

Slide 24

Slide 24 text

User Story Rolle muss klar sein! Personas

Slide 25

Slide 25 text

User Story Erster Vorschlag Wird gemeinsam im Team diskutiert

Slide 26

Slide 26 text

User Story Was möchte ich erreichen? Was ist die Problemstellung?

Slide 27

Slide 27 text

User Story Card Conversation

Slide 28

Slide 28 text

User Story Card Conversation

Slide 29

Slide 29 text

User Story Card Conversation Confirmation User Stories sind Grundlage der Kommunikation Das bedeutet nicht NICHTS aufzuschreiben Akzeptanzkriterien

Slide 30

Slide 30 text

Akzeptanzkriterien möglichst objektiv und eindeutig NICHT: - Story-Inhalt wiederholen - Versteckte neue User Story - Einen Workflow beinhalten Zusammenarbeit zwischen PO, Entwicklung und Test

Slide 31

Slide 31 text

Von der User Story zu Akzeptanzkritieren

Slide 32

Slide 32 text

Schlusselworter identifizieren .. ..

Slide 33

Slide 33 text

Fragenkatalog verwenden  Wer muss buchen?  Wann soll buchen stattfinden?  Wann ist buchen komplett abgeschlossen?  Wie kann buchen genau durchgeführt werden?  Wie häufig / oft / groß / schnell soll buchen sein?  Wo / Wie kann geprüft werden, ob buchen durchgeführt wurde?  Wurde sichergestellt, dass buchen alle Daten/Aspekte berücksichtigt?  Was geschieht, wenn man nicht buchen kann?  Was könnte buchen verhindern und was wird dann erwartet?  Welche möglichen Fehleingaben müssen im Zusammenhang mit buchen abgefangen werden?  Welche Inhalte kommen in Ausrüstung vor?  Welche optionalen / verpflichtende Aspekte gelten für Ausrüstung?  Welche Inhalte von Ausrüstung und nach welchen Regeln soll überprüft werden?  Wie sieht das Layout für Ausrüstung aus?

Slide 34

Slide 34 text

Fragen diskutieren Alle Kunden, die eine Ferienwohnung gebucht haben Snowboard, Ski, Helm und Stöcker Schuhgröße und Körpergröße angeben Bezahlarten auswählen, wie Abrechnung mit Hütte, Barzahlung, Paypal, Kreditkarte Leihzeitraum bestimmen  Wer muss buchen?  Welche Inhalte kommen in Ausrüstung vor?  Welche optionalen / verpflichtende Aspekte gelten für Ausrüstung?

Slide 35

Slide 35 text

Akzeptanzkriterien  Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Und wenn es nicht passt?

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

No content

Slide 38

Slide 38 text

Worauf muss ich denn achten wenn ich Stories schneide?

Slide 39

Slide 39 text

 Independent

Slide 40

Slide 40 text

 Negotiable

Slide 41

Slide 41 text

 Valuable

Slide 42

Slide 42 text

 Estimable

Slide 43

Slide 43 text

 Small

Slide 44

Slide 44 text

 Testable

Slide 45

Slide 45 text

INVEST Kriterien?  Independent  Negotiable  Valuable  Estimatable  Small  Testable

Slide 46

Slide 46 text

Okay, diese Kriterien müssen nach dem Schneiden erfüllt sein. Aber wie kann ich sie denn nun kleiner bekommen?

Slide 47

Slide 47 text

Schneiden Workflow Operations Performance Simpel/Komplex Größter Aufwand Veriation der Daten Variation der Geschäftsregeln Variation der Schnittstelle Spike Dateneingabe methode

Slide 48

Slide 48 text

Workflow  Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Snowboard/ Ski Details Zeitraum Equipment Bezahlart Versicherung Buchen Leihort Größter Wert -> Anfang und Ende Mittelteil vergrößert nach und nach den Wert

Slide 49

Slide 49 text

Operations  Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Eqipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Buchung erstellen Managen verwalten konfigurieren löschen verändern

Slide 50

Slide 50 text

 Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Vorausgewählter Zeitraum Variation der Geschaftsregeln .. Erst eine Teilmenge der Regeln Start und Endtermin X von y Tagen

Slide 51

Slide 51 text

 Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Snowboard Variation der Daten „Gut genug“ Variante Gleiche Dinge mit unterschiedlichen Daten Skier

Slide 52

Slide 52 text

 Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Snowboard oder Ski ausleihen per Email Simpel Komplex Simple Version, die zuerst erstellt wird Mit Rückmeldung

Slide 53

Slide 53 text

 Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Snowboard oder Ski ausleihen mit Anbindung an einen Leihort Variationen der Schnittstellen Einfacher Kern mit Lernerfahrung, später Erweiterungen Weitere Leihorte

Slide 54

Slide 54 text

 Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Es soll einfach funktionieren Performance Nicht funktionale Anforderungen nachlagern schnell

Slide 55

Slide 55 text

 Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Naheliegende Aufteilung -> Alle gleich groß Egal welche man zuerst umsetzt, diese erste wird den größten Aufwand haben Grosster Aufwand ..

Slide 56

Slide 56 text

 Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Dateneingabemethode

Slide 57

Slide 57 text

 Der Ferienwohnungs-Kunde kann den Leihort auswählen  Er kann zwischen Snowboard oder Skier auswählen  Er kann seine Schuhgröße und Körpergröße angeben  Er kann den Leih-Zeitraum bestimmen • Die Vorauswahl ist der Buchungszeitraum der Hütte • Er kann alternative Start- und Endtermine angeben • Er kann Optionen wie x von y Tagen wählen  Er kann weiteres Equipment wie Helm oder Stöcker hinzubuchen  Er kann eine Bezahlart bestimmen • Abrechnung mit Hütte • Abbuchung • Paypal • Kreditkarten  Er kann eine Diebstahl-Versicherung hinzufügen  Er kann buchen  Er kann seine Buchung wieder aufrufen, verändern und löschen Spike

Slide 58

Slide 58 text

No content

Slide 59

Slide 59 text

Nun hab ich endlich meine kleine Story…. Aber WIE teste ich diese eigentlich?

Slide 60

Slide 60 text

Akzeptanztest 7 Praktische Anwendung der Akzeptanzkriterien

Slide 61

Slide 61 text

Szenarien

Slide 62

Slide 62 text

Szenarien Beschreibt die Vorbedingungen! Was mache ich vor meiner neuen Anforderungen/neuen Funktion? Ausgangssituation

Slide 63

Slide 63 text

Szenarien Beschreibt die Durchführung/Änderung! Was ist meine Anforderungen / neue Funktion? Aktion

Slide 64

Slide 64 text

Szenarien Beschreibt die Änderung! Was sind die Auswirklungen meiner Aktion? Was hat sich geändert? Ergebnis

Slide 65

Slide 65 text

Szenarien Steps können wieder verwendet werden Testautomatisierung schnell erstellt

Slide 66

Slide 66 text

Spitze, so kann ich also testen bzw. automatisieren. Alles grün … Dann ab zum Review

Slide 67

Slide 67 text

Aber auf meinem Tablet funktioniert das ja nicht!!! Tablet??? Darüber haben wir nie gesprochen

Slide 68

Slide 68 text

Interne und externe Qualitat Funktionalität Zuverlässigkeit Wartbarkeit Portabilität Benutzbarkeit Effizienz Angemessenheit Genauigkeit Interoperabilität Sicherheit Reife Fehlertoleranz Wiederherstell- barkeit Verständlichkeit Erlernbarkeit Bedienbarkeit Attraktivität Zeitverhalten Verbrauchs- verhalten Analysierbarkeit Änderbarkeit Stabilität Testbarkeit Anpassbarkeit Installierbarkeit Koexistenz Austauschbarkeit Ordnungsmäßig- keit

Slide 69

Slide 69 text

Fragenkatalog verwenden  Wer muss buchen?  Wann soll buchen stattfinden?  Wann ist buchen komplett abgeschlossen?  Wie kann buchen genau durchgeführt werden?  Wie häufig / oft / groß / schnell soll buchen sein?  Wo / Wie kann geprüft werden, ob buchen durchgeführt wurde?  Wurde sichergestellt, dass buchen alle Daten/Aspekte berücksichtigt?  Was geschieht, wenn man nicht buchen kann?  Was könnte buchen verhindern und was wird dann erwartet?  Welche möglichen Fehleingaben müssen im Zusammenhang mit buchen abgefangen werden?  Welche Inhalte kommen in Ausrüstung vor?  Welche optionalen / verpflichtende Aspekte gelten für Ausrüstung?  Welche Inhalte von Ausrüstung und nach welchen Regeln soll überprüft werden?  Wie sieht das Layout für Ausrüstung aus?

Slide 70

Slide 70 text

Interne und externe Qualitat Funktionalität Zuverlässigkeit Wartbarkeit Portabilität Benutzbarkeit Effizienz Angemessenheit Genauigkeit Interoperabilität Sicherheit Ordnungsmäßig- keit Reife Fehlertoleranz Wiederherstell- barkeit Verständlichkeit Erlernbarkeit Bedienbarkeit Attraktivität Zeitverhalten Verbrauchs- verhalten Analysierbarkeit Änderbarkeit Stabilität Testbarkeit Anpassbarkeit Installierbarkeit Koexistenz Austauschbarkeit Wie häufig / oft / groß / schnell soll buchen sein? Welche möglichen Fehleingaben müssen im Zusammenhang mit buchen abgefangen werden? Wie sieht das Layout für Ausrüstung/buchen aus? Was geschieht, wenn man nicht buchen kann?

Slide 71

Slide 71 text

Interne und externe Qualitat Funktionalität Zuverlässigkeit Wartbarkeit Portabilität Benutzbarkeit Effizienz Angemessenheit Genauigkeit Interoperabilität Sicherheit Ordnungsmäßig- keit Reife Fehlertoleranz Wiederherstell- barkeit Verständlichkeit Erlernbarkeit Bedienbarkeit Attraktivität Zeitverhalten Verbrauchs- verhalten Analysierbarkeit Änderbarkeit Stabilität Testbarkeit Anpassbarkeit Installierbarkeit Koexistenz Austauschbarkeit Zusammenspiel zwischen den testenden System und den vorgegebenen System Unberechtigter Zugriff Wie häufig kommen Fehlerzustände vor? Wie einfach und schnell kann das geforderte Leistungsniveau nach Ausfall wieder hergestellt werden Interne Qualität

Slide 72

Slide 72 text

Und welche Möglichkeiten haben wir um diese Bereiche zu definieren?

Slide 73

Slide 73 text

Nichtfunktionale Anforderungen  Planguage  MisUseCase  Produkt Vision  The Furious Four

Slide 74

Slide 74 text

Planguage Tag Eindeutiger Name der Anforderung Definiton Genaue Beschreibung der Anforderung Scale Maßeinheit, in der die Anforderung gemessen wird (bei Antwortzeiten zum Beispiel Sekunden) Meter Messmethode (zum Beispiel Lasttest oder Nutzerbefragung) Benchmark Vergleichswerte zur Orientierung (zum Beispiel aus Vorgänger- oder Konkurrenzsystemen) Target Vorgabe der Anforderung, das angestrebte Ziel Constraint Zulässige Grenze der Anforderung nach unten oder oben

Slide 75

Slide 75 text

Planguage Tag Wartbarkeit Definiton Die Leichtigkeit, mit der ein System verändert oder erweitert werden kann. Scale Stunden Meter Durchschnittliche Dauer für die Behebung eines Fehlers. Gemessen wird vom Beginn der Behebung bis zu dessen Lösung. Benchmark - Target 2 Stunden Constraint 4 Stunden kann unübersichtlich werden Über nicht-funktionale Kriterien zu sprechen und diese messbar machen.

Slide 76

Slide 76 text

MisUse Cases  Anwendungsfällen, die eine missbräuchliche Verwendung des Systems enthalten  Nachteil für einen Stakeholder oder ein Unternehmen  potentielle Sicherheitsrisiken früh erkennen Kunde Registrieren Bot Emailadressen sammeln Captcha nutzen

Slide 77

Slide 77 text

No content

Slide 78

Slide 78 text

No content

Slide 79

Slide 79 text

Aber wo lasse ich diese Qualitätskriterien nun miteinfließen? In jede User Story?

Slide 80

Slide 80 text

7 ! Definition of Ready Definition of Done & - Sicher sein, dass jeder das Problem versteht Story schneiden Wissen wann eine Story fertig ist Die fertige Story verifizieren dokumentieren ausliefern umsetzen

Slide 81

Slide 81 text

Definion of Ready ! Szenarien erstellt GUI Mock erstellt Story geschätzt

Slide 82

Slide 82 text

Definion of Done 7 Entwicklertests & Dokumentation angepasst 8 Manuelle Tests auf mehren Systemen Automatisierte Szenarien Code Reviews

Slide 83

Slide 83 text

Aber was ist jetzt meine Dokumentation? Die Akzeptanzkriterien? Der Akzeptanztest?

Slide 84

Slide 84 text

Die Liste der Akzeptanzkriterien ist eine gute Dokumentation Gilt auch für Testfälle Umstrukturieren nach Funktionalität Kein aktueller Stand sondern Historie Erweitert / Ersetzt / Verändert vorherige Stories  Stimmt! Gut lesbar, aber was ist bei neuen Stories?

Slide 85

Slide 85 text

In den Stories bespreche ich hauptsächlich die funktionalen Anforderungen Kleine Stories sind einfacher zu planen, umzusetzen, durchzusprechen und zu TESTEN Und diese Anforderungen in die Definiton of Done überführen Über Nicht- funktionale Anforderungen müssen wir auch sprechen

Slide 86

Slide 86 text

Story Map 7 ! Akzepttanztest Specification by Example Szenarien Doku Muster Schneiden Product Vision Persona Gemeinsames Verständis