Defect Prediction & Prevention In Automotive Software Development
Dec, 2013
Göteborg, Sweden
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...ijaia
The history of Artificial Intelligence and Machine Learning dates back to 1950’s. In recent years, there has
been an increase in popularity for applications that implement AI and ML technology. As with traditional
development, software testing is a critical component of an efficient AI/ML application. However, the
approach to development methodology used in AI/ML varies significantly from traditional development.
Owing to these variations, numerous software testing challenges occur. This paper aims to recognize and
to explain some of the biggest challenges that software testers face in dealing with AI/ML applications. For
future research, this study has key implications. Each of the challenges outlined in this paper is ideal for
further investigation and has great potential to shed light on the way to more productive software testing
strategies and methodologies that can be applied to AI/ML applications.
ANALYTIC HIERARCHY PROCESS-BASED FUZZY MEASUREMENT TO QUANTIFY VULNERABILITIE...IJCNCJournal
Much research has been conducted to detect vulnerabilities of Web Applications; however, these never proposed a methodology to measure the vulnerabilities either qualitatively or quantitatively. In this paper, a methodology is proposed to investigate the quantification of vulnerabilities in Web Applications. We applied the Goal Question Metrics (GQM) methodology to determine all possible security factors and subfactors of Web Applications in the Department of Transportation (DOT) as our proof of concept. Then we
introduced a Multi-layered Fuzzy Logic (MFL) approach based on the security sub-factors’ prioritization in the Analytic Hierarchy Process (AHP). Using AHP, we weighted each security sub-factor before the quantification process in the Fuzzy Logic to handle imprecise crisp number calculation.
TOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUESijaia
The purpose of software defect prediction is to improve the quality of a software project by building a
predictive model to decide whether a software module is or is not fault prone. In recent years, much
research in using machine learning techniques in this topic has been performed. Our aim was to evaluate
the performance of clustering techniques with feature selection schemes to address the problem of software
defect prediction problem. We analysed the National Aeronautics and Space Administration (NASA)
dataset benchmarks using three clustering algorithms: (1) Farthest First, (2) X-Means, and (3) selforganizing map (SOM). In order to evaluate different feature selection algorithms, this article presents a
comparative analysis involving software defects prediction based on Bat, Cuckoo, Grey Wolf Optimizer
(GWO), and particle swarm optimizer (PSO). The results obtained with the proposed clustering models
enabled us to build an efficient predictive model with a satisfactory detection rate and acceptable number
of features.
Comparative Performance Analysis of Machine Learning Techniques for Software ...csandit
Machine learning techniques can be used to analyse data from different perspectives and enable
developers to retrieve useful information. Machine learning techniques are proven to be useful
in terms of software bug prediction. In this paper, a comparative performance analysis of
different machine learning techniques is explored for software bug prediction on public
available data sets. Results showed most of the machine learning methods performed well on
software bug datasets.
SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...ijaia
The history of Artificial Intelligence and Machine Learning dates back to 1950’s. In recent years, there has
been an increase in popularity for applications that implement AI and ML technology. As with traditional
development, software testing is a critical component of an efficient AI/ML application. However, the
approach to development methodology used in AI/ML varies significantly from traditional development.
Owing to these variations, numerous software testing challenges occur. This paper aims to recognize and
to explain some of the biggest challenges that software testers face in dealing with AI/ML applications. For
future research, this study has key implications. Each of the challenges outlined in this paper is ideal for
further investigation and has great potential to shed light on the way to more productive software testing
strategies and methodologies that can be applied to AI/ML applications.
ANALYTIC HIERARCHY PROCESS-BASED FUZZY MEASUREMENT TO QUANTIFY VULNERABILITIE...IJCNCJournal
Much research has been conducted to detect vulnerabilities of Web Applications; however, these never proposed a methodology to measure the vulnerabilities either qualitatively or quantitatively. In this paper, a methodology is proposed to investigate the quantification of vulnerabilities in Web Applications. We applied the Goal Question Metrics (GQM) methodology to determine all possible security factors and subfactors of Web Applications in the Department of Transportation (DOT) as our proof of concept. Then we
introduced a Multi-layered Fuzzy Logic (MFL) approach based on the security sub-factors’ prioritization in the Analytic Hierarchy Process (AHP). Using AHP, we weighted each security sub-factor before the quantification process in the Fuzzy Logic to handle imprecise crisp number calculation.
TOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUESijaia
The purpose of software defect prediction is to improve the quality of a software project by building a
predictive model to decide whether a software module is or is not fault prone. In recent years, much
research in using machine learning techniques in this topic has been performed. Our aim was to evaluate
the performance of clustering techniques with feature selection schemes to address the problem of software
defect prediction problem. We analysed the National Aeronautics and Space Administration (NASA)
dataset benchmarks using three clustering algorithms: (1) Farthest First, (2) X-Means, and (3) selforganizing map (SOM). In order to evaluate different feature selection algorithms, this article presents a
comparative analysis involving software defects prediction based on Bat, Cuckoo, Grey Wolf Optimizer
(GWO), and particle swarm optimizer (PSO). The results obtained with the proposed clustering models
enabled us to build an efficient predictive model with a satisfactory detection rate and acceptable number
of features.
Comparative Performance Analysis of Machine Learning Techniques for Software ...csandit
Machine learning techniques can be used to analyse data from different perspectives and enable
developers to retrieve useful information. Machine learning techniques are proven to be useful
in terms of software bug prediction. In this paper, a comparative performance analysis of
different machine learning techniques is explored for software bug prediction on public
available data sets. Results showed most of the machine learning methods performed well on
software bug datasets.
A NOVEL APPROACH TO ERROR DETECTION AND CORRECTION OF C PROGRAMS USING MACHIN...IJCI JOURNAL
There has always been a struggle for programmers to identify the errors while executing a program- be it
syntactical or logical error. This struggle has led to a research in identification of syntactical and logical
errors. This paper makes an attempt to survey those research works which can be used to identify errors as
well as proposes a new model based on machine learning and data mining which can detect logical and
syntactical errors by correcting them or providing suggestions. The proposed work is based on use of
hashtags to identify each correct program uniquely and this in turn can be compared with the logically
incorrect program in order to identify errors.
Machine Learning approaches are good in solving problems that have less information. In most cases, the
software domain problems characterize as a process of learning that depend on the various circumstances
and changes accordingly. A predictive model is constructed by using machine learning approaches and
classified them into defective and non-defective modules. Machine learning techniques help developers to
retrieve useful information after the classification and enable them to analyse data from different
perspectives. Machine learning techniques are proven to be useful in terms of software bug prediction. This
study used public available data sets of software modules and provides comparative performance analysis
of different machine learning techniques for software bug prediction. Results showed most of the machine
learning methods performed well on software bug datasets.
In the software development life cycle (SDLC), testing is an important step to reveal and fix the vulnerabilities and flaws in the software. Testing commercial off-the-shelf applications for security has never been easy, and this is exacerbated when their source code is not accessible. Without access to source code, binary executables of such applications are employed for testing. Binary analysis is commonly used to analyze on the binary executable of an application to discover vulnerabilities. Various means, such as symbolic execution, concolic execution, taint analysis, can be used in binary analysis to help collect control flow information, execution path information, etc. This paper presents the basics of the symbolic execution approach and studies the common tools which utilize symbolic execution in them. With the review, we identified that there are a number of challenges that are associated with the symbolic values fed to the programs as well as the performance and space consumption of the tools. Different tools approached the challenges in different ways, therefore the strengths and weaknesses of each tool are summarized in a table to make it available to interested researchers.
Java continues to be one of the world’s most popular programming languages. As the technology world continues to change rapidly, so Java will also adapt to a new world characterized by cloud computing, big data, and the internet of things.
To help you keep up with the changes that we can expect to see in the future, particularly with the upcoming release of Java 9, in this webinar Belatrix expert, Willy Seminario, discusses:
- The history of Java
- Why Java is so popular – evaluating its strengths and weaknesses
- Java’s need for simplicity, efficiency and transparency
- What the next evolution of Java will be
- Case studies
A NOVEL APPROACH TO ERROR DETECTION AND CORRECTION OF C PROGRAMS USING MACHIN...IJCI JOURNAL
There has always been a struggle for programmers to identify the errors while executing a program- be it
syntactical or logical error. This struggle has led to a research in identification of syntactical and logical
errors. This paper makes an attempt to survey those research works which can be used to identify errors as
well as proposes a new model based on machine learning and data mining which can detect logical and
syntactical errors by correcting them or providing suggestions. The proposed work is based on use of
hashtags to identify each correct program uniquely and this in turn can be compared with the logically
incorrect program in order to identify errors.
Machine Learning approaches are good in solving problems that have less information. In most cases, the
software domain problems characterize as a process of learning that depend on the various circumstances
and changes accordingly. A predictive model is constructed by using machine learning approaches and
classified them into defective and non-defective modules. Machine learning techniques help developers to
retrieve useful information after the classification and enable them to analyse data from different
perspectives. Machine learning techniques are proven to be useful in terms of software bug prediction. This
study used public available data sets of software modules and provides comparative performance analysis
of different machine learning techniques for software bug prediction. Results showed most of the machine
learning methods performed well on software bug datasets.
In the software development life cycle (SDLC), testing is an important step to reveal and fix the vulnerabilities and flaws in the software. Testing commercial off-the-shelf applications for security has never been easy, and this is exacerbated when their source code is not accessible. Without access to source code, binary executables of such applications are employed for testing. Binary analysis is commonly used to analyze on the binary executable of an application to discover vulnerabilities. Various means, such as symbolic execution, concolic execution, taint analysis, can be used in binary analysis to help collect control flow information, execution path information, etc. This paper presents the basics of the symbolic execution approach and studies the common tools which utilize symbolic execution in them. With the review, we identified that there are a number of challenges that are associated with the symbolic values fed to the programs as well as the performance and space consumption of the tools. Different tools approached the challenges in different ways, therefore the strengths and weaknesses of each tool are summarized in a table to make it available to interested researchers.
Java continues to be one of the world’s most popular programming languages. As the technology world continues to change rapidly, so Java will also adapt to a new world characterized by cloud computing, big data, and the internet of things.
To help you keep up with the changes that we can expect to see in the future, particularly with the upcoming release of Java 9, in this webinar Belatrix expert, Willy Seminario, discusses:
- The history of Java
- Why Java is so popular – evaluating its strengths and weaknesses
- Java’s need for simplicity, efficiency and transparency
- What the next evolution of Java will be
- Case studies
Conceptos generales del Performance Testing en la industria del software.
Descubre en qué consiste una prueba de performance y qué necesitas para implementarla y no morir en el intento.
Temas:
- Qué es una prueba de performance
- Por qué hacer pruebas de performance
- Cuándo es recomendable
- Alcance
- Pruebas de performance dentro del ciclo de vida del sw
- Implementación
Evaluating SRGMs for Automotive Software ProjectRAKESH RANA
Evaluation of standard reliability growth models in the context of automotive software systems
Presented at:
PROFES conferences, the 14th International Conference of Product Focused Software Development and Process Improvement, in Paphos, Cyprus, 12-14 June 2013.
A survey of predicting software reliability using machine learning methodsIAESIJAI
In light of technical and technological progress, software has become an urgent need in every aspect of human life, including the medicine sector and industrial control. Therefore, it is imperative that the software always works flawlessly. The information technology sector has witnessed a rapid expansion in recent years, as software companies can no longer rely only on cost advantages to stay competitive in the market, but programmers must provide reliable and high-quality software, and in order to estimate and predict software reliability using machine learning and deep learning, it was introduced A brief overview of the important scientific contributions to the subject of software reliability, and the researchers' findings of highly efficient methods and techniques for predicting software reliability.
International Journal of Computational Engineering Research (IJCER) is dedicated to protecting personal information and will make every reasonable effort to handle collected information appropriately. All information collected, as well as related requests, will be handled as carefully and efficiently as possible in accordance with IJCER standards for integrity and objectivity.
Evaluating long-term predictive power of standard reliability growth models o...RAKESH RANA
Evaluating long-term predictive power of standard reliability growth models on automotive systems
Presented at:
24th annual International Symposium on Software Reliability Engineering (ISSRE-2013), Nov-2013, Pasadena, USA
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
This presentation talks about Software Defined Vehicles, Automotive Standards including Cyber Security and Safety, Agile Methods like SAFe/Less , Continuous Delivery best practices.
Review on Algorithmic and Non Algorithmic Software Cost Estimation Techniquesijtsrd
Effective software cost estimation is the most challenging and important activities in software development. Developers want a simple and accurate method of efforts estimation. Estimation of the cost before starting of work is a prediction and prediction always not accurate. Software effort estimation is a very critical task in the software engineering and to control quality and efficiency a suitable estimation technique is crucial. This paper gives a review of various available software effort estimation methods, mainly focus on the algorithmic model and non algorithmic model. These existing methods for software cost estimation are illustrated and their aspect will be discussed. No single technique is best for all situations, and thus a careful comparison of the results of several approaches is most likely to produce realistic estimation. This paper provides a detailed overview of existing software cost estimation models and techniques. This paper presents the strength and weakness of various cost estimation methods. This paper focuses on some of the relevant reasons that cause inaccurate estimation. Pa Pa Win | War War Myint | Hlaing Phyu Phyu Mon | Seint Wint Thu "Review on Algorithmic and Non-Algorithmic Software Cost Estimation Techniques" Published in International Journal of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456-6470, Volume-3 | Issue-5 , August 2019, URL: https://www.ijtsrd.com/papers/ijtsrd26511.pdfPaper URL: https://www.ijtsrd.com/engineering/-/26511/review-on-algorithmic-and-non-algorithmic-software-cost-estimation-techniques/pa-pa-win
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
Call for paper 2012, hard copy of Certificate, research paper publishing, where to publish research paper,
journal publishing, how to publish research paper, Call For research paper, international journal, publishing a paper, IJCER, journal of science and technology, how to get a research paper published, publishing a paper, publishing of journal, publishing of research paper, research and review articles, IJCER Journal, How to publish your research paper, publish research paper, open access engineering journal, Engineering journal, Mathematics journal, Physics journal, Chemistry journal, Computer Engineering, Computer Science journal, how to submit your paper, peer review journal, indexed journal, research and review articles, engineering journal, www.ijceronline.com, research journals,
yahoo journals, bing journals, International Journal of Computational Engineering Research, Google journals, hard copy of Certificate,
journal of engineering, online Submission
Increasing Efficiency of ISO 26262 Verification and Validation by Combining F...RAKESH RANA
Increasing Efficiency of ISO 26262 Verification and Validation by Combining Fault Injection and Mutation Testing with Model Based Development
Presented at:
8th International Joint Conference on Software Technologies, ICSOFT-EA, Reykjavík, Iceland, 2013
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
Consequences of Mispredictions of Software ReliabilityRAKESH RANA
Consequences of Mispredictions of Software Reliability
Presented at:
International Conference on Software Measurement, IWSM-Mensura, Rotterdam, Netherland, 2014
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
Software Defect Prediction Techniques in the Automotive Domain: Evaluation, S...RAKESH RANA
Software Defect Prediction Techniques in the Automotive Domain: Evaluation, Selection and Adoption
PhD Defense, Göteborg, Sweden
Feb, 2015
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
The adoption of machine learning techniques for software defect prediction: A...RAKESH RANA
The adoption of machine learning techniques for software defect prediction: An initial industrial validation
Presented at:
11th Joint Conference On Knowledge-Based Software Engineering, JCKBSE, Volgograd, Russia, 2014
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
Analysing Defect Inflow Distribution of Automotive & Large Software ProjectsRAKESH RANA
Analysing Defect Inflow Distribution of Automotive & Large Software Projects
Presented at:
10th International Conference on Predictive Models in Software Engineering, PROMISE, Turin, Italy, 2014
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
A framework for adoption of machine learning in industry for software defect ...RAKESH RANA
A framework for adoption of machine learning in industry for software defect prediction
Presented at:
9th International Joint Conference on Software Technologies (ICSOFT-EA), Vienna, Austria
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
Defect Prediction Over Software Life Cycle in Automotive DomainRAKESH RANA
Defect Prediction Over Software Life Cycle in Automotive Domain
Presented at:
9th International Joint Conference on Software Technologies (ICSOFT-EA), Vienna, Austria
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
How to find defects early and increase the reliability of software systemsRAKESH RANA
How to find defects early and increase the reliability of software systems
Using Fault Bypass Modeling to improve rapid prototyping and combining fault injection with mutation testing for early identification of safety defects
Presented at:
2nd Workshop on Software-Based Methods for Robust Embedded Systems (SOBRES '13), Sep-2013, Koblenz, Germany
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
Predicting reliability of software systems under developmentRAKESH RANA
Predicting reliability of software systems under development
A multiple case study of large industrial embedded software projects
Presented at:
Metrics research seminar, Sep-2014, Ericsson, Göteborg, Sweden
Get full text of publication at:
http://rakeshrana.website/index.php/work/publications/
In this presentation, we have discussed a very important feature of BMW X5 cars… the Comfort Access. Things that can significantly limit its functionality. And things that you can try to restore the functionality of such a convenient feature of your vehicle.
Symptoms like intermittent starting and key recognition errors signal potential problems with your Mercedes’ EIS. Use diagnostic steps like error code checks and spare key tests. Professional diagnosis and solutions like EIS replacement ensure safe driving. Consult a qualified technician for accurate diagnosis and repair.
What Are The Immediate Steps To Take When The VW Temperature Light Starts Fla...Import Motorworks
Learn how to respond when the red temperature light flashes in your VW with this presentation. From checking coolant levels to seeking professional help, follow these steps promptly to prevent engine damage and ensure safety on the road.
Ever been troubled by the blinking sign and didn’t know what to do?
Here’s a handy guide to dashboard symbols so that you’ll never be confused again!
Save them for later and save the trouble!
The Octavia range embodies the design trend of the Škoda brand: a fusion of
aesthetics, safety and practicality. Whether you see the car as a whole or step
closer and explore its unique features, the Octavia range radiates with the
harmony of functionality and emotion
Why Is Your BMW X3 Hood Not Responding To Release CommandsDart Auto
Experiencing difficulty opening your BMW X3's hood? This guide explores potential issues like mechanical obstruction, hood release mechanism failure, electrical problems, and emergency release malfunctions. Troubleshooting tips include basic checks, clearing obstructions, applying pressure, and using the emergency release.
5 Warning Signs Your BMW's Intelligent Battery Sensor Needs AttentionBertini's German Motors
IBS monitors and manages your BMW’s battery performance. If it malfunctions, you will have to deal with an array of electrical issues in your vehicle. Recognize warning signs like dimming headlights, frequent battery replacements, and electrical malfunctions to address potential IBS issues promptly.
Things to remember while upgrading the brakes of your carjennifermiller8137
Upgrading the brakes of your car? Keep these things in mind before doing so. Additionally, start using an OBD 2 GPS tracker so that you never miss a vehicle maintenance appointment. On top of this, a car GPS tracker will also let you master good driving habits that will let you increase the operational life of your car’s brakes.
What Does the PARKTRONIC Inoperative, See Owner's Manual Message Mean for You...Autohaus Service and Sales
Learn what "PARKTRONIC Inoperative, See Owner's Manual" means for your Mercedes-Benz. This message indicates a malfunction in the parking assistance system, potentially due to sensor issues or electrical faults. Prompt attention is crucial to ensure safety and functionality. Follow steps outlined for diagnosis and repair in the owner's manual.
Comprehensive program for Agricultural Finance, the Automotive Sector, and Empowerment . We will define the full scope and provide a detailed two-week plan for identifying strategic partners in each area within Limpopo, including target areas.:
1. Agricultural : Supporting Primary and Secondary Agriculture
• Scope: Provide support solutions to enhance agricultural productivity and sustainability.
• Target Areas: Polokwane, Tzaneen, Thohoyandou, Makhado, and Giyani.
2. Automotive Sector: Partnerships with Mechanics and Panel Beater Shops
• Scope: Develop collaborations with automotive service providers to improve service quality and business operations.
• Target Areas: Polokwane, Lephalale, Mokopane, Phalaborwa, and Bela-Bela.
3. Empowerment : Focusing on Women Empowerment
• Scope: Provide business support support and training to women-owned businesses, promoting economic inclusion.
• Target Areas: Polokwane, Thohoyandou, Musina, Burgersfort, and Louis Trichardt.
We will also prioritize Industrial Economic Zone areas and their priorities.
Sign up on https://profilesmes.online/welcome/
To be eligible:
1. You must have a registered business and operate in Limpopo
2. Generate revenue
3. Sectors : Agriculture ( primary and secondary) and Automative
Women and Youth are encouraged to apply even if you don't fall in those sectors.
What Could Cause The Headlights On Your Porsche 911 To Stop WorkingLancer Service
Discover why your Porsche 911 headlights might flicker out unexpectedly. From aging bulbs to electrical gremlins and moisture mishaps, we're delving into the reasons behind the blackout. Stay tuned to illuminate the road ahead and ensure your lights shine bright for safer journeys.
What Could Cause The Headlights On Your Porsche 911 To Stop Working
Defect Prediction & Prevention In Automotive Software Development
1. Defect Prediction & Prevention In
Automotive Software Development
11-Dec-2013
Rakesh Rana
2. Agenda
• Introduction: Why do we need to focus on reliability?
• Research Question
• Structure of thesis
• Reliability growth models – theory
• Defect Prediction: Chapters 2 – 4
• Defect Prevention: Chapters 5 – 6
• Conclusions
• Future research directions
3. Road fatalities in the EU since 2001
• 2011 more than 30,000 people died on the roads of the EU (equivalent of a medium town)
• For every death on Europe's roads there are an estimated 4 permanently disabling injuries
such as damage to the brain or spinal cord, 8 serious injuries and 50 minor injuries.
Source: EU Commission, Mobility and Transport, Road Safety; http://ec.europa.eu/transport/road_safety/specialist/statistics/
4. Cars: Safety Goal
“Our aim for 2020 is that no one
should be killed or seriously
injured in a Volvo”
- Thomas Broberg, Volvo’s senior safety
adviser, 2009
Source: The Volvo S60 concept, The New York Times; http://wheels.blogs.nytimes.com/2009/10/14/volvo-sets-a-lofty-safety-goal/?_r=0
http://www.industryweek.com/product-development/volvo-eyes-no-death-goal-its-new-cars-2020
"The car of the future will be just like the farmer's horse. The
farmer can steer the horse and carriage but if he falls asleep
the horse can still (get) back home. And if the farmer tries to
steer the carriage against a tree or off a cliff, the horse will
refuse"
- Anders Eugensson, Volvo's head of government affairs, Dec 2012 to Wall Street Journal
5. Increasing role of Software in Cars
First automotive ECU -- single-function
controller -- 1977 -- GM.
By 1981, GM was using ~50000 lines of
code across its entire domestic passenger
car production.
Today premium-class automobiles contains
~100 m lines of software code running on
70-100 microprocessors based ECUs.
Source: http://www2.teknat.uu.se/forskning/program.php?vetenskapsid=1&hforskomr=6&id=39&lang=en
http://spectrum.ieee.org/green-tech/advanced-cars/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”
- Robert N. Charette, 2009 in IEEE Spectrum
6. Cars and Software: Challenges
Cost of software and electronics can reach ~35 to 40% of the cost of a car.
Complexity also brings with it reliability issues.
In 2005, Toyota voluntarily recalled 160 000 -- Prius hybrids -- software problem. Time
needed to repair the software ~90 minutes per vehicle!
May 2008, Chrysler recalled 24 535 -- Jeep Commanders -- problem in the automatic-
transmission software.
June 2008, Volkswagen recalled about 4000 Passats and about 2500 Tiguans --
problem in the engine-control-module software.
Nov 2008, GM recalled 12 662 -- Cadillac CTS -- software problem.
Problems with repair and warranty
More than 50% of the ECUs that mechanics replace in cars are technically error free:
They exhibit neither a hardware nor a software problem.
50% of warranty costs (IBM).
Source: http://spectrum.ieee.org/green-tech/advanced-cars/this-car-runs-on-code
7. With so much more software in cars and its increasing
complexity, how do we control the reliability issue?
Cars and Software: The Big Question
8. Reliability
Source: A. Avizienis, J. C. Laprie, and B. Randell, “Fundamental concepts of dependability,” Tech. Rep. Ser.-Univ. Newctle. Tyne Comput. Sci., 2001.
IEEE standard 1633, recommended practice on software
reliability definition for software reliability:
(A) The probability that software will not cause the failure of
a system for a specfied time under specified conditions.
(B) The ability of a program to perform a required function
under stated conditions for a stated period of time.
9. Reliability
Source: A. Avizienis, J. C. Laprie, and B. Randell, “Fundamental concepts of dependability,” Tech. Rep. Ser.-Univ. Newctle. Tyne Comput. Sci., 2001.
Dependability
Attributes
Safety Reliability
10. Reliability
Source: A. Avizienis, J. C. Laprie, and B. Randell, “Fundamental concepts of dependability,” Tech. Rep. Ser.-Univ. Newctle. Tyne Comput. Sci., 2001.
Threats
Reliability
Means
Faults
Errors
Failures
Fault Prevention
Fault Tolerance
Fault Removal
Fault Forecasting
11. Research Focus & Questions
(Addressed in chapters 2, 3 & 4) (Addressed in chapters 5 & 6)
Thesis
RG1. Evaluating the applicability of
Software Reliability Growth Models
(SRGMs) in the context of automotive
software development?
RG2. Propose and evaluate methods that
can potentially increase the reliability of
software in the automotive domain
RQ1. Do SRGMs fit
defect inflow data
from automotive
domain?
RQ2. Differences
between the widely
used parameter
estimation methods?
RQ3. Which
SRGMs have the
best long-term
predictive power?
RQ4. How to use
fault injection &
mutation testing
@models?
RQ3. How to test
models better in
simulating
environment?
Prediction Prevention
12. Chapters 2 – 4: Defect prediction
(IEEE standard 1044)
o defect: An imperfection or deficiency in a work product where that
work product does not meet its requirements or specifications and
needs to be either repaired or replaced.
14. Chapter 2: Evaluation of standard reliability growth models
in the context of automotive software systems*
*Proceedings of 14th Product-Focused Software Process Improvement (PROFES) 2013, Paphos, Cyprus
RQ1. Do SRGMs fit
defect inflow data from
automotive domain?
• Objective: Do widely used software reliability growth models fit to defect
inflow data from the automotive domain?
• Method: Analytical study, we evaluated eight commonly used software
reliability growth models on defect inflow data from the automotive
domain (large project on active safety function).
• Results: While three parameter models provide good fit to the defect
data, better results can be obtained by accounting for changes in the
testing effort over calendar time.
15. Chapter 2: Evaluation of standard reliability growth models
in the context of automotive software systems*
*Proceedings of 14th Product-Focused Software Process Improvement (PROFES) 2013, Paphos, Cyprus
RQ1. Do SRGMs fit
defect inflow data from
automotive domain?
Where ai is actual values, pi predicted values of total number
of defects for data set of size k and q is the number of
parameters of software reliability growth model equation.
𝑴𝑺𝑬 =
𝟏
𝒌
(𝒂𝒊 − 𝒑𝒊)
𝒌 − 𝒑
16. Chapter 3: Comparing between Maximum Likelihood
Estimator and Non-Linear Regression estimation
procedures for Software Reliability Growth Modelling*
*Proceedings of 23nd International Workshop on Software Measurement, IWSM-Mensura 2013, Turkey.
RQ2. Differences between
the widely used parameter
estimation methods?
• Objective: To explore applicability and practical considerations for
applying two widely recommended and used parameter estimation
methods.
– Maximum likelihood estimation
– Non-linear regression estimation
• Method: Analytical study comparing the parameter estimates obtained
from these two methods for same data set and also comparing them to
results obtained via empirical equations and those reported in earlier
study.
• Results: While MLE is the recommended estimator with superior
statistical properties, its usability and applicability in all situations is
questionable. We further provide an improvised metric (BPRE) for
comparing the predictive accuracy.
17. BPRE, Balanced Predicted Relative Error
Metric Relative Error
(RE)
Predicted Relative Error
(PRE)
Balanced Predicted Relative
Error (BPRE)
Formula 𝑹𝑬 =
𝑷 − 𝑨
𝑨
𝑷𝑹𝑬 =
𝑷 − 𝑨
𝑷
𝑩𝑷𝑹𝑬 =
𝑷 − 𝑨
𝜼𝑷 + 𝟏 − 𝜼 (𝟐𝑨 − 𝑷)
Where η=1 if P > A, 0 otherwise
𝑹𝒂𝒏𝒈𝒆: (−∞, ∞) [𝟎, 𝟏) [𝟎, 𝟏)
Over
Prediction
+20% +16.67% +16.67%
Under
Prediction
-20% -25.0% -16.67%
18. Chapter 3: Comparing between Maximum Likelihood
Estimator and Non-Linear Regression estimation
procedures for Software Reliability Growth Modelling*
*Proceedings of 23nd International Workshop on Software Measurement, IWSM-Mensura 2013, Turkey.
RQ2. Differences between
the widely used parameter
estimation methods?
𝑩𝑷𝑹𝑬 =
𝑷𝒓𝒆𝒅𝒊𝒄𝒕𝒆𝒅 − 𝑨𝒄𝒕𝒖𝒂𝒍
𝜼 ∗ 𝑷𝒓𝒆𝒅𝒊𝒄𝒕𝒆𝒅 + 𝟏 − 𝜼 ∗ (𝟐 ∗ 𝑨𝒄𝒕𝒖𝒂𝒍 − 𝑷𝒓𝒆𝒅𝒊𝒄𝒕𝒆𝒅)
; 𝒘𝒉𝒆𝒓𝒆 𝜼 =
𝟏 𝒊𝒇 𝑷𝒓𝒆𝒅𝒊𝒄𝒕𝒆𝒅 > 𝑨𝒄𝒕𝒖𝒂𝒍
𝟎 𝒊𝒇 𝑷𝒓𝒆𝒅𝒊𝒄𝒕𝒆𝒅 < 𝑨𝒄𝒕𝒖𝒂𝒍
19. Chapter 4: Evaluating long-term predictive power of
standard reliability growth models on automotive systems*
*Proceedings of the 24th IEEE International Symposium on Software Reliability Engineering, Pasadena,2013
RQ3. Which SRGMs have the
best long-term predictive
power?
• Objective:
– Which SRGMs fit best to the defect data from automotive software projects?
– Which SRGMs have the best long-term predictive power?
– Which models growth rates are consistent between projects over time?
• Method: Analytical study comparing seven widely used SRGMs on full & partial
defect inflow data from four large automotive software projects.
20. Chapter 4: Evaluating long-term predictive power of
standard reliability growth models on automotive systems*
*Proceedings of the 24th IEEE International Symposium on Software Reliability Engineering, Pasadena,2013
RQ3. Which SRGMs have the
best long-term predictive
power?
• Results:
– Which SRGMs fit best to the defect data from automotive software projects?
– Which SRGMs have the best long term predictive power?
– Which models growth rates are consistent between projects over time?
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Musa-Okumoto Goel-Okumoto Inflection-S Delayed-S Rayleigh Gompertz Logistic
BPRE for different modelsusinggrowth ratefrom project A (100% data)
PRE-100%
PRE-90%
PRE-70%
PRE-50%
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Musa-Okumoto Goel-Okumoto Inflection-S Delayed-S Rayleigh Gompertz Logistic
BPRE values(averageacrossprojects) for SRGMsusingfull & partial data
PRE-100%
PRE-90%
PRE-70%
PRE-50%
BPRE ~100% --
too bad prediction
BPRE ~0% -- predicted total
#Defects ~Actual total #Defects
Same SRGM, using full and
partial data (forecasting)
21. Research Focus & Questions
(Addressed in chapters 5 & 6)
Thesis
RG2. Propose and evaluate methods that
can potentially increase the reliability of
software in the automotive domain
Prevention
Models SRGMs
Models Functional Models
w.r.t. MBD
Prediction
22. Chapter 5: Increasing Efficiency of ISO-26262 Verification and
Validation by Combining Fault Injection and Mutation Testing
with Model Based Development*
*8th International Joint Conference on Software Technologies - ICSOFT-EA, Reykjavik, Iceland, July 2013
RQ4. How to use
fault injection &
mutation testing
@models?
• Objective:
– How models can be used more effectively for early verification and validation?
• Method: Descriptive-Qualitative case study based on empirical observations to
propose a framework which combines methods of fault injection and mutation
testing to be used at the model level that can be used for increasing the efficiency
of ISO-26262 compliance.
23. Chapter 5: Increasing Efficiency of ISO-26262 Verification and
Validation by Combining Fault Injection and Mutation Testing
with Model Based Development*
*8th International Joint Conference on Software Technologies - ICSOFT-EA, Reykjavik, Iceland, 2013
RQ4. How to use
fault injection &
mutation testing
@models?
a) Assign TSRs corresponding
to FSRs to Z-outputs
b) Inject Faults (simulating
common defects) to X-inputs
c) Identify critical fault scenarios;
Study fault propagation properties;
Build fault tolerance
e) Repeat Steps (b) & (c) to
test, correct & validate
the function for its “d”
dependencies
d) Cause Mutation to “n” blocks of
function & assess effectiveness of
given test suit using M.Testing
f) Examine Mutation not killed; Update
test cases or build new to detect such
failure scenarios/defects
24. Chapter 6: Improving Fault Injection in Automotive Model
Based Development using Fault Bypass Modelling*
*2nd Workshop on Software-Based Methods for Robust Embedded Systems, INFORMATIK, Germany,2 013
RQ3. How to test models better
in simulating environment?
Environment Model
SW system Model
Out_1
Output
Inp_2
Inp_1
Out_2
Natural/State
parameter(s)
• Objective:
– How simulations of functional models be used effectively for early verification
and validation?
• Method: Descriptive-Qualitative case study based on experiment, we propose
and provide proof-of-concept for “fault bypass modelling”, a simple yet effective
framework for correct analysis of simulation in closed loop mode.
25. Chapter 6: Improving Fault Injection in Automotive Model
Based Development using Fault Bypass Modelling*
*2nd Workshop on Software-Based Methods for Robust Embedded Systems, INFORMATIK, Germany,2 013
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
0
10
20
30
40
50
60
Time in sec
SpeedinRPM
Vehicle and wheel speed with fault injection (FBM)
Vehicle Speed
Wheel Speed
0 1 2 3 4 5 6 7 8 9 10
0
20
40
60
80
100
120
140
Time in sec
SpeedinRPM
Vehicle and wheel speed with fault injection
Vehicle Speed
Wheel Speed
RQ3. How to test models better
in simulating environment?
Vehicle Speed
Control Signal
Wheel Speed
Vehicle Speed
Wheel Speed
Relative Slip
ABS Model
Environment Model
26. Conclusions
RG1. Evaluating the applicability of software reliability growth models
in the context of automotive software development?
1. SRGMs are able to fit the defect inflow data from automotive domain.
2. MLE Vs. NLR
– MLE has superior statistical properties.
– MLE is not applicable in all cases.
– A new metric for predictive accuracy is introduced.
3. Logistic and Gompertz model provide best fit among widely used
SRGMs, these models also provide best long-term predictive power. The
results also indicates that information (in form of growth rates) can be used
to improve the predictive power of most SRGMs.
27. Conclusions
RG2. Propose and evaluate methods that can potentially increase
the reliability of software in the automotive domain.
4. A framework to combine fault injection and mutation testing approach
applied at behavioural models is introduced.
5. Fault Bypass Modelling is introduced that helps to develop robust
software, a proof-of-concept is provided.
28. Conclusions
Why predict and prevent software defects in automotive domain?
• Predicting defects inflow help us manage defects and testing resources
effectively.
• Effective defect management and defect prevention increases reliability
of software in cars and thus cars themselves. It also translates to lower
development costs and time to market.
• Consumers get cars that are cheaper, safe and reliable.
• Lower ownership costs and it allows adding more innovations to your
cars with the help of software.
29. Future Research Directions
• Exploratory analysis of defect inflow data distribution from
industrial software projects
• Evaluating SRGMs and their long-term predictive power for
embedded software projects from industry
• Explore Machine Learning to Predicts Defects and Analysing Risks
in Large Software Development Projects
• SRGMs based on functional/behavioural models of software
• Measuring impact of software quality and/or software reliability
assessment on software development projects
31. Back Up Slides
Source: Healing with Art, community on Facebook, https://www.facebook.com/photo.php?fbid=10151903164088141&set=a.378605758140.163024.14524668140&type=1&theater