Return to search

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

Submitted by Isaac Francisco de Souza Dias (isaac.souzadias@ufpe.br) on 2016-01-27T16:49:26Z
No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
TeseRodrigo-VersaoCORRETA.pdf: 3944929 bytes, checksum: dc865365ba68c88ed986c5498d77b3f8 (MD5) / Made available in DSpace on 2016-01-27T16:49:26Z (GMT). No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
TeseRodrigo-VersaoCORRETA.pdf: 3944929 bytes, checksum: dc865365ba68c88ed986c5498d77b3f8 (MD5)
Previous issue date: 2015-02-20 / 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. / As an effect of globalization, software companies began to distribute the
development process along different places, which led to the rise of Distributed Software
Development (DSD). The multisite nature of DSD brings with it many new challenges,
such as communication issues and sharing information efficiently. The fact that these
companies have a tendency to face these challenges in an individual and isolated fashion
poses another important problem, this way, good practices are thus not widespread in the
DSD community. In other contexts, concepts and techniques from Artificial Intelligence are
heavily used for improving how some systems and processes work. This work makes use of
three of these concepts: Ontologies, Case-based Reasoning (CBR) and Natural Language
Processing (NLP). Ontologies allow the formalization of a domain's knowledge, which
applied to distributed development environments will bring benefits like a uniform
comprehension of the information shared by the teams and ease of communication. CBR
and NLP also have an important role in the attempt of making better use of past
experiences, with the purpose of mitigating potential problems. An approach based on
Ontologies and Case-Based Reasoning is proposed: an access tool to the ontology and a
CBR tool that utilizes PLN, whose purpose is to support the entire software development
process for distributed teams by recommending techniques or best practices for avoiding or
solving potential challenges that may be faced. The state-of-the-art survey for this research
consisted in a systematic mapping that retrieved 51 primary researches. These researches
present techniques, models and tools that use ontologies for supporting distributed teams, as
well as the proposed ontologies for this context. Thus, the main results of this work are: 1)
a specific ontology for distributed teams of software, 2) its manipulation tool and access to
information and 3) the RBC system using PLN. Thus, by the results observed in the tests, it
is clear that there was a 91.67% success rate on the recommendation of solutions to
possible problems. This approach helps teams distributed recommending techniques or best
practices to avoid or solve the challenges encountered.

Identiferoai:union.ndltd.org:IBICT/oai:repositorio.ufpe.br:123456789/15008
Date20 February 2015
CreatorsROCHA, Rodrigo Gusmão de Carvalho
Contributorshttp://lattes.cnpq.br/4973731190814126, MEIRA, Silvio Romero de Lemos
PublisherUNIVERSIDADE FEDERAL DE PERNAMBUCO, Programa de Pos Graduacao em Ciencia da Computacao, UFPE, Brasil
Source SetsIBICT Brazilian ETDs
LanguageBreton
Detected LanguagePortuguese
Typeinfo:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/doctoralThesis
Sourcereponame:Repositório Institucional da UFPE, instname:Universidade Federal de Pernambuco, instacron:UFPE
RightsAttribution-NonCommercial-NoDerivs 3.0 Brazil, http://creativecommons.org/licenses/by-nc-nd/3.0/br/, info:eu-repo/semantics/openAccess

Page generated in 0.0158 seconds