Slide 1

Slide 1 text

Josh Long (⻰龙之春) @starbuxman [email protected] github.com/joshlong PROCESS DRIVEN APPS WITH 
 ACTIVITI + SPRING BOOT Joram Barrez @jbarrez [email protected] github.com/jbarrez

Slide 2

Slide 2 text

W H Y W O R K F L O W ?

Slide 3

Slide 3 text

Activiti is a platform for executing workflows or business processes

Slide 4

Slide 4 text

A business process, you say?

Slide 5

Slide 5 text

A business process, you say? • Anywhere human work and/or systems are combined to produce value ! • Business processes involve everyone • The employees being part of it • The customers paying for them • The bosses trying to optimise them • ... and the developers implementing them

Slide 6

Slide 6 text

A business process, you say? • Processes are visualised (with flowcharts) ! ! ! ! ! • Why would I use a picture for creating software? • Improve communication and understanding of both tech and non-tech people • Manage complexity • Orchestrate distributed cloud services

Slide 7

Slide 7 text

Why would I execute those 'pictures'? Business  Processes  automated Metrics Optimization

Slide 8

Slide 8 text

So, it's basically a picture? • Yes, and no: it's a picture (or diagram) with • standardized building blocks • technical XML representation ! • The industry accepted standard: BPMN 2.0 ! • The Activiti engine takes BPMN 2.0 XML and executes the system calls and create tasks for the human workers

Slide 9

Slide 9 text

The diagram Human  work System  calls Boss  needs  to  approve  expense  ...   Joey  needs  to  call  this  customer!   Customer  can't  book  ticket  ... Generate  a  pdf   Book  ticket  through  partner  REST  api  ...   Merge  all  documents  involved  in  the  process Ac#vi#& API's   UI's   Insight

Slide 10

Slide 10 text

Activiti is open source • Founded and funded by Alfresco • First commit March 2010 • Apache 2 licensed • 1 pull request / 2 days • Fork us @ www.github.com/Activiti !

Slide 11

Slide 11 text

Activiti is global

Slide 12

Slide 12 text

Activiti is lightweight • Java core engine • Just a jar == Embeddable in any Java environment • But full-blown standalone server possible ! • Designed to be very light on resources ! http://www.jorambarrez.be/blog/2013/02/15/activiti-runs-on-a-raspberry-pi-model-b-with-9mb-heap/! • Designed for performance • Designed to scale horizontally • stateless architecture • database spof

Slide 13

Slide 13 text

Activiti is ready for your enterprise • Commercial support by • Partner ecosystem • Enterprise Activiti Suite offering • SaaS : activiti.alfresco.com • Try it today! • On premise

Slide 14

Slide 14 text

Enough jibber-jabber, show me code! • Finding a good business process is hard • Always company/industry specific ! • Introducing the Photo Service

Slide 15

Slide 15 text

T H E P R O C E S S E N G I N E

Slide 16

Slide 16 text

THE “D O G I F I C AT I O N ” P R O C E S S

Slide 17

Slide 17 text

http://knowyourmeme.com/memes/doge T H E G L O RY O F D O G E

Slide 18

Slide 18 text

+ + = S T E P 1 : U P L O A D I M A G E @ / c l i e n t

Slide 19

Slide 19 text

S T E P 2 : S E E I T I N / m o n i t o r

Slide 20

Slide 20 text

T H E P R O C E S S E N G I N E

Slide 21

Slide 21 text

M A N A G I N G H U M A N 
 TA S K S

Slide 22

Slide 22 text

S P R I N G S E C U R I T Y A N D A C T I V I T I ’ S I D E N T I T Y S E RV I C E

Slide 23

Slide 23 text

T H E R E S T A P I

Slide 24

Slide 24 text

A C T I V I T I A C T U ATO R E N D P O I N T S

Slide 25

Slide 25 text

N E X T S T E P S - S P R I N G . I O G U I D E - B O O T - C H E C K I T O U T !

Slide 26

Slide 26 text

@starbuxman @springcentral [email protected] github.com/joshlong References activiti.org spring.io/ start.spring.io Questions? Josh Long (⻰龙之春) @starbuxman [email protected] github.com/joshlong Joram Barrez @jbarrez [email protected] github.com/jbarrez