A rastreabilidade é a capacidade de rastrear um elemento de projeto para outros elementos de projeto relacionados,
especialmente aqueles relacionados a requisitos. Os elementos de projeto envolvidos na rastreabilidade são chamados de itens de rastreabilidade. Os itens de rastreabilidade típicos incluem
diferentes Tipos de
Requisitos, elementos de modelo de análise e design, produtos de trabalho de teste e materiais de treinamento e
documentação de suporte ao usuário final, como mostra a figura a seguir.
A hierarquia da rastreabilidade.
Cada item de rastreabilidade tem seu próprio conjunto exclusivo de atributos associados (Consulte: Atributos de Requisitos), que é útil para rastrear o status, o
benefício, o risco, etc. associado a cada item.
A finalidade de estabelecer a rastreabilidade é ajudar a:
-
Compreender a origem dos requisitos
-
Gerenciar o escopo do projeto
-
Gerenciar mudanças nos requisitos
-
Avaliar o impacto no projeto da mudança em um requisito
-
Avaliar o impacto de um defeito de teste nos requisitos (ou seja, se o teste falhar, talvez o requisito não seja
atendido)
-
Verificar se todos os requisitos do sistema são desempenhados pela implementação
-
Verificar se o aplicativo faz apenas o que era esperado que ele fizesse.
A rastreabilidade ajuda a compreender e gerenciar como as entradas dos requisitos, como Regras de
Negócios e Pedidos dos Envolvidos, são convertidas em um conjunto das principais
necessidades dos envolvidos/usuários e dos recursos do sistema, conforme especificado no documento de Visão. O Modelo
de Caso de Uso, por sua vez, descreve como esses recursos são convertidos na funcionalidade do sistema. Os detalhes
de como o sistema interage com o mundo externo são capturados nos Casos de
Uso, com outros requisitos importantes, como requisitos não funcionais e restrições de design nas Especificações Suplementares. A rastreabilidade também lhe permite
acompanhar como essas especificações detalhadas são traduzidas em um design, como elas são testadas e como elas são
documentadas para o usuário. Para um sistema grande, os Casos de
Uso e as Especificações Suplementares podem ser empacotados juntos para
definir uma SRS (Especificação dos Requisitos de Software) para um "recurso"
específico ou outro agrupamento de subsistemas.
Um conceito-chave para ajudar a gerenciar as alterações feitas nos requisitos é o de um link de rastreabilidade
"suspeito". Quando um requisito (ou outro item de rastreabilidade) é alterado em qualquer extremidade de um link de
rastreabilidade, todos os links associados a esse requisito são marcados como "suspeitos". Isso é uma marca para que a
função responsável analise a mudança e determine se os itens associados precisarão mudar também. Esse conceito também
ajuda a analisar o impacto de mudanças potenciais.
As rastreabilidades podem ser configuradas para ajudar a responder o seguinte conjunto de questões de exemplo:
-
Mostre-me as necessidades dos usuários que não foram vinculadas a recursos do produto.
-
Mostre-me o status dos testes em todos os casos de uso na interação #n.
-
Mostre-me todos os requisitos suplementares vinculados a testes que possuem status não testado.
-
Mostre-me os resultados de todos os testes que falharam, em ordem de importância.
-
Mostre-me os recursos planejados para esta liberação, quais necessidades de usuários eles satisfazem e o status
deles.
Exemplo:
Para o sistema de uma Máquina de Reciclagem, o documento de Visão especifica o seguinte recurso:
Esse recurso é rastreado para um caso de uso "Incluir Novo Tipo de Recipiente":
Essa rastreabilidade nos ajuda a verificar se todos os recursos foram contabilizados nos casos de uso e nas
especificações suplementares.
Os itens de rastreabilidade mais importantes são:
Outros elementos, como Regras de Negócios e Problemas, também podem ser úteis para rastreio.
Uma rastreabilidade típica é mostrada no diagrama abaixo:
Esse diagrama mostra apenas a rastreabilidade para requisitos. Também é possível existir outra rastreabilidade,
mas não é mostrada nesse diagrama: os elementos de design são rastreados para os elementos de implementação, existem
casos de teste para design e implementação, etc.
|