Top Banner
48

What is BPM? - JBoss Developer · 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

Oct 20, 2019

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: What is BPM? - JBoss Developer · 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
Page 2: What is BPM? - JBoss Developer · 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

Kris Verlaenen – jBPM LeadOctober, 2011

jBPM5: Bringing more Power

to your Business Processes

BPM using jBPM5 and Beyond

Page 3: What is BPM? - JBoss Developer · 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

Overview

• What is BPM?• Getting started with jBPM5• From Workflow to BPM• Extra features• Social, Cloud and Mobile• Roadmap

Page 4: What is BPM? - JBoss Developer · 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

What is BPM?

A business process is a process that describesthe order in which a series of steps need to be executed,

using a flow chart.

Business Process Management

Page 5: What is BPM? - JBoss Developer · 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

Why BPM?

• Visibility

• Monitoring

• Higher-level

• Continuous improvement

• Speed of development

• Increased agility

Page 6: What is BPM? - JBoss Developer · 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

Key Characteristics of jBPM5

• Open-source business process management project offering:– generic process engine supporting native

BPMN 2.0 execution– targeting developers and business users– collaboration, management and monitoring

using web-based consoles– powerful rules and event integration

Page 7: What is BPM? - JBoss Developer · 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

Rules

YourServices

CoreEngine

GuvnorRepository

Eclipse EditorWeb-Based

Designer

HistoryLog

TaskService

jBPM ConsoleYour

Application

Core Services

BusinessAnalyst

End User

Developer

FormDesigner

Page 8: What is BPM? - JBoss Developer · 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

Getting started with jBPM5 !

Page 9: What is BPM? - JBoss Developer · 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

Core Engine

• Core engine is a workflow engine in pure Java– state transitions– lightweight– embeddable– generic, extensible Core

Engine

Page 10: What is BPM? - JBoss Developer · 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

Core Engine

KnowledgeBase

StatefulKnowledge

Session

ProcessDefinition

ProcessInstance

Page 11: What is BPM? - JBoss Developer · 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

BPMN 2.0

<definitions ... >

<process id="com.sample.bpmn.hello" name="Hello World" >

<startEvent id="_1" name="StartProcess" />

<sequenceFlow sourceRef="_1" targetRef="_2" />

<scriptTask id="_2" name="Hello" >

<script>System.out.println("Hello World");</script>

</scriptTask>

<sequenceFlow sourceRef="_2" targetRef="_3" />

<endEvent id="_3" name="EndProcess" />

</process>

</definitions>

Page 12: What is BPM? - JBoss Developer · 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

Java Interface

ProcessRuntime interface• startProcess(processId)• startProcess(processId, parameters)• signalEvent(type, event)• signalEvent(type, event, instanceId)• abortProcessInstance(instanceId)• getProcessInstance(instanceId)• …

Page 13: What is BPM? - JBoss Developer · 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

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”);

Page 14: What is BPM? - JBoss Developer · 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

From Workflowto BPM

Page 15: What is BPM? - JBoss Developer · 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

From Workflow to BPM

CoreEngine BPMN

2.0

XML

Page 16: What is BPM? - JBoss Developer · 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
Page 17: What is BPM? - JBoss Developer · 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
Page 18: What is BPM? - JBoss Developer · 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

From Workflow to BPM

CoreEngine BPMN

2.0

XMLPersistence

Trans-actions

JPA

JTA

Page 19: What is BPM? - JBoss Developer · 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

Persistence and Transactions

• Persistence (JPA, pluggable)– Runtime persistence– History logging– Services

• Transactions (JTA, pluggable)– Command-scoped– User-defined

Page 20: What is BPM? - JBoss Developer · 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

From Workflow to BPM

CoreEngine BPMN

2.0

XMLPersistence

Trans-actions

EventsHistoryLog

ManagementConsole BAM

Page 21: What is BPM? - JBoss Developer · 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

Console

• Web-based management• Business user• REST api• Features– Process instance management– User task lists / forms– Reporting

Page 22: What is BPM? - JBoss Developer · 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
Page 23: What is BPM? - JBoss Developer · 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
Page 24: What is BPM? - JBoss Developer · 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
Page 25: What is BPM? - JBoss Developer · 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

From Workflow to BPM

CoreEngine BPMN

2.0

XMLPersistence

Trans-actions

Events

IntegrationDomain-specific

Processes

Human TaskServiceESB

Page 26: What is BPM? - JBoss Developer · 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

Domain-specific Processes

• Extend palette with domain-specific, declarative service nodes– define input / output parameters– runtime binding

