Análise de Impacto de Mudanças de Software

Propaganda
Análise de Impacto de Mudanças de Software
Gilson Pereira dos Santos Júnior
Universidade Federal de Campina Grande
Departamento de Sistemas e Computação
Disciplina: Mineração de Dados
Professor: Marcus Sampaio
A realização de uma mudança em um software orientado a objetos pode desencadear
muitas outras modificações no sistema, devido à dependência e inter-relacionamento entre
as classes. Esse fato justifica a importância de analisar o impacto das ações.
Nesse contexto, o emprego de técnicas de mineração de dados pode induzir, de
maneira automática, um modelo que retrate o impacto das mudanças de software a serem
realizadas.
Tal tarefa consiste em efetuar uma análise de associação entre as classes que
participaram do mesmo commit (classes que têm o mesmo autor e foram “salvas” na mesma
janela de tempo) com intuito de “responder duas questões relacionadas a acoplamento de
mudanças: (q1) quais classes mudam juntas frequentemente ao longo do desenvolvimento
de um sistema?; e (q2) se uma classe mudar, qual a probabilidade que outras classes
também mudem?. A solução do problema envolve achar a resposta para as duas questões,
a um custo aceitável”. [Hat07]
Para responder as seguintes questões, julgasse necessário o emprego de algoritmos de
extração de regras de associação. Visando verificar a viabilidade da análise associativa foi
empregado o algoritmo Apriori no o arquivo de dados .jfreechart ( disponível em
http://www.dsc.ufcg.edu.br/~sampaio/cursos/2007.2/PosGraduacao/MineracaoDeDados/Pr
ojetos/Projeto1/Dados/jfreechart.rar ) após a preparação e transformação dos dados. Nesta
análise inicial, identificou-se regras do tipo:
REGRA
1:
ChartFactory.java
ChartMouseEvent.java
3
==>
ChartMouseListener.java
ChartPanel.java
ChartRenderingInfo.java
ChartUtilities.java 3
conf:(1)
Ou seja, todas as vezes que ocorreram mudanças nas classes ChartFactory,
ChartMouseEvent modificações nas classes ChartMouseListener, ChartPanel,
ChartRenderingInfo, ChartUtilities também tiveram que ser realizadas. Resultado
com 100% de confiabilidade.
Assim observa-se que é possível efetuar a análise de mudanças com algoritmos de
mineração de dados.
Referências Bibliográficas
[Hat07] Hattori, Lile. Análise de Impacto de Mudanças de Software. Disponível em
http://www.dsc.ufcg.edu.br/~sampaio/cursos/2007.2/PosGraduacao/MineracaoDeDados/Pr
ojetos/Projeto1/Apresentacao.htm
Download