0
Testgetriebene
Geschäftsprozessmodellierung
mit camunda BPM

für Camunda Community Event, 26. November 2013
Über uns...

Die Holisticon AG ist eine Managementund IT-Beratung mit Sitz in Hamburg. Mit
einem ganzheitlichen Beratungsa...
Agenda

■ Warum BPM/SOA?

■ Was muss getestet werden?
■ Wie geht das wirklich? (Live Demo)

■ Fazit und Ausblick
■ Offene ...
Komplexität

bpm-soa@holisticon.de | 4
Prozesse
Services

operativ

strategisch

BPM/SOA

Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 5
Prozesse sind ausführbar

BPMN 2.0
Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 6
Prozesse

operativ

Services

Icon: © http://www.visualpharm.com/

strategisch

Sollten Prozesse getestet werden?

Testget...
Prozesse müssen getestet werden!

■ Voraussetzung für Refactoring
■ BPM/SOA für höhere Flexibilität
■ Die Auswirkung jeder...
Ebenen von Tests
Anwender

fachlich

End-To-End
System

Integration
Component
Unit

Entwickler

technisch

Testgetriebene ...
Automatische Tests

■ Unit

■ Behavior

■ Technischer Test
■ Abgeschlossene Einheiten:
■ Funktion/Methode
■ Klasse
■ Teste...
Prozesse sind…

keine
Units
Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 11
BDD Szenario / Story

Eine Mail senden
Angenommen der Benutzer erzeugt eine Mail
Und der Text ist „Hello World“

Und der E...
Tests von BPM/SOA Systemen

Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 13
Test: Syntax, Ausführbarkeit

Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 14
Test: Orchestrierung, Erreichbarkeit

Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 15
Guards gegen falsche Annahmen

■ Kontrakt zwischen Process Engine und Services

■ Anforderungen an Datenfluss
■ Vor- und N...
15 Minuten

Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 17
Demo: Ist Prozess

Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 18
Demo: Vertragsverarbeitung

IstProzessanalyse

Ausgerollt

Soll-Vision

Inkrementell
modelliert und
entwickelt

Testgetrie...
Demo: Sprint 5

Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 20
Fehlertolerante Verarbeitung

Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 21
Implementierung Sprint 6

Teilprozessbild Sprint 1

User Story, Szenario
Demo: Szenarien + Guard

Testgetriebene Geschäfts...
CI & Reporting

Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 23
Fazit

■ Was haben wir gesehen?
■ Prozesse sind keine Units, aber trotzdem testbar
■ Akzeptanzkriterien als Szenarien besc...
Weitere Informationen

■ www.camunda.org

■ github.com/camunda/camunda-bpm-testing

■ Contributions zu JBehave, Needle, Ca...
Was kann man noch machen?

■ Wiederverwendung der Testszenarien für I-Tests
■ Austausch der In-Memory-Process Engine gegen...
Vielen Dank!
Nächste SlideShare
Wird geladen in ...5
×

Testgetriebene Geschäftsprozessmodellierung

1,596

Published on

BPM/SOA-Projekte binden oft eine Vielzahl von Abteilungen und Systemen ein und integrieren diese in den Prozess. Sie zeichnen sich durch hohe Komplexität der Anforderungen aus, die zwischen dem Fachbereich, der Organisationsentwicklung und IT ausgetauscht werden. Geschäftsprozessmodelle sind dabei die zentralen Artefakte: sie stellen nicht nur die wichtigste Grundlage der Kommunikation dar, sondern bilden bereits das Skelett der späteren Fach- und Softwarearchitektur. Darüber hinaus dienen BPMN-Modelle quasi als “Programmiersprache” für die ausführende BPM- Engine. Insbesondere wenn man agil arbeiten und die Geschäftsprozessmodelle inkrementell-iterativ entwickeln möchte, ändern sich diese BPMN-Modelle häufig. Und genau dann ist es unverzichtbar, Methoden und Werkzeuge einzusetzen, die für die Einhaltung von Qualität und Korrektheit von Modellen sorgen. Hier setzt unser Vortrag an: er zeigt, wie man ausgehend von fachlichen Anforderungen zusammen mit dem Fachbereich die Akzeptanztests für das BPMN-Modell entwickelt. Diese Tests werden zunächst für die Überprüfung des Modells verwendet, können jedoch auch in der Softwareentwicklung und -integration verwendet werden und dienen als Basis für spätere Abnahme- und Regressionstests von End-to-End-Prozessen.

Der Clou: Die Tests verwenden natürliche Sprache! Sie dokumentieren so den Prozessablauf und dessen Attribute und können vom Fachbereich verstanden und gegebenenfalls sogar erstellt werden. Wie das funktioniert, demonstrieren wir anhand eines existierenden Prozessmodells mit fertig beschriebenen Szenarien und führen live Verhaltenstests durch. Dann ändern wir die fachliche Anforderung (simulierter Fehlschlag) und passen den produktiven Prozess an, bis das gewünschte Verhalten erreicht ist.

Published in: Software
0 Kommentare
1 Gefällt mir
Statistiken
Notizen
  • Hinterlassen Sie den ersten Kommentar

