non functional requirements by: dr . timothy korson cpis 443
DESCRIPTION
Non Functional Requirements by: Dr . Timothy Korson CPIS 443. Functional Requirement. F unctionality that is provided in the system interface to allow a user to achieve their goal Purchase a book on Amazon.com - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/1.jpg)
1/17
Non Functional Requirements
by:
Dr. Timothy KorsonCPIS 443
![Page 2: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/2.jpg)
2/17
Functional Requirement
• Functionality that is provided in the system interface to allow a user to achieve their goal– Purchase a book on Amazon.com– There is a way to log on, select a book, enter my
credit card number, choose a shipping option, etc.
![Page 3: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/3.jpg)
3/17
Non Functional Requirements
• Sometimes called– Quality requirements– System requirements– Technical Requirements
• System requirements for which there is no user interface– When I use a credit card on Amazon , all
transmission or storage of my card must be encrypted
![Page 4: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/4.jpg)
4/17
Types of Non-Functional Requirements (Wikipedia)
• Accessibility• Audit and control• Availability (see service level agreement)• Backup• Capacity, current and forecast• Certification• Compliance• Configuration management• Dependency on other parties• Deployment• Documentation• Disaster recovery• Efficiency (resource consumption for
given load)
• Effectiveness (resulting performance in relation to effort)
• Emotional factors (like fun or absorbing)• Escrow• Extensibility (adding features, and carry-
forward of customizations at next major version upgrade)
• Failure management• Legal and licensing issues or patent-
infringement-avoidability• Interoperability• Maintainability• Modifiability• Network topology
![Page 5: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/5.jpg)
5/17
Types of Non-Functional Requirements (Wikipedia)
• Open source• Operability• Performance / response time (
performance engineering)• Platform compatibility• Price• Privacy• Portability• Quality (e.g. faults discovered, faults
delivered, fault removal efficacy)• Recovery / recoverability (e.g.
mean time to recovery - MTTR)• Reliability (e.g.
mean time between failures - MTBF)• Resilience
• Resource constraints (processor speed, memory, disk space, network bandwidth etc)
• Response time• Robustness• Scalability (horizontal, vertical)• Security• Software, tools, standards etc.
Compatibility• Stability• Safety• Supportability• Testability• Usability by target user community
![Page 6: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/6.jpg)
6/17
Categories of Non-Functional Requirements
Legal and regulatory• Accessibility• Certification• Compliance• Escrow• Legal and licensing issues or patent-
infringement-avoidability• Audit and control
Usability• Documentation• Emotional factors (like fun or absorbing)• Operability• Privacy• Safety• Usability by target user community
Capacity• Efficiency (resource consumption for
given load)• Scalability (horizontal, vertical)
Deployment and development environment• Network topology• Interoperability• Open source• Platform compatibility• Software, tools, standards etc.
Performance• Response time• performance engineering
![Page 7: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/7.jpg)
7/17
Categories of Non-Functional Requirements
Architecture• Maintainability• Modifiability• Extensibility (adding features, and carry-
forward of customizations at next major version upgrade)
• Portability• Resource constraints (processor speed,
memory, disk space, network bandwidth etc)
• Supportability• Testability
Security• Encryption• Firewalls• Input sanitation
Reliability• Availability (see service level agreement)• Backup• Disaster recovery• Failure management• Recovery / recoverability (e.g.
mean time to recovery - MTTR)• Reliability (e.g.
mean time between failures - MTBF)• Resilience• Robustness• Quality (e.g. faults discovered, faults
delivered, fault removal efficacy)• Stability• Concurrence• Race conditions
![Page 8: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/8.jpg)
8/17
Legal and regulatory
• Accessibility• Certification• Compliance• Escrow• Legal and licensing issues or patent-
infringement-avoidability• Audit and control
![Page 9: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/9.jpg)
9/17
Usability
• Documentation• Emotional factors (like
fun or absorbing)• Operability• Privacy• Safety• Usability by target
user community
![Page 10: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/10.jpg)
10/17
Deployment and Development Environment
• Network topology• Interoperability• Open source• Platform compatibility• Operational environment• Software, tools, standards etc.• Portability • Installation Testing, deployment scripts
![Page 11: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/11.jpg)
11/17
Capacity
• Efficiency (resource consumption for given load)
• Scalability (horizontal, vertical)
![Page 12: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/12.jpg)
12/17
Performance
• Response time
![Page 13: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/13.jpg)
13/17
Some “Performance Testing” Definitions
The following definitions are attributed to Ross CollardLoad Test: a measurement of performance under
heavy load (peak or worst-case)Stress Test: pushes the load beyond specified or
expected limitsResponse Time Test: measures how long to complete
a group of tasksThroughput Test: measure the amount of data through
the system under loadCapacity Test: measure the ability of a system to
support additional workload without degrading performance unacceptably.
![Page 14: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/14.jpg)
14/17
Some “Performance Testing” Definitions
Duration Testing: places a load on system for an extended time looking for degradation of service
Hot Spot Test: stressing a particular sub-system looking for a weak point
Spike (Bounce) Test: injecting a very high load for a short time to see how system handles a sudden increase in load
Breakpoint Test: increase load up to breaking point to determine the break-down characteristics
Rendezvous Test: spike testing where many of the same event occur simultaneously (i.e. everyone logging into email at the same time.)
![Page 15: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/15.jpg)
15/17
Architecture
• Maintainability• Modifiability• Extensibility (adding features, and carry-
forward of customizations at next major version upgrade)
• Resource constraints (processor speed, memory, disk space, network bandwidth etc)
• Supportability• Testability
![Page 16: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/16.jpg)
16/17
Security
• Encryption• Firewalls• Input sanitation• Cross site scripting• SQL injection
![Page 17: Non Functional Requirements by: Dr . Timothy Korson CPIS 443](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56812a9f550346895d8e5c48/html5/thumbnails/17.jpg)
17/17
Reliability
• Availability (see service level agreement)• Backup• Disaster recovery• Failure management• Recovery / recoverability (e.g. mean time to recovery)• Reliability (e.g. mean time between failures - MTBF)• Resilience• Robustness• Quality (e.g. faults discovered, faults delivered, fault removal
efficacy)• Stability