Cross-Project Software Refactoring Prediction Using Optimized Deep Learning Neural Network With the Aid of Attribute Selection

Cross-Project Software Refactoring Prediction Using Optimized Deep Learning Neural Network With the Aid of Attribute Selection

Rasmita Panighrahi, Sanjay Kumar Kuanar, Lov Kumar
Copyright: © 2022 |Pages: 31
DOI: 10.4018/IJOSSP.300756
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Cross-project refactoring prediction is prominent research that comprises model training from one project database and testing it for a database under a separate project. While performing the refactoring process on the cross project, software programs want to be restructured by modifying or adding the source code. However, recognizing a piece of code for predicting refactoring purposes is remained to be actual challenge for software designers. To date the entire refactoring procedure is highly dependent on the skills and software inventers. In this manuscript, a deep learning model is utilized to introduce a predictive model for refactoring to highlight classes that need to be refactored. Specifically, the deep learning technique is utilized along with the proposed attribute selection phases to predict refactoring at the class level. The planned optimized deep learning-based method for cross-project refactoring prediction is experimentally conducted on open- source project and accuracy found as 0.9648 as comparison to other mentioned state of the art.
Article Preview
Top

1. Introduction

Application related to software domains are constantly preserved and modified for inserting new necessities like debugging, or changing new elements (Zhang, 2019). Demands continue as per the revolution of the market environment is vulnerable to stakeholder needs. Consequently, software applications need to be constantly updated to ensure that participants are satisfied. During software maintenance, developers are requested to enhance a new feature, replace or/ and remove prevailing codes. These changes are necessary to correct mistakes or to accommodate new needs lifted by the marketplace or stakeholders (Deeb et al. 2021). Modifying these features requires modifying software systems to touch the essential requirement; the refactoring procedure is refactoring (Aniche et al., 2020). Identifying a target code piece for restructuring purposes is problematic for software testers. Therefore, the entire redesign procedure is highly dependent on the skills and software testers. Software Refactoring involves modifying an application's interior structure or its structure deprived of altering the exterior functionality or its functionality. Redesign enhances comprehension, complexity, and maintenance (Hegedűs et al.,2018, Pal,2021). The semantics of code after and before the refactoring process stays similar. The redesign process comprises of changing methods, classes and variables in the software application. It is a technical challenge for software developers to find objects or regions for an extensive complex system to be redesigned. Good quality software is the result of good design. Code refactoring plays a prominent part in improving software quality by altering the interior structure without affecting the intended behavior (AlOmar et al., 2021).

The redesign models counteract the erosion of the software design at the beginning of the software development project in line with the model-driven engineering platform (Badri et al, 2019). The traditional model based on refactoring methods work at a higher level by using the model metric limit values ​​as indicators of the above design and performing local adjustments. Many refactoring studies use quality metric limit values ​​to mark the opportunities of refactoring something (Singh et al., 2018). However, the threshold selection is subjective and cannot be universally applied. Additionally, a software defect (code smells) expressed by individual metrics is high because it results from the primary achievement of design goals (Alizadeh et al.,2018). The prediction of the changes prone model in Cross project is comparatively unfamiliar area and is done with a small number of empirical evidences and studies. It is a model that possesses training from a sub-database of one project and testing it to a database under a diverse code project. Predicting cross-project change-proneness compared to untested (Agnihotri & Chug, 2020). The Cross-project speculation comprises utilizing data from other open source projects for similar model design features and then using a predictive model to identify shifting classes (open source project and different directional projects). Recently, few engineers and researchers have made an effort to smear predictions from one project to another. This method of utilizing information among various projects to create disability models is often called Cross-Project Defect Prediction (CPDP) (Paltoglou et al.,2018, Baqais & Alshayeb,2020). It includes using a project prediction system, designed for another project. The choice of training samples depends on the distribution requirements of the data sets.

Complete Article List

Search this Journal:
Reset
Volume 15: 1 Issue (2024): Forthcoming, Available for Pre-Order
Volume 14: 1 Issue (2023)
Volume 13: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 12: 4 Issues (2021)
Volume 11: 4 Issues (2020)
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 1 Issue (2015)
Volume 5: 3 Issues (2014)
Volume 4: 4 Issues (2012)
Volume 3: 4 Issues (2011)
Volume 2: 4 Issues (2010)
Volume 1: 4 Issues (2009)
View Complete Journal Contents Listing