Uma arquitetura para avaliação de saúde de ecossistemas de software

Detalhes bibliográficos
Ano de defesa: 2018
Autor(a) principal: Carvalho, Iuri Andrade lattes
Orientador(a): Campos, Fernanda Cláudia Alves lattes
Banca de defesa: Santos, Rodrigo Pereira lattes, David, José Maria Nazar lattes
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Juiz de Fora (UFJF)
Programa de Pós-Graduação: Programa de Pós-graduação em Ciência da Computação
Departamento: ICE – Instituto de Ciências Exatas
País: Brasil
Palavras-chave em Português:
Área do conhecimento CNPq:
Link de acesso: https://repositorio.ufjf.br/jspui/handle/ufjf/8062
Resumo: A complexidade do ambiente de Ecossistemas de Software (ECOS), onde o gerenciamento de processos e projetos não é trivial, traz grandes desafios para o controle de qualidade. Em acréscimo, os investimentos feitos pelas empresas e desenvolvedores externos podem ser perdidos caso o ECOS deixe de existir. Todos estes fatos são referentes à saúde de um ECOS, que é a capacidade na qual este se mantém e expande ao longo do tempo diante de desafios. Com base neste problema, foi proposta a arquitetura Heal Me, cujo objetivo é analisar a saúde de ECOS. No contexto desta pesquisa, foi efetuado um mapeamento sistemático, pelo qual foram identificadas as soluções atuais, assim como um conjunto de métricas para avaliação de saúde. Estas métricas foram avaliadas através de um estudo observacional, formalizadas e automatizadas como regras semânticas. Com estes recursos, foi desenvolvida uma ontologia de domínio, para analisar o ambiente de ECOS e aplicação das regras semânticas para análise de saúde. Sobre a base ontológica, foi proposta e desenvolvida a arquitetura Heal Me, uma arquitetura de software capaz de efetuar análises de saúde dos ECOS de forma automatizada. Uma vertente importante da automação propiciada é a utilização de APIs de repositórios para captura automática de alguns desses dados. Foi efetuado um estudo de caso com especialistas para avaliar a eficácia das análises deste primeiro esforço de implementação. Os resultados obtidos apontam indícios para a possibilidade da utilidade da arquitetura em seu objetivo, assim como vulnerabilidades a serem tratadas nas próximas versões.