Tuesday 28 July 2015

2.3.2 Need of  SRS

 1)  An SRS establishes the basis for agreement between the client and the sup-plier on what the software product will do.

 

The origin of most software systems is in the needs of some clients. The software
system itself is created by some developers. Finally, the completed system will
be used by the end users. Thus, there are three major parties interested in a
new system: the client, the developer, and the users. Somehow the requirements
for the system that will satisfy the needs of the clients and the concerns of the
users have to be communicated to the developer. The problem is that the client
usually does not understand software or the software development process, and
the developer often does not understand the client’s problem and application
area. This causes a communication gap between the parties involved in the de-velopment project. A basic purpose of the SRS is to bridge this communication gap so they have a shared vision of the software being built. Hence, one of the main advantages of a good SRS is:

This basis for agreement is frequently formalized into a legal contract between
the client (or the customer) and the developer (the supplier). So, through SRS,
the client clearly describes what it expects from the supplier, and the developer
clearly understands what capabilities to build in the software. A related, but
important, advantage is:

2) An SRS provides a reference for validation of the final product.

That is, the SRS helps the client determine if the software meets the requirements. Without a proper SRS, there is no way a client can determine if the software being delivered is what was ordered, and there is no way the developer can convince the client that all the requirements have been fulfilled.Providing the basis of agreement and validation should be strong enough reasons for both the client and the developer to do a thorough and rigorous job of requirement understanding and specification.

 3) A high-quality SRS is a prerequisite to high-quality software. 

Studies have shown that many errors are made during the requirements phase. And an error in the SRS will manifest itself as an error in the final system implementing the SRS. Clearly, if we want a high-quality end product that has few errors, we must begin with a high-quality SRS.

 4) A high-quality SRS reduces the development cost 

The quality of SRS has an impact on cost (and schedule) of the project. We know that errors can exist in the SRS. It is also known that the cost of fixing an error increases almost exponentially as time progresses. Hence, by improving the quality of requirements, we can have a huge savings in the future by having fewer expensive defect removals.

No comments:

Post a Comment