Project Specifications
What is a Web Project Specification for?
A Project Specification (or spec) is a comprehensive description of objectives for a development project. It contains all goals, functionality, and details required for a development team to fulfill the vision of the client.
A Building
If one were to ask an architect for a cost estimate on a new home, one would expect to hear, "Well, it depends". And it's obvious to most people what it depends on, since everyone knows a little about houses, just by living in them. It depends on how many bedrooms, bathrooms, how many stories, if you want a garage, and whether you want a marble countertop. Etc. These are the specifications for the house, and they determine cost, timeline, and such.
A Website
I'm frequently asked how much a website costs. And when I say "Well, it depends. What functionality do you need?", I see fear and confusion come across peoples faces. After a lot of experience with this phenomenon, I have come to believe that, unlike in the house example above, most people are not familiar with the ins and outs of a website, do not generally know the options available, or their relative value.
For me to estimate how much the project will cost, I need project specifications ("spec"). A project "spec" is like a blueprint for a website. It communicates the specific details about the project that need to be planned for, budgeted for, and implemented. It gives an accurate impression of the purpose, scope, timeline, and functionality involved in the project.
When you are drafting your project spec, account for as much of the following list as possible. If there are areas where it is unclear as to what is required, I can assist you in flushing these out during our initial consult.
Common Elements for a Project Spec
The following are often included in project specifications:
- Introduction - description of project
- Project Objectives
- Site User Roles - what types of roles will site users have (guest, editor, admin, etc)
- Functional Requirements Per User Role
- Design Specifications - how with things look visually
- Flow or Logic Diagrams - for non-trivial processes like checkout or applications
- Success Criteria
- Site Map
- Content Plan - where will content come from
- Marketing Plan - how will the site make money
- Site Maintenance - who will maintain the site
- Project Phases / Timeline
- Budget
The above may be overkill for small projects, or may be unacceptably simplistic for large projects. The larger the project, the more important the spec is. Since details on what to include in a spec are all over the web, I won't re-invent the wheel here. But I would like to refer you to a couple of great articles that can help you plan the creation of a useful spec for your web project: