Your SlideShare is downloading. ×
jBPM5: Bringing more Power to your Business Processes
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

jBPM5: Bringing more Power to your Business Processes

1,807

Published on

Overview of jBPM5 on Drools & jBPM Workshop

Overview of jBPM5 on Drools & jBPM Workshop

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,807
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
121
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Kris Verlaenen – jBPM Lead May 10 th , 2011 jBPM5 : Bringing more Power to your Business Processes
  • 2. Overview
  • 7. What is BPM?
  • 8. What is BPM? A business process is a process that describes the order in which a series of steps need to be executed, using a flow chart. Business Process Management
  • 9. Why BPM?
    • Continuous improvement
    • 12. Speed of development
    • 13. Increased agility
  • 14. Overview of jBPM5
  • 15. Key Characteristics of jBPM5
    • Open-source business process management project offering:
      • generic process engine supporting native BPMN 2.0 execution
      • 16. targeting developers and business users
      • 17. collaboration, management and monitoring using web-based consoles
      • 18. powerful rules and event integration
  • 19. From Workflow to BPM
    • Core engine is a workflow engine in pure Java
    Core Engine
  • 23. Core Engine Knowledge Base Stateful Knowledge Session Process Definition Process Instance
  • 24. Java Interface ProcessRuntime interface
    • startProcess(processId)
    • 25. startProcess(processId, parameters)
    • 26. signalEvent(type, event)
    • 27. signalEvent(type, event, instanceId)
    • 28. abortProcessInstance(instanceId)
    • 29. getProcessInstance(instanceId)
    • 30.
  • 31. Java Example // (1) Create knowledge base and add process definition KnowledgeBuilder kbuilder = ... kbuilder.add( ..., "sample.bpmn", ResourceType.BPMN2); KnowledgeBase kbase = kbuilder.newKnowledgeBase(); // (2) Create new stateful knowledge session StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession(); // (3) Start a new process instance ksession.startProcess(“com.sample.bpmn.hello”);
  • 32. From Workflow to BPM Core Engine
  • 33. From Workflow to BPM Core Engine BPMN 2.0 XML
  • 34. BPMN 2.0
    • OMG specification
    • Understandable by all business users
    • 37. Process, collaboration, choreography
    • 38. Extensible
  • 39. BPMN 2.0 Example < definitions ... > < process id=&quot;com.sample.bpmn.hello&quot; name=&quot;Hello World&quot; > < startEvent id=&quot;_1&quot; name=&quot;StartProcess&quot; /> < sequenceFlow sourceRef=&quot;_1&quot; targetRef=&quot;_2&quot; /> < scriptTask id=&quot;_2&quot; name=&quot;Hello&quot; > < script >System.out.println(&quot;Hello World&quot;);</ script > </ scriptTask > < sequenceFlow sourceRef=&quot;_2&quot; targetRef=&quot;_3&quot; /> < endEvent id=&quot;_3&quot; name=&quot;EndProcess&quot; /> </ process > </ definitions > < definitions ... > < process id=&quot;com.sample.bpmn.hello&quot; name=&quot;Hello World&quot; > < startEvent id=&quot;_1&quot; name=&quot;StartProcess&quot; /> < sequenceFlow sourceRef=&quot;_1&quot; targetRef=&quot;_2&quot; /> < scriptTask id=&quot;_2&quot; name=&quot;Hello&quot; > < script >System.out.println(&quot;Hello World&quot;);</ script > </ scriptTask > < sequenceFlow sourceRef=&quot;_2&quot; targetRef=&quot;_3&quot; /> < endEvent id=&quot;_3&quot; name=&quot;EndProcess&quot; /> </ process > </ definitions >
  • 40. From Workflow to BPM Core Engine BPMN 2.0 XML Persistence Trans- actions JPA JTA
  • 41. Persistence and Transactions
    • Persistence (JPA, pluggable)
      • Runtime persistence
      • 42. History logging
      • 43. Services
    • Transactions (JTA, pluggable)
      • Command-scoped
      • 44. User-defined
  • 45. From Workflow to BPM Core Engine BPMN 2.0 XML Persistence Trans- actions Events History Log Management Console BAM
  • 46. Console
    • Web-based management
    • 47. Business user
    • 48. Features
      • Process instance management
      • 49. User task lists / forms
      • 50. Reporting
  • 51. From Workflow to BPM Core Engine BPMN 2.0 XML Persistence Trans- actions Events Integration Domain-specific Processes Human Task Service ESB
  • 52. Domain-specific Processes
    • Extend palette with domain-specific, declarative service nodes
      • define input / output parameters
      • 53. runtime binding
  • 54. Human task service
    • User task
    • 55. Human task service (WS-HT)
      • Task lists
      • 56. Task life cycle
    • Task clients
      • Task forms
  • 57. Flexible Processes
  • 58.  
  • 59. What is flexibility? “ The quality of being adaptable or variable”
  • 60. Flexibility = Variability + Change
  • 61. Exceptional Control Flow 90% 5% 3% 2%
  • 62. Exceptional Control Flow 90% Rule1 When ... Then ... Rule2 When ... Then ... Rule3 When ... Then ... 5% 3% 2%
  • 63. Processes + Rules + Events
  • 64. Combining processes and rules
    • Integration
      • From loose coupling (decision services)
      • 65. To advanced integration (process rules)
    • Unification
      • Rules and processes are different types of business knowledge assets
      • 66. Tooling (IDE, repository, management)
  • 67. Decision Service
    • Different life cycle (agility)
    • 68. Larger scope (reusable)
    • 69. Higher-level
    • 70. Loosely-coupled
  • 71.
    • RuleSet: Evaluating a set of rules in your process (= local decision service)
    • 72. Process Rules : Data-driven constraints
    • 73. Triggers : Rules / events start / signal process
    • 74. Assignment rules
    • 75. Describing exceptional situations using rules
    • 76. Modularizing concerns using rules
    • 77. Using rules to dynamically alter the behavior of the process
    Rules and Process Integration
  • 78. Example: Clinical DSS
  • 79. Example: Build Management Source: Hudson Execution and Scheduling Architecture
  • 80. Example: Build Management Source: Hudson Execution and Scheduling Architecture
  • 81. Continuum Data-driven Lifetime Stability Granularity Change Dynamic Complexity Declarative User-focused
  • 82. TITLE SLIDE: HEADLINE Presenter name Title, Red Hat Date Demo
  • 83. Roadmap
    • jBPM 5.0: Februari 2011
    • 84. jBPM 5.1: NOW ...
      • Improve designer to support full round-tripping
      • 85. New Eclipse BPMN2 editor
      • 86. Lots of small feature improvements and bug fixes
    • jBPM 5.2 – jBPM 6.x
      • Simulation / testing / replay
      • 87. Flexible, adaptive, goal-oriented processes
      • 88. Integrated “no-code” tooling (form builder, etc.)
  • 89. jBPM5: What, where?
    • jBPM home page
    • 90. Source http://github.com/droolsjbpm/jbpm
    • 91. Hudson http://hudson.jboss.org/hudson/job/jBPM
    • 92. Blog http://kverlaen.blogspot.com/
    • 93. #jbpm on irc.codehaus.org
    • 94. [email_address]
    • 95. jBPM user forum

×