It’s easy, while in paper and pen (or any other code equivalent that you don’t equivalent to you), in order to eclipse, become a victim of the terrible YAGNI . How many of us have carefully developed some “sexual” features that have never been used? (Raises a hand. Hands.)
Small iterative steps performed by the test, and frequent refactoring - let the code tell you what it wants.
Most of my projects start with the only certainty that we will not finish where we are thinking. Therefore, spending a lot of time on Big Up-Front Design (or Big Design Up Front , if you prefer) is wasteful - it’s better to start with the first thing we want to do and see where we will end.
It depends on where you plan to complete the design. A few years ago I read an article that presented the idea that coding is a design, or for Big Process fans, at least it's an external design. This is true for me and forever changed the way I looked at the stages of the development process. Of course, I was just looking for crazy things. Can i find it? May I hell. Perhaps I dreamed of an article, and all this is my own idea. Yes it will.
source share