Successfully reported this slideshow.
Your SlideShare is downloading. ×

Reshaping enterrprise software

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
La fatina dei denti
La fatina dei denti
Loading in …3
×

Check these out next

1 of 90 Ad

Reshaping enterrprise software

Download to read offline

Scrivere software per il business si riduce essenzialmente a due problemi. Capire il vero problema da risolvere, e trovare soluzioni interessanti, senza trasformare la cosa in un percorso ad ostacoli.

Scrivere software per il business si riduce essenzialmente a due problemi. Capire il vero problema da risolvere, e trovare soluzioni interessanti, senza trasformare la cosa in un percorso ad ostacoli.

Advertisement
Advertisement

More Related Content

Advertisement

Similar to Reshaping enterrprise software (20)

Advertisement

Recently uploaded (20)

Reshaping enterrprise software

  1. 1. avanscoperta Reshaping Enterprise Software @ziobrando
  2. 2. About me Faccio un lavoro che mia madre non capisce running www.avanscoperta.it In grado di modellare qualsiasi cosa con post-it, pennarelli e rotolone. Chiamo questa “cosa”
  3. 3. Il piano Un bel problema a monte Un altro meta-problema a monte Un po’ di buone idee Una … di conseguenze
  4. 4. 1) Quick recap of Theory of Constraints Le “Basi” e poco piu'
  5. 5. Bottleneck Vincolo principale per il throughput del sistema
  6. 6. Bottleneck: Il vincolo principale limita le prestazioni dell’intero sistema. (non e’ che la freccia si allarga, e’ che mi e’ venuta storta)
  7. 7. Strategie per il bottleneck Focus >>> Tutto il resto è subordinato Miglioramento continuo anche piccoli miglioramenti contano … mentre ci occupiamo dei GROSSI miglioramenti.
  8. 8. Non riesco a trovare il cuore…
  9. 9. Non riesco a trovare il cuore… … potremmo concentrarci sulle unghie nel frattempo…
  10. 10. Migliorare il resto del sistema potrebbe essere inutile o Controproducente Ma nessuno lo ammettera’ in una grande azienda
  11. 11. Devo avere una visione di sistema per essere sicuro che il vincolo sia reale
  12. 12. Warning #TOCOT -> ottimizzata per la produzione Esseri umani != risorse No allocazione al 100% Sistema adattivo complesso
  13. 13. Non tutti i progetti software sono uguali. Sarebbe bello…
  14. 14. Non core: Spese principalmente legate al tempo Rischi legati al malfunzionamento Risultati limitati a priori 100 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 X Axis YAxis Cost Value <- area del gold plating
  15. 15. core: Spese principalmente legate al tempo Rischi legati a… Risultati non limitati a priori 100 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 X Axis YAxis Cost Value
  16. 16. core: Spese principalmente legate al tempo Rischi legati a… Risultati non limitati a priori … ne parliamo dopo! 100 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 X Axis YAxis Cost Value
  17. 17. Ma certi punti del sistema sono piu’ sensibili alle regolazioni
  18. 18. Il collo di bottiglia E’ la zona erogena del sistema
  19. 19. Il collo di bottiglia E’ la zona erogena del sistema …e forse questa sara’ l’unica cosa che ricorderete del talk
  20. 20. Altrove agile-meh, scrum-but etc. etc. principalmente ‘tracking’ vincoli di budget
  21. 21. Sul collo di bottiglia… Il problema di solito non e’ banale la soluzione puo’ essere raggiunta per esperimenti siamo quasi sicuramente in un sistema adattivo complesso c’e’ un sacco di roba da imparare #NoEstimates #DDDesign #LeanStartup #Complexity
  22. 22. 2) Il meta-collo di bottiglia Non ci facciamo mancare nulla…
  23. 23. Dan North https://dannorth.net/2010/08/30/introducing- deliberate-discovery/ “Ignorance is the single greatest impediment to throughput.”
  24. 24. “Software development is a learning process Working code is a side effect” io, un botto di volte…
  25. 25. Dan North https://dannorth.net/2010/08/30/introducing- deliberate-discovery/ “Learning is the bottleneck”
  26. 26. Se l’apprendimento e’ il collo di bottiglia… sto facendo tutto il possibile?
  27. 27. Il regno del product owner Un backlog pieno di items… …il cui significato un giorno risultera’ chiaro.
  28. 28. Product Owner “nel mezzo” Necessario per definire le Priorita’ Non per digerire la conoscenza … c’era davvero bisogno di un collo di bottiglia artificiale?
  29. 29. Se l’obiettivo e’ IMPARARE…
  30. 30. Creature immaginarie
  31. 31. Creature immaginarie
  32. 32. Creature immaginarie
  33. 33. Gli esperti sono esperti del proprio dipartimento, non necessariamente del business
  34. 34. Gerarchie e Silos
  35. 35. Che forma ha la conoscenza?
  36. 36. La specialita’ della casa
  37. 37. Big Picture Workshop Invitiamo le persone giuste Forniamo uno spazio di modellazione illimitato superficie, pennarelli, post-it Modelliamo il sistema partendo dagli eventi di dominio
  38. 38. Environment setup
  39. 39. …lungo una linea temporale Qualche trucco da facilitatore ed iniziamo a modellare a…
  40. 40. Velocita’ smodata!!!
  41. 41. Explore domain Events
  42. 42. Catturiamo gli Hotspots che salteranno fuori, comunque!
  43. 43. continuiamo la caccia…
  44. 44. Outcome (big Picture): L’intera linea di business visible apprendimento massivo aree critiche visualizzate.
  45. 45. Non siamo soli: User Story Mapping
  46. 46. Non siamo soli Impact Mapping
  47. 47. … E’ che quando metti le persone assieme, poi si parlano…
  48. 48. EventStorming unisce lean e Theory of constraints allo sviluppo Software e a Domain-Driven Design
  49. 49. EventStorming blends lean and Theory of constraints into Software Development and Domain-Driven Design
  50. 50. EventStorming blends lean and Theory of constraints into Software Development and Domain-Driven Design
  51. 51. Che faccia ha il Bottleneck?
  52. 52. Guardiamoci meglio
  53. 53. Srotoliamolo I processi espongono una struttura ripetibile
  54. 54. Srotoliamolo … microservices? :-)
  55. 55. Piu' in dettaglio…
  56. 56. Let’s look deeper Aggregate Policy / Process Domain Event Command External System
  57. 57. Let’s look deeper Qui e’ dove il sistema prende le decisioni: Aggregate Policy / Process Domain Event Command External System
  58. 58. Let’s look deeper Qui e’ dove il sistema prende le decisioni: Decisioni semplici dentro aggregati (piccole macchine a stati) Aggregate Policy / Process Domain Event Command External System
  59. 59. Let’s look deeper Qui e’ dove il sistema prende le decisioni: Decisioni semplici dentro aggregati (piccole macchine a stati) Aggregate Policy / Process Domain Event Command External System
  60. 60. Let’s look deeper Qui e’ dove il sistema prende le decisioni: Decisioni semplici dentro aggregati (piccole macchine a stati) Le decisioni reattive stanno dentro le “policy”. Ogni volta che… Aggregate Policy / Process Domain Event Command External System
  61. 61. Let’s look deeper Qui e’ dove il sistema prende le decisioni: Decisioni semplici dentro aggregati (piccole macchine a stati) Le decisioni reattive stanno dentro le “policy”. Ogni volta che… Aggregate Policy / Process Domain Event Command External System
  62. 62. Let’s look deeper Qui e’ dove il sistema prende le decisioni: Decisioni semplici dentro aggregati (piccole macchine a stati) Le decisioni reattive stanno dentro le “policy”. Ogni volta che… Aggregate Policy / Process Domain Event Command External System #BusinessProcesses #Transactions #SWArchitecture
  63. 63. Let’s look deeper Command/ Decision User/ Actor/ Persona/… User Interface
  64. 64. Let’s look deeper Qui e’ dove e’ l’utente a prendere decisioni: Command/ Decision User/ Actor/ Persona/… User Interface
  65. 65. Let’s look deeper Qui e’ dove e’ l’utente a prendere decisioni: …che sono basate sull’esperienza del mondo reale, e sulle informazioni visibili. Command/ Decision User/ Actor/ Persona/… User Interface
  66. 66. Let’s look deeper Qui e’ dove e’ l’utente a prendere decisioni: …che sono basate sull’esperienza del mondo reale, e sulle informazioni visibili. Command/ Decision User/ Actor/ Persona/… User Interface #UX #FrontEndDevelopment #UIDesign
  67. 67. Let’s look deeper Domain Event Read Model User Interface
  68. 68. Let’s look deeper Domain Event Read Model User Interface Qua e’ dove trasformiamo il dato grezzo in qualcosa di comprensibile per l’utilizzatore.
  69. 69. Let’s look deeper Domain Event Read Model User Interface Qua e’ dove trasformiamo il dato grezzo in qualcosa di comprensibile per l’utilizzatore. #BusinessIntelligence #Readability
  70. 70. And the winner is…
  71. 71. And the winner is… La natura del bottleneck non puo’ essere decisa a priori
  72. 72. Purtroppo queste prospettive sono spesso compartimentate Il primo che arriva, da le specifiche agli altri
  73. 73. peccato che imparare per sentito dire, non sia il massimo…
  74. 74. Una sola piattaforma Molteplici punti di vista E’ “inclusiva”!
  75. 75. Possiamo auto- organizzarci solo in sistemi che comprendiamo
  76. 76. una piattaforma per l’auto organizzazione in sistemi complessi
  77. 77. Ma e’ un casino! 1/2 giornata per un Big Picture (timeboxed comunque) 3 giorni per modellare in dettaglio tutti i flussi di www.soisy.it Workshop fino a 35 persone (poi vediamo…)
  78. 78. purtroppo faccio le foto solo alla fine… :-(
  79. 79. Takeaways
  80. 80. https://twitter.com/jbrains/status/776888609127460864 https://www.dropbox.com/s/z5zmw78w01suokf/Screenshot %202016-09-16%2023.07.04.png?dl=0
  81. 81. https://twitter.com/jbrains/status/776888609127460864 https://www.dropbox.com/s/z5zmw78w01suokf/Screenshot %202016-09-16%2023.07.04.png?dl=0
  82. 82. Visione d’insieme per individuare il vincolo business Imparare e’ il vincolo sulla risoluzione del problema. collaborative modelling aiuta su entrambi i fronti
  83. 83. Actions EventStorming per capire, insieme Impact Mapping & User Story Mapping per scegliere la direzione Esperimenti per risolvere Collaborazione per progettare Architetture ad eventi per implementare …serve altro?
  84. 84. References • www.eventstorming.com • EventStormers on Google+ • https://plus.google.com/u/0/communities/ 113258571348605620818 • LeanPub book in progress: • http://leanpub.com/introducing_eventstorming • Blog: • https://medium.com/@ziobrando • http://ziobrando.blogspot.com • Twitter: @ziobrando • Trainings & Workshop facilitation: • http://www.avanscoperta.it

×