SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Risk-based Testing
The Devil is in the Details

1

2013-09-27

PA1

Confidential
Introduction
• Johan Hoberg

• Sony Mobile
▫ ~10 years
▫ Tester, Test Team Leader, Test Architect

• This is a presentation of my experiences
of risk-based testing
2

2013-09-27

PA1

Confidential
Definition
• Risk-based testing (RBT) is a type of software
testing that prioritizes the tests of features and
functions based on the risk of their failure - a
function of their importance and likelihood or
impact of failure.
(http://en.wikipedia.org/wiki/Risk-based_testing)

3

2013-09-27

PA1

Confidential
The Devil is in the Details
• Refers to a catch or mysterious element hidden in
the details
• Derives from “God is in the Details”

▫ Generally attributed to Gustave Flaubert (1821–1880)

• It is easy to ask for efficient, risk-based testing
• It is much more difficult to actually do it well
4

2013-09-27

PA1

Confidential
System Under Test

Configuration 1
Configuration 2

Android Gingerbread Generic
Configuration 3
Android Gingerbread Customer A

Android Gingerbread Customer B
Android Jellybean Generic

Product X
Product Y

Android Jellybean Customer A

Android Jellybean Customer B
5

2013-09-27

PA1

Confidential
System Under Test

6

2013-09-27

PA1

Confidential
Changes in the System
• There is a change introduced somewhere in the
system
• Could be a bug fix, a change request, a new
feature, refactoring, etc.

7

2013-09-27

PA1

Confidential
Scope Selection
• Do you run every available test on every possible
configuration of the system and verify all
interoperability?
• A smart scope is necessary to make it containable
• We must be able to reuse test results between
products, configuration, and branches
8

2013-09-27

PA1

Confidential
Scope Selection based on Risk

Change
Introduced

9

2013-09-27

PA1

System Impact

Risk-based
Scope

Confidential
Complex vs. Complicated
• Complicated
▫ Opposite of simple
▫ Containing intricately combined or involved parts

• Complex
▫ Opposite of predictable?
▫ This adjective means having parts so
interconnected as to make the whole perplexing
10

2013-09-27

PA1

Confidential
Complex System
• A complex system is difficult to predict

• It is therefore difficult to plan which actions to
take to mitigate different outcomes
• It is difficult to plan which tests to run to cover
all potentially relevant defects
11

2013-09-27

PA1

Confidential
Reduce Complexity
Reduce
Complex System
complexity

Very difficult!

Scope Selection
Change

12

2013-09-27

PA1

Confidential
Example
• A change is introduced into the Display Driver
component – What do I need to test?
▫ Camera?
▫ Interoperability with TV and similar devices?
▫ Multimedia
 View pictures, video etc.?

▫ All UI testing?
▫ Other parts of the system?
13

2013-09-27

PA1

Confidential
Reduce Complexity
• Risk Analysis
• Automated Test Framework
• Early Exploratory Testing

14

2013-09-27

PA1

Confidential
Risk Analysis – Input Data
Feature & Hardware Delta
Historical Data
Code Changes
System Dependencies &
Architecture
15

2013-09-27

PA1

•Easy to obtain
•Might give us an indication on
where to start looking, but can
often give false confidence in
scope selection, especially
when it comes to E2E system
test
•Hard to obtain
Confidential
Risk Analysis – Risk Model
Risk
Identification

Probability

Severity (S)
Occurrence (O)
Detection (D)
16

2013-09-27

PA1

Consequence

Mitigation
Plan

Risk Priority Number (RPN) = S*O*D

Confidential
Risk Analysis - Complex vs. Complicated

Risk analysis of
whole system is
complex

17

2013-09-27

PA1

Risk analysis of
sufficiently small
part is more
complicated than
complex
Confidential
Risk Analysis Database
• If each function performs risk analysis on their
components and enters risks in a database this
information could be used on system level to get
better understanding of impact of specific
changes
• Requires a uniform way of handing risk
information
18

2013-09-27

PA1

Confidential
Problems?
• We can get a lot of data that will help us select a
scope – but ultimately we will introduce a lot of risk
if we do not know how the system is designed, and
how different components depend on each other
• To get a complete dependency map of the whole
system requires not only a good risk-handling
infrastructure, but a common effort from a lot of
people
19

2013-09-27

PA1

Confidential
Dependency Map Example
Application

Application

Application

Application
Framework

Application

Application

Application
Framework
Library
Driver

20

2013-09-27

PA1

Confidential
Automated Test Framework
Change + Basic
Risk Analysis

Automated Test
Execution

21

Scope Setting

Test Results
Analysis

2013-09-27

PA1

Test Execution

Confidential
Automated Test Framework
Change

Automated Tests
Executed

Better understanding of
System Dependencies
22

2013-09-27

PA1

Failed Tests
Investigated

Change in component
mapped towards failed tests
in other components
Confidential
Self-learning System
• Over time you will have more and more
information about how different changes impact
the system
• Map code changes to failed tests
• This impact map can further help you
set an efficient scope
23

2013-09-27

PA1

Confidential
Continuous Integration
• The more code changes we have and the more
isolated these code changes are, the easier it is to
create the impact map
• If you only have one integration per month, with
thousands of lines of code changed in different
parts of the system, it will be difficult to draw
conclusions
24

2013-09-27

PA1

Confidential
Problems?
• The information value you receive is dependant
on how good the tests are
• Dependency graph grows over time – in the
beginning there is very little data

25

2013-09-27

PA1

Confidential
Early Exploratory Testing
Change + Basic
Risk Analysis

Exploratory
Testing

26

Scope Setting

Test Results
Analysis

2013-09-27

PA1

Test Execution

Confidential
Codifying Experience
• How do you transfer the knowledge gained from
one tester to the other?
• The understanding about impact and
dependencies we gain from performing
exploratory testing must be stored in a way
which makes it accessible to other testers for
their risk-based scope selections
27

2013-09-27

PA1

Confidential
Manual Dependency Map
• After each exploratory session it is possible to
add information to a dependency map, where
you indicate which changes were made, and
what impact those changes had
• It needs to be done in a way which is quick and
easy, otherwise it will not be done at all
28

2013-09-27

PA1

Confidential
Problems?
• Additional time might be needed before testers
get experience with the new process
• It will be more difficult to time plan activity
before early exploratory testing is done – this
can cause problems with test/project leaders and
managers
• It requires skilled testers
29

2013-09-27

PA1

Confidential
Final thoughts
• Every risk-based scope introduces risk – our
goal is to eliminate any unnecessary risk
• Without skilled testers to write good automated
tests or perform exploratory testing it becomes
very difficult without a very intricate risk/impact
framework
30

2013-09-27

PA1

Confidential
Conclusion
• It is very difficult to perform riskbased testing for a large, complex
system

• It is very easy to ask someone else to
reduce their test scope by
introducing risk-based testing
31

2013-09-27

PA1

Confidential
Contact
• Email
▫ johan.hoberg@outlook.com

• Slideshare
▫ www.slideshare.net/JohanHoberg

32

2013-09-27

PA1

Confidential

Weitere ähnliche Inhalte

Was ist angesagt?

Quality Assurance and Software Testing
Quality Assurance and Software TestingQuality Assurance and Software Testing
Quality Assurance and Software Testing
pingkapil
 
Whitebox testing
Whitebox testingWhitebox testing
Whitebox testing
Oana Feidi
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
Confiz
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.ppt
Komal Garg
 
Testing Center of Excellence - Keytorc Approach
Testing Center of Excellence -  Keytorc ApproachTesting Center of Excellence -  Keytorc Approach
Testing Center of Excellence - Keytorc Approach
Keytorc Software Testing Services
 

Was ist angesagt? (20)

ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
 
Testing types functional and nonfunctional - Kati Holasz
Testing types   functional and nonfunctional - Kati HolaszTesting types   functional and nonfunctional - Kati Holasz
Testing types functional and nonfunctional - Kati Holasz
 
Quality Assurance and Software Testing
Quality Assurance and Software TestingQuality Assurance and Software Testing
Quality Assurance and Software Testing
 
Whitebox testing
Whitebox testingWhitebox testing
Whitebox testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.ppt
 
Types of testing
Types of testingTypes of testing
Types of testing
 
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFLINTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
 
Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)
 
