SlideShare a Scribd company logo
Reducing Failure Analysis Time:
An Industrial Evaluation
26.05.2017
Mojdeh Golagha, Alexander Pretschner
Technical University of Munich
Department of Informatics
LS XXII – Chair for Software Engineering
Dominik Fisch, Roman Nagy
BMW
Research and Development
/15
Motivation
Problem
• Big number of SiL/HiL
tests
• A few faults cause a lot
of failures
• Significantly high test
analysis time
• How can we reduce the
failure analysis time?
Solution Idea
• Cluster failing tests with
respect to the
hypothesized faults
• Select representative
test(s) for each cluster
• Analyze only the
representatives
2
/15
Approach
Running tests and collecting coverage information
To generate features for clustering
3
Generating failure tree
To cluster failing executions
Cutting the failure tree by Fault Localization *
To decide the best number of clusters (the number of hypothesized faults)
Selecting representative tests
To start the debugging process
1
STEP
2
STEP
3
STEP
4
STEP
* Based on James A. Jones, James F. Bowring, and Mary Jean Harrold. 2007. Debugging in Parallel. ISSTA '07
Utilizing SiL coverage profiles for HiL analysis
5
STEP
/15
Step 1: Running Tests and Collecting Coverage
Information
Blocks
TC
1
TC
2
TC
3
TC
4
TC
5
TC
6
TC
7
TC
8
IsOdd() 0 0 1 1 0 1 1 0
GetMainCppPath() 0 1 1 1 1 1 0 1
GetOutputBinaryPath() 0 1 0 1 1 0 0 0
4
*
Spectralizer
• Prepare test execution
• Execute tests while recording the coverage information using
OpenCPPCoverage *
• Generate coverage profile at desired level of granularity (Function)
/15
Step 2: Generating Hierarchical Tree of Failing Test
cases (FTC)
5
FTC1
FTC2
FTC3
FTC4
FTC5 FTC6
/15
Step 3: Cutting the Failure Tree by Fault Localization
66
FTC1
FTC2
FTC3
FTC4
FTC5 FTC6
/15
Spectrum-based Fault Localization
Function TC1 TC2 TC3 TC4 TC5 TC6 TC7 TC8
Fun1 ● ● ● ● ● ● ● ●
Fun2 ● ● ● ● ● ● ● ●
Fun3 ● ● ● ● ● ● ● ●
Fun4 ● ● ● ● ●
Fun5 ● ● ● ● ● ● ● ●
Fun6 ● ● ● ●
Fun7 ● ● ● ● ● ● ● ●
Result fail fail fail fail fail fail pass pass
7
Function Suspiciousness Rank
Fun4 125 1
Fun1 108 2
Fun2 108 2
Fun3 108 2
Fun5 108 2
Fun7 108 2
Fun6 1.33 3
𝐷∗ =
(𝑁𝐶𝐹)∗
𝑁 𝑈𝐹 + 𝑁𝐶𝑆
NCF: # failing, covered
NUF: # failing, not covered
NCS: # passing, covered
/15
Step 3: Cutting the Failure Tree by Fault Localization
88
FTC1
FTC2
FTC5
FTC3
FTC4
FTC6
Suspicious functions:
[{Fun1}
{Fun18}
{Fun7}
{Fun2}
{Fun3}
…]
Suspicious functions:
[{Fun1}
{Fun18}
{Fun5}
{Fun2}
{Fun4}
…]
FTC3
FTC4
FTC6
FTC1
FTC2
FTC5
/15
Step 4: Selecting Representative Tests
• Clusters are unlikely to be
100 percent pure
• Calculate the center of cluster
• Find the K-nearest neighbors
to the center
• K=1, Analyze 2 failing tests
instead of 6
999
FTC1
FTC2
FTC3
FTC4
Ftc5 FTC6
/15
Training Phase
• Clustering Metric and
Method Selection
• 42 different combination
UPGMA and Euclidean
• Fault localization
similarity metric
• 72 metrics
DStar
• 25 components
• 100 first-order mutated
versions
10
Mutations
Negate condition in “for” or “while” statement
Replace integer constant by another integer
Delete a statement
Replace an operator by another operator
Assign null in assignment statements
Replace return expression with null
/15
Evaluation
• 9 different components, ca. 850 KLoC
11
Lines of Code (KLoC) Number of TCs
SWC1-Old1 146 1103
SWC1-Old2 146 1103
SWC1* 146 1103
SWC2* 113 1303
SWC3 14 23
SWC4 59 890
SWC5 42 793
SWC6 88 687
SWC7 7 424
SWC8 30 234
SWC9 59 163
* Using HiL verdicts
/15
# Failures # Faults # Clusters Purity F-measure Entropy Reduction Achieved Red
SWC1-Old1 24 2 8 1 0.51 1.36 66.66 72.72
SWC1-Old2 240 3 11 0.98 0.26 3.12 95.41 96.61
SWC1 32 8 11 1 0.85 1.32 65.62 87.49
SWC2 25 4 4 0.88 0.8 0.93 84 100
SWC3 7 1 1 1 1 0 85.71 100
SWC4 39 5 6 0.77 0.48 0.98 84.61 94.28
SWC5 30 3 3 0.97 0.96 0.69 90 100
SWC6 19 4 4 1 0.89 0.69 78.94 100
SWC7 66 1 2 1 0.97 0.042 96.96 98.45
SWC8 9 4 6 1 0.59 1.07 33.33 60
SWC9 8 1 1 1 1 0 87.5 100
Results
12
/15
Remarks
• Large-scale industrial case study
• Utilizing SiL Coverage Profiles for HiL Analysis
– if a test is passing at SiL, but failing at HiL
• Potential usefulness of fault localization techniques if
multiple faults are present
13
/15
Conclusion
• Failure analysis a challenge in testing automotive CPSs
• Assisting tool for testers
• Save more than 80% in failure analysis time
• Useful for unit testing with mocks and testing of the
integrated system with actual implementations
14
/1515
Mojdeh Golagha
golagha@in.tum.de
https://www22.in.tum.de/golagha

