005 Requisitos de Sistema Funcionais e Nao Funcionais

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 19

ENGENHARIA DE

SOFTWARE

Requisitos de Sistema |
Funcionais e Não Funcionais

Antunes Viti Félix Chicolomuenho


2023/2024 [email protected]
Requisitos Funcionais
▪São declarações de serviços que o sistema deve fornecer;
▪Este tipo de requisito descrevem as funções do sistema
detalhadamente, suas entradas e saídas, exceções, etc.
▪Também podem estabelecer explicitamente o que o sistema
não deve fazer;
• A imprecisão na especificação de requisitos é o motivo
de muitos problemas de engenharia de software.
Falha de comunicação no Desenvolvimento de
Software

Ian Sommerville. Engenharia de Software, 10a. Edição. 2019

Como o cliente Como o gestor Como o Como o consultor


explicou Como o analista
do projecto programador de negócios
projectou
entendeu construiu descreveu
Falha de comunicação no Desenvolvimento de
Software

Ian Sommerville. Engenharia de Software, 10a. Edição. 2019

Como o Como o O que o cliente


Funcionalidade Como o cliente
projecto foi projecto foi realmente
instalada foi cobrado
documentado mantido queria
Requisitos Funcionais | Atributos
▪Completude
• Todos os serviços devem estar definidos, isto completos.
▪Coerência
• Os requisitos não devem ter definições contraditórias.
▪Atomicidade
• Os requisitos devem ser Atômicos, ou seja, devem ser
indivisíveis e passíveis de serem completados em uma
única iteração.
▪Na prática, é quase impossível atingir completude e
coerência dos requisitos.
Requisitos Funcionais | Exemplos

▪*O Usuário pode fazer uma busca na lista de consultas;

▪O sistema deve permitir o cadastro de novos usuários,


realizando a validação através de um e-mail de
confirmação;

▪Deve ser possível ao usuário solicitar a redefinição de sua


senha, informando o e-mail cadastrado.
Requisitos Funcionais | Ambiguidade

▪A imprecisão na especificação de requisitos é motivo de


vários problemas
• O desenvolvedor tende a interpretar o requisito da
maneira mais fácil de implementar.

▪*O usuário pode fazer uma busca na lista de consultas


• Quais as entradas da busca?
• O que será retornado?
Requisitos Não Funcionais

▪São restrições sobre os serviços ou funções do sistema.


• Exemplos: confiabilidade, desempenho, espaço em disco

▪Estes requisitos podem ser do sistema todo ou de partes do


sistema.

▪Requisitos não-funcionais podem ser mais críticos que


requisitos funcionais
• Se não satisfaz, o sistema é inútil.
Requisitos Não Funcionais | Classificação
▪Requisitos do Produto
• São requisitos que especificam o comportamento do
software (ex.: desempenho)
▪Requisitos Organizacionais
• São requisitos que resultam de políticas e procedimentos
das empresas (ex.: padrões do cliente)
▪Requisitos Externos
• Derivados do ambiente ou fatores externos ao sistema
(ex.: legislação)
Requisitos Não Funcionais | Classificação
Requisitos Não Funcionais | Exemplos
▪Requisitos do Produto
• Rapidez que o sistema deve executar uma solicitação
(tempo de resposta)
▪Requisitos Organizacionais
• Cada membro é identificado por um número de
funcionário de constituído por oito dígitos
▪Requisitos Externos
• Informações pessoais dos usuários não podem ser vistas
pelos operadores do sistema (privacidade)
Requisitos Não Funcionais | Verificação

▪Às vezes são de difícil verificação

▪Idealmente, requisitos não-funcionais devem ser


mensuráveis
• Após a implementação, estes podem ser testados
objetivamente
Requisitos Não Funcionais | Métricas
▪Velocidade
• Transações processadas por segundo
• Tempo de resposta
• Tempo de atualização de tela

▪Facilidade de uso
• Tempo de treinamento
• Número de quadros de ajuda
Requisitos Não Funcionais | Métricas
▪Confiabilidade
• Tempo médio para falhar
• Probabilidade de indisponibilidade
• Taxa de ocorrência de falhas
• Disponibilidade
▪Robustez
• Tempo para reinicias após uma falha
• Percentagem de eventos que causam falhas
• Probabilidade de corrupção de dados por falhas
Requisitos Não Funcionais | Problemas

▪A especificação quantitativa de requisitos não funcionais é


difícil

▪Ocorre mistura de requisitos funcionais e não funcionais

▪Requisitos não funcionais podem conflituar com outros


requisitos (funcionais ou não)
Requisitos de Domínio
▪São derivados do domínio de aplicação do sistema, em vez
das necessidades específicas dos usuários do sistema.
▪Este tipo de requisito é importante porque, com frequência,
refletem os fundamentos do domínio da aplicação.
▪Estes podem ser novos requisitos funcionais em si mesmo
▪Podem restringir os requisitos funcionais existentes ou
estabelecer especificamente como estes devem ser
realizados
Requisitos de Domínio | Exemplos

▪Devido às restrições de direitos autorais, alguns


documentos devem ser excluídos imediatamente na
chegada.

▪Deve existir uma interface com o usuário padrão para todas


as bases de dados e que deverá ser baseada no padrão
Z39.50
Documento de Requisitos
▪É uma declaração oficial do que os desenvolvedores de
sistema devem implementar.
▪O documento de requisitos possui um conjunto
diversificado de usuários, ou seja, os usuários que possuem
acesso ao documento.
▪É um dos principais documentos no processo de
desenvolvimento de um software.
▪Serve para comunicação dos requisitos com os clientes,
definição dos requisitos em detalhes precisos para os
desenvolvedores e testadores.
Documento de Requisitos
▪O nível de detalhamento depende do tipo do sistema a ser
desenvolvido.
▪O documento de requisito deve seguir um determinado
padrão.
• Esse padrão foi criado pela IEEE em 1998.

Você também pode gostar