jBPM5 Developer Guide Presentation JBUG London


Published on

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

jBPM5 Developer Guide Presentation JBUG London

  1. 1. The evolution of the BPM Systems
  2. 2. Agenda● Intro to jBPM● jBPM5 Developer Guide ○ Chapters 1-7● Evolution ○ Rules - Chapter 9 ○ Events - Chapter 10 ○ Contexts - Chapter 11● Future - jBPM/Drools 6 ○ jBPM Console NG ○ CDI
  3. 3. jBPM● (Flexible) Business Process Engine● BPM System● Tooling● Community
  4. 4. jBPM5 Developer GuideChapter 1 - Theoretical Background● What is a Business Process?● What is BPM? ○ Stages
  5. 5. Business Process● Describes Systems and Humans Interactions● Formalize how the work is being done● Allows us to recognize potential problems● and they look like...
  6. 6. Business Process
  7. 7. Business Process Management
  8. 8. jBPM5 Developer GuideChapter 2 - BPM Systems (Structure)● Allows us to execute and automate our Business Processes● Business Processes will guide the company activities● There are so many advantages...
  9. 9. jBPM5 Developer GuideChapter 2 - BPM Systems (Structure)● Advantages ○ Performance Metrics ○ Recognize and deal with business exceptions ○ Business Agility ○ Improve your decision making data streams ○ Get an instant snapshot about the company work load ○ Quickly adapt your business processes to reflect changes in your business
  10. 10. BPM System Structure
  11. 11. jBPM5 Developer GuideChapter 3 - BPMN 2.0● Standard Specification (de-facto standard)● Defines the Notation● Defines the Execution Semantic● Allows interoperability between BPMS
  12. 12. jBPM5 Developer GuideChapter 4 - Knowing Your Toolbox● Infrastructure: ○ Guvnor● Design: ○ Eclipse Plugin (deprecated) ○ Web Process Editor ("official") ○ Eclipse BPMN2.0 Editor● Runtime: ○ jBPM5 GWT Process Server ○ jBPM5 GWT Console
  13. 13. jBPM5 Developer GuideChapter 5 - Modeling Tools● Web Process Designer: ○ Integrated with Guvnor BRMS ○ Standard BPMN2.0 + jBPM5 extensions ○ Process Definition Validation ○ Domain Specific Tasks ○ Integration with Service Repository
  14. 14. jBPM5 Developer GuideChapter 6 - Domain Specific Processes● Attach Domain Specific Constructs to your BPs● Create connectors to interact with your existing (legacy) systems● Clear separation between definition and implementation.● Different implementations for different environments
  15. 15. jBPM5 Developer GuideChapter 7 - Human Interactions● Optimize your working force● Gather right the information for the right people● Optimize how the tasks are being performed● Obtain a realistic metric about how the work is being done inside your organization
  16. 16. Tasks List
  17. 17. Task Form
  18. 18. Task Form
  19. 19. jBPM5 Developer GuideChapter 8 - Persistence & Transactions● Dealing with Long Running Processes and System Integrations requires a deep understand about these topics● Drools and jBPM share the same mechanisms for Persistence and Transactions
  20. 20. Drools & jBPM
  21. 21. Persistence● Based on JPA● Every time that a process reach a safe point it is persisted until an external interaction is completed● All the data associated with the process is stored as well
  22. 22. Transactions● Based on JTA● Most of the time business processes are about System Integrations ○ If our processes are interacting with transactional resources a 2 phase commit strategy can be used to guarantee coherence inside the same transaction
  23. 23. jBPM EvolutionChapter 9 - Smart Processes using Rules● The Drools Rule Engine● How our processes can benefit from the power of a Rule Engine?● What kind of things we will be able to do?● Whats the difference between jBPM5 and jBPM3/jBPM4 and other BPMS?● Simplify our business processes to express more accurately how the business works
  24. 24. jBPM EvolutionChapter 10 - Reactive Processes using Drools Fusion● Temporal Reasoning● We will be able to co-relate and identify time sensitive situations● A whole new world of possibilities
  25. 25. jBPM EvolutionChapter 11 - Architectural & Integration Tips● The integration with the Rule Engine give us a richer context to work on● The stateful nature of this context will allows us to build smarter applications that keeps track of multiple business process execution● Different architectures can be built using these concepts
  26. 26. Future - Drools/jBPM 6● Tooling ○ UberFire (GWT+ERRAI) Workbench ■ http://droolsjbpm.github.com/uberfire/ ○ jBPM Console NG ○ Guvnor NG● CDI (JSR-299) integration
  27. 27. Release Process + Rules
  28. 28. Demo
  29. 29. Demo - Rules Monitor with Rules
  30. 30. Demo - Rules We cannot have two Release Processes Using the same Release Path and release files at the same time
  31. 31. Demo - Rules Create Ad-Hoc Task if Trigger Test takes too much time
  32. 32. Join the Community● jbpm.org ○ IRC: irc.freenode.net #jbpm ○ Forum: https://community.jboss.org/en/jbpm?view=discussions● Blogs: ○ http://blog.athico.com ○ http://salaboy.com ○ http://ilesteban.wordpress.com● JBugs/JUGs