More Related Content

Similar to Reducing Failure Analysis Time: An Industrial Evaluation

UKOUG 2019 - SQL features
UKOUG 2019 - SQL featuresUKOUG 2019 - SQL features
UKOUG 2019 - SQL features
Connor McDonald
 
Control charts
Control chartsControl charts
Control charts
Waqaruddin Siddiqui, MBA
 
14. Statistical Process Control.pptx
14. Statistical Process Control.pptx14. Statistical Process Control.pptx
14. Statistical Process Control.pptx
SarthakGupta856447
 
Dmaic
DmaicDmaic
Verilog Lecture3 hust 2014
Verilog Lecture3 hust 2014Verilog Lecture3 hust 2014
Verilog Lecture3 hust 2014
Béo Tú
 
Applied Econometrics assignment3
Applied Econometrics assignment3Applied Econometrics assignment3
Applied Econometrics assignment3
Chenguang Li
 
Plating Broken Wafer
Plating Broken WaferPlating Broken Wafer
Plating Broken Wafer
Lee Kin Nan
 
Quality analysis of hmc
Quality analysis of hmcQuality analysis of hmc
Quality analysis of hmc
Abu Bakar Siddique
 
Quality analysis of hmc
Quality analysis of hmcQuality analysis of hmc
Quality analysis of hmc
Abu Bakar Siddique
 
Lecture10.ppt
Lecture10.pptLecture10.ppt
Lecture10.ppt
thiru17270
 
The OPC Data Logger Project
The OPC Data Logger ProjectThe OPC Data Logger Project
The OPC Data Logger Project
Kharel Thompson
 
Quality report Macronix
Quality report MacronixQuality report Macronix
Quality report Macronix
Vivektrips
 
