尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare a Scribd company logo
Ajit K Nayak, Ph.D.
ajitnayak@soauniversity.ac.in
Software Engineering Principles
Requirements analysis &
specification
Acknowledgements
• Slides of Prof. Rajib Mall, IIT, KGP
Why Study Software Engineering?
• Many projects have failed because
– they started to develop without adequately
determining whether they are building what the
customer really wanted.
• Customer Requirement
Typical project scenario…
Requirements
• A Requirement is a capability or condition required
from the system.
• What is involved in RAS?
– Determine what is expected by the client from the
system. (Gather and Analyze)
– Document those in a form that is clear to the client
as well as to the development team members.
(Document)
Activities in RAS
Requirements Gathering
Requirements Analysis
Requirements Specification
SRS Document
Requirements engineering
• The process of establishing the services that
– the customer requires from a system and
– the constraints under which it operates and is
developed.
• The requirements themselves are the descriptions of
– the system services and
– constraints that are generated during the
requirements engineering process.
Requirements Analysis and
Specification
 Requirements Gathering:
 Fully understand the user requirements.
 Requirements Analysis:
 Remove inconsistencies, anomalies, etc. from
requirements.
 Requirements Specification:
 Document requirements properly in an SRS document.
Need for SRS…
• Good SRS reduces development cost
– Req. errors are expensive to fix later
– Req. changes cost a lot (typically 40% changes)
– Good SRS can minimize changes and errors
– Substantial savings --- effort spent during req. saves
multiple times that effort
• An Example:
– Cost of fixing errors in req., design, coding,
acceptance testing and operation are 2, 5, 15, 50,
150 person-months
Uses of SRS Document
• Establishes the basis for agreement between the
customers and the suppliers
• Forms the starting point for development.
• Provide a basis for estimating costs and schedules.
• Provide a baseline for validation and verification.
• Facilitates transfer.
• Serves as a basis for enhancement.
• The SRS can serve as the basis for writing User Manual for
the software:
– User Manual: Describes the functionality from the
perspective of a user --- An important document for
users.
– Typically also describes how to carry out the required
tasks with examples.
SRS Document: Stakeholders
• SRS intended for a diverse audience:
– Customers and users for validation, contract, ...
– Systems (requirements) analysts
– Developers, programmers to implement the system
– Testers to check that the requirements have been
met
– Project Managers to measure and control the
project
• Different levels of detail and formality is needed for
each audience
• Different templates for requirements specifications:
– Often variations of IEEE 830
Types of Requirements
• Functional requirements
– Statements of services the system should provide,
how the system should react to particular inputs and
how the system should behave in particular
situations.
– May state what the system should not do.
• Non-functional requirements
– Constraints on the services or functions offered by
the system such as timing constraints, constraints on
the development process, standards, etc.
– Often apply to the system as a whole rather than
individual features or services.
Functional Requirements
• Descriptions of data to be entered into the system
• Descriptions of operations performed by each screen
• Descriptions of work-flows performed by the system
• Descriptions of system reports or other outputs
• Who can enter the data into the system?
• How the system meets applicable regulatory
requirements
Functional Requirements contd.
• The functional requirements discusses the
functionalities required from the system.
• The system is considered to perform a set of high-
level functions {fi }
• Each function f i of the system can be considered as a
transformation of a set of input data (Ii) to the
corresponding set of output data (Oi)
• The user can get some meaningful piece of work done
using a high-level function.
fi
Input
Data
Output
Data
I1
I2
I3
O1
O2
O3
Example Functional Requirements - I
• Interface requirements
– Field 1 accepts numeric data entry.
– Field 2 only accepts dates before the current date.
– Screen 1 can print on-screen data to the printer.
• Business Requirements
– Data must be entered before a request can be approved.
– Clicking the Approve button moves the request to the
Approval Work flow
– All personnel using the system will be trained according to
internal SOP AA-101.
• Regulatory/Compliance Requirements
– The database will have a functional audit trail.
– The system will limit access to authorized users.
– The spreadsheet can secure data with electronic signatures.
Example Functional Requirements - II
• Library system - F1: Search Book function
– Input: an author’s name
– Output: details of the author’s books and the location of
these books in the library
• ATM (Cash Withdraw)- R1: withdraw cash
– Description: The withdraw cash function determines the
type of account that the user has and the account
number from which the user wishes to withdraw cash.
– It checks the balance to determine whether the
requested amount is available in the account.
– If enough balance is available, it outputs the required
cash, otherwise it generates an error message.
Example Functional Requirements - III
• ATM (Cash Withdraw)- R1: withdraw cash
– R1.1: select withdraw amount option
• Input: “withdraw amount” option,
• Output: user prompted to enter the account type
– R1.2: select account type
• Input: user option,
• Output: prompt to enter amount
– R1.3: get required amount
• Input: amount to be withdrawn in integer values greater than 100
and less than10,000 in multiples of 100.
• Output: The requested cash and printed transaction statement.
Non-functional Requirements - I
• Characteristics of the system which can not be
expressed as functions
– Maintainability, Portability, Usability, Security, Safety,
Reliability, Performance, etc.
• Example: How fast can the system produce results?
– So that it does not overload another system to
which it supplies data, etc.
– Needs to be measurable (verifiability)
• e.g. response time should be less than 1sec, 90% of the time
Non-functional Requirements - II
Product
Requirements
Interoperability
Requirements
Ethical
Requirements
Efficiency
Requirements
Portability
Requirements
Reliability
Requirements
Legislative
Requirements
Delivery
Requirements
Standards
Requirements
Implementation
Requirements
Safety
Requirements
Usability
Requirements
Performance
Requirements
Space
Requirements
Privacy
Requirements
External
Requirements
Organizational
Requirements
Non-
functional
Requirements
Non-functional Requirements III
• Constraints are NFR
– Hardware to be used,
– Operating system
– DBMS to be used
– Capabilities of I/O devices
– Standards compliance
– Data representations by the interfaced system
• Project management issues (costs, time, schedule) are
often considered as non-functional requirements
• External Interface Requirements
– User Interface, Hardware Interface, Software Interface,
Communication Interface, File export format
Importance of Nonfunctional Req.
• Non-functional (product) requirements play an important
role for critical systems.
– Systems whose ‘failure’ causes significant economic,
physical or human damage to organizations or people.
• There are three principal types of critical system
– Business critical systems : Failure leads to significant
economic damage.
• customer accounting system in a bank
– Mission critical systems : Failure leads to the abortion of a
mission.
• navigational system for a spacecraft
– Safety critical systems: Failure endangers human life.
• a controller of a nuclear plant
Requirements for critical systems - I
• The principal non-functional constraints which are
relevant to critical systems
– Reliability ‹
• the ability of a system to perform its required functions under stated
conditions for a specific period of time.
• Can be considered under two separate headings:
• Availability - is the system available for service when requested by
end-users.
• Failure rate - how often does the system fail to deliver the service as
expected by end-users.
– Performance
• Response requirements (how quickly the system reacts to a user
input)
• Throughput requirements (how much the system can accomplish
within a specified amount of time)
• Availability requirements (is the system available for service when
requested by end-users)
Requirements for critical systems-II
• Security
– to ensure un authorised access to the system and its data is
not allowed ‹
– Ensure the integrity of the system from accidental or malicious
damage. ‹
• Safety ‹
– ‘shall not’ requirements which exclude unsafe situations from
the possible solution space of the system
• Usabilityis
– the ease with which a user can learn to operate, prepare
inputs for, and interpret outputs of system or component.
– Usability requirements include:
• Well-structured user manuals ‹
• Informative error messages ‹
• Help facilities ‹
• Well-formed graphical user interfaces
Examples-I
• The System service X shall have an availability of 999/1000
or 99%.
– Reliability requirement which means that out of every
1000 requests for this service, 999 must be satisfied.
• System Y shall process a minimum of 8 transactions per
second.
– Performance requirement.
• The access permissions for system data may only be
changed by the system’s data administrator.
• All system data must be backed up every 24 hours and the
backup copies stored in a secure location which is not in
the same building as the system.
– Security requirements
Examples-II
• The violated system shall not permit any further
operation unless the operator guard is in place.
• The system shall not operate if the external
temperature is below 4 degrees Celsius.
• The system should not longer operate in case of fire
(e.g. an elevator)
– Safety requirements
Summary - NFR
User’s need User’s concern Non-functional
requirement
Function 1.Ease of use
2. Unauthorised access
3.Likelihood of failure
1.Usability
2. Security
3. Reliability
Performance 1. Resource utilization
2.Performance verification
3.Ease of interfacing
1.Efficiency
2.Verifiability
3. Interoperability
Change 1.Ease of repair
2.Ease of change
3.Ease of transport
4.Ease of expanding or
upgrading capacity or
performance ?
1.Maintainability
2. Flexibility
3. Portability
4.Expandability
Measurable metrics for NFR
Property Metric
Performance 1.Processed transactions per second
2.Response time to user input
Reliability 1.MTTF, MTTR, MTBF
2.Rate of occurrence of failure
Availability 1.Probability of failure on demand
Size 1.Kbytes, Mbytes
Usability 1.Time taken to learn the software
2.Number of errors made by user
Robustness 1.Time to restart the system after failure
Software efficiency
• It refers to the level of use of computational
resources, such as CPU cycles, memory, disk space,
buffers and communications channels.
• Efficiency can be characterized as follows:
– Capacity - maximum number of users/terminals/
transactions/... the system can handle without
performance degradation
– Degradation of service -- what happens when a
system with capacity X widgets per time-unit
receives X+1 widgets?
• We don't want the system to simply crash! Rather, we may want
to stipulate that the system should handle the load, perhaps with
degraded performance.
NFR: Trigger Questions - I
• Performance characteristics
– Are there any speed, throughput, or response time
constraints on the system? ‹
– Are there size or capacity constraints on the data to
be processed by the system?
• Quality issues:
– What are the requirements for reliability? ‹‹
– What is the maximum time for restarting the system
after a failure? ‹
– What is the acceptable system downtime per 24-
hour period?
NFR: Trigger Questions - II
• Resources and Management Issues:
– How often will the system be backed up?
– Who will be responsible for the back up?
– Who is responsible for system installation?
– Who will be responsible for system maintenance?
Domain requirements
• The system’s operational domain imposes
requirements on the system.
• Example:
– a train control system has to take into account the
braking characteristics in different weather
conditions.
• Domain requirements be new functional
requirements, constraints on existing requirements or
define specific computations.
• If domain requirements are not satisfied, the system
may be unworkable.
e.g. Train protection system
• Domain requirement for a train protection system is
given as
• The deceleration of the train shall be computed as:
– Dtrain = Dcontrol + Dgradient
• where Dgradient is 9.81 ms2 * compensated gradient/alpha and
where the values of 9.81 ms2 /alpha are known for different types
of train.
• It is difficult for a non-specialist to understand the
implications of this and how it interacts with other
requirements.
IEEE 830-1998 Standard for SRS - I
• Title
• Table of Contents
• 1. Introduction
• 2. Overall Description
• 3. Specific Requirements
• 4.Change Management Process
• 5. Document Approval
• Appendices
• Index
IEEE 830-1998 Standard: Introduction
• 1.1 Purpose
– Describe purpose of this SRS
– Describe intended audience
• 1.2 Scope
– Identify the software product
– Enumerate what the system will and will not do
– Describe user classes and benefits for each
• 1.3 Definitions. Acronyms, and Abbreviations
– Define the vocabulary of the SRS (may reference appendix)
• 1.4 References
– List all referenced documents including sources
(e.g., Use Case Model and Problem Statement; Experts in the
field)
• 1.5 Overview
– Describe the content of the rest of the SRS
– Describe how the SRS is organized
IEEE 830-1998 : Overall Description
• 2.1 Product Perspective
– Present the business case and operational concept of the system
– Describe how the proposed system fits into the business context
– Describe external interfaces: system, user, hardware, software,
communication
– Describe constraints: memory, operational, site adaptation
• 2.2 Product Functions
– Summarize the major functional capabilities
– Include the Use Case Diagram and supporting narrative
(identify actors and use cases)
– Include Data Flow Diagram if appropriate
• 2.3 User Characteristics
– Describe and justify technical skills and capabilities of each user
class
• 2.4 Constraints
– Describe other constraints that will limit developer’s options; e.g.,
regulatory policies; target platform, database, network software
and protocols, development standards requirements
• 2.5 Assumptions and Dependencies
IEEE 830-1998 : Overall Description
• 2.1 Product Perspective
– Present the business case and operational concept of the system
– Describe how the proposed system fits into the business context
– Describe external interfaces: system, user, hardware, software,
communication
– Describe constraints: memory, operational, site adaptation
• 2.2 Product Functions
– Summarize the major functional capabilities
– Include the Use Case Diagram and supporting narrative
(identify actors and use cases)
– Include Data Flow Diagram if appropriate
• 2.3 User Characteristics
– Describe and justify technical skills and capabilities of each user
class
• 2.4 Constraints
– Describe other constraints that will limit developer’s options; e.g.,
regulatory policies; target platform, database, network software
and protocols, development standards requirements
• 2.5 Assumptions and Dependencies
IEEE 830-1998 : Specific Requirements
• 3.1 External Interfaces
– Detail all inputs and outputs
– Examples: GUI screens, file formats
• 3.2 Functional Requirements
– Include detailed specifications of all the functional
requirements
• 2.3 Non-Functional Requirements
– Describes all non-functional requirements that can’t
be expressed as a function.
• Characteristics of the system which can not be expressed as
functions.
• e.g. performance requirements, database requirements, design
constraints, quality attributes, . . .
Properties of a good SRS document
• Concise.
• Structured.
• Black-box view.
• Conceptual integrity.
• Response to undesired events.
• Verifiable.
Thank You

