SlideShare a Scribd company logo
1
Studying the Effectiveness of Application
Performance Management (APM) Tools
for Detecting Performance Regressions
for Web Applications
Tse-Hsun Chen Ahmed E. Hassan Weiyi ShangTarek M. Ahmed Cor-Paul Bezemer
An Experience Report
2
3
$1.6 billion loss for a one-second slowdown
What is a performance regression?
4
Version 1 Version 2
Does version 2 have worse
performance than the version 1?
Performance regression:
changed source code + unchanged workload
change in performance?
5
Version 1
Version 2
requests
requests
requests
Performance
metrics
Performance
metrics
Unchanged
workload Testing environment
Testing environment
Changed
source
code
Change in
performance?
MSR techniques are widely used to detect
performance regressions
6
MSR techniques are widely used to detect
performance regressions
7
Building statistical models Mining data associationsComparing distributions
An example of using MSR techniques to detect
performance regressions
8
Version 1 Version 2
Build
model
Verify
model
Model Prediction
error
< threshold
> threshold
Shang et al. ICPE 2015
The extensive performance regression
detection research is hardly adopted in practice
9
Too complex to implement by
practitioners
Not easily accessible
Application performance management
(APM) tools are well adopted in practice
10
APM tools work with:
unchanged source code + changing workload
11
requests
requests
requests
Real users
Field environment
Slow transactions
Changing
workload
Unchanged
source code
12
An example report from an APM tool
Most time consuming
transactions
Time breakdown for the
transaction
13
Performance
regressions
detection
research
+
unchanged workload
changed source code
Not well adopted
unchanged source code
+
changing workload
Widely adopted
Research Questions:
Can APM tools detect performance
regressions?
Can APM tools be used as a vehicle
to deploy performance regression
detection research in practice?
14
Case study: subject systems and injected
performance regressions
CPU overhead
Memory overhead
15
Inefficient use
of database
• Unreleased resources
• Inefficient use of data streams
• Unnecessary loop
• Loop with a missing break
condition
• One-by-one processing
• Excessive data
We leverage APM tools to detect injected
performance regressions
Slow transactions in new version
Slow transactions in old version
16
Version 1
Version 2
requests
requests
requests
Unchanged
workload Testing environment
Testing environment
Changed
source
code
0
1
2
3
4
5
6
APM tools can detect performance
regressions
17
#ofdetected
issuesdetected
Commercial Open source
Total 6 issues
injected
APM tools have rooms of improvement
18
APM tools are a great vehicle to push
performance regression detection
research into practice.
Large amounts of reports
for manual exploration
Basic analysis
Lack of actionable
suggestion
19
$1.6 billion loss for a one-second slowdown
20
21
unchanged source code
+
changing workload
Widely adopted
Performance
regressions
detection
research
changed source code
+
unchanged workload
Not well adopted
22
Case study: subject systems and injected
performance regressions
CPU overhead
Memory overhead
23
Inefficient use
of database
• Unreleased resources
• Inefficient use of data streams
• Unnecessary loop
• Loop with a missing break
condition
• One-by-one processing
• Excessive data
24
0
1
2
3
4
5
6
APM tools can detect performance
regressions
25
#ofdetected
issuesdetected
Commercial Open source
Total 6 issues
injected
26
Weiyi Shang shang@.encs.concordia.ca

More Related Content

What's hot

An Industrial Case Study on the Automated Detection of Performance Regression...
An Industrial Case Study on the Automated Detection of Performance Regression...An Industrial Case Study on the Automated Detection of Performance Regression...
An Industrial Case Study on the Automated Detection of Performance Regression...
SAIL_QU
 
Mining Performance Regression Testing Repositories for Automated Performance ...
Mining Performance Regression Testing Repositories for Automated Performance ...Mining Performance Regression Testing Repositories for Automated Performance ...
Mining Performance Regression Testing Repositories for Automated Performance ...
SAIL_QU
 
Finding bad apples early: Minimizing performance impact
Finding bad apples early: Minimizing performance impactFinding bad apples early: Minimizing performance impact
Finding bad apples early: Minimizing performance impact
Arun Kejariwal
 
Towards a Macrobenchmark Framework for Performance Analysis of Java Applications
Towards a Macrobenchmark Framework for Performance Analysis of Java ApplicationsTowards a Macrobenchmark Framework for Performance Analysis of Java Applications
Towards a Macrobenchmark Framework for Performance Analysis of Java Applications
Gábor Szárnyas
 
