Upload
srijan-technologies
View
30
Download
3
Embed Size (px)
Citation preview
Building BPM Web Portals with Camunda and Drupal
Ishan Mahajan| Program Manager, Srijan Technologies | @ishanmahajan
#SrijanWW | @srijan
#SrijanWW | @srijanCamunda
● Open source platform for workflow and business process management.
● Model and execute BPMN 2.0, CMMN 1.1 and DMN 1.1.
○ BPMN for structured workflows
● Ships with a set of applications to help model, execute and administer process applications running on the Camunda core engine.
#SrijanWW | @srijanCamunda Overview
#SrijanWW | @srijanUse Case: Drupal as BPM Portal
REST API
REST / Java API
Engine(BPMN, CMMN, DMN)
End User
#SrijanWW | @srijanWhat does a BPM Portal typically do?
● Involve End Users.○ Easily provide BPM access to customers, vendors, partners and
other users outside of the organisation.
● Initiate workflow processes.○ Complete tasks.
● User dashboard and Activity/Task list.○ Task assignment.
○ Real time information and status of ongoing processes.
#SrijanWW | @srijanUse Drupal to enhance the BPM portal
● Beyond task forms○ Define rules to complete tasks.
● Send and manage notifications.
● User registration and onboarding
● User roles and groups.
● Provide instructions and support content to complete tasks.
● Content Management.○ Setup task forms, task instruction pages and other content.
○ Other CMS features.
#SrijanWW | @srijan
How can a Drupal - Camunda integration work?
#SrijanWW | @srijanWorkflow definition using Camunda Modeler
#SrijanWW | @srijanWorkflow definition using Camunda Modeler
#SrijanWW | @srijanDrupal - Camunda Interaction
● Task screens:○ Webforms, content pages (text,
videos etc)● Assign a task● Complete a task
○ On form submission (manual approval)
○ Define rules using the Rules module
● Execute task● Determine process path
task status and owner
● Task screens:○ ...
Camunda ids, task type
● ...
#SrijanWW | @srijanLet’s take a simple Example
#SrijanWW | @srijanCamunda Tasklist
#SrijanWW | @srijanInitiate workflow process from BPM Portal
● On submission of this form, a new process instance (workflow) will be initiated in Camunda.
● The first task (“Approve Request”) will be available on the BPM portal dashboard.
#SrijanWW | @srijan
Drupal
Title Camunda ID Other Fields Content Type
1 Drupal Camp Request
fe380689-97e8-11e6-a3c2-06287ee19e0b Request owner, Organic group etc
Camunda Request
2 Approve Request fe3854c1-97e8-11e6-a3c2-06287ee19e0b Task owner, status Camunda Task
#SrijanWW | @srijanUser Dashboard
● Team members can view and claim eligible tasks.
#SrijanWW | @srijan
#SrijanWW | @srijanTask Completion
#SrijanWW | @srijan
Title Camunda ID Other Fields Content Type
1 Drupal Camp Request
fe380689-97e8-11e6-a3c2-06287ee19e0b Request owner, Organic group etc
Camunda Request
2 Approve Request fe3854c1-97e8-11e6-a3c2-06287ee19e0b Task owner, status Camunda Task
3 Close Request 603b6f5a-97ed-11e6-a3c2-06287ee19e0b Task owner, status Camunda Task
#SrijanWW | @srijanUser Dashboard
● Again, the newly created task can be claimed and then acted upon.
#SrijanWW | @srijanDrupal - Camunda Interaction
● Task screens:○ Webforms, content pages (text,
videos etc)● Assign a task● Complete a task
○ On form submission (manual approval)
○ Define rules using the Rules module
● Execute task● Determine process path
task status and owner
● Task screens:○ ...
Camunda ids, task type
● ...
#SrijanWW | @srijanSetup: maximum flexibility & minimum duplication
● Ensure all process definition is stored in Camunda.
● Let the BPM engine dictate the direction of the workflows.
● Drupal is used to manage content related workflows tasks and to mark tasks as
complete.
Drupal Camunda
● All the data captured through task forms and task content.
● Task owner.● Task status.● Camunda IDs
● Only data that determines the path of the workflow.
○ Task owner.○ Task status.
#SrijanWW | @srijanCamunda connector Drupal module
● Allows Drupal to connect with Camunda using REST.
● User dashboard to claim/assign and complete tasks.
● Configure forms and other screens for a task.
● Configure rules (using the Rules module) for a task.
● Sandbox URL: https://www.drupal.org/sandbox/ishanmahajan/2821362
#SrijanWW | @srijanWhy use Camunda when Drupal can handle workflows?
● Ability to model BPMN diagrams and easily manage workflow steps.
● Process definition history & versioning
● Process definition heatmap
● Process instance history: user actions, audit logs with timestamps
● Process duration report
● REST APIs
● BPM engine shared by multiple applications within an organisation
#SrijanWW | @srijanProcess Definition Heatmap
#SrijanWW | @srijanProcess Instance History
#SrijanWW | @srijanTry it out!
● https://docs.camunda.org/get-started/
● https://camunda.org/examples
● https://camunda.org/contribute/
● Easy to setup
○ Tomcat Distribution
○ Docker Image
● Start with the Camunda Tasklist application.
● Drupal sandbox module
https://blog.camunda.org/post/2017/01/integrating-camunda-drupal/
#SrijanWW | @srijanCamunda Tasklist
Thank You!
Ishan Mahajan| Program Manager, Srijan Technologies | @ishanmahajan | [email protected]
#SrijanWW | @srijan