Overview of the Software Development Process
For quite a few years, we’ve been highly exposed to the idea that writing software is easy, pleasant, and fun. You click this, you drag that, and the tool will write the code for you. You "declare" what you want, and the award-winning tool will do it for you. Admittedly, in this scenario everybody could gain the rank of architect, and the burden of writing code can be entirely delegated to the tool—aptly named the wizard.
Not all software is the same.
Writing a filing system to track the movies you’ve rented from Blockbuster is different from writing a line-of-business application to run a company. You probably don’t need to work on an architecture to build a syndication reader; you probably need more ...