In footnote 3 the author says, "it is both reasonable and absolutely necessary for a project to have the most critical parts of the organisation of the codebase being designed upfront".<p>Is that so? Why? Where is the evidence?<p>Let me counter with a quote from Fred Brooks Jr.: "..plan to throw one away; you will, anyhow."