Unit Ii
Unit Ii
Unit Ii
Software Requirements:
As per IEEE standards Requirement is a condition or capability needed by a
user to solve a problem or achieve an objective.
A condition or capability that must be met or possessed by a system or system
component
Requirements are classified as shown hereunder:
Functional requirements:
These are the requirements that the end user specifically demands as basic
facilities that the system should offer. It can be a calculation, data manipulation,
business process, user interaction, or any other specific functionality which defines
what function a system is likely to perform.
There are many ways of expressing functional requirements e.g., natural language,
a structured or formatted language with no rigorous syntax and formal
specification language with proper syntax. Functional Requirements in Software
Engineering are also called Functional Specifications.
Examples of Functional requirements:
The user shall be able to search either all databases or specify a subset.
The system shall provide appropriate viewers for the user to read documents.
Every order shall be allocated a unique identifier (ORDER_ID).
Non-functional requirements:
Non-functional requirements, not related to the system functionality, rather
they define how the system should perform. Basically these non-functional
requirements deal with:
a. Portability
b. Security
c. Maintainability
d. Reliability
e. Scalability
f. Performance
g. Reusability
h. Flexibility
User requirements:
User requirements are the needs, expectations, and preferences of the people
who will use a system. They are essential for designing and developing a system
that meets the goals and solves the problems of the users. However, defining user
requirements for a system project is not a simple task. It involves several steps and
techniques that require collaboration, communication, and validation.
These are the features and capabilities that the system must provide to enable
the users to perform their tasks and achieve their goals
System requirements:
System requirements (SRs) refer to the specifications or criteria that describe what
a system is expected to achieve or the attributes it should possess. These
requirements are essential for defining the capabilities and performance
characteristics of a system, and they serve as a foundation for the system design
and development process.
Constraints (Cs) are special kinds of functional requirements. They represent the
limitations or boundaries within which the system must operate.
Interface Specification:
User interface is the front-end application view to which user interacts in order
to use the software. User can manipulate and control the software as well as
hardware by means of user interface. Today, user interface is found at almost
every place where digital technology exists, right from computers, mobile
phones, cars, music players, airplanes, ships etc.
The interaction of the user to the software program viable through the user
interface design of the software program. There is no software that does not
have a user interface. As it deals with the user interaction with the software, so
it is a very important portion of the development of any software.
The Software Requirements document:
The requirements document is the official statement of what is required by the
system developers. Should include both a definition of user requirements and a
specification of the system requirements. It is NOT a design document. As far
as possible, it should set of WHAT the system should do rather than HOW it
should do it.
a. Introduction.
b. General description.
c. Specific requirements.
d. Appendices.
e. Index.
2. General description
– Product perspective
– Product function summary
– User characteristics
– General constraints
– Assumptions and dependencies
3. Specific Requirements
– Functional requirements
– External interface requirements
– Performance requirements
– Design constraints
– Attributes e.g. security, availability, maintainability,
Transferability/conversion
– Other requirements
– Appendices
– Index
1. Feasibility study
Concerned with assessing whether the system is useful to the business.
2. Elicitation and analysis
Discovering requirements
3. Specifications
Converting the requirements into a standard form
4. Validation
Checking that the requirements actually define the system that the
customer wants
Spiral Representation of Requirement Engineering Process:
1. Requirements elicitation.
2. Requirements specification.
3. Requirements validation.
FEASIBILITY STUDY:
Starting point of the requirements engineering process
2. Interviewing: It puts questions to stakeholders about the system that they use
and the system to be developed. Requirements are derived from the answers.
Traceability
Maintains three types of traceability information.
1. Source traceability--Links the requirements to the stakeholders
2. Requirements traceability--Links dependent requirements within the
requirements document
3. Design traceability-- Links from the requirements to the design Phase of
System development.