SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
Pinpointing and Exploiting
            Specific Performance Bottlenecks
                                                Revised for:
                     Software Test & Performance Conference
                                           November 2005 New York, NY


                                             First Presented for:
                         IBM Rational Users Conference, 2004

                                       Scott Barber
                                 Chief Technology Officer
                                    PerfTestPlus, Inc.
    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 1
© 2005 PerfTestPlus All rights reserved.
Agenda
Introduction
Analyzing Results to Identify Bottlenecks
What the Development Team Needs to Know
Identify Tier of Detected Issue
Identify Component of Detect Issue
Develop Test To Exploit Issue
Available Tools
Examples (Time Permitting)
Want More Information?
Summary/Questions

    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 2
© 2005 PerfTestPlus All rights reserved.
Introduction
This presentation is adapted from User Experience,
not Metrics: Parts 6, 8, 9 and10 and Beyond
Performance Testing: Parts 6, 7, 8, 9, 10 located at
http://www-106.ibm.com/developerworks/rational/library/
(RDW) and http://www.perftestplus.com/.




    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 3
© 2005 PerfTestPlus All rights reserved.
Introduction
One part of the system is always slowest (the bottleneck). Until it is
   remedied, no other tuning will actually improve the overall
   performance of the application along that path. Before that
   bottleneck can be tuned, it must first be conclusively identified.
Once a bottleneck is identified, resolution can be reached more
   quickly if your existing tests are modified to eliminate distraction
   from ancillary issues. Pinpointing exactly where the bottleneck is
   an art all its own.
After determining where the bottleneck is architecturally, a new test
   will likely be needed to exploit it in order to help the development
   team with tuning. These bottleneck exploiting tests needn’t bear
   any resemblance to real user activity but rather focus on the
   bottleneck alone. In fact, these tests often don’t even interact
   with the system in ways users could and may include direct
   interaction with back-end tiers.
    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 4
© 2005 PerfTestPlus All rights reserved.
Intro – Scott’s Rules of Bottlenecks
A bottleneck is a slowdown, not a stoppage. A stoppage is a failure.
Bottlenecks don’t only exist under load.
The symptoms of the bottleneck are (virtually) never observed at the actual
   location of the bottleneck.




The critical bottleneck is the one bottleneck along a particular user path the
  removal of which will improve both performance and the ability to find
  other bottlenecks.




If you have multiple paths through a system and think there’s a bottleneck,
    you should isolate each path and evaluate it separately.

    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 5
© 2005 PerfTestPlus All rights reserved.
Intro – Scott’s Rules of Bottlenecks
The bottleneck is more likely to be found in the hardware than
  in the network, but the network is easier to check.




Unless other activities and/or users are affected by the
  observed slowness or its cause, it’s not a bottleneck but a
  slow spot.
When reporting bottleneck suspects, don’t assume you know
  the cause, just report the symptoms.

    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 6
© 2005 PerfTestPlus All rights reserved.
Analyzing Results to ID Bottlenecks
Examine Response vs. Time Charts/Tables
          Help identify bottleneck suspects
          Parts 6, 7, 8, and 9 of the “User Experience, Not Metrics” series




    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 7
© 2005 PerfTestPlus All rights reserved.
Analyzing Results to ID Bottlenecks
Study Scatter Charts
       Any pattern that shows more than one dot outside of your predefined
     acceptable performance levels is a potential bottleneck
         Part 6 of the “Beyond Performance Testing” series




    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 8
© 2005 PerfTestPlus All rights reserved.
Analyzing Results to ID Bottlenecks
Rely on Personal Observation
Listen to Third Party Comments
Confirm Suspects
Reproduce Results
          Exactly
          Manually
          With Similar Tests
          With Minimalist Tests
          With Not-So-Similar Tests
Report Suspects
          Verbally
          Visually
          Via Demonstration

    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 9
© 2005 PerfTestPlus All rights reserved.
What the Dev Team Needs to Know
Which related activities produce the same symptoms?
Which other activities are affected by the bottleneck?
What were the load characteristics of the test yielding
  the symptoms?
What data did you use to create the symptoms?
What’s the configuration of the environment you’re
  testing?
Other metrics the developers wanted you to collect.




    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 10
© 2005 PerfTestPlus All rights reserved.
Identify Tier of Detected Issue


