SlideShare ist ein Scribd-Unternehmen logo
1 von 55
Downloaden Sie, um offline zu lesen
BPM beyond Web Services




                           +

www.mwea.de   Kai Wähner
Kai Wähner


                                         Main Tasks
                             Evaluation of Technologies and Products
                                    Requirements Engineering
                               Enterprise Architecture Management
                                 Business Process Management
                           Architecture and Development of Applications
                                 Planning and Introduction of SOA
                                Integration of Legacy Applications
                                        Cloud Computing

              Consulting
                                            Contact
              Developing          Email: kai.waehner@mwea.de
               Speaking          Blog: www.kai-waehner.de/blog
               Coaching               Twitter: @KaiWaehner
                Writing          Social Networks: Xing, LinkedIn


www.mwea.de   Kai Wähner                                 16.05.2012    Seite 2
What is the Key Message?




www.mwea.de   Kai Wähner    16.05.2012   Seite 3
Key Messages




 BPM should be used for optimizing business processes!




www.mwea.de   Kai Wähner                      16.05.2012   Seite 4
Key Messages




 BPM should be used for optimizing business processes!
 BPM should NOT be used for systems integration!



www.mwea.de   Kai Wähner                      16.05.2012   Seite 5
Key Messages




 BPM should be used for optimizing business processes!
 BPM should NOT be used for systems integration!
 Activiti and Apache Camel are a perfect combination!

www.mwea.de   Kai Wähner                       16.05.2012   Seite 6
Agenda



      1)  Business Process Management (BPM)

      2)  Activiti

      3)  Apache Camel

      4)  Combination of Activiti and Apache Camel




www.mwea.de    Kai Wähner                            16.05.2012   Seite 7
Agenda



      1)  Business Process Management (BPM)

      2)  Activiti

      3)  Apache Camel

      4)  Combination of Activiti and Apache Camel




www.mwea.de    Kai Wähner                            16.05.2012   Seite 8
What is Business Process Management (BPM)?




    BPM attempts to improve processes continuously.
    It can therefore be described as a "process
    optimization process.“
                                              Wikipedia




www.mwea.de   Kai Wähner                      16.05.2012   Seite 9
Why BPM?

                                  increase efficiency
                                     better quality
      Business-IT-Alignment
                                     reduce costs
                              enable new business models




www.mwea.de   Kai Wähner                  16.05.2012    Seite 10
How to do BPM?




www.mwea.de   Kai Wähner   16.05.2012   Seite 11
Standards




                            jPDL
        BPEL                          BPMN


                           BPM          XPDL
WF-XML
                                   ARIS EPC
                    BPEL4People
www.mwea.de   Kai Wähner                16.05.2012   Seite 12
Standards




                            jPDL
        BPEL                          BPMN


                           BPM          XPDL
WF-XML
                                   ARIS EPC
                    BPEL4People
www.mwea.de   Kai Wähner                16.05.2012   Seite 13
BPMN



 Business Process Model and Notation (BPMN) is a graphical
 representation for specifying business processes in a business process
 model.
                                                                  Wikipedia




www.mwea.de   Kai Wähner                                    16.05.2012   Seite 14
BPMN 2.0




 • BPMN is a standard notation for designing business processes
       (versus: UML is a standard modeling language best suited for designing and implementing software)


 • not just flow charts! sufficient restrictions / constraints => executable!

 • standardized XML format

 • orchestration and choreography

 • extension points => add specific needs without breaking interoperability

 • optional mapping of a BPMN subset to BPEL
       (restricted to block-structured flows without cycles)



www.mwea.de       Kai Wähner                                                                 16.05.2012    Seite 15
BPMN 2.0




www.mwea.de   Kai Wähner   16.05.2012   Seite 16
BPMN 2.0




              20-80 rule
www.mwea.de   Kai Wähner   16.05.2012   Seite 17
When to use BPM?



 •  long-running stateful workflows
 •  frequently changing processes
 •  human interaction




www.mwea.de   Kai Wähner              16.05.2012   Seite 18
The Four Myths of BPM Projects




                1) Business analysts will create executable process models

                2) Business analysts can create executable process models

                3) Business analysts want to create executable process models

                4) IT wants business analysts to create executable process models

                      http://www.activevos.com/blog/soa/the-four-myths-of-bpm-projects-what-it-project-teams-need-to-know/2011/01/18/


www.mwea.de   Kai Wähner                                                                                                                16.05.2012   Seite 19
Agenda



      1)  Business Process Management (BPM)

      2)  Activiti

      3)  Apache Camel

      4)  Combination of Activiti and Apache Camel




www.mwea.de    Kai Wähner                            16.05.2012   Seite 20
Alternatives for BPM




                                        BPM Suite
                               BPM
     No Tool
                            Framework
                                                                    Complexity of
                                                                    Orchestration
   Low                                              High




www.mwea.de    Kai Wähner                              16.05.2012        Seite 21
Alternatives for BPM




                                                     BPM Suite
                               BPM
     No Tool
                            Framework
                                                                                  Complexity of
                                                                                  Orchestration
   Low                                                            High




                             Activiti vs. JBoss jBPM vs. Bonita vs. ProcessMaker



www.mwea.de    Kai Wähner                                            16.05.2012        Seite 22
What is Activiti?


   •  open source (Apache License)
   •  BPMN 2.0 process engine
   •  lightweight
   •  easy to use
   •  Java API
   •  developer-focused
   •  embeddable




www.mwea.de   Kai Wähner             16.05.2012   Seite 23
Tool Stack




       Activiti Modeler         Activiti Designer



                      Process Engine

     camunda fox style           Activiti Explorer


www.mwea.de   Kai Wähner                    16.05.2012   Seite 24
How does Activiti work?




 •  BPMN 2.0 process engine
 •  state machine with one active state
 •  execution progresses via transitions
 •  most BPMN 2.0 elements are implemented as a state
 •  states are connected with leaving and arriving transitions (called sequence flows)
 •  every state (i.e. its corresponding BPMN 2.0 element) can have a piece of logic attached
       (executed when the process instance enters the state)


