SlideShare une entreprise Scribd logo
1  sur  36
jBPM 5.2 - JBoss Business Process Management
Agenda

         
             Overview of BPM.
         
             BPMN 2.0 Notation
         
             What is jBPM?
         
             Installation of JBPM
         
             Eclipse based editor
         
             Guvnor (webased editor) and jBPM console
         
             JBPM API - KnowledgeBase, knowldegesession, knowledgeBuilder, other terms.
         
             Constructs used in jBPM - Script task, User task, Service Task, Rule Task, Startevent, End
             Event, Gateways(converge and diverge), timer events
         
             JBPM 5.2 Examples




Page 2                                                                                              Xebia copyright
Overview of BPM

          
              What is BPM?
          
              BPM stands for Business Process Management
          
              The term business process management typically refers to a set of activities enterprises
              can employ to automate and optimize business processes in a manner adaptable to
              dynamically changing environments
          
              BPM in system engineering is the activity of representing processes of an enterprise, so
              that the processes can be analyzed and improved.
          
              BPM is typically performed by business analysts and managers who are seeking to improve
              process efficiency and quality.




Page 3                                                                                               Xebia copyright
Overview of BPM continue...

           – BPM is embodied in three distinct practices:
           
               Process design: The task of designing existing and new processes
           
               Process execution: The execution of an automated sequence of related events involving
               software processes and/or human activities
           
               Process monitoring: Observance and auditing of the state of individual processes so that
               the statistics and performance of these processes can be recorded, reported, and optimized
           
               Some available BPM languages are:

                – BPMN 2.0

                – Business Process Execution Language (BPEL)

                – Web Services Choreography Description Language (WS-CDL)

                – XML Process Definition Language (XPDL)




Page 4                                                                                             Xebia copyright
BPMN 2.0 Notation



          
              Business Process Modeling Notation (BPMN) is a standard.
          
              BPMN is a graphical modeling language, with symbols, relationships and attributes for the
              purpose of process modeling.
          
              Easier to understand and learn.




Page 5                                                                                              Xebia copyright
BPMN 2.0 continue...




Page 6                          Xebia copyright
BPMN 2.0 Notation continue...




Page 7                                   Xebia copyright
What is JBPM?

          
              JBPM is a flexible business process management (BPM) suite.
          
              It makes the bridge between business analysts and developers.
          
              Provide features for both

                – Business Analyst

                – Developers




Page 8                                                                        Xebia copyright
JBPM Features


         
             Embeddable, lightweight Java process engine, supporting native BPMN 2.0 execution.
         
             BPMN 2.0 process modeling in Eclipse (developers) and the web (business users).
         
             Process collaboration, monitoring and management through the Guvnor repository and the
             web console.
         
             Human interaction using an independent WS-HT task service.
         
             Tight, powerful integration with business rules and event processing




Page 9                                                                                            Xebia copyright
Overview