Empircal Studies of Performance Bugs & Performance Analysis Approaches for La...
Empircal Studies of Performance Bugs & Performance Analysis Approaches for La...Empircal Studies of Performance Bugs & Performance Analysis Approaches for La...
Empircal Studies of Performance Bugs & Performance Analysis Approaches for La...
SAIL_QU
 
Evaluating Real-Time Anomaly Detection: The Numenta Anomaly Benchmark
Evaluating Real-Time Anomaly Detection: The Numenta Anomaly BenchmarkEvaluating Real-Time Anomaly Detection: The Numenta Anomaly Benchmark
Evaluating Real-Time Anomaly Detection: The Numenta Anomaly Benchmark
Numenta
 
A Fast Decision Rule Engine for Anomaly Detection
A Fast Decision Rule Engine for Anomaly DetectionA Fast Decision Rule Engine for Anomaly Detection
A Fast Decision Rule Engine for Anomaly Detection
Databricks
 
Understanding the Rationale for Updating a Function's Comment
Understanding the Rationale for Updating a Function's CommentUnderstanding the Rationale for Updating a Function's Comment
Understanding the Rationale for Updating a Function's Comment
SAIL_QU
 
Supporting Software Evolution Using Adaptive Change Propagation
Supporting Software Evolution Using Adaptive Change PropagationSupporting Software Evolution Using Adaptive Change Propagation
Supporting Software Evolution Using Adaptive Change Propagation
SAIL_QU
 
AnalyticOps: Lessons Learned Moving Machine-Learning Algorithms to Production...
AnalyticOps: Lessons Learned Moving Machine-Learning Algorithms to Production...AnalyticOps: Lessons Learned Moving Machine-Learning Algorithms to Production...
AnalyticOps: Lessons Learned Moving Machine-Learning Algorithms to Production...
Robert Grossman
 
Log Engineering: Towards Systematic Log Mining to Support the Development of ...
Log Engineering: Towards Systematic Log Mining to Support the Development of ...Log Engineering: Towards Systematic Log Mining to Support the Development of ...
Log Engineering: Towards Systematic Log Mining to Support the Development of ...
SAIL_QU
 
Automated Discovery of Performance Regressions in Enterprise Applications
Automated Discovery of Performance Regressions in Enterprise ApplicationsAutomated Discovery of Performance Regressions in Enterprise Applications
Automated Discovery of Performance Regressions in Enterprise Applications
SAIL_QU
 
Icse2018 autonomic
Icse2018 autonomicIcse2018 autonomic
Icse2018 autonomic
Concordia University
 
Modeling the Performance of Ultra-Large-Scale Systems Using Layered Simulations
Modeling the Performance of Ultra-Large-Scale Systems Using Layered SimulationsModeling the Performance of Ultra-Large-Scale Systems Using Layered Simulations
Modeling the Performance of Ultra-Large-Scale Systems Using Layered Simulations
SAIL_QU
 
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?
Pavneet Singh Kochhar
 
QUICKAR-ASE2016-Singapore
QUICKAR-ASE2016-SingaporeQUICKAR-ASE2016-Singapore
QUICKAR-ASE2016-Singapore
Masud Rahman
 
IGUANA: A Generic Framework for Benchmarking the Read-Write Performance of Tr...
IGUANA: A Generic Framework for Benchmarking the Read-Write Performance of Tr...IGUANA: A Generic Framework for Benchmarking the Read-Write Performance of Tr...
IGUANA: A Generic Framework for Benchmarking the Read-Write Performance of Tr...
Lixi Conrads
 
Streaming Analytics: It's Not the Same Game
Streaming Analytics: It's Not the Same GameStreaming Analytics: It's Not the Same Game
Streaming Analytics: It's Not the Same Game
Numenta
 
Detecting Anomalies in Streaming Data
Detecting Anomalies in Streaming DataDetecting Anomalies in Streaming Data
Detecting Anomalies in Streaming Data
Subutai Ahmad
 

What's hot (19)

An Industrial Case Study on the Automated Detection of Performance Regression...
An Industrial Case Study on the Automated Detection of Performance Regression...An Industrial Case Study on the Automated Detection of Performance Regression...
An Industrial Case Study on the Automated Detection of Performance Regression...
 
Mining Performance Regression Testing Repositories for Automated Performance ...
Mining Performance Regression Testing Repositories for Automated Performance ...Mining Performance Regression Testing Repositories for Automated Performance ...
Mining Performance Regression Testing Repositories for Automated Performance ...
 