www.mwea.de    Kai Wähner                                                         16.05.2012   Seite 25
Actviti Engine API


        Services
        RuntimeService
        TaskService
        FormService
        HistoryService
        IdentityService
                            Service Tasks (BPMN Standard)
        ManagementService   Web Service Task
        RepositoryService   Script Task (e.g. Groovy or JavaScript)
                            User Task
                            Business Rule Task

                            Service Tasks (Activiti Extensions)
                            Java Tasks
                            Spring Service Task
                            ... more
www.mwea.de   Kai Wähner                                16.05.2012    Seite 26
Code Example (BPMN Process)



              <process id="bookorder" name="Order book">
                 <startEvent id="startevent1" name="Start"/>
                 <sequenceFlow id="sequenceflow1" name="Validate order"
                               sourceRef="startevent1" targetRef="scripttask1"/>
                 <scriptTask id="scripttask1"
                          name="Validate order“ scriptFormat="groovy">
                    <script>out:println "validating order for isbn " + isbn;</script>
                 </scriptTask>
                  <sequenceFlow id="sequenceflow2" name="Ending process"
                               sourceRef="usertask1" targetRef="endevent1"/>
                 <endEvent id="endevent1" name="End"/>
               </process>




www.mwea.de       Kai Wähner                                                            16.05.2012   Seite 27
Code Example (Activiti Java API)


              ProcessEngine processEngine = ProcessEngineConfiguration
                        .createStandaloneInMemProcessEngineConfiguration()
                        .buildProcessEngine();
                  RuntimeService runtimeService =
                        processEngine.getRuntimeService();
                  RepositoryService repositoryService =
                        processEngine.getRepositoryService();
                  repositoryService.createDeployment()
                        .addClasspathResource("bookorder.simple.bpmn20.xml")
                        .deploy();
                  ProcessInstance processInstance =
                  runtimeService.startProcessInstanceByKey(
                        "simplebookorder");
                  assertNotNull(processInstance.getId());
                  System.out.println("id " + processInstance.getId() + " " +
              processInstance.getProcessDefinitionId());


www.mwea.de      Kai Wähner                                                    16.05.2012   Seite 28
Use Case


Start Event                        Service Task                  End Event


                   Script Task                    User Task




                       Automatic      Automatic     Manual




www.mwea.de   Kai Wähner                                      16.05.2012   Seite 29
Live Demo




                           Activiti in Action
www.mwea.de   Kai Wähner                        16.05.2012   Seite 30
Agenda



      1)  Business Process Management (BPM)

      2)  Activiti

      3)  Apache Camel

      4)  Combination of Activiti and Apache Camel




www.mwea.de    Kai Wähner                            16.05.2012   Seite 31
Apache Camel




www.mwea.de   Kai Wähner   16.05.2012   Seite 32
Apache Camel




                           Come on, guys! We are at




www.mwea.de   Kai Wähner                              16.05.2012   Seite 33
Alternatives for Systems Integration




                                           Enterprise Service Bus
                            Integration-            (ESB)
     No Tool
                            Framework
                                                                                  Complexity
                                                                                 of Integration
   Low                                                          High




www.mwea.de    Kai Wähner                                           16.05.2012        Seite 34
Alternatives for Systems Integration




                                                                               Enterprise Service Bus
                               Integration-                                             (ESB)
     No Tool
                               Framework
                                                                                                                                              Complexity
                                                                                                                                             of Integration
   Low                                                                                                                  High




                            Apache Camel vs. Spring Integration vs. Mule ESB
               http://www.kai-waehner.de/blog/2012/01/10/spoilt-for-choice-which-integration-framework-to-use-spring-integration-mule-esb-or-apache-camel




www.mwea.de    Kai Wähner                                                                                                      16.05.2012           Seite 35
Why Apache Camel?




                           •  Standardized Modeling
                           •  Efficient Realization
                           •  Developer-focused
                           •  Automatic Testing
                           •  Many Components
                           •  Several DSLs
                           •  Awesome Community
www.mwea.de   Kai Wähner                     16.05.2012   Seite 36
Agenda



      1)  Business Process Management (BPM)

      2)  Activiti

      3)  Apache Camel

      4)  Combination of Activiti and Apache Camel




www.mwea.de    Kai Wähner                            16.05.2012   Seite 37
Apache Camel + Activiti




www.mwea.de   Kai Wähner   16.05.2012   Seite 38
BPMN Integration




                 Script Task    Service Task




                     Groovy                 Java
                   JavaScript         SOAP Web Service
                      etc.

                                            Everything
                                       (from Cobol to Ruby)
www.mwea.de   Kai Wähner                                      16.05.2012   Seite 39
Reinventing the Wheel ...




www.mwea.de   Kai Wähner     16.05.2012   Seite 40
Spaghetti Solutions




www.mwea.de   Kai Wähner   16.05.2012   Seite 41
Separation of Concerns




www.mwea.de   Kai Wähner   16.05.2012   Seite 42
Overlappings?


                       Both can realize processes. Both can integrate services.




www.mwea.de   Kai Wähner                                                16.05.2012   Seite 43
Overlappings?


                       Both can realize processes. Both can integrate services.




•  Support for long running stateful processes
•  Human workflow integration




www.mwea.de   Kai Wähner                                                16.05.2012   Seite 44
Overlappings?


                       Both can realize processes. Both can integrate services.




•  Support for long running stateful processes
•  Human workflow integration



                                             •  Connectivity / Adaptors to connect to external
                                                 systems using a variety of different protocols 
                                             •  Predefined EIP for message routing


                                                                        http://www.pleus.net/blog/?p=1028


www.mwea.de   Kai Wähner                                                       16.05.2012        Seite 45
Activiti + Apache Camel




                                            +
    Both ...

              •    ... are lightweight
              •    ... are open source
              •    ... are developer-focused
              •    ... offer combination out-of-the-box

www.mwea.de         Kai Wähner                            16.05.2012   Seite 46
Connecting BPMN, Activiti and Camel


      BPMN - Java Service Task


                    <serviceTask id="myServiceTask"
                              activiti:delegateExpression="${camelBehaviour}" />
                    <sequenceFlow sourceRef="myServiceTask" targetRef="myUserTask" />
                                                                                    BPMN Process Instance



                 Spring Bean


                  <bean id="camelBehaviour" class="org.activiti.camel.CamelBehaviour">
                       <constructor-arg index="0">
                             <list>
                                    <bean class="org.activiti.camel.SimpleContextProvider">
                                         <constructor-arg index="0" value="activitiCamelProcess" />
                                         <constructor-arg index="1" ref="camelContext" />
                                    </bean>
                             </list>
                       </constructor-arg>
                  </bean>

                                                           CamelContext

