SlideShare a Scribd company logo
1 of 20
Download to read offline
ICSE ‘09: New Ideas and Emerging Results
Debugging Field Failures by
Minimizing Captured Executions
James Clause and Alessandro Orso
Georgia Institute of Technology
1
ICSE ‘09: New Ideas and Emerging Results
What are field failures?
Failures that occur after
application deployment
Difficult to reproduce
in-house ➞ difficult to
debug
2
ICSE ‘09: New Ideas and Emerging Results
Current approaches
Collect limited
information
Ask the user
how to reproduce
3
ICSE ‘09: New Ideas and Emerging Results
Replay / Debug
Develop Record
✘
Captured
failure
Inthefield
InhouseOur approach
4
ICSE ‘09: New Ideas and Emerging Results
Our approach
Inthefield
Inhouse
Replay / Debug
Develop Record
✘
Minimize
✘
Captured
failure
✘
Minimized
failure
5
ICSE ‘09: New Ideas and Emerging Results
Recording
Capture high-level
events
efficient
amenable to
minimization
6
ICSE ‘09: New Ideas and Emerging Results
Replaying
Interfere as little as
possible
redirect high-level
events
maintain relative time
of events
7
ICSE ‘09: New Ideas and Emerging Results
Minimization
Focus debugging effort
Iteratively remove what
is not necessary for
reproducing the failure
✘
8
ICSE ‘09: New Ideas and Emerging Results
2-phase minimization
Time minimization
✂
Data minimization
9
ICSE ‘09: New Ideas and Emerging Results
Time minimization
Remove idle times
Reduce event latency
10
ICSE ‘09: New Ideas and Emerging Results
Data minimization
Remove data
hierarchically
1. complete files
2. pieces of files
3. individual characters✂
11
ICSE ‘09: New Ideas and Emerging Results
Prototype implementation
Record / Replay
x86/libc binaries
Minimization
customizable scripts
Limitations
non-determinism
GUI inputs
ADDAAssisting the Debugging of
Deployed Applications
12
ICSE ‘09: New Ideas and Emerging Results
Evaluation
RQ1: How effective is
ADDA at minimizing
failing executions?
RQ2: How much
overhead does ADDA
impose?
ADDA
Assisting the Debugging of
Deployed Applications
13
ICSE ‘09: New Ideas and Emerging Results
Subject and faults
Two real field failures
from Pine’s history
address book fault
header-color fault
Pine email and news client
14
ICSE ‘09: New Ideas and Emerging Results
RQ1: Minimization results
✘
Around 10% of the
recording remains
after minimization
We were able to
debug the failures
using the minimized
recording
15
ICSE ‘09: New Ideas and Emerging Results
RQ2: Overhead results
Online: negligible
overhead while
recording
Offline: less than 75
minutes to minimize
16
ICSE ‘09: New Ideas and Emerging Results
Future work
Support
GUI events
Non-determinism
Additional studies with
more subjects
ADDAAssisting the Debugging of
Deployed Applications
17
ICSE ‘09: New Ideas and Emerging Results
Utilize passing executions
Captured failures are
utilized for debugging
Captured successful
executions are
discarded
Can we also use
them?
Record
✘
Minimize
✘
Captured
failure
✔
Captured
success
Trash
18
ICSE ‘09: New Ideas and Emerging Results
Address privacy issues
Captured executions
can contain sensitive
information
How can we sanitize
sensitive information
but make sure the
failure still occurs?
✘
Captured
failure
Credit card numbers
Email addresses
Account names
Passwords
19
ICSE ‘09: New Ideas and Emerging Results
Thank you
clause@cc.gatech.edu
www.cc.gatech.edu/~clause
20

More Related Content

What's hot

Boston MeetUp 10.10
Boston MeetUp 10.10Boston MeetUp 10.10
Boston MeetUp 10.10Solano Labs
 
Automated testing san francisco oct 2013
Automated testing san francisco oct 2013Automated testing san francisco oct 2013
Automated testing san francisco oct 2013Solano Labs
 
Open Source Business Models
Open Source Business ModelsOpen Source Business Models
Open Source Business ModelsExist
 
Performance Aware Development
Performance Aware DevelopmentPerformance Aware Development
Performance Aware DevelopmentSaurabh Badhwar
 
AB Testing at Expedia
AB Testing at ExpediaAB Testing at Expedia
AB Testing at ExpediaPaul Lucas
 
