Unit2 Requirements Engg
Unit2 Requirements Engg
Non-functional requirement is
Functional requirement is specified specified by technical peoples e.g.
by User. Architect, Technical leaders and
software developers.
Helps you verify the functionality of Helps you to verify the performance
the software. of the software.
Example Example
1) Authentication of user whenever 1) Emails should be sent with a
he/she logs into the system. latency of no greater than 12 hours
2) System shutdown in case of a from such an activity.
cyber attack. 2) The processing of each request
3) A Verification email is sent to should be done within 10 seconds
user whenever he/she registers for 3) The site should load in 3 seconds
the first time on some software when the number of simultaneous
system. users are > 10000
Requirement Engineering Process
It is a four-step process, which includes -
1. Feasibility Study
2. Requirement Elicitation and Analysis
3. Software Requirement Specification
4. Software Requirement Validation
5. Software Requirement Management
1. Feasibility Study:
The objective behind the feasibility study is to create the reasons for developing the
software that is acceptable to users, flexible to change and conformable to established
standards.
Types of Feasibility:
1. Technical Feasibility - Technical feasibility evaluates the current technologies,
which are needed to accomplish customer requirements within the time and
budget.
2. Operational Feasibility - Operational feasibility assesses the range in which the
required software performs a series of levels to solve business problems and
customer requirements.
3. Economic Feasibility - Economic feasibility decides whether the necessary
software can generate financial profits for an organization.
The models used at this stage include ER diagrams, data flow diagrams (DFDs),
function decomposition diagrams (FDDs), data dictionaries, etc.
o Data Flow Diagrams: Data Flow Diagrams (DFDs) are used widely for modeling
the requirements. DFD shows the flow of data through a system. The system
may be a company, an organization, a set of procedures, a computer hardware
system, a software system, or any combination of the preceding. The DFD is also
known as a data flow graph or bubble chart.
o Data Dictionaries: Data Dictionaries are simply repositories to store
information about all data items defined in DFDs. At the requirements stage,
the data dictionary should at least define customer data items, to ensure that
the customer and developers use the same definition and terminologies.
o Entity-Relationship Diagrams: Another tool for requirement specification is
the entity-relationship diagram, often called an "E-R diagram." It is a detailed
logical representation of the data for the organization and uses three main
constructs i.e. data entities, relationships, and their associated attributes.
New requirements emerge during the process as business needs a change, and a
better understanding of the system is developed.