Utilize este identificador para referenciar este registo: https://hdl.handle.net/1822/79855

TítuloSuporte para refatorização automática de lógica de negócio baseada em modelos
Autor(es)Fernandes, Tiago Fernando Santos Braga
Orientador(es)Ribeiro, António Nestor
Nunes, David Varela
Palavras-chaveRefactoring
Program slicing
Code complexity metrics
Low-code
OutSystems
Graph theory
Refatorização
Program slicing
Métricas de complexidade
Low-code
OutSystems
Teoria de Grafos
Data28-Dez-2017
Resumo(s)Software’s structure profoundly affects its development and maintenance costs. Poor software’s structure may lead to well-known design flaws, such as large modules or long methods. A possible approach to reduce a module’s complexity is the Extract Method refactoring technique. This technique allows the decomposition of a large and complex method into smaller and simpler ones, while reducing the original method’s size and improving its readability and comprehension. Nowadays, it’s almost mandatory that Integrated Development Environments (IDEs) support this and other refactoring techniques. Despite the wide availability of the extract method operation on IDEs, the identification of portions of code that are worthwhile to refactor still relies mostly on developer knowledge and expertise. Thus, the purpose of this dissertation is to empower the OutSystems platform with a system that is able to analyse modules complexity and automatically suggest Extract Method refactoring opportunities.
A estrutura das aplicações de software afeta significativamente os seus custos de desenvolvimento e de manutenção. Uma fraca estruturação do código pode levar a problemas de design, como é o exemplo de módulos de grande dimensão, ou Long Methods. Uma das abordagens para reduzir a complexidade de módulos é a aplicação da técnica de refatorização Extract Method. Esta técnica permite extrair comportamento de um método complexo em métodos mais simples, reduzindo o tamanho do método original e aprimorando a sua leitura e compreensão. Hoje em dia, é quase imperativo que os IDEs suportem esta e outras técnicas de refatorização. Apesar dos IDEs disponibilizarem a operação de extração de métodos, a identificação de secções do código potencialmente úteis para refatorizar continua a ser uma operação que depende do conhecimento e experiência do programador. Assim, o objetivo desta dissertação é prover a plataforma OutSystems de um sistema capaz de analisar a complexidade de módulos e automaticamente sugerir oportunidades de refatorização Extract Method.
TipoDissertação de mestrado
DescriçãoDissertação de mestrado em Engenharia Informática
URIhttps://hdl.handle.net/1822/79855
AcessoAcesso aberto
Aparece nas coleções:BUM - Dissertações de Mestrado
DI - Dissertações de Mestrado

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
Tiago Fernando Santos Braga Fernandes.pdfDissertação de Mestrado2,34 MBAdobe PDFVer/Abrir

Partilhe no FacebookPartilhe no TwitterPartilhe no DeliciousPartilhe no LinkedInPartilhe no DiggAdicionar ao Google BookmarksPartilhe no MySpacePartilhe no Orkut
Exporte no formato BibTex mendeley Exporte no formato Endnote Adicione ao seu ORCID