Detalhes bibliográficos
Ano de defesa: |
2020 |
Autor(a) principal: |
Melo, Deyvisson Carlos Borges de |
Orientador(a): |
Barbosa, Eiji Adachi Medeiros |
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Dissertação
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
por |
Instituição de defesa: |
Universidade Federal do Rio Grande do Norte
|
Programa de Pós-Graduação: |
PROGRAMA DE PÓS-GRADUAÇÃO EM TECNOLOGIA DA INFORMAÇÃO
|
Departamento: |
Não Informado pela instituição
|
País: |
Brasil
|
Palavras-chave em Português: |
|
Link de acesso: |
https://repositorio.ufrn.br/handle/123456789/30349
|
Resumo: |
Para atender as constantes mudanças de requisitos e necessidades de novas funcionalidades, os sistemas de software permanecem sempre em um estado de constante evolução. O controle do processo de evolução e manutenção de um software é crucial e uma das fases mais complicadas do desenvolvimento de software. Se esse controle não for gerenciado, os sistemas correm o risco de degradação de importantes atributos de qualidade que consequentemente afetam diretamente o grau de manutenibilidade das aplicações. Fatores como inexperiência, falta de conhecimento e pressões em relação ao tempo de conclusão de tarefas levam a adoção de más práticas de design de software e são a origem dos Design Smells. Para se obter um melhor controle do processo de evolução e manutenção de um software, é importante saber identificar a ocorrência de Design Smells nos projetos, e novos estudos indicam que a utilização de informações específicas do contexto da aplicação, como a natureza dos programas ou papeis arquiteturais utilizados, podem influenciar no processo de detecção e na identificação de problemas que só existem no contexto estudado. Este trabalho realiza um estudo para a definição e identificação de Design Smells específicos ao contexto das aplicações de processamento em lotes, e propõe a definição de um catálogo de 7 Design Smells e a implementação de uma ferramenta para automatizar o processo de detecção. A ferramenta implementada foi utilizada em um estudo de caso em que os códigos de 40 sistemas foram analisados. Nesse estudo, observou-se que os smells específicos ao contexto das aplicações de processamento em lotes afetaram quase 20% das classes e mais que 30% das linhas de código dos sistemas analisados. Também foi possível observar, por meio da aplicação da ferramenta em várias versões de dois sistemas, que o número de smells se manteve constante ao longo das versões, e em alguns casos até cresceu. O que pode evidenciar a falta de conhecimento da existência dos smells e dos impactos negativos que podem incorporar nas aplicações. |