Wie sorgt man dafür, dass vier Menschen, die sich einen Elefanten betrachten, auch dasselbe sehen? Ina Einemann erklärt anschaulich in Wort und Bild Behavior Driven Development.
Wie wird man sich klar darüber, was eigentlich gewollt ist? Mithilfe des HEC Produkt-Visions-Posters werden Anforderungen klar definiert. Ina Einemann zeigt, wie Personas erstellt werden und aus Visionen über die agile Entwicklung innovative Produkte entstehen.
Wir zeigen Ihnen in unserem Webinar, welches die wichtigsten Kennzahlen im E-Mail-Marketing sind und wie Sie sie richtig einsetzen, um Ihre Mailings gezielt zu optimieren.
Folgende Fragen werden im Webinar beantwortet:
1. Was sind die wichtigsten Kennzahlen im E-Mail-Marketing und wie setzen Sie sie richtig ein, um Ihre Mailings gezielt zu optimieren?
2. Warum sind Triggermailings erfolgreicher als andere Mailings?
3. Welche anderen Ergebnisse hält der E-Mail-Marketing-Benchmark 2017 noch für Sie bereit?
Welche Fragen müssen Sie vor einer Analyse und Implementierung klären? Und wurden Ihre Anforderungen korrekt umgesetzt wurden? Nur verlässliche Daten sind belastbare Daten!
Vortrag zum Thema "Daten statt Raten - Affiliate Methoden für Experten" auf der SEOCampixx am 15.03.2015 in Berlin. Fokus auf das Thema Tracking von Sales mit Hilfe von Sub-ID Tracking und relationaler Datenbanken.
GAUC 2017 Workshop Customer Journey Optimierung: Timo von Focht (Commanders Act)e-dialog GmbH
„Ganzheitliche“ Optimierung bedeutet, alle Touchpoints mit den Kunden – vom Erstkontakt bis hin zum wiederholten Kauf – zu berücksichtigen. Dieser Vortrag zeigt, wie Sie Ansprache, Kanalauswahl und Budget optimieren.
Anforderungen haben immer Schuld! Schuld an schlechten Tests, Schuld an schlechter Entwicklung, Schuld für viele Änderungen, Schuld an einfach allem. Wie macht man also gutes Anforderungsmanagement und schafft es dadurch noch Komplexität zu reduzieren und so Softwareprojekte einfacher zu gestalten? Wie kriegt man den Kunden dazu seine 1000-seitigen Lastenhefte zu entsorgen und durch etwas Geeigneteres zu ersetzen? Mittels moderner agiler Verfahren und Praktiken. Wie diese genau aussehen, welche Hindernisse auftauchen können und wie diese aus dem Weg geschafft werden können zeigt dieser Vortrag – immer mit dem Fokus auf Einfachheit und Praktikabilität. Der Vortrag ist gerichtet an Projektleiter, Entwickler, Abteilungs-, Team und Bereichsleiter, Scrum Master, Product Owner, Business Analysten.
Wie können Content Groups und Dimensions sinnvoll eingesetzt werden, um belastbare Zahlen zu erhalten, welche dann entweder als KPIs oder als Quality-Metrics genutzt werden? Was bedeutet die Sitespeed und welche Erkenntnisse kann ich aus der Analyse der Zahlen gewinnen? In diesem Vortrag erfahren die Teilnehmer wie sie Content Groups einrichten, mit Dimensionen umgehen in Bezug auf die Auswertung der Sitespeed agieren können
Wie wird man sich klar darüber, was eigentlich gewollt ist? Mithilfe des HEC Produkt-Visions-Posters werden Anforderungen klar definiert. Ina Einemann zeigt, wie Personas erstellt werden und aus Visionen über die agile Entwicklung innovative Produkte entstehen.
Wir zeigen Ihnen in unserem Webinar, welches die wichtigsten Kennzahlen im E-Mail-Marketing sind und wie Sie sie richtig einsetzen, um Ihre Mailings gezielt zu optimieren.
Folgende Fragen werden im Webinar beantwortet:
1. Was sind die wichtigsten Kennzahlen im E-Mail-Marketing und wie setzen Sie sie richtig ein, um Ihre Mailings gezielt zu optimieren?
2. Warum sind Triggermailings erfolgreicher als andere Mailings?
3. Welche anderen Ergebnisse hält der E-Mail-Marketing-Benchmark 2017 noch für Sie bereit?
Welche Fragen müssen Sie vor einer Analyse und Implementierung klären? Und wurden Ihre Anforderungen korrekt umgesetzt wurden? Nur verlässliche Daten sind belastbare Daten!
Vortrag zum Thema "Daten statt Raten - Affiliate Methoden für Experten" auf der SEOCampixx am 15.03.2015 in Berlin. Fokus auf das Thema Tracking von Sales mit Hilfe von Sub-ID Tracking und relationaler Datenbanken.
GAUC 2017 Workshop Customer Journey Optimierung: Timo von Focht (Commanders Act)e-dialog GmbH
„Ganzheitliche“ Optimierung bedeutet, alle Touchpoints mit den Kunden – vom Erstkontakt bis hin zum wiederholten Kauf – zu berücksichtigen. Dieser Vortrag zeigt, wie Sie Ansprache, Kanalauswahl und Budget optimieren.
Anforderungen haben immer Schuld! Schuld an schlechten Tests, Schuld an schlechter Entwicklung, Schuld für viele Änderungen, Schuld an einfach allem. Wie macht man also gutes Anforderungsmanagement und schafft es dadurch noch Komplexität zu reduzieren und so Softwareprojekte einfacher zu gestalten? Wie kriegt man den Kunden dazu seine 1000-seitigen Lastenhefte zu entsorgen und durch etwas Geeigneteres zu ersetzen? Mittels moderner agiler Verfahren und Praktiken. Wie diese genau aussehen, welche Hindernisse auftauchen können und wie diese aus dem Weg geschafft werden können zeigt dieser Vortrag – immer mit dem Fokus auf Einfachheit und Praktikabilität. Der Vortrag ist gerichtet an Projektleiter, Entwickler, Abteilungs-, Team und Bereichsleiter, Scrum Master, Product Owner, Business Analysten.
Wie können Content Groups und Dimensions sinnvoll eingesetzt werden, um belastbare Zahlen zu erhalten, welche dann entweder als KPIs oder als Quality-Metrics genutzt werden? Was bedeutet die Sitespeed und welche Erkenntnisse kann ich aus der Analyse der Zahlen gewinnen? In diesem Vortrag erfahren die Teilnehmer wie sie Content Groups einrichten, mit Dimensionen umgehen in Bezug auf die Auswertung der Sitespeed agieren können
Value, Cost, Persuasion, Conversion, oder: Wie man die Möhre verkauftRupert Platz
Präsentation am 4. Juni 2016, IA Konferenz Berlin
Ein kleines, nützliches Framework für mehr Relevanz, mehr Motivation und weniger Hürden im UX Design
Liebe Menschen im Internet, wir wollen dass ihr uns etwas gebt: Eure Zeit, euer Interesse, eure Konzentration, eure Daten, euren Content, euer Geld, eure Treue. Dafür bekommt ihr tolle Produkte, Services, Inhalte oder Erlebnisse von uns. Aber braucht ihr das, was wir euch dafür bieten, überhaupt? Ist es euch den Preis wert, den wir dafür verlangen? Und wenn das so ist: Wie können wir euch davon überzeugen?
Rupert Platz ist freiberuflicher UX Stratege und Konzepter. Er hilft seit über 13 Jahren Unternehmen und Organisationen, mit Hilfe von nutzerzentriertem Denken Probleme zu lösen, Ziele zu erreichen und Werte zu schaffen. Am liebsten auf allen Ebenen, von Analyse und Vision über Content und Struktur bis Interaktion und Interface. Vor seiner freiberuflichen Tätigkeit war er der langjährige UX- Kreativdirektor der Digitalagentur Aperto.
Vortrag über das Wachstum von Amazon und die Potenziale, die sich hieraus für Marken im eCommerce bieten
Dieser Vortrag wurde gehalten im Rahmen des Online Karrieretag 2019 in Hamburg und richtet sich an Berufseinsteiger, die sich für Online Marketing im eCommerce Umfeld interessieren
Alle Informationen gibt es auch auf www.finc3.com
Als ein nach wie vor junge Marketing-Disziplin hat sich die Ausdifferenzierung einzelner Gebiete des Online-Marketings in den vergangenen Jahren rasend schnell entwickelt. Im Zuge dieser Entwicklung hat sich die Conversion Optimierung als ein wichtiger Teilbereich im Online-Marketing herausgebildet.
In der Präsentation zeigt Christian Böhme zeigt anhand eines Beispiels aus der Praxis, wie man die Conversion optimieren kann. Darüber hinaus erläutert er den gesamten Conversion Prozess und gibt Tool-Tipps, die bei der Optimierung der Conversion nützlich sein können.
Social Media: Datenschatz oder Datentruhe?Datentreiber
Unternehmen haben auf Facebook & Co. mit erheblichem Zeitaufwand und Budgeteinsatz teils beachtliche Reichweiten aufgebaut und stehen jetzt vor der Herausforderung Ihre Fans und Follower in qualifizierte Leads zu konvertieren. Verständlich, dass Marketing-Verantwortliche sich die Frage stellen: was kann, darf und soll ich mit den Daten aus den Social Media-Kanälen machen?
In seiner Keynote zeigt Datentreiber Martin Szugat, was technisch machbar, rechtlich erlaubt und wirtschaftlich sinnvoll ist, um den Datenschatz aus Social Media zu heben und mit der richtigen Datenstrategie aus Fans Kunden zu machen.
Werbeplanung.at SUMMIT 15 – Challenge the Agency – Woran man erkennt, ob die ...Werbeplanung.at Summit
Montagmorgen. Meeting. Aufgrund der Umsatzrückgänge fordert der Geschäftsführer: "Wir brauchen eine neue Agentur. Ich kenn da eine, die kann das." Eine Szene, die den meisten Verantwortlichen bekannt ist. Doch wie findet man einen seriösen, kompetenten und zum Unternehmen passenden Dienstleister? Führt ein ständiger Agenturwechsel zu mehr Know-how im Online Business? Wie soll die Agenturarbeit kontrolliert und gemessen werden? Oder sind doch Provisionsmodelle effizienter und erfolgreicher? Fragen, die hier beantwortet werden.
Web-Analyse ist keine Kür sondern Pflichtprogrammcrowdmedia GmbH
Wenn von einem Online-Shop oder eCommerce gesprochen wird, muss das Thema Web-Analyse unweigerlich mit bedacht werden – und leider passiert das bei weitem nicht. Erschwerend kommt dann häufig noch dazu, dass Web-Analyse mehr sein muss als nur Datenerhebung.
Amazon gesponserte Produkte (PPC) Kampagnen Set up, Gebotsoptimierung und Automatisierungsmöglichkeiten
12:10-13:00
Dr. Florian Nottorf › Gründer & Geschäftsführer Adference › Lüneburg
• Wie Sie als Hersteller und Händler leistungsstarke Sponsored Brands Anzeigen und Kampagnen erstellen
• Welche Neuerungen gab es 2019 und warum ändern sie in der Optimierung alles?
• Wie Sie Sponsored Brands sinnvoll automatisieren und Sponsored Brands mit Sponsored Products Kampagnen optimal kombinieren.
2019 überholte Amazon die Sponsored Brands. Kein anderes Amazon Werbeformat verspricht Werbetreibenden so viel Sichtbarkeit für Produkte und Marke, wie die Sponsored Brands Anzeigen, denn nur mit Sponsored Brands ist die Pole Position – “Top of Search” – in den Amazon Suchergebnissen erreichbar.
Ich zeige Ihnen in ein paar Schritten, wie Sie den LinkedIn Insight Tag generieren und einrichten. Dies ist eine Präsentation ohne Ton. Laden Sie sie bei Bedarf gern herunter.
Die Umsetzung einer individuellen App ist effizienter und erfolgreicher wenn eine strukturierte App-Konzeption als Grundlage vorhanden ist. An einem fiktiven Beispiel wird der Prozess aufgezeigt, der notwendig ist, um eine Anwendung von Anfang an strukturiert zu planen. Herausforderungen, Aufgaben und Fragen während des Prozess werden mit ihren Antworten systematisch aufgezeigt.
Vortrag bei der Corporate Publishing Konferenz am 04. Juli 2016 in München. Big Data Analytics, KPIs, Monitoring – Über Test & Learn zu besserem Content: Wie Sie messen und analysieren, was wirklich erfolgreich ist
SEA Aktionsautomatisierung | Ivana Nikic | SEA Camp Jena 2019norisk
In der SEA Camp Session von Ivana geht um Tipps & Tricks bei der Automatisierung von Aktionsanlagen in SEA Accounts. Es werden Skripte und native Tools in Google Ads gezeigt, um Marketingaktionen schneller in Google Ads anzulegen. Viel Spaß beim Lesen!
Webinar by CrossEngage: "CRM Trends 2022 – Back to the Customer"CrossEngage
Erfahren Sie alles über die wichtigsten aktuellen Trends im Marketing. Mit welchen Entwicklungen müssen Marketer in diesem Jahr rechnen? Wie können Sie sich am besten vorbereiten? Eines ist sicher: Kundenbindung schlägt Akquisition.
Hier geht's zum Vortrag: https://www.youtube.com/watch?v=TyNsCv-u6Ew
Vortrag von Susann Ermes und Steffen Jecke auf der AllFacebook Marketing Conference 2018 in München.
Vortrag:
https://conference.allfacebook.de/session/deepdive-reporting-kpis/
Über Susann:
https://conference.allfacebook.de/speaker/susann-ermes/
Über Steffen:
https://conference.allfacebook.de/speaker/steffen-jecke/
Konferenz:
https://conference.allfacebook.de/
In diesem zweiten Webinar beantworten wir alle Fragen, die uns Teilnehmer bisher gestellt haben. Sie bekommen in dieser Präsentation nochmal einen umfassenden Überblick und erfahren:
Wie Sie als Reseller mit nur einem Produkt unbegrenzte Einkommensströme über mehrere Ebenen aufbauen können. Völlig unabhängig voneinander.
Warum schon ein einziger Kunde reicht, um monatliche, passive Einnahmen zu generieren.
Wie Sie selbst an den Umsätzen anderer Reseller mitverdienen können.
Wie einfach die praktische Umsetzung unserer Geschäftsidee funktioniert.
Wie Sie Personality Check auch in anderen Sprachen nutzen und sogar weltweit vermarkten können.
Warum unser Markt für Persönlichkeits-Auswertungen tatsächlich unbegrenzt ist.
Welche Unterstützung in Form von Kursen und Coachings Sie zusätzlich zu Ihrer Reseller-Lizenz bekommen.
Nach diesem Webinar wird Ihnen völlig klar sein, wie Sie mit Personality Check Geld verdienen können und warum unsere innovative Software zurzeit eine der heißesten Geschäfts-Gelegenheiten für Internet- und Network-Marketer ist.
https://personalitycheck-online.com/persoenlichkeit/kostenlose-webinar-anmeldung-potential-personality-check/
Weitere ähnliche Inhalte
Ähnlich wie Behavior Driven Development - Ina Einemann | HEC GmbH
Value, Cost, Persuasion, Conversion, oder: Wie man die Möhre verkauftRupert Platz
Präsentation am 4. Juni 2016, IA Konferenz Berlin
Ein kleines, nützliches Framework für mehr Relevanz, mehr Motivation und weniger Hürden im UX Design
Liebe Menschen im Internet, wir wollen dass ihr uns etwas gebt: Eure Zeit, euer Interesse, eure Konzentration, eure Daten, euren Content, euer Geld, eure Treue. Dafür bekommt ihr tolle Produkte, Services, Inhalte oder Erlebnisse von uns. Aber braucht ihr das, was wir euch dafür bieten, überhaupt? Ist es euch den Preis wert, den wir dafür verlangen? Und wenn das so ist: Wie können wir euch davon überzeugen?
Rupert Platz ist freiberuflicher UX Stratege und Konzepter. Er hilft seit über 13 Jahren Unternehmen und Organisationen, mit Hilfe von nutzerzentriertem Denken Probleme zu lösen, Ziele zu erreichen und Werte zu schaffen. Am liebsten auf allen Ebenen, von Analyse und Vision über Content und Struktur bis Interaktion und Interface. Vor seiner freiberuflichen Tätigkeit war er der langjährige UX- Kreativdirektor der Digitalagentur Aperto.
Vortrag über das Wachstum von Amazon und die Potenziale, die sich hieraus für Marken im eCommerce bieten
Dieser Vortrag wurde gehalten im Rahmen des Online Karrieretag 2019 in Hamburg und richtet sich an Berufseinsteiger, die sich für Online Marketing im eCommerce Umfeld interessieren
Alle Informationen gibt es auch auf www.finc3.com
Als ein nach wie vor junge Marketing-Disziplin hat sich die Ausdifferenzierung einzelner Gebiete des Online-Marketings in den vergangenen Jahren rasend schnell entwickelt. Im Zuge dieser Entwicklung hat sich die Conversion Optimierung als ein wichtiger Teilbereich im Online-Marketing herausgebildet.
In der Präsentation zeigt Christian Böhme zeigt anhand eines Beispiels aus der Praxis, wie man die Conversion optimieren kann. Darüber hinaus erläutert er den gesamten Conversion Prozess und gibt Tool-Tipps, die bei der Optimierung der Conversion nützlich sein können.
Social Media: Datenschatz oder Datentruhe?Datentreiber
Unternehmen haben auf Facebook & Co. mit erheblichem Zeitaufwand und Budgeteinsatz teils beachtliche Reichweiten aufgebaut und stehen jetzt vor der Herausforderung Ihre Fans und Follower in qualifizierte Leads zu konvertieren. Verständlich, dass Marketing-Verantwortliche sich die Frage stellen: was kann, darf und soll ich mit den Daten aus den Social Media-Kanälen machen?
In seiner Keynote zeigt Datentreiber Martin Szugat, was technisch machbar, rechtlich erlaubt und wirtschaftlich sinnvoll ist, um den Datenschatz aus Social Media zu heben und mit der richtigen Datenstrategie aus Fans Kunden zu machen.
Werbeplanung.at SUMMIT 15 – Challenge the Agency – Woran man erkennt, ob die ...Werbeplanung.at Summit
Montagmorgen. Meeting. Aufgrund der Umsatzrückgänge fordert der Geschäftsführer: "Wir brauchen eine neue Agentur. Ich kenn da eine, die kann das." Eine Szene, die den meisten Verantwortlichen bekannt ist. Doch wie findet man einen seriösen, kompetenten und zum Unternehmen passenden Dienstleister? Führt ein ständiger Agenturwechsel zu mehr Know-how im Online Business? Wie soll die Agenturarbeit kontrolliert und gemessen werden? Oder sind doch Provisionsmodelle effizienter und erfolgreicher? Fragen, die hier beantwortet werden.
Web-Analyse ist keine Kür sondern Pflichtprogrammcrowdmedia GmbH
Wenn von einem Online-Shop oder eCommerce gesprochen wird, muss das Thema Web-Analyse unweigerlich mit bedacht werden – und leider passiert das bei weitem nicht. Erschwerend kommt dann häufig noch dazu, dass Web-Analyse mehr sein muss als nur Datenerhebung.
Amazon gesponserte Produkte (PPC) Kampagnen Set up, Gebotsoptimierung und Automatisierungsmöglichkeiten
12:10-13:00
Dr. Florian Nottorf › Gründer & Geschäftsführer Adference › Lüneburg
• Wie Sie als Hersteller und Händler leistungsstarke Sponsored Brands Anzeigen und Kampagnen erstellen
• Welche Neuerungen gab es 2019 und warum ändern sie in der Optimierung alles?
• Wie Sie Sponsored Brands sinnvoll automatisieren und Sponsored Brands mit Sponsored Products Kampagnen optimal kombinieren.
2019 überholte Amazon die Sponsored Brands. Kein anderes Amazon Werbeformat verspricht Werbetreibenden so viel Sichtbarkeit für Produkte und Marke, wie die Sponsored Brands Anzeigen, denn nur mit Sponsored Brands ist die Pole Position – “Top of Search” – in den Amazon Suchergebnissen erreichbar.
Ich zeige Ihnen in ein paar Schritten, wie Sie den LinkedIn Insight Tag generieren und einrichten. Dies ist eine Präsentation ohne Ton. Laden Sie sie bei Bedarf gern herunter.
Die Umsetzung einer individuellen App ist effizienter und erfolgreicher wenn eine strukturierte App-Konzeption als Grundlage vorhanden ist. An einem fiktiven Beispiel wird der Prozess aufgezeigt, der notwendig ist, um eine Anwendung von Anfang an strukturiert zu planen. Herausforderungen, Aufgaben und Fragen während des Prozess werden mit ihren Antworten systematisch aufgezeigt.
Vortrag bei der Corporate Publishing Konferenz am 04. Juli 2016 in München. Big Data Analytics, KPIs, Monitoring – Über Test & Learn zu besserem Content: Wie Sie messen und analysieren, was wirklich erfolgreich ist
SEA Aktionsautomatisierung | Ivana Nikic | SEA Camp Jena 2019norisk
In der SEA Camp Session von Ivana geht um Tipps & Tricks bei der Automatisierung von Aktionsanlagen in SEA Accounts. Es werden Skripte und native Tools in Google Ads gezeigt, um Marketingaktionen schneller in Google Ads anzulegen. Viel Spaß beim Lesen!
Webinar by CrossEngage: "CRM Trends 2022 – Back to the Customer"CrossEngage
Erfahren Sie alles über die wichtigsten aktuellen Trends im Marketing. Mit welchen Entwicklungen müssen Marketer in diesem Jahr rechnen? Wie können Sie sich am besten vorbereiten? Eines ist sicher: Kundenbindung schlägt Akquisition.
Hier geht's zum Vortrag: https://www.youtube.com/watch?v=TyNsCv-u6Ew
Vortrag von Susann Ermes und Steffen Jecke auf der AllFacebook Marketing Conference 2018 in München.
Vortrag:
https://conference.allfacebook.de/session/deepdive-reporting-kpis/
Über Susann:
https://conference.allfacebook.de/speaker/susann-ermes/
Über Steffen:
https://conference.allfacebook.de/speaker/steffen-jecke/
Konferenz:
https://conference.allfacebook.de/
In diesem zweiten Webinar beantworten wir alle Fragen, die uns Teilnehmer bisher gestellt haben. Sie bekommen in dieser Präsentation nochmal einen umfassenden Überblick und erfahren:
Wie Sie als Reseller mit nur einem Produkt unbegrenzte Einkommensströme über mehrere Ebenen aufbauen können. Völlig unabhängig voneinander.
Warum schon ein einziger Kunde reicht, um monatliche, passive Einnahmen zu generieren.
Wie Sie selbst an den Umsätzen anderer Reseller mitverdienen können.
Wie einfach die praktische Umsetzung unserer Geschäftsidee funktioniert.
Wie Sie Personality Check auch in anderen Sprachen nutzen und sogar weltweit vermarkten können.
Warum unser Markt für Persönlichkeits-Auswertungen tatsächlich unbegrenzt ist.
Welche Unterstützung in Form von Kursen und Coachings Sie zusätzlich zu Ihrer Reseller-Lizenz bekommen.
Nach diesem Webinar wird Ihnen völlig klar sein, wie Sie mit Personality Check Geld verdienen können und warum unsere innovative Software zurzeit eine der heißesten Geschäfts-Gelegenheiten für Internet- und Network-Marketer ist.
https://personalitycheck-online.com/persoenlichkeit/kostenlose-webinar-anmeldung-potential-personality-check/
Ähnlich wie Behavior Driven Development - Ina Einemann | HEC GmbH (20)
4. Was ist BDD?
Behavior Driven Development
RED
GREENREFACTOR
1. Einen Test schreiben und
prüfen, ob er fehlschlägt
2. Code ergänzen, damit der
Test erfolgreich durchläuft
3. Den Code verbessern
z.B. Wiederholungen
löschen
Die Basis ist TDD:
6. Was ist BDD?
Behavior Driven Development
Story: Taschenrechner
Feature: Zwei Zahlen
Szenario: Zwei Zahlen addieren
Angenommen die erste Zahl ist 50
Und die zweite Zahl ist 80
Wenn ich Addieren wähle
Dann ist das Ergebnis 130
Szenario: Zwei Zahlen multiplizieren
Angenommen die erste Zahl ist 5
Und die zweite Zahl ist 6
Wenn ich Multiplizieren wähle
Dann ist das Ergebnis 30
7. Story: Taschenrechner
Feature: Zwei Zahlen
Szenario: Zwei Zahlen addieren
Angenommen die erste Zahl ist 50
Und die zweite Zahl ist 80
Wenn ich Addieren wähle
Dann ist das Ergebnis 130
Szenario: Zwei Zahlen multiplizieren
Angenommen die erste Zahl ist 5
Und die zweite Zahl ist 6
Wenn ich Multiplizieren wähle
Dann ist das Ergebnis 30
Was ist BDD?
Behavior Driven Development
Ausgangssituation
Beschreibt die Vorbedingungen!
Was mache ich vor meiner neuen
Anforderungen/neuen Funktion?
8. Story: Taschenrechner
Feature: Zwei Zahlen
Szenario: Zwei Zahlen addieren
Angenommen die erste Zahl ist 50
Und die zweite Zahl ist 80
Wenn ich Addieren wähle
Dann ist das Ergebnis 130
Szenario: Zwei Zahlen multiplizieren
Angenommen die erste Zahl ist 5
Und die zweite Zahl ist 6
Wenn ich Multiplizieren wähle
Dann ist das Ergebnis 30
Was ist BDD?
Behavior Driven Development
Aktion
Beschreibt die Durchführung/Änderung!
Was ist meine Anforderungen
Was ist meine neue Funktion?
9. Story: Taschenrechner
Feature: Zwei Zahlen
Szenario: Zwei Zahlen addieren
Angenommen die erste Zahl ist 50
Und die zweite Zahl ist 80
Wenn ich Addieren wähle
Dann ist das Ergebnis 130
Szenario: Zwei Zahlen multiplizieren
Angenommen die erste Zahl ist 5
Und die zweite Zahl ist 6
Wenn ich Multiplizieren wähle
Dann ist das Ergebnis 30
Was ist BDD?
Behavior Driven Development
Ergebnis
Beschreibt die Änderung!
Was sind die Auswirklungen meiner
Aktion? Was hat sich geändert?
11. Szenario: Zwei Zahlen addieren
Angenommen die erste Zahl ist 50
Und die zweite Zahl ist 80
Wenn ich Addieren wähle
Dann ist das Ergebnis 130
[Given(@"die erste Zahl ist (.*)")]
public void AngenommenDieErsteZahlIst(decimal p0)
{
value1 = p0;
}
Was ist BDD?
Behavior Driven Development
12. Szenario: Zwei Zahlen addieren
Angenommen die erste Zahl ist 50
Und die zweite Zahl ist 80
Wenn ich Addieren wähle
Dann ist das Ergebnis 130
[Given(@"die zweite Zahl ist (.*)")]
public void AngenommenDieZweiteZahlIst(decimal p0)
{
value2 = p0;
}
Was ist BDD?
Behavior Driven Development
13. Szenario: Zwei Zahlen addieren
Angenommen die erste Zahl ist 50
Und die zweite Zahl ist 80
Wenn ich Addieren wähle
Dann ist das Ergebnis 130
[When(@"ich addieren möchte")]
public void WennIchAddierenMochte()
{
result = model.Add(value1, value2);
}
Was ist BDD?
Behavior Driven Development
14. Szenario: Zwei Zahlen addieren
Angenommen die erste Zahl ist 50
Und die zweite Zahl ist 80
Wenn ich Addieren wähle
Dann ist das Ergebnis 130
[Then(@„ist das Ergebnis (.*)")]
public void DannIstDasErgebnis(decimal p0)
{
Assert.AreEqual(p0, result);
}
Was ist BDD?
Behavior Driven Development
15. Szenario: Zwei Zahlen addieren
Angenommen die erste Zahl ist 50
Und die zweite Zahl ist 80
Wenn ich Addieren wähle
Dann ist das Ergebnis 130
Testname: ZweiZahlenAddieren
Testergebnis: Fehlgeschlagen
BDDTests.AddierenFeature.ZweiZahlenAddieren-
Testmethode hat eine Ausnahme ausgelöst:
System.NotImplementedException: Die Methode oder der
Vorgang ist nicht implementiert.
Was ist BDD?
Behavior Driven Development
17. public Decimal Add(Decimal value1, Decimal value2)
{
return value1 + value2;
}
Was ist BDD?
Behavior Driven Development
18. Angenommen die erste Zahl ist 50
-> done: CalculatorSteps.AngenommenDieErsteZahlIst(50)
Und die zweite Zahl ist 80
-> done: CalculatorSteps.AngenommenDieZweiteZahlIst(80)
Wenn ich addieren möchte
-> done: CalculatorSteps.WennIchAddierenMochte() (0,0s)
Dann sollte das Ergebnis 130 sein
-> done: CalculatorSteps.DannSollteDasErgebnisSein(130)
Was ist BDD?
Behavior Driven Development
33. Bevorzugung des
jetzigen Zustands
Gründe für den Widerstand
Ablehnung von Neuem
Formendes
Widerstands
AktivPassiv Betonköpfe
Mitläufer
Saboteure
Skeptiker
T
WIDERSPRUCH
• Gegenargumente
• Vorwürfe
• Drohungen
• Polemik
AUFREGUNG
• Unruhe
• Streit
• Intrigen
• Gerüchte
Angriff
34. Bevorzugung des
jetzigen Zustands
Gründe für den Widerstand
Ablehnung von Neuem
Formendes
Widerstands
AktivPassiv Betonköpfe
Mitläufer
Saboteure
Skeptiker
T
AUSWEICHEN
• Schweigen
• Bagatellisieren
• Blödeln
• Unwichtiges
debattieren
• Dienst nach Vorschrift
LUSTLOSIGKEIT
• Unaufmerksamkeit
• Müdigkeit
• Fernbleiben
• Krankheit
Verteidigung
35. Bevorzugung des
jetzigen Zustands
Gründe für den Widerstand
Ablehnung von BDD
Formendes
Widerstands
AktivPassiv Betonköpfe
Mitläufer
Saboteure
Skeptiker
T
• Zufrieden mit dem jetzigen Zustand
• Keine Lust auf Veränderungen
• Methode ist egal
36. Bevorzugung des
jetzigen Zustands
Gründe für den Widerstand
Ablehnung von BDD
Formendes
Widerstands
AktivPassiv Betonköpfe
Mitläufer
Saboteure
Skeptiker
T
• Hält nichts von BDD
• Vielleicht in anderen Projekten, aber
nicht im eigenen
37. Gründe für den Widerstand
Formendes
Widerstands
Skeptike
Ich will nur
entwickeln
Bevorzugung des
jetzigen Zustands
AktivPassiv
Mitläufer
Ablehnung von BDD
38. Skeptiker
Gründe für den Widerstand
Formendes
Widerstands
…Projekt PlaneShare…
Ich will nicht
testen!
Bevorzugung des
jetzigen Zustands
AktivPassiv
Ablehnung von BDD
39. Gründe für den Widerstand
Formendes
Widerstands
Wir sind doch
zufrieden! T
Bevorzugung des
jetzigen Zustands
Ablehnung von BDD
AktivPassiv Betonköpfe
40. Saboteure
Gründe für den Widerstand
Formendes
Widerstands
!!!
Das wollen
wir nicht!
Bevorzugung des
jetzigen Zustands
Ablehnung von BDD
AktivPassiv
43. Als Premium-Kunde
möchte ich für bestimmte Tage Fahrzeuge
abonnieren können,
damit ich nicht mehrmals buchen muss.
User Story
Aboservice
44. Akzeptanzkriterien
• Der Premium-Kunde soll bei einer Buchung auswählen können, ob die Buchung als Abo laufen soll
• Der ausgewählte Termin ist der Starttermin
• Er kann verschiedene Intervalle für sein Abo auswählen
– Täglich
• Er kann zwischen bestimmten Wochentagen oder allen Arbeitstagen auswählen
– Wöchtlich
• Rhythmus von jeder, zweiter, dritter…Woche
– Monatlich
• Bestimmter Wochentag (letzter Freitag im Monat)
• Bestimmter Tag, wie der 1. eines Monats
• Er kann einen Endtermin für sein Abo bestimmen
– Bestimmtes Datum
– Nach einer bestimmten Anzahl an Wochen
• Er kann in seinem Kundenkonto die ausgewählten Abos einsehen, ändern und löschen
• Er kann in seinem Kundenkonto die Kosten anzeigen
• Er kann einen Zahlungsrhythmus für das Abo auswählen
– Im Voraus
– Je Termin
– monatlich
45.
46.
47.
48.
49. Workflow
• Der Premium-Kunde soll bei einer Buchung auswählen können, ob die Buchung als Abo laufen soll
• Der ausgewählte Termin ist der Starttermin
• Er kann verschiedene Intervalle für sein Abo auswählen
– Täglich
• Er kann zwischen bestimmten Wochentagen oder allen Arbeitstagen auswählen
– Wöchtlich
• Rhythmus von jeder, zweiter, dritter…Woche
– Monatlich
• Bestimmter Wochentag (letzter Freitag im Monat)
• Bestimmter Tag, wie der 1. eines Monats
• Er kann einen Endtermin für sein Abo bestimmen
– Bestimmtes Datum
– Nach einer bestimmten Anzahl an Wochen
• Er kann in seinem Kundenkonto die ausgewählten Abos einsehen, ändern und löschen
• Er kann in seinem Kundenkonto die Kosten anzeigen
• Er kann einen Zahlungsrhythmus für das Abo auswählen
– Im Voraus
– Je Termin
– monatlich
Starttermin auswählen
Kundenkonto einsehen
Zahlungsrhythmus festlegen
Intervalle auswählen
Endtermin auswählen
50.
51. Operationen
• Der Premium-Kunde soll bei einer Buchung auswählen können, ob die Buchung als Abo laufen soll
• Der ausgewählte Termin ist der Starttermin
• Er kann verschiedene Intervalle für sein Abo auswählen
– Täglich
• Er kann zwischen bestimmten Wochentagen oder allen Arbeitstagen auswählen
– Wöchtlich
• Rhythmus von jeder, zweiter, dritter…Woche
– Monatlich
• Bestimmter Wochentag (letzter Freitag im Monat)
• Bestimmter Tag, wie der 1. eines Monats
• Er kann einen Endtermin für sein Abo bestimmen
– Bestimmtes Datum
– Nach einer bestimmten Anzahl an Wochen
• Er kann in seinem Kundenkonto die ausgewählten Abos einsehen, löschen und ändern
• Er kann in seinem Kundenkonto die Kosten anzeigen
• Er kann einen Zahlungsrhythmus für das Abo auswählen
– Im Voraus
– Je Termin
– monatlich
Abo anlegen
ändernlöschen
52.
53. Simpel/Komplex
• Der Premium-Kunde soll bei einer Buchung auswählen können, ob die Buchung als Abo laufen soll
• Der ausgewählte Termin ist der Starttermin
• Er kann verschiedene Intervalle für sein Abo auswählen
– Täglich
• Er kann zwischen bestimmten Wochentagen oder allen Arbeitstagen auswählen
– Wöchtlich
• Rhythmus von jeder, zweiter, dritter…Woche
– Monatlich
• Bestimmter Wochentag (letzter Freitag im Monat)
• Bestimmter Tag, wie der 1. eines Monats
• Er kann einen Endtermin für sein Abo bestimmen
– Bestimmtes Datum
– Nach einer bestimmten Anzahl an Wochen
• Er kann in seinem Kundenkonto die ausgewählten Abos einsehen, löschen und ändern
• Er kann in seinem Kundenkonto die Kosten anzeigen
• Er kann einen Zahlungsrhythmus für das Abo auswählen
– Im Voraus
– Je Termin
– monatlich
Simpel
Komplex
54.
55. Als Premium-Kunde
möchte ich ein Intervall auswählen,
damit mir ein PKW an wiederkehrenden Tagen zur
Verfügung steht.
User Story
Aboservice
60. Als Premium-Kunde
möchte ich ein Intervall auswählen,
damit mir ein PKW an wiederkehrenden Tagen zur
Verfügung steht.
User Story
Aboservice
61. Szenario
Gegeben ein Kunde mit dem Namen <Max>
Und <Max> hat den Nachnamen <Müller>
Und <Max> hat die Adresse <Bremen>
Und <Max> hat das Geburtsdatum <12.05.1987>
Und <Max> hat den Status <Premium>
62. Szenario
Gegeben ein Kunde mit den folgenden Daten:
kd_name kd_nachname kd_adresse kd_gebdatum kd_status
Max Müller Bremen 12.05.1987 Premium
Gegeben ein Kunde Max
Und Max ist Premium Kunde
63. Szenario
Und bucht einen PKW für den 01.08.15 und aktiviert
den Aboservice
Gegeben ein Kunde Max
Und Max ist Premium Kunde
Und Max bucht einen PKW für den 01.08.2015
Und Max aktiviert den Aboservice
64. Szenario
Gegeben ein Kunde Max
Und Max ist Premium Kunde
Und Max einen PKW für den 01.08.2015 bucht
Und Max den Aboservice aktiviert
Wenn Max ein wöchentliches Intervall auswählt
Dann ist der PKW auch für den 08.08.2015 gebucht
Gegeben ein Kunde Max
Und Max ist Premium Kunde
Wenn Max einen PKW für den 01.08.2015 bucht
Und Max den Aboservice aktiviert
Und Max ein wöchentliches Intervall auswählt
Dann ist der PKW auch für den 08.08.2015 gebucht
65. Szenarien
Gegeben ein Kunde Max
Und Max ist Premium Kunde
Und Max bucht einen PKW für den 01.08.2015
Und Max aktiviert den Aboservice
Wenn Max hat ein wöchentliches Intervall auswählt
Dann ist der PKW auch für den 08.08.2015 gebucht
Gegeben ein Kunde Max
Und Max ist Premium Kunde
Und Max bucht einen PKW für den 01.08.2015
Und Max aktiviert den Aboservice
Wenn Max hat ein monatliches Intervall auswählt
Dann ist der PKW auch für den 01.09.2015 gebucht
Gegeben ein Kunde Max
Und Max ist Premium Kunde
Und Max bucht einen PKW für den 31.08.2015
Und Max aktiviert den Aboservice
Wenn Max hat ein monatliches Intervall auswählt
Dann ist der PKW auch für den 30.09.2015 gebucht
66. Szenario Outline
Szenario Outline: Intervall
Gegeben ein Kunde Max
Und Max ist Premium Kunde
Und Max bucht einen PKW für den <startdatum>
Und Max aktiviert den Aboservice
Wenn Max hat ein <intervall> Intervall auswählt
Dann ist der PKW auch für den <zweites_datum> gebucht
Beispiele:
startdatum intervall zweites_datum bemerkung
01.08.2015 wöchentlich 08.08.2015
01.08.2015 monatlich 01.09.2015
31.08.2015 monatlich 30.09.2015 Letzer Monatstag
77. Layer
Gegeben ein Kunde Max
Und Max ist Premium Kunde
Und Max bucht einen PKW für den 01.08.15
Und Max aktiviert den Aboservice
Wenn Max hat ein wöchentlichen Intervall auswählt
Dann ist der PKW auch für den 08.08.15 gebucht
Max meldet sich an
Max wählt ein Fahrzeug aus
Max wählt den 01.08.2015
Public void entersNameAndAddress (Persona user) {
customer.enterFirstName (user.getFirstName() );
customer.enterLastName (user.getLastName() );
customer.enterAdress (user.getAddress() );
}
Business
Rule
Business
Flow
Technical
T
79. Muss ich TDD nutzen?
RED
GREENREFACTOR
1. Einen Test schreiben und
prüfen, ob er fehlschlägt
2. Code ergänzen, damit der
Test erfolgreich durchläuft
3. Den Code verbessern
z.B. Wiederholungen
löschen