20111119 Is Software Evolution really effective? @IAD2011 Rome-IT [ENG]

1,279
-1

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,279
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

20111119 Is Software Evolution really effective? @IAD2011 Rome-IT [ENG]

  1. 1. Anti-IF Campaign:Is Software Evolutionreally effective?Italian Agile DayRoma 19.11.2011Francesco Cirillo • Director, Anti-IF Schoolfrancesco@antiifschool.com • @antiifschool
  2. 2. Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  3. 3. About meFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  4. 4. The Anti-IF Campaign Kent Beck Craig Larmanhttp://www.antiifcampaign.com/join-the-campaign.html Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  5. 5. Code Monsters McCabe Index = 300Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  6. 6. Code Monsters McCabe Index = 300Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  7. 7. Code Monsters McCabe Index = 300Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  8. 8. Is Software Evolution Really Effective? What does software evolution really mean? How much should effective software evolution cost?Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  9. 9. Is Software Evolution Really Effective? What does software evolution really mean? How much should effective software evolution cost?Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  10. 10. Software DevelopmentFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  11. 11. Is this what really happens? Not at all! Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  12. 12. Software LifecyclesRequirement 1 Requirement 1 Architecture NFRRequirement 2 Coding Testing Requirement 2 Analysis Design FRRequirement n Requirement n Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  13. 13. Software LifecyclesRequirement 1 Requirement 1 Architecture NFRRequirement 2 Coding IT#1 Testing IT#1 Requirement 2 Analysis Design FRRequirement n Coding IT#2 Testing IT#2 Requirement n Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  14. 14. Software LifecyclesRequirement 1 Requirement 1 Architecture NFRRequirement 2 [Testing, Coding, Refactoring] IT#1 Requirement 2 Analysis Design FRRequirement n [Testing, Coding, Refactoring] IT#2 Requirement n Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  15. 15. Extension versus ChangeFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  16. 16. Software LifecyclesRequirement 1 Requirement 1 Architecture NFRRequirement 2 [Testing, Coding, Refactoring] IT#1 Requirement 2 Analysis Design FRRequirement n [Testing, Coding, Refactoring] IT#2 Requirement n Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  17. 17. Software LifecyclesRequirement 1 Analysis 1 Architecture NFR 1 Coding 1 Testing 1 Requirement 1 Design FR 1Requirement 2 Analysis 2 Architecture NFR 2 Coding 2 Testing 2 Requirement 2 Design FR 2Requirement n Analysis n Architecture NFR n Coding n Testing n Requirement n Design FR n Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  18. 18. Software LifecyclesRequirement 1 Analysis 1 [Test + Codi ca + Refactoring] 1 [Test + Codi ca + Refactoring] 1 [Test + Codi ca + Refactoring] 1 Testing 1? Requirement 1 Requirement2 Analysis 2 [Test + Codi ca + Refactoring] 2 [Test + Codi ca + Refactoring] 2 [Test + Codi ca + Refactoring] 2 Testing 2? Requirement 2 Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  19. 19. Software LifecyclesRequirement 1 Requirement 1 Architecture NFRRequirement 2 [Testing, Coding, Refactoring] IT#1 Requirement 2 Analysis Design FRRequirement n Requirement 1 Analysis 1 [Test + Codi ca + Refactoring] 1 [Test + Codi ca + Refactoring] 1 [Test + Codi ca + Refactoring] 1 Testing 1? Requirement 1 Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  20. 20. Software Engineering da “Evolutionary Biology” Douglas J. Futuyama 1998, pag 653Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  21. 21. Evolution “In biology the term evolution means the gradual and continuous accumulation of modifications over a sufficiently long period of time in which significant changes manifest in living organisms”. Source WikipediaFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  22. 22. Evolutionary process “It is not the strongest of the species that survives, nor the most intelligent that survives. It is the one that is the most adaptable to change.” Charles DarwinFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  23. 23. What is your strategy?Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  24. 24. 100% Flexible...Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  25. 25. IF-based evolution strategyFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  26. 26. EmergentFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  27. 27. What kind of TDD do you do? Copyright 200-2006 Scott. W. Ambler Add a test [Pass] Run the tests Make a little change [Pass, Development [Fail] continues] Run the tests [Pass, Development stops]Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  28. 28. What is the most effective TDD?Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  29. 29. Evolution & Emergent• These words tell us nothing about what should be done and what should not be done.• They don’t give you a test as to when to do something or how to do it.• They don’t say anything about how that continuous accumulation of modi cations should happen.• They just say that your software can be called evolutionary because it derives from a continuous accumulation of modi cations.Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  30. 30. Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  31. 31. Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  32. 32. Is Software Evolution Really Effective? What does software evolution really mean? mean How much should effective software evolution cost?Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  33. 33. Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  34. 34. Earnings ROI = CostsFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  35. 35. A good startup shouldnot only generate incomebut also have a teamcapable of wiselyreducing its costs.Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  36. 36. How much does it cost?Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  37. 37. How much does...effective Software Evolution cost?Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  38. 38. What about adding similar features Mature Team’s Marginal CostCosts Mature Team’s Evolutionary Marginal Cost For Similar Features Time Francesco Cirillo • Director, Anti-IF School XPDays Germany francesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
  39. 39. Is this what really happens? Not at all! Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  40. 40. Adding new features to our system Evolutionary Marginal CostsCosts Effective Evolutionary Marginal Costs Time Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  41. 41. Pomodoro AppsFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  42. 42. Requirements Pomodoro 1.0 Show a Pomodoro background Set the timer bypressing a button Ring after Total cost: 10.000 € 25 minutes Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  43. 43. Lesson #1 Software Evolution costs too much Francesco: “Would you buy your own software?” App’s Developer: “NO!”Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  44. 44. Is Software Evolution cost effective? NO!Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  45. 45. Too costlyFrancesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  46. 46. Lesson #2 Mature teams cost more 20.000 € Recently formed team Mature team 10.000 €Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  47. 47. Are you really improving your process or feeding your Code Monster? Effectiveness of Investment in Process ImprovementQuality Effort spent on Process Improvement Perceived internal quality of software Time Francesco Cirillo • Director, Anti-IF School Italian Agile Day francesco@antiifschool.com • @antiifschool Roma, 19.11.2011
  48. 48. Would you buy your own software? Software can be built in an evolutionary way. Evolutionary development costs too much. We are not conscious enough of the strategies.Francesco Cirillo • Director, Anti-IF School XPDays Germanyfrancesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
  49. 49. Do you want to be involved? Would you buy your own software? What does the term evolution mean to your team? Would a team less “mature” than yours have lower costs? Consider you have to introduce a second feature that is similar to something you’ve already done. Does it cost less than the rst time you did it? Why? http://www.antiifcampaign.com/2011/11/would-you-buy-your-own-software.htmlFrancesco Cirillo • Director, Anti-IF School XPDays Germanyfrancesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
  50. 50. Do you want to be involved? http://www.antiifcampaign.com/2011/11/would-you-buy-your-own-software.htmlFrancesco Cirillo • Director, Anti-IF School XPDays Germanyfrancesco@antiifschool.com • @antiifschool Karlsruhe, 17.11.2011
  51. 51. Thanks for listening. Questions?Francesco Cirillo • Director, Anti-IF School Italian Agile Dayfrancesco@antiifschool.com • @antiifschool Roma, 19.11.2011

×