Istqb foundation level day 1
Istqb foundation level   day 1Istqb foundation level   day 1
Istqb foundation level day 1
 
What is Test Plan? Edureka
What is Test Plan? EdurekaWhat is Test Plan? Edureka
What is Test Plan? Edureka
 
Introduction & Manual Testing
Introduction & Manual TestingIntroduction & Manual Testing
Introduction & Manual Testing
 
Testing Center of Excellence - Keytorc Approach
Testing Center of Excellence -  Keytorc ApproachTesting Center of Excellence -  Keytorc Approach
Testing Center of Excellence - Keytorc Approach
 
Agile Testing by Example
Agile Testing by ExampleAgile Testing by Example
Agile Testing by Example
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
 
Software Testing Life Cycle – A Beginner’s Guide
Software Testing Life Cycle – A Beginner’s GuideSoftware Testing Life Cycle – A Beginner’s Guide
Software Testing Life Cycle – A Beginner’s Guide
 
Types of Software Testing | Edureka
Types of Software Testing | EdurekaTypes of Software Testing | Edureka
Types of Software Testing | Edureka
 
What is Software Testing | Edureka
What is Software Testing | EdurekaWhat is Software Testing | Edureka
What is Software Testing | Edureka
 
ISTQB - What's testing
ISTQB - What's testingISTQB - What's testing
ISTQB - What's testing
 

