UM MÉTODO PARA A REFATORAÇÃO DE SOFTWARE BASEADO EM FRAMEWORK DE DOMÍNIO

Um framework de domínio é formado por um conjunto de classes que capturam o conhecimento e especialidade em um domínio de problema particular e são criados por grupos de desenvolvedores que muitas vezes não seguem a aplicação correta dos conceitos orientados a objeto. Para melhorar a flexibilidade, legibilidade, reusabilidade, expansibilidade e manutenibilidade dos frameworks de domínio pode-se usar a refatoração de software. O processo de refatoração é facilitado quando se usa métodos específicos para a aplicação das técnicas de refatoração o que garante um melhor resultado no produto final. Métodos de refatoração na literatura ou atende uma linguagem de programação específica ou são mais abrangentes. Este trabalho criou um método de refatoração usando como referência os métodos da literatura, capaz de ajudar os desenvolvedores na refatoração de aplicações construídas com os conceitos de frameworks de domínio. O método proposto é formado por três etapas principais: Entender o sistema, Ordenar os módulos e Refatorar Módulos. A diferença entre o método proposto e os da literatura é que prevê a aplicação de metapadrões, inversão de controle e uso de ferramenta de refatoração em suas etapas. O estudo de caso em que o método foi aplicado é o Framework de Formação de Preço de Venda (FrameMK), desenvolvido pelo Grupo de Pesquisa em Sistemas de Informação do Câmpus Ponta Grossa, que tem a finalidade de calcular o preço de venda de um produto ou serviço. Os resultados da aplicação do método no FrameMK foram: melhorou a complexidade do código, diminui a quantidade de bad smells e a duplicação de código, o código ficou mais reusável e flexível e houve um aumento na qualidade do software em relação a expectativas do seu ciclo de vida.


Link acessado 413 vezes

Projetos relacionados

ARQUITETURA INTEGRADA DE REFATORAÇÃO DE CÓDIGO-FONTE BASEADA EM PADRÕES DE PROJETO

Este projeto de pesquisa tem como finalidade propor uma arquitetura para detecção e inserção de pontos padrões de projeto e metapadrões em código-fonte orientado a objetos usando interação com o usuário, métricas de software, agentes e métodos da literatura capaz de identificar os possíveis padrões que podem ser usados.

Laboratório de Engenharia de Software e Inteligência Computacional

Siga-nos