Discuss your viewpoints regarding the question of incurring technical debt during projects.
The notion of taking on “technical debt” during a project may seem perfectly natural to some stakeholders, but extremely controversial to others. Kent Beck emphasizes the value of evolutionary design highly in Extreme Programming. Effort to create an ultimate, perfect design before the creation of work products is begun is shunned in XP in favor of starting with a simple design that is continually “refactored” as needed during the project. Technical debt can be said to be taken on whenever a less than optimal design is implemented in a product.
Matt Stephens and Doug Rosenberg vigorously attacked the idea of evolutionary design (among many other XP practices) in their 2003 book Extreme Programming Refactored: The Case Against XP. They argued that investing the time to create a robust product design is well worth the time, as it would eliminate the need to continually refactor an inferior product during its creation.
In this forum discussion, students are asked to debate whether it is better to get design right the first time or allow for effort to improve design incrementally. You may draw on course content, personal experience and materials you find in NYU’s library or the Internet to draw out facets of this argument and state your personal beliefs. You should feel free to qualify your statements with conditions as you see fit.
Students will be evaluated based on how well they state and support their opinions, including the description of personal anecdotes or cases drawn from research. Students are also expected to engage each other by commenting on each other’s posts. You can rest assured that your instructor will be quite vocal in this discussion as well!

