Mecanismos de busca por oportunidades de refatoração para padrões - Krug, Thiago Cassio (2019)
Software systems must evolve to avoid its degradation. The refactoring technique associated with the application of design patterns help software consistent evolution. A refactoring opportunity consists of a source code that can be altered by refactoring to improve its quality. In this sense, this study presents a set of mechanics to search refactoring opportunities to apply design patterns. Some clues and refactoring steps which aid to solve the indicated problems are described. We conducted a case study with a set of open-source projects to evaluate the opportunities identified by the mechanics.