SlideShare ist ein Scribd-Unternehmen logo
Dreamteam „BPM + Java EE“

bernd.ruecker@camunda.com
Dafür…
Leider heute nicht…




            BPMN 2.0 & Java EE 6 –
            eine Prozessanwendung
               in 5 Stunden Zugfahrt
Bernd Rücker
camunda services GmbH
Eine ganz typische Java EE Anwendung
                                     HTML 5




              JSF                     REST / WS   JAX-RS, JAX-WS, JSF, …




                       Order Bean                 EJB, CDI, JTA, …



         Order

      - customer
                                                  JPA
      - state
      - ...




                 Java EE Container


                           DB
Eine ganz normale Anforderung

               „Wenn Ware nicht lieferbar ist dann soll der
              Kunde angerufen werden um ihm was anderes
                             anzudrehen.

              Das Ganze darf nicht länger als nen Tag dauern
                      – sonst ist der Kunde sauer!“
Ein ganz typischer Lösungsansatz
                                         HTML 5
    Neue Liste
       für
  Sachbearbeiter

               JSF                        REST / WS           JAX-RS, JAX-WS, JSF, …




                         Order Bean                           EJB, CDI, JTA, …
                                          Neue Methode

          Order       Filter auf den
                          Status
       - customer    „nicht lieferbar“
                                                              JPA
       - state
       - ...
                                         EJB 3 Timer
                                                                             …
                                                     Polling-
                                                  Mechanismus
                                                  für Eskalation
                   Java EE Container


                             DB
Also…




        Code 
Wie findet ihr das – im Vergleich?
Prozessautomatisierung mit Process Engine
                          <process id="order" isExecutable="true">
                            <startEvent name="Bestellung eingegangen" />
 Monitoring und             <userTask name="Kunde umberaten" />
   Reporting                <exclusiveGateway name="Umberatung erfolgreich?"
                            ...
                                                                                                    Ausführbares
                                                                                                    Prozessmodell
                    Process Engine



                                                       Messung der
                                                       Durchlaufzeit
Human Workflow
 Management
                       Aufgaben-                                                    Aufgaben-
                                        Service-Call            Service-Call
                       Zuweisung                                                    Zuweisung




      Service
   Orchestration




                   Prozessbeteiligter   IT-System                 IT-System    Prozessbeteiligter
Demo




 https://bitbucket.org/camunda/outer-space-demos/src/master/wjax2012-bestellprozess
fox-platform, z.B. auf JBoss 7.1
                     BPMN 2.0 Standard

                     Java / Java EE Standard

                     camunda fox



                         Application         Application
                              1                   n
                                       ...

     fox-cockpit:
     Monitoring &
    Administration                                         WAR




                             fox platform
                              fox engine




JBoss AS 7.1                    DB (H2)
Merker für mich
camunda fox


                        fox-cockpit        fox-designer

                       fox-platform          fox-cycle
      fox-platform
                        enterprise
                                           fox-modeler
       fox-engine
                       https://github.com/camunda/

              Branch


        Activiti
                                          OSS (Apache License)

                                             Enterprise Edition
Anfangen!

                       fox-cockpit       fox-designer

       fox-platform   fox-platform         fox-cycle
        community      enterprise
                                         fox-modeler
       fox-engine




                             www.camunda.com/fox/



                                              Getting
                       Download
                                              Started


                      Apache License     https://github.com/camunda/
Noch nicht nicht genug?

    Donnerstag 16:30

BPMN 2.0 und Activiti für
   Fortgeschrittene
 (Fehlerbehandlung, TX, EAI/SOA, …)
BPM ist doch
                      Buzzword Bingo!




 Warum macht ihr denn so ein
„Alte Männer Thema“ wie BPM?
Missverständnisse & Fehler




                             WRONG
Missverständnisse & Fehler




                             WRONG
Missverständnisse & Fehler




                             WRONG
Unsere Vision




     BPM + Java
Some code             CDI / Spring
                      (if you want)


@Inject
private ProcessEngine engine;

