O documento descreve uma pesquisa sobre o efeito das taxas de revisão no processo de desenvolvimento de software. Foram analisados dados de 617 programas desenvolvidos no Personal Software Process (PSP). Os resultados mostram que taxas de revisão menores que 200 linhas de código por hora são mais eficazes na detecção de defeitos, identificando quase dois terços dos problemas.
T@rget trust curso de introdução ao processo de teste de software
Apresentação artigo teste software 26042010
1. Teste de Software_1Q_2010
Teste de Software
The Impact of Design and Code Reviews
on Software Quality: An Empirical Study Based
on PSP Data
Kemerer, C.; Paulk, M, C.
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING - VOL. 35, NO. 4, JULY/AUGUST 2009
Preparado por:
Fábio Franzotti São Paulo, 26 de abril de 2010.
2. Conteúdo do documento Teste de Software_1Q_2010
• Abstract
• Atividades de Produção e Revisão de software
• Personal Software Process (PSP)
• Metodologia Utilizada
• Análise
• Objetivos e Conclusões
3. Abstract Teste de Software_1Q_2010
• Esta pesquisa investiga o efeito da taxa de eficácia na revisão e remoção de
defeitos e da qualidade no produto de software, enquanto controlando um número
de fatores confrontantes.
• Foram analisados dois conjuntos de 371 e 246 programas, respectivamente, do
processo pessoal de software (PSP) onde a análise foi feita tanto utilizando a
regressão como modelos mistos.
• Atividades de revisão no processo PSP são aqueles passos desempenhados pelo
desenvolvedor em um processo tradicional de inspeção.
• Os resultados mostram que a taxa de revisão do PSP é um fator significante que afeta
a efetividade na remoção dos defeitos, mesmo depois de contabilizar a habilidade do
desenvolvedor e outras variáveis significantes.
• A taxa recomendada de revisão de 200 LOC/hora ou menos foi descoberta como
sendo uma taxa efetiva para as revisões individuais, identificando quase dois
terços dos defeitos nas revisões de projeto e mais do que metade dos defeitos na
revisão de código.
4. Conteúdo do documento Teste de Software_1Q_2010
• Abstract
• Atividades de Produção e Revisão de software
• Personal Software Process (PSP)
• Metodologia Utilizada
• Análise
• Objetivos e Conclusões
5. Atividades de Produção e Revisão de software Teste de Software_1Q_2010
• A atividade de produção (Production Activity) gera um produto de trabalho inicial (Initial Work Product) cuja
qualidade, baseado nos defeitos injetados durante essa atividade (Intected Defects) depende do esforço
empregado na produção (Production Effort), do trabalho empregado no produto anterior (Predecessor Work
Product), da tecnologia utilizada e da capacidade do desenvolvedor
• O produto dessa atividade de produção pode ser revista (Review) para capturar e remover os defeitos. A
eficácia dessa revisão (Reviewed Work Product) depende do tamanho e qualidade do produto do trabalho
inicial, da capacidade do desenvolvedor e do esforço envolvido na revisão
• Dada uma medida do número de defeitos no momento da revisão, essa eficácia é medida através do
número de defeitos que não foram verificados (Escaped Defects)
6. Conteúdo do documento Teste de Software_1Q_2010
• Abstract
• Atividades de Produção e Revisão de software
• Personal Software Process (PSP)
• Metodologia Utilizada
• Análise
• Objetivos e Conclusões
7. Personal Software Proccess (PSP) Teste de Software_1Q_2010
• O Personal Software Process (PSP) é um processo estruturado de
desenvolvimento de software que visa auxiliar o desenvolvedor a entender e
melhorar o seu desempenho de forma disciplinada e “orientado a dados”.
• É baseado nos princípios do CMM.
• No PSP um defeito é um erro que faz com que o sistema ou componente falhe ao
executar uma determinada função.
• Conforme o artigo: “… enquanto defeitos em outros contextos podem ser
categorizados por sua severidade, no PSP defeitos não são meros cosméticos …”
• Por implementar um processo bem definido e instrumentado é bastante utilizado
em pesquisas
11. Conteúdo do documento Teste de Software_1Q_2010
• Abstract
• Atividades de Produção e Revisão de software
• Personal Software Process (PSP)
• Metodologia Utilizada
• Análise
• Objetivos e Conclusões
12. Metodologia Utilizada Teste de Software_1Q_2010
1. Coleta de dados de classes de PSP ministradas por instrutores certificados da
SEI-CMU, relativo ao processo de revisão de design e codificação (Assigments 7A
e 10A)
2. Validação e “Limpeza” dos dados coletados, baseado em comparação com dados
e observações de estudos anteriores, juntamente com a restrição para as
linguagens que mais utilizam PSP no mercado (C e C++)
3. Definição do modelo de qualidade a ser avaliado (baseado nas Atividades de
Produção e Revisão):
1. Software quality = f(Developer ability, Technology, Requirements quality,
Design quality, Code quality)
2. Review effectiveness = f(Developer ability, Technology, Review rate)
4. Operacionalização das variáveis
5. Modelagem e análise estatística dos dados
13. Conteúdo do documento Teste de Software_1Q_2010
• Abstract
• Atividades de Produção e Revisão de software
• Personal Software Process (PSP)
• Metodologia Utilizada
• Análise
• Objetivos e Conclusões
17. Conteúdo do documento Teste de Software_1Q_2010
• Abstract
• Atividades de Produção e Revisão de software
• Personal Software Process (PSP)
• Metodologia Utilizada
• Análise
• Objetivos e Conclusões
18. Objetivos e Conclusões Teste de Software_1Q_2010
• Esta pesquisa investiga o efeito da taxa de eficácia na revisão e remoção
de defeitos e da qualidade no produto de software, enquanto controlando Objetivo
um número de fatores confrontantes.
• Foram analisados dois conjuntos de 371 e 246 programas,
respectivamente, do processo pessoal de software (PSP) onde a análise foi
feita tanto utilizando a regressão como modelos mistos.
• Atividades de revisão no processo PSP são aqueles passos
desempenhados pelo desenvolvedor em um processo tradicional de
inspeção.
• Os resultados mostram que a taxa de revisão do PSP é um fator significante
que afeta a efetividade na remoção dos defeitos, mesmo depois de
contabilizar a habilidade do desenvolvedor e outras variáveis significantes.
Conclusões
• A taxa recomendada de revisão de 200 LOC/hora ou menos foi descoberta Principais
como sendo uma taxa efetiva para as revisões individuais, identificando
quase dois terços dos defeitos nas revisões de projeto e mais do que
metade dos defeitos na revisão de código.