0% found this document useful (0 votes)
77 views41 pages

Se Unit 2

This document covers requirements analysis and specification in software engineering. It discusses the different types of software requirements including functional, non-functional, user, and system requirements. It also describes the requirement engineering process which includes feasibility studies, elicitation, validation, and management. Classical analysis techniques are covered such as structured system analysis, data dictionaries, use case diagrams, data flow diagrams, decision trees, decision tables, and structured English.

Uploaded by

sathyaaaaa1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
77 views41 pages

Se Unit 2

This document covers requirements analysis and specification in software engineering. It discusses the different types of software requirements including functional, non-functional, user, and system requirements. It also describes the requirement engineering process which includes feasibility studies, elicitation, validation, and management. Classical analysis techniques are covered such as structured system analysis, data dictionaries, use case diagrams, data flow diagrams, decision trees, decision tables, and structured English.

Uploaded by

sathyaaaaa1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 41

  

CS8494 Software Engineering 


UNIT – 2
REQUIREMENTS ANALYSIS AND SPECIFICATION
UNIT II REQUIREMENTS ANALYSIS AND SPECIFICATION
Software Requirements:
Functional and Non-Functional
User requirements
System requirements
Software Requirements Document
Requirement Engineering Process:
Feasibility Studies
Requirements elicitation and analysis
requirements validation
requirements management
Classical analysis:
Structured system Analysis
Petri Nets
Data Dictionary.
Requirement Types:
•User Requirements
•System requirements
•Functional Requirements
•Non-functional Requirements
•Domain Requirements
1.Software Requirements
•Functional Requirements
•Non-Functional Requirements
1.a.Functional Requirements
•Functional aspect of software
Examples -
•Search option given to user to search from various invoices.
•User should be able to mail any report to management.
•Users can be divided into groups and groups can be given separate
rights.
Non-Functional Requirements
•Not related to functional aspect of software
Non-functional requirements include -
•Security
•Storage
•Cost
•Flexibility
•Disaster recovery
•Accessibility
1.b.User Interface requirements
A software is widely accepted if it is -
easy to operate
quick in response
effectively handling operational errors
providing simple and consistent user interface
1.c.Software requirements
A System Requirements Specification (SRS) (also known as a Software
Requirements Specification) is a document or set of documentation
•Business Drivers
•Business Model
•Technical Requirements
•System Qualities
•Constraints and Assumptions
1.d.Software requirements document
A document or set of documentation
2.Requirement Engineering
Requirement Engineering Process
•Feasibility Study
•Requirement Gathering
•Software Requirement Specification
•Software Requirement Validation
2.a.Feasibility study
Requirements are categorized logically as
Must Have 
Should have 
Could have 
Wish list 
2.b.Requirement Elicitation Process
Requirement Elicitation Techniques
There are various ways to discover requirements
Interviews
several types of interviews such as:
•Structured (closed) interviews
•Non-structured (open) interviews
•Oral interviews
•Written interviews
•One-to-one interviews
•Group interviews
Surveys
Questionnaires
Task analysis
Domain Analysis
Brainstorming
Requirement Engineering
Process
2.c.Software Requirement Validation
•Requirements can be checked against following conditions -
If they can be practically implemented
If they are valid and as per functionality and domain of software
If they are complete
If they can be demonstrated
3.Classical Analysis
3.a.Structured analysis
•The analyst to understand the system.
•Analyze and refine the objectives of an existing system and
develop a new system specification
Structured Analysis Tools
During Structured Analysis, various tools and
techniques are used for system development. They
are −
•Data Flow Diagrams
•Data Dictionary
•Decision Trees
•Decision Tables
•Structured English
•Pseudo code
USE CASE
Diagram
DFD
EXAMPLE
Types of DFD
DFDs are of two types: Physical DFD and Logical DFD. The following table lists the
points that differentiate a physical DFD from a logical DFD.

Physical DFD Logical DFD


It is implementation It is implementation
dependent. It shows which independent. It focuses only
functions are performed. on the flow of data between
processes.

It provides low level details of It explains events of systems


hardware, software, files, and and data required by each
people. event.

It depicts how the current It shows how business


system operates and how a operates; not how the system
system will be implemented. can be implemented.
Context Diagram
.
Data Dictionary

Sr.No. Data Name Description No. of


Characters

1 ISBN ISBN Number 10

2 TITLE title 60

3 SUB Book Subjects 80

4 ANAME Author Name 15


Decision Trees
Decision Tables
describing the complex logical
Components of a Decision Table
Condition Stub 
Action Stub 
Condition Entry 
Action Entry 
CONDITIONS Rule 1 Rule 2 Rule 3 Rule 4

Advance Y N N N
payment made

Purchase - Y Y N
amount = Rs
10,000/-

Regular - Y N -
Customer

ACTIONS

Give 5% discount X X - -

Give no discount - - X X
Structured English

if customer pays advance then Give 5% Discount


else if purchase amount >=10,000
then if the customer is a regular customer
then Give 5% Discount
else No Discount
end if
else No Discount
end if
end if
Pseudocode
•Plain English.
•It is used in conjunction with structured
programming.
•It replaces the flowcharts of a program.
End of UNIT -2

You might also like