Virtually all websites and web applications start with a requirements document, but rarely are these first attempts very helpful to designers or developers. To be successful you must express your needs and desires to the people who will be working on your project in their language.
Here are some quick tips to help you improve the effectiveness of your requirements:
Define your objectives
Why are you undertaking this project? What are you expecting once completed? Clear objectives help keep everyone involved focused on the end goal.
Engage experts early
A well qualified, experienced consultant can quickly steer you in the right direction and help you avoid the common pitfalls. It will cost more now, but much less latter. It will also get your project completed in less time.
Discover existing functionality
Most modern web sites and applications are built on an existing platform such as Drupal or WordPress. These platforms already provide most of the common features you'll need. If your requirements are met by existing functionality you can save a great deal of time and money.
Consider breaking your site down to an outline based on the menu items. Start at the top level and add details and features as you go. You can create a separate list of global features which exist throughout the site.