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.
1 of 47

Large 24 7 systems and agile soft dev - shanghai aha conference

0

Share

Download to read offline

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Large 24 7 systems and agile soft dev - shanghai aha conference

  1. 1. Large 24 / 7 systems and Agile Soft. Dev. Old story, new story, tips
  2. 2. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Gartner says… • Bimodal IT is the future - 2 distinct IT methodologies in the same company - “Agile IT” teams for fast-changing stuff - “Traditional IT” for doing things right the first time. 2 Euhmm……No!
  3. 3. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Large software projects today • ...are replacing something old for new. • Many of them have single goal: Replace outdated technology with new one. • Many of them are huge investments with long term promises of so called flexibility in future. • ...and if your large project is none of these, then you’re maybe creating a christmas tree.
 Looks nice, but it is dead very soon. • …or your project is small and delivers value 3
  4. 4. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Some nice False Dichotomies (fallacy of the false alternative) 4 “You can’t simply start coding, therefore you always have some up-front design.” “Developers don’t care and are incapable of caring about architecture, because they need to focus on coding” “Agile / Scrum, that is something for frontend apps, not for 24/7 business critical systems” We need to be more Agile We need more architecture “Some things cannot and should not change”
  5. 5. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works The biggest problem in software architecture is that we think we know what we are doing. 5
  6. 6. Large software 6
  7. 7. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Large software projects today 7
  8. 8. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Large software projects today 8
  9. 9. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 9 Great Mosque of Djenné, Mali ruins 1828
  10. 10. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 10 Great Mosque of Djenné rebuilt 1895
  11. 11. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 11 Great Mosque of Djenné 1910
  12. 12. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 12
  13. 13. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 13
  14. 14. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 14
  15. 15. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 15
  16. 16. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 16
  17. 17. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 17
  18. 18. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 18 Everyone is involved
  19. 19. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 19
  20. 20. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works About 7 years ago... 20 Port of Rotterdam, Project HaMIS 1. Replace outdated traffic management system 2. Support the port of Rotterdam expansion 24/7 system for traffic management, transport, environmental safety and crisis management.
  21. 21. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works New (as defined about 6 years ago) 21
  22. 22. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Lots of documents 22 Migration Plan Architecture Vision Operations Vision .... QA Vision Blueprint Reference data Vision
  23. 23. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 23 100+ identified use cases Project Start Architecture Q&A department Architecture with 4 layers & 6 subsystems 6 architects 800+ architectural decisions RUP and Scrum but BPEL process server We just need...
  24. 24. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 24 1 Use Case in 6 months
  25. 25. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works (Re)Started • Ship inspections process • Little risk • Significant business value • Migration stuff completely postponed • Agile / Scrum introduction • One sprint later, useful functions delivered in production 25
  26. 26. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 26
  27. 27. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Optimize the whole 27 Marketing User / Business Requirements gathering Architectu re Planning Analysis Development TestingDelivering ...has a challenge Lead time Department 1 Department 2 Department 3 Department 4 Department 5 Department 6 Department 7 Department 8 Agile team Agile team Agile team Agile team
  28. 28. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Product Vision Box 28
  29. 29. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Self-designed teams 29 See LeSS.works if you want to know more
  30. 30. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Architecting 30 Open space sessions Knowledge sharing Documentation is Wiki filled by “harvesting” the knowledge Standardization is discovered and not predefined Just-in-time just-enough Continuous refactoring towards better design Architecture principles: Simplicity and design for change
  31. 31. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Business processes? 31
  32. 32. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Technical debt 32 So, did we paid this debt back ???
  33. 33. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Continuous Architecting 33
  34. 34. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Things that matter 34 Multilayered Domain- Driven DesignSOA SOAP Frameworks Micro- services Simplicity Business- driven everything
  35. 35. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works What was my role? 35 Management: ”…but who is accountable?”
  36. 36. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Welcome to double legacy 36
  37. 37. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Which path to choose? • Should we do all reporting first in the new system? • Which part of the system should we replace first? • How do we prevent a big bang? • Where to start? • We followed ships in harbour! 37
  38. 38. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 38 Any decision that can be postponed is postponed ...also the migration path …but, this is not easy
  39. 39. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Migration = Strangulation 39 HaMIS (new)IVS (old) User Business event 1 Business event 1 Business event 2 Business event 2 data not yet managed in HaMIS "The most important reason to consider a strangler application over a cut-over rewrite is reduced risk.” - Martin Fowler, StranglerApplication 24/7 system Every 2 weeks in production
  40. 40. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works We banned terms: Generic or Reusable on every level 40
  41. 41. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works We banned premature generalisation 41 Why Windows 10 instead 9 ??? “Microsoft dev here, the internal rumours are that early testing revealed just how many third party products that had code of the form if(version.StartsWith("Windows 9")) { / * 95 and 98 */ } else { and that this was the pragmatic solution to avoid that.”
  42. 42. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Aren’t you creating a mess? • One team delivers the simplest possible solution • Another team delivers another similar even simpler possible solution :-) • ...and maybe third one. • Then, we get together and talk about what you learned and which one is really the best in this context. 42
  43. 43. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Examples • Data model with production data is gradually extended and continually refactored • IBM Websphere replaced by JBoss • User interface redesigned 2 or more times • SOAP replaced by binary Hessian • Core domain model concepts (gradually) redesigned: inspection checklist, vessel visit vs. vessel 43
  44. 44. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Lessons learned • Never stop delivering business value. • Deal with migration gradually / strangulation • Everything in software can be soft even data / domain model! • Trust in business / context driven approach above standard / generic solutions • Involve everyone to solve complex problems • Don’t get stuck in complexities of architectural B.S. 44
  45. 45. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 6 years later 45 Then 6 months delivery time for large features “Documents”-based collaboration business / IT Dedicated operations team - 6 people + on average 5 developers fixing issues full time Many architects, analysts, QA, “coordinators” Very displeased business Now More than 100 sprints every 2 weeks new features / intensive collaboration No dedicated operations team Production issues involving code change solved in 1 hour! One of 4 development teams responsible for operations, 30% of time actually spend on operations. Architects, analysts, QA, OPs,… part of cross-functional teams
  46. 46. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works 46 “Everybody, all together, early on” James O. Coplien
  47. 47. Viktor Grgic @vgrgic Odd-e Hong Kong Blog: leanarch.eu odd-e.com http://less.works Want to know more?: less.works Blog: leanarch.eu Tomorrow: Collaborative Visualisation workshop 47

×