METACOM<br />Gabriel de Souza Pereira Moreira - ITA<br />Roberto Pepato Mellado - ITA<br />Prof. Adilson Marques da Cunha ...
Agenda<br />Manutenção de Software<br />Qualidade de Produto de Software<br />Métricas de Software<br />Trabalhos sobre Ma...
Manutenção de Software<br />23:51<br />3<br />
Qualidade de Produto x Manutenção de Software <br /><ul><li>Aumento do ciclo de vida do software implica em tempo estendid...
Segundo [Jones 2008], os maiores responsáveis pelo aumento do custo de manutenção relacionam-se ao tamanho, complexidade e...
Qualidade de Produto<br />ISO/IEC 25000:2005 - Software QualityRequirementsandEvaluation(SQuaRE)<br />Qualidade no ciclo d...
Modelo de Qualidade Interna / Externa [ISO/IEC 25000]<br />Manutenibilidade<br />23:51<br />6<br />
Métricas de Produto OO<br />23:51<br />7<br />
Trabalhos sobre Manutenibilidade<br />Em sua maior parte, relacionam métricas de produto à análise subjetiva de manutenibi...
METACOM<br />Processo de ETL de métricas de produto e de volume de manutenção<br />Aplicável a projetos em desenvolvimento...
Estudo de Caso<br />Métricas de produto de software podem ser utilizadas para indicar classes com maior volume de manutenç...
Projetos Considerados<br />Projetos considerados no estudo de caso<br />* Revisão – Identificador único de um conjunto de ...
Implementação do METACOM<br />23:51<br />12<br />
23:51<br />Exemplo da Estratégia de Análise do METACOM<br />Mês<br />Fev     Mar     Abr     Mai    JunJulAgo   Set   Out ...
Métricas de Volume de Manutenção<br />23:51<br />14<br />
Base de dados<br />Medidas de Produto<br />484.200 registros (Produto x Classes x Revisões)<br />Histórico de Manutenção<b...
Correlações entre Métricas de Produto e Volume de Manutenção<br />Resultados Obtidos<br />23:51<br />Correlação de Postos ...
Volume de Manutenção<br />X<br />Análise e Discussão dos Resultados<br />23:51<br />17<br />
Limitações do Experimento<br />Realizado com dois produtos de software desenvolvidos pela mesma empresa, na mesma platafor...
Conclusões<br />Concepção do METACOM, com objetivo de identificar métricas com potencial de indicar classes com propensão ...
Recomendação e Sugestão para Trabalhos Futuros<br />Utilização de regressão linear multivariada para compor índices de est...
Aprovados<br />Moreira, G. S. P., Mellado, R. P., Montini, D. A., Dias, L. A. V., Cunha, A. M. “Software Product Measureme...
Upcoming SlideShare
Loading in …5
×

METACOM – Uma análise de correlação entre métricas de produto e propensão à manutenção

1,356 views

Published on

Artigo apresentado no SBQS 2011 - Simpósio Brasileiro de Métodos Ágeis, em Curitiba no dia 08/06/2011.


Abstract: Considerando-se que as características de qualidade de um software
influenciam no esforço de sua manutenção, este artigo apresenta um Método
para Análise de Correlação entre Métricas de Produto de Software e
Propensão à Manutenção denominado METACOM. O método proposto define
um processo de extração, transformação e carga de métricas de software
orientado a objetos e de volume de manutenções. O METACOM é composto
por um modelo de análise de correlação entre as medidas obtidas, visando
identificar métricas de produto mais preditivas. Descrevem-se também a
aplicação do METACOM na análise de projetos reais da indústria de software
e as considerações de especialistas sobre os principais resultados.

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,356
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
6
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

