Durante todo o processo de desenvolvimento de software,
a qualidade é algo que deve estar presente em todos os momentos,
e, em relação aos requisitos, isso não é diferente.
Podemos estabelecer a seguinte relação entre qualidade e requisitos:
qualidade é estar em conformidade com os requisitos.
A especificação de requisitos funcionando como um artefato base
para expressar claramente os requisitos e as suas tratativas,
precisa ter algumas características para poder refletir a qualidade.
A primeira delas é a correção.
Uma especificação é considerada correta se cada requisito é essencial
para o desenvolvimento do software.
Temos, também, a precisão.
Uma especificação é precisa quando todos entendem os requisitos da mesma forma.
Além dela, temos a completude.
Uma aplicação é considerada completa se abranger todos os requisitos
em relação a funcionalidade, desempenho e restrições.
E não para por aí, vamos falar de consistência.
Uma especificação é consistente se um requisito não entrar em conflito com outro.
Já na priorização, os requisitos devem ser priorizados conforme sua importância
e possibilidade de alteração.
Na verificação, uma especificação deve refletir,
por meio de um processo de verificação, o que foi implementado no software.
Não podemos esquecer da modificação.
Aqui, não devemos encontrar redundâncias na especificação,
sendo possível alterá-la de modo fácil, completo e consistente.
E, por fim, nós temos a rastreabilidade.
Uma especificação deve permitir a localização da origem
e quais são os resultados ou consequências dos requisitos.
Quando não observamos as características que entregam qualidade
em uma especificação de requisitos,
estamos contribuindo para um sistema de baixa qualidade
e esse, definitivamente, não é o caminho.