Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Process Driven Applications with Spring Boot

Fb22593caf24e4bb4c98d467cdd247e6?s=47 Josh Long
September 24, 2014

Process Driven Applications with Spring Boot

Today's applications are complex, distributed systems that - taken together - produce results. Tracking the flow of work through that system, however, becomes increasingly more painful as automated- and human-driven tasks are integrated into business processes. Business can't react to what it can't see. Business can't measure what it can't see. "Workflow" describes the sequence of processes through which a piece of work passes from initiation to completion. Workflow systems, like Activiti, describe and then execute these processes. Activiti is an open-source, Apache 2-licensed workflow engine that works with Spring and Spring Boot. In this webinar, join Spring Developer Advocate Josh Long and Activiti-ninja Joram Barrez for a look at how to distill, describe and reuse complex business processes using Spring (and Spring Boot) and Activiti.

Fb22593caf24e4bb4c98d467cdd247e6?s=128

Josh Long

September 24, 2014
Tweet

Transcript

  1. Josh Long (⻰龙之春) @starbuxman jlong@pivotal.io github.com/joshlong PROCESS DRIVEN APPS WITH

    
 ACTIVITI + SPRING BOOT Joram Barrez @jbarrez joram.barrez@alfresco.com github.com/jbarrez
  2. W H Y W O R K F L O

    W ?
  3. Activiti is a platform for executing workflows or business processes

  4. A business process, you say?

  5. 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
  6. 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
  7. Why would I execute those 'pictures'? Business  Processes  automated Metrics

    Optimization
  8. 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
  9. 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
  10. 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 !
  11. Activiti is global

  12. 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
  13. Activiti is ready for your enterprise • Commercial support by

    • Partner ecosystem • Enterprise Activiti Suite offering • SaaS : activiti.alfresco.com • Try it today! • On premise
  14. Enough jibber-jabber, show me code! • Finding a good business

    process is hard • Always company/industry specific ! • Introducing the Photo Service
  15. T H E P R O C E S S

    E N G I N E
  16. THE “D O G I F I C AT I

    O N ” P R O C E S S
  17. http://knowyourmeme.com/memes/doge T H E G L O RY O F

    D O G E
  18. + + = S T E P 1 : U

    P L O A D I M A G E @ / c l i e n t
  19. S T E P 2 : S E E I

    T I N / m o n i t o r
  20. T H E P R O C E S S

    E N G I N E
  21. M A N A G I N G H U

    M A N 
 TA S K S
  22. 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
  23. T H E R E S T A P I

  24. A C T I V I T I A C

    T U ATO R E N D P O I N T S
  25. 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 !
  26. @starbuxman @springcentral jlong@pivotal.io github.com/joshlong References activiti.org spring.io/ start.spring.io Questions? Josh

    Long (⻰龙之春) @starbuxman jlong@pivotal.io github.com/joshlong Joram Barrez @jbarrez joram.barrez@alfresco.com github.com/jbarrez