SlideShare a Scribd company logo
Software Requirements
Lecture # 3
2
Kinds of Software Requirements
• Functional requirements
• Non-functional requirements
• Domain requirements
• Inverse requirements
• Design and implementation constraints
3
Non-Functional Requirements Discussion
• NFRs are very important to capture the
emergent behavior of the system in these
there major dimensions
• Product
– Usability, reliability, portability, efficiency
(performance, space)
• Organizational
– Standards, implementation, delivery
• External
– Interoperability, ethical, legislative (privacy, safety)
4
NFRs as Goals
• Non-functional requirements are sometimes
written as general goals, which are difficult to
verify
• They should be expressed quantitatively using
metrics (measures) that can be objectively
tested
5
Example: Goal converted into an NFR
• Goal (unverifiable)
– The system should be easy to use by experienced
controllers and should be organized in such a way
that user errors are minimized
• Non-functional requirement (verifiable)
– Experienced controllers shall be able to use all the
system functions after a total of two hours’
training. After this training, the average number of
errors made by experienced users shall not exceed
two per day
Metrics for
Non-Functional Requirements
(NFRs)
7
Metrics for NFRs - 1
Property Measure
Speed 1. Processed
transactions/second
2. Response time
3. Screen refresh time
Requirements related to “Speed” can use different
measures to quantify the goal
8
Metrics for NFRs - 2
Property Measure
Size 1. K bytes
2. Number of function points
Requirements related to “Size” can use different
measures to quantify the goal
9
Metrics for NFRs - 3
Property Measure
Ease of use 1. Training time
2. Number of help frames
Requirements related to “Ease of use” can use different
measures to quantify the goal
10
Metrics for NFRs - 4
Property Measure
Reliability 1. Mean time to failure
2. Probability of
unavailability
3. Rate of failure occurrence
4. Availability
Requirements related to “Reliability” can use different
measures to quantify the goal
11
Metrics for NFRs - 5
Property Measure
Robustness 1. Time to restart after failure
2. Percentage of events
causing failure
3. Probability of data
corruption on failure
Requirements related to “Robustness” can use different
measures to quantify the goal
12
Metrics for NFRs - 6
Property Measure
Portability 1. Percentage of target-
dependent statements
2. Number of target systems
Requirements related to “Portability” can use different
measures to quantify the goal
13
Discussion on Metrics for NFRs
• With the help of these measures the NFRs can
be verified quantitatively
• It should also be noted that the cost of
quantitatively verifying each NFR may be very
high
14
Kinds of Software Requirements
• Functional requirements
• Non-functional requirements
• Domain requirements
• Inverse requirements
• Design and implementation constraints
Domain Requirements
16
Domain Requirements - 1
• Requirements that come from the application
domain and reflect fundamental
characteristics of that application domain
• These can be both the functional or non-
functional requirements
17
Domain Requirements - 2
• These requirements, sometimes, are not
explicitly mentioned
• Domain experts find it difficult to convey
domain requirements
• Their absence can cause significant
dissatisfaction
18
Domain Requirements - 3
• Domain requirements can impose strict
constraints on solutions. This is particularly
true for scientific and engineering domains
• Domain-specific terminology can also cause
confusion
19
Domain Requirements - 4
• Example:
In a commission-based sales businesses, there
is no concept of negative commission.
However, if care is not taken novice
developers can be lured into developing
systems, which calculate negative commission
20
Domain Requirements - 5
• Banking domain has its own specific
constraints, for example, most banks do not
allow over-draw on most accounts, however,
most banks allow some accounts to be over-
drawn
21
Kinds of Software Requirements
• Functional requirements
• Non-functional requirements
• Domain requirements
• Inverse requirements
• Design and implementation constraints
Inverse Requirements
23
Inverse Requirements - 1
• They explain what the system shall not do.
Many people find it convenient to describe
their needs in this manner
• These requirements indicate the indecisive
nature of customers about certain aspects of a
new software product
24
Inverse Requirements - 2
• Example:
The system shall not use red color in the user
interface, whenever it is asking for inputs from
the end-user
25
Kinds of Software Requirements
• Functional requirements
• Non-functional requirements
• Domain requirements
• Inverse requirements
• Design and implementation constraints
Design and Implementation
Constraints
27
Design and Implementation
Constraints - 1
• They are development guidelines within which
the designer must work
• These requirements can seriously limit design
and implementation options
• Can also have impact on human resources
28
Design and Implementation
Constraints Examples
• The system shall be developed using the
Microsoft .Net platform
• The system shall be developed using open
source tools and shall run on Linux operating
system
29
Summary
• Discussed different kinds of requirements
including domain, inverse, and
implementation constraints
• Requirements should be explored from
different perspectives and categorized
differently
30
References
• ‘Requirements Engineering: Processes and
Techniques’ by G. Kotonya and I. Sommerville,
John Wiley & Sons, 1998
• Software Requirements: Objects, Functions,
and States by A. Davis, PH, 1993
• Software Engineering 6th Edition, by I.
Sommerville, 2000
• Software Engineering 5th Edition, by R.
Pressman

