Limitations and Potentials of modern BPM Systems for High-Performance Shadow Processing in Business Processes of Digital Companies

Ähnliche Dokumente
Workflows ganz einfach Einführung in die Process Cloud

Camunda BPM bei Zalando SE

BPE-/BRE-Integration in agree. Systemarchitektur, Technologien, Konzepte

Implementation of a Framework Component for Processing Tasks within Threads on the Application Level

S23 BPMN 2.0 in der Praxis Vom fachlichen Modell zum ausführbaren Prozess. Bernd Rücker

Process Management. Neue Möglichkeiten in der Geschäftsprozessmodellierung. Katja Hubl, Vostura GmbH

Vorwort. 1 Einführung 1

Java Concurrency Utilities

BPM-Architektur und andere Horrorgeschichten

Vorwort XI Einführung... BPMN - die Notation im Detail... 27

ITSM Infoday Mit Business Process Service Management zu mehr Flexibilität, Transparenz und Stabilität. Peter Brückler

Next generation open source BPM JBoss jbpm 4. Java Forum Stuttgart

Inhaltsverzeichnis. Bibliografische Informationen digitalisiert durch

Workflows mit BPMN & Business Rules mit DMN - Open Source und in Action mit Camunda BPM.

DOAG SIG Day. E-Business Suite und SOA: Was ist heute schon möglich? Thomas Karle PROMATIS software GmbH. Frankfurt 26. April 2007

Argos Process Engine. Unsere Lösung für die Integration komplexer IT-Landschaften. München, 20. Juni 2017 Alexander Dietel

Gemeinsam mehr erreichen. Activiti vs. Oracle BPM

Laborskript Verteilte Systeme

NetworkedAssets GmbH. Erfahrungen beim Einsatz von BPEL 10.1.x DOAG SIG SOA 29. September 2009

MID Webcast Entscheidungen und Prozesse. Jetzt wächst zusammen, was zusammen gehört!

Tobias Flohre / Dennis Schulte codecentric AG. Spring Batch Performance und Skalierbarkeit

Workflows in APEX mit Camunda

Praxishandbuch BPMN 2.0

Quo vadis Prozessmodellierung? Unsere Sicht der Dinge SemTalk User Meeting Dr.-Ing. Frauke Weichhardt Semtation GmbH

Praxishandbuch BPMN 2.0

PROMATIS software GmbH

Inhaltsverzeichnis. Jakob Freund, Bernd Rücker. Praxisbuch BPMN 2.0 ISBN: Weitere Informationen oder Bestellungen unter

Omnichannel Automation mit elastischer Skalierung

PowerIT AUS DEM HERZEN VON NRW

Entwicklung von Workflowanwendungen (wfapp2011)

SGO BPM CoP-Anlass

Praxishandbuch BPMN. Incl. BPMN 2.0. von Jakob Freund, Bernd Rücker, Thomas Henninger. 1. Auflage. Hanser München 2010

Einführung in Campus Connect

Die Windows Workflow Foundation in Microsoft.NET 3.0

Eliminierung von Komplexität durch moderne IT- Werkzeuge

Servicebeschreibung. mit der Oracle BPA Suite. Andreas Grasmüller Senior Berater OPITZ CONSULTING München GmbH

Verteilte Systeme. Nebenläufigkeit. Prof. Dr. Oliver Haase

SERVIEW. High Performance IT. die Transformation zu einer agilen, schlanken und verlässlichen IT

Innovator for Business Analysts on Tour, März 2010

20. DOAG-Konferenz. Wohlstrukturierte Prozesse auf SOA-Basis. mit der Oracle E-Business Suite. Thomas Karle PROMATIS software GmbH

Business Process Management. BPM Wer braucht denn sowas?

Formulare in Papierform ablösen mit der BPM Suite 11g

1 Überblick. Alles geregelt Alles geregelt: Einsatz von Rule Engines in SOA Projekten. Heiko Spindler Senior Architekt

Geschäftsvorfälle flexibel und dynamisch steuern

Geschäftsprozessmodellierung mittels Software- Services auf Basis der EPK

Seminar: Multi-Core Architectures and Programming

OpenMP. Viktor Styrbul

BPMN2.0 Geschäftsprozesse effizient gestalten. Ganz klar persönlich.

Prozessautomatisierung mit BPMN 2.0 und Java.