More Related Content

What's hot

Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
Haitham El-Ghareeb
 
Functional and non functional
Functional and non functionalFunctional and non functional
Functional and non functional
Dikshyanta Dhungana
 
Requirement analysis and specification
Requirement analysis and specificationRequirement analysis and specification
Requirement analysis and specification
M.E. at GTU- PG School
 
Staffing level estimation
Staffing level estimation Staffing level estimation
Staffing level estimation
kavitha muneeshwaran
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
Muhammad Asim
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
Aman Adhikari
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
Santhi thi
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
Siva Ayyakutti
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
swatisinghal
 
Cohesion and coupling
Cohesion and couplingCohesion and coupling
Cohesion and coupling
Aprajita (Abbey) Singh
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
Manish Kumar
 
Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
Mohammad Faizan
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagram
Rahul Pola
 
Requirement specification (SRS)
Requirement specification (SRS)Requirement specification (SRS)
Requirement specification (SRS)
kunj desai
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
Jonathan Christian
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
university of education,Lahore
 
Chapter 12 user interface design
Chapter 12 user interface designChapter 12 user interface design
Chapter 12 user interface design
SHREEHARI WADAWADAGI
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
Darshit Metaliya
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
Indu Sharma Bhardwaj
 
Unit 4 designing classes
Unit 4  designing classesUnit 4  designing classes
Unit 4 designing classes
gopal10scs185
 