Jeffrey Snover - Empowering DevOps with Azure Stack
Jeffrey Snover - Empowering DevOps with Azure StackJeffrey Snover - Empowering DevOps with Azure Stack
Jeffrey Snover - Empowering DevOps with Azure StackWinOps Conf
 
Enterprise Workflows When You Aren't Enterprise
Enterprise Workflows When You Aren't EnterpriseEnterprise Workflows When You Aren't Enterprise
Enterprise Workflows When You Aren't EnterpriseChris Tankersley
 
Visual Studio tricks every dot net developer should know
Visual Studio tricks every dot net developer should knowVisual Studio tricks every dot net developer should know
Visual Studio tricks every dot net developer should knowDror Helper
 
The Power of Scripting with a Desktop SEM
The Power of Scripting with a Desktop SEM The Power of Scripting with a Desktop SEM
The Power of Scripting with a Desktop SEM InsideScientific
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous DeploymentBrian Henerey
 
Outpost24 webinar - Covid-19: Driving application security resilience in time...
Outpost24 webinar - Covid-19: Driving application security resilience in time...Outpost24 webinar - Covid-19: Driving application security resilience in time...
Outpost24 webinar - Covid-19: Driving application security resilience in time...Outpost24
 

What's hot (11)

Boston MeetUp 10.10
Boston MeetUp 10.10Boston MeetUp 10.10
Boston MeetUp 10.10
 
Automated testing san francisco oct 2013
Automated testing san francisco oct 2013Automated testing san francisco oct 2013
Automated testing san francisco oct 2013
 
Open Source Business Models
Open Source Business ModelsOpen Source Business Models
Open Source Business Models
 
Performance Aware Development
Performance Aware DevelopmentPerformance Aware Development
Performance Aware Development
 
AB Testing at Expedia
AB Testing at ExpediaAB Testing at Expedia
AB Testing at Expedia
 
Jeffrey Snover - Empowering DevOps with Azure Stack
Jeffrey Snover - Empowering DevOps with Azure StackJeffrey Snover - Empowering DevOps with Azure Stack
Jeffrey Snover - Empowering DevOps with Azure Stack
 
Enterprise Workflows When You Aren't Enterprise
Enterprise Workflows When You Aren't EnterpriseEnterprise Workflows When You Aren't Enterprise
Enterprise Workflows When You Aren't Enterprise
 
Visual Studio tricks every dot net developer should know
Visual Studio tricks every dot net developer should knowVisual Studio tricks every dot net developer should know
Visual Studio tricks every dot net developer should know
 
The Power of Scripting with a Desktop SEM
The Power of Scripting with a Desktop SEM The Power of Scripting with a Desktop SEM
The Power of Scripting with a Desktop SEM
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous Deployment
 
Outpost24 webinar - Covid-19: Driving application security resilience in time...
Outpost24 webinar - Covid-19: Driving application security resilience in time...Outpost24 webinar - Covid-19: Driving application security resilience in time...
Outpost24 webinar - Covid-19: Driving application security resilience in time...
 

Similar to Debugging Field Failures by Minimizing Captured Executions (ICSE 2009: NIER example)

ELC-E 2010: The Right Approach to Minimal Boot Times
ELC-E 2010: The Right Approach to Minimal Boot TimesELC-E 2010: The Right Approach to Minimal Boot Times
ELC-E 2010: The Right Approach to Minimal Boot Timesandrewmurraympc
 
Continuous integration - CI
Continuous integration - CIContinuous integration - CI
Continuous integration - CINhan Nguyen
 
ict9module4lesson1-1712010014071111.pptx
ict9module4lesson1-1712010014071111.pptxict9module4lesson1-1712010014071111.pptx
ict9module4lesson1-1712010014071111.pptxizarahmendoza
 
Scaling MongoDB for real time analytics
Scaling MongoDB for real time analyticsScaling MongoDB for real time analytics
Scaling MongoDB for real time analyticsDavid Tollmyr
 
From Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOpsFrom Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOpsLuca Minudel
 
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with SplunkReactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with SplunkSplunk
 
Test-Driven Design - ¿Porqué?
Test-Driven Design - ¿Porqué?Test-Driven Design - ¿Porqué?
Test-Driven Design - ¿Porqué?David Alfaro
 