Finding bad apples early: Minimizing performance impact
Finding bad apples early: Minimizing performance impactFinding bad apples early: Minimizing performance impact
Finding bad apples early: Minimizing performance impact
 
Towards a Macrobenchmark Framework for Performance Analysis of Java Applications
Towards a Macrobenchmark Framework for Performance Analysis of Java ApplicationsTowards a Macrobenchmark Framework for Performance Analysis of Java Applications
Towards a Macrobenchmark Framework for Performance Analysis of Java Applications
 
Empircal Studies of Performance Bugs & Performance Analysis Approaches for La...
Empircal Studies of Performance Bugs & Performance Analysis Approaches for La...Empircal Studies of Performance Bugs & Performance Analysis Approaches for La...
Empircal Studies of Performance Bugs & Performance Analysis Approaches for La...
 
Evaluating Real-Time Anomaly Detection: The Numenta Anomaly Benchmark
Evaluating Real-Time Anomaly Detection: The Numenta Anomaly BenchmarkEvaluating Real-Time Anomaly Detection: The Numenta Anomaly Benchmark
Evaluating Real-Time Anomaly Detection: The Numenta Anomaly Benchmark
 
A Fast Decision Rule Engine for Anomaly Detection
A Fast Decision Rule Engine for Anomaly DetectionA Fast Decision Rule Engine for Anomaly Detection
A Fast Decision Rule Engine for Anomaly Detection
 
Understanding the Rationale for Updating a Function's Comment
Understanding the Rationale for Updating a Function's CommentUnderstanding the Rationale for Updating a Function's Comment
Understanding the Rationale for Updating a Function's Comment
 
Supporting Software Evolution Using Adaptive Change Propagation
Supporting Software Evolution Using Adaptive Change PropagationSupporting Software Evolution Using Adaptive Change Propagation
Supporting Software Evolution Using Adaptive Change Propagation
 
AnalyticOps: Lessons Learned Moving Machine-Learning Algorithms to Production...
AnalyticOps: Lessons Learned Moving Machine-Learning Algorithms to Production...AnalyticOps: Lessons Learned Moving Machine-Learning Algorithms to Production...
AnalyticOps: Lessons Learned Moving Machine-Learning Algorithms to Production...
 
Log Engineering: Towards Systematic Log Mining to Support the Development of ...
Log Engineering: Towards Systematic Log Mining to Support the Development of ...Log Engineering: Towards Systematic Log Mining to Support the Development of ...
Log Engineering: Towards Systematic Log Mining to Support the Development of ...
 
Automated Discovery of Performance Regressions in Enterprise Applications
Automated Discovery of Performance Regressions in Enterprise ApplicationsAutomated Discovery of Performance Regressions in Enterprise Applications
Automated Discovery of Performance Regressions in Enterprise Applications
 
Icse2018 autonomic
Icse2018 autonomicIcse2018 autonomic
Icse2018 autonomic
 
Modeling the Performance of Ultra-Large-Scale Systems Using Layered Simulations
Modeling the Performance of Ultra-Large-Scale Systems Using Layered SimulationsModeling the Performance of Ultra-Large-Scale Systems Using Layered Simulations
Modeling the Performance of Ultra-Large-Scale Systems Using Layered Simulations
 
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?
 
QUICKAR-ASE2016-Singapore
QUICKAR-ASE2016-SingaporeQUICKAR-ASE2016-Singapore
QUICKAR-ASE2016-Singapore
 
IGUANA: A Generic Framework for Benchmarking the Read-Write Performance of Tr...
IGUANA: A Generic Framework for Benchmarking the Read-Write Performance of Tr...IGUANA: A Generic Framework for Benchmarking the Read-Write Performance of Tr...
IGUANA: A Generic Framework for Benchmarking the Read-Write Performance of Tr...
 
Streaming Analytics: It's Not the Same Game
Streaming Analytics: It's Not the Same GameStreaming Analytics: It's Not the Same Game
Streaming Analytics: It's Not the Same Game
 
Detecting Anomalies in Streaming Data
Detecting Anomalies in Streaming DataDetecting Anomalies in Streaming Data
Detecting Anomalies in Streaming Data
 

Similar to Msr2016 tarek

performancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdfperformancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdf
MAshok10
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
Selin Gungor
 
