SlideShare a Scribd company logo
1 of 19
Agenda

• Background and Motivation
• qSize Analysis
  – Test Size Estimation (Test Case Point Analysis)
  – Test Effort Estimation
• Conclusion




                                                      2
Background
• Software estimation
   – process of determining the cost, time, staff, and
     other related attributes of software projects
• It is important for the success or failure of
  software projects
• Methods and Metrics
   –   Source Lines of Code (SLOC)
   –   Function Points
   –   COCOMO
   –   Expert Judgment


                                                         3
Motivation
• Testing accounts for up to 50% of project
  effort [1]
• Current problems
  – lack of reliable methods designed for estimating
    size and effort of software testing
  – vague definitions of testing productivity
• Our aim is to introduce
  – a method for estimating the size and effort of
    testing activities
  – a simple toolkit for this estimation process

                                                       4
Agenda

• Background and Motivation
• qSize Analysis
  – Test Size Estimation (Test Case Point Analysis)
  – Test Effort Estimation
• Conclusion




                                                      5
qSize Analysis’ Principles
• Size measures the mass and complexity of each
  test cycle of a testing project
• Test case’s complexity is based on
   – Number of checkpoints
   – Complexity of test setup or precondition
   – Complexity of test data
• Test Case Point (TCP) is used as size unit
• Calibration or model refinement is key to
  estimating effort
   – calibration based on feedback from previous
     testing cycles
• Focusing on independent testing (V & V)

                                                   6
qSize Analysis’ Process

[Test Cycle i]
                 Count TCPs                   Estimate
    Test Case                       Counted                           Estimated
                  of all Test                  Testing
    Test Case                         Size
                                                Effort
                                                                        Effort
                    Cases



                                                                                               Update
                                Parameters                                                    Historical
                                                                                                Data



                                 Calibrate
                                Estimation    Historical Data of this Project
                                  Model
                                                Test Cycle     Size     Actual         Effort by
                                                                        Effort         Activity
                                               ….             ….       ….         ….
                                               Test cycle i   ….       ….         ….
                                               ….             ….       ….         ….




                                                                                                       7
Count Size of Test Cycle
• Size of a test cycle is the total of TCPs of all test
  cases to be executed in that test cycle

• Steps:
                 Count
               Checkpoints


                                            Adjust based
 Test Case    Determine Set    Unadjusted
                                            on Test Type   TCPs
              Up Complexity      TCPs
                                             (optional)

              Determine Test
                   Data
               Complexity




                                                                  8
Count Size of Test Cycle (cont’d)
• Checkpoints
  – Checkpoint is the condition in which the tester
    verifies whether the result produced by the
    target function matches the expected criterion
  – One test case consists of one or many
    checkpoints

    One checkpoint is counted as one TCP



                                                      9
Count Size of Test Cycle (cont’d)
• Test Setup or Precondition
    – Test setup specifies the condition to execute the
      test case
    – Four levels of Test Setup complexity
       • Each is assigned a number of TCPs
 Number      Complexity                                              Description
 of TCP(*)     Level
    0        None         •   The set up is not applicable or important to execute the test case
                          •   Or, the set up is just reused from the previous test case to continue the current test case
    1        Low          •   The condition for executing the test case is available with some simple modifications required
                          •   Or, some simple set-up steps are needed
    3        Medium       •   Some explicit preparation is needed to execute the test case
                          •   Or, The condition for executing is available with some additional modifications required
                          •   Or, some additional set-up steps are needed

    5        High         •   Heavy hardware and/or software configurations are needed to execute the test case




                                                                                                                               10
Count Size of Test Cycle (cont’d)
• Test Data
   – Test Data is used to execute the test case
   – Four levels of Test Data complexity
      • Each is assigned a number of TCPs
    Number      Complexity                                               Description
   of TCP (*)     Level
       0        None          •    No test data preparation is needed

       1        Low           •    Simple test data is needed and can be created during the test case execution time
                              •    Or, the test case uses a slightly modified version of existing test data and requires little
                                   or no effort to modify the test data
       3        Medium        •    Test data is deliberately prepared in advance with extra effort to ensure its
                                   completeness, comprehensiveness, and consistency
       6        High          •    Test data is prepared in advance with considerable effort to ensure its completeness,
                                   comprehensiveness, and consistency
                              •    This could include using support tools to generate data and a database to store and
                                   manage test data
                              •    Scripts may be required to generate test data
            (*) based on our survey of 18 senior QA engineers. You can adjust according to your project’s experience.