www.mwea.de      Kai Wähner                                                             16.05.2012    Seite 47
Camel Route using Activiti Component




          // Producer => Call Activiti process from Camel
          from("direct:start")
               .to("activiti:myProcess");


          // Consumer => Get called from Activiti process
          from("activiti:myProcess:myServiceTask")
              .log(LoggingLevel.INFO, "Received message on service task ${property.var1}")
              .setProperty("var2").constant("world")
              .setBody().properties();




www.mwea.de      Kai Wähner                                                         16.05.2012   Seite 48
Live Demo




                           Activiti and Apache Camel combined ...
www.mwea.de   Kai Wähner                                16.05.2012   Seite 49
Did you get the Key Message?




www.mwea.de   Kai Wähner        16.05.2012   Seite 50
Key Messages




 BPM should be used for optimizing business processes!
 BPM should NOT be used for systems integration!
 Activiti and Apache Camel are a perfect combination!

www.mwea.de   Kai Wähner                       16.05.2012   Seite 51
Did you get the Key Message?




www.mwea.de   Kai Wähner        16.05.2012   Seite 52
Whet your appetite?




www.mwea.de   Kai Wähner   16.05.2012   Seite 53
Become a Part of the Open Source Community




www.mwea.de   Kai Wähner                      16.05.2012   Seite 54
Thank you for your Attention. Any Questions?



                                +               =   BPM beyond Web Services




          Kai Wähner

              MaibornWolff et al: www.mwea.de
              Email: kai.waehner@mwea.de
              Twitter: @KaiWaehner
              Blog: www.kai-waehner.de/blog




www.mwea.de        Kai Wähner

Weitere ähnliche Inhalte

Was ist angesagt?

Build & Deploy Scalable Cloud Applications in Record Time
Build & Deploy Scalable Cloud Applications in Record TimeBuild & Deploy Scalable Cloud Applications in Record Time
Build & Deploy Scalable Cloud Applications in Record TimeRightScale
 
FaaS Meets Java EE: Developing Cloud Native Applications at Speed
FaaS Meets Java EE: Developing Cloud Native Applications at SpeedFaaS Meets Java EE: Developing Cloud Native Applications at Speed
FaaS Meets Java EE: Developing Cloud Native Applications at SpeedChris Bailey
 
OracleDeveloperMeetup - London 19-12-17
OracleDeveloperMeetup - London 19-12-17OracleDeveloperMeetup - London 19-12-17
OracleDeveloperMeetup - London 19-12-17Phil Wilkins
 
Integration patterns and practices for cloud and mobile computing
Integration patterns and practices for cloud and mobile computingIntegration patterns and practices for cloud and mobile computing
Integration patterns and practices for cloud and mobile computingSHAKIL AKHTAR
 
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...Phil Wilkins
 
IBM WebSphere Application Foundation Sessions at IBM InterConnect 2015
IBM WebSphere Application Foundation Sessions at IBM InterConnect 2015IBM WebSphere Application Foundation Sessions at IBM InterConnect 2015
IBM WebSphere Application Foundation Sessions at IBM InterConnect 2015ibmwebspheresoftware
 
Placement of BPM runtime components in an SOA environment
Placement of BPM runtime components in an SOA environmentPlacement of BPM runtime components in an SOA environment
Placement of BPM runtime components in an SOA environmentKim Clark
 
How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...
How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...
How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...Kai Wähner
 
UKOUG Journey To The Cloud - March 2017
UKOUG Journey To The Cloud - March 2017UKOUG Journey To The Cloud - March 2017
UKOUG Journey To The Cloud - March 2017Phil Wilkins
 
MuCon 2015 - Microservices in Integration Architecture
MuCon 2015 - Microservices in Integration ArchitectureMuCon 2015 - Microservices in Integration Architecture
MuCon 2015 - Microservices in Integration ArchitectureKim Clark
 
XConf Coimbatore 2016 - Microservices Demystified
XConf Coimbatore 2016 - Microservices DemystifiedXConf Coimbatore 2016 - Microservices Demystified
XConf Coimbatore 2016 - Microservices DemystifiedThoughtworks
 
Oracle integration cloud service (ICS) best practices learned from the field ...
Oracle integration cloud service (ICS) best practices learned from the field ...Oracle integration cloud service (ICS) best practices learned from the field ...
Oracle integration cloud service (ICS) best practices learned from the field ...Phil Wilkins
 
API Platform Cloud Service best practice - OOW17
API Platform Cloud Service best practice - OOW17API Platform Cloud Service best practice - OOW17
API Platform Cloud Service best practice - OOW17Phil Wilkins
 
AWS DevDay Vienna - Automating building blocks choices you will face with con...
AWS DevDay Vienna - Automating building blocks choices you will face with con...AWS DevDay Vienna - Automating building blocks choices you will face with con...
AWS DevDay Vienna - Automating building blocks choices you will face with con...Cobus Bernard
 
Modern Enterprise integration Strategies
Modern Enterprise integration StrategiesModern Enterprise integration Strategies
Modern Enterprise integration StrategiesJesus Rodriguez
 
01 oracle application integration overview
01 oracle application integration overview01 oracle application integration overview
01 oracle application integration overviewnksolanki
 
Differentiating between web APIs, SOA, & integration …and why it matters
Differentiating between web APIs, SOA, & integration…and why it mattersDifferentiating between web APIs, SOA, & integration…and why it matters
Differentiating between web APIs, SOA, & integration …and why it mattersKim Clark
 
Integrating cloud with existing IBM Systems
Integrating cloud with existing IBM SystemsIntegrating cloud with existing IBM Systems
Integrating cloud with existing IBM SystemsBizTalk360
 
Secrets of Custom API Policies on the Oracle API Platform
Secrets of Custom API Policies on the Oracle API PlatformSecrets of Custom API Policies on the Oracle API Platform
Secrets of Custom API Policies on the Oracle API PlatformPhil Wilkins
 

Was ist angesagt? (20)