More Related Content

What's hot

Interface specification
Interface specificationInterface specification
Interface specification
maliksiddique1
 
Learning Management System-SRS Modified(Semi-Final)
Learning Management System-SRS Modified(Semi-Final)Learning Management System-SRS Modified(Semi-Final)
Learning Management System-SRS Modified(Semi-Final)
Sharon Varghese
 
Android Application And Unity3D Game Documentation
Android Application And Unity3D Game DocumentationAndroid Application And Unity3D Game Documentation
Android Application And Unity3D Game Documentation
Sneh Raval
 
Requirement specification (SRS)
Requirement specification (SRS)Requirement specification (SRS)
Requirement specification (SRS)
kunj desai
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
Aman Adhikari
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
Rupesh Vaishnav
 
Rad model
Rad modelRad model
Rad model
Sneha Chopra
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
Ajit Nayak
 
Final Year Game Project Report - Riko: The Aventurer
 Final Year Game Project Report - Riko: The Aventurer  Final Year Game Project Report - Riko: The Aventurer
Final Year Game Project Report - Riko: The Aventurer
Nusrat Jahan Shanta
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
Prachi Sasankar
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
SHREEHARI WADAWADAGI
 
Professional Practice Course Outline
Professional Practice Course OutlineProfessional Practice Course Outline
Professional Practice Course Outline
Saqib Raza
 
software engineering
software engineeringsoftware engineering
software engineering
Azad public school
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
Reggie Niccolo Santos
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
Zahoorali Khan
 
Spm unit 1
Spm unit 1Spm unit 1
Spm unit 1
sweetyammu
 
Software project management
Software project managementSoftware project management
Software project management
R A Akerkar
 
Core Game Design (Game Architecture)
Core Game Design (Game Architecture)Core Game Design (Game Architecture)
Core Game Design (Game Architecture)
Rajkumar Pawar
 
Context model
Context modelContext model
Context model
Ubaid423
 
HCI 3e - Ch 5: Interaction design basics
HCI 3e - Ch 5:  Interaction design basicsHCI 3e - Ch 5:  Interaction design basics
HCI 3e - Ch 5: Interaction design basics
Alan Dix
 

What's hot (20)

Interface specification
Interface specificationInterface specification
Interface specification
 
Learning Management System-SRS Modified(Semi-Final)
Learning Management System-SRS Modified(Semi-Final)Learning Management System-SRS Modified(Semi-Final)
Learning Management System-SRS Modified(Semi-Final)
 
Android Application And Unity3D Game Documentation
Android Application And Unity3D Game DocumentationAndroid Application And Unity3D Game Documentation
Android Application And Unity3D Game Documentation
 
Requirement specification (SRS)
Requirement specification (SRS)Requirement specification (SRS)
Requirement specification (SRS)
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
 
Rad model
Rad modelRad model
Rad model
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
Final Year Game Project Report - Riko: The Aventurer
 Final Year Game Project Report - Riko: The Aventurer  Final Year Game Project Report - Riko: The Aventurer
Final Year Game Project Report - Riko: The Aventurer
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Professional Practice Course Outline
Professional Practice Course OutlineProfessional Practice Course Outline
Professional Practice Course Outline
 
software engineering
software engineeringsoftware engineering
software engineering
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Spm unit 1
Spm unit 1Spm unit 1
Spm unit 1
 
Software project management
Software project managementSoftware project management
Software project management
 
Core Game Design (Game Architecture)
Core Game Design (Game Architecture)Core Game Design (Game Architecture)
Core Game Design (Game Architecture)
 
Context model
Context modelContext model
Context model
 
HCI 3e - Ch 5: Interaction design basics
HCI 3e - Ch 5:  Interaction design basicsHCI 3e - Ch 5:  Interaction design basics
HCI 3e - Ch 5: Interaction design basics
 

