Abstract

ContextEvaluation of design problems in object oriented systems, which we call code smells, is mostly a human-based task. Several studies have investigated the impact of code smells in practice. Studies focusing on human identification of code smells have shown low agreement among developers. Unfortunately, those studies do not attempt to investigate the reasons behind this phenomenon.ObjectiveThis paper aims to investigate factors affecting human perception of code smells. Specifically, it focuses on factors affecting god class detection, one of the most known code smells.MethodThe investigation encompassed a family of four controlled experiments, covering potential factors affecting human detection of code smells. The method is incremental. In other words, each experiment produces insights to the next one. This allows the investigators to control specific factors affecting the agreement on god class detection. The factors addressed in this study are: i) developer experience, ii) developer knowledge, iii) developer training, iv) tool support for design comprehension, and v) software size.ResultOur findings show that tool support for design comprehension is the only factor that does not affect the human perception of god class. The other factors impact this perception in some way.ConclusionThe area still needs more investigation and discussion on what we call the code smell conceptualization problem, to ensure similar criteria and thresholds on human-based code smell detection.

Highlights

  • The software engineering community has been discussing strategies for the systematic evaluation of potential design problems

  • 3 The family of experiments we present our family of controlled experiments, which is called Finding God Class (FinG)

  • 6 Discussion we present our main findings considering all previous analyses of the current paper and of other papers based on FinG family

Read more

Summary

Objective

This paper aims to investigate factors affecting human perception of code smells. It focuses on factors affecting god class detection, one of the most known code smells. Method: The investigation encompassed a family of four controlled experiments, covering potential factors affecting human detection of code smells. Each experiment produces insights to the one. This allows the investigators to control specific factors affecting the agreement on god class detection. The factors addressed in this study are: i) developer experience, ii) developer knowledge, iii) developer training, iv) tool support for design comprehension, and v) software size

Background
Design
Results
Discussion
Design comprehension
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call