Build & Deploy Scalable Cloud Applications in Record Time
Build & Deploy Scalable Cloud Applications in Record TimeBuild & Deploy Scalable Cloud Applications in Record Time
Build & Deploy Scalable Cloud Applications in Record Time
 
FaaS Meets Java EE: Developing Cloud Native Applications at Speed
FaaS Meets Java EE: Developing Cloud Native Applications at SpeedFaaS Meets Java EE: Developing Cloud Native Applications at Speed
FaaS Meets Java EE: Developing Cloud Native Applications at Speed
 
OracleDeveloperMeetup - London 19-12-17
OracleDeveloperMeetup - London 19-12-17OracleDeveloperMeetup - London 19-12-17
OracleDeveloperMeetup - London 19-12-17
 
JavaOne 2015 Keynote Presentation
JavaOne 2015 Keynote PresentationJavaOne 2015 Keynote Presentation
JavaOne 2015 Keynote Presentation
 
Integration patterns and practices for cloud and mobile computing
Integration patterns and practices for cloud and mobile computingIntegration patterns and practices for cloud and mobile computing
Integration patterns and practices for cloud and mobile computing
 
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...
 
IBM WebSphere Application Foundation Sessions at IBM InterConnect 2015
IBM WebSphere Application Foundation Sessions at IBM InterConnect 2015IBM WebSphere Application Foundation Sessions at IBM InterConnect 2015
IBM WebSphere Application Foundation Sessions at IBM InterConnect 2015
 
Placement of BPM runtime components in an SOA environment
Placement of BPM runtime components in an SOA environmentPlacement of BPM runtime components in an SOA environment
Placement of BPM runtime components in an SOA environment
 
How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...
How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...
How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...
 
UKOUG Journey To The Cloud - March 2017
UKOUG Journey To The Cloud - March 2017UKOUG Journey To The Cloud - March 2017
UKOUG Journey To The Cloud - March 2017
 
MuCon 2015 - Microservices in Integration Architecture
MuCon 2015 - Microservices in Integration ArchitectureMuCon 2015 - Microservices in Integration Architecture
MuCon 2015 - Microservices in Integration Architecture
 
XConf Coimbatore 2016 - Microservices Demystified
XConf Coimbatore 2016 - Microservices DemystifiedXConf Coimbatore 2016 - Microservices Demystified
XConf Coimbatore 2016 - Microservices Demystified
 
Oracle integration cloud service (ICS) best practices learned from the field ...
Oracle integration cloud service (ICS) best practices learned from the field ...Oracle integration cloud service (ICS) best practices learned from the field ...
Oracle integration cloud service (ICS) best practices learned from the field ...
 
API Platform Cloud Service best practice - OOW17
API Platform Cloud Service best practice - OOW17API Platform Cloud Service best practice - OOW17
API Platform Cloud Service best practice - OOW17
 
AWS DevDay Vienna - Automating building blocks choices you will face with con...
AWS DevDay Vienna - Automating building blocks choices you will face with con...AWS DevDay Vienna - Automating building blocks choices you will face with con...
AWS DevDay Vienna - Automating building blocks choices you will face with con...
 
Modern Enterprise integration Strategies
Modern Enterprise integration StrategiesModern Enterprise integration Strategies
Modern Enterprise integration Strategies
 
01 oracle application integration overview
01 oracle application integration overview01 oracle application integration overview
01 oracle application integration overview
 
Differentiating between web APIs, SOA, & integration …and why it matters
Differentiating between web APIs, SOA, & integration…and why it mattersDifferentiating between web APIs, SOA, & integration…and why it matters
Differentiating between web APIs, SOA, & integration …and why it matters
 
Integrating cloud with existing IBM Systems
Integrating cloud with existing IBM SystemsIntegrating cloud with existing IBM Systems
Integrating cloud with existing IBM Systems
 
Secrets of Custom API Policies on the Oracle API Platform
Secrets of Custom API Policies on the Oracle API PlatformSecrets of Custom API Policies on the Oracle API Platform
Secrets of Custom API Policies on the Oracle API Platform
 

Andere mochten auch

WSO2Con ASIA 2016: Creating Microservices with WSO2 Microservices Framework f...
WSO2Con ASIA 2016: Creating Microservices with WSO2 Microservices Framework f...WSO2Con ASIA 2016: Creating Microservices with WSO2 Microservices Framework f...
WSO2Con ASIA 2016: Creating Microservices with WSO2 Microservices Framework f...WSO2
 
Jax 2012-activiti-und-camel-presentation
Jax 2012-activiti-und-camel-presentationJax 2012-activiti-und-camel-presentation
Jax 2012-activiti-und-camel-presentationcamunda services GmbH
 
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...Kai Wähner
 
Developing Microservices with Apache Camel
Developing Microservices with Apache CamelDeveloping Microservices with Apache Camel
Developing Microservices with Apache CamelClaus Ibsen
 
Introduction to ESB Architecture and Message Flow
Introduction to ESB Architecture and Message Flow Introduction to ESB Architecture and Message Flow
Introduction to ESB Architecture and Message Flow WSO2
 
IBM Websphere MQ Basic
IBM Websphere MQ BasicIBM Websphere MQ Basic
IBM Websphere MQ BasicPRASAD BHATKAR
 
Microservices Best Practices
Microservices Best Practices Microservices Best Practices
Microservices Best Practices MuleSoft
 

Andere mochten auch (8)

WSO2Con ASIA 2016: Creating Microservices with WSO2 Microservices Framework f...
WSO2Con ASIA 2016: Creating Microservices with WSO2 Microservices Framework f...WSO2Con ASIA 2016: Creating Microservices with WSO2 Microservices Framework f...
WSO2Con ASIA 2016: Creating Microservices with WSO2 Microservices Framework f...
 
Jax 2012-activiti-und-camel-presentation
Jax 2012-activiti-und-camel-presentationJax 2012-activiti-und-camel-presentation
Jax 2012-activiti-und-camel-presentation
 
camunda BPM + Apache Camel
camunda BPM + Apache Camelcamunda BPM + Apache Camel
camunda BPM + Apache Camel
 
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
 
Developing Microservices with Apache Camel
Developing Microservices with Apache CamelDeveloping Microservices with Apache Camel
Developing Microservices with Apache Camel
 