Count Size of Test Cycle (cont’d)
• Adjust TCPs based on Type of Test
  – This is an OPTIONAL step
  – Adjustment is based on types of test cases
     • Each type of test case is assigned a weight
     • Adjusted TCP = Counted TCP x Weight(*)




                                                     12
Estimate Effort of Test Cycle
• Overview
  – Two estimation methods
     • Based on Test Velocity
     • Regression analysis of Size and Effort of
       completed test cycles
  – Effort distributed by activity
     • Test Planning                    Each may be
     • Test Analysis and Design         performed
     • Test Execution                   multiple
     • Test Tracking and Reporting      times

                                                      13
Estimate Effort of Test Cycle (cont’d)
• Estimate Effort based on Test Velocity

    Effort = Size / Test Velocity

  – Test Velocity is measured as TCP/person-hour
      • dependent on project
      • calculated based on data from completed test
        cycles of the same project




                                                       14
Estimate Effort of Test Cycle (cont’d)
• Estimate effort using Linear Regression Analysis
  – Find out the equation of effort and size using
    similar completed test cycles of a project
              100

                  90

                  80                                                                       Equation of
                  70
                                                 y = 0.072x + 1.640
                                                                                           Size and
    Effort (PM)




                  60
                                                                                           Effort
                  50

                  40

                  30

                  20

                  10

                  0
                       0   100   200   300      400   500   600   700   800   900   1000
                                             Adjusted TCP




                                                                                                         15
Calibrate the qSize Estimation Model
• Calibration: a process adjusting parameters for a
  model using historical data or experiences
• With qSize Estimation model, you can calibrate:
  (1) TCP for to each complexity level of Test Setup
  (2) TCP for to each complexity level of Test Data
  (3) Test Velocity
  (4) Effort distribution
  (5) Weights of test case types
• Process can be done with the help of tools
                   Tool Demo
                                                       16
Conclusion
• qSize Analysis is an agile approach to estimating
  size and effort of test cycle
  – Estimate Size in TCP
  – Estimate Effort using Test Velocity or Regression
  – An Excel toolkit to simplify the approach
• Advantages and experiences learned
  – Easy to implement
  – Independent with the level of details of test cases
  – Found useful
• Limitations and future improvements
  – A new approach
  – Need more empirical validations

                                                          17
Thank You
References
•   [1] Y. Yang, Q. Li, M. Li, Q. Wang, An empirical analysis on distribution patterns of software
    maintenance effort, International Conference on Software Maintenance, 2008, pp. 456-459
•   [2] N. Patel, M. Govindrajan, S. Maharana, S. Ramdas, “Test Case Point Analysis”, Cognizant
    Technology Solutions, White Paper, 2001
•   [3] QASymphony: www.qasymphony.com

More Related Content

Similar to Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software testing size and effort by Vu Nguyen

Test Estimation using Test Case Point Analysis method
Test Estimation using Test Case Point Analysis methodTest Estimation using Test Case Point Analysis method
Test Estimation using Test Case Point Analysis methodKMS Technology
 
An Approach to estimate Software Testing
An Approach to estimate Software TestingAn Approach to estimate Software Testing
An Approach to estimate Software TestingAgile Vietnam
 
Test Case Point Analysis
Test Case Point AnalysisTest Case Point Analysis
Test Case Point Analysisvuqn
 
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...Iosif Itkin
 
Test case prioritization usinf regression testing.pptx
Test case prioritization usinf regression testing.pptxTest case prioritization usinf regression testing.pptx
Test case prioritization usinf regression testing.pptxmaheshwari581940
 
Class9_SW_Testing_Strategies.pdf
Class9_SW_Testing_Strategies.pdfClass9_SW_Testing_Strategies.pdf
Class9_SW_Testing_Strategies.pdfFarjanaParvin5
 
Software engineering Testing technique,test case,test suit design
Software engineering Testing technique,test case,test suit designSoftware engineering Testing technique,test case,test suit design
Software engineering Testing technique,test case,test suit designMaitree Patel
 
Risk based testing and random testing
Risk based testing and random testingRisk based testing and random testing
Risk based testing and random testingHimanshu
 
Test automation principles, terminologies and implementations
Test automation principles, terminologies and implementationsTest automation principles, terminologies and implementations
Test automation principles, terminologies and implementationsSteven Li
 
Mt s11 test_design
Mt s11 test_designMt s11 test_design
Mt s11 test_designTestingGeeks
 
