Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/79855
Título: | Suporte 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-chave: | Refactoring Program slicing Code complexity metrics Low-code OutSystems Graph theory Refatorização Program slicing Métricas de complexidade Low-code OutSystems Teoria de Grafos |
Data: | 28-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. |
Tipo: | Dissertação de mestrado |
Descrição: | Dissertação de mestrado em Engenharia Informática |
URI: | https://hdl.handle.net/1822/79855 |
Acesso: | Acesso aberto |
Aparece nas coleções: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
Tiago Fernando Santos Braga Fernandes.pdf | Dissertação de Mestrado | 2,34 MB | Adobe PDF | Ver/Abrir |