SOFTWARE AG DIGITALISIERUNG VON VERWALTUNGSPROZESSEN AM BEISPIEL DER ELEKTRONISCHEN RECHNUNG. Governikus Jahrestagung

Abschlussarbeiten für StudentInnen

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only

EINFÜHRUNG IOZ AG 1

ERP SOFTWARE INTEGRATION MIT SUGAR

Notationen zur Prozessmodellierung

Zielführende Business Analyse durch erfolgreiches Geschäftsprozess- und Entscheidungsmanagement

Geschäftsprozesse mit BPMN erfolgreich in 6 Schritten implementieren. OPITZ CONSULTING GmbH 2013 Seite 1

Geschäftsprozessmanagement: Einführung in»business Process Modelling Notation«(BPMN)

Das Business im Prozess: Warum Anwender nicht BPMN sprechen

BPMN oder ACM? Interaktive Show mit Live- Modellierung Sven Bernhardt, Danilo Schmiedel OPITZ CONSULTING Deutschland GmbH

DOAG 2009 Copyright 2009, Oracle Corporation

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Inhaltsverzeichnis. Jakob Freund, Bernd Rücker. Praxishandbuch BPMN 2.0 ISBN: Weitere Informationen oder Bestellungen unter

Geschäftsprozesserstellung durch den Fachbereich am Kundenbeispiel

Parallele Programmiermodelle

Geschäftsprozesse lesen und verstehen

Modellierung von RFID-Prozessen mit offen Softwarestandards

Mobile Lösungen für das Digitale Unternehmen

ESV Herausforderungen Rechtliche Verfahren am Institut für Geistiges Eigentum

Select & Preprocessing Cluster. SPP Server #1. SPP Server #2. Cluster InterConnection. SPP Server #n

PV-Wind-Diesel Hybridsystemen Regelung und Betriebsführung mit leistungsoptimierten Energiespeichern

Standard-Workflows vs. Workflow-Standards

PRODATIS CONSULTING AG. Folie 1

Das Business im Process: Warum Anwender nicht BPMN sprechen

Geschäftsprozessmodellierung Einführung, Analyse und Simulation

QM & BPM Lösungen mit SharePoint / Office 365

Prozessautomatisierung mit BPMN 2.0 und Java.

KLARE VORTEILE IM VERGLEICH MIT OPEN SOURCE BPM SOFTWARE. Machen Sie kurzen Prozess!

Zukunftsaufgabe Geschäftsprozessmanagement. Wolfgang Reismann, IBM, IT-Architect

Implementierung eines Projektantrags-Prozesses mit Fusion Middleware

Business Process Model and Notation (BPMN) II

Camunda BPM bei der Allianz Indonesia

Java Garbage Collector: Funktionsweise und Optimierung. Mathias Dolag Prof. Dr. Peter Mandl (DOAG 2012, )

Inkrementelle Modellsichten

Migration der Datenbankzugriffsschnittstelle in Client-/Server-Systemen

IoT to the Node. Ein radikaler Ansatz mit hohem Potential. GNI - Seminar Digitaler Wandel in der Lichtanwendung 3. April 2019

Steffen Bischoff Senior Sales Engineer

BPMN. Suzana Milovanovic

Leistungen und Aktivitäten, um Mehrwert zu schaffen.

DISTRIBUTED COMPUTING IN A HYBRID ENVIRONMENT. Die Komplexität heterogener Server einfach und schnell bewältigen.

Camunda BPM bei der LVM Versicherung

Diplomarbeit: Open Source Rapid Web Development Frameworks - Eine Untersuchung der Skalierungsstrategien

Ein frischer Blick auf existierende Prozesse

Verbinden von Workflows und fachlichen Prozessmodellen im Rahmen eines SharePoint Prozessportals Semtation GmbH (Henrik Strauß)

Sommersemester Implementierung I: Struktur

C-to-CUDA-Compiler. Johannes Kölsch. October 29, 2012

III.1 Prinzipien der funktionalen Programmierung - 1 -

Herzlich willkommen DevDay 2016 Performance Profiling mit JProfiler

Transkript:

Limitations and Potentials of modern BPM Systems for High-Performance Shadow Processing in Business Processes of Digital Companies Martin Schmollinger, Jürgen Krauß Hochschule Reutlingen, Alteburgstraße 150, 72762 Reutlingen, www.reutlingen-university.de 1