Andere mochten auch

Practical Application Of Risk Based Testing Methods
Practical Application Of Risk Based Testing MethodsPractical Application Of Risk Based Testing Methods
Practical Application Of Risk Based Testing Methods
Reuben Korngold
 
Requirements Driven Risk Based Testing
Requirements Driven Risk Based TestingRequirements Driven Risk Based Testing
Requirements Driven Risk Based Testing
Jeff Findlay
 
Mixtures & Solutions PPT
Mixtures & Solutions PPTMixtures & Solutions PPT
Mixtures & Solutions PPT
sammenheuser
 
Example requirements specification
Example requirements specificationExample requirements specification
Example requirements specification
indrisrozas
 
Regression analysis ppt
Regression analysis pptRegression analysis ppt
Regression analysis ppt
Elkana Rorio
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
Chankey Pathak
 

Andere mochten auch (20)

Practical Application Of Risk Based Testing Methods
Practical Application Of Risk Based Testing MethodsPractical Application Of Risk Based Testing Methods
Practical Application Of Risk Based Testing Methods
 
Put Risk Based Testing in place right now!
Put Risk Based Testing in place right now!Put Risk Based Testing in place right now!
Put Risk Based Testing in place right now!
 
Requirements Driven Risk Based Testing
Requirements Driven Risk Based TestingRequirements Driven Risk Based Testing
Requirements Driven Risk Based Testing
 
[HCMC STC Jan 2015] Risk-Based Software Testing Approaches
[HCMC STC Jan 2015] Risk-Based Software Testing Approaches[HCMC STC Jan 2015] Risk-Based Software Testing Approaches
[HCMC STC Jan 2015] Risk-Based Software Testing Approaches
 
Good Ppt On Risk
Good Ppt On RiskGood Ppt On Risk
Good Ppt On Risk
 
Risks of Risk-Based Testing
Risks of Risk-Based TestingRisks of Risk-Based Testing
Risks of Risk-Based Testing
 
How to deal with bad requirements of software
How to deal with bad requirements of softwareHow to deal with bad requirements of software
How to deal with bad requirements of software
 
Bringing the hacker mindset into requirements and testing by Eapen Thomas and...
Bringing the hacker mindset into requirements and testing by Eapen Thomas and...Bringing the hacker mindset into requirements and testing by Eapen Thomas and...
Bringing the hacker mindset into requirements and testing by Eapen Thomas and...
 
What to do with the problems you cannot solve?
What to do with the problems you cannot solve?What to do with the problems you cannot solve?
What to do with the problems you cannot solve?
 
Forget Quality!
Forget Quality!Forget Quality!
Forget Quality!
 
Methods for Validating and Testing Software Requirements (lecture slides)
Methods for Validating and Testing Software Requirements (lecture slides)Methods for Validating and Testing Software Requirements (lecture slides)
Methods for Validating and Testing Software Requirements (lecture slides)
 
Software Testing without Requirements: Survival Guide
Software Testing without Requirements: Survival GuideSoftware Testing without Requirements: Survival Guide
Software Testing without Requirements: Survival Guide
 
A New Model for Testing
A New Model for TestingA New Model for Testing
A New Model for Testing
 
Risk factors
Risk factors Risk factors
Risk factors
 
Mixtures & Solutions PPT
Mixtures & Solutions PPTMixtures & Solutions PPT
Mixtures & Solutions PPT
 
Risk-Based Testing - Designing & managing the test process (2002)
Risk-Based Testing - Designing & managing the test process (2002)Risk-Based Testing - Designing & managing the test process (2002)
Risk-Based Testing - Designing & managing the test process (2002)
 
