HomePractices The Art Of Software Development (part 1): Understanding Need
The Art Of Software Development (part 1): Understanding Need
Wondering why your software projects are always late, buggyand over budget? Well, this might come as a surprise to you, butprofessional software development involves a lot more than just writingcode. Over the course of this five-part tutorial on software developmentprocesses and practices, find out what you've been missing, and how youcan streamline your development to be more efficient and effective. Thisintroductory article discusses the analysis and documentation ofcustomer requirements.
This may be true when you're in love. However, if you're a novice developer who's just been told to implement a complicated Web application, ignorance is most definitely not bliss. Ignorance, in fact, can seem like a particularly long day in hell...with the heat turned up high.
When you're just starting out with a career in Web development, the number of things you *don't* know about the subject can seem mind-boggling. There are so many techniques to learn, so many languages to master, and so many hidden pitfalls waiting to trip you up. Add to that aggressive deadlines and demanding customers, and you'll soon wonder if the stress is really worth the pay and the free coffee (neither of which are usually all that great anyway).
Well, fear not - help is at hand.
In this creatively-titled five-part series, I'll be looking at some rules you can follow to make your chosen profession a little simpler. Each section of this tutorial discusses a specific part of the application development timeline, and shows you some basic tips and rules you can follow before, during and after the code implementation phase of a Web project, in the hope that it will streamline your workflow and get you up to speed on the processes and practices needed to effectively handle a small- to medium-sized project.
This introductory piece focuses on the first part of the application development cycle, explaining some of the things you need to do before you sit down to write your first line of code. In the subsequent parts, I'll be discussing a few techniques you can use to improve your code and build a more robust application, together with what happens once you've finished coding the application and are ready to release it to a customer.
Let me tell you right away that I don't claim to be an expert on this topic - most of the ideas and techniques outlined over the course of this article are based on common sense and the distilled wisdom of others, and have worked well for me in the past. They may not be appropriate for your specific situation or project; however, you should still find them useful and (hopefully!) fun to read, and should have no trouble adapting them to your needs.
With that caveat out of the way, let's get started!