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

"Le vieux monde se meurt, le nouveau monde tard...

Arnaud LEMAIRE
September 20, 2019

"Le vieux monde se meurt, le nouveau monde tarde à apparaître, et dans ce clair-obscur surgissent les monstres" — Agile Pays Basque 2019

Pourquoi est-ce qu'un mouvement créé par les développeurs se voit progressivement abandonné par ceux-ci ?
Comment les signataires du manifestes en viennent à s'opposer à ce que devient l'agilité ?
Qu'est ce qui amène la plupart des entreprises à passer à coté des principes fondamentaux de la culture agile ?
C'est à ces questions et à bien d'autre que j'ai essayé de répondre à travers cette conférence !

Arnaud LEMAIRE

September 20, 2019
Tweet

More Decks by Arnaud LEMAIRE

Other Decks in Programming

Transcript

  1. « Le vieux monde se meurt, le nouveau monde tarde

    à apparaître et dans ce clair-obscur surgissent les monstres » — Gramsci @lilobase
  2. « Apparently, this SCRUM thing is so great, you need

    a person on every team dedicated to forcing the others to do it » @cgosimon
  3. - "Business Agile": Built Upon Sand — R.Jeffries - The

    State of Agile Software in 2018 — M.Fowler - The Tragedy of Craftsmanship — Robert C. Martin - Developers Should Abandon Agile — R.Jeffries - The Failure of Agile — Andy Hunt - Time to Kill Agile — D.Thomas - The agile hangover — S.Mancuso
  4. Before Agile 101 After Project manager Product Owner (Agile Project

    Manager) Estimates in Man/Day Estimates in Points
  5. Before Agile 101 After Project manager Product Owner (Agile Project

    Manager) Estimates in Man/Day Estimates in Points Tracking progress
  6. Before Agile 101 After Project manager Product Owner (Agile Project

    Manager) Estimates in Man/Day Estimates in Points Tracking progress Tracking progress (But it is a nice burn-down chart)
  7. Before Agile 101 After Project manager Product Owner (Agile Project

    Manager) Estimates in Man/Day Estimates in Points Tracking progress Tracking progress (But it is a nice burn-down chart) Production releases every 6 months
  8. Before Agile 101 After Project manager Product Owner (Agile Project

    Manager) Estimates in Man/Day Estimates in Points Tracking progress Tracking progress (But it is a nice burn-down chart) Production releases every 6 months Production release every 6 months (But we have 2 weeks sprints)
  9. Agile 101 6 months after… Tracking velocity Estimating our project

    How do we get better at Refining the backlog
  10. Agile 101 6 months after… Tracking velocity Estimating our project

    How do we get better at Refining the backlog Creating better burn- down charts
  11. Agile 101 6 months after… Tracking velocity Estimating our project

    How do we get better at Refining the backlog Creating better burn- down charts How to sync story in Jira ?
  12. More X to solve X « We need to follow

    the SCRUM guide more strictly »
  13. Creating our burn- down charts Agile 101 6 months after…

    Tracking velocity Estimating our project How do we get better at Refining the backlog
  14. Creating our burn- down charts Agile 101 6 months after…

    Tracking velocity Estimating our project How do we get better at Refining the backlog These are sym ptom s, not causes !
  15. « Most software today is very much like an Egyptian

    pyramid with millions of bricks piled on top of each other, with no structural integrity, just done by brute force and thousands of slaves. » — Alan Kay
  16. « Most software today is very much like an Egyptian

    pyramid with millions of bricks piled on top of each other, with no structural integrity, just done by brute force and thousands of slaves. » — Alan Kay We need to improve their commitment
  17. And the system is not only about the source code

    Stress people people And often their last defense has been taken away
  18. You need very specific and hard to master software design

    foundation Refactoring You’ll need TDD
  19. You need very specific and hard to master software design

    foundation Refactoring You’ll need TDD
  20. You need very specific and hard to master software design

    foundation Refactoring You’ll need TDD
  21. You need very specific and hard to master software design

    foundation Refactoring You’ll need TDD
  22. You need very specific and hard to master software design

    foundation Refactoring You’ll need TDD
  23. You need very specific and hard to master software design

    foundation Refactoring You’ll need TDD
  24. You need very specific and hard to master software design

    foundation Refactoring You’ll need TDD Decoupling
  25. « The conventional definition of management is getting work done

    through people, but real management is developing people through work. » — Agha Hasan Abedi
  26. A = What is the cost to create X ?

    & B = How much did it cost to produce X ? A - B > 0 Management 101
  27. A = What is the cost to create X ?

    & B = How much did it cost to produce X ? A - B > 0 The sacred Provisional budget Management 101
  28. A = What is the cost to create X ?

    & B = How much did it cost to produce X ? A - B > 0 The sacred Provisional budget Management 101 The destroyer of illusions
  29. A = What is the cost to create X ?

    & B = How much did it cost to produce X ? A - B > 0 The sacred Provisional budget Management 101 The destroyer of illusions The feared balance
  30. A = What is the cost to create X ?

    & B = How much did it cost to produce X ? A - B > 0 Management 101
  31. A = What is the cost to create X ?

    & B = How much did it cost to produce X ? A - B > 0 Management 101 But, does it create value for the company ?
  32. A = What is the cost to create X ?

    & B = How much did it cost to produce X ? A - B > 0 Management 101 It’s a risk hedging strategy But, does it create value for the company ?
  33. Scope (cost)
 Resources Time « Hofstadter's Law: It always takes

    longer than you expect, even when you take into account Hofstadter's Law » Management 101
  34. Scope (cost)
 Resources Time « Nine women can't make a

    baby in one month. » Management 101
  35. Scope (cost)
 Resources Time « Nine women can't make a

    baby in one month. » Management 101 Hiring or making, you have to choose
  36. Management 101 Scope (cost)
 Resources Time The Iron Triangle Scope

    = Time x Resources The Iron Triangle is a lie !
  37. Scope (cost)
 Resources Time Quality You have to choose your

    next features carefully. The only thing you can flex
  38. Scope (cost)
 Resources Time Quality You have to choose your

    next features carefully. The only thing you can flex Based on what has the most value for the customer
  39. « The best way to predict the future is to

    implement it. » — Alan Kay
  40. We need a new hedging strategy Making the right product

    And delivering it A non delivered product has a no value !
  41. Validation over guess & illusions Smaller batch Tell smaller lies

    Stop tracking progress, start to experience it
  42. Validation over guess & illusions Smaller batch Tell smaller lies

    Stop tracking progress, start to experience it What about 1 day sprint ?
  43. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution Feedback loops
  44. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Feedback loops
  45. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Type system Feedback loops
  46. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Pair programming Type system Feedback loops
  47. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Pair programming Unit tests Type system Feedback loops
  48. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Pair programming Unit tests System metaphor Type system Feedback loops
  49. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Pair programming Unit tests System metaphor Continuous Integration Type system Feedback loops
  50. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Pair programming Unit tests System metaphor Continuous Integration On site customer Type system Feedback loops
  51. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Pair programming Unit tests System metaphor Continuous Integration On site customer Collective ownership Type system Feedback loops
  52. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Pair programming Unit tests System metaphor Continuous Integration On site customer Collective ownership Acceptance testing Type system Feedback loops
  53. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Pair programming Unit tests System metaphor Continuous Integration On site customer Collective ownership Acceptance testing Type system Planning game Feedback loops
  54. Time Seconds Minutes Hours Days Weeks Statements & methods Classes

    & Interface Design Architecture Features Priorities Solution IDE Pair programming Unit tests System metaphor Continuous Integration On site customer Collective ownership Acceptance testing Type system Planning game Short releases Feedback loops
  55. Predictability comes from technical excellence « The quality of today

    is the productivity of tomorrow » — JB. Dusseaut
  56. A = What is the cost to create X ?

    & B = How much did it cost to produce X ?
  57. A = What is the cost to create X ?

    & B = How much did it cost to produce X ? What our customers need next ? & How do we put it as quickly as possible in front of them ?
  58. A = What is the cost to create X ?

    & B = How much did it cost to produce X ? What our customers need next ? & How do we put it as quickly as possible in front of them ? From Planification to Prioritization
  59. Stop producing specifications without your dev team what goes into

    production is what the developers have understood
  60. If you are not involved in the production process, please

    don’t get involved… TDD, Pair Programming, …