SlideShare a Scribd company logo
OSSCube
Non-Functional Requirements.
Do we really care…?
9 Apr 2015
Deepak Dua
s
A Presentation on OSSCube’s
Corporate Capabilities
Introducing OSSCube
• Global Solutions Provider
• Consulting, Development, Integration, Support
• Develop Integrated Enterprise Business Solutions
• Open Source
• CMMI Level 3 accredited
• Continuous Delivery for fast, predictable projects
• Flexible Delivery Model
• Support Projects or Staff Augmentation
• Scale up or down as required
OSSCube Practice Areas
• PHP - Only Zend Center of Excellence
• CRM - SugarCRM
• Marketing Automation – Act-On
• Content Management System – Drupal
• Product Information Management - Pimcore
• Enterprise Mobile and Web applications
• E-Commerce – Magento
• BPM and Workflow – BonitaSoft and ProcessMaker
• Enterprise Architecture and Consulting
• BI and Data Integration – Pentaho and Talend
• Big Data – Hadoop, Cloudera, Spark
• Database – MySQL, MariaDB
• Cloud based large computing capacity - AWS
Integrated Business Solutions
OSSCube
Non-Functional Requirements.
Do we really care…?
2
Objective
• UNDERSTAND WHAT IS NFR
• HOW DIFFERENT NFRS FROM FRS
• WHY NFRS ARE IMPORTANT
• HOW NFR CAN BE IDENTIFIED OUT OF SYSTEM REQUIREMENTS
• MEASUREMENT OF NFRS
• ARRANGING NFRS
• ADDRESSING RIGHT SET OF QUESTIONS
• VERIFICATION OF NFR
Few Definitions...
“In software system engineering, a software requirement that describes not what the software will do, but how
the software will do it, for example, software performance requirements, software external interface
requirements, software design constraints, and software quality attributes. Nonfunctional requirements are
difficult to test; therefore, they are usually evaluated subjectively.”
Richard H. Thayer. IEEE
“Non Functional Requirements are constraints on the services or functions offered by the system. They include
timing constraints, constraints on the development process and standards. Non-functional requirements often
apply to the system as a whole. They do not usually just apply to individual system features or services.”
Ian Sommerville, Software Engineering, 7th edition
“A property, or quality, that the product must have, such as an appearance, or a speed, security or accuracy
property”
James Robertson, Mastering the Requirements Process: Getting Requirements Right
“Users have implicit expectations about how well the software will work. These characteristics include how easy
the software is to use, how quickly it executes, how reliable it is, and how well it behaves when unexpected
conditions arise. The non functional requirements define these aspects about the system.”
Andrew Stellman, Applied Software Project Management
Basic Differences in Functional and
Nonfunctional Requirements
Functional Requirements Non Functional Requirements
• Product features • Product property
• Describe the actions with which the
user work is concerned
• Describe the experience of the user
while doing the work
• A functions that can be captured in use
cases
• Non-functional requirements are
global constraints on a software
system that results in development
costs, operational costs
• A behaviors that can be analyzed by
drawing sequence diagrams, state
charts, etc
• Often known as software qualities
• Can be traced to individual set of a
program
• Usually cannot be implemented in a
single module of a program
Importance of Non Functional
Requirements
May be all functional requirements are working fine.
If Non Functional requirements are not handled well, the whole
system may fail and that may lead to..
• Loss of Business
• Loss of User Interest
• Loss of Credibility
Challenges for Non Functional
Requirements
• Implicit requirements
• No formal agreement
• Lack of awareness
• Incomplete Elicitation
• Different Terminologies across the industry
• Most of the contradictory
• Difficult to enforce during development
• Difficult to setup acceptance criteria
Type of NFRs
Important To Users
• Performance
• Security
• Usability
• Compatibility
• Accessibility
• Reliability
• Flexibility
• Interoperability
Important To Developers
• Maintainability
• Portability
• Reusability
• Testability
Requirement Elicitation
Identification of Non Functional Requirement starts with Requirement Elicitation.
Requirements Elicitation is the practice of collecting the requirements of a system from users,
customers and other stakeholders.
Requirement Elicitation Methods:
• Interviews
• Questionnaires
• User observation
• Workshops
• Brainstorming
• Use Cases
• Prototyping
Requirements elicitation is a part of the requirements engineering process, usually followed by analysis
and specification of the requirements.
During the requirement analysis the Non Functional Requirement can be fetched out and documented
Identification of Non Functional
Requirements
Non Functional Requirement can be identified by breaking the requirement in Tasks and Sub Tasks
Funct 1
Req 1
Req 2
Task 1
Tasks 2
NFR 1
NFR 2
NFR 1
NFR 2
NFR 3
Tasks 1
NFR 1
NFR 2
NFR 3
Identification of Non Functional
Requirements
Example E-Commerce Website
Consumer
Add Product to
Cart
Checkout
Without Login
With Login
Usability
Performance
Security
Usability
Performance
Check Out Using
Credit Card
Security
PCI Compliances
Performance
Usability
Identification of Non Functional
Requirements
• Identify NFR for each Task
• Establish the Goal
• Continue until you cannot decompose
further
Here we are taking the example of Security
Security
SSL
Implementation
Password Policy
Role Based
Authorization
PCI Compliances
Integrity of
Accounts
Data
Confidentiality
SSL
Implementation
Decomposition of Each NFR to meet the Goal
Measurement of NFRs
Measurement of NFRs are in very subjective in nature. There is no absolute scale of
all type of NFRs.
Sometime it is hard to measure quality of software in isolation until it is not into
correct environment. Software may behave differently in different environments.
Here is the solution…
We can identify good quality predictor by analyzing NFR during Design Analysis based
on:
• What is he purpose of NFR?
• What quality factor will impact the stakeholders?
• How these factors will be met?
Measurement of NFRs
Based on the Design Analysis, we can identify the Measurable Units for each NFR separately.
Identify
Quality
Factors
Define
Measurable
Criteria
Define
Acceptance
Criteria
NFR 1
NFR 2
NFR 3
NFR 4
Measurement of NFRs
Identify
Quality
Factors
Define
Measurable
Criteria
Define
Acceptance
Criteria
NFR 1
Performance
Quality Factors
• Response Time
during peak load.
• Response Time
during normal
load.
Measurable Criteria
• Concurrent Users
during peak load =
1000
• Concurrent Users
during normal
hours = 500
Acceptance Criteria
• The system should
meet load of
1000 concurrent
users.
• The system should
meet load of 500
concurrent users.
Arranging NFRs
Arrangement of NFR can be done in a way, so that each NFR is traceable against each
Functionality. We are again taking example of Security
Role Functionality Sub Functionality NFR
Consumer Add Product to Cart Without Login Performance
Consumer Add Product to Cart Without Login Usability
Consumer Add Product to Cart With Login Performance
Consumer Add Product to Cart With Login Compatibility
Consumer Add Product to Cart With Login Security
Consumer Add Product to Cart With Login Usability
Consumer Add Product to Cart With Login Compatibility
Admin Add Product to Catalog - Performance
Admin Add Product to Catalog - Security
Admin Add Product to Catalog - Usability
Consumer Logout - Performance
Consumer Logout - Usability
Admin Logout - Performance
Admin Logout - Usability
Addressing Right Set of Questions -
Performance
Goal
Performance requirements concern the speed of operation of a system. Majorly Performance Testing
deals with:
• Response Time
• Throughput
• Resource utilization
• Workload
Impacts
• Loss of User Transaction
• Loss of User Interest
• High Response Time
Questionnaire
• Performance Test Scope? Any subsystem, interface, components etc.
• Number of concurrent users? (Normal and Peak Hours)
• What is hardware specification?
• Baseline Results if available?
• What are new Performance Goals?
Addressing Right Set of Questions -
Security
Goal
Security Requirement is one of the essential and sensitive components of requirement engineering, security
requirements may include specific elements:
• Confidentiality
• Integrity
• Authentication
• Authorization
• Availability
• Non-repudiation
Impacts
• Loss of financial data
• Loss of confidential data
• Loss of information packets
Questionnaire
• Access Management – Integration with other systems, Password Policy, role based authorization
• Audit Capabilities – capturing user access activities, audit log data security
• Data Export Capability - data encryption
• SSL Implementation
• Data Privacy – Data Encryption
Addressing Right Set of Questions -
Usability
Goal
Usability is a quality attribute that assesses how easy user interfaces are to use. Usability based on below
components
• Learnability
• Efficiency
• Memorability
• Errors
• Satisfaction
Impacts
• Loss of User Interest
• Loss of Business
Questionnaire/Checklist
• Are all user transactions able to complete in 3 steps?
• The critical path (e.g. purchase, subscription) is clear, with no distractions on route.
• User instructions/Help notes are clearly mentioned where applicable?
• The site requires minimal scrolling and clicking.
• Users can complete common tasks quickly.
• Does application support responsive design?
Addressing Right Set of Questions -
Compatibility
Goal
Compatibility requirements ensures that application or system is able to perform well on different set of
platforms and software. The key compatibility areas are:
• Platforms
• APIs and drivers
• Web browser
• Mobile Devices
Impacts
• Loss of Interactive Design
• Loss of Functionalities
Questionnaire/Checklist
• What all platforms are supported?
• What all Web Browser are supported
• What are the different resolution requirements?
• Does application support responsive design?
• What all mobile platform/devices are supported?
Addressing Right Set of Questions -
Accessibility
Goal
Accessibility refers to the inclusive practice of removing barriers that prevent interaction
with, or access to software, by people with disabilities. The accessibility addresses different
areas:
• Visual
• Motor/Mobility
• Auditory
• Cognitive/Intellectual
Impacts
• Loss of users with disability
• Loss of Business
Questionnaire/Checklist
• Are all accessibility standard covered based on Priority 1,2 and 3?
• Are all type of target audience covered?
• Are all WCAG Standard finalized?
Verification of NFR
Verification of NFRs are as important as correct implementation. Verification of NFR
can be done:
• Identify/Execute NFR specific Test Scenarios.
• Verify NFR acceptance criteria for Each NFR
• Perform verification in different environments
• Involve different type of user groups
• Share/Measure learnings for Continuous Improvement
Thank You!
We love to connect with you.
Twitter (@OSSCubeIndia)
Facebook (www.facebook.com/osscubeindia)
LinkedIn (www.linkedin.com/company/osscube)
Google+ (plus.google.com/u/0/+OSSCubeIndia/posts )