Keine Downloads
Views
Gesamtviews
1,596
Bei Slideshare
0
Aus Einbettungen
0
Anzahl an Einbettungen
9
Aktionen
Geteilt
0
Downloads
5
Kommentare
0
Gefällt mir
1
Einbettungen 0
No embeds

No notes for slide

Transcript of "Testgetriebene Geschäftsprozessmodellierung"

  1. 1. Testgetriebene Geschäftsprozessmodellierung mit camunda BPM für Camunda Community Event, 26. November 2013
  2. 2. Über uns... Die Holisticon AG ist eine Managementund IT-Beratung mit Sitz in Hamburg. Mit einem ganzheitlichen Beratungsansatz unterstützen wir unsere Kunden in ihren Entwicklungsprojekten auf technischer, taktischer wie auch strategischer Ebene. Jan Claudia Galinski Cordes Simon Zambrovski
  3. 3. Agenda ■ Warum BPM/SOA? ■ Was muss getestet werden? ■ Wie geht das wirklich? (Live Demo) ■ Fazit und Ausblick ■ Offene Diskussion Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 3
  4. 4. Komplexität bpm-soa@holisticon.de | 4
  5. 5. Prozesse Services operativ strategisch BPM/SOA Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 5
  6. 6. Prozesse sind ausführbar BPMN 2.0 Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 6
  7. 7. Prozesse operativ Services Icon: © http://www.visualpharm.com/ strategisch Sollten Prozesse getestet werden? Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 7
  8. 8. Prozesse müssen getestet werden! ■ Voraussetzung für Refactoring ■ BPM/SOA für höhere Flexibilität ■ Die Auswirkung jeder Änderung kann geprüft werden ■ Basis für iterative und inkrementelle Entwicklung ■ Agile Prozess-Modellierung, nicht nur Software-Realisierung ■ Kurze Modellierungszyklen möglich ■ Nachhaltige Qualität ■ Tests sind die beste Dokumentation ■ Vision, Projekt, Wartung, Betrieb Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 8
  9. 9. Ebenen von Tests Anwender fachlich End-To-End System Integration Component Unit Entwickler technisch Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 9
  10. 10. Automatische Tests ■ Unit ■ Behavior ■ Technischer Test ■ Abgeschlossene Einheiten: ■ Funktion/Methode ■ Klasse ■ Testet einen Zustand ■ Fachlicher Test ■ (Quasi-)Offenes System: ■ Dialogfolge ■ Ablaufsteuerung ■ Testet Zustandsfolge Referenz Eingabe TEST Ausgabe SUT Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 10
  11. 11. Prozesse sind… keine Units Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 11
  12. 12. BDD Szenario / Story Eine Mail senden Angenommen der Benutzer erzeugt eine Mail Und der Text ist „Hello World“ Und der Empfänger ist „bpm-soa@holisticon.de“ Wenn die Mail abgeschickt wird Dann wechselt der Status auf ‚versendet‘. Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 12
  13. 13. Tests von BPM/SOA Systemen Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 13
  14. 14. Test: Syntax, Ausführbarkeit Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 14
  15. 15. Test: Orchestrierung, Erreichbarkeit Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 15
  16. 16. Guards gegen falsche Annahmen ■ Kontrakt zwischen Process Engine und Services ■ Anforderungen an Datenfluss ■ Vor- und Nachbedingungen im Prozess Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 16
  17. 17. 15 Minuten Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 17
  18. 18. Demo: Ist Prozess Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 18
  19. 19. Demo: Vertragsverarbeitung IstProzessanalyse Ausgerollt Soll-Vision Inkrementell modelliert und entwickelt Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 19
  20. 20. Demo: Sprint 5 Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 20
  21. 21. Fehlertolerante Verarbeitung Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 21
  22. 22. Implementierung Sprint 6 Teilprozessbild Sprint 1 User Story, Szenario Demo: Szenarien + Guard Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 22
  23. 23. CI & Reporting Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 23
  24. 24. Fazit ■ Was haben wir gesehen? ■ Prozesse sind keine Units, aber trotzdem testbar ■ Akzeptanzkriterien als Szenarien beschrieben ■ Was bedeutet das für mein Projekt? ■ Prozesstests sind Grundlage für agile Modellierung ■ Szenarien dienen als Spezifikation und Dokumentation ■ Teamspezialisierung ist möglich ■ Camunda BPM Platform ■ In-Memory Prozess Engine ■ Camunda-BPM-Testing Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 24
  25. 25. Weitere Informationen ■ www.camunda.org ■ github.com/camunda/camunda-bpm-testing ■ Contributions zu JBehave, Needle, Camunda ■ github.com/holisticon Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 25
  26. 26. Was kann man noch machen? ■ Wiederverwendung der Testszenarien für I-Tests ■ Austausch der In-Memory-Process Engine gegen Intergrationsumgebung ■ Messung der Testabdeckung ■ Was bedeutet Testabdeckung für Prozesse? ■ Wie misst man sie? Testgetriebene Geschäftsprozessmodellierung| bpm-soa@holisticon.de | 26
  27. 27. Vielen Dank!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×