Return to search

Um modelo para a análise de impacto em código fonte usando ontologias e recuperação de informação

Made available in DSpace on 2013-08-07T18:42:31Z (GMT). No. of bitstreams: 1
000442552-Texto+Completo-0.pdf: 9370705 bytes, checksum: 8a3aef50bd6e373e63349d63858be524 (MD5)
Previous issue date: 2012 / Changes are inevitable during the product lifecycle. These changes are due different needs, such as the knowledge evolution of business processes, environment or infrastructure changes, etc. Under these circumstances, it is crucial to have the control about the knowledge of what these changes mean to the system. Impact analysis represents the process that creates this knowledge. The impact analysis has a wide meaning for software development, such as the assessment of source code structures or the control of project management constraints. This thesis aims to present a model to analyze the impact in source code using ontologies in order to improve precision and recall of the identified source code structures compared to existing techniques. The use of ontologies integrates a semantic layer under the traditional techniques founded in syntactic analysis. To develop the impact analysis model, it was defined two different sub models: traceability and probability. The traceability model receives as input the source code and domain ontology and generates a traceability ontology populated with links between domain concepts (classes and properties) and source code units (classes, methods and attributes). These links are populated by a lexical and semantic analyzer that categorize, normalize (token generation, expansion and elimination) and compare (stemming) each token. With the traceability ontology and a change request, the probabilistic model classifies each traceability link using Bayesian Belief Networks. To the probability calculus, the node classification used the Google PageRank algorithm and the arrows used frequency analysis TFIDF and conceptual dependency, defined in this thesis. The impact analysis model was implemented as an Eclipse plugin and was empirically evaluated using three controlled experiments. / Mudanças são inevitáveis durante o ciclo de vida do software. Estas mudanças são resultado de diferentes necessidades, como a evolução do conhecimento sobre os processos de negócio, alterações de ambiente, etc. Nestas circunstâncias, é crucial ter controle sobre o que essas mudanças representam na aplicação. A análise de impacto representa o processo que gera este conhecimento. Essa análise possui um significado abrangente dentro do desenvolvimento de software, incluindo desde a identificação de estruturas no código fonte até o controle das restrições de gestão de projeto. Esta tese apresenta um modelo para analisar o impacto no código fonte de uma aplicação utilizando ontologias, visando melhorar a precisão e revocação de estruturas identificadas se comparadas a técnicas existentes. O uso de ontologias integra uma perspectiva semântica nas técnicas tradicionalmente baseadas na análise sintática do código fonte. Para o desenvolvimento do modelo de análise de impacto, foram definidos dois submodelos: o de rastreabilidade e o de probabilidade.O modelo de rastreabilidade recebe como entrada o código fonte e uma ontologia de domínio e gera como resultado uma ontologia de rastreabilidade populada automaticamente com elos entre conceitos do domínio (classes e propriedades) e estruturas do código (classes, métodos e atributos). Estes elos são populados através de um analisador léxico e semântico que realiza a categorização, normalização (geração de tokens, expansão e eliminação) e comparação (stemming). Com base na ontologia de rastreabilidade e em um requisito de mudança, o modelo probabilístico classifica cada elo de rastreabilidade utilizando o modelo de Redes de Crenças Bayesianas. Para o cálculo de probabilidade, a classificação dos nodos utilizou o algoritmo PageRank do Google e das arestas, a análise de frequência TFIDF e a dependência conceitual, definida nesta tese. Este modelo de análise de impacto foi implementado como um plugin do eclipse e foi avaliado empiricamente através de três experimentos controlados.

Identiferoai:union.ndltd.org:IBICT/urn:repox.ist.utl.pt:RI_PUC_RS:oai:meriva.pucrs.br:10923/1493
Date January 2012
CreatorsNoll, Rodrigo Perozzo
ContributorsRibeiro, Marcelo Blois
PublisherPontifícia Universidade Católica do Rio Grande do Sul, Porto Alegre
Source SetsIBICT Brazilian ETDs
LanguagePortuguese
Detected LanguagePortuguese
Typeinfo:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/doctoralThesis
Sourcereponame:Repositório Institucional da PUC_RS, instname:Pontifícia Universidade Católica do Rio Grande do Sul, instacron:PUC_RS
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.002 seconds