Anomalias Arquiteturais versus Refatoração: Um Estudo Preliminar utilizando Sistemas em Evolução Robson Locatelli 1,2 , Rafael Jullian 3 , Francisco Dantas 1 1 Universidade do Estado do Rio Grande do Norte (UERN) Caixa Postal 70 – CEP 59610-190 – Mossoró, RN – Brazil 2 Programa de Pós-Graduação em Ciência da Computação 3 Secretaria de Estado da Administração e Recursos Humanos - RN robson_loc@hotmail.com, rafael.jullian@gmail.com, franciscodantas@uern.br Abstract. Software architecture tends to evolve by means of the reuse of its com- ponents. Unfortunately, the reuse of architectural components does not always happen as expected, mainly due to structural problems that require constant refactoring operations. In general, structural problems are related to archi- tectural anomalies occurrence. In this context, there is a lack of studies that investigate the simultaneous occurrence of anomalies and architectural refac- toring operations. This work aims at analyzing the co-occurrence of anomalies and architectural refactoring operations. For this purpose, we used the Mobi- leMedia architectural software diagrams, which evolves trough 8 versions. Our results indicated that the versions infected with a larger amount of anomalies, which are also experienced a greater number of refactoring operations. Resumo. Projetos arquiteturais de software tendem a evoluir priorizando o reuso de seus componentes. No entanto, este reuso nem sempre acontece como esperado, devido principalmente a problemas estruturais do projeto, que de- mandam constantes operações de refatoração. Problemas estruturais, em sua maioria, estão relacionados a existência de anomalias arquiteturais. No en- tanto, existe uma carência em estudos que mapeiem a ocorrência simultânea de anomalias arquiteturais e operações de refatoração. Este trabalho tem por objetivo analisar a coexistência de anomalias arquiteturais e operações de re- fatoração. Para tanto, analisou-se o projeto arquitetural de 8 versões de um software em evolução, denominado MobileMedia. Os nossos resultados indica- ram que as versões infectadas com uma quantidade maior de anomalias, são também as que sofreram um maior número de operações de refatoração. 1. Introdução Sistemas de software tendem a evoluir desde o momento que são postos em utiliza- ção. Idealmente, para cada nova versão do sistema, uma nova versão do projeto arqui- tetural é gerada, priorizando o reuso dos componentes existentes. No entanto, devido a problemas estruturais, ocasionados em sua maioria pela falta de planejamento ade- quado, projetos arquiteturais são recorrentemente refatorados [Samarthyam et al. 2016]. Refatoração arquitetural refere-se a reestruturação dos componentes arquiteturais exis- tentes, sem necessariamente promover a modificação do seus comportamento externo [Samarthyam et al. 2016].