METACOM – Uma análise de correlação entre métricas de produto e propensão à manutenção

  1. 1. METACOM<br />Gabriel de Souza Pereira Moreira - ITA<br />Roberto Pepato Mellado - ITA<br />Prof. Adilson Marques da Cunha - ITA<br />Prof. Luiz Alberto Vieira Dias - ITA<br />Um Método para Análise de Correlação entre Métricas de Produto de Software e Volume de Manutenção<br />23:51<br />
  2. 2. Agenda<br />Manutenção de Software<br />Qualidade de Produto de Software<br />Métricas de Software<br />Trabalhos sobre Manutenibilidade<br />METACOM<br />Estudo de Caso<br />Análise e Discussão dos Resultados Obtidos<br />Limitações<br />Conclusões, Recomendações e Trabalhos Futuros<br />23:51<br />2<br />
  3. 3. Manutenção de Software<br />23:51<br />3<br />
  4. 4. Qualidade de Produto x Manutenção de Software <br /><ul><li>Aumento do ciclo de vida do software implica em tempo estendido de manutenção, aumentando a importância da qualidade do produto [Blanc 2009]
  5. 5. Segundo [Jones 2008], os maiores responsáveis pelo aumento do custo de manutenção relacionam-se ao tamanho, complexidade e idade do software</li></ul>[Ware 2007], [Ahn 2003], [ISO 25000]<br />23:51<br />4<br />
  6. 6. Qualidade de Produto<br />ISO/IEC 25000:2005 - Software QualityRequirementsandEvaluation(SQuaRE)<br />Qualidade no ciclo de vida de um produto de software [ISO/IEC 9126-1/25000]<br />23:51<br />5<br />
  7. 7. Modelo de Qualidade Interna / Externa [ISO/IEC 25000]<br />Manutenibilidade<br />23:51<br />6<br />
  8. 8. Métricas de Produto OO<br />23:51<br />7<br />
  9. 9. Trabalhos sobre Manutenibilidade<br />Em sua maior parte, relacionam métricas de produto à análise subjetiva de manutenibilidade[Kafura 1987], [Oman1992], [Riaz 2009].<br />Deste grupo de trabalhos, destaca-se o Maintainability Index (MI) [Oman 1992], [Oman1994] e [Welker 1995]<br />Outros trabalhos avaliam a manutenibilidade de forma objetiva relacionando, por exemplo, métricas de produto de uma versão com o volume de manutenção observado após esta versão [Ware2007]<br />MI = 171-5.2* ln(aveV)-0.23 * aveV(g')-16.2 * ln (aveLoC)-50 * sin(sqrt(2.4*perCM))<br />23:51<br />8<br />
  10. 10. METACOM<br />Processo de ETL de métricas de produto e de volume de manutenção<br />Aplicável a projetos em desenvolvimento, manutenção ou finalizados<br />Requisitos:<br />Sistema de Controle de Versão<br />IssueTracker<br />Mecanismo de rastreabilidade entre modificações e casos de uso ou defeitos<br />23:51<br />9<br />
  11. 11. Estudo de Caso<br />Métricas de produto de software podem ser utilizadas para indicar classes com maior volume de manutenção<br />Quais funcionalidades do código possuem maior probabilidade de causar problemas no futuro, se não forem ajustadas agora?<br />Em que partes do código se deveria investir mais esforços em inspeções e testes?<br />Para quais partes do código deveriam ser atribuídos os esforços dos membros dos times mais habilidosos e experientes?<br />23:51<br />10<br />
  12. 12. Projetos Considerados<br />Projetos considerados no estudo de caso<br />* Revisão – Identificador único de um conjunto de alterações no código-fonte<br />Tamanho dos Produtos de Software<br />23:51<br />11<br />
  13. 13. Implementação do METACOM<br />23:51<br />12<br />
  14. 14. 23:51<br />Exemplo da Estratégia de Análise do METACOM<br />Mês<br />Fev Mar Abr Mai JunJulAgo Set Out Nov Dez Jan Fev Mar Abr<br />Revisão<br />1 3 12 35 40 62 97 <br />Caso de Uso 001<br />Métricas de Produto<br />Métricas de Volume de Manutenção<br />Classe A<br />Classe B<br />Desenvolvimento<br />Manutenção<br />Caso de Uso 002<br />Classe C<br />Classe D<br />Legenda<br />Período de Desenvolvimento<br />Período de Manutenção (Caso de Uso validado pelo cliente)<br />Alteração da Classe<br />Estratégia de Análise Exploratória<br />13<br />
  15. 15. Métricas de Volume de Manutenção<br />23:51<br />14<br />
  16. 16. Base de dados<br />Medidas de Produto<br />484.200 registros (Produto x Classes x Revisões)<br />Histórico de Manutenção<br />17.430 (Produto x Classes Modificadas em Revisões)<br />Amostra considerada<br />40 variáveis independentes (métricas de produto)<br />5 variáveis dependentes (métricas de volume de manutenção)<br />374 registros (classes)<br />23:51<br />15<br />
  17. 17. Correlações entre Métricas de Produto e Volume de Manutenção<br />Resultados Obtidos<br />23:51<br />Correlação de Postos de Spearman - Significância de 0.01<br />16<br />
  18. 18. Volume de Manutenção<br />X<br />Análise e Discussão dos Resultados<br />23:51<br />17<br />
  19. 19. Limitações do Experimento<br />Realizado com dois produtos de software desenvolvidos pela mesma empresa, na mesma plataforma (web) e tecnologia (ASP.NET e C#), com o mesmo processo (baseado em RUP).<br />Rastreabilidade entre modificações de código e casos de uso/defeitos depende de processo manual.<br />Manutenção avaliada apenas no nível de classes, a partir do momento em que o respectivo caso de uso é considerado em manutenção.<br />Tipos de Manutenção (Corretiva, Adaptativa, Preventiva e de Melhoria) não categorizados<br />23:51<br />18<br />
  20. 20. Conclusões<br />Concepção do METACOM, com objetivo de identificar métricas com potencial de indicar classes com propensão a um maior volume de manutenção<br />Implementação do METACOM em estudo de caso com dois produtos de software da indústria<br />Análise de correlações (método de Spearman) permitiu confirmar e invalidar expectativas prévias sobre o potencial preditivo de algumas métricas.<br />As métricas mais correlacionadas ao volume de manutenção referem-se aos aspectos tamanho, complexidade e acoplamento<br />O Índice de Manutenibilidade(MI), bastante citado, utilizado e recomendado pela SEI, não apresentou correlação representativa com volume de manutenção<br />23:51<br />19<br />
  21. 21. Recomendação e Sugestão para Trabalhos Futuros<br />Utilização de regressão linear multivariada para compor índices de estimativa de volume de manutenção futura, baseados em métricas de produto<br />Experimentação do METACOM em outras linguagens OO estaticamente tipadas (como Java, Object Pascal e C++) e dinâmicas (como Perl, Python, PHP, Javascript e Ruby).<br />23:51<br />20<br />
  22. 22. Aprovados<br />Moreira, G. S. P., Mellado, R. P., Montini, D. A., Dias, L. A. V., Cunha, A. M. “Software Product Measurement and Analysisin a Continuous Integration Environment”, ITNG, Abril 2010, Las Vegas, NE, EUA <br />Mellado, R. P., Moreira, G. S. P., Monteiro, R. L., Dias, L. A. V., Cunha, A. M. “An Empirical Analysis of eXtreme Programming Practicesand its Impact on Software Quality Metrics”, Workshop Brasileiro de Métodos Ágeis, Jun. 2011, Fortaleza, CE<br />Submetidos<br />Moreira, G. S. P., Monteiro, R. L., Mellado, R. P., Dias, Cunha, A. M, L. A. V. “Predicting Change and Error Proneness in OO Software CorrectiveMaintenance”, IEEE ICSM, Set. 2011, Williamsburg, EUA<br />Trabalhos relacionados<br />23:51<br />21<br />
  23. 23. ?<br />Perguntas<br />23:51<br />22<br />

×