More Related Content

What's hot

Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
University of Haripur
 
Software Engineering - chp2- requirements specification
Software Engineering - chp2- requirements specificationSoftware Engineering - chp2- requirements specification
Software Engineering - chp2- requirements specification
Lilia Sfaxi
 
Software Engineering Methodologies
Software Engineering MethodologiesSoftware Engineering Methodologies
Software Engineering MethodologiesDamian T. Gordon
 
Software Test Metrics and Measurements
Software Test Metrics and MeasurementsSoftware Test Metrics and Measurements
Software Test Metrics and Measurements
Davis Thomas
 
What Is Functional Testing?
What Is Functional Testing?What Is Functional Testing?
What Is Functional Testing?
QA InfoTech
 
Acceptance testing
Acceptance testingAcceptance testing
Acceptance testing
COEPD HR
 
Software requirements engineering lecture 01
Software requirements engineering   lecture 01Software requirements engineering   lecture 01
Software requirements engineering lecture 01Abdul Basit
 
Selection of an appropriate project approach
Selection of an appropriate project approachSelection of an appropriate project approach
Selection of an appropriate project approach
tumetr1
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysis
asimnawaz54
 
Performance testing presentation
Performance testing presentationPerformance testing presentation
Performance testing presentation
Belatrix Software
 
Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)
ShudipPal
 