Example requirements specification
Example requirements specificationExample requirements specification
Example requirements specification
 
Regression analysis ppt
Regression analysis pptRegression analysis ppt
Regression analysis ppt
 
Implementation of Risk-Based Approach for Quality & Cost Optimization
Implementation of Risk-Based Approach for Quality & Cost OptimizationImplementation of Risk-Based Approach for Quality & Cost Optimization
Implementation of Risk-Based Approach for Quality & Cost Optimization
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 

Ähnlich wie Risk-based Testing

Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
Curiosity Software Ireland
 
Pay pal paypal continuous performance as a self-service with fully-automated...
Pay pal  paypal continuous performance as a self-service with fully-automated...Pay pal  paypal continuous performance as a self-service with fully-automated...
Pay pal paypal continuous performance as a self-service with fully-automated...
Dynatrace
 
Introduction to testing2
Introduction to testing2Introduction to testing2
Introduction to testing2
khaerul azmi
 

Ähnlich wie Risk-based Testing (20)

Test Plan Simplicity
Test Plan SimplicityTest Plan Simplicity
Test Plan Simplicity
 
PAC 2019 virtual Joerek Van Gaalen
PAC 2019 virtual Joerek Van GaalenPAC 2019 virtual Joerek Van Gaalen
PAC 2019 virtual Joerek Van Gaalen
 
Essential Test Management
Essential Test ManagementEssential Test Management
Essential Test Management
 
Performance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecyclePerformance Testing in the Agile Lifecycle
Performance Testing in the Agile Lifecycle
 
Continuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee BarnesContinuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee Barnes
 
Performance Testing Cloud-Based Systems
Performance Testing Cloud-Based SystemsPerformance Testing Cloud-Based Systems
Performance Testing Cloud-Based Systems
 
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
 
Pay pal paypal continuous performance as a self-service with fully-automated...
Pay pal  paypal continuous performance as a self-service with fully-automated...Pay pal  paypal continuous performance as a self-service with fully-automated...
Pay pal paypal continuous performance as a self-service with fully-automated...
 
Software UAT Case study - Finserv
Software UAT Case study - FinservSoftware UAT Case study - Finserv
Software UAT Case study - Finserv
 
Moving to Continuous Delivery Without Breaking Your Code
Moving to Continuous Delivery Without Breaking Your CodeMoving to Continuous Delivery Without Breaking Your Code
Moving to Continuous Delivery Without Breaking Your Code
 
Hoberg's test octagon
Hoberg's test octagonHoberg's test octagon
Hoberg's test octagon
 
Software engineering quality assurance and testing
Software engineering quality assurance and testingSoftware engineering quality assurance and testing
Software engineering quality assurance and testing
 
Innovations and adaptations in agile testing
Innovations and adaptations in agile testingInnovations and adaptations in agile testing
Innovations and adaptations in agile testing
 
Unit 4- Testing.pptx
Unit 4- Testing.pptxUnit 4- Testing.pptx
Unit 4- Testing.pptx
 
ISTQBCH2.ppt
ISTQBCH2.pptISTQBCH2.ppt
ISTQBCH2.ppt
 
ISTQBCH2.ppt
ISTQBCH2.pptISTQBCH2.ppt
ISTQBCH2.ppt
 
Migration to the cloud
Migration to the cloudMigration to the cloud
Migration to the cloud
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New Standard
 
Introduction to testing2
Introduction to testing2Introduction to testing2
Introduction to testing2
 
Test Process in Agile vs Waterfall
Test Process in Agile vs WaterfallTest Process in Agile vs Waterfall
Test Process in Agile vs Waterfall
 

Mehr von Johan Hoberg

Mehr von Johan Hoberg (20)

Approaches to unraveling a complex test problem
Approaches to unraveling a complex test problemApproaches to unraveling a complex test problem
Approaches to unraveling a complex test problem
 
A business case for a modern QA organization
A business case for a modern QA organizationA business case for a modern QA organization
A business case for a modern QA organization
 
Signing off on Quality
Signing off on QualitySigning off on Quality
Signing off on Quality
 
Quality Information Coverage - A QI Concept
Quality Information Coverage - A QI ConceptQuality Information Coverage - A QI Concept
Quality Information Coverage - A QI Concept
 