[…]

Deployment deployment = engine.getRepositoryService()
  .createDeployment()                                        Services to talk
  .addClasspathResource("diagrams/fox-invoice.bpmn")          to the engine
  .deploy();


engine.getRuntimeService().startProcessInstanceByKey("fox-invoice");


List<Task> list = engine.getTaskService().createTaskQuery().list();
HashMap<String, Object> variables = new HashMap<String, Object>();
variables.put("approver", "bernd");
engine.getTaskService().complete(list.get(0).getId(), variables);

                                            Use TX / JTA /
                                                  EJB
                                            (if you want)
Some code              Process XML refers
                        CDI/Spring bean
                          or Java Class


<process ...>
  <serviceTask activiti:delegateExpression="#{svnService}"
               name="PDF in SVN ablegen">


                                            Code is executed when
                                            process instances runs
                                                   through


@Named("svnService")
public class StorePDFDelegate implements JavaDelegate {

 public void execute(DelegateExecution execution) throws Exception {
   String someData = (String) execution.getVariable("someData");
Best of breed
                                           You name it!
                                           Beliebige Komponenten aus dem (Java)
                                           Kosmos.




                                     camunda fox
                                     Prozessautomatisierung,
                                     Monitoring, Operations, …




                                                                 BPMN 2.0
                Java EE 6                                        Prozessmodellierung,
                                                                 fachliche Abstimmung,
                Persistenz (JPA), Transaktionen                  Roundtrip, …
                (JTA, EJB3), Clustering,
                Connectivity (JAX-WS, JAX-RS,
                JAX-B), UI (JSF), …
Denn BPM kann uns wirklich helfen!
Gemeinsame Sprache und iteratives Vorgehen!


                                              Prozesslandschaft



                                                                    Inhalt:         Prozess im Überblick
                                                    Ebene 1         Ziel:           Schnelles Verständnis
                                                 Strategisches      Semantik:       logisch-abstrakt
                                                 Prozessmodell

                                                                              Inhalt:        Operative Abläufe
                                                    Ebene 2                   Ziel:          Abstimmung von Details
                      Fachlich              Operatives Prozessmodell          Semantik:      physisch-konkret
                      (Business)

                      Technisch
                      (IT)                 Ebene 3a                                       Inhalt:       Technische Details
                                                           Ebene 3b
                                         Technisches                                      Ziel:         Umsetzung
                                                           IT-Spezifikation
                                       Prozessmodell                                      Semantik:     physisch-konkret


                                   Mit Process Engine
                                                           Ebene 4b
                                                           Implementierung



                                                           Ohne Process Engine
Ein beispielhafter POC (Versicherung)
                                    Sachbearbeiter




                          ESB
Genehmiger
WJAX 2012: Dreamteam "BPM + Java EE"
Und wir helfen auch gerne…


               Proof Of
               Concept &             Training &
               Kompakt               Coaching
               Workshops

                                     fox, Activiti,
               Beispiel: 5 Tage      BPMN 2.0, …




               Stabilisierte
               Enterprise         Projekt-
               Edition            unterstützung &
                                  Ressourcen,
               Subscription &     Partner
               24x7 Support
Vielen Dank!
camunda services GmbH
 Vielen Dank!                                          Zossener Str. 55-58
                                                       1096 Berlin
                                                           1
                                                       Telefon: +49 30 664 0409-00
                                                       Telefax: +49 30 664 0409-29
                                                       Email: info@camunda.com




                                    Bernd Rücker
                                     Geschäftsführer
                          bernd.ruecker@camunda.com


Dreamteam BPM + Java EE
München, 06.11.2012

                                                       Der Praxis-Blog zu BPM:
                                                       www.bpm-guide.de

Weitere ähnliche Inhalte

PDF
WJAX 2012: Advanced Activiti
PPTX
Wjax integrationsprojekte auf dem weg zur continuous delivery 2011 11-10
PDF
Spring 2.0
PPT
Implementing Enterprise Integration Patterns with Apache Camel
PDF
Spring 2.0
PDF
Leichtgewichtige Architekturen mit Spring, JPA, Maven und Groovy
PDF
20080917 Hernstcampus JBoss Process Virtual Machine - Hibernate des BPM
PDF
High Performance Multi-Server Magento in der Cloud
 
WJAX 2012: Advanced Activiti
Wjax integrationsprojekte auf dem weg zur continuous delivery 2011 11-10
Spring 2.0
Implementing Enterprise Integration Patterns with Apache Camel
Spring 2.0
Leichtgewichtige Architekturen mit Spring, JPA, Maven und Groovy
20080917 Hernstcampus JBoss Process Virtual Machine - Hibernate des BPM
High Performance Multi-Server Magento in der Cloud
 

Andere mochten auch (19)

PDF
JUG Luzern: Open Source BPM mit BPMN 2.0 und Java
PDF
Search Engine Advertising - Wir zeigen wie es funktioniert!
PDF
Affinity Engine - Recommandations personnalisées - Offre Affinity Items
PDF
Affinity Engine - Recommandations personnalisées - Offre Affinity Items
PPT
GtugDakar AppEngine, Gwt
PDF
Economie du développement soutenable
PDF
Recommandations avec Neo4j et le GraphAware Recommendation Engine
PPTX
Smart City - Le rôle stratégique des acteurs publics
PDF
Introduction au cloud computing
PDF
Search Engine Optimization
PDF
LNG FUEL & DUAL FUEL ENGINE
PDF
Network Meeting - Integration von Camunda mit Liferay
PDF
Introduction to Oracle Grid Engine
PDF
Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...
PPTX
Testgetriebene Geschäftsprozessmodellierung
PPTX
Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN
PDF
7 Tipps für erfolgreiches SEA Autor Patrick Palz
PPTX
Hadoop et son écosystème
PDF
Search Engine Optimization Introduction
JUG Luzern: Open Source BPM mit BPMN 2.0 und Java
Search Engine Advertising - Wir zeigen wie es funktioniert!
Affinity Engine - Recommandations personnalisées - Offre Affinity Items
Affinity Engine - Recommandations personnalisées - Offre Affinity Items
GtugDakar AppEngine, Gwt
Economie du développement soutenable
Recommandations avec Neo4j et le GraphAware Recommendation Engine
Smart City - Le rôle stratégique des acteurs publics
Introduction au cloud computing
Search Engine Optimization
LNG FUEL & DUAL FUEL ENGINE
Network Meeting - Integration von Camunda mit Liferay
Introduction to Oracle Grid Engine
Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...
Testgetriebene Geschäftsprozessmodellierung
Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN
7 Tipps für erfolgreiches SEA Autor Patrick Palz
Hadoop et son écosystème
Search Engine Optimization Introduction
Anzeige

Ähnlich wie WJAX 2012: Dreamteam "BPM + Java EE" (20)

PDF
Jax 2012-activiti-und-camel-presentation
PDF
20110119 activiti jughh
PDF
2011 09-09 activiti
PDF
2012 04-20 activiti undjavaee6
PDF
2012 03-30 activiti undjavaee6
PDF
20110203 jug stuttgart
PDF
20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Drools
PDF
20110311 activiti mathema
PDF
2011 05-05 activiti
PDF
20110321 activiti märz
PDF
20110223 activiti
PDF
20110406 activiti mai
PDF
BPM & SOA - Prozesse sind keine Workflows
PDF
PDF
20110406 activiti april
PDF
jBPM & Drools
PDF
Bpmn in der praxis
PDF
Bpmn roundtrip
PDF
20100624 jug saxony_bpel.slideshare
PDF
20070705 JFS BPM mit JBoss jBPM
Jax 2012-activiti-und-camel-presentation
20110119 activiti jughh
2011 09-09 activiti
2012 04-20 activiti undjavaee6
2012 03-30 activiti undjavaee6
20110203 jug stuttgart
20080421 JAX Geschaeftsprozesse und Regeln mit jBPM und Drools
20110311 activiti mathema
2011 05-05 activiti
20110321 activiti märz
20110223 activiti
20110406 activiti mai
BPM & SOA - Prozesse sind keine Workflows
20110406 activiti april
jBPM & Drools
Bpmn in der praxis
Bpmn roundtrip
20100624 jug saxony_bpel.slideshare
20070705 JFS BPM mit JBoss jBPM
Anzeige

Mehr von camunda services GmbH (20)

PPTX
Using Camunda on Kubernetes through Operators
PPTX
Predictive Process Monitoring in Camunda
PPTX
Camunda Product Update – The present and the future of Process Automation
PPTX
Tips on how to build Camunda Run for production
PPTX
Process Driven Customer Interaction
PPTX
Exploring Automation in Government
PDF
The Pulse of Process Automation
PDF
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
PDF
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
PPTX
Extending human workflow preparing people and processes for the digital era w...
PPTX
Camunda BPM 7.13 Webinar
PDF
[Webinar] Camunda Optimize Release 3.0
PDF
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
PDF
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
PDF
Process Automation Forum Zurich, finnova AG Bankware
PDF
Process Automation Forum Munich, Swiss Life
PDF
Process Automation Forum Vienna, A1 & J-IT
PDF
Process Automation Forum Vienna, Raiffeisen
PDF
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
PDF
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
Using Camunda on Kubernetes through Operators
Predictive Process Monitoring in Camunda
Camunda Product Update – The present and the future of Process Automation
Tips on how to build Camunda Run for production
Process Driven Customer Interaction
Exploring Automation in Government
The Pulse of Process Automation
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
Extending human workflow preparing people and processes for the digital era w...
Camunda BPM 7.13 Webinar
[Webinar] Camunda Optimize Release 3.0
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
Process Automation Forum Zurich, finnova AG Bankware
Process Automation Forum Munich, Swiss Life
Process Automation Forum Vienna, A1 & J-IT
Process Automation Forum Vienna, Raiffeisen
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World

WJAX 2012: Dreamteam "BPM + Java EE"

  • 1. Dreamteam „BPM + Java EE“ bernd.ruecker@camunda.com
  • 2. Dafür… Leider heute nicht… BPMN 2.0 & Java EE 6 – eine Prozessanwendung in 5 Stunden Zugfahrt
  • 4. Eine ganz typische Java EE Anwendung HTML 5 JSF REST / WS JAX-RS, JAX-WS, JSF, … Order Bean EJB, CDI, JTA, … Order - customer JPA - state - ... Java EE Container DB
  • 5. Eine ganz normale Anforderung „Wenn Ware nicht lieferbar ist dann soll der Kunde angerufen werden um ihm was anderes anzudrehen. Das Ganze darf nicht länger als nen Tag dauern – sonst ist der Kunde sauer!“
  • 6. Ein ganz typischer Lösungsansatz HTML 5 Neue Liste für Sachbearbeiter JSF REST / WS JAX-RS, JAX-WS, JSF, … Order Bean EJB, CDI, JTA, … Neue Methode Order Filter auf den Status - customer „nicht lieferbar“ JPA - state - ... EJB 3 Timer … Polling- Mechanismus für Eskalation Java EE Container DB
  • 7. Also… Code 
  • 8. Wie findet ihr das – im Vergleich?
  • 9. Prozessautomatisierung mit Process Engine <process id="order" isExecutable="true"> <startEvent name="Bestellung eingegangen" /> Monitoring und <userTask name="Kunde umberaten" /> Reporting <exclusiveGateway name="Umberatung erfolgreich?" ... Ausführbares Prozessmodell Process Engine Messung der Durchlaufzeit Human Workflow Management Aufgaben- Aufgaben- Service-Call Service-Call Zuweisung Zuweisung Service Orchestration Prozessbeteiligter IT-System IT-System Prozessbeteiligter
  • 11. fox-platform, z.B. auf JBoss 7.1 BPMN 2.0 Standard Java / Java EE Standard camunda fox Application Application 1 n ... fox-cockpit: Monitoring & Administration WAR fox platform fox engine JBoss AS 7.1 DB (H2)
  • 13. camunda fox fox-cockpit fox-designer fox-platform fox-cycle fox-platform enterprise fox-modeler fox-engine https://github.com/camunda/ Branch Activiti OSS (Apache License) Enterprise Edition
  • 14. Anfangen! fox-cockpit fox-designer fox-platform fox-platform fox-cycle community enterprise fox-modeler fox-engine www.camunda.com/fox/ Getting Download Started Apache License https://github.com/camunda/
  • 15. Noch nicht nicht genug? Donnerstag 16:30 BPMN 2.0 und Activiti für Fortgeschrittene (Fehlerbehandlung, TX, EAI/SOA, …)
  • 16. BPM ist doch Buzzword Bingo! Warum macht ihr denn so ein „Alte Männer Thema“ wie BPM?
  • 20. Unsere Vision BPM + Java
  • 21. Some code CDI / Spring (if you want) @Inject private ProcessEngine engine; […] Deployment deployment = engine.getRepositoryService() .createDeployment() Services to talk .addClasspathResource("diagrams/fox-invoice.bpmn") to the engine .deploy(); engine.getRuntimeService().startProcessInstanceByKey("fox-invoice"); List<Task> list = engine.getTaskService().createTaskQuery().list(); HashMap<String, Object> variables = new HashMap<String, Object>(); variables.put("approver", "bernd"); engine.getTaskService().complete(list.get(0).getId(), variables); Use TX / JTA / EJB (if you want)
  • 22. Some code Process XML refers CDI/Spring bean or Java Class <process ...> <serviceTask activiti:delegateExpression="#{svnService}" name="PDF in SVN ablegen"> Code is executed when process instances runs through @Named("svnService") public class StorePDFDelegate implements JavaDelegate { public void execute(DelegateExecution execution) throws Exception { String someData = (String) execution.getVariable("someData");
  • 23. Best of breed You name it! Beliebige Komponenten aus dem (Java) Kosmos. camunda fox Prozessautomatisierung, Monitoring, Operations, … BPMN 2.0 Java EE 6 Prozessmodellierung, fachliche Abstimmung, Persistenz (JPA), Transaktionen Roundtrip, … (JTA, EJB3), Clustering, Connectivity (JAX-WS, JAX-RS, JAX-B), UI (JSF), …
  • 24. Denn BPM kann uns wirklich helfen!
  • 25. Gemeinsame Sprache und iteratives Vorgehen! Prozesslandschaft Inhalt: Prozess im Überblick Ebene 1 Ziel: Schnelles Verständnis Strategisches Semantik: logisch-abstrakt Prozessmodell Inhalt: Operative Abläufe Ebene 2 Ziel: Abstimmung von Details Fachlich Operatives Prozessmodell Semantik: physisch-konkret (Business) Technisch (IT) Ebene 3a Inhalt: Technische Details Ebene 3b Technisches Ziel: Umsetzung IT-Spezifikation Prozessmodell Semantik: physisch-konkret Mit Process Engine Ebene 4b Implementierung Ohne Process Engine
  • 26. Ein beispielhafter POC (Versicherung) Sachbearbeiter ESB Genehmiger
  • 28. Und wir helfen auch gerne… Proof Of Concept & Training & Kompakt Coaching Workshops fox, Activiti, Beispiel: 5 Tage BPMN 2.0, … Stabilisierte Enterprise Projekt- Edition unterstützung & Ressourcen, Subscription & Partner 24x7 Support
  • 30. camunda services GmbH Vielen Dank! Zossener Str. 55-58 1096 Berlin 1 Telefon: +49 30 664 0409-00 Telefax: +49 30 664 0409-29 Email: info@camunda.com Bernd Rücker Geschäftsführer bernd.ruecker@camunda.com Dreamteam BPM + Java EE München, 06.11.2012 Der Praxis-Blog zu BPM: www.bpm-guide.de