Questions to ask before development begins

Everyone loves features. People wouldn’t use your software if it couldn’t do something for them. A lot of the time, the killer feature is the reason the software was created. You have a problem you want to solve, and you have some idea how to solve it. Other times, you’ve already got a product, but you want to make it more powerful or more flexible. It can be difficult not to get carried away when you’ve got an idea for a new feature, but it’s important not to rush into development without proper consideration. I’ve recently been reading Code Complete by Steve McConnell and it contains an extensive list for checking whether your project requirements are missing any obvious holes.

Inspired by this, I put together a heavily modified version of the list to use at work. It’s smaller and more tuned for the work that I do, which is web development. It’s more focused on adding a new feature to an existing project than it is on building a requirements list for a new project.

What Does It Need to Do?

How Good Does It Need to Be?

Are the Requirements Good?

Are the Requirements Complete?

By making sure I’ve at least attempted to answer each of these questions before I begin typing, the route to a high quality finished product will almost certainly be quicker and more pleasant than if I’d just rushed in headlong.

Maybe they’ll help you, too.