jboss jbpm overview - eclipse - the eclipse foundation open source

21
JBoss jBPM Overview Koen Aers JBoss, a division of Red Hat jBPM GPD Lead

Upload: others

Post on 12-Sep-2021

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

JBoss jBPM OverviewKoen AersJBoss, a division of Red HatjBPM GPD Lead

Page 2: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Agenda

• What is JBoss jBPM?• Multi Language Support• Graphical Process Designer• BPMN Reflections

Page 3: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

What is it ?

• JBoss jBPM is a sophisticated state machine

• JBoss jBPM delivers workflow, business process management (BPM) and service orchestration in a multi-process language platform

Page 4: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

What does it do ?

• JBoss jBPM executes long running processes that can be visualized graphically

• JBoss jBPM enables automation of business processes that coordinate between people, applications and services

• Designed for the mass market and support enterprise scale applications

• JBoss jBPM bring process automation to a much wider set of business problems ranging from embedded workflow to enterprise business process orchestration and BPM.

Page 5: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Typical Components

GraphicalDesigner

(eclipse based)

RuntimeEngine

Processrepository

RuntimeExecutions

History

@WebConsole

Embeddable

Processes

Page 6: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Typical Components: Designer

Page 7: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Agenda

• What is JBoss jBPM?• Multi Language Support• Graphical Process Designer• BPMN Reflections

Page 8: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Flavour 1: BPEL

• Service Orchestration • Broadly accepted standard • Well conceived specification

– Quite complete– Does 1 thing well

• Web services environment

Page 9: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Flavour 2: jPDL

• jBPM Process Definition Language• Graphical editor for the business user• Java programming environment for the developer• Ideal for Business Process Management (BPM)

– Easy automation of business processes– Task management– Integration– Business Intelligence

Page 10: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

jPDL Advantages

• Link between– Business User– Developer

• Graphical diagram for business users

• Process is basis for implementation

• Diagram is shared

submit web sale

no

sales review

fork

end

send bill

wait for payment

join

ship items

all shipped ?

yes

Page 11: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

More Flavours

• JBoss SEAM Pageflow• But also on our wishlist

– Visual programming

Easy concurrencyLimited but lowering the barrier

– XPDL

Page 12: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

JBoss jBPM

• Collection of process languages• Based on the same technology

Page 13: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Software Development Languages

Scripting languages

IoC configuration

General Purpose OO Programming Languages

E.g. Java, C#

Graph Based Execution Languages

Object Oriented Programming Language(e.g. Java, C#)

Process Virtual Machine

jPDL BPEL Pageflow ...

SQL based query languages

Rules languages

...

Process Virtual MachineProcess Virtual Machine

Page 14: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

JBoss jBPM Product View

jBPM jPDL

PVM

jBPM BPEL

<XML/>PVM

JBoss jBPM: Platform for Process Languages

...

PVM

Page 15: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Agenda

• What is JBoss jBPM?• Multi Language Support• Graphical Process Designer• BPMN Reflections

Page 16: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

jBPM Graphical Process Designer

• Initially graphical support for JPDL– Node pluggability

• Based on Eclipse technology– Eclipse plug-in– GEF– WTP – XML– No use of EMF/GMF (yet)

• Support for Seam Pageflow• Ultimately : Multiple language support

– BPEL– XPDL– BPMN⇒ JWT

Page 17: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

GPD Architecture

WTP – XML

EMF – DOM Impl

jBPM GPD Semantic Model

Common Base Layer

jPDL Pageflow

Semantic Model to XML Mappingadapts

Base XML Adapter

notifies changes

jPDLjPDL PageflowPageflow

XML AdapterXML AdapterXML Adapter

jBPM GPD Notational Model

Node Edge NodeContainer

jPDL Pageflow

notifieschanges

notifies changes

node edge ... node edge ...

Notational Model to GEF Mapping

Eclipse GEF

EditParts EditPoliciespart1part2

policy1policy2

notifies changes

notifies changes

Editors

jPDL Editor Pageflow Editor

WTP – XML GEF

Page 18: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Agenda

• What is JBoss jBPM?• Multi Language Support• Graphical Process Designer• BPMN Reflections

Page 19: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

BPMN Reflections

• Converging standard notation• Executable?

– Token concept

• Complexity• Compliance?=> Multiple profiles

Page 20: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

BPMN Profiles (example)

Basic Profile

Basic Activities Basic Events

Intermediate Profile

Complex Activities Complex Events

Sequence Flow

Gateways

Expert Profile

Swimlanes Message Flow Artifacts

Page 21: JBoss jBPM Overview - Eclipse - The Eclipse Foundation open source

Conclusion

• JBoss jBPM is a platformfor executing processesin multiple process languages

• JWT is a platform for graphically supporting development of processesin multiple process languages

• Natural match!