Empirical Studies on Software Refactoring Techniques in the Industrial Setting
Main Article Content
Abstract
Software refactoring is an approach that aims to improve software system quality by restructuring its internal design without altering the functionality of the software system. The software refactoring has gained comprehensive attention from the research community in software engineering since its emerging in 1999. Empirical studies were carried out to investigate whether the software refactoring indeed can achieve improvement in the software system quality. It is widely believed that refactoring has a favorable quality impact. However, several researchers have opposed this belief. This paper presents a systematic literature review (SLR) of the empirical studies that have been conducted in the industrial setting. Twenty studies were chosen and analyzed in depth as primary studies.The objectives of this SLR are to identify the refactoring techniques examined, and software quality attributes investigated as well as to analyze the connection between the refactoring techniques and the software quality attributes based on the selected empirical studies to understand the situation. The findings showed a lack of empirical research on the effect of the refactoring on software quality. Additionally, the relationship between the refactoring techniques and software quality attributes is unclear. Thus, several recommendations have been proposed to address these gaps.
Downloads
Metrics
Article Details
You are free to:
- Share — copy and redistribute the material in any medium or format for any purpose, even commercially.
- Adapt — remix, transform, and build upon the material for any purpose, even commercially.
- The licensor cannot revoke these freedoms as long as you follow the license terms.
Under the following terms:
- Attribution — You must give appropriate credit , provide a link to the license, and indicate if changes were made . You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
Notices:
You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation .
No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.