Page 10              Xebia copyright
Core Engine


          
               Responsible for execution of the processes.

          
               Main features of core engine

              – Light weight (can be deployed on almost any device that supports a simple Java Runtime
                Environment.

              – Ability to migrate running process instances to a new version of their process definition

              – Pluggable persistence with a default JPA implementation.




Page 11                                                                                                     Xebia copyright
Installation of JBPM

          – Prerequisites:

          
              Java JDK 1.5+

          
              Ant 1.7+

          – Location for JBPM installer

          
              There are two versions, a full installer which is already contains a lot of the dependencies
              that are necessary during the installation and a minimal installer which is only contains the
              installer and will download all dependencies at the time of installation

          
              http://sourceforge.net/projects/jbpm/files/jBPM%205/

          
              jBPM-{version}-installer-full.zip




Page 12                                                                                                 Xebia copyright
Installation of JBPM continue...

          – Installation Process : The easiest way to get installed is to simply run the installation script.
              Go to the install folder and run :

          
              ant install demo

          – This will download following in lib directory.

          
              Download JBoss AS
          
              Download Eclipse
          
              Install Drools Guvnor into JBoss AS
          
              Install Oryx Designer into JBoss AS
          
              Install the jBPM gwt-console into JBoss AS
          
              Install the jBPM Eclipse plugin
          
              Install the Drools Eclipse plugin




Page 13                                                                                                     Xebia copyright
Installation of JBPM continue...

          – After download all the artifacts, we need to start the demo.

          
              ant start.demo

          – This will start

          
               H2 database
          
               JBoss AS
          
               Eclipse
          
               Human Task Service




Page 14                                                                    Xebia copyright
Installation of JBPM continue...


          – Test the installation
          
              Go to http://localhost:8080/jbpm-console/app.html for Jbpm console

          
              Got to http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/Guvnor.jsp for
              Guvnor repository




Page 15                                                                                            Xebia copyright
Eclipse Editor

          
              The Eclipse editor is a plugin to the Eclipse IDE and allows you to integrate your business
              processes in your development environment.

          
              Targeted towards developers.

          
              Graphical editor for creating your business processes.

          
              Advanced testing and debugging capabilities.

          
              Major Features :

              – Integration with the knowledge repository.
              – Graphical debugging, to see all the running processes.
              – Plugging in your own domain specific nodes.




Page 16                                                                                                Xebia copyright
Web-based designer

          
              Allows you to model your business processes in a web-based environment.

          
              Targeted towards more business users.

          
              Graphical editor for viewing and editing your business processes (using drag and drop).




Page 17                                                                                                 Xebia copyright
Guvnor

          
              A repository service to store your business processes and related artifacts.

          
              A web-based user interface to manage your business processes

              – Targeted towards business users.
              – Supporting the visualization of your processes.

          
              Collaboration features to have multiple actors.




Page 18                                                                                      Xebia copyright
jBPM Console



          
               Business processes can be managed through a web console. It is targeted towards
               business users and its main features are:

              – Process instance management: the ability to start new process instances, get a list of
                running process instances, visually inspect the state of a specific process instances, etc.

              – Human task management: being able to get a list of all your current tasks (either assigned
                to you or that you might be able to claim), completing tasks on your task list (using
                customizable task forms), etc.

              – Reporting: get an overview of the state of your application and/or system using dynamically
                generated (customizable) reports, that give you an overview of your key performance
                indicators (KPIs).




Page 19                                                                                                  Xebia copyright
Knowledge Base API




Page 20                        Xebia copyright
The jBPM API

          
               Knowledge Base

              – First requirement to have to cickstart the process.
              – Should include all the process definitions.
              – Creating a knowledge base.

          
               KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder()

          
               kbuilder.add (ResourceFactory.newClassPathResource ("MyProcess.bpmn"),
               ResourceType.BPMN2)

          
               KnowledgeBase kbase = kbuilder.newKnowledgeBase();




Page 21                                                                                    Xebia copyright
Session



          
              After loading your knowledgebase, you should create the session to interact with the
              engine.

          
              Session can be used to start new processes, signal events, etc.

          
              The following code snippet shows how to create a session:

          
              Stateful Knowledge Session ksession = kbase.newStatefulKnowledge Session();

          
              Process Instance process Instance = ksession.startProcess ("com.sample.MyProcess");




Page 22                                                                                              Xebia copyright
Creating a process



          
              A process can be created in

              – Eclipse Editor (Demo)
              – Web based Editor (Demo)




Page 23                                     Xebia copyright
Activities and Events of jBPM

          
              Script Task
          
              User Task
          
              Service Task
          
              Rule Task
          
              Start Event
          
              End Event
          
              Gateways ( converge and diverge)
          
              Timer events etc.




Page 24                                          Xebia copyright
Start Event

          
              Start of the process.

          
              A process should have only one start node.

          
              No incoming connection.

          
              Only one outgoing connection.




Page 25                                                    Xebia copyright
End Event

          
              End of the process.

          
              A process should have one or more end events.

          
              One incoming connection.

          
              No outgoing connection.




Page 26                                                       Xebia copyright
Script Task

          
              Represent a script that should be executed in the process.

          
              One incoming connection.

          
              One outgoing connection.

          
              The dialect used for coding the action is JAVA and MVEL.




Page 27                                                                    Xebia copyright
User Task

          
              Tasks to be executed by human being are handled by human tasks.

          
              One incoming connection.

          
              One outgoing connection.

          
              Either group or user is mentioned with the task to determine who will perform the task.




Page 28                                                                                                 Xebia copyright
Service Task

          
              All the work that is executed outside a process engine is represented in service task.

          
              Domain specific services can be defined, using unique name, defining

          
              parameters, and results.

          
              One incoming and one outgoing connection.

          
              Has to be configured. (To be shown later)




Page 29                                                                                                Xebia copyright
Rule Task

          
              Represent a set of rules that need to be evaluated.

          
              One incoming and one outgoing connection.

          
              Rules are defined in seperate Drools rule format.

          
              Have to be configured (one example)




Page 30                                                             Xebia copyright
Gateways

          
              Allows to create branches (diverging) or merge branches (converging).

          
              A diverging gateway has one incoming connection and two or more outgoing connection.
              Three types of gateways are there.

          
              AND, OR and XOR.




Page 31                                                                                          Xebia copyright
Gateways continue

          
              A converging gateway allows you to synchronize multiple branches.

          
              A converging gateway has two or more incoming connections and one outgoing
              connection.

          
              AND or XOR types




Page 32                                                                                    Xebia copyright
Other features

          
              Data
              – Data can be retrieved, stored, passed on and used.
              – Process level variables can be set when starting a process.(show in eclipse)

          
              Constraints
              – Can be used at various locations.
              – For example in script tasks, diverging gateways etc

          
              Action Scripts
              – Action scripts can be used in different ways:
              – within a script task
              – as entry or exit actions




Page 33                                                                                        Xebia copyright
Connecting eclipse with guvnor

          
              Go to File->New->Other

          
              Select Guvnor.

          
              Create new repository.

          
              Select your guvnor repository on port 8080.

          
              Select the file/process you want to add to guvnor, right click, select guvnor, select add.

          
              Select the repository and package you want to add.




Page 34                                                                                                    Xebia copyright
Demo

          
              Service Task (configure a service task, run a task)

          
              Business Rule (Drools Rule) Task

          
              Human task (Add to Guvnor repository, deploy the package, manage and
              monitor on jBPM console.




Page 35                                                                              Xebia copyright
Thanks
Page 36        Xebia copyright

Contenu connexe

Tendances

Kris Verlaenen on jBPM5 at JBUG.be
Kris Verlaenen on jBPM5 at JBUG.beKris Verlaenen on jBPM5 at JBUG.be
Kris Verlaenen on jBPM5 at JBUG.be
Andries Inzé
 
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processesJBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
Kris Verlaenen
 

Tendances (20)

Kris Verlaenen on jBPM5 at JBUG.be
Kris Verlaenen on jBPM5 at JBUG.beKris Verlaenen on jBPM5 at JBUG.be
Kris Verlaenen on jBPM5 at JBUG.be
 
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processesJBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
JBossOneDayTalk 2011: Using jBPM to bring more power to your business processes
 
Simplify the complexity of your business processes
Simplify the complexity of your business processesSimplify the complexity of your business processes
Simplify the complexity of your business processes
 
jBPM Designer 6
jBPM Designer 6jBPM Designer 6
jBPM Designer 6
 
Webinar get move_on_with_bpmsuite6
Webinar get move_on_with_bpmsuite6Webinar get move_on_with_bpmsuite6
Webinar get move_on_with_bpmsuite6
 
BPMN2 and jBPM5
BPMN2 and jBPM5BPMN2 and jBPM5
BPMN2 and jBPM5
 
Case study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC projectCase study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC project
 
What's new in jBPM6
What's new in jBPM6What's new in jBPM6
What's new in jBPM6
 
BPMN2 primer
BPMN2 primerBPMN2 primer
BPMN2 primer
 
Automate workflows with leading open-source BPM
Automate workflows with leading open-source BPMAutomate workflows with leading open-source BPM
Automate workflows with leading open-source BPM
 
Final pre power_group_executing bpm processes with Camunda
Final pre power_group_executing bpm processes with CamundaFinal pre power_group_executing bpm processes with Camunda
Final pre power_group_executing bpm processes with Camunda
 
Business Process Simulation in jBPM
Business Process Simulation in jBPMBusiness Process Simulation in jBPM
Business Process Simulation in jBPM
 
jBPM Migration - generating your process future
jBPM Migration - generating your process futurejBPM Migration - generating your process future
jBPM Migration - generating your process future
 
camunda latest features and roadmap
camunda latest features and roadmapcamunda latest features and roadmap
camunda latest features and roadmap
 
jBPM v7 Roadmap
jBPM v7 RoadmapjBPM v7 Roadmap
jBPM v7 Roadmap
 
Camunda bpm 7.0-release-webinar-en
Camunda bpm 7.0-release-webinar-enCamunda bpm 7.0-release-webinar-en
Camunda bpm 7.0-release-webinar-en
 
Flexible business processes using jBPM5
Flexible business processes using jBPM5Flexible business processes using jBPM5
Flexible business processes using jBPM5
 
JBoss BPM Suite 6 Tech labs
JBoss BPM Suite 6 Tech labsJBoss BPM Suite 6 Tech labs
JBoss BPM Suite 6 Tech labs
 
Bpms ecu2014
Bpms ecu2014Bpms ecu2014
Bpms ecu2014
 
Empowering Business Users with Process Management Tools
Empowering Business Users with Process Management ToolsEmpowering Business Users with Process Management Tools
Empowering Business Users with Process Management Tools
 

Similaire à jBPM 5.2

Curso de JBPM5
Curso de JBPM5Curso de JBPM5
Curso de JBPM5
Oscar V
 
Omg bpmn tutorial
Omg bpmn tutorialOmg bpmn tutorial
Omg bpmn tutorial
uhuru1973
 
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshellWe4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT Group
 
Devoxx 2009 Conference session Jbpm4 In Action
Devoxx 2009 Conference session Jbpm4 In ActionDevoxx 2009 Conference session Jbpm4 In Action
Devoxx 2009 Conference session Jbpm4 In Action
Joram Barrez
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT Group
 

Similaire à jBPM 5.2 (20)

jBPM Overview & Alfresco Workflows
jBPM Overview &  Alfresco WorkflowsjBPM Overview &  Alfresco Workflows
jBPM Overview & Alfresco Workflows
 
Curso de JBPM5
Curso de JBPM5Curso de JBPM5
Curso de JBPM5
 
Omg bpmn tutorial
Omg bpmn tutorialOmg bpmn tutorial
Omg bpmn tutorial
 
JBoss jBPM, the future is now for all your Business Processes by Eric Schabell
JBoss jBPM, the future is now for all your Business Processes by Eric SchabellJBoss jBPM, the future is now for all your Business Processes by Eric Schabell
JBoss jBPM, the future is now for all your Business Processes by Eric Schabell
 
Webinar: Camunda und Liferay
Webinar: Camunda und LiferayWebinar: Camunda und Liferay
Webinar: Camunda und Liferay
 
JBPM5 Community Training Course - Module #1 Introduction
JBPM5 Community Training Course - Module #1 IntroductionJBPM5 Community Training Course - Module #1 Introduction
JBPM5 Community Training Course - Module #1 Introduction
 
BPM Defined
BPM DefinedBPM Defined
BPM Defined
 
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshellWe4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
 
JBoss jBPM, the future is now (YaJUG session)
JBoss jBPM, the future is now (YaJUG session)JBoss jBPM, the future is now (YaJUG session)
JBoss jBPM, the future is now (YaJUG session)
 
Devoxx 2009 Conference session Jbpm4 In Action
Devoxx 2009 Conference session Jbpm4 In ActionDevoxx 2009 Conference session Jbpm4 In Action
Devoxx 2009 Conference session Jbpm4 In Action
 
Business processes, business rules, complex event processing, the JBoss way
Business processes, business rules, complex event processing, the JBoss wayBusiness processes, business rules, complex event processing, the JBoss way
Business processes, business rules, complex event processing, the JBoss way
 
jBPM 4 BeJUG Event March 20 2009
jBPM 4 BeJUG Event March 20 2009jBPM 4 BeJUG Event March 20 2009
jBPM 4 BeJUG Event March 20 2009
 
Bonita Open Solution: What, Why & How
Bonita Open Solution: What, Why & HowBonita Open Solution: What, Why & How
Bonita Open Solution: What, Why & How
 
XPages is Workflow's new best friend
XPages is Workflow's new best friendXPages is Workflow's new best friend
XPages is Workflow's new best friend
 
jBPM, open source BPM
jBPM, open source BPMjBPM, open source BPM
jBPM, open source BPM
 
Get your BPM ducks in a row - preparing for migration to jBPM 5
Get your BPM ducks in a row - preparing for migration to jBPM 5Get your BPM ducks in a row - preparing for migration to jBPM 5
Get your BPM ducks in a row - preparing for migration to jBPM 5
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
 
EMEA Partner Summit: jBPM 5 - Bringing More Power to BPM
EMEA Partner Summit: 	jBPM 5 - Bringing More Power to BPMEMEA Partner Summit: 	jBPM 5 - Bringing More Power to BPM
EMEA Partner Summit: jBPM 5 - Bringing More Power to BPM
 
Behavioral tests with behat for qa
Behavioral tests with behat for qaBehavioral tests with behat for qa
Behavioral tests with behat for qa
 
IBM Business Process Management 8.5
IBM Business Process Management 8.5IBM Business Process Management 8.5
IBM Business Process Management 8.5
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Dernier (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

jBPM 5.2

  • 1. jBPM 5.2 - JBoss Business Process Management
  • 2. Agenda  Overview of BPM.  BPMN 2.0 Notation  What is jBPM?  Installation of JBPM  Eclipse based editor  Guvnor (webased editor) and jBPM console  JBPM API - KnowledgeBase, knowldegesession, knowledgeBuilder, other terms.  Constructs used in jBPM - Script task, User task, Service Task, Rule Task, Startevent, End Event, Gateways(converge and diverge), timer events  JBPM 5.2 Examples Page 2 Xebia copyright
  • 3. Overview of BPM  What is BPM?  BPM stands for Business Process Management  The term business process management typically refers to a set of activities enterprises can employ to automate and optimize business processes in a manner adaptable to dynamically changing environments  BPM in system engineering is the activity of representing processes of an enterprise, so that the processes can be analyzed and improved.  BPM is typically performed by business analysts and managers who are seeking to improve process efficiency and quality. Page 3 Xebia copyright
  • 4. Overview of BPM continue... – BPM is embodied in three distinct practices:  Process design: The task of designing existing and new processes  Process execution: The execution of an automated sequence of related events involving software processes and/or human activities  Process monitoring: Observance and auditing of the state of individual processes so that the statistics and performance of these processes can be recorded, reported, and optimized  Some available BPM languages are: – BPMN 2.0 – Business Process Execution Language (BPEL) – Web Services Choreography Description Language (WS-CDL) – XML Process Definition Language (XPDL) Page 4 Xebia copyright
  • 5. BPMN 2.0 Notation  Business Process Modeling Notation (BPMN) is a standard.  BPMN is a graphical modeling language, with symbols, relationships and attributes for the purpose of process modeling.  Easier to understand and learn. Page 5 Xebia copyright
  • 6. BPMN 2.0 continue... Page 6 Xebia copyright
  • 7. BPMN 2.0 Notation continue... Page 7 Xebia copyright
  • 8. What is JBPM?  JBPM is a flexible business process management (BPM) suite.  It makes the bridge between business analysts and developers.  Provide features for both – Business Analyst – Developers Page 8 Xebia copyright
  • 9. JBPM Features  Embeddable, lightweight Java process engine, supporting native BPMN 2.0 execution.  BPMN 2.0 process modeling in Eclipse (developers) and the web (business users).  Process collaboration, monitoring and management through the Guvnor repository and the web console.  Human interaction using an independent WS-HT task service.  Tight, powerful integration with business rules and event processing Page 9 Xebia copyright
  • 10. Overview Page 10 Xebia copyright
  • 11. Core Engine  Responsible for execution of the processes.  Main features of core engine – Light weight (can be deployed on almost any device that supports a simple Java Runtime Environment. – Ability to migrate running process instances to a new version of their process definition – Pluggable persistence with a default JPA implementation. Page 11 Xebia copyright
  • 12. Installation of JBPM – Prerequisites:  Java JDK 1.5+  Ant 1.7+ – Location for JBPM installer  There are two versions, a full installer which is already contains a lot of the dependencies that are necessary during the installation and a minimal installer which is only contains the installer and will download all dependencies at the time of installation  http://sourceforge.net/projects/jbpm/files/jBPM%205/  jBPM-{version}-installer-full.zip Page 12 Xebia copyright
  • 13. Installation of JBPM continue... – Installation Process : The easiest way to get installed is to simply run the installation script. Go to the install folder and run :  ant install demo – This will download following in lib directory.  Download JBoss AS  Download Eclipse  Install Drools Guvnor into JBoss AS  Install Oryx Designer into JBoss AS  Install the jBPM gwt-console into JBoss AS  Install the jBPM Eclipse plugin  Install the Drools Eclipse plugin Page 13 Xebia copyright
  • 14. Installation of JBPM continue... – After download all the artifacts, we need to start the demo.  ant start.demo – This will start  H2 database  JBoss AS  Eclipse  Human Task Service Page 14 Xebia copyright
  • 15. Installation of JBPM continue... – Test the installation  Go to http://localhost:8080/jbpm-console/app.html for Jbpm console  Got to http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/Guvnor.jsp for Guvnor repository Page 15 Xebia copyright
  • 16. Eclipse Editor  The Eclipse editor is a plugin to the Eclipse IDE and allows you to integrate your business processes in your development environment.  Targeted towards developers.  Graphical editor for creating your business processes.  Advanced testing and debugging capabilities.  Major Features : – Integration with the knowledge repository. – Graphical debugging, to see all the running processes. – Plugging in your own domain specific nodes. Page 16 Xebia copyright
  • 17. Web-based designer  Allows you to model your business processes in a web-based environment.  Targeted towards more business users.  Graphical editor for viewing and editing your business processes (using drag and drop). Page 17 Xebia copyright
  • 18. Guvnor  A repository service to store your business processes and related artifacts.  A web-based user interface to manage your business processes – Targeted towards business users. – Supporting the visualization of your processes.  Collaboration features to have multiple actors. Page 18 Xebia copyright
  • 19. jBPM Console  Business processes can be managed through a web console. It is targeted towards business users and its main features are: – Process instance management: the ability to start new process instances, get a list of running process instances, visually inspect the state of a specific process instances, etc. – Human task management: being able to get a list of all your current tasks (either assigned to you or that you might be able to claim), completing tasks on your task list (using customizable task forms), etc. – Reporting: get an overview of the state of your application and/or system using dynamically generated (customizable) reports, that give you an overview of your key performance indicators (KPIs). Page 19 Xebia copyright
  • 20. Knowledge Base API Page 20 Xebia copyright
  • 21. The jBPM API  Knowledge Base – First requirement to have to cickstart the process. – Should include all the process definitions. – Creating a knowledge base.  KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder()  kbuilder.add (ResourceFactory.newClassPathResource ("MyProcess.bpmn"), ResourceType.BPMN2)  KnowledgeBase kbase = kbuilder.newKnowledgeBase(); Page 21 Xebia copyright
  • 22. Session  After loading your knowledgebase, you should create the session to interact with the engine.  Session can be used to start new processes, signal events, etc.  The following code snippet shows how to create a session:  Stateful Knowledge Session ksession = kbase.newStatefulKnowledge Session();  Process Instance process Instance = ksession.startProcess ("com.sample.MyProcess"); Page 22 Xebia copyright
  • 23. Creating a process  A process can be created in – Eclipse Editor (Demo) – Web based Editor (Demo) Page 23 Xebia copyright
  • 24. Activities and Events of jBPM  Script Task  User Task  Service Task  Rule Task  Start Event  End Event  Gateways ( converge and diverge)  Timer events etc. Page 24 Xebia copyright
  • 25. Start Event  Start of the process.  A process should have only one start node.  No incoming connection.  Only one outgoing connection. Page 25 Xebia copyright
  • 26. End Event  End of the process.  A process should have one or more end events.  One incoming connection.  No outgoing connection. Page 26 Xebia copyright
  • 27. Script Task  Represent a script that should be executed in the process.  One incoming connection.  One outgoing connection.  The dialect used for coding the action is JAVA and MVEL. Page 27 Xebia copyright
  • 28. User Task  Tasks to be executed by human being are handled by human tasks.  One incoming connection.  One outgoing connection.  Either group or user is mentioned with the task to determine who will perform the task. Page 28 Xebia copyright
  • 29. Service Task  All the work that is executed outside a process engine is represented in service task.  Domain specific services can be defined, using unique name, defining  parameters, and results.  One incoming and one outgoing connection.  Has to be configured. (To be shown later) Page 29 Xebia copyright
  • 30. Rule Task  Represent a set of rules that need to be evaluated.  One incoming and one outgoing connection.  Rules are defined in seperate Drools rule format.  Have to be configured (one example) Page 30 Xebia copyright
  • 31. Gateways  Allows to create branches (diverging) or merge branches (converging).  A diverging gateway has one incoming connection and two or more outgoing connection. Three types of gateways are there.  AND, OR and XOR. Page 31 Xebia copyright
  • 32. Gateways continue  A converging gateway allows you to synchronize multiple branches.  A converging gateway has two or more incoming connections and one outgoing connection.  AND or XOR types Page 32 Xebia copyright
  • 33. Other features  Data – Data can be retrieved, stored, passed on and used. – Process level variables can be set when starting a process.(show in eclipse)  Constraints – Can be used at various locations. – For example in script tasks, diverging gateways etc  Action Scripts – Action scripts can be used in different ways: – within a script task – as entry or exit actions Page 33 Xebia copyright
  • 34. Connecting eclipse with guvnor  Go to File->New->Other  Select Guvnor.  Create new repository.  Select your guvnor repository on port 8080.  Select the file/process you want to add to guvnor, right click, select guvnor, select add.  Select the repository and package you want to add. Page 34 Xebia copyright
  • 35. Demo  Service Task (configure a service task, run a task)  Business Rule (Drools Rule) Task  Human task (Add to Guvnor repository, deploy the package, manage and monitor on jBPM console. Page 35 Xebia copyright
  • 36. Thanks Page 36 Xebia copyright