Viewers also liked

An overview of software requirements engineering
An overview of software requirements engineeringAn overview of software requirements engineering
An overview of software requirements engineering
Ian Sommerville
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
Saqib Raza
 
software requirements
 software requirements software requirements
software requirements
Zaman Khan
 
7 Engineering Profession
7 Engineering Profession7 Engineering Profession
7 Engineering Profession
Saqib Raza
 
Chap2 RE processes
Chap2 RE processesChap2 RE processes
Chap2 RE processes
Ian Sommerville
 
Chap5 RE management
Chap5 RE managementChap5 RE management
Chap5 RE management
Ian Sommerville
 
Chap3 RE elicitation
Chap3 RE elicitationChap3 RE elicitation
Chap3 RE elicitation
Ian Sommerville
 
Chap1 RE Introduction
Chap1 RE IntroductionChap1 RE Introduction
Chap1 RE Introduction
Ian Sommerville
 
Chap4 RE validation
Chap4 RE validationChap4 RE validation
Chap4 RE validation
Ian Sommerville
 

Viewers also liked (9)

An overview of software requirements engineering
An overview of software requirements engineeringAn overview of software requirements engineering
An overview of software requirements engineering
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
software requirements
 software requirements software requirements
software requirements
 
7 Engineering Profession
7 Engineering Profession7 Engineering Profession
7 Engineering Profession
 
Chap2 RE processes
Chap2 RE processesChap2 RE processes
Chap2 RE processes
 
Chap5 RE management
Chap5 RE managementChap5 RE management
Chap5 RE management
 
Chap3 RE elicitation
Chap3 RE elicitationChap3 RE elicitation
Chap3 RE elicitation
 
Chap1 RE Introduction
Chap1 RE IntroductionChap1 RE Introduction
Chap1 RE Introduction
 
Chap4 RE validation
Chap4 RE validationChap4 RE validation
Chap4 RE validation
 

Similar to Software Requirements

Software Requirements engineering
Software Requirements engineeringSoftware Requirements engineering
Software Requirements engineering
Md. Shafiuzzaman Hira
 
Software Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and SpecificationSoftware Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and Specification
Nishu Rastogi
 
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
Jayanthi Kannan MK
 
vu-re-lecture-02 requirements engineering.ppt
vu-re-lecture-02 requirements engineering.pptvu-re-lecture-02 requirements engineering.ppt
vu-re-lecture-02 requirements engineering.ppt
ubaidullah75790
 
2 software requirements-02
2 software requirements-022 software requirements-02
2 software requirements-02
Zaman Khan
 
Software Requirements
Software RequirementsSoftware Requirements
Software Requirements
Nethan Shaik
 
Lecture 5 Types of Requirements I.pptx
Lecture 5 Types of Requirements I.pptxLecture 5 Types of Requirements I.pptx
Lecture 5 Types of Requirements I.pptx
ICDANGER
 
Non functional requirements. do we really care…?
Non functional requirements. do we really care…?Non functional requirements. do we really care…?
Non functional requirements. do we really care…?
OSSCube
 
SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptx
aryan631999
 
lec 3rd.pptx
lec 3rd.pptxlec 3rd.pptx
lec 3rd.pptx
rayanbabur
 
3. 1 req elicitation
3. 1 req elicitation3. 1 req elicitation
3. 1 req elicitation
Ashenafi Workie
 
Lecture 2 & 3.pptx
Lecture 2 & 3.pptxLecture 2 & 3.pptx
Lecture 2 & 3.pptx
RaoShahid10
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
Aman Adhikari
 
Software engineering Unit 2(Updated)2.pptx
Software engineering Unit 2(Updated)2.pptxSoftware engineering Unit 2(Updated)2.pptx
Software engineering Unit 2(Updated)2.pptx
singhpriyansh0510
 
vu-re-lecture-04 software engineering.ppt
vu-re-lecture-04 software engineering.pptvu-re-lecture-04 software engineering.ppt
vu-re-lecture-04 software engineering.ppt
ubaidullah75790
 
SRE_Lecture_1,2,3,4.pptx
SRE_Lecture_1,2,3,4.pptxSRE_Lecture_1,2,3,4.pptx
SRE_Lecture_1,2,3,4.pptx
AlideveroMurtaza
 
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
 
Introduction to Requirement engineering
Introduction to Requirement engineeringIntroduction to Requirement engineering
Introduction to Requirement engineering
Nameirakpam Sundari
 
Project Life Cycle and Effort Estimation
Project Life Cycle andEffort EstimationProject Life Cycle andEffort Estimation
Project Life Cycle and Effort Estimation
ssuserb7c8b8
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
Sutha31
 

Similar to Software Requirements (20)

Software Requirements engineering
Software Requirements engineeringSoftware Requirements engineering
Software Requirements engineering
 
Software Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and SpecificationSoftware Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and Specification
 
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
 
vu-re-lecture-02 requirements engineering.ppt
vu-re-lecture-02 requirements engineering.pptvu-re-lecture-02 requirements engineering.ppt
vu-re-lecture-02 requirements engineering.ppt
 
2 software requirements-02
2 software requirements-022 software requirements-02
2 software requirements-02
 
Software Requirements
Software RequirementsSoftware Requirements
Software Requirements
 
Lecture 5 Types of Requirements I.pptx
Lecture 5 Types of Requirements I.pptxLecture 5 Types of Requirements I.pptx
Lecture 5 Types of Requirements I.pptx
 
Non functional requirements. do we really care…?
Non functional requirements. do we really care…?Non functional requirements. do we really care…?
Non functional requirements. do we really care…?
 
SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptx
 
lec 3rd.pptx
lec 3rd.pptxlec 3rd.pptx
lec 3rd.pptx
 
3. 1 req elicitation
3. 1 req elicitation3. 1 req elicitation
3. 1 req elicitation
 
Lecture 2 & 3.pptx
Lecture 2 & 3.pptxLecture 2 & 3.pptx
Lecture 2 & 3.pptx
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Software engineering Unit 2(Updated)2.pptx
Software engineering Unit 2(Updated)2.pptxSoftware engineering Unit 2(Updated)2.pptx
Software engineering Unit 2(Updated)2.pptx
 
vu-re-lecture-04 software engineering.ppt
vu-re-lecture-04 software engineering.pptvu-re-lecture-04 software engineering.ppt
vu-re-lecture-04 software engineering.ppt
 
SRE_Lecture_1,2,3,4.pptx
SRE_Lecture_1,2,3,4.pptxSRE_Lecture_1,2,3,4.pptx
SRE_Lecture_1,2,3,4.pptx
 
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
 
Introduction to Requirement engineering
Introduction to Requirement engineeringIntroduction to Requirement engineering
Introduction to Requirement engineering
 
Project Life Cycle and Effort Estimation
Project Life Cycle andEffort EstimationProject Life Cycle andEffort Estimation
Project Life Cycle and Effort Estimation
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 

Recently uploaded

ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
Rahul
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Christina Lin
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
camseq
 
Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
Madan Karki
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
IJECEIAES
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
NidhalKahouli2
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
171ticu
 
Engineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdfEngineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdf
abbyasa1014
 
Recycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part IIRecycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part II
Aditya Rajan Patra
 
CSM Cloud Service Management Presentarion
CSM Cloud Service Management PresentarionCSM Cloud Service Management Presentarion
CSM Cloud Service Management Presentarion
rpskprasana
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
ihlasbinance2003
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
Madan Karki
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
KrishnaveniKrishnara1
 
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptxML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
JamalHussainArman
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
MDSABBIROJJAMANPAYEL
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
Hitesh Mohapatra
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
SUTEJAS
 
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have oneISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
Las Vegas Warehouse
 
Heat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation pptHeat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation ppt
mamunhossenbd75
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
sachin chaurasia
 

Recently uploaded (20)

ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
 
Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
 
Engineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdfEngineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdf
 
Recycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part IIRecycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part II
 
CSM Cloud Service Management Presentarion
CSM Cloud Service Management PresentarionCSM Cloud Service Management Presentarion
CSM Cloud Service Management Presentarion
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
 
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptxML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
 
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have oneISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
 
Heat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation pptHeat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation ppt
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
 

Software Requirements

  • 2. 2 Kinds of Software Requirements • Functional requirements • Non-functional requirements • Domain requirements • Inverse requirements • Design and implementation constraints
  • 3. 3 Non-Functional Requirements Discussion • NFRs are very important to capture the emergent behavior of the system in these there major dimensions • Product – Usability, reliability, portability, efficiency (performance, space) • Organizational – Standards, implementation, delivery • External – Interoperability, ethical, legislative (privacy, safety)
  • 4. 4 NFRs as Goals • Non-functional requirements are sometimes written as general goals, which are difficult to verify • They should be expressed quantitatively using metrics (measures) that can be objectively tested
  • 5. 5 Example: Goal converted into an NFR • Goal (unverifiable) – The system should be easy to use by experienced controllers and should be organized in such a way that user errors are minimized • Non-functional requirement (verifiable) – Experienced controllers shall be able to use all the system functions after a total of two hours’ training. After this training, the average number of errors made by experienced users shall not exceed two per day
  • 7. 7 Metrics for NFRs - 1 Property Measure Speed 1. Processed transactions/second 2. Response time 3. Screen refresh time Requirements related to “Speed” can use different measures to quantify the goal
  • 8. 8 Metrics for NFRs - 2 Property Measure Size 1. K bytes 2. Number of function points Requirements related to “Size” can use different measures to quantify the goal
  • 9. 9 Metrics for NFRs - 3 Property Measure Ease of use 1. Training time 2. Number of help frames Requirements related to “Ease of use” can use different measures to quantify the goal
  • 10. 10 Metrics for NFRs - 4 Property Measure Reliability 1. Mean time to failure 2. Probability of unavailability 3. Rate of failure occurrence 4. Availability Requirements related to “Reliability” can use different measures to quantify the goal
  • 11. 11 Metrics for NFRs - 5 Property Measure Robustness 1. Time to restart after failure 2. Percentage of events causing failure 3. Probability of data corruption on failure Requirements related to “Robustness” can use different measures to quantify the goal
  • 12. 12 Metrics for NFRs - 6 Property Measure Portability 1. Percentage of target- dependent statements 2. Number of target systems Requirements related to “Portability” can use different measures to quantify the goal
  • 13. 13 Discussion on Metrics for NFRs • With the help of these measures the NFRs can be verified quantitatively • It should also be noted that the cost of quantitatively verifying each NFR may be very high
  • 14. 14 Kinds of Software Requirements • Functional requirements • Non-functional requirements • Domain requirements • Inverse requirements • Design and implementation constraints
  • 16. 16 Domain Requirements - 1 • Requirements that come from the application domain and reflect fundamental characteristics of that application domain • These can be both the functional or non- functional requirements
  • 17. 17 Domain Requirements - 2 • These requirements, sometimes, are not explicitly mentioned • Domain experts find it difficult to convey domain requirements • Their absence can cause significant dissatisfaction
  • 18. 18 Domain Requirements - 3 • Domain requirements can impose strict constraints on solutions. This is particularly true for scientific and engineering domains • Domain-specific terminology can also cause confusion
  • 19. 19 Domain Requirements - 4 • Example: In a commission-based sales businesses, there is no concept of negative commission. However, if care is not taken novice developers can be lured into developing systems, which calculate negative commission
  • 20. 20 Domain Requirements - 5 • Banking domain has its own specific constraints, for example, most banks do not allow over-draw on most accounts, however, most banks allow some accounts to be over- drawn
  • 21. 21 Kinds of Software Requirements • Functional requirements • Non-functional requirements • Domain requirements • Inverse requirements • Design and implementation constraints
  • 23. 23 Inverse Requirements - 1 • They explain what the system shall not do. Many people find it convenient to describe their needs in this manner • These requirements indicate the indecisive nature of customers about certain aspects of a new software product
  • 24. 24 Inverse Requirements - 2 • Example: The system shall not use red color in the user interface, whenever it is asking for inputs from the end-user
  • 25. 25 Kinds of Software Requirements • Functional requirements • Non-functional requirements • Domain requirements • Inverse requirements • Design and implementation constraints
  • 27. 27 Design and Implementation Constraints - 1 • They are development guidelines within which the designer must work • These requirements can seriously limit design and implementation options • Can also have impact on human resources
  • 28. 28 Design and Implementation Constraints Examples • The system shall be developed using the Microsoft .Net platform • The system shall be developed using open source tools and shall run on Linux operating system
  • 29. 29 Summary • Discussed different kinds of requirements including domain, inverse, and implementation constraints • Requirements should be explored from different perspectives and categorized differently
  • 30. 30 References • ‘Requirements Engineering: Processes and Techniques’ by G. Kotonya and I. Sommerville, John Wiley & Sons, 1998 • Software Requirements: Objects, Functions, and States by A. Davis, PH, 1993 • Software Engineering 6th Edition, by I. Sommerville, 2000 • Software Engineering 5th Edition, by R. Pressman