Knowledge, not contruction

Building sofware systems is about collecting and encoding knowledge. And both are required to build a succesful system. Metholodgy will help you in collecting the right knowledge, and good designers and design practices will help in encoding that the right way.

Creating software != writing code
It is important to understand that writing lines of code is not what it is about. Any programmer will attest that if you delete a piece of code they wrote, that had been tested and found correct, it will take only a fraction of the time initially spent to re-create the code. (Ignoring errors due to imperfect memory of the programmer.) The real work went into gathering the knowledge needed to write the code

An inherent property from software is that at the start, you do not know most of the information you need to build the system. A good methodology will help you uncover the most vital information first, allowing you to reduce your risks, in turn reducing the amount of unforseen resources that might be required.