Uma abordagem baseada em ontologias e raciocínio baseado em casos para apoiar o desenvolvimento distribuído de software

Detalhes bibliográficos
Ano de defesa: 2015
Autor(a) principal: ROCHA, Rodrigo Gusmão de Carvalho
Orientador(a): MEIRA, Silvio Romero de Lemos
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: UNIVERSIDADE FEDERAL DE PERNAMBUCO
Programa de Pós-Graduação: Programa de Pos Graduacao em Ciencia da Computacao
Departamento: Não Informado pela instituição
País: Brasil
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/15008
Resumo: Como reflexo da globalização, empresas de software começaram a distribuir seus processos de desenvolvimento em lugares diferentes, criando o Desenvolvimento Distribuído de Software (DDS). A distribuição de equipes no desenvolvimento de software trouxe uma série de novos desafios, tais como, comunicação e compartilhamento de informação. Um outro problema é que pela falta de conhecimento dessas organizações, estas resolvem seus problemas de forma independente e de diversas maneiras diferentes, cada uma com suas práticas, algumas mais e outras menos eficientes, onde as melhores práticas são pouco difundidas na comunidade DDS. A utilização de conceitos e técnicas da Inteligência Artificial é bastante utilizado para aperfeiçoar o funcionamento de alguns sistemas e processos. Neste caso, este trabalho expõe três conceitos fundamentais: 1) o uso de Ontologias que permite a formalização do conhecimento de um domínio. Em ambientes distribuídos, a utilização de Ontologias traz alguns benefícios como compreensão uniforme das informações entre as equipes e facilidade de comunicação. Adicionalmente, conceitos como 2) Raciocínio Baseado em Casos (RBC) e 3) Processamento de Linguagem Natural (PLN) também podem ser utilizados para se tentar fazer um melhor uso de experiências já vivenciadas com intuito de mitigar possíveis problemas. Desta maneira, o objetivo desta pesquisa é propor um mecanismo baseado em ontologias que possa extrair e recomendar informações relevantes para apoiar decisões em projetos de software com times distribuídos sendo de fato uma solução viável na resolução de problemas nesse contexto. Para levantamento do estado da arte dessa pesquisa, foi realizado um mapeamento sistemático, que identificou 51 estudos primários. Estes apresentam técnicas, modelos e ferramentas que utilizam ontologias para auxiliar equipes distribuídas, bem como ontologias propostas nesse contexto. Dessa forma, os resultados principais deste trabalho são: 1) uma ontologia específica para times distribuídos de software, 2) sua ferramenta de manipulação e acesso à informação e 3) o sistema de RBC utilizando PLN. Assim, através dos resultados constatados nos testes realizados, é possível afirmar que houve uma taxa de sucesso de 91,67% na recomendação das soluções para possíveis problemas. Essa abordagem auxilia os times distribuídos recomendando técnicas ou melhores práticas para evitar ou solucionar os desafios encontrados.