Introduction to ESB Architecture and Message Flow
Introduction to ESB Architecture and Message Flow Introduction to ESB Architecture and Message Flow
Introduction to ESB Architecture and Message Flow
 
IBM Websphere MQ Basic
IBM Websphere MQ BasicIBM Websphere MQ Basic
IBM Websphere MQ Basic
 
Microservices Best Practices
Microservices Best Practices Microservices Best Practices
Microservices Best Practices
 

Ähnlich wie CamelOne 2012 - BPM beyond Web Services

浅谈SAP NetWeaver BPM架构
浅谈SAP NetWeaver BPM架构浅谈SAP NetWeaver BPM架构
浅谈SAP NetWeaver BPM架构BPC流程社区
 
Nextgen Bpm End to End
Nextgen Bpm End to EndNextgen Bpm End to End
Nextgen Bpm End to EndTechnoPeers
 
Creetion
CreetionCreetion
Creetioncr0003
 
Presentatie Creetion
Presentatie CreetionPresentatie Creetion
Presentatie CreetionBert Deterd
 
intro-to-bpm-2003-1223624702954442-8.ppt
intro-to-bpm-2003-1223624702954442-8.pptintro-to-bpm-2003-1223624702954442-8.ppt
intro-to-bpm-2003-1223624702954442-8.pptGanesh Shevade
 
Bpm the battle 6 juni visie presentaties
Bpm the battle 6 juni visie presentatiesBpm the battle 6 juni visie presentaties
Bpm the battle 6 juni visie presentatiesrichard_van_tilborg
 
Introduction To Bpm Technology
Introduction To Bpm TechnologyIntroduction To Bpm Technology
Introduction To Bpm Technologymyalya
 
Respond quickly to changing business needs–Business Process Management (BPM)
Respond quickly to changing business needs–Business Process Management (BPM)Respond quickly to changing business needs–Business Process Management (BPM)
Respond quickly to changing business needs–Business Process Management (BPM)Carly Snodgrass
 
BPM with Bonita Open Solution @AlpesJUG
BPM with Bonita Open Solution @AlpesJUGBPM with Bonita Open Solution @AlpesJUG
BPM with Bonita Open Solution @AlpesJUGBonitasoft
 
Dynamic BPM
Dynamic BPMDynamic BPM
Dynamic BPMSSA KPI
 
Oracle soa and e2.0 partner community forum bpm léon smiers share
Oracle soa and e2.0 partner community forum bpm léon smiers shareOracle soa and e2.0 partner community forum bpm léon smiers share
Oracle soa and e2.0 partner community forum bpm léon smiers shareLeon Smiers
 
Business Process Managmenet & Intelligent BPM Suites
Business Process Managmenet & Intelligent BPM SuitesBusiness Process Managmenet & Intelligent BPM Suites
Business Process Managmenet & Intelligent BPM Suitesshyjusr
 
Enterprise Soa And Bpm
Enterprise Soa And BpmEnterprise Soa And Bpm
Enterprise Soa And BpmTerry Cho
 
Current bpm trends tendencias en bpm
Current bpm trends   tendencias en bpmCurrent bpm trends   tendencias en bpm
Current bpm trends tendencias en bpmDenis Gagné
 
Introduction to Business Process Management Suite
Introduction to Business Process Management SuiteIntroduction to Business Process Management Suite
Introduction to Business Process Management SuiteAppian
 
Oracle SOA and BPM
Oracle SOA and BPMOracle SOA and BPM
Oracle SOA and BPMkumar gaurav
 

Ähnlich wie CamelOne 2012 - BPM beyond Web Services (20)

20100223 bpmn
20100223 bpmn20100223 bpmn
20100223 bpmn
 
浅谈SAP NetWeaver BPM架构
浅谈SAP NetWeaver BPM架构浅谈SAP NetWeaver BPM架构
浅谈SAP NetWeaver BPM架构
 
Nextgen Bpm End to End
Nextgen Bpm End to EndNextgen Bpm End to End
Nextgen Bpm End to End
 
Creetion
CreetionCreetion
Creetion
 
Creetion
CreetionCreetion
Creetion
 
Creetion
CreetionCreetion
Creetion
 
Presentatie Creetion
Presentatie CreetionPresentatie Creetion
Presentatie Creetion
 
intro-to-bpm-2003-1223624702954442-8.ppt
intro-to-bpm-2003-1223624702954442-8.pptintro-to-bpm-2003-1223624702954442-8.ppt
intro-to-bpm-2003-1223624702954442-8.ppt
 
Introduction to BPM
Introduction to BPMIntroduction to BPM
Introduction to BPM
 
Bpm the battle 6 juni visie presentaties
Bpm the battle 6 juni visie presentatiesBpm the battle 6 juni visie presentaties
Bpm the battle 6 juni visie presentaties
 
Introduction To Bpm Technology
Introduction To Bpm TechnologyIntroduction To Bpm Technology
Introduction To Bpm Technology
 
Respond quickly to changing business needs–Business Process Management (BPM)
Respond quickly to changing business needs–Business Process Management (BPM)Respond quickly to changing business needs–Business Process Management (BPM)
Respond quickly to changing business needs–Business Process Management (BPM)
 
BPM with Bonita Open Solution @AlpesJUG
BPM with Bonita Open Solution @AlpesJUGBPM with Bonita Open Solution @AlpesJUG
BPM with Bonita Open Solution @AlpesJUG
 
Dynamic BPM
Dynamic BPMDynamic BPM
Dynamic BPM
 
Oracle soa and e2.0 partner community forum bpm léon smiers share
Oracle soa and e2.0 partner community forum bpm léon smiers shareOracle soa and e2.0 partner community forum bpm léon smiers share
Oracle soa and e2.0 partner community forum bpm léon smiers share
 
Business Process Managmenet & Intelligent BPM Suites
Business Process Managmenet & Intelligent BPM SuitesBusiness Process Managmenet & Intelligent BPM Suites
Business Process Managmenet & Intelligent BPM Suites
 
Enterprise Soa And Bpm
Enterprise Soa And BpmEnterprise Soa And Bpm
Enterprise Soa And Bpm
 
Current bpm trends tendencias en bpm
Current bpm trends   tendencias en bpmCurrent bpm trends   tendencias en bpm
Current bpm trends tendencias en bpm
 
