Buscar

Engenharia de Software - requisitos funcionais e não-funcionais


Continue navegando


Prévia do material em texto

Profa. Fabrícia Damando
Engenharia de SW
Especificações de Requisitos e de Projeto
Profa. Fabrícia Damando
fabriciadamando@gmail.com
Requisitos
� Capacidades e condições que o sistema deve satisfazer
� Tipos de requisitos
� Funcionais
� Características, capacidades e segurança
� Não funcionais
� Usabilidade: fatores humanos, documentação
� Confiabilidade: recuperação da falhas, previsibilidade
Requisitos
� O importante do levantamento de requisitos é encontrar, 
comunicar e registrar o que é necessário.
� De que forma esses requisitos possam ser transmitidos ao cliente 
e aos desenvolvedores
� CASE USE – é uma técnica usada para entender e descrever os requisitos de 
um sistema
Papel dos modelos na especificação
- Cliente e Desenvolvedor
Domínio do 
Problema
Especificação
Especificação 
de Requisitos
Especificação 
de Projeto Geral
Especificação 
de Projeto Detalhado
- Cliente e Desenvolvedor
- Projetista e Implementador
- Programador
Especificação 
de Requisitos
Especificação 
de Projeto Geral
Especificação 
de Projeto Detalhado
Graus de formalidade das 
especificações ...
� Especificação informal: descrita em linguagem natural, 
fazendo uso de figuras, tabelas e outras notações.
� Especificação semiformal: apresenta notação padronizada 
sem uma semântica precisa.sem uma semântica precisa.
� Especificação formal: uso de rigor, notação sintática e 
semântica bem definidas para descrever o problema.
Engenharia de Requisitos
� “A parte individual mais difícil da construção de um 
sistema de software é decidir o que construir. Nenhuma 
parte do trabalho danifica tanto o sistema se for feita 
errada. Nenhuma outra parte é mais difícil de consertar 
depois.”depois.”
Fred Brooks –engenheiro de software‹
Objetivos:
� Descrever as principais atividades da engenharia de 
requisitos.
� Introduzir técnicas de obtenção e análise de requisitos.
� Descrever validação de requisitos.
� Discutir a importância da validação de requisitos e revisões � Discutir a importância da validação de requisitos e revisões 
de requisitos.
� Discutir a necessidade do gerenciamento de requisitos
Participantes 
� Desenvolvedores: 
� agem como indagadores, consultores e selecionadores 
de problemas. 
� Clientes: 
� procuram colocar de maneira clara os objetivos do 
software. 
Processo
� Requisito é qualquer NECESSIDADE do cliente que 
deve e pode ser atendida por um software.
� Fazem parte dos requisitos:
� Dados� Dados
� Processos
� Restrições do negócio
� Pessoas
� E o relacionamento entre os itens já mencionados.
Relembrando conceito de 
requisitos
� Todo requisito deve ser:
� Claro
� Completo
� Conciso
� Livre de ambigüidade� Livre de ambigüidade
� Exemplos (Para um hotel):
� Otimizar o tempo gasto pelo atendente ao demonstrar as 
atividades de lazer oferecidas pelo hotel.
� Automatizar o processo de confirmação de reserva.
� Oferecer a opção de confirmação de reserva via Internet. (mais 
específico!)
Tipos de Requisitos
� Diretos ou Funcionais: são aqueles que estabelecem 
quais necessidades que o cliente precisa e/ou 
deseja.
� Definem O QUE o software deve fazer.
� Exemplos:
� “Todo final de dia deve ser emitido um relatório das pessoas que 
acessaram o sistema.”
� “O sistema deve permitir a consulta de informações dos clientes 
em bases de dados de parceiros (ex.SPC,SERASA).”
� Indiretos ou Não-Funcionais: são qualidades 
esperadas que o software atenda, tais como: 
manutenção, segurança, escalabilidade, 
performance, amigabilidade, etc.
� Exemplos:
� “O software deve ser capaz de ser instalado em Windows e 
Linux.”
� Os usuários devem possuir diferentes níveis de acesso ao 
módulo de finanças.”
� O sistema deve solicitar ao usuário a troca da senha de acesso a 
cada 3 semanas
Documento - exemplo
Detalhando a engenharia de 
requisitos
� Estudo de viabilidade
� Decide o que vale a pena ser desenvolvido
� Contribui para os objetivos da organização
� Pode ser implementado com tecnologia dentro do orçamento
� Pode ser integrado com outros sistemas � Pode ser integrado com outros sistemas 
� Obtenção e análise de requisitos
� Envolve clientes e usuários, engenheiros, especialsitas
� Especificação e documentação de requisitos
� seguir documentação e validá-lo
� Validação de requisitos
� Procura certificar de que os requisitos definem o sistema que o 
cliente deseja
Para refletir