Hoje falaremos do processo de Verificação (VER), apresentado na parte 4 do Guia de Implementação do MPS-BR (Melhoria de Processo de Software Brasileiro).
Como dito no meu post anterior sobre o processo de Validação (VAL) no SCRUM, os conceitos que envolvem este e a Verificação são complementares e podem ser facilmente ser confundidos um com o outro. Enquanto a Validação se preocupa em desenvolver o software correto, a Verificação se preocupa em desenvolvê-lo corretamente.
No contexto do desenvolvimento de software, a Verificação se mostra útil já que promove a detecção de defeitos em antemão e ao mesmo tempo procura garantir que todos os requisitos estão sendo atingidos. Em metodologias como o SCRUM, onde o desenvolvimento é realizado de maneira incremental, existe uma necessidade importantíssima de se definir um processo de Verificação que envolva garantir que os produtos de trabalho de uma certa fase estão consistentes com os requisitos não só da fase atual, mas também das anteriores.
As técnicas geralmente utilizadas para este fim são a Revisão por Pares e a Execução de Testes:
A Revisão por pares é um método estático, e portanto sem execução de código, no qual o artefato objeto da verificação é examinado por qualquer integrante da equipe, exceto o autor do mesmo, utilizando critérios objetivos, definidos em antemão. Este método pode ser utilizado, por exemplo na definição de histórias do product Backlog ao nos depararmos com a seguinte pergunta: a história que está sendo adicionada cumpre os requisitos definidos de História Pronta? Para checar, podemos realizar uma revisão por pares, utilizando um checklist.
Os testes são métodos dinâmicos que tem como objetivo examinar o comportamento do software por meio de sua execução. Este assunto não será tratado em detalhes, pois já foi abordado em posts anteriores. No contexto do SCRUM, a verificação por testes pode ser utilizada, por exemplo, no final de cada sprint com o objetivo de examinar se o que foi agregado ao produto gerou algum tipo de inconsistência com o que foi feito nas sprints anteriores.
Este post mostrou, resumidamente, alguns aspectos importantes do processo de Verificação e exemplos de sua utilização junto com o SCRUM. Em meu próximo post será abordado outro processo do Guia de Implementação do MPS e seus possíveis usos no SCRUM.