Performance testing : An Overview
Performance testing : An OverviewPerformance testing : An Overview
Performance testing : An Overview
sharadkjain
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
Anu Shaji
 
What are the Characteristics of High-rated Apps
What are the Characteristics of High-rated AppsWhat are the Characteristics of High-rated Apps
What are the Characteristics of High-rated Apps
SAIL_QU
 
Workload Analysis
Workload AnalysisWorkload Analysis
Workload Analysis
GlobalLogic Ukraine
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile Development
Dynatrace
 
Doing DevOps for Big Data? What You Need to Know About AIOps
Doing DevOps for Big Data? What You Need to Know About AIOpsDoing DevOps for Big Data? What You Need to Know About AIOps
Doing DevOps for Big Data? What You Need to Know About AIOps
DevOps.com
 
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
AppDynamics
 
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More DefectsDevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
TechWell
 
Pharmaceutical company finds prescription for compliance woes
Pharmaceutical company finds prescription for compliance woesPharmaceutical company finds prescription for compliance woes
Pharmaceutical company finds prescription for compliance woes
IntelligentManufacturingInstitute
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
veehikle
 
[Webinar] Getting Started with Performance Testing
[Webinar] Getting Started with Performance Testing[Webinar] Getting Started with Performance Testing
[Webinar] Getting Started with Performance Testing
Maharshi Shah
 
From web interface to the database:Monitor all that matters
From web interface to the database:Monitor all that mattersFrom web interface to the database:Monitor all that matters
From web interface to the database:Monitor all that matters
ManageEngine, Zoho Corporation
 
Sfeldman performance bb_worldemea07
Sfeldman performance bb_worldemea07Sfeldman performance bb_worldemea07
Sfeldman performance bb_worldemea07
Steve Feldman
 
MELJUN CORTES research tcu_student_metro_south_abstract_thesis_bscs_llames_ma...
MELJUN CORTES research tcu_student_metro_south_abstract_thesis_bscs_llames_ma...MELJUN CORTES research tcu_student_metro_south_abstract_thesis_bscs_llames_ma...
MELJUN CORTES research tcu_student_metro_south_abstract_thesis_bscs_llames_ma...
MELJUN CORTES
 
Performance Aware Development
Performance Aware DevelopmentPerformance Aware Development
Performance Aware Development
Saurabh Badhwar
 
requirement analysis characteristics
requirement analysis characteristics requirement analysis characteristics
requirement analysis characteristics
Helmy Faisal
 
Sech1920 1200112979886874-3
Sech1920 1200112979886874-3Sech1920 1200112979886874-3
Sech1920 1200112979886874-3
Mateti Anilraja
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
Mykola Kovsh
 

Similar to Msr2016 tarek (20)

performancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdfperformancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdf
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Performance testing : An Overview
Performance testing : An OverviewPerformance testing : An Overview
Performance testing : An Overview
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
What are the Characteristics of High-rated Apps
What are the Characteristics of High-rated AppsWhat are the Characteristics of High-rated Apps
What are the Characteristics of High-rated Apps
 
Workload Analysis
Workload AnalysisWorkload Analysis
Workload Analysis
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile Development
 
Doing DevOps for Big Data? What You Need to Know About AIOps
Doing DevOps for Big Data? What You Need to Know About AIOpsDoing DevOps for Big Data? What You Need to Know About AIOps
Doing DevOps for Big Data? What You Need to Know About AIOps
 
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
 
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More DefectsDevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
 
Pharmaceutical company finds prescription for compliance woes
Pharmaceutical company finds prescription for compliance woesPharmaceutical company finds prescription for compliance woes
Pharmaceutical company finds prescription for compliance woes
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
 
[Webinar] Getting Started with Performance Testing
[Webinar] Getting Started with Performance Testing[Webinar] Getting Started with Performance Testing
[Webinar] Getting Started with Performance Testing
 
From web interface to the database:Monitor all that matters
From web interface to the database:Monitor all that mattersFrom web interface to the database:Monitor all that matters
From web interface to the database:Monitor all that matters
 
Sfeldman performance bb_worldemea07
Sfeldman performance bb_worldemea07Sfeldman performance bb_worldemea07
Sfeldman performance bb_worldemea07
 
MELJUN CORTES research tcu_student_metro_south_abstract_thesis_bscs_llames_ma...
MELJUN CORTES research tcu_student_metro_south_abstract_thesis_bscs_llames_ma...MELJUN CORTES research tcu_student_metro_south_abstract_thesis_bscs_llames_ma...
MELJUN CORTES research tcu_student_metro_south_abstract_thesis_bscs_llames_ma...
 
