5.
Die NovaTec Unternehmensgruppe gliedert sich in drei eigenständige operative
Einheiten. Diese sind 100%-Töchter der NovaTec Holding GmbH.
NovaTec Holding GmbH
NovaTec Consulting GmbH
NovaTec Solutions GmbH
NovaTec Products GmbH
Ganzheitliche IT-
Beratung,
Produktvorentwicklung
Lösungen und
Dienstleistungen im
Bereich IT-Strategie
und IT-Management
Produktentwicklung,
Product Lifecycle
Management,
Produktberatung
Berlin
Frankfurt/Main
München
Stuttgart
(Zentrale)
Jeddah
(Saudi-Arabien)
5 23.11.2015 Monitoring und KPIs mit camundaBPM
6.
Unsere Kernkompetenzen
Dienstleistungsportfolio
Unser Anspruch: Tiefes Spezialwissen und eine fundierte Beratung, die nicht nur
kurzfristig Probleme löst. Sondern nachhaltige und strategische Vorteile bietet.
Data Center
Automation
Enterprise
Application
Development
Application
Performance
Management
Agile Methods
Enterprise
Application
Integration
Business
Process
Management
Enterprise
Mobility
6 23.11.2015 Monitoring und KPIs mit camundaBPM
7.
Softwarelösungen für alle Anforderungen
Produktportfolio
Mit unserer langjährigen Themenkompetenz und dem einzigartigen Know-how erfüllen
unsere Produkte die Anforderungen unserer Kunden punktgenau.
Provisioning
Lizenzmanagement
Lasttest
Performanceanalyse
7 23.11.2015 Monitoring und KPIs mit camundaBPM
8.
Damit wir unseren Kunden immer die optimalen Lösungen bieten können, haben wir
mit verschiedenen IT-Unternehmen umfassende Partnerschaften geschlossen.
8 23.11.2015 Monitoring und KPIs mit camundaBPM
9.
Wir führen Kooperationen mit zahlreichen Hochschulen und Bildungspartnern, um
technologisch und methodisch immer auf der Höhe der Zeit zu sein, junge Talente zu
fördern und den technischen Fortschritt aktiv mitzugestalten.
9 23.11.2015 Monitoring und KPIs mit camundaBPM
11.
Der Business Process Management-Zyklus
11
Modellierung
Simulation
Optimierung
Umsetzung
und
Ausführung
Überwachung
Aufnahme der Geschäftsprozesse
(SOLL bzw. IST)
Definition von KPIs
Zuweisung von Ressourcen
Reaktion in Echtzeit
Einflussnahme auf die
Prozessabläufe durch
Anpassung der
Regeln und
Parameter
Kontinuierliche Prozessverbesserung
Einflussnahme auf die Prozessabläufe durch
Anpassung des Modells auf Grund von
Erkenntnissen aus dem laufenden Betrieb
Überwachung der definierten KPIs
Benachrichtigung bei kritischen
Abweichungen
Prüfung von Varianten
Korrektur der identifizierten Schwachstellen
Simulation der Modelle
Prüfung auf Schwachstellen (z.B.
Engpässe, überflüssige Tätigkeiten,
lange Wartezeiten, etc.)
Funktionale und Lasttests
Umsetzung der Prozesse
(idealerweise IT-unterstützt
mit einer Prozesslaufzeit-
umgebung)
Anbindung an die
Umsysteme
Etablierung der
Schnittstellen
23.11.2015 Monitoring und KPIs mit camundaBPM
12.
Ein einfaches Beispiel
Wieviele Prozesse
laufen aktuell?
Wieviele Aufgaben
liegen aktuell an?
Wieviele Prozesse
sind heute
gestartet worden?
Was war die
Durchlaufzeit
meiner Prozesse?
23.11.2015 Monitoring und KPIs mit camundaBPM12
13.
Messpunkte können über intermediate Events auch explizit gemacht werden.
23.11.2015 Monitoring und KPIs mit camundaBPM13
Wieviele Vorgänge
waren bereits
bearbeitet?
Vorteile:
• Explizit sichtbar im Prozess
• Erleichtert die Diskussion mit
den Prozessverantwortlichen
• Leichtere Auswertung / leichtere
Erstellung von Reports
14.
In manchen Szenarien sollen die Messpunkt bzw. Meilensteine auch in einem
externen System (z.B. einem Geschichtsbuch) abgelegt werden.
14
Vorteile:
• Nutzung eines eigenen, dedizierten Datenmodells für die Events
• Ablage der Informationen in einem separaten Datentopf, losgelöst vom Lifecycle der Prozessinstanz
(interessant möglicherweise sowohl für die Sachbarbeiter als auch für die Revision)
• (Noch) leichtere Erstellung von Auswertungen Reports auf Grund der eigenen Datenstruktur
23.11.2015 Monitoring und KPIs mit camundaBPM
15.
Bei der Nutzung einer externen Ablage können auch weitere Systeme angebunden
werden, um übergreifende Aspekte zu überwachen
15 23.11.2015 Monitoring und KPIs mit camundaBPM
Postkorb-
anwendung
Inputmanagement
Werden alle Vorgänge
erfolgreich an das
nächste System
übergeben?
Wie oft werden Aufgaben
an andere Bereiche im
Unternehmen
weitergeleitet?
Fach-
anwendung
Wie oft musste bei der
Bearbeitung ein neuer
Partner/Beteiligter im
System angelegt werden?
16.
Handelt es sich bei der Bearbeitung um eine Fallbearbeitung, so wird das
übergreifende Monitoring noch interessanter…
16 23.11.2015 Monitoring und KPIs mit camundaBPM
Fach-
anwendung
?????????
Auf Grund des weniger strukturierten Ablaufs sind
Auswertungen zum Ablauf umso interessanter:
• Wie lief der Fall ab?
• Gibt es wiederkehrende Muster in der
Bearbeitung?
• Kann ich daraus Erkenntnisse für zukünftige
Fälle ziehen?
17.
17 23.11.2015 Monitoring und KPIs mit camundaBPM
Auf Basis eines Geschichtsbuchs oder ähnlichem lassen sich neben dem klassischen
BI-Reports auch Algorithmen wie das Process Mining anwenden
18.
18 23.11.2015 Monitoring und KPIs mit camundaBPM
Bis hierher ist das alles klassisches BI-Geschäft…
Quelle: Akash Kapoor
http://www.google.de/imgres?imgurl=http%3A%2F%2Felearning.greatlakes.edu.in%2Fpgpba%2Fblog%2Fwp-content%2Fuploads%2F2014%2F09%2Fakash-
kapoor.png&imgrefurl=http%3A%2F%2Felearning.greatlakes.edu.in%2Fpgpba%2Fblog%2Ftransition-from-business-intelligence-to-web-analytics-role-
perspective%2F&h=850&w=1791&tbnid=rXewqHcP8kmZmM%3A&zoom=1&docid=Zaz6NkUS_cMmSM&ei=NhiIVcvWBOj-ywOY-
aWwAQ&tbm=isch&iact=rc&uact=3&dur=4685&page=2&start=39&ndsp=46&ved=0CKgBEK0DMCw
19.
Muss noch schneller und zeitnah ausgewertet werden, so bietet sich eine Complex
Event Processing (CEP) – Architektur an
Quelle: Wikipedia
(https://fr.wikipedia.org/wiki/Traitement_des_%C3%A9v%C3%A9nements_complexes#/media/File:Complex_Event_Processing.jpg)
19 23.11.2015 Monitoring und KPIs mit camundaBPM
20.
Realtime Monitoring von Prozessen mit Complex Event Processing
20 23.11.2015 Monitoring und KPIs mit camundaBPM
???
Stehen die beiden
Ereignisse im richtigen
Verhätlnis zueinander?
CEP-Plattform
JBoss WSO2
21.
… wer noch mehr wissen will, kann es auch mit Predictive Analytics versuchen.
21
Beispiel:
Wieviel mehr Verträge würde ich abschließen, wenn eine Gesundheitsprüfung
schneller durchgeführt würde?
Die Wahrscheinlichkeit für die Policierung (Y = 4) eines Vertrages in
Abhängigkeit der Durchlaufzeit in der Risikoprüfung und des Alters
des Versicherungsnehmers kann nun durch folgende Formel
berechnet werden:
23.11.2015 Monitoring und KPIs mit camundaBPM
23.
Und nun zur Technik…[camundaBPM]
Modellierung
Simulation
Optimierung
Umsetzung
und
Ausführung
Überwachung
Aufnahme der Geschäftsprozesse
(SOLL bzw. IST)
Definition von KPIs
Zuweisung von Ressourcen
Überwachung
Bietet mir camunda Dashboards für meine KPIs?
Gibt es Alerting-Möglichkeiten?
Wie kann ich auf Auffälligkeiten reagieren?
Modellierung
Kann ich KPIs in camunda modellieren?
Kann ich modellieren, welche Informationen
gespeichert werden sollen und welche nicht?
Überwachung der definierten KPIs
Benachrichtigung bei kritischen
Abweichungen
Prüfung von Varianten
Korrektur der identifizierten Schwachstellen
Simulation der Modelle
Prüfung auf Schwachstellen (z.B.
Engpässe, überflüssige Tätigkeiten,
lange Wartezeiten, etc.)
Funktionale und Lasttests
Umsetzung der Prozesse
(idealerweise IT-unterstützt mit
einer Prozesslaufzeit-
umgebung)
Anbindung an die Umsysteme
Etablierung der Schnittstellen
Umsetzung
Welche historischen Daten
speichert camunda für mich?
Wie kann ich externe
Datentöpfe anbinden?
23 23.11.2015 Monitoring und KPIs mit camundaBPM
24.
Umsetzung – die camundaBPM History-Architektur
24
• camundaBPM emittiert per-default einen Eventstrom für durchgeführte Aktionen (u.A. Start, End) im Kontext typischer
Artefakte wie Tasks, Aktivitäten, Prozessinstanzen oder Cases
• Standardmäßig wird dieser in die History Tabellen geschrieben, getrennt von Laufzeit Tabellen
• Das Detaillevel der History ist konfigurierbar, es kann ein eigenes Level definiert werden
• Es kann ein eigenes History-Backend verwendet werden
History Level Umfang
NONE Keine Events
ACTIVITY Start, Update, End-Events von Aktivitäten, d.h.
Prozesse, Tasks, Cases etc.
AUDIT Zusätzlich für Variablen, nur neueste Version
FULL Variablen-Historisierung, Taskoperation, Historische
Jobs, Incidents
AUTO Für mehrere Engines auf einer Datenbank
CUSTOM Gemäß Anforderungen, bspw. auf Prozessdefinitionen
oder bestimmte Aktivitäten oder Events begrenzt
23.11.2015 Monitoring und KPIs mit camundaBPM
25.
Das Datenbankschema der Camunda History Tabellen
25
Abgeschlossene
Usertasks
Abgeschlossene
Aktivitäten
Durchgeführte
Nutzeroperationen
Abgeschlossene
Entscheidungen
23.11.2015 Monitoring und KPIs mit camundaBPM
Abgeschlossene
Prozessinstanzen
Parameter, die in
Entscheidungen
benötigt wurden
26.
Anpassungsmöglichkeiten des History-Backends
26
Erstellt History Events, befüllt diese mit Informationen der
Runtime-Artefakte und emittiert die Ereignisse
- Erhält nur Ereignisse entsprechend Detail-Level
Verarbeitet Events. Standardmäßig erfolgt die
Speicherung in den History Tabelle
Eigene Implementierung möglich
Eigene Implementierung möglich
23.11.2015 Monitoring und KPIs mit camundaBPM
27.
Modellierung von KPIs - BPMN
27
explizit
implizit Die History-Tabellen werden
automatisch gefüllt (gemäß
Level)
KPIs können auf Basis von
automatisch abgespeicherten
Informationen aggregiert
werden
Die History-Tabellen werden
automatisch gefüllt (gemäß
Level)
Intermediate Events werden
durchlaufen und hinterlassen
dedizierte Einträge in der
Aktivitäts-Tabelle
KPIs können auf Basis von
dedizierten Einträgen ermittelt
werden
Woher weiß ich, dass dieser
Pfad durchlaufen wurde?
23.11.2015 Monitoring und KPIs mit camundaBPM
28.
Modellierung von KPIs – CMMN
28 23.11.2015 Monitoring und KPIs mit camundaBPM
• CMMN besitzt explizite „Milestones“ um
erreichbare (fachliche) Zustände zu modellieren
Milestones sind explizit in History aufzufinden
Lebenszyklus Milestone
29.
Der Lebenszyklus als implizite Informationsquelle – Task Lifecycle BPMN
30 23.11.2015 Monitoring und KPIs mit camundaBPM
30.
Explizite Implementierung von Event-Logging in Prozessen / Cases
31
Mit Hilfe des Standard Task/Execution-Listener Konzeptes
Implementierung einer KPI/Messpunkt-Logik in notify-Methode
Annotieren der entsprechenden Tasks o. Aktivitäten im Modell
Kann durch eigenen Parse-Listener automatisiert im Hintergrund stattfinden
Einhängen in CDI-Event Bus mit Hilfe der „CDI Event Bridge“
Baut auf Publish/Subscribe Mechanismus von CDI auf
Definition von Events, Emittieren mit fire(), Observieren mit @Observes
camundaBPM bietet Filtermöglichkeiten
@BusinessProcessDefinition, @StartActivity, @EndActivity, @AssignTask…
public void startArchiveDocuments(@Observes @BusinessProcessDefinition(“documentRouting")
@StartActivity(“archive documents") BusinessProcessEvent evt) { // handle event }
public void endArchiveDocuments(@Observes @BusinessProcessDefinition(“documentRouting")
@EndActivity(“archive documents") BusinessProcessEvent evt) { // handle event }
Beispiel
23.11.2015 Monitoring und KPIs mit camundaBPM
32.
Überwachung von KPIs – camunda BPM
33
Definition eigener Queries
Zugriff auf HistoryService
via Java- und REST-API
Plugin-Schnittstelle
Zugriff von extern möglich:
- Nagios
- ELK-Stack
- …
23.11.2015 Monitoring und KPIs mit camundaBPM
33.
Zugriff via Java-API oder REST-API
34
camundaBPM stellt HistoryService für Abfragen an History-Tabellen bereit (Fluent-API):
camundaBPM stellt REST-Schnittstelle für Abfragen an History-Tabellen bereit:
historyService.createHistoricProcessInstanceQuery().finished()
.processDefinitionId(„inputRouting").orderByProcessInstanceDuration().desc().listPage(0, 100);
historyService.createHistoricDetailQuery().variableUpdates().processInstanceId("123")
.orderByVariableName().asc().list()
historyService.createUserOperationLogQuery().successLog().list();
Beispiel
23.11.2015 Monitoring und KPIs mit camundaBPM
34.
Erstellen eines Cockpit- (oder Tasklist-) Plugins
35
Einbindung in Cockpit via Java
ServiceLoader Facilities
Ermöglicht Einbindung neuer
Funktionalität ohne Modifikation des
Source-Codes
Vorgabe definierter Service-
Interfaces und Klassen für
Implementierung
Bspw. Ressourcen
Standard-Bestandteile vom Cockpit
sind als Plugin umgesetzt
Positionierung eines Plugins wird
über Plugin-Points definiert
Camunda Plugin-Store ermöglicht
das individuelle Zusammenstellen
der Plugins zu einem Cockpit
http://camunda.org/plugins/
Cockpit-Architektur
23.11.2015 Monitoring und KPIs mit camundaBPM
35.
Definieren eigener Abfragen an die Datenbank [Kontext: Cockpit-/Tasklist-Plugin]
36
SQL Definition wird in einem XML abgelegt
Das Mapping der Datenelemente erfolgt dann
mittels eines DTOs
MyBatis hat weitere Möglichkeiten die SQL
Abfragen zu manipulieren
Einfache Logik-Konstrukte wie if/else möglich
(bspw. für Nutzung datenbankspezifischer
Funktionen)
Auslagern von wiederverwendbaren
Bestandteilen
23.11.2015 Monitoring und KPIs mit camundaBPM
36.
Das Camunda Statistics Plugin – Community Extension der NovaTec
37
Cockpit-Plugin, welches Informationen
aus History-Datenbank visualisiert
Durchlaufzeiten von Prozessinstanzen,
Aktivitäten, Cases
Start/Ende von Prozessinstanzen /
Aktivitäten
23.11.2015 Monitoring und KPIs mit camundaBPM
37.
Camunda Statistics Plugin – Verwendete Technologien
38
Angular JS
• Services für Querschnittsfunktion [Singleton], bspw. Zugriff auf Ressourcen
• Controller für Verknüpfung von Frontend mit Services, bspw. Verknüpfen von Daten mit Plots
• Directives um HTML spezifisch anzureichern, auf Attribut oder Element-Ebene <plot></plot>
• Shipped with camundaBPM
D3.js, nvd3
• JavaScript Visualisierungsframework auf Basis von HTML, SVG und CSS (Open Source)
• Kombination mit Angular führt zu Anwendung auf Basis von Directives
Twitter Bootstrap, angular-ui.bootstrap
• CSS Framework bereitgestellt durch Twitter
• Shipped with camundaBPM (kombiniert mit Angular auf Basis von Directives)
Camunda REST API & Custom Queries
• Custom Queries für direkte Aggregation auf Datenbank-Ebene (AVG, MIN, MAX)
• REST-API für restliche Daten, Aggregation mit JavaScript
HTML 5 Local Storage
• Speichern von Plugin-Konfiguration
23.11.2015 Monitoring und KPIs mit camundaBPM
39.
Camunda Statistics Plugin – Roadmap / geplante Features
40
Blogbeitrag über aktuelle Features:
• http://blog.novatec-gmbh.de/camunda-cockpit-plugin-part-1/
• http://blog.novatec-gmbh.de/camunda-cockpit-plugin-part-2/
• http://blog.novatec-gmbh.de/camunda-cockpit-plugin-part-3/
Performance Optimierung
Case KPIs
Visualisierung von Fachdaten
Generische / Manuelle Auswertung von KPIs
To be continued…
Camunda Community Contributions sind Open Source und stehen unter der Apache License
…feel free to contribute ;)
23.11.2015 Monitoring und KPIs mit camundaBPM
40.
Ehemaliges „Heatmap“ Community Plugin ist in EE Edition 7.4 enthalten
23.11.2015 Monitoring und KPIs mit camundaBPM41
41.
Exkurs: Integration in ein Complex-Event-Processing System [WSO2 CEP]
42
CEP Dashboard
JMS, HTTP, SOAP, Kafka
bspw. via eigenem
HistoryEventHandler
camundaBPM
JMS, HTTP, SOAP, Kafka
…
Data Warehouse
Elasticsearch
„Realtime“
Erste Aggregation
…
Fachliche Historisierung
23.11.2015 Monitoring und KPIs mit camundaBPM
42.
Zusammenfassung: Monitoring und KPIs mit camundaBPM
43
• camundaBPM bietet out-of-the-box bereits eine umfangreiche, anpassbare und erweiterbare
Historisierung:
• Out-of-the-box History-Datenbank mit definierten Leveln
• Eigene History-Eventhandler bzw. eigene History-Level möglich
• Explizites Modellieren oder Implementieren von Event-Logging
• Implizites Event-Logging durch Plugins
• Bereitstellung von Schnittstellen für Abfrage und Präsentation
• HistoryService-API
• Plugin-Mechanismus für Tasklist oder Cockpit
• REST-API
23.11.2015 Monitoring und KPIs mit camundaBPM
43.
VIELEN DANK FÜR EURE AUFMERKSAMKEIT
WWW.NOVATEC-GMBH.DE
HOLGER HAGEN, NOVATEC CONSULTING GMBH
ERIC KLIEME, NOVATEC CONSULTUNG GMBH
Kundenlogo bitte
hier platzieren
Los recortes son una forma práctica de recopilar diapositivas importantes para volver a ellas más tarde. Ahora puedes personalizar el nombre de un tablero de recortes para guardar tus recortes.
Crear un tablero de recortes
Compartir esta SlideShare
¿Odia los anuncios?
Consiga SlideShare sin anuncios
Acceda a millones de presentaciones, documentos, libros electrónicos, audiolibros, revistas y mucho más. Todos ellos sin anuncios.
Oferta especial para lectores de SlideShare
Solo para ti: Prueba exclusiva de 60 días con acceso a la mayor biblioteca digital del mundo.
La familia SlideShare crece. Disfruta de acceso a millones de libros electrónicos, audiolibros, revistas y mucho más de Scribd.
Parece que tiene un bloqueador de anuncios ejecutándose. Poniendo SlideShare en la lista blanca de su bloqueador de anuncios, está apoyando a nuestra comunidad de creadores de contenidos.
¿Odia los anuncios?
Hemos actualizado nuestra política de privacidad.
Hemos actualizado su política de privacidad para cumplir con las cambiantes normativas de privacidad internacionales y para ofrecerle información sobre las limitadas formas en las que utilizamos sus datos.
Puede leer los detalles a continuación. Al aceptar, usted acepta la política de privacidad actualizada.