jBPM5 Introduction - Drools & jBPM5 Bootcamp SF 2011

2,675 views

Published on

for more information visit: http://salaboy.wordpress.com

Published in: Technology, Business
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,675
On SlideShare
0
From Embeds
0
Number of Embeds
816
Actions
Shares
0
Downloads
125
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

jBPM5 Introduction - Drools & jBPM5 Bootcamp SF 2011

  1. 1. Thursday, October 27, 11
  2. 2. Agenda • Introduction, why BPM? • Business Processes • BPM the discipline -> Main Stages • BPM Systems • jBPM5 Components • Process Runtime (BPMN2 models) • Human Task Server (WS-HT Spec) • Tooling • Service Repository • F.A.Q.Thursday, October 27, 11
  3. 3. What does Process mean for us? Set of ordered actions that tends to transform an input to a desired outputThursday, October 27, 11
  4. 4. What does Business mean for us? Relative to a domain, company or a scoped scenario, where certain rules and actions needs to be applied to achieve a goal.Thursday, October 27, 11
  5. 5. What does Business Goal mean for us? Objective to be satisfied inside the business scope that gives to the company a profit/benefit in some way.Thursday, October 27, 11
  6. 6. Business Process Sequence of actions performed by humans and systems to achieve a business goalThursday, October 27, 11
  7. 7. Business Process ExampleThursday, October 27, 11
  8. 8. Business Process Management • Obviously when we have more than 2 Business Processes we need to manage them! • History • Main StagesThursday, October 27, 11
  9. 9. Business Process Management History • Was born more than 30 years ago • Focused on improve how companies work • Workflows, person to person interactions come first •A business related approach come later with high level concepts • The BPM discipline was created to provide a framework where business processes can be discovered and improved over the yearsThursday, October 27, 11
  10. 10. Business Process Management Stages • Stage #1: Discover (Quality) • Stage #2: Formalize (Quality) • Stage #3: Implement (Technical) -> Devs!!! • Stage #4: Runtime (Technical) -> Devs!!! • Stage #5: Monitor (Decision Making) • Stage #6: Improve (Quality)Thursday, October 27, 11
  11. 11. BPM CycleThursday, October 27, 11
  12. 12. BPM Systems • You can do the whole process with a pen and paper • Or you can use a Business Process Management System • It gives you a set of tools to implement each stage • Developers needs to understand the key features of a Process Engine • Developers needs to understand the tooling that the BPMS provides themThursday, October 27, 11
  13. 13. jBPM5 Quick Overview • Its a Business Process Management System • It provides us the process engine • It allows us to model our process using BPMN2Thursday, October 27, 11
  14. 14. jBPM5 Quick Overview • It can be easily embedded in your applications or used as a service • It will be responsible to handle the interaction between Human and Systems defined inside our business processes • Focus: reduce the gap between developers and business analyst to model and execute business scenariosThursday, October 27, 11
  15. 15. jBPM5 Components Overview • jBPM5 Ecosystem • jBPM5 Runtime • BPMN2 Semantic Module • Core Business Process Engine • Persistence and Transaction Mechanism • History Logs • jBPM5 Human Task Server • jBPM5 Service Repository • jBPM5 Tooling • jBPM5 Designer • jBPM5 Process Console • jBPM5 REST Process Server • jBPM5 BAMThursday, October 27, 11
  16. 16. jBPM5 Core Overview (Process Perspective)Thursday, October 27, 11
  17. 17. Drools + jBPM5 OverviewThursday, October 27, 11
  18. 18. jBPM5 Runtime • BPMN2 Semantic Module: it understands BPMN2 process definitions and lets us load our process definitions into the jBPM5 Runtime. • Core Business Process Engine: it runs our Process Definitions. It provides a full set of APIs to interact and create our process instances. • Persistence and Transaction Mechanism: it helps us to store the runtime status of our running processes • History Logs: it stores all the activity that its being executed in the engine.Thursday, October 27, 11
  19. 19. BPMN V2.0 Introduction • Business Process Model and Notation V2 • Standard Specification created by the Object Management Group (OMG) • Publicly released: 2011-01-03 • Define best practices for Business Process Model definitions and Business Process implementations based on industry expertiseThursday, October 27, 11
  20. 20. BPMN V2.0 Goals • Defines a standard language to model business process that can be understood by: • Business Analysts • Technical IT people • Business People • Defines the execution semantics for that notationThursday, October 27, 11
  21. 21. BPMN V2.0 Goals • The specification its divided into three main sections • Process: • Process Modeling • Process Execution • Collaboration • ChoreographyThursday, October 27, 11
  22. 22. jBPM5 Human Task OverviewThursday, October 27, 11
  23. 23. jBPM5 Human Task Server • Pluggeable component to handle the human tasks life cycle • Implements the Web Service Human Task specification -> http://incubator.apache.org/hise/WS-HumanTask_v1.pdf • It defines the data structures to store information about the Human Tasks involved in our processes, without knowing about the process itself • It defines the different states that a human task can have during the interactionThursday, October 27, 11
  24. 24. jBPM5 Tooling OverviewThursday, October 27, 11
  25. 25. jBPM5 Tooling • jBPM5 Designer: Graphical Process Designer that lets us define BPMN2 compliant business processes. • jBPM5 Process Console: It lets us test and run our processes, providing us a runtime environment where we can interact with them.Thursday, October 27, 11
  26. 26. jBPM5 Tooling • jBPM5 REST Process Server: It exposes the jBPM5 runtime through a REST interface to be able to interact with the runtime from different clients and programming languages. • jBPM5 BAM: It provides us some widgets and reporting features to externalize, browse and aggregate information that its being generated from the processes execution.Thursday, October 27, 11
  27. 27. jBPM5 Human Task Server • Connectors for including domain specific activities • Centralize in a repository the already created connectors • Promotes reutilization • Allows us to have a private repository with our private domain specific connectorsThursday, October 27, 11
  28. 28. jBPM5 Source Code jBPM5 Source Code http://www.github.com/ droolsjbpm/jbpm Get the code and build it! > git clone https://github.com/.. > mvn clean installThursday, October 27, 11
  29. 29. How BPM fits for everyone • Business processes represent • The steps required to do a specific work • Great for End Users, New End Users and Managers • How to coordinate systems (Systems Integration) and human interactions • Great for developers and re-utilization • End Users will end up with an Unified User Interface • Developers will have an unified way of doing new developments/adding functionalityThursday, October 27, 11
  30. 30. How BPM fits for everyoneThursday, October 27, 11
  31. 31. How BPM fits for End Users • Task Lists Oriented User Interfaces • Its easy to know what tasks have each role inside the company • Just one way of doing things, unified, in the same place • The task lists guide you through your tasksThursday, October 27, 11
  32. 32. How BPM fits for End Users (Task List)Thursday, October 27, 11
  33. 33. How BPM fits for End Users (Task Form)Thursday, October 27, 11
  34. 34. How BPM fits for Developers • Easy to maintain • Decoupled from the application code • Encourage re-utilization of the communication mechanisms and connectors • Changes in the business processes dont affect the application neither the UIThursday, October 27, 11
  35. 35. How BPM fits for DevelopersThursday, October 27, 11
  36. 36. How BPM fits for Developers • Developers will be in charge of: • Create connectors for different applications (or use the ESB and configure each new system) • Store the connectors in a centralized repository • Define the technical aspects for each task type interface • Configure the environment to run the business processes • Maintain the business process definition technical assetsThursday, October 27, 11
  37. 37. References JBoss Community http://www.jbpm.org Salaboy Blog http://salaboy.wordpress.com Esteban Blog http://ilesteban.wordpress.com Plug Tree Blog http://www.plugtree.comThursday, October 27, 11
  38. 38. Questions?Thursday, October 27, 11
  39. 39. Thursday, October 27, 11

×