Font Size: a A A

The Research Of The Impact And Cause Of Code Smell Based On Multi-granularity Analysis

Posted on:2021-01-25Degree:MasterType:Thesis
Country:ChinaCandidate:C ZhuFull Text:PDF
GTID:2428330605976790Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Code smells refer to the poor designs in software.As software evolves,functions are changed and new functions are added which may destroy the original program structure and introduce code smells.Therefore,the research of code smells is of great significance to improve the quality of the software.In recent years,researchers have conducted various explorations on code smells.Considering the correlation between the code smells and software evolution,the operation of code contributors is the basic reason for smell introduction.In this thesis,we explore the impact of code smells based on multi-granularity analysis,and investigate the cause of the code smells from the perspective of code contributors.This thesis specifically conducts empirical study from the following three aspects.i.The impact of code smells on file level of software evolution.The operations of files are divided into the addition,modification and deletion of source code.The research is carried out in 8 open source projects to explore the impact of smells on file changes.The results show that files containing code smells are more likely to be modified.In addition,that ComplexClass,LongParameterList are more related to the modification of files.ii.The impact of code smells on method level of software evolution.This study first extracts the methods of each file and explores the general impact of code smells from a more granular level.Eight open source projects are also selected for research.The results of the study indicate that the files containing smells have significantly higher number of methods and lines of code than other files.From a more fine-grained method-level study,the methods in files containing smells are more likely to be changed.iii.The cause of code smells from the perspective of code contributors.This thesis is based on various aspects of code contributors.Results indicate that the number of contributors is positively related to the introduction of smells,while more mature contributors participating in projects can avoid the introduction of smells.The research is based on human factors,which helps developers understand the causes of smells and pay attention to avoid problems that may exist during the development process in terms of personnel structure.Based on the above researches,it can be seen that the existence of smells has a non-negligible impact on the source code modification and maintenance.Research from the perspective of code contributors has shown that the introduction of smells is closely related to human factors.
Keywords/Search Tags:empirical software engineering, software quality assurance, code smell, software evolution, human factors
PDF Full Text Request
Related items