摘要: A main assumption behind the majority of the refactoring works states roughly that normal evolution of any software deteriorates its structure in such a way that, at a certain point, a refactoring becomes interesting/necessary to recover quality structure. Of course, this general idea necessitates several precisions about the software itself, the evolution process, the structural properties being deteriorated, etc. According to this fact, an important question is how can we track this degradation in order to better apply refactoring recommendations? The current paper aims at answering this question by suggesting a set of some structural metrics (based on fan in, fan out, cyclomatic complexity) that can highlight pieces of code whose degradation is so high that some refactoring actions are necessary in order to brake this deterioration. The paper also provides an empirical case study where we experiment these structural metrics.This empirical study is achieved by investigating the evolution of one open-source CMS software (ie, SPIP) through a succession of 9 releases. The experiment follows the classical paradigm of Goal-Question-Metrics which proposes to divide the experimentation into three levels: a conceptual level (determining the experimentation goal), an operational level (the questions that express the goal through an operational formulation) and a quantitative level (the metrics chosen to answer the questions). Here is our experiment structuring:• The goal is to check whether software evolution presents an identifiable point where a