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

Process Driven Applications with Spring Boot

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.

Josh Long

September 24, 2014

More Decks by Josh Long

Other Decks in Technology


  1. 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
  2. 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
  3. 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
  4. 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
  5. 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 !
  6. 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
  7. Activiti is ready for your enterprise • Commercial support by

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

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

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

    O N ” P R O C E S S
  11. + + = S T E P 1 : U

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

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

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

    M A N 
  15. 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
  16. A C T I V I T I A C

    T U ATO R E N D P O I N T S
  17. 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 !