| |  | Source code reorganization 
ObjectiveTo reduce the number of dependencies between the source files in an application.
 JustificationDuring  maintenance phases, developers don't write information in the  appropriate files, but rather in the files they are currently working  on. This increases the number of dependencies between files.  Consequently, the reuse of some files in future applications becomes  impossible, due to the presence of too much code being useless in the  new context. LanguagesC, …
 Controls Search for sub programs which are not in the most appropriate files, regarding the variables they manipulate. Elimination of useless file inclusions. Tool IBM Rational Logiscope RuleChecker
 MaterialDocument delivery, proposing:•   to reorganize files by shifting some data and some sub-programs
 •   to eliminate some useless header inclusions
 |  |  | 
 |