Recuperação de arquitetura de software com a ferramenta ArRTool
Visualizar/abrir
Data
2016Autor
Orientador
Co-orientador
Nível acadêmico
Graduação
Outro título
Software architecture recovery using ArRtool
Assunto
Resumo
A arquitetura de software pode ser definida como uma representação da organização de um sistema, sendo uma peça fundamental em qualquer processo de desenvolvimento de software, pois ela fornece diretrizes ao projeto e implementação do sistema como um todo. Todavia ainda assim é comum que a documentação arquitetural de um sistema esteja desatualizada ou não exista, dado que geralmente a documentação acaba não recebendo a devida prioridade e investimento de tempo no processo de evolução de um sis ...
A arquitetura de software pode ser definida como uma representação da organização de um sistema, sendo uma peça fundamental em qualquer processo de desenvolvimento de software, pois ela fornece diretrizes ao projeto e implementação do sistema como um todo. Todavia ainda assim é comum que a documentação arquitetural de um sistema esteja desatualizada ou não exista, dado que geralmente a documentação acaba não recebendo a devida prioridade e investimento de tempo no processo de evolução de um sistema. Técnicas de engenharia reversa para recuperar a arquitetura de software surgiram da necessidade de documentar sistemas existentes, porém estas técnicas requerem quantidades altas de empenho caso sejam exercidas manualmente e, quando não são exercidas manualmente, geralmente são de uso complexo e acabam aumentando ainda mais o custo da aplicação, pois os engenheiros de software devem despender uma grande quantidade de tempo para aprender a utilizar a ferramenta que automatiza parte do trabalho. Visando auxiliar o processo de recuperação de arquitetura de software, este trabalho apresenta a ferramenta Architecture Rule Recovery que foi desenvolvida como um complemento à interface de desenvolvimento Eclipse. A ferramenta desenvolvida utiliza técnicas de mineração de dados baseadas em dados extraídos do código fonte de projetos escritos em linguagem Java, com intuito de gerar conjuntos de regras de associação que auxiliam os engenheiros de software a recuperarem regras arquiteturais de um dado sistema, sem a necessidade de ter conhecimento prévio específico sobre o domínio da aplicação. ...
Abstract
Software architecture can be defined as a possible representation of the organization of a system and is a key element in any development process since it guides the process of system development, because it provides guidelines for the design and implementation of the system as a whole. However, it is still common to the architectural documentation of a system to be outdated or non-existent, since documentation usually does not receive due priority and time investment. Reverse engineering techn ...
Software architecture can be defined as a possible representation of the organization of a system and is a key element in any development process since it guides the process of system development, because it provides guidelines for the design and implementation of the system as a whole. However, it is still common to the architectural documentation of a system to be outdated or non-existent, since documentation usually does not receive due priority and time investment. Reverse engineering techniques to recover software architecture emerged from the need to document existing systems, however these techniques require high amounts of effort if they are handled manually, and when not handled manually, are often very complex to use and rises even more the cost of the system, since software engineers must take a great amount of time to learn how to use the tool. Aiming to assist the software architecture recovery process, this work presents the ArRTool, that was developed as a complement to the Eclipse development interface. The tool uses data mining techniques based on data extracted from source code of Java written projects, in order to generate sets of association rules that can help software engineers to recover architectural rules of a given system, without the need of prior knowledge about the application domain. ...
Instituição
Universidade Federal do Rio Grande do Sul. Instituto de Informática. Curso de Ciência da Computação: Ênfase em Ciência da Computação: Bacharelado.
Coleções
-
TCC Ciência da Computação (1024)
Este item está licenciado na Creative Commons License