PSP e métodos ágeis na melhoria da qualidade em produção de software: um estudo de caso

Detalhes bibliográficos
Ano de defesa: 2006
Autor(a) principal: Silva, Renato Afonso Cota
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Viçosa
BR
Metodologias e técnicas da Computação; Sistemas de Computação
Mestrado em Ciência da Computação
UFV
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: http://locus.ufv.br/handle/123456789/2596
Resumo: Há vários problemas com a Engenharia de Software que é realizada atualmente, principalmente em se tratando de pequenas e médias empresas, que não possuem capital suficiente para implantar grandes processos de produção de software e menos ainda para se submeterem à avaliação de maturidade segundo padrões internacionais. Isso reforça a idéia de que é necessário investir em processos de capacitação pessoais. Parte dos problemas com a qualidade final de produtos de software derivam do fato de se confiar ou delegar aos testes finais a responsabilidade pela qualidade. Conforme comprovado na literatura, detectar e remover defeitos a partir dos testes é mais caro, não efetivo e imprevisível. A forma mais efetiva de gerenciar a qualidade do software é focar na remoção de defeitos antes de eles serem inseridos, se possível no mesmo passo de desenvolvimento em que essa inserção aconteceria. Um dos grandes problemas da qualidade do software é o não entendimento dos requisitos de usuário por parte dos programadores, os quais na codificação desenvolvem códigos que não satisfazem aos interesses dos usuários a esses requisitos. Neste trabalho descreve-se a obtenção de um processo híbrido para a produção de software de qualidade, aplicável no nível pessoal, a partir da interseção de dois processos de origens diferentes, mas que têm como foco principal o desenvolvimento de software no nível de competência individual. São eles o PSP (Personal Software Process ), que é baseado nos Métodos Dirigidos por Planejamento, e o TDD (Test Driven Development ) que é baseado nos Métodos Ágeis, sendo que os dois são aplicáveis ao nível individual ou dos programadores. A combinação desses dois processos gerou um processo híbrido, chamado de PSPm. A principal característica do PSPm é a adição da técnica test-first oriunda do TDD na fase de projeto do PSP. Ou seja, os programadores escrevem os testes na fase de projeto e não na fase de testes, como propõe o PSP original. O PSPm foi aplicado e testado em sala de aula por alunos do curso de Ciência da Computação da Universidade Federal de Viçosa que cursavam a disciplina Engenharia de Software I. Os resultados da aplicação do PSPm foi comparado aos resultados de aplicação do PSP que havia sido aplicado em turma semelhante no ano anterior. Resultados da análise desenvolvida indicam que o uso do PSPm possibilitou a injeção de um menor número médio de erros na fase de projeto e resultou em um menor tempo médio para se testar o software. Com o intuito de validar os resultados, foi utilizada a técnica estatística de Testes por Reamostragem conhecida como bootstrap aplicada aos dados coletados. Ficou evidenciada uma redução na quantidade de defeitos no projeto com a utilização do PSPm.