Upload
rakesh-rana
View
82
Download
2
Tags:
Embed Size (px)
Citation preview
Defect Prediction Over Software Life Cycle
in Automotive Domain
Rakesh Rana1, Miroslaw Staron1, Jörgen Hansson1, Martin Nilsson2
1Computer Science & Engineering, Chalmers | University of Gothenburg, Sweden2Volvo Car Group, Gothenburg, Sweden
This Car Runs on Code
“It takes dozens of microprocessors running 100 million lines of code to get a
premium car out of the driveway, and this software is only going to get more
complex” - IEEE spectrum
Ref: http://spectrum.ieee.org/green-tech/advanced-cars/this-car-runs-on-code
Software Defect Prediction (SDP) methods
Image 1: https://www.reliablesoft.net/how-to-become-an-expert-in-your-niche-even-if-you-are-not/
Image 2: Fenton, Norman, et al. "Predicting software defects in varying development lifecycles using Bayesian nets." Information and Software Technology 49.1 (2007): 32-43.
Image 3: Kan, Stephen H. Metrics and models in software quality engineering. Addison-Wesley Longman Publishing Co., Inc., 2002.
Image 4: http://www.codeodor.com/index.cfm/2009/11/12/Its-Not-Your-Fault-Your-Software-Sucks/3058
Automotive Software: development process & type
Image Source: Rana, Rakesh, et al. "Predicting Pre-release Defects and Identifying Risky Modules Using Prior Iterations Defect Count." Submitted to Software Quality Journal.
Automotive Software: Life Cycle
Support organizations in automotive domain with:
– Methods for Software Defect Predictions (SDP)
– When in SW life cycle different SDP methods are applicable?
– What granularity and for what purpose different SDP
techniques can be used in automotive software domain?
Objectives
Which prediction model & when? (Automotive SW lifecycle)
Objectives
Method Input Data Required Advantages and Limitations
Causal
Models
Inputs about estimated
size, complexity,
qualitative inputs on
planned testing and
quality requirements.
• Causal models biggest advantage is that they can be applied very
early in the development process.
• Possible to analyse what-if scenarios to estimate output quality or
level of testing needed to meet desired quality goals.
Expert
Opinions
Domain experience
(software development,
testing and quality
assessment).
• This is the quickest and most easy way to get the predictions (if
experts are available).
• Uncertainty of predictions is high and forecasts may be subjected to
individual biases.
Analogy
Based
Predictions
Project characteristics
and observations from
large number of historical
projects.
• Quick and easy to use, the current project is compared to previous
project with most similar characteristics.
• Evolution of software process, development tool chain may lead to
inapplicability or large prediction errors.
… … …
The granularity:
• Product Level (PL),
• System Level (SL),
• Sub-System level (SSL),
• Functional Unit level (FU),
• MOdule (MO), or at the
• File Level (FL)
Model Application level Application area
Causal Models PL, SL, SSL RPA, WIF
Expert Opinions PL, SL, SSL, FU RPA, RRA, RCA, WIF
Analogy Based Predictions PL, SL, SSL, FU RPA, RRA
COQUALMO PL, SL, SSL, FU RPA
Correlation Analysis SSL, FU, MO, FL RRA, IDP, WIF
Regression Models SSL, FU, MO, FL RRA, IDP, WIF
ML based models SSL, FU, MO, FL RRA, IDP, WIF
SRGMs PL, SL RPA, RR, RCA
At what granularity & for what purpose?
Useful applications:
• Resource Planning and Allocations (RPA),
• What-IF analysis (WIF),
• Release Readiness Assessment (RR),
• Root Cause Analysis (RCA), or for
• Identification of Defect Prone units (IDP)
– Methods for Software Defect Predictions (SDP)
– When in SW life cycle different SDP methods are applicable?
– What granularity and for what purpose different SDP
techniques can be used in automotive software domain?
Conclusions