Database Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTSDatabase Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTSSanil Mhatre
 
Fundamentals of software 2 | Test Case | Test Suite | Test Plan | Test Scenario
Fundamentals of software 2 | Test Case | Test Suite | Test Plan | Test ScenarioFundamentals of software 2 | Test Case | Test Suite | Test Plan | Test Scenario
Fundamentals of software 2 | Test Case | Test Suite | Test Plan | Test ScenarioSiddharth Sharma
 
Performance Testing Java Applications
Performance Testing Java ApplicationsPerformance Testing Java Applications
Performance Testing Java ApplicationsC4Media
 
Benchmarking Elastic Cloud Big Data Services under SLA Constraints
Benchmarking Elastic Cloud Big Data Services under SLA ConstraintsBenchmarking Elastic Cloud Big Data Services under SLA Constraints
Benchmarking Elastic Cloud Big Data Services under SLA ConstraintsNicolas Poggi
 
Dealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in VerificationDealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in VerificationDVClub
 
20220914-MBT-Experiences-SB1-final.pptx
20220914-MBT-Experiences-SB1-final.pptx20220914-MBT-Experiences-SB1-final.pptx
20220914-MBT-Experiences-SB1-final.pptxMinh Nguyen
 

Similar to Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software testing size and effort by Vu Nguyen (20)

Test Estimation using Test Case Point Analysis method
Test Estimation using Test Case Point Analysis methodTest Estimation using Test Case Point Analysis method
Test Estimation using Test Case Point Analysis method
 
An Approach to estimate Software Testing
An Approach to estimate Software TestingAn Approach to estimate Software Testing
An Approach to estimate Software Testing
 
Test Case Point Analysis
Test Case Point AnalysisTest Case Point Analysis
Test Case Point Analysis
 
[Vu Van Nguyen] Test Estimation in Practice
[Vu Van Nguyen]  Test Estimation in Practice[Vu Van Nguyen]  Test Estimation in Practice
[Vu Van Nguyen] Test Estimation in Practice
 
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
 
Test case prioritization usinf regression testing.pptx
Test case prioritization usinf regression testing.pptxTest case prioritization usinf regression testing.pptx
Test case prioritization usinf regression testing.pptx
 
Class9_SW_Testing_Strategies.pdf
Class9_SW_Testing_Strategies.pdfClass9_SW_Testing_Strategies.pdf
Class9_SW_Testing_Strategies.pdf
 
Software engineering Testing technique,test case,test suit design
Software engineering Testing technique,test case,test suit designSoftware engineering Testing technique,test case,test suit design
Software engineering Testing technique,test case,test suit design
 
Risk based testing and random testing
Risk based testing and random testingRisk based testing and random testing
Risk based testing and random testing
 
Test automation principles, terminologies and implementations
Test automation principles, terminologies and implementationsTest automation principles, terminologies and implementations
Test automation principles, terminologies and implementations
 
Mt s11 test_design
Mt s11 test_designMt s11 test_design
Mt s11 test_design
 
Database Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTSDatabase Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTS
 
11 whiteboxtesting
11 whiteboxtesting11 whiteboxtesting
11 whiteboxtesting
 
Fundamentals of software 2 | Test Case | Test Suite | Test Plan | Test Scenario
Fundamentals of software 2 | Test Case | Test Suite | Test Plan | Test ScenarioFundamentals of software 2 | Test Case | Test Suite | Test Plan | Test Scenario
Fundamentals of software 2 | Test Case | Test Suite | Test Plan | Test Scenario
 
Performance Testing Java Applications
Performance Testing Java ApplicationsPerformance Testing Java Applications
Performance Testing Java Applications
 
Benchmarking Elastic Cloud Big Data Services under SLA Constraints
Benchmarking Elastic Cloud Big Data Services under SLA ConstraintsBenchmarking Elastic Cloud Big Data Services under SLA Constraints
Benchmarking Elastic Cloud Big Data Services under SLA Constraints
 
ASIC design verification
ASIC design verificationASIC design verification
ASIC design verification
 
New method introduction
New method introductionNew method introduction
New method introduction
 
Dealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in VerificationDealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in Verification
 
20220914-MBT-Experiences-SB1-final.pptx
20220914-MBT-Experiences-SB1-final.pptx20220914-MBT-Experiences-SB1-final.pptx
20220914-MBT-Experiences-SB1-final.pptx
 

More from RIA RUI Society

