Advertisement
Advertisement

More Related Content

Advertisement
Advertisement

Prototypes are Forever - XP 2010 - EN

  1. Prototypes are forever: Evolving from a prototype project to a full-featured system Alexandre Freire Fernando Freire Hugo Corbucci Mariana Bravo
  2. Introduction Why should we throw our prototypes away?
  3. Introduction Why is technical debt considered harmful?
  4. Context + 4 developers 80 pair hours per iteration = 3 months prototype RCP project
  5. Context and + on m4 developers ti e o ra 80 pair hours per iteration o ad pl or ex y f l: er = a v o o G c dis 3 months prototype RCP project
  6. Iteration 1 - 25 commits - Jun/2008
  7. Practices No full test coverage → Only crucial tests
  8. Practices Invest in Continuous Deployment (hourly builds)
  9. Practices “Buggy” software for well-behaved users Client priorization: ● No corner-cases ● No validation ● No verification ● No exception handling ● Lots of new features
  10. Iteration 4 - 211 commits - Oct/2008
  11. Ready for demo?
  12. Ready for demo? No!
  13. Ready for demo? Needs text editor
  14. Ready for demo? Needs text editor Deadline: Dec/2008 Complete focus on the editor
  15. Iteration 6 - 352 commits - Dec/2008
  16. Changing the rules Demo cancelled!
  17. Changing the rules Demo cancelled! ● Less pressure → Fight against technical debt ● January 2009: a whole iteration dedicated to refactoring
  18. Changing the rules ● 6 months evolving editor features ● A complex editor means other less new features ... ● Still no demo
  19. Iteration 12 - 937 commits - Jun/2009
  20. This is no longer a prototype Dedicated study group of dramaturgy experts ● More ideas for new features ● Investment in UX
  21. This is no longer a prototype Outsourcing editor so team can focus on new features
  22. Tracking Technical Debt
  23. Tracking Technical Debt
  24. Difficulties GUI testing Loss of a team member
  25. Difficulties Prioritizing integration VS new features ● Integration with outsource team ● No steady rhythm
  26. New direction “I've invested too much! This software is mine.”
  27. New direction “I've invented something new.”
  28. New direction Focus on quality Aim for complete, bug-free features
  29. Iteration 23 - 2005 commits - now
  30. Conclusion No need to throw away prototypes: just write tests for crucial elements and refactor mercilessly
  31. Conclusion Technical debt is acceptable if kept under control and software delivers value for client
  32. Conclusion Throw away if all you wanted was to gain knowledge
  33. Questions? contact@agilbits.com.br
Advertisement