The software engineering technique makes it possible to create high-quality software.One of the most significant qualities of good software is that it is devoid of bugs.One of the most time-consuming and costly softwar...The software engineering technique makes it possible to create high-quality software.One of the most significant qualities of good software is that it is devoid of bugs.One of the most time-consuming and costly software proce-dures isfinding andfixing bugs.Although it is impossible to eradicate all bugs,it is feasible to reduce the number of bugs and their negative effects.To broaden the scope of bug prediction techniques and increase software quality,numerous causes of software problems must be identified,and successful bug prediction models must be implemented.This study employs a hybrid of Faster Convolution Neural Network and the Moth Flame Optimization(MFO)algorithm to forecast the number of bugs in software based on the program data itself,such as the line quantity in codes,methods characteristics,and other essential software aspects.Here,the MFO method is used to train the neural network to identify optimal weights.The proposed MFO-FCNN technique is compared with existing methods such as AdaBoost(AB),Random Forest(RF),K-Nearest Neighbour(KNN),K-Means Clustering(KMC),Support Vector Machine(SVM)and Bagging Clas-sifier(BC)are examples of machine learning(ML)techniques.The assessment method revealed that machine learning techniques may be employed successfully and through a high level of accuracy.The obtained data revealed that the proposed strategy outperforms the traditional approach.展开更多
Software project outcomes heavily depend on natural language requirements,often causing diverse interpretations and issues like ambiguities and incomplete or faulty requirements.Researchers are exploring machine learn...Software project outcomes heavily depend on natural language requirements,often causing diverse interpretations and issues like ambiguities and incomplete or faulty requirements.Researchers are exploring machine learning to predict software bugs,but a more precise and general approach is needed.Accurate bug prediction is crucial for software evolution and user training,prompting an investigation into deep and ensemble learning methods.However,these studies are not generalized and efficient when extended to other datasets.Therefore,this paper proposed a hybrid approach combining multiple techniques to explore their effectiveness on bug identification problems.The methods involved feature selection,which is used to reduce the dimensionality and redundancy of features and select only the relevant ones;transfer learning is used to train and test the model on different datasets to analyze how much of the learning is passed to other datasets,and ensemble method is utilized to explore the increase in performance upon combining multiple classifiers in a model.Four National Aeronautics and Space Administration(NASA)and four Promise datasets are used in the study,showing an increase in the model’s performance by providing better Area Under the Receiver Operating Characteristic Curve(AUC-ROC)values when different classifiers were combined.It reveals that using an amalgam of techniques such as those used in this study,feature selection,transfer learning,and ensemble methods prove helpful in optimizing the software bug prediction models and providing high-performing,useful end mode.展开更多
Many search-based Automatic Program Repair(APR)techniques employ a set of repair patterns to generate candidate patches.Regarding repair pattern selection,existing search-based APR techniques either randomly select a ...Many search-based Automatic Program Repair(APR)techniques employ a set of repair patterns to generate candidate patches.Regarding repair pattern selection,existing search-based APR techniques either randomly select a repair pattern from the repair pattern set to apply or prioritize all repair patterns based on the bug's context information.In this paper,we introduce PatternNet,a multi-view feature f usion model capable of predicting the repair pattern for a reported software bug.To accomplish this task,PatternNet first extracts multiview features from the pair of buggy code and bug report using different models.Specifically,a transformer-based model(i.e.,UniXcoder)is utilized to obtain the bimodal feature representation of the buggy code and bug report.Additionally,an Abstract Syntax Tree(AST)-based neural model(i.e.,ASTNN)is employed to learn the feature representation of the buggy code.Second,a co-attention mechanism is adopted to capture the dependencies between the statement trees in the AST of the buggy code and the textual tokens of the reported bug,resulting in co-attentive features between statement trees and reported bug's textual tokens.Finally,these multi-view features are combined i nto a unified representation using a feature fusion network.We quantitatively demonstrate the effectiveness of PatternNet and the feature fusion network for predicting software bug repair patterns.展开更多
文摘The software engineering technique makes it possible to create high-quality software.One of the most significant qualities of good software is that it is devoid of bugs.One of the most time-consuming and costly software proce-dures isfinding andfixing bugs.Although it is impossible to eradicate all bugs,it is feasible to reduce the number of bugs and their negative effects.To broaden the scope of bug prediction techniques and increase software quality,numerous causes of software problems must be identified,and successful bug prediction models must be implemented.This study employs a hybrid of Faster Convolution Neural Network and the Moth Flame Optimization(MFO)algorithm to forecast the number of bugs in software based on the program data itself,such as the line quantity in codes,methods characteristics,and other essential software aspects.Here,the MFO method is used to train the neural network to identify optimal weights.The proposed MFO-FCNN technique is compared with existing methods such as AdaBoost(AB),Random Forest(RF),K-Nearest Neighbour(KNN),K-Means Clustering(KMC),Support Vector Machine(SVM)and Bagging Clas-sifier(BC)are examples of machine learning(ML)techniques.The assessment method revealed that machine learning techniques may be employed successfully and through a high level of accuracy.The obtained data revealed that the proposed strategy outperforms the traditional approach.
基金This Research is funded by Researchers Supporting Project Number(RSPD2024R947),King Saud University,Riyadh,Saudi Arabia.
文摘Software project outcomes heavily depend on natural language requirements,often causing diverse interpretations and issues like ambiguities and incomplete or faulty requirements.Researchers are exploring machine learning to predict software bugs,but a more precise and general approach is needed.Accurate bug prediction is crucial for software evolution and user training,prompting an investigation into deep and ensemble learning methods.However,these studies are not generalized and efficient when extended to other datasets.Therefore,this paper proposed a hybrid approach combining multiple techniques to explore their effectiveness on bug identification problems.The methods involved feature selection,which is used to reduce the dimensionality and redundancy of features and select only the relevant ones;transfer learning is used to train and test the model on different datasets to analyze how much of the learning is passed to other datasets,and ensemble method is utilized to explore the increase in performance upon combining multiple classifiers in a model.Four National Aeronautics and Space Administration(NASA)and four Promise datasets are used in the study,showing an increase in the model’s performance by providing better Area Under the Receiver Operating Characteristic Curve(AUC-ROC)values when different classifiers were combined.It reveals that using an amalgam of techniques such as those used in this study,feature selection,transfer learning,and ensemble methods prove helpful in optimizing the software bug prediction models and providing high-performing,useful end mode.
基金Partially supported by the National Natural Science Foundation of China(61802350)。
文摘Many search-based Automatic Program Repair(APR)techniques employ a set of repair patterns to generate candidate patches.Regarding repair pattern selection,existing search-based APR techniques either randomly select a repair pattern from the repair pattern set to apply or prioritize all repair patterns based on the bug's context information.In this paper,we introduce PatternNet,a multi-view feature f usion model capable of predicting the repair pattern for a reported software bug.To accomplish this task,PatternNet first extracts multiview features from the pair of buggy code and bug report using different models.Specifically,a transformer-based model(i.e.,UniXcoder)is utilized to obtain the bimodal feature representation of the buggy code and bug report.Additionally,an Abstract Syntax Tree(AST)-based neural model(i.e.,ASTNN)is employed to learn the feature representation of the buggy code.Second,a co-attention mechanism is adopted to capture the dependencies between the statement trees in the AST of the buggy code and the textual tokens of the reported bug,resulting in co-attentive features between statement trees and reported bug's textual tokens.Finally,these multi-view features are combined i nto a unified representation using a feature fusion network.We quantitatively demonstrate the effectiveness of PatternNet and the feature fusion network for predicting software bug repair patterns.