Autor |
Santos, Maicon dos; |
Lattes do autor |
http://lattes.cnpq.br/0522926205384837; |
Orientador |
Oliveira, Kleinner Silva Farias de; |
Lattes do orientador |
http://lattes.cnpq.br/2582456631204400; |
Instituição |
Universidade do Vale do Rio dos Sinos; |
Sigla da instituição |
Unisinos; |
País da instituição |
Brasil; |
Instituto/Departamento |
Escola Politécnica; |
Idioma |
pt_BR; |
Título |
TechREF: uma técnica de engenharia reversa orientada a features; |
Resumo |
Engenharia reversa de código desempenha um papel fundamental em várias atividades de Engenharia de Software, tais como geração de modelos a partir de código legado e recuperação de funcionalidades (ou features) de sistemas. No contexto de Linha de Produto de Software (LPS), por exemplo, um produto de software é formado por um conjunto de features que são constantemente alteradas para acomodar mudanças de regras de negócio. Consequentemente, o modelo (por exemplo, diagrama de classes da UML) que representa toda LPS precisa ser modificado para refletir as atualizações realizadas. Neste contexto, várias ferramentas têm sido propostas nas últimas décadas, por exemplo, Astah e ArgoUML. Porém, as ferramentas (e suas técnicas) não dão suporte à engenharia reversa orientada a features, são imprecisas no que se refere à completude dos diagramas gerados, bem como exige um alto esforço para atualização dos modelos pois são manuais ou semiautomáticas. Para mitigar esta problemática, este trabalho propõe a TechREF, uma técnica de engenharia reversa orientada a features. De forma automática, a TechREF captura o fluxo de execução do código associado a uma feature, identifica as informações estruturais e comportamentais do código, e gera diagramas de classes UML, bem como persiste tais diagramas. A TechREF foi avaliada através de um estudo de caso tendo cenários reais de engenharia reversa. Esta avaliação buscou verificar o esforço e a corretude das atividades que serão realizadas no experimento com o uso dos modelos orientados a features.; |
Abstract |
Reverse code engineering plays a key role in various Software Engineering activities, such as model generation from legacy code and retrieval of system features. In the context of Software Product Line (LPS), for example, a software product is composed of a set features that are constantly changed to accommodate changes in business rules. Consequently, the model (for example, UML class diagram) that represents the entire LPS needs to be modified to reflect the updates made. In this context, several tools have been proposed in the last decades, for example, Astah and ArgoUML. However, the tools (and their techniques) do not support feature-oriented reverse engineering, are imprecise in terms of the completeness of the generated diagrams, as well as requiring a high effort to update the models because they are manual or semiautomatic. To mitigate this problem, this paper proposes TechREF, a reverse engineering technique oriented to features. Automatically, TechREF captures the execution flow of code associated with a feature, identifies the structural and behavioral information of the code, and generates diagrams of UML classes, as well as persists such diagrams. TechREF was evaluated through a case study having real reverse engineering scenarios. This evaluation sought to verify the effort and correctness of the activities that will be carried out in the experiment with the use of the models oriented to features.; |
Palavras-chave |
Engenharia reversa orientada a features; UML; Modelagem de sistemas; Estudos empíricos; Programação orientada a aspectos; Reverse engineering based on features; UML; Systems modeling; Empirical studies; Aspect-oriented programming; |
Área(s) do conhecimento |
ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação; |
Tipo |
Dissertação; |
Data de defesa |
2018-01-18; |
Agência de fomento |
Nenhuma; |
Direitos de acesso |
openAccess; |
URI |
http://www.repositorio.jesuita.org.br/handle/UNISINOS/7024; |
Programa |
Programa de Pós-Graduação em Computação Aplicada; |