Slide 1

Slide 1 text

Introduction to Flowable Filip Hrisafov (@filiphr) Jose Antonio Alvarez (@jaam_eu) 1

Slide 2

Slide 2 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 • Core Software Architect at Flowable • Flowable core dev • MapStruct project lead • Head Solutions Architect at Flowable • Flowable core contributor • 11 years experience in process management Short Introduction Filip Hrisafov Jose Antonio Alvarez 2

Slide 3

Slide 3 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 Agenda & Goals • Explaining all that Flowable can do in 60 mins is … impossible • Short History • Open Standards (BPMN, CMMN, DMN) • A glimpse of what you can do • And hope to inspire you to look deeper! 3

Slide 4

Slide 4 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 Flowable 6.3 Flowable 5.23 A process instances per second C Speed, scalability and innovation • Fastest engines available • Lightweight Flowable Open Source Project 4 Native BPMN, CMMN and DMN engines • High performance, high scale • Years of real world use Long heritage of Open Source BPM • Origins since 2010 in Activiti and jBPM • Established 2016 by Alfresco co-founder and Activiti team Community is key • Credibility through engagement & contributions • Usage all over the world and in all kind of industries jBPM Flowable Activiti 2010 2016

Slide 5

Slide 5 text

29.01.2020 jBPM 3 Flowable Activiti Flowable 6 jBPM 5 Bonitasoft Camunda 7 Activiti 5/6/7 Effektif Dropped jBPM and built own engine, but no longer a focus Continues without architects but no core engine updates R&D focus shifted to new microservice orchestration engine (Zeebe) Implemented BPM on Red Hat Drools architecture Lightweight BPMN, now rolled into Signavio (not open source) 2016 2013 2013 2010 2009 Flowable Family Tree 5

Slide 6

Slide 6 text

Manage complex business activities that require a mix of human and electronic actions, such as an incoming application, a submitted claim, a complaint, or incident management Case management Coordinate or orchestrate the behaviour of people, systems, information, and things to produce business outcomes. Processes are typically structured and repeatable Business process management Case and Business Process Management The heart of Digitalization 6

Slide 7

Slide 7 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 BPMN CMMN DMN 7 Open Standards

Slide 8

Slide 8 text

© 2018 Flowable AG. All rights reserved. BPMN vs. CMMN – the Basics • BPMN • one or more tokens “flowing” through a process model • CMMN • more like “event – condition – action” paradigm • Should I choose one over the other? • No! • Use them both in combination! 8

Slide 9

Slide 9 text

© 2018 Flowable AG. All rights reserved. Example as a Case 9

Slide 10

Slide 10 text

© 2018 Flowable AG. All rights reserved. Same Example as a Process 10

Slide 11

Slide 11 text

© 2018 Flowable AG. All rights reserved. Simple Process Flow 11

Slide 12

Slide 12 text

© 2018 Flowable AG. All rights reserved. Same flow as Case 12

Slide 13

Slide 13 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 Why use a workflow engine? 13 ● The engine handles orchestration/coordination ● Visual representation ● Transaction delimitation and handling ● Error handling/Retry mechanism ● Auditing / history log ● No need for complex and big processes to benefit from Flowable

Slide 14

Slide 14 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 Modelling vs. Coding • The hardest part about our job is translating requirements • A picture says more than thousands words • A visual model is the common meeting ground 14

Slide 15

Slide 15 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 Modeling centric • Visual representation of business requirements • Understood by analysts and devs • Orchestration logic not hidden in code 15

Slide 16

Slide 16 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 Runtime state • Visual representation of runtime state • Current activities • Completed activities • State data (variables, identity links, event subscriptions) always available 16

Slide 17

Slide 17 text

29.01.2020 REST API BPMN Engine CMMN Engine DMN Engine Basic Form Engine Basic Content Engine Flowable OSS Architecture 17 Persistence Service Job Service Variable Service Task Service Identity Service Engine Specific Services Flowable Modeler Flowable Task IDM Admin

Slide 18

Slide 18 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 Flowable Spring Boot support • Lots of starter modules • Auto deployment of process, case, decision resources • Creation and injection of all engines and services 18 org.flowable flowable-spring-boot-starter 6.5.0

Slide 19

Slide 19 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 Demo: order processing in online store 19 1. Flowable receives a purchase order from a customer 2. Lock the items in inventory 3. Employee confirms shipment handover to post office ○ Customer receives a confirmation mail 4. Two weeks later, customer receives a mail to rate the articles

Slide 20

Slide 20 text

© 2018 Flowable AG. All rights reserved. Models, Definitions, Instances A model is like the mold or source code of what you want to create: • The BPMN model in Design exports to an XML format • The Form model in Design exports to a JSON format Definitions are created based on models when they are published. • Process Definition for an Expense Process • Case Definitions for a Repair Case Instances can be created based on definitions after that. • Concrete Process Instances for expense reports • Concrete Case Instances for Repair Cases 20

Slide 21

Slide 21 text

29.01.2020 Some concepts Modeler BPMN, CMMN or DMN models Engine deploy Process/Case/DecisionTable Definition DB start process/case/decision instance Process/case/decision instance state & history Give all tasks for user XYZ Show all instances since the last year … 21

Slide 22

Slide 22 text

© 2020 Flowable AG. All rights reserved. 29.01.2020 Get your processes under control 22 ● Resources for the OSS Project (flowable.org) ● Resources for Enterprise Support (flowable.com) ● Enterprise trial (flowable.com/trial) ● OSS Engines (github.com/flowable/flowable-engine) ● Demo for this presentation (https://github.com/jaam/flowable-jug-demo) ● Forum (forum.flowable.org) ● Latest news @flowablebpm, @filiphr and @jaam_eu