Sciweavers

WCRE
2009
IEEE

Tracking Design Smells: Lessons from a Study of God Classes

13 years 11 months ago
Tracking Design Smells: Lessons from a Study of God Classes
—“God class” is a term used to describe a certain type of large classes which “know too much or do too much”. Often a God class (GC) is created by accident as functionalities are incrementally added to a central class over the course of its evolution. GCs are generally thought to be examples of bad code that should be detected and removed to ensure software quality. However, in some cases, a GC is created by design as the best solution to a particular problem because, for example, the problem is not easily decomposable or strong requirements on efficiency exist. In this paper, we study in two open-source systems the “life cycle” of GCs: how they arise, how prevalent they are, and whether they remain or they are removed as the systems evolve over time, through a number of versions. We show how to detect the degree of “godliness” of classes automatically. Then, we show that by identifying the evolution of “godliness”, we can distinguish between those classes that a...
Stéphane Vaucher, Foutse Khomh, Naouel Moha
Added 21 May 2010
Updated 21 May 2010
Type Conference
Year 2009
Where WCRE
Authors Stéphane Vaucher, Foutse Khomh, Naouel Moha, Yann-Gaël Guéhéneuc
Comments (0)