Título: ARCHPYTHON VERIFICANDO ARQUITETURAS DE SISTEMAS PYTHON
Autoria de: Eduardo Fernando de Lima
Orientação de: Ricardo Terra Nunes Bueno Villela
Presidente da banca: Ricardo Terra Nunes Bueno Villela
Primeiro membro da banca: Rafael Serapilha Durelli
Segundo membro da banca: Sérgio Henrique Miranda Junior
Palavras-chaves: Arquitetura de Software, Conformidade Arquitetural, Inferência de Tipos, Visualização Arquitetural, Engenharia de Software
Data da defesa: 03/09/2020
Semestre letivo da defesa: 2020-1
Data da versão final: 14/09/2020
Data da publicação: 14/09/2020
Referência: Lima, E. F. d. ARCHPYTHON VERIFICANDO ARQUITETURAS DE SISTEMAS PYTHON. 2020. 46 p. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação Bacharelado)-Universidade Federal de Lavras, Lavras, 2020.
Resumo: Linguagens dinamicamente tipadas proveem uma série de recursos para os desenvolvedores, como invocações e construções dinâmicas. No entanto, ao se combinar tais recursos com prazos curtos, conflitos nos requisitos ou dificuldades técnicas, pode ocorrer com que a arquitetura de um sistema de software se distancie de sua arquitetura planejada, levando ao fenômeno denominado erosão arquitetural. Embora Python seja atualmente a 3a linguagem de programação mais utilizada, não há uma ferramenta que permita os desenvolvedores a monitorar a arquitetura de seus sistemas. Isso se justifica, possivelmente, pela complexidade na inferência de tipos uma vez que uma mesma variável pode assumir diferentes tipos em tempo de execução. Diante desse desafio, este artigo propõe ArchPython, a primeira ferramenta completa de conformidade e visualização arquitetural para sistemas Python. Em suma, desenvolvedores especificam a arquitetura de seus sistemas forma simples e natural em arquivos JSON e ArchPython se encarrega do resto. De forma totalmente automática, tipos são inferidos (Jedi heurística de propagação) e violações arquiteturais são detectadas (divergências, ausências e até mesmo alertas). Além de um relatório textual em formato JSON, a ferramenta ainda provê duas formas de visualização de violações arquiteturais (grafo e DSM).
URI: sip.prg.ufla.br/publico/trabalhos_conclusao_curso/acessar_tcc_por_curso/
ciencia_da_computacao/20201201611003
URI alternaviva: repositorio.ufla.br/handle/1/45212
Curso: G010 - CIÊNCIA DA COMPUTAÇÃO (BACHARELADO)
Nome da editora: Universidade Federal de Lavras
Sigla da editora: UFLA
País da editora: Brasil
Gênero textual: Trabalho de Conclusão de Curso
Nome da língua do conteúdo: Português
Código da língua do conteúdo: por
Licença de acesso: Acesso aberto
Nome da licença: Licença do Repositório Institucional da Universidade Federal de Lavras
URI da licença: repositorio.ufla.br
Termos da licença: Acesso aos termos da licença em repositorio.ufla.br
Detentores dos direitos autorais: Eduardo Fernando de Lima e Universidade Federal de Lavras
Baixar arquivo