Introduction to Business Process Management Suite
Introduction to Business Process Management SuiteIntroduction to Business Process Management Suite
Introduction to Business Process Management Suite
 
Oracle SOA and BPM
Oracle SOA and BPMOracle SOA and BPM
Oracle SOA and BPM
 

Mehr von Kai Wähner

Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)Kai Wähner
 
When NOT to use Apache Kafka?
When NOT to use Apache Kafka?When NOT to use Apache Kafka?
When NOT to use Apache Kafka?Kai Wähner
 
Kafka for Live Commerce to Transform the Retail and Shopping Metaverse
Kafka for Live Commerce to Transform the Retail and Shopping MetaverseKafka for Live Commerce to Transform the Retail and Shopping Metaverse
Kafka for Live Commerce to Transform the Retail and Shopping MetaverseKai Wähner
 
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache KafkaThe Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache KafkaKai Wähner
 
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Apache Kafka vs. Cloud-native iPaaS Integration Platform MiddlewareApache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Apache Kafka vs. Cloud-native iPaaS Integration Platform MiddlewareKai Wähner
 
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?Kai Wähner
 
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureServerless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureKai Wähner
 
Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...
Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...
Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...Kai Wähner
 
Data Streaming with Apache Kafka in the Defence and Cybersecurity Industry
Data Streaming with Apache Kafka in the Defence and Cybersecurity IndustryData Streaming with Apache Kafka in the Defence and Cybersecurity Industry
Data Streaming with Apache Kafka in the Defence and Cybersecurity IndustryKai Wähner
 
Apache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryApache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryKai Wähner
 
Apache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryApache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryKai Wähner
 
Apache Kafka for Real-time Supply Chain in the Food and Retail Industry
Apache Kafka for Real-time Supply Chainin the Food and Retail IndustryApache Kafka for Real-time Supply Chainin the Food and Retail Industry
Apache Kafka for Real-time Supply Chain in the Food and Retail IndustryKai Wähner
 
Kafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid CloudKafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid CloudKai Wähner
 
Apache Kafka Landscape for Automotive and Manufacturing
Apache Kafka Landscape for Automotive and ManufacturingApache Kafka Landscape for Automotive and Manufacturing
Apache Kafka Landscape for Automotive and ManufacturingKai Wähner
 
Kappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology ComparisonKappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology ComparisonKai Wähner
 
The Top 5 Apache Kafka Use Cases and Architectures in 2022
The Top 5 Apache Kafka Use Cases and Architectures in 2022The Top 5 Apache Kafka Use Cases and Architectures in 2022
The Top 5 Apache Kafka Use Cases and Architectures in 2022Kai Wähner
 
Event Streaming CTO Roundtable for Cloud-native Kafka Architectures
Event Streaming CTO Roundtable for Cloud-native Kafka ArchitecturesEvent Streaming CTO Roundtable for Cloud-native Kafka Architectures
Event Streaming CTO Roundtable for Cloud-native Kafka ArchitecturesKai Wähner
 
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...Kai Wähner
 
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...Kai Wähner
 
Apache Kafka in the Transportation and Logistics
Apache Kafka in the Transportation and LogisticsApache Kafka in the Transportation and Logistics
Apache Kafka in the Transportation and LogisticsKai Wähner
 

Mehr von Kai Wähner (20)

Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
 
When NOT to use Apache Kafka?
When NOT to use Apache Kafka?When NOT to use Apache Kafka?
When NOT to use Apache Kafka?
 
Kafka for Live Commerce to Transform the Retail and Shopping Metaverse
Kafka for Live Commerce to Transform the Retail and Shopping MetaverseKafka for Live Commerce to Transform the Retail and Shopping Metaverse
Kafka for Live Commerce to Transform the Retail and Shopping Metaverse
 
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache KafkaThe Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
 
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Apache Kafka vs. Cloud-native iPaaS Integration Platform MiddlewareApache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
 
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
 
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureServerless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
 
Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...
Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...
Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...
 
Data Streaming with Apache Kafka in the Defence and Cybersecurity Industry
Data Streaming with Apache Kafka in the Defence and Cybersecurity IndustryData Streaming with Apache Kafka in the Defence and Cybersecurity Industry
Data Streaming with Apache Kafka in the Defence and Cybersecurity Industry
 
Apache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryApache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare Industry
 
Apache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryApache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare Industry
 
Apache Kafka for Real-time Supply Chain in the Food and Retail Industry
Apache Kafka for Real-time Supply Chainin the Food and Retail IndustryApache Kafka for Real-time Supply Chainin the Food and Retail Industry
Apache Kafka for Real-time Supply Chain in the Food and Retail Industry
 
Kafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid CloudKafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid Cloud
 
Apache Kafka Landscape for Automotive and Manufacturing
Apache Kafka Landscape for Automotive and ManufacturingApache Kafka Landscape for Automotive and Manufacturing
Apache Kafka Landscape for Automotive and Manufacturing
 
Kappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology ComparisonKappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology Comparison
 
The Top 5 Apache Kafka Use Cases and Architectures in 2022
The Top 5 Apache Kafka Use Cases and Architectures in 2022The Top 5 Apache Kafka Use Cases and Architectures in 2022
The Top 5 Apache Kafka Use Cases and Architectures in 2022
 
Event Streaming CTO Roundtable for Cloud-native Kafka Architectures
Event Streaming CTO Roundtable for Cloud-native Kafka ArchitecturesEvent Streaming CTO Roundtable for Cloud-native Kafka Architectures
Event Streaming CTO Roundtable for Cloud-native Kafka Architectures
 
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
 
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
 
Apache Kafka in the Transportation and Logistics
Apache Kafka in the Transportation and LogisticsApache Kafka in the Transportation and Logistics
Apache Kafka in the Transportation and Logistics
 

Kürzlich hochgeladen

NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6DianaGray10
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 

Kürzlich hochgeladen (20)

NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 

