Download PDFOpen PDF in browserEnhancing Software Quality Using Artificial Neural Networks to Support Software RefactoringEasyChair Preprint 620410 pages•Date: August 1, 2021AbstractCurrent trends of software refactoring involve tools and techniques to eliminate code smells that hinder the software from achieving quality goals. This is carried out manually as the developer is required to analyse the system in order to identify how a particular quality attribute is being affected. This approach to software development is inefficient as a majority of software engineers lack this skill and it prolongs the time allocated for the software’s implementation and maintenance. This dissertation outlines the need for Artificial Neural Networks to support software refactoring in order to enhance the system’s quality. This justification is emphasized by means of illustrating the issues that arise when software quality is affected by the presence of codes smells that have been overlooked by the developers. By adhering to a research methodology that comprises of SEVEN major phases, an ANN model is able to measure software quality in terms of efficiency, maintainability, and reusability. This calculation is based off inputs that are generated through SciTools whereby an application is decomposed into metric parameters such as Cyclomatic Complexity (CC). The results of the quality of ELEVEN JAVA projects were quantified in order to further analyse patterns of code smells; this provides an insight on how the model may be utilized to enhance software quality. Furthermore, the performance of the model is evaluated relative to other Machine Learning (ML) models. Keyphrases: Refactoring Techniques, Software Refactoring, code smells, neural networks, software quality
|