Defesa de Estágio Análise automática de impacto causado por mudanças em sistemas de software João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 1 Roteiro • • • • • Introdução Contextualização O Problema A Solução – Impala Considerações finais 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 2 Introdução • Onde? • Laboratório do Grupo de Métodos Formais • Projeto DesignChecker • Quem esteve envolvido? • • • • • João Arthur Jemerson Damásio Lile Hattori Geovani Santagelo – CPM Braxis Dalton Serey 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 3 Contextualização • Requisitos mudam com frequência • Código em constante evolução • Estimar precisamente custos de mudanças • Alocação de recursos • Estimar prazos • Diminuir prejuízos • Estimativa de custo/tempo 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 4 Contextualização • Estimativas buscam analisar o efeito das mudanças no sistema • Analisar a complexidade dos efeitos • Aplicar heurísticas • Obter custos 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 5 O Problema • Análise de impacto decorrente de mudanças no código dos sistemas é feita manualmente 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 6 A Solução - Impala • Suporte à estimativa de custo de mudanças em sistemas de software • Análise de custo = Análise de impacto + heurísticas para estimar custos • O que foi feito ? • Análise de impacto: Identificação no código das entidades impactadas 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 7 Impala - Funcionamento 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 8 Impala - Funcionamento • Uso do Design Wizard • Estruturação das entidades em árvore • Algoritmos com poda 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 9 Impala – Como foi feito • Estudo de Caso • Wepayu • Projetos da CPM Braxis • • • • Uso de testes de aceitação Testes de unidade Adaptação de XP XPlanner 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 10 Considerações Finais • Dificuldades • Equipe Distribuída • Urgência nos requisitos • Modificar o Design Wizard para considerar relações de herança • Facilidades • Conhecer o Design Wizard • Equipe motivada • Motivação pela existência de clientes da solução 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 11 Considerações • Nova versão do Design Wizard foi desenvolvida • Inclusão do cliente no processo de desenvolvimento é primordial • O desenvolvimento da ferramenta será continuado no projeto DesignChecker • Aliar a análise a heurísticas • Uso do histórico do CVS 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 12 Agradecimentos • • • • • • Dalton Serey Lile Hattori Geovani Santagelo Jemerson Damásio À Banca Aos amigos 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 13 Dúvidas? 08/10/2007 João Arthur Brunet Monteiro GMF/DSC/CEEI/UFCG 14