CamelOne 2012 - BPM beyond Web Services

  • 1. BPM beyond Web Services + www.mwea.de Kai Wähner
  • 2. Kai Wähner Main Tasks Evaluation of Technologies and Products Requirements Engineering Enterprise Architecture Management Business Process Management Architecture and Development of Applications Planning and Introduction of SOA Integration of Legacy Applications Cloud Computing Consulting Contact Developing Email: kai.waehner@mwea.de Speaking Blog: www.kai-waehner.de/blog Coaching Twitter: @KaiWaehner Writing Social Networks: Xing, LinkedIn www.mwea.de Kai Wähner 16.05.2012 Seite 2
  • 3. What is the Key Message? www.mwea.de Kai Wähner 16.05.2012 Seite 3
  • 4. Key Messages BPM should be used for optimizing business processes! www.mwea.de Kai Wähner 16.05.2012 Seite 4
  • 5. Key Messages BPM should be used for optimizing business processes! BPM should NOT be used for systems integration! www.mwea.de Kai Wähner 16.05.2012 Seite 5
  • 6. Key Messages BPM should be used for optimizing business processes! BPM should NOT be used for systems integration! Activiti and Apache Camel are a perfect combination! www.mwea.de Kai Wähner 16.05.2012 Seite 6
  • 7. Agenda 1)  Business Process Management (BPM) 2)  Activiti 3)  Apache Camel 4)  Combination of Activiti and Apache Camel www.mwea.de Kai Wähner 16.05.2012 Seite 7
  • 8. Agenda 1)  Business Process Management (BPM) 2)  Activiti 3)  Apache Camel 4)  Combination of Activiti and Apache Camel www.mwea.de Kai Wähner 16.05.2012 Seite 8
  • 9. What is Business Process Management (BPM)? BPM attempts to improve processes continuously. It can therefore be described as a "process optimization process.“ Wikipedia www.mwea.de Kai Wähner 16.05.2012 Seite 9
  • 10. Why BPM? increase efficiency better quality Business-IT-Alignment reduce costs enable new business models www.mwea.de Kai Wähner 16.05.2012 Seite 10
  • 11. How to do BPM? www.mwea.de Kai Wähner 16.05.2012 Seite 11
  • 12. Standards jPDL BPEL BPMN BPM XPDL WF-XML ARIS EPC BPEL4People www.mwea.de Kai Wähner 16.05.2012 Seite 12
  • 13. Standards jPDL BPEL BPMN BPM XPDL WF-XML ARIS EPC BPEL4People www.mwea.de Kai Wähner 16.05.2012 Seite 13
  • 14. BPMN Business Process Model and Notation (BPMN) is a graphical representation for specifying business processes in a business process model. Wikipedia www.mwea.de Kai Wähner 16.05.2012 Seite 14
  • 15. BPMN 2.0 • BPMN is a standard notation for designing business processes (versus: UML is a standard modeling language best suited for designing and implementing software) • not just flow charts! sufficient restrictions / constraints => executable! • standardized XML format • orchestration and choreography • extension points => add specific needs without breaking interoperability • optional mapping of a BPMN subset to BPEL (restricted to block-structured flows without cycles) www.mwea.de Kai Wähner 16.05.2012 Seite 15
  • 16. BPMN 2.0 www.mwea.de Kai Wähner 16.05.2012 Seite 16
  • 17. BPMN 2.0 20-80 rule www.mwea.de Kai Wähner 16.05.2012 Seite 17
  • 18. When to use BPM? •  long-running stateful workflows •  frequently changing processes •  human interaction www.mwea.de Kai Wähner 16.05.2012 Seite 18
  • 19. The Four Myths of BPM Projects 1) Business analysts will create executable process models 2) Business analysts can create executable process models 3) Business analysts want to create executable process models 4) IT wants business analysts to create executable process models http://www.activevos.com/blog/soa/the-four-myths-of-bpm-projects-what-it-project-teams-need-to-know/2011/01/18/ www.mwea.de Kai Wähner 16.05.2012 Seite 19
  • 20. Agenda 1)  Business Process Management (BPM) 2)  Activiti 3)  Apache Camel 4)  Combination of Activiti and Apache Camel www.mwea.de Kai Wähner 16.05.2012 Seite 20
  • 21. Alternatives for BPM BPM Suite BPM No Tool Framework Complexity of Orchestration Low High www.mwea.de Kai Wähner 16.05.2012 Seite 21
  • 22. Alternatives for BPM BPM Suite BPM No Tool Framework Complexity of Orchestration Low High Activiti vs. JBoss jBPM vs. Bonita vs. ProcessMaker www.mwea.de Kai Wähner 16.05.2012 Seite 22
  • 23. What is Activiti? •  open source (Apache License) •  BPMN 2.0 process engine •  lightweight •  easy to use •  Java API •  developer-focused •  embeddable www.mwea.de Kai Wähner 16.05.2012 Seite 23
  • 24. Tool Stack Activiti Modeler Activiti Designer Process Engine camunda fox style Activiti Explorer www.mwea.de Kai Wähner 16.05.2012 Seite 24
  • 25. How does Activiti work? •  BPMN 2.0 process engine •  state machine with one active state •  execution progresses via transitions •  most BPMN 2.0 elements are implemented as a state •  states are connected with leaving and arriving transitions (called sequence flows) •  every state (i.e. its corresponding BPMN 2.0 element) can have a piece of logic attached (executed when the process instance enters the state) www.mwea.de Kai Wähner 16.05.2012 Seite 25
  • 26. Actviti Engine API Services RuntimeService TaskService FormService HistoryService IdentityService Service Tasks (BPMN Standard) ManagementService Web Service Task RepositoryService Script Task (e.g. Groovy or JavaScript) User Task Business Rule Task Service Tasks (Activiti Extensions) Java Tasks Spring Service Task ... more www.mwea.de Kai Wähner 16.05.2012 Seite 26
  • 27. Code Example (BPMN Process) <process id="bookorder" name="Order book"> <startEvent id="startevent1" name="Start"/> <sequenceFlow id="sequenceflow1" name="Validate order" sourceRef="startevent1" targetRef="scripttask1"/> <scriptTask id="scripttask1" name="Validate order“ scriptFormat="groovy"> <script>out:println "validating order for isbn " + isbn;</script> </scriptTask> <sequenceFlow id="sequenceflow2" name="Ending process" sourceRef="usertask1" targetRef="endevent1"/> <endEvent id="endevent1" name="End"/> </process> www.mwea.de Kai Wähner 16.05.2012 Seite 27
  • 28. Code Example (Activiti Java API) ProcessEngine processEngine = ProcessEngineConfiguration .createStandaloneInMemProcessEngineConfiguration() .buildProcessEngine(); RuntimeService runtimeService = processEngine.getRuntimeService(); RepositoryService repositoryService = processEngine.getRepositoryService(); repositoryService.createDeployment() .addClasspathResource("bookorder.simple.bpmn20.xml") .deploy(); ProcessInstance processInstance = runtimeService.startProcessInstanceByKey( "simplebookorder"); assertNotNull(processInstance.getId()); System.out.println("id " + processInstance.getId() + " " + processInstance.getProcessDefinitionId()); www.mwea.de Kai Wähner 16.05.2012 Seite 28
  • 29. Use Case Start Event Service Task End Event Script Task User Task Automatic Automatic Manual www.mwea.de Kai Wähner 16.05.2012 Seite 29
  • 30. Live Demo Activiti in Action www.mwea.de Kai Wähner 16.05.2012 Seite 30
  • 31. Agenda 1)  Business Process Management (BPM) 2)  Activiti 3)  Apache Camel 4)  Combination of Activiti and Apache Camel www.mwea.de Kai Wähner 16.05.2012 Seite 31
  • 32. Apache Camel www.mwea.de Kai Wähner 16.05.2012 Seite 32
  • 33. Apache Camel Come on, guys! We are at www.mwea.de Kai Wähner 16.05.2012 Seite 33
  • 34. Alternatives for Systems Integration Enterprise Service Bus Integration- (ESB) No Tool Framework Complexity of Integration Low High www.mwea.de Kai Wähner 16.05.2012 Seite 34
  • 35. Alternatives for Systems Integration Enterprise Service Bus Integration- (ESB) No Tool Framework Complexity of Integration Low High Apache Camel vs. Spring Integration vs. Mule ESB http://www.kai-waehner.de/blog/2012/01/10/spoilt-for-choice-which-integration-framework-to-use-spring-integration-mule-esb-or-apache-camel www.mwea.de Kai Wähner 16.05.2012 Seite 35
  • 36. Why Apache Camel? •  Standardized Modeling •  Efficient Realization •  Developer-focused •  Automatic Testing •  Many Components •  Several DSLs •  Awesome Community www.mwea.de Kai Wähner 16.05.2012 Seite 36
  • 37. Agenda 1)  Business Process Management (BPM) 2)  Activiti 3)  Apache Camel 4)  Combination of Activiti and Apache Camel www.mwea.de Kai Wähner 16.05.2012 Seite 37
  • 38. Apache Camel + Activiti www.mwea.de Kai Wähner 16.05.2012 Seite 38
  • 39. BPMN Integration Script Task Service Task Groovy Java JavaScript SOAP Web Service etc. Everything (from Cobol to Ruby) www.mwea.de Kai Wähner 16.05.2012 Seite 39
  • 40. Reinventing the Wheel ... www.mwea.de Kai Wähner 16.05.2012 Seite 40
  • 41. Spaghetti Solutions www.mwea.de Kai Wähner 16.05.2012 Seite 41
  • 42. Separation of Concerns www.mwea.de Kai Wähner 16.05.2012 Seite 42
  • 43. Overlappings? Both can realize processes. Both can integrate services. www.mwea.de Kai Wähner 16.05.2012 Seite 43
  • 44. Overlappings? Both can realize processes. Both can integrate services. •  Support for long running stateful processes •  Human workflow integration www.mwea.de Kai Wähner 16.05.2012 Seite 44
  • 45. Overlappings? Both can realize processes. Both can integrate services. •  Support for long running stateful processes •  Human workflow integration •  Connectivity / Adaptors to connect to external systems using a variety of different protocols  •  Predefined EIP for message routing http://www.pleus.net/blog/?p=1028 www.mwea.de Kai Wähner 16.05.2012 Seite 45
  • 46. Activiti + Apache Camel + Both ... •  ... are lightweight •  ... are open source •  ... are developer-focused •  ... offer combination out-of-the-box www.mwea.de Kai Wähner 16.05.2012 Seite 46
  • 47. Connecting BPMN, Activiti and Camel BPMN - Java Service Task <serviceTask id="myServiceTask" activiti:delegateExpression="${camelBehaviour}" /> <sequenceFlow sourceRef="myServiceTask" targetRef="myUserTask" /> BPMN Process Instance Spring Bean <bean id="camelBehaviour" class="org.activiti.camel.CamelBehaviour"> <constructor-arg index="0"> <list> <bean class="org.activiti.camel.SimpleContextProvider"> <constructor-arg index="0" value="activitiCamelProcess" /> <constructor-arg index="1" ref="camelContext" /> </bean> </list> </constructor-arg> </bean> CamelContext www.mwea.de Kai Wähner 16.05.2012 Seite 47
  • 48. Camel Route using Activiti Component // Producer => Call Activiti process from Camel from("direct:start") .to("activiti:myProcess"); // Consumer => Get called from Activiti process from("activiti:myProcess:myServiceTask") .log(LoggingLevel.INFO, "Received message on service task ${property.var1}") .setProperty("var2").constant("world") .setBody().properties(); www.mwea.de Kai Wähner 16.05.2012 Seite 48
  • 49. Live Demo Activiti and Apache Camel combined ... www.mwea.de Kai Wähner 16.05.2012 Seite 49
  • 50. Did you get the Key Message? www.mwea.de Kai Wähner 16.05.2012 Seite 50
  • 51. Key Messages BPM should be used for optimizing business processes! BPM should NOT be used for systems integration! Activiti and Apache Camel are a perfect combination! www.mwea.de Kai Wähner 16.05.2012 Seite 51
  • 52. Did you get the Key Message? www.mwea.de Kai Wähner 16.05.2012 Seite 52
  • 53. Whet your appetite? www.mwea.de Kai Wähner 16.05.2012 Seite 53
  • 54. Become a Part of the Open Source Community www.mwea.de Kai Wähner 16.05.2012 Seite 54
  • 55. Thank you for your Attention. Any Questions? + = BPM beyond Web Services Kai Wähner MaibornWolff et al: www.mwea.de Email: kai.waehner@mwea.de Twitter: @KaiWaehner Blog: www.kai-waehner.de/blog www.mwea.de Kai Wähner