Testing Metrics
Testing MetricsTesting Metrics
Testing Metrics
PM Venkatesha Babu
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
Saqib Raza
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
Preeti Mishra
 
USER ACCEPTANCE TESTING
USER ACCEPTANCE TESTINGUSER ACCEPTANCE TESTING
USER ACCEPTANCE TESTING
KADARI SHIVRAJ
 
Ch 1-Non-functional Requirements.ppt
Ch 1-Non-functional Requirements.pptCh 1-Non-functional Requirements.ppt
Ch 1-Non-functional Requirements.ppt
balewayalew
 
The Waterfall Model
The Waterfall ModelThe Waterfall Model
The Waterfall Model
Damian T. Gordon
 
Defect life cycle and Defect Status Life Cycle
Defect life cycle and Defect Status Life CycleDefect life cycle and Defect Status Life Cycle
Defect life cycle and Defect Status Life Cycle
pavansmiles
 
functional testing
functional testing functional testing
functional testing
bharathanche
 

What's hot (20)

Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
Software Engineering - chp2- requirements specification
Software Engineering - chp2- requirements specificationSoftware Engineering - chp2- requirements specification
Software Engineering - chp2- requirements specification
 
Software Engineering Methodologies
Software Engineering MethodologiesSoftware Engineering Methodologies
Software Engineering Methodologies
 
Software Test Metrics and Measurements
Software Test Metrics and MeasurementsSoftware Test Metrics and Measurements
Software Test Metrics and Measurements
 