The Bug Backlog - An Evergrowing Mountain
The Bug Backlog - An Evergrowing MountainThe Bug Backlog - An Evergrowing Mountain
The Bug Backlog - An Evergrowing Mountain
 
Quality Intelligence: Transparency & Visibility
Quality Intelligence: Transparency & VisibilityQuality Intelligence: Transparency & Visibility
Quality Intelligence: Transparency & Visibility
 
Building a QA Mindset
Building a QA Mindset Building a QA Mindset
Building a QA Mindset
 
What is QI?
What is QI?What is QI?
What is QI?
 
Building High Quality Software
Building High Quality Software Building High Quality Software
Building High Quality Software
 
Testit 2017 - Exploratory Testing for Everyone
Testit 2017 - Exploratory Testing for EveryoneTestit 2017 - Exploratory Testing for Everyone
Testit 2017 - Exploratory Testing for Everyone
 
Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...
Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...
Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...
 
Moving from scripted regression testing to exploratory testing
Moving from scripted regression testing to exploratory testingMoving from scripted regression testing to exploratory testing
Moving from scripted regression testing to exploratory testing
 
Building High Quality Software
Building High Quality SoftwareBuilding High Quality Software
Building High Quality Software
 
Quality, Testing & Agile Methodologies
Quality, Testing & Agile MethodologiesQuality, Testing & Agile Methodologies
Quality, Testing & Agile Methodologies
 
QI, not QA
QI, not QAQI, not QA
QI, not QA
 
Defining Test Competence
Defining Test CompetenceDefining Test Competence
Defining Test Competence
 
Why all deadlines are bad for quality
Why all deadlines are bad for qualityWhy all deadlines are bad for quality
Why all deadlines are bad for quality
 
QI, not QA
QI, not QAQI, not QA
QI, not QA
 
Do we really need game testers?
Do we really need game testers?Do we really need game testers?
Do we really need game testers?
 
