Best Practices for Software Projects -
Requirements Scrubbing
This year's newsletters will focus on best practices for Software
Development Projects. Each month will cover a different best practice
technique. This month focuses on improving requirements gathering with the
use of requirements scrubbing.
|
Newsletter
Sponsored by Software Planner |
|
http://www.SoftwarePlanner.com
Sign up for a free 2 week trial and you are entered to
win a
FREE HP Pocket PC |
|
Software Planner (http://www.SoftwarePlanner.com)
helps improve the quality of software releases and decrease software
maintenance costs by providing you with tools for managing all phases of the
software lifecycle. Software Planner tracks customer requirements, test
cases, defects, support tickets, appointments and to-do lists, and allows
you to share documents and hold threaded discussions. Fully web-based
and integrated with email.
|
Best Practices for Software
Projects - Requirements Scrubbing
A key component to delivering
software projects on-time and on-budget is to do a great job of defining the
requirements of the system and to be objective as to which requirements are
absolutely necessary. Once the requirements are defined, they should be
reviewed with a fine-tooth comb to ensure that all the requirement details are
fully defined and that each requirement is absolutely necessary for the release
of the software.
The process of reviewing each
requirement in detail is called Requirements Scrubbing. Each
requirement should be evaluated objectively by the JAD Session members and a
decision should be made as to whether the requirement is absolutely necessary
for the upcoming release. Any requirements that can be eliminated from the
upcoming release will have a direct savings on time and money, as it eliminates
the need to go through design, programming, testing and documentation. All
requirements that are not absolutely necessary for the upcoming release can be
marked for a future release.
Each requirement should be
evaluated for the following criteria:
- Is the requirement
absolutely necessary for the upcoming release? If not, it should be
moved to a future release.
- Is the requirement
sufficiently defined so that the designers will easily be able to provide a
design for the requirement?
- Is the requirement in it's
simplest form? Many times requirements are not well thought out and can be
more complex than is needed. This causes unneeded time and effort in
the programming and testing phases.
- Can you substitute other
options for a requirement? For example, let's say that you have a
requirement that calls for a spell checker to be implemented for your user
interface. However, another team in your company has already created a
web service that does the same thing and it has been fully tested.
This is a good example as to where you can use another option that yields
the same result but with faster and improved execution.
Requirement Scrubbing can dramatically increase
your chances of delivering on-time and on-budget. Below are some
helpful templates to aid you in developing software solutions on-time and
on-budget:
About the Author
Steve Miller is the President of Pragmatic Software (http://www.PragmaticSW.com). With over 20 years of experience, Steve
has extensive knowledge in project management, software architecture and test
design. Steve publishes a monthly newsletter for companies that design and
develop software. You can read other newsletters at
http://www.PragmaticSW.com/Newsletters.htm. Steve's email is
steve.miller@PragmaticSW.com.
|