Camunda BPM 7.2 - Deutsch

Preview:

DESCRIPTION

Camunda BPM 7.2 - Deutsch

Citation preview

Camunda BPM 7.2Release Webinar

Ihre Gastgeber

Daniel MeyerTechnical Lead

Jakob FreundGeschäftsführer

Nutzen Sie Camunda?

No answer; 45; 8%

Not at all; 166; 32%

we're evaluating; 174; 33%

we're developing;

83; 16%

we're in production;

58; 11%

Warum nutzen Sie Camunda?

Merkmale:• Führt BPMN 2.0 aus• Optimal für Java• Ist Open Source

Vorteile:• Standard-Technologien und –

Know-How• Flexibler• Schnellere Entwicklung• Geringere Kosten

Weitere Referenzen:

Camunda 7.2 Statistiken

1. April – 30. NovemberCa. 1.700 Personentage

Features; 209; 33%

Bugs; 203; 33%

Tasks; 211; 34%

Camunda BPM 7.2

• Performance / Skalierbarkeit

• Tasklist

• Konnektoren / Daten / Skripte / Templates

• CMMN

Camunda BPM 7.2

• Performance / Skalierbarkeit

• Tasklist

• Konnektoren / Daten / Skripte / Templates

• CMMN

Performance / Skalierbarkeit

• Camunda BPM wird zunehmend in Hochlast-Szenarien eingesetzt• Ein „Hochlast-Szenario“ beginnt ab 10 gestarteten Prozessinstanzen pro

Sekunde.

• Einige Camunda-Kunden starten über 1.000 Prozessinstanzen pro Sekunde.

• Deshalb verbessern wir kontinuierlich die Performance und Skalierbarkeit:• Möglichst viele Prozessinstanzen in möglichst kurzer Zeit abarbeiten

• Möglichst optimale Lastverteilung im Cluster

• Erforschung alternativer Persistenz-Technologien (NoSQL, In Memory etc.)

Camunda 7.1 (!) vs. JBoss jBPM 6

Mehr Informationen: http://camunda.com/de/landing/whitepaper-camunda-jbpm

In unseren Tests war der Durchsatz von Camunda 10x-30x höher als der von JBoss jBPM.

Verbesserungen in 7.2

• Verbesserter First Level Cache (Durchsatz um bis zu 90% erhöht)

• Verbesserte Lastverteilung im Cluster

• Minimiertes Deadlock-Risiko in Hochlast-Szenarien

• Konfigurierbarer Log Level der History

Camunda BPM 7.2

• Performance / Skalierbarkeit

• Tasklist

• Konnektoren / Daten / Skripte / Templates

• CMMN

Was ist Tasklist?

Tasklist 7.2

In Zusammenarbeit mit “Die Taskliste ist der zentrale Berührungspunkt

der Fachanwender mit der BPM-Plattform und deshalb ein wesentlicher Baustein. Die innovative Umsetzung der Camunda Taskliste passt hervorragend zum Webtechnologie-Stack der DAB Bank und erspart eine aufwändige Eigenentwicklung. Der Funktionsumfang ist optimal auf die Camunda BPM-Plattform ausgerichtet und erfüllt durch die flexible Anpassbarkeit auch die Bedürfnisse einer Bank.Karl Brandner, Chief Architect

Live Demo!

1 2 3

Technische Architektur

CamundaBackendREST

CamundaJavaScript Forms SDK

AngularJSTwitter Bootstrap

Ihre eigene Architektur?

CamundaBackendREST

CamundaJavaScript Forms SDK

Ihre individuelle HTML 5 Anwendung

Camunda JavaScript Forms SDK

• Vereinfacht die Implementierung von Task Forms.

• Man kann HTML Formular-Elemente direkt an Prozessvariablen binden.

• Das Forms SDK zieht die Variablenwerte aus der Process Engine, kümmert sich um die Typ-Konversion usw.

• Falls gewünscht, auch existierende Integration mit AngularJS

More: https://github.com/camunda/camunda-bpm-sdk-js

<form> <input type="text"

cam-variable-name="CUSTOMER_ID"cam-variable-type="String">

<input type="text"cam-variable-name="CUSTOMER_REVENUE"cam-variable-type="Float">

</form>

Camunda BPM 7.2

• Performance / Skalierbarkeit

• Tasklist

• Konnektoren / Daten / Skripte / Templates

• CMMN

Das Camunda-Paradigma

Developer-FriendlySystem Integration

Death by Property Panelvs.

Camunda Zero-Code BPM Suites

Java Objekte in XML or JSON serialisieren

Camunda BPM

Database

Customer, Address

XML or JSON

Vorteile:

• Jeder kann Java Objekte direkt in der Datenbank oder Cockpit einsehen

• Es wird deutlich einfacher, polyglotte Architekturen aufzusetzen (z.B. Java + Javascript)

Live DemoHurra!

Verbesserter Umgang mit Datenformaten

XML or JSON

Vorteile:

• Direkter Zugriff auf XML und JSON aus dem Prozess heraus• Keine Notwendigkeit, XML oder JSON in Java-Objekte zu konvertieren

Warum Skripte und Templates so toll sind

• Kein Java-Code benötigt.

• (Re-)deployments auch zur Laufzeit möglich.

• Können als Teil der Prozessdefinition versioniert werden.

• Können im BPMN eingebettet werden, oder auch darin referenziert und in separaten Dateien erstellt und gewartet werden.

• Sehr gute Performance dank Compile & Cache.

Verbesserter Support für Scripting

Verbesserter Support für Templates

CamundaEnterprise Edition

Skripte und Templates im Prozess

In Script Tasks

In Listeners

As Conditions

As IO-Mappings

Konnektoren

Konnektoren

• Einfache API, um wiederverwendbare Konnektoren zu entwickeln

• In Camunda 7.2 bereits enthalten: SOAP und REST

• Fundamental anderer Ansatz als in Zero-Code-Suiten:• Entwickler sollen damit produktiver werden – es geht nicht darum, dass

Fachanwender sich ihre Integration selbst „zusammenklicken“ können.• Aber: Nicht jeder Entwickler ist ein Java-Entwickler• Beispiel: IT-Abteilungen in Großunternehmen, die eine zentrale Workflow-

Infrastruktur für IT-Teams in anderen Bereichen bereitstellen wollen.• Fokus auf API anstatt auf Properties• Konnektoren können in unterschiedlichen Kontexten genutzt werden z.B.

auch in Java Delegates

Eine mächtige Kombination

Konnektoren

Daten

Skripte

Beispiel: „Muss ich zur Arbeit?“

REST

JSON

Javascript

Beispiel: „Muss ich zur Arbeit?“

Start with Process Variable date

(e.g. via unit test)

Invoke REST Service that provides

holidays as JSON

Run Javascript that checks if date is a holiday and puts result as variable

holiday: true|false

Route based on holiday

https://github.com/camunda/camunda-bpm-examples/tree/master/servicetask/rest-service

Live DemoHurra!

Mehr Infos in der Doku

• Konnektoren: http://docs.camunda.org/latest/guides/user-guide/#process-engine-connectors

• Skripte: http://docs.camunda.org/latest/guides/user-guide/#process-engine-scripting

• Daten: http://docs.camunda.org/latest/guides/user-guide/#data-formats-xml-json-other

Camunda BPM 7.2

• Performance / Scalability

• Tasklist

• Connectors / Data / Scripts / Templates

• CMMN

CMMN 1.0

• Im Mai 2014 von der OMG veröffentlicht als BPMN-Pendant für „Cases“

• Gegenstand: „Weniger gut vorhersehbare, wiederholbare Aktivitäten, die stattdessen von dynamischen Umständen ahängen und von Adhoc-Entscheidungen durch Wissensarbeiter in einer bestimmten Situation –einem Fall.“

• Typische Anwendungsbeispiele:• Antrags- und Schadensbearbeitung in einer Versicherung

• Patientenbehandlung und medizinische Diagnosen

• Vergabe von Hypothekendarlehen

• Problemlösungen im Call Center

• Klärungen im Rechnungseingang

More: http://www.omg.org/spec/CMMN/1.0/

Viele Prozesse beinhalten beides

Unstrukturierte AbläufeNicht-Routine

Strukturierte AbläufeRoutine

Camunda kombiniert BPMN mit CMMN

Beispiel: Rechnungseingang

„Rechnung klären“ ist ein Case

CMMN: Ein komplexes Beispiel

Quelle: OMG

„Rechnung klären“ als einfacher Case

CMMN Modelerby Trisotech

„Rechnung klären“ ist ein Case

Human Task, der direkt bei Case-

Anlage erzeugt wird

Abschluss des Tasks führt zum Abschluss

des Case

Meilenstein, der abhängig vom

Ergebnis des Task erreicht wird

Human Task, der erzeugt

werden kann

Process Task, der erzeugt werden kann

Im Prozess wird ein Case gestartet…

…und im Case evtl. ein Prozess

Live DemoHurra!

Alle Kombinationen sind möglich

• Nur BPMN

• BPMN ruft CMMN auf

• CMMN ruft BPMN auf

• Nur CMMN

Sollte ich jetzt CMMN machen?

Sollte ich jetzt CMMN machen?Ja, aber nur

mit Camunda ;-)

Demnächst: Eigene Webinare zu…

• Performance / Skalierbarkeit

• Tasklist

• Konnektoren / Daten / Skripte / Templates

• CMMN

Einladung folgt in Kürze!

Wie kann ich weitermachen?

Open Source Edition

• Download: www.camunda.org• Docs, Tutorials etc.• Forum• Meetings

Enterprise Edition

• Trial: www.camunda.com• Extra Features• Support, Patches etc.• Consulting, Training

Kontakt: +49 30 664 04 09 00 | info@camunda.com

Q&A

Recommended