Hardware/Software Integration Testing
Hardware/Software Integration TestingHardware/Software Integration Testing
Hardware/Software Integration Testing
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Kürzlich hochgeladen (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 

Risk-based Testing

  • 1. Risk-based Testing The Devil is in the Details 1 2013-09-27 PA1 Confidential
  • 2. Introduction • Johan Hoberg • Sony Mobile ▫ ~10 years ▫ Tester, Test Team Leader, Test Architect • This is a presentation of my experiences of risk-based testing 2 2013-09-27 PA1 Confidential
  • 3. Definition • Risk-based testing (RBT) is a type of software testing that prioritizes the tests of features and functions based on the risk of their failure - a function of their importance and likelihood or impact of failure. (http://en.wikipedia.org/wiki/Risk-based_testing) 3 2013-09-27 PA1 Confidential
  • 4. The Devil is in the Details • Refers to a catch or mysterious element hidden in the details • Derives from “God is in the Details” ▫ Generally attributed to Gustave Flaubert (1821–1880) • It is easy to ask for efficient, risk-based testing • It is much more difficult to actually do it well 4 2013-09-27 PA1 Confidential
  • 5. System Under Test Configuration 1 Configuration 2 Android Gingerbread Generic Configuration 3 Android Gingerbread Customer A Android Gingerbread Customer B Android Jellybean Generic Product X Product Y Android Jellybean Customer A Android Jellybean Customer B 5 2013-09-27 PA1 Confidential
  • 7. Changes in the System • There is a change introduced somewhere in the system • Could be a bug fix, a change request, a new feature, refactoring, etc. 7 2013-09-27 PA1 Confidential
  • 8. Scope Selection • Do you run every available test on every possible configuration of the system and verify all interoperability? • A smart scope is necessary to make it containable • We must be able to reuse test results between products, configuration, and branches 8 2013-09-27 PA1 Confidential
  • 9. Scope Selection based on Risk Change Introduced 9 2013-09-27 PA1 System Impact Risk-based Scope Confidential
  • 10. Complex vs. Complicated • Complicated ▫ Opposite of simple ▫ Containing intricately combined or involved parts • Complex ▫ Opposite of predictable? ▫ This adjective means having parts so interconnected as to make the whole perplexing 10 2013-09-27 PA1 Confidential
  • 11. Complex System • A complex system is difficult to predict • It is therefore difficult to plan which actions to take to mitigate different outcomes • It is difficult to plan which tests to run to cover all potentially relevant defects 11 2013-09-27 PA1 Confidential
  • 12. Reduce Complexity Reduce Complex System complexity Very difficult! Scope Selection Change 12 2013-09-27 PA1 Confidential
  • 13. Example • A change is introduced into the Display Driver component – What do I need to test? ▫ Camera? ▫ Interoperability with TV and similar devices? ▫ Multimedia  View pictures, video etc.? ▫ All UI testing? ▫ Other parts of the system? 13 2013-09-27 PA1 Confidential
  • 14. Reduce Complexity • Risk Analysis • Automated Test Framework • Early Exploratory Testing 14 2013-09-27 PA1 Confidential
  • 15. Risk Analysis – Input Data Feature & Hardware Delta Historical Data Code Changes System Dependencies & Architecture 15 2013-09-27 PA1 •Easy to obtain •Might give us an indication on where to start looking, but can often give false confidence in scope selection, especially when it comes to E2E system test •Hard to obtain Confidential
  • 16. Risk Analysis – Risk Model Risk Identification Probability Severity (S) Occurrence (O) Detection (D) 16 2013-09-27 PA1 Consequence Mitigation Plan Risk Priority Number (RPN) = S*O*D Confidential
  • 17. Risk Analysis - Complex vs. Complicated Risk analysis of whole system is complex 17 2013-09-27 PA1 Risk analysis of sufficiently small part is more complicated than complex Confidential
  • 18. Risk Analysis Database • If each function performs risk analysis on their components and enters risks in a database this information could be used on system level to get better understanding of impact of specific changes • Requires a uniform way of handing risk information 18 2013-09-27 PA1 Confidential
  • 19. Problems? • We can get a lot of data that will help us select a scope – but ultimately we will introduce a lot of risk if we do not know how the system is designed, and how different components depend on each other • To get a complete dependency map of the whole system requires not only a good risk-handling infrastructure, but a common effort from a lot of people 19 2013-09-27 PA1 Confidential
  • 21. Automated Test Framework Change + Basic Risk Analysis Automated Test Execution 21 Scope Setting Test Results Analysis 2013-09-27 PA1 Test Execution Confidential
  • 22. Automated Test Framework Change Automated Tests Executed Better understanding of System Dependencies 22 2013-09-27 PA1 Failed Tests Investigated Change in component mapped towards failed tests in other components Confidential
  • 23. Self-learning System • Over time you will have more and more information about how different changes impact the system • Map code changes to failed tests • This impact map can further help you set an efficient scope 23 2013-09-27 PA1 Confidential
  • 24. Continuous Integration • The more code changes we have and the more isolated these code changes are, the easier it is to create the impact map • If you only have one integration per month, with thousands of lines of code changed in different parts of the system, it will be difficult to draw conclusions 24 2013-09-27 PA1 Confidential
  • 25. Problems? • The information value you receive is dependant on how good the tests are • Dependency graph grows over time – in the beginning there is very little data 25 2013-09-27 PA1 Confidential
  • 26. Early Exploratory Testing Change + Basic Risk Analysis Exploratory Testing 26 Scope Setting Test Results Analysis 2013-09-27 PA1 Test Execution Confidential
  • 27. Codifying Experience • How do you transfer the knowledge gained from one tester to the other? • The understanding about impact and dependencies we gain from performing exploratory testing must be stored in a way which makes it accessible to other testers for their risk-based scope selections 27 2013-09-27 PA1 Confidential
  • 28. Manual Dependency Map • After each exploratory session it is possible to add information to a dependency map, where you indicate which changes were made, and what impact those changes had • It needs to be done in a way which is quick and easy, otherwise it will not be done at all 28 2013-09-27 PA1 Confidential
  • 29. Problems? • Additional time might be needed before testers get experience with the new process • It will be more difficult to time plan activity before early exploratory testing is done – this can cause problems with test/project leaders and managers • It requires skilled testers 29 2013-09-27 PA1 Confidential
  • 30. Final thoughts • Every risk-based scope introduces risk – our goal is to eliminate any unnecessary risk • Without skilled testers to write good automated tests or perform exploratory testing it becomes very difficult without a very intricate risk/impact framework 30 2013-09-27 PA1 Confidential
  • 31. Conclusion • It is very difficult to perform riskbased testing for a large, complex system • It is very easy to ask someone else to reduce their test scope by introducing risk-based testing 31 2013-09-27 PA1 Confidential
  • 32. Contact • Email ▫ johan.hoberg@outlook.com • Slideshare ▫ www.slideshare.net/JohanHoberg 32 2013-09-27 PA1 Confidential