What Makes a Great Functional Specification Great


What qualities made it so great, and what made it stand out compared to the not-so-great specs that you've had to deal with? Or, if you've never worked with a good functional spec before, what sort of things would you expect in a great spec?

Sorry this is obviously subjective but I'm creating a functional spec (not my first) and it just occurred to me that I may get some good ideas from the bright folks on SO!

Best Solution

The Project Aardvark specs from Joel on Software are the best I've come across so far. Each screen is defined very well, with pictures. The main features of the software are described, as well as some technical details.

Sadly the specs I've received personally aren't that brilliant. Usually they are just a bulleted list of features they expect from each section of the system, and they expect you to work out all the details. Which is fine, I guess. However, I'm writing a game design document for an RPG game I'm working on as a personal project, and I think the specs I'm writing are very well written. I've divided the game into Sections such as

  • Characters
  • Weapons & Armor
  • Levels
  • Map
  • Physics

and so on, and described each section in terms of gameplay as well as some technical details. Its very easy to work through.

I also highly recommend reading the Painless Functional Specs Series from Joel on Software for anyone interested in writing better specs.

Related Question