What Is Functional Testing?
What Is Functional Testing?What Is Functional Testing?
What Is Functional Testing?
 
Analisis iso 25010
Analisis iso 25010Analisis iso 25010
Analisis iso 25010
 
Acceptance testing
Acceptance testingAcceptance testing
Acceptance testing
 
Software requirements engineering lecture 01
Software requirements engineering   lecture 01Software requirements engineering   lecture 01
Software requirements engineering lecture 01
 
Selection of an appropriate project approach
Selection of an appropriate project approachSelection of an appropriate project approach
Selection of an appropriate project approach
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysis
 
Performance testing presentation
Performance testing presentationPerformance testing presentation
Performance testing presentation
 
Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)
 
Testing Metrics
Testing MetricsTesting Metrics
Testing Metrics
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
USER ACCEPTANCE TESTING
USER ACCEPTANCE TESTINGUSER ACCEPTANCE TESTING
USER ACCEPTANCE TESTING
 
Ch 1-Non-functional Requirements.ppt
Ch 1-Non-functional Requirements.pptCh 1-Non-functional Requirements.ppt
Ch 1-Non-functional Requirements.ppt
 
The Waterfall Model
The Waterfall ModelThe Waterfall Model
The Waterfall Model
 
Defect life cycle and Defect Status Life Cycle
Defect life cycle and Defect Status Life CycleDefect life cycle and Defect Status Life Cycle
Defect life cycle and Defect Status Life Cycle
 
functional testing
functional testing functional testing
functional testing
 

Similar to Non functional requirements. do we really care…?

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
 
SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptx
aryan631999
 
Software Requirements
Software RequirementsSoftware Requirements
Software Requirements
Nethan Shaik
 
requirement engineering
requirement engineeringrequirement engineering
requirement engineering
anam singla
 
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
 
Requirement Analysis - Software Enigneering
Requirement Analysis - Software EnigneeringRequirement Analysis - Software Enigneering
Requirement Analysis - Software Enigneering
university of education,Lahore
 
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
 
Software Requirements
 Software Requirements Software Requirements
Software Requirements
Zaman Khan
 
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
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architecture
Gang Tao
 
Software Engineering Lec 4-requirments
Software Engineering Lec 4-requirmentsSoftware Engineering Lec 4-requirments
Software Engineering Lec 4-requirments
Taymoor Nazmy
 
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
 
Se lect9 btech
Se lect9 btechSe lect9 btech
Se lect9 btechIIITA
 
vu-re-lecture-03 requirement engineering.ppt
vu-re-lecture-03 requirement engineering.pptvu-re-lecture-03 requirement engineering.ppt
vu-re-lecture-03 requirement engineering.ppt
ubaidullah75790
 
Requirement engineering
Requirement engineeringRequirement engineering
Requirement engineering
Benazir Fathima
 
STQA 1.pptx
STQA 1.pptxSTQA 1.pptx
STQA 1.pptx
laravoj420
 
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
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and design
Preeti Mishra
 

Similar to Non functional requirements. do we really care…? (20)

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
 
SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptx
 
Software Requirements
Software RequirementsSoftware Requirements
Software Requirements
 
requirement engineering
requirement engineeringrequirement engineering
requirement engineering
 
Software Engineering REQUIREMENTS ANALYSIS AND SPECIFICATION
Software Engineering REQUIREMENTS ANALYSIS AND SPECIFICATIONSoftware Engineering REQUIREMENTS ANALYSIS AND SPECIFICATION
Software Engineering REQUIREMENTS ANALYSIS AND SPECIFICATION
 
Requirement Analysis - Software Enigneering
Requirement Analysis - Software EnigneeringRequirement Analysis - Software Enigneering
Requirement Analysis - Software Enigneering
 
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
 
Software Requirements
 Software Requirements Software Requirements
Software Requirements
 
sdlc.pptx
sdlc.pptxsdlc.pptx
sdlc.pptx
 
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
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architecture
 
Software Engineering Lec 4-requirments
Software Engineering Lec 4-requirmentsSoftware Engineering Lec 4-requirments
Software Engineering Lec 4-requirments
 
Software Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and SpecificationSoftware Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and Specification
 
Se lect9 btech
Se lect9 btechSe lect9 btech
Se lect9 btech
 
vu-re-lecture-03 requirement engineering.ppt
vu-re-lecture-03 requirement engineering.pptvu-re-lecture-03 requirement engineering.ppt
vu-re-lecture-03 requirement engineering.ppt
 
Requirement engineering
Requirement engineeringRequirement engineering
Requirement engineering
 