User experience - Why the mobile space is important
User experience - Why the mobile space is importantUser experience - Why the mobile space is important
User experience - Why the mobile space is importantRIA RUI Society
 
Introduction to google cloud messaging in android
Introduction to google cloud messaging in androidIntroduction to google cloud messaging in android
Introduction to google cloud messaging in androidRIA RUI Society
 
Entering the world of Samsung developer ecosystem
Entering the world of Samsung developer ecosystemEntering the world of Samsung developer ecosystem
Entering the world of Samsung developer ecosystemRIA RUI Society
 
App monetization - 5 secrets of success
App monetization - 5 secrets of successApp monetization - 5 secrets of success
App monetization - 5 secrets of successRIA RUI Society
 
Socialize and Gaming on the move
Socialize and Gaming on the moveSocialize and Gaming on the move
Socialize and Gaming on the moveRIA RUI Society
 
Indian design and the art of story telling
Indian design and the art of story tellingIndian design and the art of story telling
Indian design and the art of story tellingRIA RUI Society
 
Design of the indian rupee symbol
Design of the indian rupee symbolDesign of the indian rupee symbol
Design of the indian rupee symbolRIA RUI Society
 
Creating delightful experiences
Creating delightful experiencesCreating delightful experiences
Creating delightful experiencesRIA RUI Society
 
Typographic history, systems and perception
Typographic history, systems and perceptionTypographic history, systems and perception
Typographic history, systems and perceptionRIA RUI Society
 
Understanding Design and Brand Communication Workshop Content - Design Camp I...
Understanding Design and Brand Communication Workshop Content - Design Camp I...Understanding Design and Brand Communication Workshop Content - Design Camp I...
Understanding Design and Brand Communication Workshop Content - Design Camp I...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Driving innovation using pattern based thinking...
Bug deBug Chennai 2012 Talk - Driving innovation using pattern based thinking...Bug deBug Chennai 2012 Talk - Driving innovation using pattern based thinking...
Bug deBug Chennai 2012 Talk - Driving innovation using pattern based thinking...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
Bug deBug Chennai 2012 Talk - Web application usability by Parimala HariprasadBug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
Bug deBug Chennai 2012 Talk - Web application usability by Parimala HariprasadRIA RUI Society
 
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Effective test management with triple t tools,...
Bug deBug Chennai 2012 Talk - Effective test management with triple t  tools,...Bug deBug Chennai 2012 Talk - Effective test management with triple t  tools,...
Bug deBug Chennai 2012 Talk - Effective test management with triple t tools,...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Business value articulation in software project...
Bug deBug Chennai 2012 Talk - Business value articulation in software project...Bug deBug Chennai 2012 Talk - Business value articulation in software project...
Bug deBug Chennai 2012 Talk - Business value articulation in software project...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...RIA RUI Society
 
Usability testing for mobile apps - Touch Tour Chennai
Usability testing for mobile apps - Touch Tour ChennaiUsability testing for mobile apps - Touch Tour Chennai
Usability testing for mobile apps - Touch Tour ChennaiRIA RUI Society
 
Introduction to Android OS - Touch Tour Chennai
Introduction to Android OS - Touch Tour ChennaiIntroduction to Android OS - Touch Tour Chennai
Introduction to Android OS - Touch Tour ChennaiRIA RUI Society
 
Html5 and beyond the next generation of mobile web applications - Touch Tou...
Html5 and beyond   the next generation of mobile web applications - Touch Tou...Html5 and beyond   the next generation of mobile web applications - Touch Tou...
Html5 and beyond the next generation of mobile web applications - Touch Tou...RIA RUI Society
 

More from RIA RUI Society (20)

User experience - Why the mobile space is important
User experience - Why the mobile space is importantUser experience - Why the mobile space is important
User experience - Why the mobile space is important
 
Introduction to google cloud messaging in android
Introduction to google cloud messaging in androidIntroduction to google cloud messaging in android
Introduction to google cloud messaging in android
 
Entering the world of Samsung developer ecosystem
Entering the world of Samsung developer ecosystemEntering the world of Samsung developer ecosystem
Entering the world of Samsung developer ecosystem
 
App monetization - 5 secrets of success
App monetization - 5 secrets of successApp monetization - 5 secrets of success
App monetization - 5 secrets of success
 
Socialize and Gaming on the move
Socialize and Gaming on the moveSocialize and Gaming on the move
Socialize and Gaming on the move
 
