In various places I've seen the claim that by designing a system up-front, you can significantly reduce development time. I.e. by spending an hour designing you can save a week coding. My problem is that I have never seen a situation where I found this to be true. So I want to know of any examples out there that people have where this would be true:
So:
- What sort of problem arose during coding? (or was avoided?)
- How could you have avoided (or did avoid) the problem by spending more time doing design?
- Why was it (or would it have been) hard to fix the problem in the code?