Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

CamundaCon 2020 Keynote - The Return of Process Automation

Slides from my keynote at CamundaCon Live 2020.2

Title: The Return of Process Automation!
Abstract: This keynote will foster your understanding of how (business) processes can generally be implemented and monitored. I will compare different approaches, from batches over streaming, to workflow engines. You will understand the impact on agility and what is different in modern architectures, as well as learning about choreography and orchestration. You will learn about criteria that have crystalized as success factors in many real-life scenarios.

You will also understand the failures of BPM and process automation tooling in the past, which often lead to skepticism amongst different stakeholders.

Related Books

Free with a 30 day trial from Scribd

See all
  • Be the first to comment

CamundaCon 2020 Keynote - The Return of Process Automation

  1. 1. The Return of Process Automation @berndruecker
  2. 2. Ehm, I am sorry, but… Was it ever really gone? @berndruecker
  3. 3. Wrong Perception of „BPM“ (Business Process Management) @berndruecker
  4. 4. Google for „BPM Frameworks“
  5. 5. Google for „low code“
  6. 6. Models From the Wild…
  7. 7. Models From the Wild…
  8. 8. Models From the Wild… +
  9. 9. Wrong Perception of BPM Complex, strategic enterprise frameworks unrealistic low-code promises proprietary centralized & monolithic unflexible @berndruecker painful
  10. 10. https://www.theguardian.com/technology/2018/apr/ 24/amazon-jeff-bezos-customer-data-industries
  11. 11. Change is the only constant „ We don‘t know what we will need tomorrow. But we do know that we will need something. We have to be able to move quickly! CIO of a German insurance company in 2019 @berndruecker
  12. 12. And you?
  13. 13. Credit Card Handling Payment RESTOrder Fulfillment REST DBPaymentId Amount Status 1 100 $ Collected 2 125 $ Open Reporting of overdue payments {script} Fixing open payments Scheduler to process open payments Dang it – we need a date! …to be continued…@berndruecker
  14. 14. 15 Using a workflow engine instead Workflow Engine Scheduler Durable State Glue Code Credit Card Service REST Process Definition Workflow Engine: Is stateful Can wait Can retry Can escalate Can compensate Provides visibility @berndruecker
  15. 15. 16 Process Automation @berndruecker
  16. 16. 17 Solve Problems Long Running Technical Process Automation @berndruecker
  17. 17. Example Order Payment Credit Card Retrieve Payment @berndruecker
  18. 18. Example Order Payment Credit Card Retrieve Payment Rejected @berndruecker
  19. 19. Example Order Payment If the credit card was rejected, the customer can provide new details Credit Card Retrieve Payment Rejected Rejected @berndruecker
  20. 20. Payment failed Who is responsible? Order Payment If the credit card was rejected, the customer can provide new details Credit Card Retrieve Payment Rejected Payment received @berndruecker
  21. 21. Payment failed Long running services Order Payment Credit Card Retrieve Payment Rejected Payment received @berndruecker
  22. 22. Long running services Order Payment Credit Card @berndruecker
  23. 23. 25 Solve Problems Long Running Technical Business Process Automation @berndruecker
  24. 24. 26 Extending Payment Options @berndruecker
  25. 25. 27 Extending Payment Options begin commit {local TX} Customer Credit Service begin commit {local TX} Credit Card Service @berndruecker
  26. 26. Distributed transactions using compensation * Compensation @berndruecker
  27. 27. 29 Solve Problems Long Running Technical Business Transactions, Saga Process Automation @berndruecker
  28. 28. Graphical models? @berndruecker
  29. 29. Clemens Vasters Architect at Microsoft http://vasters.com/archive/Sagas.html
  30. 30. Clemens Vasters Architect at Microsoft http://vasters.com/archive/Sagas.html
  31. 31. Living documentation for long-running behaviour @berndruecker
  32. 32. Biz Dev improve communication improve communication Ops @berndruecker
  33. 33. Biz Dev Leverage state machine & workflow engine Living documentation Visibility in testing Operate with visibility and context Understand and discuss business processes Evaluate optimizations in-sync with implementation improve communication improve communication Ops @berndruecker
  34. 34. Visual HTML reports for test cases @berndruecker
  35. 35. Operations @berndruecker
  36. 36. Saga Using Step Functions https://theburningmonk.com/2017/07/applying-the-saga-pattern-with-aws-lambda-and-step-functions/
  37. 37. 39 Solve Problems Long Running Technical Business Transactions, Saga Visibility Process Automation @berndruecker
  38. 38. 40 „But I don‘t care about technical problems!“ Is this reaction technical? Would Jeff Bezos say that? @berndruecker
  39. 39. 41 Time-to-value Customer Experience Business Agility FacilitateBusinessOutcome Solve Problems Long Running Technical Business Transactions, Saga Visibility Process Automation @berndruecker
  40. 40. Decide on fraud Find suspicous payments Batch Workflow e.g. 1 am Batches are orthogonal to the real workflow Items flow along the workflow as they come in e.g. 11 pm Act Batches are time delayed (high latency) @berndruecker
  41. 41. Decide on fraud Find suspicous payments Streaming But Stream processors are still orthogonal to the real workflow Act Streaming adds real-life capabilities and removes latency Workflow Items flow along the workflow as they come in @berndruecker
  42. 42. Let‘s talk about Event-Driven Architecture
  43. 43. Example Checkout Payment Inventory Shipment @berndruecker
  44. 44. Order Placed Payment Received Goods Shipped Notification Event-driven @berndruecker Checkout Payment Inventory Shipment
  45. 45. Peer-to-peer event chains Checkout Payment Inventory Shipment Order placed Payment received Goods shipped Goods fetched @berndruecker
  46. 46. Peer-to-peer event chains Checkout Payment Inventory Shipment Order placed Payment received Goods shipped Goods fetched @berndruecker
  47. 47. Phil Calcado at QCon NYC 2019
  48. 48. Notification Checkout Payment Inventory Shipment Pinball Machine Architecture „What the hell just happened?“ @berndruecker
  49. 49. Peer-to-peer event chains Checkout Payment Inventory Shipment Order placed Payment received Goods shipped Goods fetched Fetch the goods before the payment @berndruecker
  50. 50. Peer-to-peer event chains Checkout Payment Inventory Shipment Fetch the goods before the payment Goods fetched Order placed Payment received Goods shipped @berndruecker
  51. 51. What we wanted Photo by Lijian Zhang, under Creative Commons SA 2.0 License and Wikimedia Commons / CC BY-SA 4.0 @berndruecker Choreography
  52. 52. Why is it so tempting? Service A Event Bus A B Service B C Service C D E F Service D G Service … Service … Service … Service … Service … Service … Service … @berndruecker
  53. 53. Why is it so tempting? Service A Event Bus A B Service B C Service C D E F Service D G Service … Service … Service … Service … Service … Service … Service … Adding is easy! You can „buy“ a shorter initial time-to-value by choreography. It yields in technical debt. @berndruecker
  54. 54. Order Orchestration Checkout Payment Inventory ShipmentPayment received Order placed Retrieve payment @berndruecker Decide about responsibility!
  55. 55. Order Orchestration Checkout Payment Inventory Shipment Order placed Retrieve payment It can still be messaging! @berndruecker
  56. 56. Order Checkout Payment Inventory Shipment Stateful orchestration This orchestration requires state @berndruecker
  57. 57. Order Checkout Payment Inventory Shipment @berndruecker
  58. 58. Now it is easy to change the process flow @berndruecker
  59. 59. Processes are domain logic that live inside boundaries @berndruecker
  60. 60. 66 Time-to-value Customer Experience Business Agility OrchestrateAnything FacilitateBusinessOutcome Solve Problems Long Running Technical Business Transactions, Saga Visibility Process Automation @berndruecker
  61. 61. 67 Orchestrate anything Payment This might be a microservice, an RPA bot, a human, a device, a function or any other software component @berndruecker
  62. 62. 68 Time-to-value Customer Experience Business Agility Developer friendly Business ITCollaboration Open Architecture OrchestrateAnything FacilitateBusinessOutcome Usetherighttooling Solve Problems Long Running Technical Business Transactions, Saga Visibility Process Automation @berndruecker
  63. 63. 69 Want to learn more? https://learning.oreilly.com/get-learning/?code=PPAER20
  64. 64. 70
  65. 65. Thank you! @berndruecker
  66. 66. Questions?

×