Indian design and the art of story telling
Indian design and the art of story tellingIndian design and the art of story telling
Indian design and the art of story telling
 
Design of the indian rupee symbol
Design of the indian rupee symbolDesign of the indian rupee symbol
Design of the indian rupee symbol
 
Creating delightful experiences
Creating delightful experiencesCreating delightful experiences
Creating delightful experiences
 
Typographic history, systems and perception
Typographic history, systems and perceptionTypographic history, systems and perception
Typographic history, systems and perception
 
Understanding Design and Brand Communication Workshop Content - Design Camp I...
Understanding Design and Brand Communication Workshop Content - Design Camp I...Understanding Design and Brand Communication Workshop Content - Design Camp I...
Understanding Design and Brand Communication Workshop Content - Design Camp I...
 
Bug deBug Chennai 2012 Talk - Driving innovation using pattern based thinking...
Bug deBug Chennai 2012 Talk - Driving innovation using pattern based thinking...Bug deBug Chennai 2012 Talk - Driving innovation using pattern based thinking...
Bug deBug Chennai 2012 Talk - Driving innovation using pattern based thinking...
 
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
 
Bug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
Bug deBug Chennai 2012 Talk - Web application usability by Parimala HariprasadBug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
Bug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
 
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
 
Bug deBug Chennai 2012 Talk - Effective test management with triple t tools,...
Bug deBug Chennai 2012 Talk - Effective test management with triple t  tools,...Bug deBug Chennai 2012 Talk - Effective test management with triple t  tools,...
Bug deBug Chennai 2012 Talk - Effective test management with triple t tools,...
 
Bug deBug Chennai 2012 Talk - Business value articulation in software project...
Bug deBug Chennai 2012 Talk - Business value articulation in software project...Bug deBug Chennai 2012 Talk - Business value articulation in software project...
Bug deBug Chennai 2012 Talk - Business value articulation in software project...
 
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
 
Usability testing for mobile apps - Touch Tour Chennai
Usability testing for mobile apps - Touch Tour ChennaiUsability testing for mobile apps - Touch Tour Chennai
Usability testing for mobile apps - Touch Tour Chennai
 
Introduction to Android OS - Touch Tour Chennai
Introduction to Android OS - Touch Tour ChennaiIntroduction to Android OS - Touch Tour Chennai
Introduction to Android OS - Touch Tour Chennai
 
Html5 and beyond the next generation of mobile web applications - Touch Tou...
Html5 and beyond   the next generation of mobile web applications - Touch Tou...Html5 and beyond   the next generation of mobile web applications - Touch Tou...
Html5 and beyond the next generation of mobile web applications - Touch Tou...
 

Recently uploaded

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
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 slidevu2urc
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
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...Neo4j
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
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...apidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
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 Takeoffsammart93
 