What's hot (20)

Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 
Functional and non functional
Functional and non functionalFunctional and non functional
Functional and non functional
 
Requirement analysis and specification
Requirement analysis and specificationRequirement analysis and specification
Requirement analysis and specification
 
Staffing level estimation
Staffing level estimation Staffing level estimation
Staffing level estimation
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
Cohesion and coupling
Cohesion and couplingCohesion and coupling
Cohesion and coupling
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
 
Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagram
 
Requirement specification (SRS)
Requirement specification (SRS)Requirement specification (SRS)
Requirement specification (SRS)
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
 
Chapter 12 user interface design
Chapter 12 user interface designChapter 12 user interface design
Chapter 12 user interface design
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
Unit 4 designing classes
Unit 4  designing classesUnit 4  designing classes
Unit 4 designing classes
 

Viewers also liked

Introduction to UML
Introduction to UMLIntroduction to UML
Software Engineering an Introduction
Software Engineering an IntroductionSoftware Engineering an Introduction
Software Engineering an Introduction
Ajit Nayak
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
Raj Thilak S
 
Software Engineering : OOAD using UML
Software Engineering : OOAD using UMLSoftware Engineering : OOAD using UML
Software Engineering : OOAD using UML
Ajit Nayak
 
Types of UML diagrams
Types of UML diagramsTypes of UML diagrams
Types of UML diagrams
Mukesh Tekwani
 
Software Engineering :Behavioral Modelling - II State diagram
Software Engineering :Behavioral Modelling - II State diagramSoftware Engineering :Behavioral Modelling - II State diagram
Software Engineering :Behavioral Modelling - II State diagram
Ajit Nayak
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagrams
artgreen
 
UML Part1-Introduction Mansouri
UML Part1-Introduction MansouriUML Part1-Introduction Mansouri
UML Part1-Introduction Mansouri
Mansouri Khalifa
 
Software Engineering :Behavioral Modelling - I Sequence diagram
Software Engineering :Behavioral Modelling - I Sequence diagram Software Engineering :Behavioral Modelling - I Sequence diagram
Software Engineering :Behavioral Modelling - I Sequence diagram
Ajit Nayak
 
Software Engineering :UML class diagrams
Software Engineering :UML class diagramsSoftware Engineering :UML class diagrams
Software Engineering :UML class diagrams
Ajit Nayak
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
Ashesh R
 

Viewers also liked (11)

Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
Software Engineering an Introduction
Software Engineering an IntroductionSoftware Engineering an Introduction
Software Engineering an Introduction
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
 
Software Engineering : OOAD using UML
Software Engineering : OOAD using UMLSoftware Engineering : OOAD using UML
Software Engineering : OOAD using UML
 
Types of UML diagrams
Types of UML diagramsTypes of UML diagrams
Types of UML diagrams
 
Software Engineering :Behavioral Modelling - II State diagram
Software Engineering :Behavioral Modelling - II State diagramSoftware Engineering :Behavioral Modelling - II State diagram
Software Engineering :Behavioral Modelling - II State diagram
 
Lecture04- Use Case Diagrams
Lecture04- Use Case DiagramsLecture04- Use Case Diagrams
Lecture04- Use Case Diagrams
 
UML Part1-Introduction Mansouri
UML Part1-Introduction MansouriUML Part1-Introduction Mansouri
UML Part1-Introduction Mansouri
 
Software Engineering :Behavioral Modelling - I Sequence diagram
Software Engineering :Behavioral Modelling - I Sequence diagram Software Engineering :Behavioral Modelling - I Sequence diagram
Software Engineering :Behavioral Modelling - I Sequence diagram
 
Software Engineering :UML class diagrams
Software Engineering :UML class diagramsSoftware Engineering :UML class diagrams
Software Engineering :UML class diagrams
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 

Similar to Software Engineering : Requirement Analysis & Specification

Se lect9 btech
Se lect9 btechSe lect9 btech
Se lect9 btech
IIITA
 
Software Engineering Lec 4-requirments
Software Engineering Lec 4-requirmentsSoftware Engineering Lec 4-requirments
Software Engineering Lec 4-requirments
Taymoor Nazmy
 
Software Engineering REQUIREMENTS ANALYSIS AND SPECIFICATION
Software Engineering REQUIREMENTS ANALYSIS AND SPECIFICATIONSoftware Engineering REQUIREMENTS ANALYSIS AND SPECIFICATION
Software Engineering REQUIREMENTS ANALYSIS AND SPECIFICATION
Dr Anuranjan Misra
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
Aman Adhikari
 
Software project management requirements analysis
Software project management requirements analysisSoftware project management requirements analysis
Software project management requirements analysis
Antony Alex
 
Requirement Analysis - Software Enigneering
Requirement Analysis - Software EnigneeringRequirement Analysis - Software Enigneering
Requirement Analysis - Software Enigneering
university of education,Lahore
 
3. 1 req elicitation
3. 1 req elicitation3. 1 req elicitation
3. 1 req elicitation
Ashenafi Workie
 
Un it 2-se-mod-staff
Un it 2-se-mod-staffUn it 2-se-mod-staff
Un it 2-se-mod-staff
vijisvs2012
 
1 Software Requirements Descriptions and specification.docx
1 Software Requirements Descriptions and specification.docx1 Software Requirements Descriptions and specification.docx
1 Software Requirements Descriptions and specification.docx
jeremylockett77
 
22-REQUIREMENT.ppt
22-REQUIREMENT.ppt22-REQUIREMENT.ppt
22-REQUIREMENT.ppt
ssuser5e271f1
 
