Você está na página 1de 29

Técnico em Informática

UC9: Conceber, analisar e planejar o


desenvolvimento de software
Classificação de Requisitos
Classificação dos requisitos

• Os requisitos se classificam em dois tipos:


➢ Requisitos Funcionais;
➢ Requisitos Não Funcionais
Requisitos Funcionais

➢ Descrevem explicitamente as funcionalidades e serviços do


sistema
➢ Documenta
–como o sistema deve reagir a entradas específicas;
–como deve se comportar em determinadas situações;
–o que o sistema não deve fazer.
Requisitos Funcionais

➢ Descrever a funcionalidade ou os serviços do sistema.


➢ Depende do tipo de software, possíveis usuários e o tipo de sistema
em que o software é usado.
➢ Requisitos funcionais dos usuários podem ser declarações de alto
nível a respeito do que o sistema deve fazer.
➢ Requisitos funcionais do sistema devem descrever detalhadamente
os serviços do sistema.
Requisitos Funcionais
■ Devem conter os seguintes elementos:

a) Descrição de uma função a ser executada pelo sistema


(entrada/saída/transformação de informação)
Ex.: cadastrar comprador, emitir relatório de vendas no mês

b) A origem do requisito (quem solicitou) e/ou quem é o responsável pela execução


da função (usuário)
Importante para verificar o atendimento aos requisitos

c) Quais informações são passadas do sistema para o usuário e vice-versa quando


a função for executada
Importante para a compreensão e análise do requisito

d) Quais restrições lógicas (regras de negócio) ou tecnológicas se aplicam à função


requisitos não-funcionais
Exemplos de Requisitos Funcionais

➢ O usuário pode pesquisar todo ou um sub-conjunto do banco de


dados
➢ O sistema deve oferecer telas apropriadas para o usuário ler
documentos armazenados
➢ Cada pedido deve ser associado a um identificador único (PID), o
qual o usuário pode copiar para a área de armazenamento
permanente da conta
Ambiguidades em Requisitos

➢ 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

Exemplo:
“O sistema deve oferecer telas apropriadas...”

O que são telas apropriadas?


Requisitos Não-Funcionais (RNF)

➢ Definem propriedades e restrições do sistema

–Exemplos: segurança, desempenho, espaço em disco


➢ 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


Classificação de RNF

➢ Requisitos do Produto
–Especificam o comportamento do software (ex.: desempenho)
➢ Requisitos Organizacionais
–Consequência 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)
Exemplos de RNF

➢ Requisitos do Produto
–A interface do usuário deve ser implementada como simples HTML
➢ Requisitos Organizacionais
–Todos os documentos entregues devem seguir o padrão de relatórios
XYZ-00
➢ Requisitos Externos
–Informações pessoais dos usuários não podem ser vistas pelos
operadores do sistema
Requisitos não
funcionais

Requisitos do Requisitos Requisitos


produto organizacionais externos

Requisitos de Requisitos de Requisitos de Requisitos Requisitos


eficiência confiabilidade portabilidade reguladores éticos

Requisitos de Requisitos de Requisitos de Requisitos Requisitos


facilidade de uso entrega implementação de padrões legais

Requisitos de Requisitos Requisitos de Requisitos de


desempenho de espaço privacidade segurança
Classificação dos requisitos
• Métricas para requisitos não-funcionais
Tipos de requisitos

• Requisitos de usuário

➢Declarações em linguagem natural com diagramas dos serviços que


o sistema deverá fornecer e suas restrições operacionais. Escrito
para os clientes.
Tipos de requisitos

• Requisitos de sistema
➢ Um documento estruturado estabelecendo descrições detalhadas
das funções do sistema, serviços e restrições operacionais.
➢ Define o que deve ser implementado assim, pode ser parte de um
contrato entre o cliente e o empreiteiro.
Tipos de requisitos
Documentos de
requisitos
➢ O documento de requisitos de software é a declaração oficial do
que é demandado dos desenvolvedores do sistema.

➢ Deve incluir ambas, uma definição de requisitos do usuário e uma


especificação de requisitos do sistema.

➢ NÃO é um documento de projeto. Na medida do possível, deve


definir O QUE o sistema deve fazer ao invés de COMO deve fazê-
lo.
Estrutura de um documentos de requisitos
Estrutura de um documentos de requisitos
Formas de escrever uma especificação de requisitos
Formas de escrever uma especificação de requisitos
Formas de escrever uma especificação de requisitos
Documento de Requisitos

■ Registra o que o sistema deve fazer e sob quais condições


Eventuais lacunas serão preenchidas durante a fase de elaboração

■ Pode ser organizado de forma textual ou na forma de um diagrama


(específicos de ferramentas CASE)

■ Pode ser dividido em subsistemas, caso o sistema seja de maior porte

■ Formato:

Índice principal contendo nome das funções ou requisitos suplementares


Corpo contendo o detalhamento de cada requisito
Documento de requisitos – exemplo
Sistema Livraria Virtual – Documento de requisitos
Requisitos funcionais
1. Registrar novos títulos a partir do catálogo das editoras.
2. Registar venda de livros.
3. Realizar encomendas de livros.
4. Registrar e autorizar pagamentos com cartão de crédito.
5. Registar e aplicar promoções.
6. Calcular custos de entrega.
7. Emitir relatório de livros mais vendidos.
8. Emitir relatórios de compradores mais assíduos.
9. Emitir sugestões de compras para usuários com base em
compras anteriores.
10. …
Requisitos Suplementares
1. O sistema deve operar via interface Web
2. Todos os controles de interface devem ter um campo de ajuda
associado.
3. ...
Documento de requisitos

■ O detalhamento de cada requisito (em especial os funcionais) deve


aparecer no corpo do documento

■ Detalhamento dos requisitos é uma etapa fundamental


Sem ele o sistema pode parecer mais simples do que realmente é.

■ Exemplo – detalhamento do requisito “Registrar novos títulos a partir do


catálogo das editoras”
Considerações finais

■ Requisitos é uma etapa importante do desenvolvimento


■ Foco no cliente e em suas necessidades
■ Deve ser feita de forma rápida, em extensão, tentando buscar o maior
número de funcionalidade e restrições
■ Funcionalidades restantes serão acomodadas nos ciclos de
desenvolvimento
■ Posteriormente, os requisitos relacionados serão organizados em
processos, denominados de casos de uso
Casos de uso

➢ Casos de uso é uma técnica da UML baseada em cenários que


identificam os atores em uma interação e que descreve a interação
em si.
➢ Um conjunto de casos de uso deve descrever todas as possíveis
interações com o sistema.
➢ Modelo gráfico de alto nível complementado por uma descrição
tabular mais detalhada.
Casos de uso - exemplo
Bibliografia

➢ Ian Sommerville. Engenharia de Software, 9ª Edição. Pearson


Education, 2011.

➢Cap. 4 (Seção 4.1)


DÚVIDAS?

Você também pode gostar