Requisitos não-funcionais
• Propriedades de um software, como
manutenibilidade, usabilidade, desempenho,
custos e várias outras
• São exemplos de requisitos não-funcionais:
– "a base de dados deve ser protegida para acesso
apenas de usuários autorizados".
– "o tempo de resposta do sistema não deve
ultrapassar 30 segundo".
– "o software deve ser operacionalizado no sistema
Linux"
– "o tempo de desenvolvimento não deve
ultrapassar seis meses".
Estudo de viabilidade
• Decide se o sistema proposto é vantajoso e lucrativo.
• Deve verificar se:
– O sistema contribui para os objetivos organizacionais.
– O sistema pode ser construído com a tecnologia corrente e
com o orçamento disponível.
– O sistema pode ser integrado com os outros sistemas em
utilização.
• Questões a serem respondidas por clientes e
usuários:
– E se o sistema não for implementado?
– Quais os problemas atuais?
– Como o sistema irá ajudar?
– Quais serão os problemas de integração?
– Novas tecnologias são necessárias? Quais habilidades?
– Quais facilidades deve ser providas pelo sistema proposto?
Engenharia de Software, Jair C Leite
Levantamento de requisitos
• Obter os requisitos dos especialistas no
domínio – clientes e usuários
• Principal problema: comunicação
– Usuários e especialistas não compartilham o
mesmo vocabulário
• Técnicas de Comunicação
– Entrevistas
– Observação direta
– Encontros
Análise de requisitos
• A análise possui dois propósitos:
– Permite julgamentos sobre a qualidade dos
requisitos do sistema
– Elaborar um modelo de alto-nível do sistema com
os principais componentes e suas interfaces
• Abordagens para a análise
– Análise Estruturada
– OMT
– UML: Casos de Uso e Diagramas de classes
Gerenciamento de requisitos
• Requisitos mudam durante e depois do
desenvolvimento (média de 1%/mês)
• Causas:
– Novas necessidades de clientes e usuários
– Mudanças na tecnologia utilizada
– Mudanças em leis, normas ou padrões
• As mudanças nos requisitos podem causar
impacto nos requisitos relacionados
• As técnicas de gerenciamento visam rastrear
e controlar estas mudanças
Documentação
• Normas e padrões
– ANSI/IEEE STD 830-1993
– MIL-STD-2167A e MIL-STD-498
• Tópicos comuns
– Descrição geral
– Interfaces externas
– Requisitos funcionais
– Requisitos de desempenho
– Restrições de design
– Atributos de qualidade