Unit II- Hardware design & testing methods1 - Electronic Product Design
Unit II- Hardware design & testing methods1 - Electronic Product DesignUnit II- Hardware design & testing methods1 - Electronic Product Design
Unit II- Hardware design & testing methods1 - Electronic Product Design
Centre for Electronics, Computer, Self development
 
Requirements Engineering - "Ch2 an introduction to requirements"
Requirements Engineering - "Ch2 an introduction to requirements"Requirements Engineering - "Ch2 an introduction to requirements"
Requirements Engineering - "Ch2 an introduction to requirements"
Ra'Fat Al-Msie'deen
 
Software Requirements engineering
Software Requirements engineeringSoftware Requirements engineering
Software Requirements engineering
Md. Shafiuzzaman Hira
 
Beit 381 se lec 15 - 16 - 12 mar27 - req engg 1 of 3
Beit 381 se lec 15 - 16 -  12 mar27 - req engg 1 of 3Beit 381 se lec 15 - 16 -  12 mar27 - req engg 1 of 3
Beit 381 se lec 15 - 16 - 12 mar27 - req engg 1 of 3
babak danyal
 
Se lect11 btech
Se lect11 btechSe lect11 btech
Se lect11 btech
IIITA
 
Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...
Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...
Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...
Mumbai B.Sc.IT Study
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
Mubashir Yasin
 
Verifying and Validating Requirements
Verifying and Validating RequirementsVerifying and Validating Requirements
Verifying and Validating Requirements
Ravikanth-BA
 
Soft requirement
Soft requirementSoft requirement
Soft requirement
Rishav Upreti
 
Software Engineering .pdf
Software Engineering .pdfSoftware Engineering .pdf
Software Engineering .pdf
UtsavKumarSingh6
 

Similar to Software Engineering : Requirement Analysis & Specification (20)

Se lect9 btech
Se lect9 btechSe lect9 btech
Se lect9 btech
 
Software Engineering Lec 4-requirments
Software Engineering Lec 4-requirmentsSoftware Engineering Lec 4-requirments
Software Engineering Lec 4-requirments
 
Software Engineering REQUIREMENTS ANALYSIS AND SPECIFICATION
Software Engineering REQUIREMENTS ANALYSIS AND SPECIFICATIONSoftware Engineering REQUIREMENTS ANALYSIS AND SPECIFICATION
Software Engineering REQUIREMENTS ANALYSIS AND SPECIFICATION
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Software project management requirements analysis
Software project management requirements analysisSoftware project management requirements analysis
Software project management requirements analysis
 
Requirement Analysis - Software Enigneering
Requirement Analysis - Software EnigneeringRequirement Analysis - Software Enigneering
Requirement Analysis - Software Enigneering
 
3. 1 req elicitation
3. 1 req elicitation3. 1 req elicitation
3. 1 req elicitation
 
Un it 2-se-mod-staff
Un it 2-se-mod-staffUn it 2-se-mod-staff
Un it 2-se-mod-staff
 
1 Software Requirements Descriptions and specification.docx
1 Software Requirements Descriptions and specification.docx1 Software Requirements Descriptions and specification.docx
1 Software Requirements Descriptions and specification.docx
 
22-REQUIREMENT.ppt
22-REQUIREMENT.ppt22-REQUIREMENT.ppt
22-REQUIREMENT.ppt
 
Unit II- Hardware design & testing methods1 - Electronic Product Design
Unit II- Hardware design & testing methods1 - Electronic Product DesignUnit II- Hardware design & testing methods1 - Electronic Product Design
Unit II- Hardware design & testing methods1 - Electronic Product Design
 
Requirements Engineering - "Ch2 an introduction to requirements"
Requirements Engineering - "Ch2 an introduction to requirements"Requirements Engineering - "Ch2 an introduction to requirements"
Requirements Engineering - "Ch2 an introduction to requirements"
 
Software Requirements engineering
Software Requirements engineeringSoftware Requirements engineering
Software Requirements engineering
 
Beit 381 se lec 15 - 16 - 12 mar27 - req engg 1 of 3
Beit 381 se lec 15 - 16 -  12 mar27 - req engg 1 of 3Beit 381 se lec 15 - 16 -  12 mar27 - req engg 1 of 3
Beit 381 se lec 15 - 16 - 12 mar27 - req engg 1 of 3
 