Logical
  Architecture




                                                            Physical Architecture



    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 11
© 2005 PerfTestPlus All rights reserved.
Identify Tier of Detected Issue
Physical Architecture with Logical Overlay




    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 12
© 2005 PerfTestPlus All rights reserved.
Identify Tier of Detected Issue
Design Tests to Determine Tier
         Ask “What if
? Questions.
         Ask Developers to Speculate
         Evaluate Commands with Slow Responses
         Think in Terms of Distinguishing Failures, Slow Spots
         and Bottlenecks
         Visualize and Prioritize
Modify Existing Tests
Create New Tests
          Use Same Tool
          Use Different Tool
          Use Test Harnesses

    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 13
© 2005 PerfTestPlus All rights reserved.
Identify Tier of Detected Issue
Speak Intelligently with the Development Team
Capture Metrics by Tier
          Resource Utilization
          Response Times
          Others Identified by Developers
Interpret Metrics
          Look for the Obvious
          Consult Development Team
          Change Tests to Prove (or Disprove) Theories




    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 14
© 2005 PerfTestPlus All rights reserved.
Identify Component of Detected Issue
Once Tier is Identified

          Further Narrowing may be Required
          Same Principles as Identifying Tier
Speak Intelligently with the Development Team
Capture Metrics by Component
          Resource Utilization
          Response Times
          Others Identified by Developers
Interpret Metrics
          Look for the Obvious
          Consult Development Team
          Change Tests to Prove (or Disprove) Theories


    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 15
© 2005 PerfTestPlus All rights reserved.
Develop Test To Exploit Issue
Lessons from Hydrodynamics
           Pools/Queues
           Flows/Threads/Processes
           Pipe Size/Throughput




    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 16
© 2005 PerfTestPlus All rights reserved.
Develop Test To Exploit Issue
Exploitation Methods
         Bounds Conditions
         Breakpoints
         Resource Constraints
Hand off to Development Team
         Following Development Team’s Lead (Case Studies, BPT 10)
Different Testing Styles
         Black-Box
         Grey-Box
         White-Box
Knowing When to put the Load Generation Tool Away
    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 17
© 2005 PerfTestPlus All rights reserved.
Available Tools
Common
           LoadRunner, Silk Performer, Performance Tester,
           OpenSTA, Visual Studio Test System, eLoad
           Purify, Quantify, Performassure
           J-Meter, Perfmon, Perfmeter, Top
           WebTrends, WebLogic, Tivoli
Other Performance Test/Monitoring Tools
           Load Generation
           Performance Monitoring
           Performance Analysis
           OS/System Specific Tools
           Application Specific Tools
    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 18
© 2005 PerfTestPlus All rights reserved.
Available Tools
Other Analysis Tools
        Spreadsheets
        Statistical Calculators
        Mathematical Graphing
        Graphical Presentation
Most Important Tools
        Your Brain
        Your Development Team




     www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 19
 © 2005 PerfTestPlus All rights reserved.
Examples




    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 20
© 2005 PerfTestPlus All rights reserved.
Want More Information?
Information adapted from User Experience, not Metrics: Parts 6, 8,
   9 and10 and Beyond Performance Testing: Parts 6, 7, 8, 9, 10
   located at http://www-106.ibm.com/developerworks/rational/library/
   (RDW) and http://www.PerfTestPlus.com
Ask me directly on the Performance and Load Testing forums on
   RDW (http://www-106.ibm.com/developerworks/forums/dw_rforums.jsp) or
   http://QAForums.com (Huge QA Forum)
Good sources for additional information about Performance
   Testing:
          http://www.PerfTestPlus.com (Methodology, Templates, Articles,
          Presentations)
          http://www.loadtester.com (Good articles and links)
          http://www.keynote.com/resources/resource_library.html (Good articles
          and statistics)
Graphical Presentation of Information – Edward Tufte, PhD.
  http://www.edwardtufte.com (Books and seminars)

    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 21
© 2005 PerfTestPlus All rights reserved.
Summary
Report Symptoms, not Solutions/Reasons
Verify Observations
Analyze Results Collaboratively
Don’t Over-depend on your Initial Tests
Determine Related and Unrelated Activities
Analyze, Analyze, Analyze (Collaboratively)
Know When to Hand-off to the Development Team
Yours is a Support Role
Document Conclusions
Document Recommendations

    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 22