Agenda 1. Einleitung 2. Fragestellung und Maßnahme 3. Ergebnisse und Ausblick 2

Einleitung Grundlage BPM Herausforderung Konflikte BPMS liefern eine hohe Transparenz, Monitoring von Prozessen und Hilfe bei der Entwicklung. BPMN ist eine standardisierte Modellierungssprache zum erstellen ausführungsnaher Prozesse. Dunkelverarbeitung spielt eine große Rolle in Geschäftsprozessen. Für eine leistungsfähige Dunkelverarbeitung ist Parallele Ausführung von Aufgaben notwendig. Parallele Ausführung wird in der BPMN Spezifikation nicht vorgeschrieben. Leistungsfähigkeit des BPMS bei der Ausführung paralleler Konstrukte ist individuell. 3

Anforderungen an das BPMS BPMN CMMN Dunkel BPMN Dunkelverarbeitung wird außerhalb von einem BPMS ausgeführt. Konsequenz: Vorteile des BPMS gehen verloren. Medienbruch. Eventuell Rückführung in das BPMS notwendig. Lösung: BPMS sollte alle Prozessvarianten unterstützen. Kandidat: Camunda BPM 4

Fragestellungen und Maßnahme Fragestellung Wie sieht die Out-of-the-Box Implementierung eines parallel zu bearbeitenden Prozesses in Camunda BPM aus? Wie funktioniert sie? Wie kann die Implementierung eines Prozesses bei Camunda BPM durch spezifische Konfiguration in der Software erreicht oder optimiert werden? Wie effizient ist die Implementierung eines Prozesses in Camunda BPM im Vergleich zu einer Java Applikation? Maßnahme Implementierung eines Prozesses mit parallelem Konstrukt in Camunda BPM Softwarespezifische Konfigurationen, um den Prozess zu parallelisieren und die Laufzeiten zu optimieren Vergleich einer optimierten Implementierung mit einer Java Applikation 5

Implementierung des Prozesses 6

Fragestellung Wie sieht die Out-of-the-Box Implementierung eines parallel zu bearbeitenden Prozesses in Camunda BPM aus? Wie funktioniert sie? Maßnahme Implementierung eines Prozesses in Camunda BPM Ergebnis Paralleles Gateway sorgt nicht für eine parallele Verarbeitung der Ausführungspfade Die Ausführung ist nicht intuitiv 7

Fragestellungen und Maßnahme Fragestellung Wie sieht die Out-of-the-Box Implementierung eines parallel zu bearbeitenden Prozesses in Camunda BPM aus? Wie funktioniert sie? Wie kann die Implementierung eines Prozesses in Camunda BPM durch spezifische Konfiguration in der Software erreicht oder optimiert werden? Wie effizient ist die Implementierung eines Prozesses in Camunda BPM im Vergleich zu einer Java Applikation? Maßnahme Implementierung eines Prozesses in Camunda BPM Softwarespezifische Konfigurationen, um den Prozess zu parallelisieren und die Laufzeiten zu optimieren Vergleich der optimierten Implementierung mit einer Java Applikation 8

Softwarespezifische Konfiguration 9

Softwarespezifische Konfiguration Asynchronous Continuation Konfigurierbar vor und nach Gateways oder Tasks Persistiert den Zustand einer Transaktion Asynchronous Jobs werden von einem Job Executor verwaltet. Der von ihm genutzte Thread Pool ist die Vorrausetzung für parallele Ausführung Job Executor verhindert parallele Ausführung wegen eventuellen Konsistenzproblemen! 10

Softwarespezifische Konfiguration Non-exlusive Tasks Die nicht Exklusivität von Tasks bringt den Job Executor dazu Asynchronous Jobs parallel auszuführen. Jeder nicht exklusive Task erhält einen eigenen Thread ohne vorherige Abhängigkeitsprüfung. 11

Softwarespezifische Konfiguration Resultat 12

Softwarespezifische Konfiguration Probleme Transaction Timeout lässt den Job Executor eine Transaktion nach fünf Minuten abbrechen. Lock Timeout lässt einen, vom Job Executor gesperrten Job, nach fünf Minuten entsperren. Die Transaktion startet von Neuem, obwohl sie bereits ausgeführt wird. 13

Softwarespezifische Konfiguration Alternative 1 14

Softwarespezifische Konfiguration Probleme Modelle sind nicht skalierbar. 15