STQA 1.pptx
STQA 1.pptxSTQA 1.pptx
STQA 1.pptx
 
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
 
3. 1 req elicitation
3. 1 req elicitation3. 1 req elicitation
3. 1 req elicitation
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and design
 

More from OSSCube

High Availability Using MySQL Group Replication
High Availability Using MySQL Group ReplicationHigh Availability Using MySQL Group Replication
High Availability Using MySQL Group Replication
OSSCube
 
Accelerate Your Digital Transformation Journey with Pimcore
Accelerate Your Digital Transformation Journey with PimcoreAccelerate Your Digital Transformation Journey with Pimcore
Accelerate Your Digital Transformation Journey with Pimcore
OSSCube
 
Migrating Legacy Applications to AWS Cloud: Strategies and Challenges
Migrating Legacy Applications to AWS Cloud: Strategies and ChallengesMigrating Legacy Applications to AWS Cloud: Strategies and Challenges
Migrating Legacy Applications to AWS Cloud: Strategies and Challenges
OSSCube
 
Why Does Omnichannel Experience Matter to Your Customers
Why Does Omnichannel Experience Matter to Your CustomersWhy Does Omnichannel Experience Matter to Your Customers
Why Does Omnichannel Experience Matter to Your Customers
OSSCube
 
Using MySQL Fabric for High Availability and Scaling Out
Using MySQL Fabric for High Availability and Scaling OutUsing MySQL Fabric for High Availability and Scaling Out
Using MySQL Fabric for High Availability and Scaling Out
OSSCube
 
Webinar: Five Ways a Technology Refresh Strategy Can Help Make Your Digital T...
Webinar: Five Ways a Technology Refresh Strategy Can Help Make Your Digital T...Webinar: Five Ways a Technology Refresh Strategy Can Help Make Your Digital T...
Webinar: Five Ways a Technology Refresh Strategy Can Help Make Your Digital T...
OSSCube
 
Cutting Through the Disruption
Cutting Through the DisruptionCutting Through the Disruption
Cutting Through the Disruption
OSSCube
 
Legacy to industry leader: a modernization case study
Legacy to industry leader: a modernization case studyLegacy to industry leader: a modernization case study
Legacy to industry leader: a modernization case study
OSSCube
 
Marketing and Sales together at last
Marketing and Sales together at lastMarketing and Sales together at last
Marketing and Sales together at last
OSSCube
 
Using pim to maximize revenue and improve customer satisfaction
Using pim to maximize revenue and improve customer satisfactionUsing pim to maximize revenue and improve customer satisfaction
Using pim to maximize revenue and improve customer satisfaction
OSSCube
 
Talend for the Enterprise
Talend for the EnterpriseTalend for the Enterprise
Talend for the Enterprise
OSSCube
 
Ahead of the Curve
Ahead of the CurveAhead of the Curve
Ahead of the Curve
OSSCube
 
Learning from experience: Collaborative Journey towards CMMI
Learning from experience: Collaborative Journey towards CMMILearning from experience: Collaborative Journey towards CMMI
Learning from experience: Collaborative Journey towards CMMI
OSSCube
 
Exploiting JXL using Selenium
Exploiting JXL using SeleniumExploiting JXL using Selenium
Exploiting JXL using Selenium
OSSCube
 
Introduction to AWS
Introduction to AWSIntroduction to AWS
Introduction to AWS
OSSCube
 
Maria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High AvailabilityMaria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High Availability
OSSCube
 
Talend Open Studio Introduction - OSSCamp 2014
Talend Open Studio Introduction - OSSCamp 2014Talend Open Studio Introduction - OSSCamp 2014
Talend Open Studio Introduction - OSSCamp 2014
OSSCube
 
Performance Testing Session - OSSCamp 2014
Performance Testing Session -  OSSCamp 2014Performance Testing Session -  OSSCamp 2014
Performance Testing Session - OSSCamp 2014OSSCube
 
Job Queue Presentation - OSSCamp 2014
Job Queue Presentation - OSSCamp 2014Job Queue Presentation - OSSCamp 2014
Job Queue Presentation - OSSCamp 2014
OSSCube
 
Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014
 Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014 Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014
Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014
OSSCube
 

More from OSSCube (20)

High Availability Using MySQL Group Replication
High Availability Using MySQL Group ReplicationHigh Availability Using MySQL Group Replication
High Availability Using MySQL Group Replication
 