© 2005 PerfTestPlus All rights reserved.
Questions




    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 23
© 2005 PerfTestPlus All rights reserved.
Contact Info

                                           Scott Barber
                              Chief Technology Officer
                                           PerfTestPlus, Inc


E-mail:                                                        Web Site:
sbarber@perftestplus.com                                       www.PerfTestPlus.com



    www.PerfTestPlus.com            Pinpointing and Exploiting Specific Bottlenecks   Page 24
© 2005 PerfTestPlus All rights reserved.

Weitere Àhnliche Inhalte

Was ist angesagt?

defect tracking and management
defect tracking and management   defect tracking and management
defect tracking and management Manish Chaurasia
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool OverviewANKUR-BA
 
Why vb is known as front end tool
Why vb is known as front end toolWhy vb is known as front end tool
Why vb is known as front end toolMark Arangcon
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testingRichard Bishop
 
Practical Software Testing Tools
Practical Software Testing ToolsPractical Software Testing Tools
Practical Software Testing ToolsDr Ganesh Iyer
 
Manual software-testing-interview-questions-with-answers
Manual software-testing-interview-questions-with-answersManual software-testing-interview-questions-with-answers
Manual software-testing-interview-questions-with-answersSachin Gupta
 
Testingtechniques And Strategy
Testingtechniques And StrategyTestingtechniques And Strategy
Testingtechniques And Strategynazeer pasha
 
Defect Tracking Software Project Presentation
Defect Tracking Software Project PresentationDefect Tracking Software Project Presentation
Defect Tracking Software Project PresentationShiv Prakash
 
Load Testing Best Practices
Load Testing Best PracticesLoad Testing Best Practices
Load Testing Best PracticesApica
 
Performance Requirement Gathering
Performance Requirement GatheringPerformance Requirement Gathering
Performance Requirement GatheringAtul Pant
 
Test Automation Approach
Test Automation ApproachTest Automation Approach
Test Automation Approachtomek tomek
 
Software Testing Life Cycle
Software Testing Life CycleSoftware Testing Life Cycle
Software Testing Life CycleUdayakumar Sree
 
Document defect tracking for improving product quality and productivity
Document   defect tracking for improving product quality and productivityDocument   defect tracking for improving product quality and productivity
Document defect tracking for improving product quality and productivitych_tabitha7
 
Window Desktop Application Testing
Window Desktop Application TestingWindow Desktop Application Testing
Window Desktop Application TestingTrupti Jethva
 
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...Edureka!
 
Types of Software Testing | Edureka
Types of Software Testing | EdurekaTypes of Software Testing | Edureka
Types of Software Testing | EdurekaEdureka!
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9Ian Sommerville
 
Defect correction-Software Testing
Defect correction-Software TestingDefect correction-Software Testing
Defect correction-Software Testingmrinmoy mukherjee
 
Infographic: Importance of Performance Testing
Infographic: Importance of Performance TestingInfographic: Importance of Performance Testing
Infographic: Importance of Performance TestingKiwiQA
 

Was ist angesagt? (20)

defect tracking and management
defect tracking and management   defect tracking and management
defect tracking and management
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool Overview
 
Why vb is known as front end tool
Why vb is known as front end toolWhy vb is known as front end tool
Why vb is known as front end tool
 
Value of software testing
Value of software testingValue of software testing
Value of software testing
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 
Practical Software Testing Tools
Practical Software Testing ToolsPractical Software Testing Tools
Practical Software Testing Tools
 
Manual software-testing-interview-questions-with-answers
Manual software-testing-interview-questions-with-answersManual software-testing-interview-questions-with-answers
Manual software-testing-interview-questions-with-answers
 
Testingtechniques And Strategy
Testingtechniques And StrategyTestingtechniques And Strategy
Testingtechniques And Strategy
 
Defect Tracking Software Project Presentation
Defect Tracking Software Project PresentationDefect Tracking Software Project Presentation
Defect Tracking Software Project Presentation
 
Load Testing Best Practices
Load Testing Best PracticesLoad Testing Best Practices
Load Testing Best Practices
 
Performance Requirement Gathering
Performance Requirement GatheringPerformance Requirement Gathering
Performance Requirement Gathering
 
