| 7 important points to keep in mind for successful
requirements capture How do you avoid project failure?
Learn to avoid some of the typical causes of
project failure by investing in clearly outlining the requirements for all parties
concerned. Outlined below are important items to keep in mind for successful requirements
capture and recording:
1. There are three levels of requirements.
a. Business Requirements - High level objectives of the project which are recorded in the
Vision and Scope Document.
b. User Requirements - Task and facilities available to the end user recorded in the Use
Cases.
c. Functional Requirements - Detailed listing out of each behavior that the software must
exhibit. This along with the quality attributes and other non-functional requirements is
documented in the Software Requirements Specification (SRS).
2. Involve the end-user or customers as much as
possible during the requirements capture stage. Identify various user groups and one
representative individual from each group for inputs regarding their web design
requirements. They could also review prototypes and the SRS to ensure completeness and
effectiveness.
3. Ensure that the requirements are quantifiable
and measurable. Areas that are unclear may require more detailed analysis or even the
development of a prototype. Developing Test cases early also help reveal any gaps in the
requirements capture. Verify the completeness of the requirements by formally inspecting
the documents generated.
4. Prioritize Requirements by their relative
importance. This will help weed out high cost-low value functionality. It will also help
in making informed and critical decisions when faced with time/ resource and functionality
tradeoffs. Identify and remove any functionality which will not be used or which do not
help meet any of the business objectives.
5. Ensure that the project scope is clearly
defined in the Vision and Scope document. Expect some amount of requirements growth and
buffer for it, since rarely is the project deadline changed, additional resources provided
or any existing functionality deleted to compensate for it. Effectively using requirement
gathering methods and base lining the requirements specifications also helps avoid scope
creep. All parties involved must realize that future additions will add to the cost.
6. Establish and enforce a clear and realistic
process for change management. Prioritize the proposed requirement changes against the
requirements yet to be implemented. Ensure that each change and its impact are
sufficiently analyzed to avoid unforeseen complexities and slipping project schedule and
deadlines. Analyze associated costs and benefits and all the associated tasks and resource
impacts. Also, be disciplined about following suitable version control policies to ensure
that all the project participants are working on the latest web design requirements.
7. Finally, while it is important to have a
complete set of requirements to start design and development, it is also important not to
get bogged down at this stage. After a set of requirements has been fully identified,
development can begin on this while unclear requirements continue to get analyzed and
clearly defined. The iterative model or phased approach is better than the waterfall model
in these cases. |