Arna Friend Controls II Final
Arna Friend Controls II FinalArna Friend Controls II Final
Arna Friend Controls II Final
Arna Friend
 
CI L11 Optimization 3 GlobalOptimization.pdf
CI L11 Optimization 3 GlobalOptimization.pdfCI L11 Optimization 3 GlobalOptimization.pdf
CI L11 Optimization 3 GlobalOptimization.pdf
SantiagoGarridoBulln
 
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docxmetadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
ARIV4
 
Optimization for the fabrication of ternary halide perovskite solar cells via...
Optimization for the fabrication of ternary halide perovskite solar cells via...Optimization for the fabrication of ternary halide perovskite solar cells via...
Optimization for the fabrication of ternary halide perovskite solar cells via...
CHUN-HAO KUNG
 
How to develop pm tasks for a machine
How to develop pm tasks for a machineHow to develop pm tasks for a machine
How to develop pm tasks for a machine
Jim Taylor, ASQ-CRE, CPE, CPMM
 
MagneTag Presentation Winter Quarter V3.0
MagneTag Presentation Winter Quarter V3.0MagneTag Presentation Winter Quarter V3.0
MagneTag Presentation Winter Quarter V3.0
John-Paul Petersen
 
Scan Segmentation Approach to Magnify Detection Sensitivity for Tiny Hardware...
Scan Segmentation Approach to Magnify Detection Sensitivity for Tiny Hardware...Scan Segmentation Approach to Magnify Detection Sensitivity for Tiny Hardware...
Scan Segmentation Approach to Magnify Detection Sensitivity for Tiny Hardware...
奈良先端大 情報科学研究科
 
Simulation-Iss4
Simulation-Iss4Simulation-Iss4

Similar to Reducing Failure Analysis Time: An Industrial Evaluation (20)

UKOUG 2019 - SQL features
UKOUG 2019 - SQL featuresUKOUG 2019 - SQL features
UKOUG 2019 - SQL features
 
Control charts
Control chartsControl charts
Control charts
 
14. Statistical Process Control.pptx
14. Statistical Process Control.pptx14. Statistical Process Control.pptx
14. Statistical Process Control.pptx
 
Dmaic
DmaicDmaic
Dmaic
 
Verilog Lecture3 hust 2014
Verilog Lecture3 hust 2014Verilog Lecture3 hust 2014
Verilog Lecture3 hust 2014
 
Applied Econometrics assignment3
Applied Econometrics assignment3Applied Econometrics assignment3
Applied Econometrics assignment3
 
Plating Broken Wafer
Plating Broken WaferPlating Broken Wafer
Plating Broken Wafer
 
Quality analysis of hmc
Quality analysis of hmcQuality analysis of hmc
Quality analysis of hmc
 
Quality analysis of hmc
Quality analysis of hmcQuality analysis of hmc
Quality analysis of hmc
 
Lecture10.ppt
Lecture10.pptLecture10.ppt
Lecture10.ppt
 
The OPC Data Logger Project
The OPC Data Logger ProjectThe OPC Data Logger Project
The OPC Data Logger Project
 
Quality report Macronix
Quality report MacronixQuality report Macronix
Quality report Macronix
 
Arna Friend Controls II Final
Arna Friend Controls II FinalArna Friend Controls II Final
Arna Friend Controls II Final
 
CI L11 Optimization 3 GlobalOptimization.pdf
CI L11 Optimization 3 GlobalOptimization.pdfCI L11 Optimization 3 GlobalOptimization.pdf
CI L11 Optimization 3 GlobalOptimization.pdf
 
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docxmetadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
 
Optimization for the fabrication of ternary halide perovskite solar cells via...
Optimization for the fabrication of ternary halide perovskite solar cells via...Optimization for the fabrication of ternary halide perovskite solar cells via...
Optimization for the fabrication of ternary halide perovskite solar cells via...
 
How to develop pm tasks for a machine
How to develop pm tasks for a machineHow to develop pm tasks for a machine
How to develop pm tasks for a machine
 