Test Automation Approach
Test Automation ApproachTest Automation Approach
Test Automation Approach
 
Software Testing Life Cycle
Software Testing Life CycleSoftware Testing Life Cycle
Software Testing Life Cycle
 
Document defect tracking for improving product quality and productivity
Document   defect tracking for improving product quality and productivityDocument   defect tracking for improving product quality and productivity
Document defect tracking for improving product quality and productivity
 
Window Desktop Application Testing
Window Desktop Application TestingWindow Desktop Application Testing
Window Desktop Application Testing
 
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
 
Types of Software Testing | Edureka
Types of Software Testing | EdurekaTypes of Software Testing | Edureka
Types of Software Testing | Edureka
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9
 
Defect correction-Software Testing
Defect correction-Software TestingDefect correction-Software Testing
Defect correction-Software Testing
 
Infographic: Importance of Performance Testing
Infographic: Importance of Performance TestingInfographic: Importance of Performance Testing
Infographic: Importance of Performance Testing
 

Ähnlich wie Pinpointing and Exploiting Specific Performance Bottlenecks

Perf Intro Ppt
Perf Intro PptPerf Intro Ppt
Perf Intro PptRahul Sharma
 
Approachesppt 111112121701 Phpapp02
Approachesppt 111112121701 Phpapp02Approachesppt 111112121701 Phpapp02
Approachesppt 111112121701 Phpapp02Archana Survase
 
Approaches to Software Testing
Approaches to Software TestingApproaches to Software Testing
Approaches to Software TestingScott Barber
 
Testing and Tester Evolution
Testing and Tester EvolutionTesting and Tester Evolution
Testing and Tester EvolutionScott Barber
 
TEA Presentation V 0.3
TEA Presentation V 0.3TEA Presentation V 0.3
TEA Presentation V 0.3Ian McDonald
 
perf_intro_ppt.pdf
perf_intro_ppt.pdfperf_intro_ppt.pdf
perf_intro_ppt.pdfkirangandhi23
 
Ptformanagersppt - Scott Barber
Ptformanagersppt - Scott BarberPtformanagersppt - Scott Barber
Ptformanagersppt - Scott BarberArchana Survase
 
Performance Testing for Managers
Performance Testing for ManagersPerformance Testing for Managers
Performance Testing for ManagersScott Barber
 
Oracle Forms Performance Testing PushToTest TestMaker JAT
Oracle Forms Performance Testing PushToTest TestMaker JATOracle Forms Performance Testing PushToTest TestMaker JAT
Oracle Forms Performance Testing PushToTest TestMaker JATClever Moe
 
Web App Testing - A Practical Approach
Web App Testing - A Practical ApproachWeb App Testing - A Practical Approach
Web App Testing - A Practical ApproachWalter Mamed
 
OOW15 - Testing Oracle E-Business Suite Best Practices
OOW15 - Testing Oracle E-Business Suite Best PracticesOOW15 - Testing Oracle E-Business Suite Best Practices
OOW15 - Testing Oracle E-Business Suite Best Practicesvasuballa
 
The DevOps Dance - Shift Left, Shift Right - Get It Right
The DevOps Dance - Shift Left, Shift Right - Get It RightThe DevOps Dance - Shift Left, Shift Right - Get It Right
The DevOps Dance - Shift Left, Shift Right - Get It RightInflectra
 
Testing and Mocking Object - The Art of Mocking.
Testing and Mocking Object - The Art of Mocking.Testing and Mocking Object - The Art of Mocking.
Testing and Mocking Object - The Art of Mocking.Deepak Singhvi
 
Open Source Test Workshop for CIOs, CTOs, Managers
Open Source Test Workshop for CIOs, CTOs, ManagersOpen Source Test Workshop for CIOs, CTOs, Managers
Open Source Test Workshop for CIOs, CTOs, ManagersClever Moe
 
Test Automation Demonstration with Dr Yongyan Wang by XBOSoft
Test Automation Demonstration with Dr Yongyan Wang by XBOSoftTest Automation Demonstration with Dr Yongyan Wang by XBOSoft
Test Automation Demonstration with Dr Yongyan Wang by XBOSoftXBOSoft
 
