A great deal of money can be saved by outsourcing your web development to freelancers. This article builds off of my previous post, How to Hire on oDesk – Eight Tips for Small Business Owners. I have over 10 years experience building many web applications, including cash4books.net, gamerevive.com, mkzbooks.com, and sellbooksdirect.com. If you are looking to hire freelance web developers (AKA web programmers), one of the most important first steps is writing the detailed requirements document for your web application. It defines the scope of the project, and makes it very clear WHAT you are building. But, it does not address HOW it will be built (a design document would do that). A clear and detailed requirements document will set your project up for success for your outsourced web development project, and it will save you money by not having to go back and redo parts of the project that were not well defined. And, if you haven’t figured it out, oDesk is my recommended solution for finding the best freelance web developers.
I prefer to use a Google Docs for writing the requirements. First, set up the following outline. For your convenience, I created a detailed requirements document template to get you started. Just open it and go to File–>Make a copy. Then start filling it in. You’ll need a Google account, of course. Or, if you want to use Word or something else, here is the outline:
- Summary of Functionality
- CSS, logo, and design of site
- Header, navigation, and footer
- Customer Facing Pages
- Flow Chart
- CRUD operations (create, read, update, delete)
- Admin Panel
- Roles and Security
- Form Validation and Error Messages
- Email Alerts
- Q&A from Job Post
- Optional: Video Walkthrough of Competitor Sites
For the hardcore software requirements writers, the first critique will be that I’m not recommending usage of UML. Though I’m academically trained in UML, I don’t think it is necessary for the average business owner to use when building out the requirements for the average outsourced web project. That said, it really depends on the size of the project. Larger, and more expensive, projects can benefit from a more rigorous UML based approach.
Back to the Google Doc… Be sure to use “heading 2″ for the high level outline. This way, you can use the table of contents feature at the top of your Google Doc, and you can refresh it and create links to your content.
When writing out the content, use the word “must” instead of “should” in your requirements. For example, say “The navigation must have x, y, z”. Watch my video for more tips on how to fill in the content from here:
Thanks, and please let me know if my post has been helpful to you by leaving a comment below.
Jim McKenzie Smith
McKenzie Books, Inc.