Vaucher, Stéphane; Khomh, Foutse; Moha, Naouel et Guéhéneuc, Yann-Gaël
(2009).
« Tracking Design Smells: Lessons from a Study of God Classes » (Proceedings of the 16th Working Conference on Reverse Engineering (WCRE'09), )
pp. 145-154.
Fichier(s) associé(s) à ce document :
Résumé
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 are so by design (good code) from those that occurred by accident
(bad code). This methodology can guide software quality teams in
their efforts to implement prevention and correction mechanisms.
Type: |
Communication, article de congrès ou colloque
|
Informations complémentaires: |
IRISA/INRIA, University of Rennes 1, France |
Déposé par: |
Naouel Moha
|
Date de dépôt: |
29 janv. 2013 14:12 |
Dernière modification: |
01 nov. 2014 02:24 |
Adresse URL : |
http://archipel.uqam.ca/id/eprint/5175 |