Ict 9 module 4, lesson 1.3 diagnosing computer systems
Ict 9 module 4, lesson 1.3 diagnosing computer systemsIct 9 module 4, lesson 1.3 diagnosing computer systems
Ict 9 module 4, lesson 1.3 diagnosing computer systemsYonel Cadapan
 
Sustainable Architecture Design
Sustainable Architecture DesignSustainable Architecture Design
Sustainable Architecture DesignKevin Francis
 
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...Daniel Oh
 
Learned lessons in real world projects by Jordi Anguela at Mallorca Software ...
Learned lessons in real world projects by Jordi Anguela at Mallorca Software ...Learned lessons in real world projects by Jordi Anguela at Mallorca Software ...
Learned lessons in real world projects by Jordi Anguela at Mallorca Software ...Codium
 
Impact of Coding Style Checker on Code Review -A case study on the OpenStack ...
Impact of Coding Style Checker on Code Review -A case study on the OpenStack ...Impact of Coding Style Checker on Code Review -A case study on the OpenStack ...
Impact of Coding Style Checker on Code Review -A case study on the OpenStack ...Yuki Ueda
 
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with SplunkReactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with SplunkSplunk
 
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with SplunkReactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with SplunkSplunk
 
Extreme Programming Talk Wise Consulting Www.Talkwiseconsulting
Extreme  Programming    Talk Wise  Consulting   Www.TalkwiseconsultingExtreme  Programming    Talk Wise  Consulting   Www.Talkwiseconsulting
Extreme Programming Talk Wise Consulting Www.Talkwiseconsultingtalkwiseone
 
Stream SQL eventflow visual programming for real programmers presentation
Stream SQL eventflow visual programming for real programmers presentationStream SQL eventflow visual programming for real programmers presentation
Stream SQL eventflow visual programming for real programmers presentationstreambase
 
I/O Challenges in Brain Tissue Simulation
I/O Challenges in Brain Tissue SimulationI/O Challenges in Brain Tissue Simulation
I/O Challenges in Brain Tissue Simulationinside-BigData.com
 

Similar to Debugging Field Failures by Minimizing Captured Executions (ICSE 2009: NIER example) (20)

ELC-E 2010: The Right Approach to Minimal Boot Times
ELC-E 2010: The Right Approach to Minimal Boot TimesELC-E 2010: The Right Approach to Minimal Boot Times
ELC-E 2010: The Right Approach to Minimal Boot Times
 
Continuous integration - CI
Continuous integration - CIContinuous integration - CI
Continuous integration - CI
 
diagnosing computer systems.pdf
diagnosing computer systems.pdfdiagnosing computer systems.pdf
diagnosing computer systems.pdf
 
ict9module4lesson1-1712010014071111.pptx
ict9module4lesson1-1712010014071111.pptxict9module4lesson1-1712010014071111.pptx
ict9module4lesson1-1712010014071111.pptx
 
Scaling MongoDB for real time analytics
Scaling MongoDB for real time analyticsScaling MongoDB for real time analytics
Scaling MongoDB for real time analytics
 
Spi Cost Roi
Spi Cost RoiSpi Cost Roi
Spi Cost Roi
 
From Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOpsFrom Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOps
 
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with SplunkReactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
 
Test-Driven Design - ¿Porqué?
Test-Driven Design - ¿Porqué?Test-Driven Design - ¿Porqué?
Test-Driven Design - ¿Porqué?
 
Agile Testing
Agile TestingAgile Testing
Agile Testing
 
Ict 9 module 4, lesson 1.3 diagnosing computer systems
Ict 9 module 4, lesson 1.3 diagnosing computer systemsIct 9 module 4, lesson 1.3 diagnosing computer systems
Ict 9 module 4, lesson 1.3 diagnosing computer systems
 
Sustainable Architecture Design
Sustainable Architecture DesignSustainable Architecture Design
Sustainable Architecture Design
 
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
 
Learned lessons in real world projects by Jordi Anguela at Mallorca Software ...
Learned lessons in real world projects by Jordi Anguela at Mallorca Software ...Learned lessons in real world projects by Jordi Anguela at Mallorca Software ...
Learned lessons in real world projects by Jordi Anguela at Mallorca Software ...
 
Impact of Coding Style Checker on Code Review -A case study on the OpenStack ...
Impact of Coding Style Checker on Code Review -A case study on the OpenStack ...Impact of Coding Style Checker on Code Review -A case study on the OpenStack ...
Impact of Coding Style Checker on Code Review -A case study on the OpenStack ...
 
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with SplunkReactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
 
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with SplunkReactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
Reactive to Proactive: Intelligent Troubleshooting and Monitoring with Splunk
 