Se lect11 btech
Se lect11 btechSe lect11 btech
Se lect11 btech
 
Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...
Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...
Project Management (Practical Qustion Paper) [CBSGS - 75:25 Pattern] {2013-20...
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
Verifying and Validating Requirements
Verifying and Validating RequirementsVerifying and Validating Requirements
Verifying and Validating Requirements
 
Soft requirement
Soft requirementSoft requirement
Soft requirement
 
Software Engineering .pdf
Software Engineering .pdfSoftware Engineering .pdf
Software Engineering .pdf
 

More from Ajit Nayak

Software Engineering : Software testing
Software Engineering : Software testingSoftware Engineering : Software testing
Software Engineering : Software testing
Ajit Nayak
 
Software Engineering : Process Models
Software Engineering : Process ModelsSoftware Engineering : Process Models
Software Engineering : Process Models
Ajit Nayak
 
Database Programming using SQL
Database Programming using SQLDatabase Programming using SQL
Database Programming using SQL
Ajit Nayak
 
Ns2: Introduction - Part I
Ns2: Introduction - Part INs2: Introduction - Part I
Ns2: Introduction - Part I
Ajit Nayak
 
Ns2: OTCL - PArt II
Ns2: OTCL - PArt IINs2: OTCL - PArt II
Ns2: OTCL - PArt II
Ajit Nayak
 
NS2: AWK and GNUplot - PArt III
NS2: AWK and GNUplot - PArt IIINS2: AWK and GNUplot - PArt III
NS2: AWK and GNUplot - PArt III
Ajit Nayak
 
Socket programming using C
Socket programming using CSocket programming using C
Socket programming using C
Ajit Nayak
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UML
Ajit Nayak
 
Parallel programming using MPI
Parallel programming using MPIParallel programming using MPI
Parallel programming using MPI
Ajit Nayak
 
Operating Systems Part III-Memory Management
Operating Systems Part III-Memory ManagementOperating Systems Part III-Memory Management
Operating Systems Part III-Memory Management
Ajit Nayak
 
Operating Systems Part I-Basics
Operating Systems Part I-BasicsOperating Systems Part I-Basics
Operating Systems Part I-Basics
Ajit Nayak
 
Operating Systems Part II-Process Scheduling, Synchronisation & Deadlock
Operating Systems Part II-Process Scheduling, Synchronisation & DeadlockOperating Systems Part II-Process Scheduling, Synchronisation & Deadlock
Operating Systems Part II-Process Scheduling, Synchronisation & Deadlock
Ajit Nayak
 
Introduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and RecoveryIntroduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and Recovery
Ajit Nayak
 
Introduction to database-Formal Query language and Relational calculus
Introduction to database-Formal Query language and Relational calculusIntroduction to database-Formal Query language and Relational calculus
Introduction to database-Formal Query language and Relational calculus
Ajit Nayak
 
Introduction to database-Normalisation
Introduction to database-NormalisationIntroduction to database-Normalisation
Introduction to database-Normalisation
Ajit Nayak
 
Introduction to database-ER Model
Introduction to database-ER ModelIntroduction to database-ER Model
Introduction to database-ER Model
Ajit Nayak
 
Computer Networks Module III
Computer Networks Module IIIComputer Networks Module III
Computer Networks Module III
Ajit Nayak
 
Computer Networks Module II
Computer Networks Module IIComputer Networks Module II
Computer Networks Module II
Ajit Nayak
 
Computer Networks Module I
Computer Networks Module IComputer Networks Module I
Computer Networks Module I
Ajit Nayak
 
Object Oriented Programming using C++ Part III
Object Oriented Programming using C++ Part IIIObject Oriented Programming using C++ Part III
Object Oriented Programming using C++ Part III
Ajit Nayak
 

More from Ajit Nayak (20)

Software Engineering : Software testing
Software Engineering : Software testingSoftware Engineering : Software testing
Software Engineering : Software testing
 
Software Engineering : Process Models
Software Engineering : Process ModelsSoftware Engineering : Process Models
Software Engineering : Process Models
 
Database Programming using SQL
Database Programming using SQLDatabase Programming using SQL
Database Programming using SQL
 
Ns2: Introduction - Part I
Ns2: Introduction - Part INs2: Introduction - Part I
Ns2: Introduction - Part I
 
Ns2: OTCL - PArt II
Ns2: OTCL - PArt IINs2: OTCL - PArt II
Ns2: OTCL - PArt II
 
NS2: AWK and GNUplot - PArt III
NS2: AWK and GNUplot - PArt IIINS2: AWK and GNUplot - PArt III
NS2: AWK and GNUplot - PArt III
 
Socket programming using C
Socket programming using CSocket programming using C
Socket programming using C
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UML
 
Parallel programming using MPI
Parallel programming using MPIParallel programming using MPI
Parallel programming using MPI
 
Operating Systems Part III-Memory Management
Operating Systems Part III-Memory ManagementOperating Systems Part III-Memory Management
Operating Systems Part III-Memory Management
 
Operating Systems Part I-Basics
Operating Systems Part I-BasicsOperating Systems Part I-Basics
Operating Systems Part I-Basics
 
Operating Systems Part II-Process Scheduling, Synchronisation & Deadlock
Operating Systems Part II-Process Scheduling, Synchronisation & DeadlockOperating Systems Part II-Process Scheduling, Synchronisation & Deadlock
Operating Systems Part II-Process Scheduling, Synchronisation & Deadlock
 
Introduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and RecoveryIntroduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and Recovery
 
Introduction to database-Formal Query language and Relational calculus
Introduction to database-Formal Query language and Relational calculusIntroduction to database-Formal Query language and Relational calculus
Introduction to database-Formal Query language and Relational calculus
 
Introduction to database-Normalisation
Introduction to database-NormalisationIntroduction to database-Normalisation
Introduction to database-Normalisation
 
Introduction to database-ER Model
Introduction to database-ER ModelIntroduction to database-ER Model
Introduction to database-ER Model
 
Computer Networks Module III
Computer Networks Module IIIComputer Networks Module III
Computer Networks Module III
 
Computer Networks Module II
Computer Networks Module IIComputer Networks Module II
Computer Networks Module II
 
Computer Networks Module I
Computer Networks Module IComputer Networks Module I
Computer Networks Module I
 
Object Oriented Programming using C++ Part III
Object Oriented Programming using C++ Part IIIObject Oriented Programming using C++ Part III
Object Oriented Programming using C++ Part III
 

Recently uploaded

SELENIUM CONF -PALLAVI SHARMA - 2024.pdf
SELENIUM CONF -PALLAVI SHARMA - 2024.pdfSELENIUM CONF -PALLAVI SHARMA - 2024.pdf
SELENIUM CONF -PALLAVI SHARMA - 2024.pdf
Pallavi Sharma
 
Call Girls Madurai 8824825030 Escort In Madurai service 24X7
Call Girls Madurai 8824825030 Escort In Madurai service 24X7Call Girls Madurai 8824825030 Escort In Madurai service 24X7
Call Girls Madurai 8824825030 Escort In Madurai service 24X7
Poonam Singh
 
Cuttack Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
Cuttack Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort ServiceCuttack Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
Cuttack Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
yakranividhrini
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
gapboxn
 
Call Girls Chennai +91-8824825030 Vip Call Girls Chennai
Call Girls Chennai +91-8824825030 Vip Call Girls ChennaiCall Girls Chennai +91-8824825030 Vip Call Girls Chennai
Call Girls Chennai +91-8824825030 Vip Call Girls Chennai
paraasingh12 #V08
 
CSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdfCSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdf
Ismail Sultan
 
🔥Independent Call Girls In Pune 💯Call Us 🔝 7014168258 🔝💃Independent Pune Esco...
🔥Independent Call Girls In Pune 💯Call Us 🔝 7014168258 🔝💃Independent Pune Esco...🔥Independent Call Girls In Pune 💯Call Us 🔝 7014168258 🔝💃Independent Pune Esco...
🔥Independent Call Girls In Pune 💯Call Us 🔝 7014168258 🔝💃Independent Pune Esco...
AK47
 
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
nainakaoornoida
 
High Profile Call Girls Ahmedabad 🔥 7737669865 🔥 Real Fun With Sexual Girl Av...
High Profile Call Girls Ahmedabad 🔥 7737669865 🔥 Real Fun With Sexual Girl Av...High Profile Call Girls Ahmedabad 🔥 7737669865 🔥 Real Fun With Sexual Girl Av...
High Profile Call Girls Ahmedabad 🔥 7737669865 🔥 Real Fun With Sexual Girl Av...
dABGO KI CITy kUSHINAGAR Ak47
 
❣Unsatisfied Bhabhi Call Girls Surat 💯Call Us 🔝 7014168258 🔝💃Independent Sura...
❣Unsatisfied Bhabhi Call Girls Surat 💯Call Us 🔝 7014168258 🔝💃Independent Sura...❣Unsatisfied Bhabhi Call Girls Surat 💯Call Us 🔝 7014168258 🔝💃Independent Sura...
❣Unsatisfied Bhabhi Call Girls Surat 💯Call Us 🔝 7014168258 🔝💃Independent Sura...
hotchicksescort
 
Literature review for prompt engineering of ChatGPT.pptx
Literature review for prompt engineering of ChatGPT.pptxLiterature review for prompt engineering of ChatGPT.pptx
Literature review for prompt engineering of ChatGPT.pptx
LokerXu2
 
Hot Call Girls In Bangalore ✔ 9079923931 ✔ Hi I Am Divya Vip Call Girl Servic...
Hot Call Girls In Bangalore ✔ 9079923931 ✔ Hi I Am Divya Vip Call Girl Servic...Hot Call Girls In Bangalore ✔ 9079923931 ✔ Hi I Am Divya Vip Call Girl Servic...
Hot Call Girls In Bangalore ✔ 9079923931 ✔ Hi I Am Divya Vip Call Girl Servic...
Banerescorts
 
Technological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdfTechnological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdf
tanujaharish2
 
paper relate Chozhavendhan et al. 2020.pdf
paper relate Chozhavendhan et al. 2020.pdfpaper relate Chozhavendhan et al. 2020.pdf
paper relate Chozhavendhan et al. 2020.pdf
ShurooqTaib
 
Intuit CRAFT demonstration presentation for sde
Intuit CRAFT demonstration presentation for sdeIntuit CRAFT demonstration presentation for sde
Intuit CRAFT demonstration presentation for sde
ShivangMishra54
 
MODULE 5 BIOLOGY FOR ENGINEERS TRENDS IN BIO ENGINEERING.pptx
MODULE 5 BIOLOGY FOR ENGINEERS TRENDS IN BIO ENGINEERING.pptxMODULE 5 BIOLOGY FOR ENGINEERS TRENDS IN BIO ENGINEERING.pptx
MODULE 5 BIOLOGY FOR ENGINEERS TRENDS IN BIO ENGINEERING.pptx
NaveenNaveen726446
 
The Differences between Schedule 40 PVC Conduit Pipe and Schedule 80 PVC Conduit
The Differences between Schedule 40 PVC Conduit Pipe and Schedule 80 PVC ConduitThe Differences between Schedule 40 PVC Conduit Pipe and Schedule 80 PVC Conduit
The Differences between Schedule 40 PVC Conduit Pipe and Schedule 80 PVC Conduit
Guangdong Ctube Industry Co., Ltd.
 
SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )
Tsuyoshi Horigome
 