Accelerate Your Digital Transformation Journey with Pimcore
Accelerate Your Digital Transformation Journey with PimcoreAccelerate Your Digital Transformation Journey with Pimcore
Accelerate Your Digital Transformation Journey with Pimcore
 
Migrating Legacy Applications to AWS Cloud: Strategies and Challenges
Migrating Legacy Applications to AWS Cloud: Strategies and ChallengesMigrating Legacy Applications to AWS Cloud: Strategies and Challenges
Migrating Legacy Applications to AWS Cloud: Strategies and Challenges
 
Why Does Omnichannel Experience Matter to Your Customers
Why Does Omnichannel Experience Matter to Your CustomersWhy Does Omnichannel Experience Matter to Your Customers
Why Does Omnichannel Experience Matter to Your Customers
 
Using MySQL Fabric for High Availability and Scaling Out
Using MySQL Fabric for High Availability and Scaling OutUsing MySQL Fabric for High Availability and Scaling Out
Using MySQL Fabric for High Availability and Scaling Out
 
Webinar: Five Ways a Technology Refresh Strategy Can Help Make Your Digital T...
Webinar: Five Ways a Technology Refresh Strategy Can Help Make Your Digital T...Webinar: Five Ways a Technology Refresh Strategy Can Help Make Your Digital T...
Webinar: Five Ways a Technology Refresh Strategy Can Help Make Your Digital T...
 
Cutting Through the Disruption
Cutting Through the DisruptionCutting Through the Disruption
Cutting Through the Disruption
 
Legacy to industry leader: a modernization case study
Legacy to industry leader: a modernization case studyLegacy to industry leader: a modernization case study
Legacy to industry leader: a modernization case study
 
Marketing and Sales together at last
Marketing and Sales together at lastMarketing and Sales together at last
Marketing and Sales together at last
 
Using pim to maximize revenue and improve customer satisfaction
Using pim to maximize revenue and improve customer satisfactionUsing pim to maximize revenue and improve customer satisfaction
Using pim to maximize revenue and improve customer satisfaction
 
Talend for the Enterprise
Talend for the EnterpriseTalend for the Enterprise
Talend for the Enterprise
 
Ahead of the Curve
Ahead of the CurveAhead of the Curve
Ahead of the Curve
 
Learning from experience: Collaborative Journey towards CMMI
Learning from experience: Collaborative Journey towards CMMILearning from experience: Collaborative Journey towards CMMI
Learning from experience: Collaborative Journey towards CMMI
 
Exploiting JXL using Selenium
Exploiting JXL using SeleniumExploiting JXL using Selenium
Exploiting JXL using Selenium
 
Introduction to AWS
Introduction to AWSIntroduction to AWS
Introduction to AWS
 
Maria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High AvailabilityMaria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High Availability
 
Talend Open Studio Introduction - OSSCamp 2014
Talend Open Studio Introduction - OSSCamp 2014Talend Open Studio Introduction - OSSCamp 2014
Talend Open Studio Introduction - OSSCamp 2014
 
Performance Testing Session - OSSCamp 2014
Performance Testing Session -  OSSCamp 2014Performance Testing Session -  OSSCamp 2014
Performance Testing Session - OSSCamp 2014
 
Job Queue Presentation - OSSCamp 2014
Job Queue Presentation - OSSCamp 2014Job Queue Presentation - OSSCamp 2014
Job Queue Presentation - OSSCamp 2014
 
Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014
 Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014 Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014
Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014
 

Recently uploaded

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 

Recently uploaded (20)

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 