Cloudtestr Webinar - 5 Ways to Maximize Test Automation Success
Cloudtestr Webinar - 5 Ways to Maximize Test Automation Success Cloudtestr Webinar - 5 Ways to Maximize Test Automation Success
Cloudtestr Webinar - 5 Ways to Maximize Test Automation Success Cloudtestr Inc.
 
TechDays 2013 Juhani Lind: Acceptance Test Driven Development With VS 2012
TechDays 2013 Juhani Lind: Acceptance Test Driven Development With VS 2012TechDays 2013 Juhani Lind: Acceptance Test Driven Development With VS 2012
TechDays 2013 Juhani Lind: Acceptance Test Driven Development With VS 2012Tieturi Oy
 
Selenium Frameworks
Selenium FrameworksSelenium Frameworks
Selenium FrameworksDave Haeffner
 
Build And Test Automation - Shortening the Feedback Loop
Build And Test Automation - Shortening the Feedback LoopBuild And Test Automation - Shortening the Feedback Loop
Build And Test Automation - Shortening the Feedback LoopRally Software
 

Ähnlich wie Pinpointing and Exploiting Specific Performance Bottlenecks (20)

Tdd dev session
Tdd dev sessionTdd dev session
Tdd dev session
 
Perf Intro Ppt
Perf Intro PptPerf Intro Ppt
Perf Intro Ppt
 
Approachesppt 111112121701 Phpapp02
Approachesppt 111112121701 Phpapp02Approachesppt 111112121701 Phpapp02
Approachesppt 111112121701 Phpapp02
 
Approaches to Software Testing
Approaches to Software TestingApproaches to Software Testing
Approaches to Software Testing
 
Testing and Tester Evolution
Testing and Tester EvolutionTesting and Tester Evolution
Testing and Tester Evolution
 
TEA Presentation V 0.3
TEA Presentation V 0.3TEA Presentation V 0.3
TEA Presentation V 0.3
 
perf_intro_ppt.pdf
perf_intro_ppt.pdfperf_intro_ppt.pdf
perf_intro_ppt.pdf
 
Ptformanagersppt - Scott Barber
Ptformanagersppt - Scott BarberPtformanagersppt - Scott Barber
Ptformanagersppt - Scott Barber
 
Performance Testing for Managers
Performance Testing for ManagersPerformance Testing for Managers
Performance Testing for Managers
 
Oracle Forms Performance Testing PushToTest TestMaker JAT
Oracle Forms Performance Testing PushToTest TestMaker JATOracle Forms Performance Testing PushToTest TestMaker JAT
Oracle Forms Performance Testing PushToTest TestMaker JAT
 
Web App Testing - A Practical Approach
Web App Testing - A Practical ApproachWeb App Testing - A Practical Approach
Web App Testing - A Practical Approach
 
OOW15 - Testing Oracle E-Business Suite Best Practices
OOW15 - Testing Oracle E-Business Suite Best PracticesOOW15 - Testing Oracle E-Business Suite Best Practices
OOW15 - Testing Oracle E-Business Suite Best Practices
 
The DevOps Dance - Shift Left, Shift Right - Get It Right
The DevOps Dance - Shift Left, Shift Right - Get It RightThe DevOps Dance - Shift Left, Shift Right - Get It Right
The DevOps Dance - Shift Left, Shift Right - Get It Right
 
Testing and Mocking Object - The Art of Mocking.
Testing and Mocking Object - The Art of Mocking.Testing and Mocking Object - The Art of Mocking.
Testing and Mocking Object - The Art of Mocking.
 
Open Source Test Workshop for CIOs, CTOs, Managers
Open Source Test Workshop for CIOs, CTOs, ManagersOpen Source Test Workshop for CIOs, CTOs, Managers
Open Source Test Workshop for CIOs, CTOs, Managers
 
Test Automation Demonstration with Dr Yongyan Wang by XBOSoft
Test Automation Demonstration with Dr Yongyan Wang by XBOSoftTest Automation Demonstration with Dr Yongyan Wang by XBOSoft
Test Automation Demonstration with Dr Yongyan Wang by XBOSoft
 
Cloudtestr Webinar - 5 Ways to Maximize Test Automation Success
Cloudtestr Webinar - 5 Ways to Maximize Test Automation Success Cloudtestr Webinar - 5 Ways to Maximize Test Automation Success
Cloudtestr Webinar - 5 Ways to Maximize Test Automation Success
 
