Avoid wasting time accruing and then paying down this technical debt by completing a detailed design first.
7 Ways To Avoid Technical Debt
Ian McKellar
2313
Design is very important, but it’s also done at a stage where you know the least about the problem you are solving and more likely to make incorrect assumptions that lead to technical debt. Since you can’t ship a design document to customers a high level design that details patterns instead is more flexible and more capable of embracing change that will most certainly happen. A lot of stuff will remain unknown until you dig into the actual work and start coding.