MagneTag Presentation Winter Quarter V3.0
MagneTag Presentation Winter Quarter V3.0MagneTag Presentation Winter Quarter V3.0
MagneTag Presentation Winter Quarter V3.0
 
Scan Segmentation Approach to Magnify Detection Sensitivity for Tiny Hardware...
Scan Segmentation Approach to Magnify Detection Sensitivity for Tiny Hardware...Scan Segmentation Approach to Magnify Detection Sensitivity for Tiny Hardware...
Scan Segmentation Approach to Magnify Detection Sensitivity for Tiny Hardware...
 
Simulation-Iss4
Simulation-Iss4Simulation-Iss4
Simulation-Iss4
 

Recently uploaded

一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
dakas1
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
dakas1
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
Maitrey Patel
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
kalichargn70th171
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
ShulagnaSarkar2
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
The Third Creative Media
 
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
kalichargn70th171
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
Alina Yurenko
 
Kubernetes at Scale: Going Multi-Cluster with Istio
Kubernetes at Scale:  Going Multi-Cluster  with IstioKubernetes at Scale:  Going Multi-Cluster  with Istio
Kubernetes at Scale: Going Multi-Cluster with Istio
Severalnines
 
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSISDECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
Tier1 app
 
The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024
Yara Milbes
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
XfilesPro
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdfBaha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
Alberto Brandolini
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
Bert Jan Schrijver
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
sjcobrien
 

Recently uploaded (20)

一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
 
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
 
Kubernetes at Scale: Going Multi-Cluster with Istio
Kubernetes at Scale:  Going Multi-Cluster  with IstioKubernetes at Scale:  Going Multi-Cluster  with Istio
Kubernetes at Scale: Going Multi-Cluster with Istio
 
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSISDECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
 
The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdfBaha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
 