TechDays 2013 Juhani Lind: Acceptance Test Driven Development With VS 2012
TechDays 2013 Juhani Lind: Acceptance Test Driven Development With VS 2012TechDays 2013 Juhani Lind: Acceptance Test Driven Development With VS 2012
TechDays 2013 Juhani Lind: Acceptance Test Driven Development With VS 2012
 
Selenium Frameworks
Selenium FrameworksSelenium Frameworks
Selenium Frameworks
 
Build And Test Automation - Shortening the Feedback Loop
Build And Test Automation - Shortening the Feedback LoopBuild And Test Automation - Shortening the Feedback Loop
Build And Test Automation - Shortening the Feedback Loop
 

Mehr von Scott Barber

Iqnite keynote
Iqnite keynoteIqnite keynote
Iqnite keynoteScott Barber
 
Testing Missions in Context From Checking to Assessment
Testing Missions in Context From Checking to AssessmentTesting Missions in Context From Checking to Assessment
Testing Missions in Context From Checking to AssessmentScott Barber
 
Performance Testing in Context; From Simple to Rocket Science
Performance Testing in Context; From Simple to Rocket SciencePerformance Testing in Context; From Simple to Rocket Science
Performance Testing in Context; From Simple to Rocket ScienceScott Barber
 
SOA Testing Challenges
SOA Testing ChallengesSOA Testing Challenges
SOA Testing ChallengesScott Barber
 
Test Automation for Embedded Devices
Test Automation for Embedded DevicesTest Automation for Embedded Devices
Test Automation for Embedded DevicesScott Barber
 
Testing Tasks and Blooms Taxonomy
Testing Tasks and Blooms TaxonomyTesting Tasks and Blooms Taxonomy
Testing Tasks and Blooms TaxonomyScott Barber
 
Introducing the Captain of your Special Teams... The Performance Test Lead
Introducing the Captain of your Special Teams... The Performance Test LeadIntroducing the Captain of your Special Teams... The Performance Test Lead
Introducing the Captain of your Special Teams... The Performance Test LeadScott Barber
 
Control model testing
Control model testingControl model testing
Control model testingScott Barber
 
Performance Testing on Agile Development Teams
Performance Testing on Agile Development TeamsPerformance Testing on Agile Development Teams
Performance Testing on Agile Development TeamsScott Barber
 

Mehr von Scott Barber (9)

Iqnite keynote
Iqnite keynoteIqnite keynote
Iqnite keynote
 
Testing Missions in Context From Checking to Assessment
Testing Missions in Context From Checking to AssessmentTesting Missions in Context From Checking to Assessment
Testing Missions in Context From Checking to Assessment
 
Performance Testing in Context; From Simple to Rocket Science
Performance Testing in Context; From Simple to Rocket SciencePerformance Testing in Context; From Simple to Rocket Science
Performance Testing in Context; From Simple to Rocket Science
 
SOA Testing Challenges
SOA Testing ChallengesSOA Testing Challenges
SOA Testing Challenges
 
Test Automation for Embedded Devices
Test Automation for Embedded DevicesTest Automation for Embedded Devices
Test Automation for Embedded Devices
 
Testing Tasks and Blooms Taxonomy
Testing Tasks and Blooms TaxonomyTesting Tasks and Blooms Taxonomy
Testing Tasks and Blooms Taxonomy
 
Introducing the Captain of your Special Teams... The Performance Test Lead
Introducing the Captain of your Special Teams... The Performance Test LeadIntroducing the Captain of your Special Teams... The Performance Test Lead
Introducing the Captain of your Special Teams... The Performance Test Lead
 
Control model testing
Control model testingControl model testing
Control model testing
 
Performance Testing on Agile Development Teams
Performance Testing on Agile Development TeamsPerformance Testing on Agile Development Teams
Performance Testing on Agile Development Teams
 

KĂŒrzlich hochgeladen

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
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
 
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 DevelopmentsTrustArc
 
🐬 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
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
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
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
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.pdfsudhanshuwaghmare1
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
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...Martijn de Jong
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
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
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
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 SolutionsEnterprise Knowledge
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
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?Antenna Manufacturer Coco
 