Softwarespezifische Konfiguration Alternative 2 16

Fragestellung Wie kann die Implementierung eines Prozesses bei Camunda BPM durch spezifische Konfiguration in der Software erreicht oder optimiert werden? Maßnahme Softwarespezifische Konfigurationen, um den Prozess zu parallelisieren und die Laufzeiten zu optimieren Ergebnis Parallele Ausführung kann erreicht werden Konfigurationen sind im Modell nicht sichtbar und übertragbar Timeout Probleme tauchen auf Multi Instance ist eine skalierbare Lösung für parallele Ausführung. 17

Fragestellungen und Maßnahme Fragestellung Wie sieht die Out-of-the-Box Implementierung eines parallel zu bearbeitenden Prozesses in Camunda BPM aus? Wie funktioniert sie? Wie kann die Implementierung eines Prozesses in Camunda BPM durch spezifische Konfiguration in der Software erreicht oder optimiert werden? Wie effizient ist die Implementierung eines Prozesses in Camunda BPM im Vergleich zu einer Java Applikation? Maßnahme Implementierung eines Prozesses in Camunda BPM Softwarespezifische Konfigurationen, um den Prozess zu parallelisieren und die Laufzeiten zu optimieren Vergleich der optimierten Implementierung mit einer Java Applikation 18

Vergleich Aufbau Einfach parallel ausführbare Aufgabe mit sequentiellem Anteil -> Maximale Primzahl in einer Liste Parallele Tasks greifen auf einen gemeinsamen synchronisierten Speicher zu Experiment wurde mit einer Listengröße von 5, 10 und 20 Millionen Zahlen (n) mit jeweils 1, 2, 4 und 8 Tasks (p) durchgeführt. 19

Vergleich Ergebnis Camunda BPM p\n 5.000.000 S p 10.000.000 S p 20.000.000 S p 1 21259 1,00 61162 1,00 174282 1,00 2 11826 1,80 33796 1,81 95964 1,82 4 11773 1,81 31157 1,96 95521 1,82 8 7605 2,80 17425 3,51 56971 3,06 Java Applikation p\n 5.000.000 S p 10.000.000 S p 20.000.000 S p 1 21094 1,00 59702 1,00 168817 1,00 2 10861 1,94 30755 1,94 87003 1,94 4 5805 3,63 16641 3,59 48402 3,49 8 4318 4,89 12403 4,81 34877 4,84 20

Fragestellung Wie effizient ist die Implementierung eines Prozesses in Camunda BPM im Vergleich zu einer Java Applikation? Maßnahme Vergleich der optimierten Implementierung mit einer Java Applikation Ergebnis p=1 und p=2 sind für beide Lösungen sehr ähnlich ~10% Verlust durch die Engine Mit p>2 wird der Zuwachs an Geschwindigkeit der Engine schlechter. Der Grund ist eine schlechte Nutzung des Threadpools. 21

Fragestellungen und Maßnahme Fragestellung Wie sieht die Out-of-the-Box Implementierung eines parallel zu bearbeitenden Prozesses in Camunda BPM aus? Wie funktioniert sie? Wie kann die Implementierung eines Prozesses in Camunda BPM durch spezifische Konfiguration in der Software erreicht oder optimiert werden? Wie effizient ist die Implementierung eines Prozesses in Camunda BPM im Vergleich zu einer Java Applikation? Maßnahme Implementierung eines Prozesses in Camunda BPM Softwarespezifische Konfigurationen, um den Prozess zu parallelisieren und die Laufzeiten zu optimieren Vergleich der optimierten Implementierung mit einer Java Applikation 22

Zusammenfassung/Ausblick 1. Parallele Ausführung in Camunda BPM ist möglich. 2. Die aktuelle Lösung ist nicht zufriedenstellend. Der Entwickler scheint gegen die Engine zu entwickeln und Workarounds zu implementieren die Kompromisse zwischen paralleler Ausführung und Konsistenz darstellen. 3. Die Leistung der parallele Ausführung ist nicht effizient. Wie funktionieren andere BPMS in Hinblick auf ein standardisiertes Konzept der parallelen Ausführung? Können vergleichbare Softwaresysteme als Vorbild genommen werden, um bessere Ergebnisse zu erzielen? Kann die parallele Ausführung nicht in das Modell von BPMN eingeführt werden? 23