Prototypes are forever:Evolving from a prototype project to a full-featured          system      Alexandre Freire      Fer...
IntroductionWhy should we throw our prototypes             away?
IntroductionWhy is technical debt considered           harmful?
Context        +              4 developers                 80 pair hours per iteration         =3 months prototype RCP pro...
Context                     and          +                   on m4 developers                 ti e                        ...
Iteration 1 - 25 commits - Jun/2008
PracticesNo full test coverage → Only crucial tests
PracticesInvest in Continuous Deployment (hourly builds)
Practices    “Buggy” software for well-behaved users                 Client priorization:●   No corner-cases●   No validat...
Iteration 4 - 211 commits - Oct/2008
Ready for demo?
Ready for demo?     No!
Ready for demo?Needs text editor
Ready for demo?   Needs text editor    Deadline: Dec/2008Complete focus on the editor
Iteration 6 - 352 commits - Dec/2008
Changing the rules Demo cancelled!
Changing the rules                Demo cancelled!●   Less pressure → Fight against technical debt●   January 2009: a whole...
Changing the rules●   6 months evolving editor features●   A complex editor means other less new    features    ...●   Sti...
Iteration 12 - 937 commits -          Jun/2009
This is no longer a prototype            Dedicated study group            of dramaturgy experts●   More ideas for new feat...
This is no longer a prototypeOutsourcing editor so team can focus          on new features
Tracking Technical Debt
Tracking Technical Debt
Difficulties     GUI testingLoss of a team member
DifficultiesPrioritizing integration VS new features●   Integration with outsource team●   No steady rhythm
New direction  “Ive invested too much!  This software is mine.”
New direction“Ive invented something new.”
New direction         Focus on qualityAim for complete, bug-free features
Iteration 23 - 2005 commits - now
ConclusionNo need to throw away prototypes:just write tests for crucial elements     and refactor mercilessly
ConclusionTechnical debt is acceptable if kept under control     and software delivers value for client
ConclusionThrow away if all you wanted was to gain              knowledge
Questions?contact@agilbits.com.br
Upcoming SlideShare
Loading in...5
×

Prototypes are Forever - XP 2010 - EN

327

Published on

Presents the benefits and dangers of prototypes. We're talking about creating prototypes to speed up the validation of an idea but being careful enough not to keep the quick and crappy result as the end result of work.

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
327
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Prototypes are Forever - XP 2010 - EN

  1. 1. Prototypes are forever:Evolving from a prototype project to a full-featured system Alexandre Freire Fernando Freire Hugo Corbucci Mariana Bravo
  2. 2. IntroductionWhy should we throw our prototypes away?
  3. 3. IntroductionWhy is technical debt considered harmful?
  4. 4. Context + 4 developers 80 pair hours per iteration =3 months prototype RCP project
  5. 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 dis3 months prototype RCP project
  6. 6. Iteration 1 - 25 commits - Jun/2008
  7. 7. PracticesNo full test coverage → Only crucial tests
  8. 8. PracticesInvest in Continuous Deployment (hourly builds)
  9. 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. 10. Iteration 4 - 211 commits - Oct/2008
  11. 11. Ready for demo?
  12. 12. Ready for demo? No!
  13. 13. Ready for demo?Needs text editor
  14. 14. Ready for demo? Needs text editor Deadline: Dec/2008Complete focus on the editor
  15. 15. Iteration 6 - 352 commits - Dec/2008
  16. 16. Changing the rules Demo cancelled!
  17. 17. Changing the rules Demo cancelled!● Less pressure → Fight against technical debt● January 2009: a whole iteration dedicated to refactoring
  18. 18. Changing the rules● 6 months evolving editor features● A complex editor means other less new features ...● Still no demo
  19. 19. Iteration 12 - 937 commits - Jun/2009
  20. 20. This is no longer a prototype Dedicated study group of dramaturgy experts● More ideas for new features● Investment in UX
  21. 21. This is no longer a prototypeOutsourcing editor so team can focus on new features
  22. 22. Tracking Technical Debt
  23. 23. Tracking Technical Debt
  24. 24. Difficulties GUI testingLoss of a team member
  25. 25. DifficultiesPrioritizing integration VS new features● Integration with outsource team● No steady rhythm
  26. 26. New direction “Ive invested too much! This software is mine.”
  27. 27. New direction“Ive invented something new.”
  28. 28. New direction Focus on qualityAim for complete, bug-free features
  29. 29. Iteration 23 - 2005 commits - now
  30. 30. ConclusionNo need to throw away prototypes:just write tests for crucial elements and refactor mercilessly
  31. 31. ConclusionTechnical debt is acceptable if kept under control and software delivers value for client
  32. 32. ConclusionThrow away if all you wanted was to gain knowledge
  33. 33. Questions?contact@agilbits.com.br
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×