Extreme Programming Talk Wise Consulting Www.Talkwiseconsulting
Extreme  Programming    Talk Wise  Consulting   Www.TalkwiseconsultingExtreme  Programming    Talk Wise  Consulting   Www.Talkwiseconsulting
Extreme Programming Talk Wise Consulting Www.Talkwiseconsulting
 
Stream SQL eventflow visual programming for real programmers presentation
Stream SQL eventflow visual programming for real programmers presentationStream SQL eventflow visual programming for real programmers presentation
Stream SQL eventflow visual programming for real programmers presentation
 
I/O Challenges in Brain Tissue Simulation
I/O Challenges in Brain Tissue SimulationI/O Challenges in Brain Tissue Simulation
I/O Challenges in Brain Tissue Simulation
 

More from James Clause

Investigating the Impacts of Web Servers on Web Application Energy Usage (GRE...
Investigating the Impacts of Web Servers on Web Application Energy Usage (GRE...Investigating the Impacts of Web Servers on Web Application Energy Usage (GRE...
Investigating the Impacts of Web Servers on Web Application Energy Usage (GRE...James Clause
 
Energy-directed Test Suite Optimization (GREENS 2013)
Energy-directed Test Suite Optimization (GREENS 2013)Energy-directed Test Suite Optimization (GREENS 2013)
Energy-directed Test Suite Optimization (GREENS 2013)James Clause
 
Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)James Clause
 
Leakpoint: Pinpointing the Causes of Memory Leaks (ICSE 2010)
Leakpoint: Pinpointing the Causes of Memory Leaks (ICSE 2010)Leakpoint: Pinpointing the Causes of Memory Leaks (ICSE 2010)
Leakpoint: Pinpointing the Causes of Memory Leaks (ICSE 2010)James Clause
 
A Technique for Enabling and Supporting Debugging of Field Failures (ICSE 2007)
A Technique for Enabling and Supporting Debugging of Field Failures (ICSE 2007)A Technique for Enabling and Supporting Debugging of Field Failures (ICSE 2007)
A Technique for Enabling and Supporting Debugging of Field Failures (ICSE 2007)James Clause
 
Demand-Driven Structural Testing with Dynamic Instrumentation (ICSE 2005)
Demand-Driven Structural Testing with Dynamic Instrumentation (ICSE 2005)Demand-Driven Structural Testing with Dynamic Instrumentation (ICSE 2005)
Demand-Driven Structural Testing with Dynamic Instrumentation (ICSE 2005)James Clause
 
Initial Explorations on Design Pattern Energy Usage (GREENS 12)
Initial Explorations on Design Pattern Energy Usage (GREENS 12)Initial Explorations on Design Pattern Energy Usage (GREENS 12)
Initial Explorations on Design Pattern Energy Usage (GREENS 12)James Clause
 
Enabling and Supporting the Debugging of Software Failures (PhD Defense)
Enabling and Supporting the Debugging of Software Failures (PhD Defense)Enabling and Supporting the Debugging of Software Failures (PhD Defense)
Enabling and Supporting the Debugging of Software Failures (PhD Defense)James Clause
 
Taint-based Dynamic Analysis (CoC Research Day 2009)
Taint-based Dynamic Analysis (CoC Research Day 2009)Taint-based Dynamic Analysis (CoC Research Day 2009)
Taint-based Dynamic Analysis (CoC Research Day 2009)James Clause
 
Effective Memory Protection Using Dynamic Tainting (ASE 2007)
Effective Memory Protection Using Dynamic Tainting (ASE 2007)Effective Memory Protection Using Dynamic Tainting (ASE 2007)
Effective Memory Protection Using Dynamic Tainting (ASE 2007)James Clause
 
Advanced Dynamic Analysis for Leak Detection (Apple Internship 2008)
Advanced Dynamic Analysis for Leak Detection (Apple Internship 2008)Advanced Dynamic Analysis for Leak Detection (Apple Internship 2008)
Advanced Dynamic Analysis for Leak Detection (Apple Internship 2008)James Clause
 
Penumbra: Automatically Identifying Failure-Relevant Inputs (ISSTA 2009)
Penumbra: Automatically Identifying Failure-Relevant Inputs (ISSTA 2009)Penumbra: Automatically Identifying Failure-Relevant Inputs (ISSTA 2009)
Penumbra: Automatically Identifying Failure-Relevant Inputs (ISSTA 2009)James Clause
 
Dytan: A Generic Dynamic Taint Analysis Framework (ISSTA 2007)
Dytan: A Generic Dynamic Taint Analysis Framework (ISSTA 2007)Dytan: A Generic Dynamic Taint Analysis Framework (ISSTA 2007)
Dytan: A Generic Dynamic Taint Analysis Framework (ISSTA 2007)James Clause
 
Camouflage: Automated Anonymization of Field Data (ICSE 2011)
Camouflage: Automated Anonymization of Field Data (ICSE 2011)Camouflage: Automated Anonymization of Field Data (ICSE 2011)
Camouflage: Automated Anonymization of Field Data (ICSE 2011)James Clause
 

More from James Clause (14)

Investigating the Impacts of Web Servers on Web Application Energy Usage (GRE...
Investigating the Impacts of Web Servers on Web Application Energy Usage (GRE...Investigating the Impacts of Web Servers on Web Application Energy Usage (GRE...
Investigating the Impacts of Web Servers on Web Application Energy Usage (GRE...
 
Energy-directed Test Suite Optimization (GREENS 2013)
Energy-directed Test Suite Optimization (GREENS 2013)Energy-directed Test Suite Optimization (GREENS 2013)
Energy-directed Test Suite Optimization (GREENS 2013)
 
Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)
 
Leakpoint: Pinpointing the Causes of Memory Leaks (ICSE 2010)
Leakpoint: Pinpointing the Causes of Memory Leaks (ICSE 2010)Leakpoint: Pinpointing the Causes of Memory Leaks (ICSE 2010)
Leakpoint: Pinpointing the Causes of Memory Leaks (ICSE 2010)
 
A Technique for Enabling and Supporting Debugging of Field Failures (ICSE 2007)
A Technique for Enabling and Supporting Debugging of Field Failures (ICSE 2007)A Technique for Enabling and Supporting Debugging of Field Failures (ICSE 2007)
A Technique for Enabling and Supporting Debugging of Field Failures (ICSE 2007)
 
Demand-Driven Structural Testing with Dynamic Instrumentation (ICSE 2005)
Demand-Driven Structural Testing with Dynamic Instrumentation (ICSE 2005)Demand-Driven Structural Testing with Dynamic Instrumentation (ICSE 2005)
Demand-Driven Structural Testing with Dynamic Instrumentation (ICSE 2005)
 
Initial Explorations on Design Pattern Energy Usage (GREENS 12)
Initial Explorations on Design Pattern Energy Usage (GREENS 12)Initial Explorations on Design Pattern Energy Usage (GREENS 12)
Initial Explorations on Design Pattern Energy Usage (GREENS 12)
 
Enabling and Supporting the Debugging of Software Failures (PhD Defense)
Enabling and Supporting the Debugging of Software Failures (PhD Defense)Enabling and Supporting the Debugging of Software Failures (PhD Defense)
Enabling and Supporting the Debugging of Software Failures (PhD Defense)
 
Taint-based Dynamic Analysis (CoC Research Day 2009)
Taint-based Dynamic Analysis (CoC Research Day 2009)Taint-based Dynamic Analysis (CoC Research Day 2009)
Taint-based Dynamic Analysis (CoC Research Day 2009)
 
Effective Memory Protection Using Dynamic Tainting (ASE 2007)
Effective Memory Protection Using Dynamic Tainting (ASE 2007)Effective Memory Protection Using Dynamic Tainting (ASE 2007)
Effective Memory Protection Using Dynamic Tainting (ASE 2007)
 
Advanced Dynamic Analysis for Leak Detection (Apple Internship 2008)
Advanced Dynamic Analysis for Leak Detection (Apple Internship 2008)Advanced Dynamic Analysis for Leak Detection (Apple Internship 2008)
Advanced Dynamic Analysis for Leak Detection (Apple Internship 2008)
 
Penumbra: Automatically Identifying Failure-Relevant Inputs (ISSTA 2009)
Penumbra: Automatically Identifying Failure-Relevant Inputs (ISSTA 2009)Penumbra: Automatically Identifying Failure-Relevant Inputs (ISSTA 2009)
Penumbra: Automatically Identifying Failure-Relevant Inputs (ISSTA 2009)
 
Dytan: A Generic Dynamic Taint Analysis Framework (ISSTA 2007)
Dytan: A Generic Dynamic Taint Analysis Framework (ISSTA 2007)Dytan: A Generic Dynamic Taint Analysis Framework (ISSTA 2007)
Dytan: A Generic Dynamic Taint Analysis Framework (ISSTA 2007)
 
Camouflage: Automated Anonymization of Field Data (ICSE 2011)
Camouflage: Automated Anonymization of Field Data (ICSE 2011)Camouflage: Automated Anonymization of Field Data (ICSE 2011)
Camouflage: Automated Anonymization of Field Data (ICSE 2011)
 

Recently uploaded

Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
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
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
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
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 

Recently uploaded (20)

Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
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
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 

Debugging Field Failures by Minimizing Captured Executions (ICSE 2009: NIER example)

  • 1. ICSE ‘09: New Ideas and Emerging Results Debugging Field Failures by Minimizing Captured Executions James Clause and Alessandro Orso Georgia Institute of Technology 1
  • 2. ICSE ‘09: New Ideas and Emerging Results What are field failures? Failures that occur after application deployment Difficult to reproduce in-house ➞ difficult to debug 2
  • 3. ICSE ‘09: New Ideas and Emerging Results Current approaches Collect limited information Ask the user how to reproduce 3
  • 4. ICSE ‘09: New Ideas and Emerging Results Replay / Debug Develop Record ✘ Captured failure Inthefield InhouseOur approach 4
  • 5. ICSE ‘09: New Ideas and Emerging Results Our approach Inthefield Inhouse Replay / Debug Develop Record ✘ Minimize ✘ Captured failure ✘ Minimized failure 5
  • 6. ICSE ‘09: New Ideas and Emerging Results Recording Capture high-level events efficient amenable to minimization 6
  • 7. ICSE ‘09: New Ideas and Emerging Results Replaying Interfere as little as possible redirect high-level events maintain relative time of events 7
  • 8. ICSE ‘09: New Ideas and Emerging Results Minimization Focus debugging effort Iteratively remove what is not necessary for reproducing the failure ✘ 8
  • 9. ICSE ‘09: New Ideas and Emerging Results 2-phase minimization Time minimization ✂ Data minimization 9
  • 10. ICSE ‘09: New Ideas and Emerging Results Time minimization Remove idle times Reduce event latency 10
  • 11. ICSE ‘09: New Ideas and Emerging Results Data minimization Remove data hierarchically 1. complete files 2. pieces of files 3. individual characters✂ 11
  • 12. ICSE ‘09: New Ideas and Emerging Results Prototype implementation Record / Replay x86/libc binaries Minimization customizable scripts Limitations non-determinism GUI inputs ADDAAssisting the Debugging of Deployed Applications 12
  • 13. ICSE ‘09: New Ideas and Emerging Results Evaluation RQ1: How effective is ADDA at minimizing failing executions? RQ2: How much overhead does ADDA impose? ADDA Assisting the Debugging of Deployed Applications 13
  • 14. ICSE ‘09: New Ideas and Emerging Results Subject and faults Two real field failures from Pine’s history address book fault header-color fault Pine email and news client 14
  • 15. ICSE ‘09: New Ideas and Emerging Results RQ1: Minimization results ✘ Around 10% of the recording remains after minimization We were able to debug the failures using the minimized recording 15
  • 16. ICSE ‘09: New Ideas and Emerging Results RQ2: Overhead results Online: negligible overhead while recording Offline: less than 75 minutes to minimize 16
  • 17. ICSE ‘09: New Ideas and Emerging Results Future work Support GUI events Non-determinism Additional studies with more subjects ADDAAssisting the Debugging of Deployed Applications 17
  • 18. ICSE ‘09: New Ideas and Emerging Results Utilize passing executions Captured failures are utilized for debugging Captured successful executions are discarded Can we also use them? Record ✘ Minimize ✘ Captured failure ✔ Captured success Trash 18
  • 19. ICSE ‘09: New Ideas and Emerging Results Address privacy issues Captured executions can contain sensitive information How can we sanitize sensitive information but make sure the failure still occurs? ✘ Captured failure Credit card numbers Email addresses Account names Passwords 19
  • 20. ICSE ‘09: New Ideas and Emerging Results Thank you clause@cc.gatech.edu www.cc.gatech.edu/~clause 20