Abstract
Software products in the market are changing due to changes in business processes, technology, or new requirements from the customers. Maintainability of legacy systems has always been an inspiring task for the software companies. In order to determine whether the software requires maintainability by reverse engineering or by forward engineering approach, a system assessment was done from diverse perspectives: quality, business value, type of errors, etc. In this research, the changes required in the existing software components of the legacy system were identified using a supervised learning approach. New interfaces for the software components were redesigned according to the new requirements and/or type of errors. Software maintainability was measured by applying a machine learning technique, i.e., Naïve Bayes classifier. The dataset was designed based on the observations such as component state, successful or error type in the component, line of code of error that exists in the component, component business value, and changes required for the component or not. The results generated by the Waikato Environment for Knowledge Analysis (WEKA) software confirm the effectiveness of the introduced methodology with an accuracy of 97.18%.
Funder
Chongqing Graduate Tutor Team Construction Project
Subject
General Physics and Astronomy
Reference37 articles.
1. The Road Map to Software Engineering: A Standards-Based Guide;Moore,2006
2. Managing and Leading Software Projects;Fairly,D2009
3. Metrics and Models in Software Quality Engineering;Kan,2002
4. Introduction to Machine Learning and Software Engineering
5. A methodology for the classification of quality of requirements using machine learning techniques
Cited by
7 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献