1,659 research outputs found
Enhanced Approach for Bug Severity Prediction: Experimentation and Scope for Improvements
Software development is an iterative process, where developers create, test, and refine their code until it is ready for release. Along the way, bugs and issues are inevitable. A bug can be any error identified in requirement specification, design or implementation of any project. These bugs need to be categorized and assigned to developers to be resolved. the number of bugs generated in any large scale project are vast in number. These bugs can have significant or no impact on the project depending on the type of bug. The aim of this study is to develop a deep learning-based bug severity prediction model that can accurately predict the severity levels of software bugs. This study aims to address the limitations of the current manual bug severity assessment process and provide an automated solution using various classifiers e.g. Naïve Bayes, Logistic regression, KNN and Support vector machine along with Mutual information as feature selection method, that can assist software development teams in giving severity code to bugs effectively. It seeks to improve the overall software development process by reducing the time and effort required for bug resolution and enhancing the quality and reliability of software
An Assessment of Eclipse Bugs' Priority and Severity Prediction Using Machine Learning
The reliability and quality of software programs remains to be an important and challenging aspect of software design. Software developers and system operators spend huge time on assessing and overcoming expected and unexpected errors that might affect the users’ experience negatively. One of the major concerns in developing software problems is the bug reports, which contains the severity and priority of these defects. For a long time, this task was performed manually with huge effort and time consumptions by system operators. Therefore, in this paper, we present a novel automatic assessment tool using Machine Learning algorithms, for assessing bugs’ reports based on several features such as hardware, product, assignee, OS, component, target milestone, votes, and versions. The aim is to build a tool that automatically classifies software bugs according to the severity and priority of the bugs and makes predictions based on the most representative features and bug report text. To perform this task, we used the Multi-Nominal Naive Bayes, Random Forests Classifier, Bagging, Ada Boosting, SVC, KNN, and Linear SVM Classifiers and Natural Language Processing techniques to analyze the Eclipse dataset. The approach shows promising results for software bugs’ detection and prediction
PrAIoritize: Learning to Prioritize Smart Contract Bugs and Vulnerabilities
Smart contract vulnerabilities and bugs have become a key concern for
software engineers, as they can lead to significant financial losses,
reputational damage, and legal issues. Therefore, prioritizing bug fixing for
smart contracts is critical to maintaining trust. Due to the lack of tracking
tools, prioritizing smart contract-reported bugs is done manually, which is a
tedious task, limits bug triaging, and needs specialized knowledge. Towards
this end, we propose PrAIoritize; an automated approach for predicting smart
contract bug priorities that assist software engineers in prioritizing highly
urgent bug reports. PrAIoritize consists of two main phases: 1) automatic
labeling, which involves the automatic construction of a smart contract keyword
lexicon and the automatic assignment of priority levels to unlabeled bug
reports; 2) model construction, which involves feature engineering and designs
layers of feed-forward neural networks (FFNNs) and bidirectional long
short-term memory (BiLSTM) with multi-class classification to better capture
the features of the textual descriptions of bugs and predict their priority
levels. The model then is trained using smart contract bug reports collected
from two data sources: open-source software (OSS) projects available on GitHub
and NVD vulnerability database. Our evaluation demonstrates significant
improvement over state-of-the-art baselines and commonly used pre-trained
models (e.g. BERT) for similar classification tasks, with 5.75%-35.29% increase
in F-measure, precision, and recall
Analyze the Performance of Software by Machine Learning Methods for Fault Prediction Techniques
Trend of using the software in daily life is increasing day by day. Software system development is growing more difficult as these technologies are integrated into daily life. Therefore, creating highly effective software is a significant difficulty. The quality of any software system continues to be the most important element among all the required characteristics. Nearly one-third of the total cost of software development goes toward testing. Therefore, it is always advantageous to find a software bug early in the software development process because if it is not found early, it will drive up the cost of the software development. This type of issue is intended to be resolved via software fault prediction. There is always a need for a better and enhanced prediction model in order to forecast the fault before the real testing and so reduce the flaws in the time and expense of software projects. The various machine learning techniques for classifying software bugs are discussed in this paper
Issue Resolution Time Prediction Using Deep Learning Techniques
Probleemi lahendamise ajakulu prognoosimine tarkvaraprojektide korral on suure tähtsusega, kuna selliste projektide planeerimine on raske. Probleemi lahendamisele kuluva aja täpne hindamine on eriti vajalik agiilses tarkvaraarenduses, nt sprindi planeerimises, sest see võimaldab planeerida täpselt. Käesolev magistritöö keskendub antud probleemi kaasaegsetele lähenemisviisidele ja nende efektiivsuse uurimisele. Töös arutletakse selle üle, kuidas on võimalik struktureerida ja rakendada süvaõppe algoritme probleemi lahendamisele kuluva aja prognoosimiseks. Süvaõppe meetodite abil saadud tulemusi võrreldakse teiste kaasaegsete tulemustega. Andmed, mida antud lõputöös kasutatakse, sisaldavad umbes 700 000 ülesannet. Andmed on kollektiivselt kogutud samas valdkonnas varasemalt läbiviidud uurimustest. Kasutades olemasolevaid andmeid, on töös plaanis valideerida olemasolevaid tulemusi ja neid täiendada.Issue resolution time prediction has a large importance in software projects since planning of these projects are typically hard. Especially in the agile practices, such as sprint planning, to be able to predict correctly how long it would take to resolve an issue, holds the power to plan correctly. This thesis focuses on the state of the art approaches to this problem and study their performances. On top of that we discuss how can one structure and implement a deep learning algorithm to solve issue resolution time prediction problem. Afterwards, we compare and discuss the results of the applied deep learning technique with the current state of the art.The data used for this study contains around 700,000 issues. This data is gathered collectively from the previous studies in this field. By using the already existing data, we plan to validate the existing results and build on top of the current baseline
Automatic Classification of Bug Reports Based on Multiple Text Information and Reports' Intention
With the rapid growth of software scale and complexity, a large number of bug
reports are submitted to the bug tracking system. In order to speed up defect
repair, these reports need to be accurately classified so that they can be sent
to the appropriate developers. However, the existing classification methods
only use the text information of the bug report, which leads to their low
performance. To solve the above problems, this paper proposes a new automatic
classification method for bug reports. The innovation is that when categorizing
bug reports, in addition to using the text information of the report, the
intention of the report (i.e. suggestion or explanation) is also considered,
thereby improving the performance of the classification. First, we collect bug
reports from four ecosystems (Apache, Eclipse, Gentoo, Mozilla) and manually
annotate them to construct an experimental data set. Then, we use Natural
Language Processing technology to preprocess the data. On this basis, BERT and
TF-IDF are used to extract the features of the intention and the multiple text
information. Finally, the features are used to train the classifiers. The
experimental result on five classifiers (including K-Nearest Neighbor, Naive
Bayes, Logistic Regression, Support Vector Machine, and Random Forest) show
that our proposed method achieves better performance and its F-Measure achieves
from 87.3% to 95.5%
Optimized Deeplearning Algorithm for Software Defects Prediction
Accurate software defect prediction (SDP) helps to enhance the quality of the software by identifying potential flaws early in the development process. However, existing approaches face challenges in achieving reliable predictions. To address this, a novel approach is proposed that combines a two-tier-deep learning framework. The proposed work includes four major phases:(a) pre-processing, (b) Dimensionality reduction, (c) Feature Extraction and (d) Two-fold deep learning-based SDP. The collected raw data is initially pre-processed using a data cleaning approach (handling null values and missing data) and a Decimal scaling normalisation approach. The dimensions of the pre-processed data are reduced using the newly developed Incremental Covariance Principal Component Analysis (ICPCA), and this approach aids in solving the “curse of dimensionality” issue. Then, onto the dimensionally reduced data, the feature extraction is performed using statistical features (standard deviation, skewness, variance, and kurtosis), Mutual information (MI), and Conditional entropy (CE). From the extracted features, the relevant ones are selected using the new Euclidean Distance with Mean Absolute Deviation (ED-MAD). Finally, the SDP (decision making) is carried out using the optimized Two-Fold Deep Learning Framework (O-TFDLF), which encapsulates the RBFN and optimized MLP, respectively. The weight of MLP is fine-tuned using the new Levy Flight Cat Mouse Optimisation (LCMO) method to improve the model's prediction accuracy. The final detected outcome (forecasting the presence/ absence of defect) is acquired from optimized MLP. The implementation has been performed using the MATLAB software. By using certain performance metrics such as Sensitivity, Accuracy, Precision, Specificity and MSE the proposed model’s performance is compared to that of existing models. The accuracy achieved for the proposed model is 93.37%
- …