HEDP: A Method for Early Forecasting Software Defects based on Human
Error Mechanisms
- URL: http://arxiv.org/abs/2110.06758v1
- Date: Wed, 13 Oct 2021 14:44:23 GMT
- Title: HEDP: A Method for Early Forecasting Software Defects based on Human
Error Mechanisms
- Authors: Fuqun Huang and Lorenzo Strigini
- Abstract summary: The main process behind a software defect is that an error-prone scenario triggers human error modes.
The proposed idea emphasizes predicting the exact location and form of a possible defect.
- Score: 1.0660480034605238
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: As the primary cause of software defects, human error is the key to
understanding, and perhaps to predicting and avoiding them. Little research has
been done to predict defects on the basis of the cognitive errors that cause
them. This paper proposes an approach to predicting software defects through
knowledge about the cognitive mechanisms of human errors. Our theory is that
the main process behind a software defect is that an error-prone scenario
triggers human error modes, which psychologists have observed to recur across
diverse activities. Software defects can then be predicted by identifying such
scenarios, guided by this knowledge of typical error modes. The proposed idea
emphasizes predicting the exact location and form of a possible defect. We
conducted two case studies to demonstrate and validate this approach, with 55
programmers in a programming competition and 5 analysts serving as the users of
the approach. We found it impressive that the approach was able to predict, at
the requirement phase, the exact locations and forms of 7 out of the 22 (31.8%)
specific types of defects that were found in the code. The defects predicted
tended to be common defects: their occurrences constituted 75.7% of the total
number of defects in the 55 developed programs; each of them was introduced by
at least two persons. The fraction of the defects introduced by a programmer
that were predicted was on average (over all programmers) 75%. Furthermore,
these predicted defects were highly persistent through the debugging process.
If the prediction had been used to successfully prevent these defects, this
could have saved 46.2% of the debugging iterations. This excellent capability
of forecasting the exact locations and forms of possible defects at the early
phases of software development recommends the approach for substantial benefits
to defect prevention and early detection.
Related papers
- BAFLineDP: Code Bilinear Attention Fusion Framework for Line-Level
Defect Prediction [0.0]
This paper presents a line-level defect prediction method grounded in a code bilinear attention fusion framework (BAFLineDP)
Our results demonstrate that BAFLineDP outperforms current advanced file-level and line-level defect prediction approaches.
arXiv Detail & Related papers (2024-02-11T09:01:42Z) - Predicting Line-Level Defects by Capturing Code Contexts with
Hierarchical Transformers [4.73194777046253]
Bugsplorer is a novel deep-learning technique for line-level defect prediction.
It can rank the first 20% defective lines within the top 1-3% suspicious lines.
It has the potential to significantly reduce SQA costs by ranking defective lines higher.
arXiv Detail & Related papers (2023-12-19T06:25:04Z) - Defect Prediction Using Stylistic Metrics [2.286041284499166]
This paper aims at analyzing the impact of stylistic metrics on both within-project and crossproject defect prediction.
Experiment is conducted on 14 releases of 5 popular, open source projects.
arXiv Detail & Related papers (2022-06-22T10:11:05Z) - Fault-Aware Neural Code Rankers [64.41888054066861]
We propose fault-aware neural code rankers that can predict the correctness of a sampled program without executing it.
Our fault-aware rankers can significantly increase the pass@1 accuracy of various code generation models.
arXiv Detail & Related papers (2022-06-04T22:01:05Z) - A Universal Error Measure for Input Predictions Applied to Online Graph
Problems [57.58926849872494]
We introduce a novel measure for quantifying the error in input predictions.
The measure captures errors due to absent predicted requests as well as unpredicted actual requests.
arXiv Detail & Related papers (2022-05-25T15:24:03Z) - Graph-Based Machine Learning Improves Just-in-Time Defect Prediction [0.38073142980732994]
We use graph-based machine learning to improve Just-In-Time (JIT) defect prediction.
We show that our best model can predict whether or not a code change will lead to a defect with an F1 score as high as 77.55%.
This represents a 152% higher F1 score and a 3% higher MCC over the state-of-the-art JIT defect prediction.
arXiv Detail & Related papers (2021-10-11T16:00:02Z) - Learning to Predict Trustworthiness with Steep Slope Loss [69.40817968905495]
We study the problem of predicting trustworthiness on real-world large-scale datasets.
We observe that the trustworthiness predictors trained with prior-art loss functions are prone to view both correct predictions and incorrect predictions to be trustworthy.
We propose a novel steep slope loss to separate the features w.r.t. correct predictions from the ones w.r.t. incorrect predictions by two slide-like curves that oppose each other.
arXiv Detail & Related papers (2021-09-30T19:19:09Z) - Machine Learning Techniques for Software Quality Assurance: A Survey [5.33024001730262]
We discuss various approaches in both fault prediction and test case prioritization.
Recent studies deep learning algorithms for fault prediction help to bridge the gap between programs' semantics and fault prediction features.
arXiv Detail & Related papers (2021-04-29T00:37:27Z) - Improving Uncertainty Calibration via Prior Augmented Data [56.88185136509654]
Neural networks have proven successful at learning from complex data distributions by acting as universal function approximators.
They are often overconfident in their predictions, which leads to inaccurate and miscalibrated probabilistic predictions.
We propose a solution by seeking out regions of feature space where the model is unjustifiably overconfident, and conditionally raising the entropy of those predictions towards that of the prior distribution of the labels.
arXiv Detail & Related papers (2021-02-22T07:02:37Z) - Distribution-Free, Risk-Controlling Prediction Sets [112.9186453405701]
We show how to generate set-valued predictions from a black-box predictor that control the expected loss on future test points at a user-specified level.
Our approach provides explicit finite-sample guarantees for any dataset by using a holdout set to calibrate the size of the prediction sets.
arXiv Detail & Related papers (2021-01-07T18:59:33Z) - Relaxing the Constraints on Predictive Coding Models [62.997667081978825]
Predictive coding is an influential theory of cortical function which posits that the principal computation the brain performs is the minimization of prediction errors.
Standard implementations of the algorithm still involve potentially neurally implausible features such as identical forward and backward weights, backward nonlinear derivatives, and 1-1 error unit connectivity.
In this paper, we show that these features are not integral to the algorithm and can be removed either directly or through learning additional sets of parameters with Hebbian update rules without noticeable harm to learning performance.
arXiv Detail & Related papers (2020-10-02T15:21:37Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.