Page 27: What is BPM? - JBoss Developer · 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

Domain-specific Processes

• Why?– Domain-specific– Declarative– High-level– Context-defined

• Other examples– Human task

– Java method

– WS, Rest

– Email, Twitter

– FTP, RSS, Jabber

– Finder, Exec, Archive

– Google Calendar

– YOUR SERVICES !Repository !

Page 28: What is BPM? - JBoss Developer · 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

Service Repository

Page 29: What is BPM? - JBoss Developer · 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

Human task service

• User task

• Human task service (WS-HT)– Task lists– Task life cycle

• Task clients– Task forms

Page 30: What is BPM? - JBoss Developer · 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

SwitchYard

• SwitchYard BPM component

Lightweight service delivery framework providing full life

cycle support for developing, deploying, and managing

service-oriented applications

Page 31: What is BPM? - JBoss Developer · 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

Extra features

• Process instance migration• jBPM installer• JUnit testing• Spring• OSGi• Migration from jBPM3(/4)

Page 32: What is BPM? - JBoss Developer · 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

Examples

• Evaluation

• Examples module– Looping– Multi-instances– Human tasks (including user / group

assignment, delegation, forms, etc.)– Process + rules integration

Page 33: What is BPM? - JBoss Developer · 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
Page 34: What is BPM? - JBoss Developer · 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
Page 35: What is BPM? - JBoss Developer · 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

Social, Cloudand Mobile

Page 36: What is BPM? - JBoss Developer · 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

Ready for the future?

Traditional BPM systems have problems with change, complexity, flexibility, data-

intensive applications, etc.

• Adaptive Case Management (ACM)• Unstructured, non-lineair or flexible processes• Event-driven BPM (edBPM)

Page 37: What is BPM? - JBoss Developer · 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

Example: Clinical DSS

Page 38: What is BPM? - JBoss Developer · 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

Combining Processes, Rules and Events

• Integration– From loose coupling– To advanced integration

• Unification– Processes and (event) rules are different

types of business knowledge assets– Tooling (IDE, repository, management)

Page 39: What is BPM? - JBoss Developer · 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

JBoss AS 7

• Blazingly fast• Lightweight• Module core

• jBPM5 on AS7: Lightning !

Page 40: What is BPM? - JBoss Developer · 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

OpenShift

• Based on Open Source• Innovation• Choice

• Java, PHP, Ruby, Python, Perl & more• Express, Flex, Power• Amazon EC2

Page 41: What is BPM? - JBoss Developer · 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

jBPM Everywhere

• Run jBPM5 natively on Android

Page 42: What is BPM? - JBoss Developer · 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

Roadmap

• jBPM 5.1: June 2011• jBPM 5.2: November 2011

– No-code tooling– Domain-specific service repository– Form builder– New BPMN2 Eclipse editor– Simulation / testing / replay

Page 43: What is BPM? - JBoss Developer · 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

Form Builder

• Generate form for process / task• Graphically design process (D&D)• Triggers, validation• Integrated into

Guvnor

Page 44: What is BPM? - JBoss Developer · 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

Eclipse BPMN2 editor

http://eclipse.org/projects/project.php?id=soa.bpmn2-modeler

Page 45: What is BPM? - JBoss Developer · 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

JBoss SOA-P 5 Full Support (3yrs) Transition (1yr) Maintenance (1yr)

JBoss BPMS / BRMS 5.3Full Support (3yrs) Transition (1yr)

3

3.2

5

4

6

7

Enterprise versions provide long-term support, regular releases including fixes,

new features, and new platforms certifications.

New community features may be backported to Enterprise

versions

JBoss Enterprise Product Delivery ModelExample: jBPM Community and Enterprise Product

While community projects continue to rapidly evolve, enterprise middleware products focus on long term stability.

Enterprise versions provide long-term support, regular releases including fixes,

new features, and new platforms certifications.

Flow

Page 46: What is BPM? - JBoss Developer · 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

jBPM5: What, where?

• jBPM home page• Source http://github.com/droolsjbpm/jbpm

• Hudson http://hudson.jboss.org/hudson/job/jBPM

• Blog http://kverlaen.blogspot.com/

• #jbpm on irc.codehaus.org• [email protected]

• jBPM user forum

Page 47: What is BPM? - JBoss Developer · 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

Questions?

• Ask me now !• Find me later

• Hackfest tonight

Page 48: What is BPM? - JBoss Developer · 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

Kris Verlaenen – jBPM LeadOctober, 2011

jBPM5: Bringing more Power

to your Business Processes

BPM using jBPM5 and Beyond