presentation jbpm community day 2009 - first steps with jbpm4

Post on 07-Dec-2014

7.202 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

FIRST STEPS WITH JBPM4

Joram BarrezjBPM Community Day 2009

WH

OAM

I

• jBPM consultant at

• Co-founder of

• jBPM blog: http://www.jorambarrez.be

./whoami

jBPM Community Day 2009

GO

ALS

• Tech demo: demonstration of new jBPM4 API

• Showing how easy it is to use jBPM in your application

• Extracting business insight from the new history tables

• Community discussion?

• All in the next 20 minutes or so …

./Goals

jBPM Community Day 2009

JBPM4 CO

NCEPTS

./jBPM4 API

jBPM Community Day 2009

Process engine

RepositoryService

Managing deployments

Deployment createDeployment()

deployment.addResourceFromClasspath(“")

ProcessDefinitionQuery createProcessDefinitionQuery();

JBPM4 CO

NCEPTS

./jBPM4 API

jBPM Community Day 2009

Process engine

RepositoryService

ExecutionService

Managing runtime executions

startProcessInstanceById(pd_id)

signalExecutionByXXX

Get/setVariable(s)

JBPM4 CO

NCEPTS

./jBPM4 API

jBPM Community Day 2009

Process engine

RepositoryService

ExecutionService

TaskService

Managing tasks

takeTask(actor)

completeTask(outcom)

cancelTask(task)

AssignTask(actor)

findTaskXXX

JBPM4 CO

NCEPTS

./jBPM4 API

jBPM Community Day 2009

Process engine

RepositoryService

ExecutionService

TaskService

HistoryService

Managing past runtime data

HistoryActivityInstanceQuery query = historyService.createHistoryActivityInstanceQuery().activityName("Wait").executionId(“123");Query.execute

avgDurationPerActivity(pd_id);

JBPM4 CO

NCEPTS

./jBPM4 API

jBPM Community Day 2009

Process engine

RepositoryService

ExecutionService

TaskService

HistoryService

ManagementService Process engine maintenance

executeJob(long jobDbid)

JBPM4 CO

NCEPTS

./jBPM4 API

jBPM Community Day 2009

Process engine

RepositoryService

ExecutionService

TaskService

HistoryService

ManagementService

Your app

Only communication with enginethrough interfaces!

FEATURES

• Clean client API (ideally you shouldn't be using anything else)

• Simplified DB schema• runtime vs historical data separation!• eg process instance is in DB only during execution, afterwards it is deleted and stored in a history table

• Performance boost (and no method-chaining)

• Fancy web console (GWT)

./Features on first sight

jBPM Community Day 2009

DEM

O./Demo use case

jBPM Community Day 2009

?

DEM

O./Demo use case

jBPM Community Day 2009

• Problem: using coins for parking is sooooo 90's• The solution

+ =

DEM

O./The process

jBPM Community Day 2009

Check blacklistAnd subscription

Ask for customer approval on

machine

Wait until customer returnsAnd send second sms

Bill customer

DEM

O./demo

jBPM Community Day 2009

Time spent jBPMGUIBluetooth

DEM

O./demo

jBPM Community Day 2009

GUI

ParkingBpmService

controllers

DEMO

THE WORLD WITHOUT BPM

top related