Sri Guru Hargobind Ji - Bandi Chor Guru.pdf
Sri Guru Hargobind Ji - Bandi Chor Guru.pdfSri Guru Hargobind Ji - Bandi Chor Guru.pdf
Sri Guru Hargobind Ji - Bandi Chor Guru.pdf
Balvir Singh
 
Microsoft Azure AD architecture and features
Microsoft Azure AD architecture and featuresMicrosoft Azure AD architecture and features
Microsoft Azure AD architecture and features
ssuser381403
 

Recently uploaded (20)

SELENIUM CONF -PALLAVI SHARMA - 2024.pdf
SELENIUM CONF -PALLAVI SHARMA - 2024.pdfSELENIUM CONF -PALLAVI SHARMA - 2024.pdf
SELENIUM CONF -PALLAVI SHARMA - 2024.pdf
 
Call Girls Madurai 8824825030 Escort In Madurai service 24X7
Call Girls Madurai 8824825030 Escort In Madurai service 24X7Call Girls Madurai 8824825030 Escort In Madurai service 24X7
Call Girls Madurai 8824825030 Escort In Madurai service 24X7
 
Cuttack Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
Cuttack Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort ServiceCuttack Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
Cuttack Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
 
Call Girls Chennai +91-8824825030 Vip Call Girls Chennai
Call Girls Chennai +91-8824825030 Vip Call Girls ChennaiCall Girls Chennai +91-8824825030 Vip Call Girls Chennai
Call Girls Chennai +91-8824825030 Vip Call Girls Chennai
 
CSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdfCSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdf
 
🔥Independent Call Girls In Pune 💯Call Us 🔝 7014168258 🔝💃Independent Pune Esco...
🔥Independent Call Girls In Pune 💯Call Us 🔝 7014168258 🔝💃Independent Pune Esco...🔥Independent Call Girls In Pune 💯Call Us 🔝 7014168258 🔝💃Independent Pune Esco...
🔥Independent Call Girls In Pune 💯Call Us 🔝 7014168258 🔝💃Independent Pune Esco...
 
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
 
High Profile Call Girls Ahmedabad 🔥 7737669865 🔥 Real Fun With Sexual Girl Av...
High Profile Call Girls Ahmedabad 🔥 7737669865 🔥 Real Fun With Sexual Girl Av...High Profile Call Girls Ahmedabad 🔥 7737669865 🔥 Real Fun With Sexual Girl Av...
High Profile Call Girls Ahmedabad 🔥 7737669865 🔥 Real Fun With Sexual Girl Av...
 
❣Unsatisfied Bhabhi Call Girls Surat 💯Call Us 🔝 7014168258 🔝💃Independent Sura...
❣Unsatisfied Bhabhi Call Girls Surat 💯Call Us 🔝 7014168258 🔝💃Independent Sura...❣Unsatisfied Bhabhi Call Girls Surat 💯Call Us 🔝 7014168258 🔝💃Independent Sura...
❣Unsatisfied Bhabhi Call Girls Surat 💯Call Us 🔝 7014168258 🔝💃Independent Sura...
 
Literature review for prompt engineering of ChatGPT.pptx
Literature review for prompt engineering of ChatGPT.pptxLiterature review for prompt engineering of ChatGPT.pptx
Literature review for prompt engineering of ChatGPT.pptx
 
Hot Call Girls In Bangalore ✔ 9079923931 ✔ Hi I Am Divya Vip Call Girl Servic...
Hot Call Girls In Bangalore ✔ 9079923931 ✔ Hi I Am Divya Vip Call Girl Servic...Hot Call Girls In Bangalore ✔ 9079923931 ✔ Hi I Am Divya Vip Call Girl Servic...
Hot Call Girls In Bangalore ✔ 9079923931 ✔ Hi I Am Divya Vip Call Girl Servic...
 
Technological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdfTechnological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdf
 
paper relate Chozhavendhan et al. 2020.pdf
paper relate Chozhavendhan et al. 2020.pdfpaper relate Chozhavendhan et al. 2020.pdf
paper relate Chozhavendhan et al. 2020.pdf
 
Intuit CRAFT demonstration presentation for sde
Intuit CRAFT demonstration presentation for sdeIntuit CRAFT demonstration presentation for sde
Intuit CRAFT demonstration presentation for sde
 
MODULE 5 BIOLOGY FOR ENGINEERS TRENDS IN BIO ENGINEERING.pptx
MODULE 5 BIOLOGY FOR ENGINEERS TRENDS IN BIO ENGINEERING.pptxMODULE 5 BIOLOGY FOR ENGINEERS TRENDS IN BIO ENGINEERING.pptx
MODULE 5 BIOLOGY FOR ENGINEERS TRENDS IN BIO ENGINEERING.pptx
 
The Differences between Schedule 40 PVC Conduit Pipe and Schedule 80 PVC Conduit
The Differences between Schedule 40 PVC Conduit Pipe and Schedule 80 PVC ConduitThe Differences between Schedule 40 PVC Conduit Pipe and Schedule 80 PVC Conduit
The Differences between Schedule 40 PVC Conduit Pipe and Schedule 80 PVC Conduit
 
SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )
 
Sri Guru Hargobind Ji - Bandi Chor Guru.pdf
Sri Guru Hargobind Ji - Bandi Chor Guru.pdfSri Guru Hargobind Ji - Bandi Chor Guru.pdf
Sri Guru Hargobind Ji - Bandi Chor Guru.pdf
 
Microsoft Azure AD architecture and features
Microsoft Azure AD architecture and featuresMicrosoft Azure AD architecture and features
Microsoft Azure AD architecture and features
 

Software Engineering : Requirement Analysis & Specification

  • 1. Ajit K Nayak, Ph.D. ajitnayak@soauniversity.ac.in Software Engineering Principles Requirements analysis & specification
  • 2. Acknowledgements • Slides of Prof. Rajib Mall, IIT, KGP
  • 3. Why Study Software Engineering? • Many projects have failed because – they started to develop without adequately determining whether they are building what the customer really wanted. • Customer Requirement
  • 5. Requirements • A Requirement is a capability or condition required from the system. • What is involved in RAS? – Determine what is expected by the client from the system. (Gather and Analyze) – Document those in a form that is clear to the client as well as to the development team members. (Document)
  • 6. Activities in RAS Requirements Gathering Requirements Analysis Requirements Specification SRS Document
  • 7. Requirements engineering • The process of establishing the services that – the customer requires from a system and – the constraints under which it operates and is developed. • The requirements themselves are the descriptions of – the system services and – constraints that are generated during the requirements engineering process.
  • 8. Requirements Analysis and Specification  Requirements Gathering:  Fully understand the user requirements.  Requirements Analysis:  Remove inconsistencies, anomalies, etc. from requirements.  Requirements Specification:  Document requirements properly in an SRS document.
  • 9. Need for SRS… • Good SRS reduces development cost – Req. errors are expensive to fix later – Req. changes cost a lot (typically 40% changes) – Good SRS can minimize changes and errors – Substantial savings --- effort spent during req. saves multiple times that effort • An Example: – Cost of fixing errors in req., design, coding, acceptance testing and operation are 2, 5, 15, 50, 150 person-months
  • 10. Uses of SRS Document • Establishes the basis for agreement between the customers and the suppliers • Forms the starting point for development. • Provide a basis for estimating costs and schedules. • Provide a baseline for validation and verification. • Facilitates transfer. • Serves as a basis for enhancement. • The SRS can serve as the basis for writing User Manual for the software: – User Manual: Describes the functionality from the perspective of a user --- An important document for users. – Typically also describes how to carry out the required tasks with examples.
  • 11. SRS Document: Stakeholders • SRS intended for a diverse audience: – Customers and users for validation, contract, ... – Systems (requirements) analysts – Developers, programmers to implement the system – Testers to check that the requirements have been met – Project Managers to measure and control the project • Different levels of detail and formality is needed for each audience • Different templates for requirements specifications: – Often variations of IEEE 830
  • 12. Types of Requirements • Functional requirements – Statements of services the system should provide, how the system should react to particular inputs and how the system should behave in particular situations. – May state what the system should not do. • Non-functional requirements – Constraints on the services or functions offered by the system such as timing constraints, constraints on the development process, standards, etc. – Often apply to the system as a whole rather than individual features or services.
  • 13. Functional Requirements • Descriptions of data to be entered into the system • Descriptions of operations performed by each screen • Descriptions of work-flows performed by the system • Descriptions of system reports or other outputs • Who can enter the data into the system? • How the system meets applicable regulatory requirements
  • 14. Functional Requirements contd. • The functional requirements discusses the functionalities required from the system. • The system is considered to perform a set of high- level functions {fi } • Each function f i of the system can be considered as a transformation of a set of input data (Ii) to the corresponding set of output data (Oi) • The user can get some meaningful piece of work done using a high-level function. fi Input Data Output Data I1 I2 I3 O1 O2 O3
  • 15. Example Functional Requirements - I • Interface requirements – Field 1 accepts numeric data entry. – Field 2 only accepts dates before the current date. – Screen 1 can print on-screen data to the printer. • Business Requirements – Data must be entered before a request can be approved. – Clicking the Approve button moves the request to the Approval Work flow – All personnel using the system will be trained according to internal SOP AA-101. • Regulatory/Compliance Requirements – The database will have a functional audit trail. – The system will limit access to authorized users. – The spreadsheet can secure data with electronic signatures.
  • 16. Example Functional Requirements - II • Library system - F1: Search Book function – Input: an author’s name – Output: details of the author’s books and the location of these books in the library • ATM (Cash Withdraw)- R1: withdraw cash – Description: The withdraw cash function determines the type of account that the user has and the account number from which the user wishes to withdraw cash. – It checks the balance to determine whether the requested amount is available in the account. – If enough balance is available, it outputs the required cash, otherwise it generates an error message.
  • 17. Example Functional Requirements - III • ATM (Cash Withdraw)- R1: withdraw cash – R1.1: select withdraw amount option • Input: “withdraw amount” option, • Output: user prompted to enter the account type – R1.2: select account type • Input: user option, • Output: prompt to enter amount – R1.3: get required amount • Input: amount to be withdrawn in integer values greater than 100 and less than10,000 in multiples of 100. • Output: The requested cash and printed transaction statement.
  • 18. Non-functional Requirements - I • Characteristics of the system which can not be expressed as functions – Maintainability, Portability, Usability, Security, Safety, Reliability, Performance, etc. • Example: How fast can the system produce results? – So that it does not overload another system to which it supplies data, etc. – Needs to be measurable (verifiability) • e.g. response time should be less than 1sec, 90% of the time
  • 19. Non-functional Requirements - II Product Requirements Interoperability Requirements Ethical Requirements Efficiency Requirements Portability Requirements Reliability Requirements Legislative Requirements Delivery Requirements Standards Requirements Implementation Requirements Safety Requirements Usability Requirements Performance Requirements Space Requirements Privacy Requirements External Requirements Organizational Requirements Non- functional Requirements
  • 20. Non-functional Requirements III • Constraints are NFR – Hardware to be used, – Operating system – DBMS to be used – Capabilities of I/O devices – Standards compliance – Data representations by the interfaced system • Project management issues (costs, time, schedule) are often considered as non-functional requirements • External Interface Requirements – User Interface, Hardware Interface, Software Interface, Communication Interface, File export format
  • 21. Importance of Nonfunctional Req. • Non-functional (product) requirements play an important role for critical systems. – Systems whose ‘failure’ causes significant economic, physical or human damage to organizations or people. • There are three principal types of critical system – Business critical systems : Failure leads to significant economic damage. • customer accounting system in a bank – Mission critical systems : Failure leads to the abortion of a mission. • navigational system for a spacecraft – Safety critical systems: Failure endangers human life. • a controller of a nuclear plant
  • 22. Requirements for critical systems - I • The principal non-functional constraints which are relevant to critical systems – Reliability ‹ • the ability of a system to perform its required functions under stated conditions for a specific period of time. • Can be considered under two separate headings: • Availability - is the system available for service when requested by end-users. • Failure rate - how often does the system fail to deliver the service as expected by end-users. – Performance • Response requirements (how quickly the system reacts to a user input) • Throughput requirements (how much the system can accomplish within a specified amount of time) • Availability requirements (is the system available for service when requested by end-users)
  • 23. Requirements for critical systems-II • Security – to ensure un authorised access to the system and its data is not allowed ‹ – Ensure the integrity of the system from accidental or malicious damage. ‹ • Safety ‹ – ‘shall not’ requirements which exclude unsafe situations from the possible solution space of the system • Usabilityis – the ease with which a user can learn to operate, prepare inputs for, and interpret outputs of system or component. – Usability requirements include: • Well-structured user manuals ‹ • Informative error messages ‹ • Help facilities ‹ • Well-formed graphical user interfaces
  • 24. Examples-I • The System service X shall have an availability of 999/1000 or 99%. – Reliability requirement which means that out of every 1000 requests for this service, 999 must be satisfied. • System Y shall process a minimum of 8 transactions per second. – Performance requirement. • The access permissions for system data may only be changed by the system’s data administrator. • All system data must be backed up every 24 hours and the backup copies stored in a secure location which is not in the same building as the system. – Security requirements
  • 25. Examples-II • The violated system shall not permit any further operation unless the operator guard is in place. • The system shall not operate if the external temperature is below 4 degrees Celsius. • The system should not longer operate in case of fire (e.g. an elevator) – Safety requirements
  • 26. Summary - NFR User’s need User’s concern Non-functional requirement Function 1.Ease of use 2. Unauthorised access 3.Likelihood of failure 1.Usability 2. Security 3. Reliability Performance 1. Resource utilization 2.Performance verification 3.Ease of interfacing 1.Efficiency 2.Verifiability 3. Interoperability Change 1.Ease of repair 2.Ease of change 3.Ease of transport 4.Ease of expanding or upgrading capacity or performance ? 1.Maintainability 2. Flexibility 3. Portability 4.Expandability
  • 27. Measurable metrics for NFR Property Metric Performance 1.Processed transactions per second 2.Response time to user input Reliability 1.MTTF, MTTR, MTBF 2.Rate of occurrence of failure Availability 1.Probability of failure on demand Size 1.Kbytes, Mbytes Usability 1.Time taken to learn the software 2.Number of errors made by user Robustness 1.Time to restart the system after failure
  • 28. Software efficiency • It refers to the level of use of computational resources, such as CPU cycles, memory, disk space, buffers and communications channels. • Efficiency can be characterized as follows: – Capacity - maximum number of users/terminals/ transactions/... the system can handle without performance degradation – Degradation of service -- what happens when a system with capacity X widgets per time-unit receives X+1 widgets? • We don't want the system to simply crash! Rather, we may want to stipulate that the system should handle the load, perhaps with degraded performance.
  • 29. NFR: Trigger Questions - I • Performance characteristics – Are there any speed, throughput, or response time constraints on the system? ‹ – Are there size or capacity constraints on the data to be processed by the system? • Quality issues: – What are the requirements for reliability? ‹‹ – What is the maximum time for restarting the system after a failure? ‹ – What is the acceptable system downtime per 24- hour period?
  • 30. NFR: Trigger Questions - II • Resources and Management Issues: – How often will the system be backed up? – Who will be responsible for the back up? – Who is responsible for system installation? – Who will be responsible for system maintenance?
  • 31. Domain requirements • The system’s operational domain imposes requirements on the system. • Example: – a train control system has to take into account the braking characteristics in different weather conditions. • Domain requirements be new functional requirements, constraints on existing requirements or define specific computations. • If domain requirements are not satisfied, the system may be unworkable.
  • 32. e.g. Train protection system • Domain requirement for a train protection system is given as • The deceleration of the train shall be computed as: – Dtrain = Dcontrol + Dgradient • where Dgradient is 9.81 ms2 * compensated gradient/alpha and where the values of 9.81 ms2 /alpha are known for different types of train. • It is difficult for a non-specialist to understand the implications of this and how it interacts with other requirements.
  • 33. IEEE 830-1998 Standard for SRS - I • Title • Table of Contents • 1. Introduction • 2. Overall Description • 3. Specific Requirements • 4.Change Management Process • 5. Document Approval • Appendices • Index
  • 34. IEEE 830-1998 Standard: Introduction • 1.1 Purpose – Describe purpose of this SRS – Describe intended audience • 1.2 Scope – Identify the software product – Enumerate what the system will and will not do – Describe user classes and benefits for each • 1.3 Definitions. Acronyms, and Abbreviations – Define the vocabulary of the SRS (may reference appendix) • 1.4 References – List all referenced documents including sources (e.g., Use Case Model and Problem Statement; Experts in the field) • 1.5 Overview – Describe the content of the rest of the SRS – Describe how the SRS is organized
  • 35. IEEE 830-1998 : Overall Description • 2.1 Product Perspective – Present the business case and operational concept of the system – Describe how the proposed system fits into the business context – Describe external interfaces: system, user, hardware, software, communication – Describe constraints: memory, operational, site adaptation • 2.2 Product Functions – Summarize the major functional capabilities – Include the Use Case Diagram and supporting narrative (identify actors and use cases) – Include Data Flow Diagram if appropriate • 2.3 User Characteristics – Describe and justify technical skills and capabilities of each user class • 2.4 Constraints – Describe other constraints that will limit developer’s options; e.g., regulatory policies; target platform, database, network software and protocols, development standards requirements • 2.5 Assumptions and Dependencies
  • 36. IEEE 830-1998 : Overall Description • 2.1 Product Perspective – Present the business case and operational concept of the system – Describe how the proposed system fits into the business context – Describe external interfaces: system, user, hardware, software, communication – Describe constraints: memory, operational, site adaptation • 2.2 Product Functions – Summarize the major functional capabilities – Include the Use Case Diagram and supporting narrative (identify actors and use cases) – Include Data Flow Diagram if appropriate • 2.3 User Characteristics – Describe and justify technical skills and capabilities of each user class • 2.4 Constraints – Describe other constraints that will limit developer’s options; e.g., regulatory policies; target platform, database, network software and protocols, development standards requirements • 2.5 Assumptions and Dependencies
  • 37. IEEE 830-1998 : Specific Requirements • 3.1 External Interfaces – Detail all inputs and outputs – Examples: GUI screens, file formats • 3.2 Functional Requirements – Include detailed specifications of all the functional requirements • 2.3 Non-Functional Requirements – Describes all non-functional requirements that can’t be expressed as a function. • Characteristics of the system which can not be expressed as functions. • e.g. performance requirements, database requirements, design constraints, quality attributes, . . .
  • 38. Properties of a good SRS document • Concise. • Structured. • Black-box view. • Conceptual integrity. • Response to undesired events. • Verifiable.
  翻译: