What is Software Requirement Specification?

Share The Knowledge. It Grows !!!

So, what do you understand the word Requirement? Yes, you are correct it is nothing but the need of a client. Software development life cycle starts with a very first stage called a Requirement analysis. In this stage, we try to analyze the requirements mentioned by the client in documents. If we start developing software with poor quality requirements, we may need to face the following issues.

  • Increased Cost
  • Increased Schedule
  • Compromised product quality
  • Increased Maintenance
  • Disputes between client and supplier


Following factors is checked while analyzing the requirement.

Associated information

Information provided in software requirement should be associated with the requirement. Accurate information will help to manage software and requirement management.


It means requirement gives complete or enough information about the software. It is complete we can proceed to the next step of SDLC without any risk factor.


Consistent terminology should be used throughout the requirement, it will help to reduce the assumption and guess. Many time the organization uses the RM tool to manage the consistency within the requirement.



Feasibility means to check whether the requirement could be implemented with available constraints or not. Means we need to check whether we can develop the required software without allocated budget and time.


Every requirement should be independent enough to understand it. No requirement should be dependent on each other.

Types of Requirement:

Functional Requirement

It is the type of requirement where clients ask to develop what they want and what they expect from the software. It has everything which clients want in the software. It mainly described the interaction between the user and the system.

NonFunctional Requirement

A non-functional requirement is an unsung part of the documents. It is something which is not mentioned in the requirement, but it should be considered while developing the software as a global standard.  Examples of NonFunctional requirements are page load speed,  page response time, reliability, accuracy, security, capacity and availability.

Share The Knowledge. It Grows !!!

Ops!! You Can not Copy from The Digital Mentor.