Reducing Failure Analysis Time: An Industrial Evaluation

  • 1. Reducing Failure Analysis Time: An Industrial Evaluation 26.05.2017 Mojdeh Golagha, Alexander Pretschner Technical University of Munich Department of Informatics LS XXII – Chair for Software Engineering Dominik Fisch, Roman Nagy BMW Research and Development
  • 2. /15 Motivation Problem • Big number of SiL/HiL tests • A few faults cause a lot of failures • Significantly high test analysis time • How can we reduce the failure analysis time? Solution Idea • Cluster failing tests with respect to the hypothesized faults • Select representative test(s) for each cluster • Analyze only the representatives 2
  • 3. /15 Approach Running tests and collecting coverage information To generate features for clustering 3 Generating failure tree To cluster failing executions Cutting the failure tree by Fault Localization * To decide the best number of clusters (the number of hypothesized faults) Selecting representative tests To start the debugging process 1 STEP 2 STEP 3 STEP 4 STEP * Based on James A. Jones, James F. Bowring, and Mary Jean Harrold. 2007. Debugging in Parallel. ISSTA '07 Utilizing SiL coverage profiles for HiL analysis 5 STEP
  • 4. /15 Step 1: Running Tests and Collecting Coverage Information Blocks TC 1 TC 2 TC 3 TC 4 TC 5 TC 6 TC 7 TC 8 IsOdd() 0 0 1 1 0 1 1 0 GetMainCppPath() 0 1 1 1 1 1 0 1 GetOutputBinaryPath() 0 1 0 1 1 0 0 0 4 * Spectralizer • Prepare test execution • Execute tests while recording the coverage information using OpenCPPCoverage * • Generate coverage profile at desired level of granularity (Function)
  • 5. /15 Step 2: Generating Hierarchical Tree of Failing Test cases (FTC) 5 FTC1 FTC2 FTC3 FTC4 FTC5 FTC6
  • 6. /15 Step 3: Cutting the Failure Tree by Fault Localization 66 FTC1 FTC2 FTC3 FTC4 FTC5 FTC6
  • 7. /15 Spectrum-based Fault Localization Function TC1 TC2 TC3 TC4 TC5 TC6 TC7 TC8 Fun1 ● ● ● ● ● ● ● ● Fun2 ● ● ● ● ● ● ● ● Fun3 ● ● ● ● ● ● ● ● Fun4 ● ● ● ● ● Fun5 ● ● ● ● ● ● ● ● Fun6 ● ● ● ● Fun7 ● ● ● ● ● ● ● ● Result fail fail fail fail fail fail pass pass 7 Function Suspiciousness Rank Fun4 125 1 Fun1 108 2 Fun2 108 2 Fun3 108 2 Fun5 108 2 Fun7 108 2 Fun6 1.33 3 𝐷∗ = (𝑁𝐶𝐹)∗ 𝑁 𝑈𝐹 + 𝑁𝐶𝑆 NCF: # failing, covered NUF: # failing, not covered NCS: # passing, covered
  • 8. /15 Step 3: Cutting the Failure Tree by Fault Localization 88 FTC1 FTC2 FTC5 FTC3 FTC4 FTC6 Suspicious functions: [{Fun1} {Fun18} {Fun7} {Fun2} {Fun3} …] Suspicious functions: [{Fun1} {Fun18} {Fun5} {Fun2} {Fun4} …] FTC3 FTC4 FTC6 FTC1 FTC2 FTC5
  • 9. /15 Step 4: Selecting Representative Tests • Clusters are unlikely to be 100 percent pure • Calculate the center of cluster • Find the K-nearest neighbors to the center • K=1, Analyze 2 failing tests instead of 6 999 FTC1 FTC2 FTC3 FTC4 Ftc5 FTC6
  • 10. /15 Training Phase • Clustering Metric and Method Selection • 42 different combination UPGMA and Euclidean • Fault localization similarity metric • 72 metrics DStar • 25 components • 100 first-order mutated versions 10 Mutations Negate condition in “for” or “while” statement Replace integer constant by another integer Delete a statement Replace an operator by another operator Assign null in assignment statements Replace return expression with null
  • 11. /15 Evaluation • 9 different components, ca. 850 KLoC 11 Lines of Code (KLoC) Number of TCs SWC1-Old1 146 1103 SWC1-Old2 146 1103 SWC1* 146 1103 SWC2* 113 1303 SWC3 14 23 SWC4 59 890 SWC5 42 793 SWC6 88 687 SWC7 7 424 SWC8 30 234 SWC9 59 163 * Using HiL verdicts
  • 12. /15 # Failures # Faults # Clusters Purity F-measure Entropy Reduction Achieved Red SWC1-Old1 24 2 8 1 0.51 1.36 66.66 72.72 SWC1-Old2 240 3 11 0.98 0.26 3.12 95.41 96.61 SWC1 32 8 11 1 0.85 1.32 65.62 87.49 SWC2 25 4 4 0.88 0.8 0.93 84 100 SWC3 7 1 1 1 1 0 85.71 100 SWC4 39 5 6 0.77 0.48 0.98 84.61 94.28 SWC5 30 3 3 0.97 0.96 0.69 90 100 SWC6 19 4 4 1 0.89 0.69 78.94 100 SWC7 66 1 2 1 0.97 0.042 96.96 98.45 SWC8 9 4 6 1 0.59 1.07 33.33 60 SWC9 8 1 1 1 1 0 87.5 100 Results 12
  • 13. /15 Remarks • Large-scale industrial case study • Utilizing SiL Coverage Profiles for HiL Analysis – if a test is passing at SiL, but failing at HiL • Potential usefulness of fault localization techniques if multiple faults are present 13
  • 14. /15 Conclusion • Failure analysis a challenge in testing automotive CPSs • Assisting tool for testers • Save more than 80% in failure analysis time • Useful for unit testing with mocks and testing of the integrated system with actual implementations 14

Editor's Notes

  1. we equate the number of test cases with the time needed to analyze them