jbpm explained with simple use cases - red hat · 1 jboss world 2009 | tom baeyens jbpm explained...

Post on 12-Apr-2018

225 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

JBoss World 2009 | Tom Baeyens1

jBPM Explained

with Simple Use Cases

Tom BaeyensFounder and lead of jBPM, JBossSept 2nd 2009

JBoss World 2009 | Tom Baeyens2

Agenda

Business Process Management

jBPM Introduction

Developer Value

Business Value

Train ticket system

Roadmap

JBoss World 2009 | Tom Baeyens3

BPM as a management discipline

Not an IT concept

William Edwards Deming

Plan

Do

Check

Act

BPM Business Value

JBoss World 2009 | Tom Baeyens4

Assembly Lines

1723-1790, Adam Smith: The pin factory

1863-1947, Henry Ford: mass production

JBoss World 2009 | Tom Baeyens5

Government Tax Collection

JBoss World 2009 | Tom Baeyens6

Library Lending A Book

JBoss World 2009 | Tom Baeyens7

Selling A Ticket To A Concert

JBoss World 2009 | Tom Baeyens8

Even Getting Up In The Morning

JBoss World 2009 | Tom Baeyens9

Business Processes Need To Be Managed

Doesn’t mean that

People are aware

They are controlled or guided

Everyone is using the same process

Managing processes

Discipline

Organizational change needed

Know, understand and follow the business process

Thinking in processes, intra- and interbusiness

Control mechanisms

IT can help there

8/28/09 | Slide 10Tag Cloud from Gartner’s : “Hype Cycle for Business Process Management, 2008”

8/28/09 | Slide 11

JBoss World 2009 | Tom Baeyens12

jBPM Introduction

Workflow & BPM engine

Graphical diagram

Execution flow

JBoss World 2009 | Tom Baeyens13

jBPM Business Value

Improve business – IT communication

Agile

Conformance

Governance

Audit

Business Insight

JBoss World 2009 | Tom Baeyens14

jBPM Technical Perspective

State machine

Control flow including wait states

Current execution state persisted in DB

Transactionally move from one state to next

Include automated steps in transactions

JBoss World 2009 | Tom Baeyens15

jBPM Technical Value

Embeds into your application

Integrates with your transaction

Integrates with your database

Integrates with your domain model

Deploy as simple library or standalone server

Simplest way to implement asynchronous architectures

Human tasks

Asynchronous communication between systems

JBoss World 2009 | Tom Baeyens16

jBPM 4

Split normal usage from bleeding edgeAPIConfiguration

Process Virtual Machine

Rock solid

Leverages feedback of jBPM 3’shuge production usage

QA in our own labCI of {environments} * {functionalities}Support !

JBoss World 2009 | Tom Baeyens17

jPDL

jBPM’s original process language

Clean Java integration

Task management

Developers like itTransactional control flowCompact, readable XML

Non technical business analysts like itDiagram decoupled from execution semanticsBoxes and arrows

JBoss World 2009 | Tom Baeyens18

BPMN 2.0

New process language next to jPDL

Standard

Vendor neutral

Interoperability ?

Technical business analysts like it

Focus on modelling

Precise execution semantics

Directly coupled with diagram

Now in incubation

Productized in H2 2010

JBoss World 2009 | Tom Baeyens19

BPMN 2.0 Team

Joram Barrez

Lead

Signavio integration

Ronald van Kuijk

Implementation of control flow activities

Alejandro

Service aspects

Bernd Ruecker

Initial code contribution

Mentor

Koen Aers

Tooling, activity implementations

JBoss World 2009 | Tom Baeyens20

Train Ticket jPDL Use Case

JBoss World 2009 | Tom Baeyens21

Human Task

<process name="ticketProcess"> ... <task name="Accept quote" assignee="#{ticketRequest.cellPhoneNr}" >

<transition to="charge customer"/> <transition name="timeout" to="cancel"> <timer duedate="1 day"/> </transition>

</task> ...</process>

JBoss World 2009 | Tom Baeyens22

jBPM API

Configuration configuration = new Configuration();

ProcessEngine processEngine = configuration.buildProcessEngine();

ExecutionService executionService = processEngine.getExecutionService(); ProcessInstance processInstance = executionService .startProcessInstanceByKey("StateChoice");

JBoss World 2009 | Tom Baeyens23

Roadmap

Sep

Oct Dec Jan

Feb Mar Apr May

Jun

Jul

Aug

Sep

20102009

Nov

4.1 4.2 4.3 4.4 4.5

jBPM 5

BPMN 2.0jPDL

JBoss World 2009 | Tom Baeyens24

Questions ?

http://jbpm.org

http://processdevelopments.blogspot.com

top related