Casos de Teste: Importância da rastreabilidade entre requisitos

Veja nesse artigo como estabelecer mecanismos de rastreabilidade para garantir que os requisitos sejam atendidos pelo sistema e permitir avaliar o impacto de alterações nos requisitos e os casos de teste.

Fique por dentro
A rastreabilidade dos requisitos de software é uma atividade da gerência de requisitos e está associada à qualidade do desenvolvimento de software. Uma decisão importante que deve ser definida no início do projeto está relacionada ao nível de rastreabilidade que será mantido para atender os objetivos do software. O planejamento da rastreabilidade deve adotar uma abordagem que permita facilitar o processo de desenvolvimento de software e não restringi-lo.

Uma das grandes dificuldades no desenvolvimento de software é a gerência de requisitos, pois é necessário manter o acompanhamento dos requisitos individuais e manter a ligação dos requisitos dependentes, pois a alteração de um requisito pode afetar outros requisitos, regras de negócio relevantes e arquitetura do sistema.

Consequentemente, os casos de testes são comprometidos e a entrega do software pode não atender a expectativa do cliente, além de conter erros de validação e verificação.

Este artigo apresenta ao leitor um modelo que permite manter a rastreabilidade entre requisitos e casos de teste. O propósito deste modelo é estabelecer mecanismos de rastreabilidade para garantir que os requisitos sejam atendidos pelo sistema e permitir avaliar o impacto de alterações nos requisitos que podem implicar em modificações nos artefatos de projeto, no código e de maneira particular nos casos de teste.

Teste pode ser definido como uma atividade que tem por objetivo verificar se o software produzido está de acordo com sua especificação e se satisfaz as expectativas do cliente. Teste de software é parte integrante do processo de Validação e Verificação (V&V) da Engenharia de Software.

Sendo que, verificação refere-se ao conjunto de tarefas que garantem que o software implementa corretamente uma função específica, e validação refere-se ao conjunto de tarefas que asseguram que o software foi criado e pode ser rastreado segundo os requisitos do cliente. A definição de V&V abrange muitas atividades de garantia da qualidade de software [4].

Das atividades de verificação e validação, a atividade de teste é considerada um elemento crítico para garantia da qualidade. Um problema na atividade de teste de software esta relacionado a como determinar se um programa P foi suficientemente testado e pode ser liberado para os usuários com razoável confiança de que funcionará de modo aceitável.

O significado de aceitável varia para uma aplicação específica em função da criticidade das funções, consequências antecipadas de um mau funcionamento e da frequência de uso esperada. Apesar dos esforços na utilização de modelos de melhoria de processos em organizações de desenvolvimento de software, os padrões para determinar a adequação da atividade de teste são praticamente inexistentes. Um conjunto de problemas no processo de teste que devem ser evitados são:

  • Cronogramas agressivos deixando a equipe de teste impossibilitada de completar os testes planejados devido à falta de recursos, equipe não qualificada e falta de tempo;
  • Falta de rastreabilidade de casos de teste entre diferentes versões do sistema, dificultando o reuso e repetição dos testes após modificações nos requisitos;
  • Testes manuais, pois há um grande esforço da equipe de testes a cada início de uma nova atividade de teste, consequentemente quando o software sofre manutenção e a documentação não é atualizada;
  • Ambiente de teste diferente do ambiente de produção;
  • Ausência de critérios para seleção dos casos de teste, definição da sua completude e estabelecimento de um ponto de parada." [...] continue lendo...

Artigos relacionados