Finding Erroneous Components from Change Coupled Relations at Fix-inducing Changes
Ali Zafar Sadiq, Ahmedul Kabir, Kazi Muheymin Sakib · Proceedings/Proceedings of the ... International Conference on Software Engineering and Knowledge Engineering · 2019
During the gradual process of software evolution, errors appear in different components of a software system.These errors are later on fixed by developers as part of corrective maintenance activities.However, if errors appear continuously from a particular component, that may indicate design flaws or code smells.Maintenance cost will greatly reduce if design flaws are treated as early as possible.To find out such flaws it may require time-consuming manual inspections.This paper tries to find out such components using the information of change coupled cluster of files or Java classes at fix-inducing changes.In this proposed approach, information (like class, method, parameter of method and variable names) from change coupled relation of a class at Fix-Inducing Changes (FICs) are used to provide information about erroneous components.Then the error history, of software components, is found by using cosine similarity of information from change coupled cluster of classes found in FICs to see with the architectural information found from authenticated sources.Finally, the error history of components is shown as the percentage of change coupled cluster of a class found in FICs of each 100 commits in the version control system.