Pages

May 4, 2009

Reviewing Requirement Specs for New SW Devs

One of the most difficult things for new software developers to do is to review a requirements specification for a new feature or module. Too often they simply read through the spec and do not bother to question it. This would be fine if all specs were complete when they reached the developer's hands, but this is usually not the case. In this case, it becomes the developer's job to ensure the spec finds its way to completion by raising any concerns. This is where the Requirements Checklist in Code Complete comes into play.

The Requirements Checklist is not a list of things that must all be present, but they create a nice guide for checking the completeness of specifications. You should apply these questions to any requirements specification you receive and if the answer is no to any of them, you should question the writer as to why.

Here is a snippet of the checklist with some explanations as to why they are important. The rest of the checklist can be found on the Code Complete site (http://www.cc2e.com/0323).

Specific Functional Requirements

  • Are all the inputs to the system specified, including their source, accuracy, range of values, and frequency?
  • Are all the outputs from the system specified, including their destination, accuracy, range of values, frequency, and format?
  • Are all output formats specified for web pages, reports, and so on?
  • Are all the external hardware and software interfaces specified?
  • Are all the external communication interfaces specified, including handshaking, error-checking, and communication protocols?
  • Are all the tasks the user wants to perform specified?
  • Is the data used in each task and the data resulting from each task specified?

No comments:

Post a Comment