Recently uploaded (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
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
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL 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...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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
 

Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software testing size and effort by Vu Nguyen

  • 1.
  • 2. Agenda • Background and Motivation • qSize Analysis – Test Size Estimation (Test Case Point Analysis) – Test Effort Estimation • Conclusion 2
  • 3. Background • Software estimation – process of determining the cost, time, staff, and other related attributes of software projects • It is important for the success or failure of software projects • Methods and Metrics – Source Lines of Code (SLOC) – Function Points – COCOMO – Expert Judgment 3
  • 4. Motivation • Testing accounts for up to 50% of project effort [1] • Current problems – lack of reliable methods designed for estimating size and effort of software testing – vague definitions of testing productivity • Our aim is to introduce – a method for estimating the size and effort of testing activities – a simple toolkit for this estimation process 4
  • 5. Agenda • Background and Motivation • qSize Analysis – Test Size Estimation (Test Case Point Analysis) – Test Effort Estimation • Conclusion 5
  • 6. qSize Analysis’ Principles • Size measures the mass and complexity of each test cycle of a testing project • Test case’s complexity is based on – Number of checkpoints – Complexity of test setup or precondition – Complexity of test data • Test Case Point (TCP) is used as size unit • Calibration or model refinement is key to estimating effort – calibration based on feedback from previous testing cycles • Focusing on independent testing (V & V) 6
  • 7. qSize Analysis’ Process [Test Cycle i] Count TCPs Estimate Test Case Counted Estimated of all Test Testing Test Case Size Effort Effort Cases Update Parameters Historical Data Calibrate Estimation Historical Data of this Project Model Test Cycle Size Actual Effort by Effort Activity …. …. …. …. Test cycle i …. …. …. …. …. …. …. 7
  • 8. Count Size of Test Cycle • Size of a test cycle is the total of TCPs of all test cases to be executed in that test cycle • Steps: Count Checkpoints Adjust based Test Case Determine Set Unadjusted on Test Type TCPs Up Complexity TCPs (optional) Determine Test Data Complexity 8
  • 9. Count Size of Test Cycle (cont’d) • Checkpoints – Checkpoint is the condition in which the tester verifies whether the result produced by the target function matches the expected criterion – One test case consists of one or many checkpoints One checkpoint is counted as one TCP 9
  • 10. Count Size of Test Cycle (cont’d) • Test Setup or Precondition – Test setup specifies the condition to execute the test case – Four levels of Test Setup complexity • Each is assigned a number of TCPs Number Complexity Description of TCP(*) Level 0 None • The set up is not applicable or important to execute the test case • Or, the set up is just reused from the previous test case to continue the current test case 1 Low • The condition for executing the test case is available with some simple modifications required • Or, some simple set-up steps are needed 3 Medium • Some explicit preparation is needed to execute the test case • Or, The condition for executing is available with some additional modifications required • Or, some additional set-up steps are needed 5 High • Heavy hardware and/or software configurations are needed to execute the test case 10
  • 11. Count Size of Test Cycle (cont’d) • Test Data – Test Data is used to execute the test case – Four levels of Test Data complexity • Each is assigned a number of TCPs Number Complexity Description of TCP (*) Level 0 None • No test data preparation is needed 1 Low • Simple test data is needed and can be created during the test case execution time • Or, the test case uses a slightly modified version of existing test data and requires little or no effort to modify the test data 3 Medium • Test data is deliberately prepared in advance with extra effort to ensure its completeness, comprehensiveness, and consistency 6 High • Test data is prepared in advance with considerable effort to ensure its completeness, comprehensiveness, and consistency • This could include using support tools to generate data and a database to store and manage test data • Scripts may be required to generate test data (*) based on our survey of 18 senior QA engineers. You can adjust according to your project’s experience.
  • 12. Count Size of Test Cycle (cont’d) • Adjust TCPs based on Type of Test – This is an OPTIONAL step – Adjustment is based on types of test cases • Each type of test case is assigned a weight • Adjusted TCP = Counted TCP x Weight(*) 12
  • 13. Estimate Effort of Test Cycle • Overview – Two estimation methods • Based on Test Velocity • Regression analysis of Size and Effort of completed test cycles – Effort distributed by activity • Test Planning Each may be • Test Analysis and Design performed • Test Execution multiple • Test Tracking and Reporting times 13
  • 14. Estimate Effort of Test Cycle (cont’d) • Estimate Effort based on Test Velocity Effort = Size / Test Velocity – Test Velocity is measured as TCP/person-hour • dependent on project • calculated based on data from completed test cycles of the same project 14
  • 15. Estimate Effort of Test Cycle (cont’d) • Estimate effort using Linear Regression Analysis – Find out the equation of effort and size using similar completed test cycles of a project 100 90 80 Equation of 70 y = 0.072x + 1.640 Size and Effort (PM) 60 Effort 50 40 30 20 10 0 0 100 200 300 400 500 600 700 800 900 1000 Adjusted TCP 15
  • 16. Calibrate the qSize Estimation Model • Calibration: a process adjusting parameters for a model using historical data or experiences • With qSize Estimation model, you can calibrate: (1) TCP for to each complexity level of Test Setup (2) TCP for to each complexity level of Test Data (3) Test Velocity (4) Effort distribution (5) Weights of test case types • Process can be done with the help of tools Tool Demo 16
  • 17. Conclusion • qSize Analysis is an agile approach to estimating size and effort of test cycle – Estimate Size in TCP – Estimate Effort using Test Velocity or Regression – An Excel toolkit to simplify the approach • Advantages and experiences learned – Easy to implement – Independent with the level of details of test cases – Found useful • Limitations and future improvements – A new approach – Need more empirical validations 17
  • 19. References • [1] Y. Yang, Q. Li, M. Li, Q. Wang, An empirical analysis on distribution patterns of software maintenance effort, International Conference on Software Maintenance, 2008, pp. 456-459 • [2] N. Patel, M. Govindrajan, S. Maharana, S. Ramdas, “Test Case Point Analysis”, Cognizant Technology Solutions, White Paper, 2001 • [3] QASymphony: www.qasymphony.com