KĂŒrzlich hochgeladen (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
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
 
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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
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...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
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...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
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
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
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?
 

Pinpointing and Exploiting Specific Performance Bottlenecks

  • 1. Pinpointing and Exploiting Specific Performance Bottlenecks Revised for: Software Test & Performance Conference November 2005 New York, NY First Presented for: IBM Rational Users Conference, 2004 Scott Barber Chief Technology Officer PerfTestPlus, Inc. www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 1 © 2005 PerfTestPlus All rights reserved.
  • 2. Agenda Introduction Analyzing Results to Identify Bottlenecks What the Development Team Needs to Know Identify Tier of Detected Issue Identify Component of Detect Issue Develop Test To Exploit Issue Available Tools Examples (Time Permitting) Want More Information? Summary/Questions www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 2 © 2005 PerfTestPlus All rights reserved.
  • 3. Introduction This presentation is adapted from User Experience, not Metrics: Parts 6, 8, 9 and10 and Beyond Performance Testing: Parts 6, 7, 8, 9, 10 located at http://www-106.ibm.com/developerworks/rational/library/ (RDW) and http://www.perftestplus.com/. www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 3 © 2005 PerfTestPlus All rights reserved.
  • 4. Introduction One part of the system is always slowest (the bottleneck). Until it is remedied, no other tuning will actually improve the overall performance of the application along that path. Before that bottleneck can be tuned, it must first be conclusively identified. Once a bottleneck is identified, resolution can be reached more quickly if your existing tests are modified to eliminate distraction from ancillary issues. Pinpointing exactly where the bottleneck is an art all its own. After determining where the bottleneck is architecturally, a new test will likely be needed to exploit it in order to help the development team with tuning. These bottleneck exploiting tests needn’t bear any resemblance to real user activity but rather focus on the bottleneck alone. In fact, these tests often don’t even interact with the system in ways users could and may include direct interaction with back-end tiers. www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 4 © 2005 PerfTestPlus All rights reserved.
  • 5. Intro – Scott’s Rules of Bottlenecks A bottleneck is a slowdown, not a stoppage. A stoppage is a failure. Bottlenecks don’t only exist under load. The symptoms of the bottleneck are (virtually) never observed at the actual location of the bottleneck. The critical bottleneck is the one bottleneck along a particular user path the removal of which will improve both performance and the ability to find other bottlenecks. If you have multiple paths through a system and think there’s a bottleneck, you should isolate each path and evaluate it separately. www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 5 © 2005 PerfTestPlus All rights reserved.
  • 6. Intro – Scott’s Rules of Bottlenecks The bottleneck is more likely to be found in the hardware than in the network, but the network is easier to check. Unless other activities and/or users are affected by the observed slowness or its cause, it’s not a bottleneck but a slow spot. When reporting bottleneck suspects, don’t assume you know the cause, just report the symptoms. www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 6 © 2005 PerfTestPlus All rights reserved.
  • 7. Analyzing Results to ID Bottlenecks Examine Response vs. Time Charts/Tables Help identify bottleneck suspects Parts 6, 7, 8, and 9 of the “User Experience, Not Metrics” series www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 7 © 2005 PerfTestPlus All rights reserved.
  • 8. Analyzing Results to ID Bottlenecks Study Scatter Charts Any pattern that shows more than one dot outside of your predefined acceptable performance levels is a potential bottleneck Part 6 of the “Beyond Performance Testing” series www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 8 © 2005 PerfTestPlus All rights reserved.
  • 9. Analyzing Results to ID Bottlenecks Rely on Personal Observation Listen to Third Party Comments Confirm Suspects Reproduce Results Exactly Manually With Similar Tests With Minimalist Tests With Not-So-Similar Tests Report Suspects Verbally Visually Via Demonstration www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 9 © 2005 PerfTestPlus All rights reserved.
  • 10. What the Dev Team Needs to Know Which related activities produce the same symptoms? Which other activities are affected by the bottleneck? What were the load characteristics of the test yielding the symptoms? What data did you use to create the symptoms? What’s the configuration of the environment you’re testing? Other metrics the developers wanted you to collect. www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 10 © 2005 PerfTestPlus All rights reserved.
  • 11. Identify Tier of Detected Issue Logical Architecture Physical Architecture www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 11 © 2005 PerfTestPlus All rights reserved.
  • 12. Identify Tier of Detected Issue Physical Architecture with Logical Overlay www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 12 © 2005 PerfTestPlus All rights reserved.
  • 13. Identify Tier of Detected Issue Design Tests to Determine Tier Ask “What if
? Questions. Ask Developers to Speculate Evaluate Commands with Slow Responses Think in Terms of Distinguishing Failures, Slow Spots and Bottlenecks Visualize and Prioritize Modify Existing Tests Create New Tests Use Same Tool Use Different Tool Use Test Harnesses www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 13 © 2005 PerfTestPlus All rights reserved.
  • 14. Identify Tier of Detected Issue Speak Intelligently with the Development Team Capture Metrics by Tier Resource Utilization Response Times Others Identified by Developers Interpret Metrics Look for the Obvious Consult Development Team Change Tests to Prove (or Disprove) Theories www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 14 © 2005 PerfTestPlus All rights reserved.
  • 15. Identify Component of Detected Issue Once Tier is Identified
 Further Narrowing may be Required Same Principles as Identifying Tier Speak Intelligently with the Development Team Capture Metrics by Component Resource Utilization Response Times Others Identified by Developers Interpret Metrics Look for the Obvious Consult Development Team Change Tests to Prove (or Disprove) Theories www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 15 © 2005 PerfTestPlus All rights reserved.
  • 16. Develop Test To Exploit Issue Lessons from Hydrodynamics Pools/Queues Flows/Threads/Processes Pipe Size/Throughput www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 16 © 2005 PerfTestPlus All rights reserved.
  • 17. Develop Test To Exploit Issue Exploitation Methods Bounds Conditions Breakpoints Resource Constraints Hand off to Development Team Following Development Team’s Lead (Case Studies, BPT 10) Different Testing Styles Black-Box Grey-Box White-Box Knowing When to put the Load Generation Tool Away www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 17 © 2005 PerfTestPlus All rights reserved.
  • 18. Available Tools Common LoadRunner, Silk Performer, Performance Tester, OpenSTA, Visual Studio Test System, eLoad Purify, Quantify, Performassure J-Meter, Perfmon, Perfmeter, Top WebTrends, WebLogic, Tivoli Other Performance Test/Monitoring Tools Load Generation Performance Monitoring Performance Analysis OS/System Specific Tools Application Specific Tools www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 18 © 2005 PerfTestPlus All rights reserved.
  • 19. Available Tools Other Analysis Tools Spreadsheets Statistical Calculators Mathematical Graphing Graphical Presentation Most Important Tools Your Brain Your Development Team www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 19 © 2005 PerfTestPlus All rights reserved.
  • 20. Examples www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 20 © 2005 PerfTestPlus All rights reserved.
  • 21. Want More Information? Information adapted from User Experience, not Metrics: Parts 6, 8, 9 and10 and Beyond Performance Testing: Parts 6, 7, 8, 9, 10 located at http://www-106.ibm.com/developerworks/rational/library/ (RDW) and http://www.PerfTestPlus.com Ask me directly on the Performance and Load Testing forums on RDW (http://www-106.ibm.com/developerworks/forums/dw_rforums.jsp) or http://QAForums.com (Huge QA Forum) Good sources for additional information about Performance Testing: http://www.PerfTestPlus.com (Methodology, Templates, Articles, Presentations) http://www.loadtester.com (Good articles and links) http://www.keynote.com/resources/resource_library.html (Good articles and statistics) Graphical Presentation of Information – Edward Tufte, PhD. http://www.edwardtufte.com (Books and seminars) www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 21 © 2005 PerfTestPlus All rights reserved.
  • 22. Summary Report Symptoms, not Solutions/Reasons Verify Observations Analyze Results Collaboratively Don’t Over-depend on your Initial Tests Determine Related and Unrelated Activities Analyze, Analyze, Analyze (Collaboratively) Know When to Hand-off to the Development Team Yours is a Support Role Document Conclusions Document Recommendations www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 22 © 2005 PerfTestPlus All rights reserved.
  • 23. Questions www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 23 © 2005 PerfTestPlus All rights reserved.
  • 24. Contact Info Scott Barber Chief Technology Officer PerfTestPlus, Inc E-mail: Web Site: sbarber@perftestplus.com www.PerfTestPlus.com www.PerfTestPlus.com Pinpointing and Exploiting Specific Bottlenecks Page 24 © 2005 PerfTestPlus All rights reserved.