The 7 sins of workflow

195 Aufrufe

Veröffentlicht am

Slides from my talk at JFokus in Stockholm about the 7 sins of workflow and Java

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

The 7 sins of workflow

  1. 1. The 7 sins of workflow and rules in Java Bernd Rücker | bernd.ruecker@camunda.com | @berndruecker
  2. 2. The 7 sins of workflow and rules in Java Bernd Rücker | bernd.ruecker@camunda.com | @berndruecker 3
  3. 3. What is workflow? *aka known as business process management
  4. 4. Example * Modeled in BPMN = ISO Standard for modeling and execution
  5. 5. More realistic examples
  6. 6. Challenges Human task management Service orchestration Events , e.g. timers
  7. 7. Challenges Asynchronous communication
  8. 8. What you need State Long running proceses Timeout management Monitoring & Alarming
  9. 9. What you need State Long running proceses Timeout management Monitoring & Alarming What you want Visibility
  10. 10. The 7 sins of workflow and Java 3 2 4 6 5 7 1
  11. 11. The 7 sins of workflow and Java No engine 3 2 4 5 76
  12. 12. Alarming by management attention
  13. 13. The 7 sins of workflow and Java Homegrown engine No engine Wrong engine 3 4 6 5 7
  14. 14. Typical outcomes ©kallejipp/photocase.com Own DSL, parsing, graphical representation, modeler, persistence, escalation, version management, tooling, … Whole teams maintaining something that always lacks behind
  15. 15. The 7 sins of workflow and Java Zero-code suites Homegrown engine No engine Wrong engine Wrong usage 4 6 5 7
  16. 16. Death by properties panel Script: Please enter your complex code here. (Without IDE support of course!)
  17. 17. BPM Suites By the way, we introduce an own development approach, IDE, version control, user management, reporting, …
  18. 18. Zero code & developers We have a lot of problems! It totally sucks! I hate BPM!
  19. 19. Bernd Rücker Co-founder camunda > 10+ years workflow Technology evangelist @berndruecker bernd.ruecker@camunda.com Camunda Open Source BPM vendor Berlin + San Francisco > 60 employees - growing No venture capitel www.camunda.org
  20. 20. Architecture Cockpit Modeler DB Tasklist Custom App Business Analyst Java API Engine REST API End User Developer Operator
  21. 21. Developer friendly ProcessEngine processEngine = ProcessEngineConfiguration .createStandaloneProcessEngineConfiguration() .setJdbcUrl("jdbc:h2:mem:camunda") .buildProcessEngine(); processEngine.getRepositoryService() .createDeployment() .addClasspathResource("vacation-request.bpmn") .deploy(); ProcessInstance processInstance = processEngine.getRuntimeService() .startProcessInstanceByKey("VacationRequestProcess“, variableMap); 25
  22. 22. Live Demo
  23. 23. What we couldn‘t look at • Automated Testing • Embedded Engine (Spring, Spring Boot, Junit, ...) • Container Integration (Tomcat, WildFly, JBoss, WAS, …) • Tooling (Webapplications, Modeler, …) • Connectivity (REST, SOAP, Messaging, …) • Scalability, Clustering & Performance • Next generation: Microservices, Event Driven Architecture, Serverless, Cloud, … • Polyglott
  24. 24. Get a free poster at out booth Trio of standards
  25. 25. AT&T More than 100 Customers • Finance: Account Opening, Credit Card Provisioning, … • Insurance: Insurance Policy Issue, Claim Settlement, … • Telco: OSS, BSS, … • Media: Digital Content Delivery, … • E-Commerce: Order Execution, Purchasing, …
  26. 26. Visit us at our booth
  27. 27. We can also discuss the 7 sins in detail! Zero-code suites Homegrown engine Granularity bloopers BPM monolith Stakeholders habitat violation Over engineering No engine Wrong engine Wrong usage
  28. 28. Thanks! Any questions? Open source workflow Stockholm https://a248.e.akamai.net/secure.meetupstatic.com/s/i mg/041003812446967856280/logo/svg/logo--script.svg

×