Performance Aware Development
Performance Aware DevelopmentPerformance Aware Development
Performance Aware Development
 
requirement analysis characteristics
requirement analysis characteristics requirement analysis characteristics
requirement analysis characteristics
 
Sech1920 1200112979886874-3
Sech1920 1200112979886874-3Sech1920 1200112979886874-3
Sech1920 1200112979886874-3
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
 

Recently uploaded

Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 

Recently uploaded (20)

Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 

Msr2016 tarek

  • 1. 1 Studying the Effectiveness of Application Performance Management (APM) Tools for Detecting Performance Regressions for Web Applications Tse-Hsun Chen Ahmed E. Hassan Weiyi ShangTarek M. Ahmed Cor-Paul Bezemer An Experience Report
  • 2. 2
  • 3. 3 $1.6 billion loss for a one-second slowdown
  • 4. What is a performance regression? 4 Version 1 Version 2 Does version 2 have worse performance than the version 1?
  • 5. Performance regression: changed source code + unchanged workload change in performance? 5 Version 1 Version 2 requests requests requests Performance metrics Performance metrics Unchanged workload Testing environment Testing environment Changed source code Change in performance?
  • 6. MSR techniques are widely used to detect performance regressions 6
  • 7. MSR techniques are widely used to detect performance regressions 7 Building statistical models Mining data associationsComparing distributions
  • 8. An example of using MSR techniques to detect performance regressions 8 Version 1 Version 2 Build model Verify model Model Prediction error < threshold > threshold Shang et al. ICPE 2015
  • 9. The extensive performance regression detection research is hardly adopted in practice 9 Too complex to implement by practitioners Not easily accessible
  • 10. Application performance management (APM) tools are well adopted in practice 10
  • 11. APM tools work with: unchanged source code + changing workload 11 requests requests requests Real users Field environment Slow transactions Changing workload Unchanged source code
  • 12. 12 An example report from an APM tool Most time consuming transactions Time breakdown for the transaction
  • 13. 13 Performance regressions detection research + unchanged workload changed source code Not well adopted unchanged source code + changing workload Widely adopted
  • 14. Research Questions: Can APM tools detect performance regressions? Can APM tools be used as a vehicle to deploy performance regression detection research in practice? 14
  • 15. Case study: subject systems and injected performance regressions CPU overhead Memory overhead 15 Inefficient use of database • Unreleased resources • Inefficient use of data streams • Unnecessary loop • Loop with a missing break condition • One-by-one processing • Excessive data
  • 16. We leverage APM tools to detect injected performance regressions Slow transactions in new version Slow transactions in old version 16 Version 1 Version 2 requests requests requests Unchanged workload Testing environment Testing environment Changed source code
  • 17. 0 1 2 3 4 5 6 APM tools can detect performance regressions 17 #ofdetected issuesdetected Commercial Open source Total 6 issues injected
  • 18. APM tools have rooms of improvement 18 APM tools are a great vehicle to push performance regression detection research into practice. Large amounts of reports for manual exploration Basic analysis Lack of actionable suggestion
  • 19. 19 $1.6 billion loss for a one-second slowdown
  • 20. 20
  • 21. 21 unchanged source code + changing workload Widely adopted Performance regressions detection research changed source code + unchanged workload Not well adopted
  • 22. 22
  • 23. Case study: subject systems and injected performance regressions CPU overhead Memory overhead 23 Inefficient use of database • Unreleased resources • Inefficient use of data streams • Unnecessary loop • Loop with a missing break condition • One-by-one processing • Excessive data
  • 24. 24
  • 25. 0 1 2 3 4 5 6 APM tools can detect performance regressions 25 #ofdetected issuesdetected Commercial Open source Total 6 issues injected

Editor's Notes

  1. Fix pic size one for ahmed Make the talk short
  2. Slide nuber
  3. Slide number
  4. They are test separately
  5. Black outline
  6. Reasons to pick them. There is a survey. Leader for the field.
  7. Cloud scale ecommerce with tpcW
  8. Make sure to related to petclinic Add cloudscale
  9. Slide number
  10. Rework email
  11. Rework email
  12. Cloud scale ecommerce with tpcW
  13. Rework email
  14. Make sure to related to petclinic Add cloudscale
  15. Rework email