Ankur Pathak 113114 Assigment 2
Ankur Pathak 113114 Assigment 2
Email: ankurpathak.ap@gmail.com
Mobile: 7385500660
Application ID: 113114
Seat Number: 00162
Subject: Software Engineering
1. Explain the good criteria of a good Software Requirement Specification
(SRS)
Characteristics of an SRS Software requirements specification should be unambiguous,
accurate, complete, efficient, and of high quality, so that it does not affect the entire
project plan. An SRS is said to be of high quality when the developer and user easily
understand the prepared document. Other characteristics of SRS are explained below.
Unambiguous
SRS is unambiguous when every stated requirement has only one interpretation
This implies that each requirement is uniquely interpreted
In case there is a term used with multiple meanings, the requirements
document should specify the meanings in the SRS so that it is clear and easy to
understand Complete
SRS is complete when the requirements clearly define what the software is required to
do
This includes all the requirements related to performance, design and
functionality Correct
SRS is correct when all user requirements are stated in the requirements document
The stated requirements should be according to the desired system
This implies that each requirement is examined to ensure that it (SRS) represents user
requirements
Note that there is no specified tool or procedure to assure the correctness of SRS.
Correctness ensures that all specified requirements are performed correctly.
Ranked for importance/stability
All requirements are not equally important, hence each requirement is identified to
make differences among other requirements
For this, it is essential to clearly identify each requirement. Stability implies the
probability of changes in the requirement in future.
Modifiable
The requirements of the user can change, hence requirements document should be
created in such a manner that those changes can be modified easily, consistently
maintaining the structure and style of the SRS
Traceable
SRS is traceable when the source of each requirement is clear and facilitates the
reference of each requirement in future
For this, forward tracing and backward tracing are used
Forward tracing implies that each requirement should be traceable to design and code
elements
Backward tracing implies defining each requirement explicitly referencing
its source Consistent
SRS is consistent when the subsets of individual requirements defined do not conflict
with each other. For example, there can be a case when different requirements can
use different terms to refer to the same object
There can be logical or temporal conflicts between the specified requirements and
some requirements whose logical or temporal characteristics are not satisfied
Verifiable
SRS is verifiable when the specified requirements can be verified with a cost-effective
process to check whether the final software meets those requirements
The requirements are verified with the help of reviews. Note that unambiguity is
essential for verifiability.
2. Explain all phases of Waterfall Model.
Software development is a process that involves the creation and maintenance
of frameworks, applications and other software elements. This process
comprises of activities such as: requirements analysis, defining specifications,
designing, constructing, and testing maintenance of the software product.
There is a wide range of software designing models available to hand -pick in
accordance with the objectives, needs and constraints of the project. In this
article, we will be discussing the Waterfall Model, with in-depth focus on logical
progression of this development life cycle.