Non functional requirements. do we really care…?

  • 1. OSSCube Non-Functional Requirements. Do we really care…? 9 Apr 2015 Deepak Dua
  • 2. s A Presentation on OSSCube’s Corporate Capabilities
  • 3. Introducing OSSCube • Global Solutions Provider • Consulting, Development, Integration, Support • Develop Integrated Enterprise Business Solutions • Open Source • CMMI Level 3 accredited • Continuous Delivery for fast, predictable projects • Flexible Delivery Model • Support Projects or Staff Augmentation • Scale up or down as required
  • 4. OSSCube Practice Areas • PHP - Only Zend Center of Excellence • CRM - SugarCRM • Marketing Automation – Act-On • Content Management System – Drupal • Product Information Management - Pimcore • Enterprise Mobile and Web applications • E-Commerce – Magento • BPM and Workflow – BonitaSoft and ProcessMaker • Enterprise Architecture and Consulting • BI and Data Integration – Pentaho and Talend • Big Data – Hadoop, Cloudera, Spark • Database – MySQL, MariaDB • Cloud based large computing capacity - AWS
  • 7. 2 Objective • UNDERSTAND WHAT IS NFR • HOW DIFFERENT NFRS FROM FRS • WHY NFRS ARE IMPORTANT • HOW NFR CAN BE IDENTIFIED OUT OF SYSTEM REQUIREMENTS • MEASUREMENT OF NFRS • ARRANGING NFRS • ADDRESSING RIGHT SET OF QUESTIONS • VERIFICATION OF NFR
  • 8. Few Definitions... “In software system engineering, a software requirement that describes not what the software will do, but how the software will do it, for example, software performance requirements, software external interface requirements, software design constraints, and software quality attributes. Nonfunctional requirements are difficult to test; therefore, they are usually evaluated subjectively.” Richard H. Thayer. IEEE “Non Functional Requirements are constraints on the services or functions offered by the system. They include timing constraints, constraints on the development process and standards. Non-functional requirements often apply to the system as a whole. They do not usually just apply to individual system features or services.” Ian Sommerville, Software Engineering, 7th edition “A property, or quality, that the product must have, such as an appearance, or a speed, security or accuracy property” James Robertson, Mastering the Requirements Process: Getting Requirements Right “Users have implicit expectations about how well the software will work. These characteristics include how easy the software is to use, how quickly it executes, how reliable it is, and how well it behaves when unexpected conditions arise. The non functional requirements define these aspects about the system.” Andrew Stellman, Applied Software Project Management
  • 9. Basic Differences in Functional and Nonfunctional Requirements Functional Requirements Non Functional Requirements • Product features • Product property • Describe the actions with which the user work is concerned • Describe the experience of the user while doing the work • A functions that can be captured in use cases • Non-functional requirements are global constraints on a software system that results in development costs, operational costs • A behaviors that can be analyzed by drawing sequence diagrams, state charts, etc • Often known as software qualities • Can be traced to individual set of a program • Usually cannot be implemented in a single module of a program
  • 10. Importance of Non Functional Requirements May be all functional requirements are working fine. If Non Functional requirements are not handled well, the whole system may fail and that may lead to.. • Loss of Business • Loss of User Interest • Loss of Credibility
  • 11. Challenges for Non Functional Requirements • Implicit requirements • No formal agreement • Lack of awareness • Incomplete Elicitation • Different Terminologies across the industry • Most of the contradictory • Difficult to enforce during development • Difficult to setup acceptance criteria
  • 12. Type of NFRs Important To Users • Performance • Security • Usability • Compatibility • Accessibility • Reliability • Flexibility • Interoperability Important To Developers • Maintainability • Portability • Reusability • Testability
  • 13. Requirement Elicitation Identification of Non Functional Requirement starts with Requirement Elicitation. Requirements Elicitation is the practice of collecting the requirements of a system from users, customers and other stakeholders. Requirement Elicitation Methods: • Interviews • Questionnaires • User observation • Workshops • Brainstorming • Use Cases • Prototyping Requirements elicitation is a part of the requirements engineering process, usually followed by analysis and specification of the requirements. During the requirement analysis the Non Functional Requirement can be fetched out and documented
  • 14. Identification of Non Functional Requirements Non Functional Requirement can be identified by breaking the requirement in Tasks and Sub Tasks Funct 1 Req 1 Req 2 Task 1 Tasks 2 NFR 1 NFR 2 NFR 1 NFR 2 NFR 3 Tasks 1 NFR 1 NFR 2 NFR 3
  • 15. Identification of Non Functional Requirements Example E-Commerce Website Consumer Add Product to Cart Checkout Without Login With Login Usability Performance Security Usability Performance Check Out Using Credit Card Security PCI Compliances Performance Usability
  • 16. Identification of Non Functional Requirements • Identify NFR for each Task • Establish the Goal • Continue until you cannot decompose further Here we are taking the example of Security Security SSL Implementation Password Policy Role Based Authorization PCI Compliances Integrity of Accounts Data Confidentiality SSL Implementation Decomposition of Each NFR to meet the Goal
  • 17. Measurement of NFRs Measurement of NFRs are in very subjective in nature. There is no absolute scale of all type of NFRs. Sometime it is hard to measure quality of software in isolation until it is not into correct environment. Software may behave differently in different environments. Here is the solution… We can identify good quality predictor by analyzing NFR during Design Analysis based on: • What is he purpose of NFR? • What quality factor will impact the stakeholders? • How these factors will be met?
  • 18. Measurement of NFRs Based on the Design Analysis, we can identify the Measurable Units for each NFR separately. Identify Quality Factors Define Measurable Criteria Define Acceptance Criteria NFR 1 NFR 2 NFR 3 NFR 4
  • 19. Measurement of NFRs Identify Quality Factors Define Measurable Criteria Define Acceptance Criteria NFR 1 Performance Quality Factors • Response Time during peak load. • Response Time during normal load. Measurable Criteria • Concurrent Users during peak load = 1000 • Concurrent Users during normal hours = 500 Acceptance Criteria • The system should meet load of 1000 concurrent users. • The system should meet load of 500 concurrent users.
  • 20. Arranging NFRs Arrangement of NFR can be done in a way, so that each NFR is traceable against each Functionality. We are again taking example of Security Role Functionality Sub Functionality NFR Consumer Add Product to Cart Without Login Performance Consumer Add Product to Cart Without Login Usability Consumer Add Product to Cart With Login Performance Consumer Add Product to Cart With Login Compatibility Consumer Add Product to Cart With Login Security Consumer Add Product to Cart With Login Usability Consumer Add Product to Cart With Login Compatibility Admin Add Product to Catalog - Performance Admin Add Product to Catalog - Security Admin Add Product to Catalog - Usability Consumer Logout - Performance Consumer Logout - Usability Admin Logout - Performance Admin Logout - Usability
  • 21. Addressing Right Set of Questions - Performance Goal Performance requirements concern the speed of operation of a system. Majorly Performance Testing deals with: • Response Time • Throughput • Resource utilization • Workload Impacts • Loss of User Transaction • Loss of User Interest • High Response Time Questionnaire • Performance Test Scope? Any subsystem, interface, components etc. • Number of concurrent users? (Normal and Peak Hours) • What is hardware specification? • Baseline Results if available? • What are new Performance Goals?
  • 22. Addressing Right Set of Questions - Security Goal Security Requirement is one of the essential and sensitive components of requirement engineering, security requirements may include specific elements: • Confidentiality • Integrity • Authentication • Authorization • Availability • Non-repudiation Impacts • Loss of financial data • Loss of confidential data • Loss of information packets Questionnaire • Access Management – Integration with other systems, Password Policy, role based authorization • Audit Capabilities – capturing user access activities, audit log data security • Data Export Capability - data encryption • SSL Implementation • Data Privacy – Data Encryption
  • 23. Addressing Right Set of Questions - Usability Goal Usability is a quality attribute that assesses how easy user interfaces are to use. Usability based on below components • Learnability • Efficiency • Memorability • Errors • Satisfaction Impacts • Loss of User Interest • Loss of Business Questionnaire/Checklist • Are all user transactions able to complete in 3 steps? • The critical path (e.g. purchase, subscription) is clear, with no distractions on route. • User instructions/Help notes are clearly mentioned where applicable? • The site requires minimal scrolling and clicking. • Users can complete common tasks quickly. • Does application support responsive design?
  • 24. Addressing Right Set of Questions - Compatibility Goal Compatibility requirements ensures that application or system is able to perform well on different set of platforms and software. The key compatibility areas are: • Platforms • APIs and drivers • Web browser • Mobile Devices Impacts • Loss of Interactive Design • Loss of Functionalities Questionnaire/Checklist • What all platforms are supported? • What all Web Browser are supported • What are the different resolution requirements? • Does application support responsive design? • What all mobile platform/devices are supported?
  • 25. Addressing Right Set of Questions - Accessibility Goal Accessibility refers to the inclusive practice of removing barriers that prevent interaction with, or access to software, by people with disabilities. The accessibility addresses different areas: • Visual • Motor/Mobility • Auditory • Cognitive/Intellectual Impacts • Loss of users with disability • Loss of Business Questionnaire/Checklist • Are all accessibility standard covered based on Priority 1,2 and 3? • Are all type of target audience covered? • Are all WCAG Standard finalized?
  • 26. Verification of NFR Verification of NFRs are as important as correct implementation. Verification of NFR can be done: • Identify/Execute NFR specific Test Scenarios. • Verify NFR acceptance criteria for Each NFR • Perform verification in different environments • Involve different type of user groups • Share/Measure learnings for Continuous Improvement
  • 27.
  • 28. Thank You! We love to connect with you. Twitter (@OSSCubeIndia) Facebook (www.facebook.com/osscubeindia) LinkedIn (www.linkedin.com/company/osscube) Google+ (plus.google.com/u/0/+OSSCubeIndia/posts )