Automate workflows with leading open-source BPM
-
Upload
kris-verlaenen -
Category
Technology
-
view
1.352 -
download
0
description
Transcript of Automate workflows with leading open-source BPM
![Page 1: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/1.jpg)
1
Automate Workflows With Leading Open Source BPM
Prakash Aradyha Product Management Director, Red Hat
Dr Kris Verlaenen, Principal Software Engineer, Lead BPM Architect
March 12, 2014
![Page 2: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/2.jpg)
2
Topics
● JBoss BPM Suite 6.0 Overview● Core features of BPMS 6● Under the hood of BPMS 6● BPM in Action – Detailed demo
![Page 3: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/3.jpg)
3
Overview
![Page 4: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/4.jpg)
4
JBoss BPM Suite – Components
![Page 5: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/5.jpg)
5
JBoss BRMS - Components
![Page 6: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/6.jpg)
6
JBoss BRMS Vs BPM Suite
JBoss BRMS 6.0JBoss BRMS 6.0
JBoss BPM Suite 6.0 Target - Realtime Decision Management
Target:Process AutomationService Enabled OrchestrationIntelligent Business Operations
![Page 7: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/7.jpg)
7
BPM Suite Architecture
![Page 8: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/8.jpg)
8
BPM Lifecycle
Core Services
![Page 9: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/9.jpg)
9
Core Services: Execution Server
Client Applications ESBs Partner
ServicesMobileClients
● Centralized Execution Server
● REST, JMS and Native Java Interfaces out of the box
● Native Java Client that interfaces through REST
● Clusterable, Scalable Server
●
![Page 10: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/10.jpg)
10
Core Services: Development Repository
● GIT Based – Universally accepted
● Enterprise features like tagging, branching etc
● No repository migration hassles● Browse any GIT repository● Import and Export● Indexed searching
![Page 11: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/11.jpg)
11
Knowledge Management
![Page 12: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/12.jpg)
12
Choice of Tools
Business User Friendly – Web Based Developer Friendly – IDE Based
![Page 13: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/13.jpg)
13
Core Services: Integration with FSW
Switchyard● Defined SY task in Designer
● Direct invocation of SY services from Process
● SY can instantiate a business process
● SY can signal a process
● SY can execute a task
![Page 14: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/14.jpg)
14
Core Services: Business Resource Planner (TP)
![Page 15: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/15.jpg)
15
Core Services: Business Resource Planner (TP)
![Page 16: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/16.jpg)
16
BPM Lifecycle - Model
Business Assets
![Page 17: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/17.jpg)
17
Model: Business Central
![Page 18: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/18.jpg)
18
Model: Project Structure
![Page 19: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/19.jpg)
19
Model: Data Modeler
![Page 20: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/20.jpg)
20
Model: Process Modeler
![Page 21: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/21.jpg)
21
Model: Form Designer
![Page 22: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/22.jpg)
22
Model: Rule Authoring
![Page 23: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/23.jpg)
23
Model: Simulation
![Page 24: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/24.jpg)
24
BPM Lifecycle - Deploy
Business Assets
Core Services
![Page 25: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/25.jpg)
25
Deploy: Packaging, Deployment Repository
● Maven Packages● Build – Creates a kjar – Includes all assets – process
definitions, classes, forms, images etc● Deploy – Deploy to a Maven repo● Applications can pull from Maven Repo● Dependency management with other libraries – Share
libraries● Integrate with SRAMP – Governance in multi stage● Configure Maven Repo location
![Page 26: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/26.jpg)
26
Deploy: How Deploy Works
![Page 27: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/27.jpg)
27
Migrating from 5.3 to 6
● Things to Consider in migration● New development repository – JCR to GIT● New Packaging – PKG to Maven JARs● New APIs – Knowledge APIs to KIE
● Legacy KIE APIs are still supported● All assets – process defs, DRLs, Decision Tables,
models work as is
![Page 28: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/28.jpg)
28
BPM Lifecycle – Process Monitor
![Page 29: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/29.jpg)
29
Process Monitoring: Overview
![Page 30: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/30.jpg)
30
BPM Lifecycle - Tasks
Tasks
![Page 31: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/31.jpg)
31
Tasks: Inbox
![Page 32: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/32.jpg)
32
Tasks: Task List
![Page 33: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/33.jpg)
33
Tasks: Task Execution
![Page 34: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/34.jpg)
34
BPM Lifecycle: Analyze
![Page 35: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/35.jpg)
35
BAM – Business Activity Monitoring
![Page 36: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/36.jpg)
36
BAM: Overview
![Page 37: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/37.jpg)
37
BAM: Define KPIs
![Page 38: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/38.jpg)
38
BAM: Process Dashboard
![Page 39: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/39.jpg)
39
Under the hoods
![Page 40: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/40.jpg)
40
New Core Features
● RuntimeManager:● Session + TaskService management
● CDI integration● Execution server● Remote API
● REST, JMS● Deployment using kjar
![Page 41: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/41.jpg)
41
RuntimeManager
● Access to KieSession and TaskService● Hides setup complexity
● Manages sessions● Singleton session● Session per request● Session per process instance
KieSession
TaskService
Runtim
eManager
![Page 42: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/42.jpg)
42
RuntimeManager Example
RuntimeManager manager = RuntimeManagerFactory.Factory.get() .newPerProcessInstanceRuntimeManager(environment);
RuntimeEngine runtime = manager.getRuntimeEngine( ProcessInstanceIdContext.get(id));
KieSession ksession = runtime.getKieSession();// do something here, e.g.ksession.startProcess(“org.jbpm.hello”);
manager.disposeRuntimeEngine(engine);manager.close();
![Page 43: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/43.jpg)
43
jBPM Services (CDI)
● Inject services into your CDI environment@Inject @Singleton RuntimeManager singletonManager;@Inject TaskService taskService;
● Configure (@Produces) EMF, environment, usergroupcallback
![Page 44: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/44.jpg)
44
jBPM Execution Server
● Execute process and task commands● Through UI● Remote API
● Clustered environment● High Availability● Load balancing
![Page 45: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/45.jpg)
45
Execution Server
Request3
PrInst1PrInst2
Request2
Request1
Quartz +Helix + Zookeeper
![Page 46: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/46.jpg)
46
Remoting
● KieSession and TaskService● Possibly more later● Uses RuntimeManager
● Using REST or JMS● JAXB + JSON
● Remote client using existing interfaces
![Page 47: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/47.jpg)
47
REST APIhttp://server.address:port/{application-id}/rest/ runtime {id: [a-zA-Z0-9-]+} // deploymentId process {id: [a-zA-Z0-9-]+} start * start process [POST] instance {id: \\d} * process instance details [GET] signal * signal event [POST] abort * abort process instance [POST] signal {id: [a-zA-Z0-9-]+} * signal event [POST] workitem {id: \\d} complete * complete work item [POST] abort * abort work item [POST] execute * execute the given command [POST] task {id: \\d+} * task details [GET] activate * activate task claim * claim task [POST] // etc.. execute * execute the given command [POST] query * task query
![Page 48: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/48.jpg)
48
Command Serialization
● JAXB serialization of commands● e.g. Start task
<command-message> <deploymentId>test</deploymentId> <ver>1</ver> <start-task> <taskId>1</taskId> <userId>krisv</userId> </start-task></command-message>
![Page 49: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/49.jpg)
49
REST Client Example
RuntimeEngine runtimeEngine = new RemoteRestSessionFactory( "org.jbpm:HR:1.0”, “http://localhost:8080/jbpm-console", AuthenticationType.BASIC, "krisv", "krisv") .newRuntimeEngine();
engine.getKieSession().startProcess("org.jbpm.humantask");
engine.getTaskService().start(1, "krisv");
![Page 50: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/50.jpg)
50
Demo
![Page 51: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/51.jpg)
51
Thank You
![Page 52: Automate workflows with leading open-source BPM](https://reader036.fdocuments.net/reader036/viewer/2022081412/54591597af795994188b56e5/html5/thumbnails/52.jpg)
52
Questions?