Análise e Projeto de Sistemas
Aula 4
Professor: Italo Rodrigues Castro
O que são Requisitos?


Condição ou capacidade necessitada por
um usuário para resolver um problema
ou atingir um objetivo.
Uma condição ou capacidade que deve
ser cumprida ou possuída por um
sistema ou componente do sistema para
satisfazer um contrato, padrão,
especificação ou outro documento formal
imposto.
Por que os Requisitos são
importantes?
O que acontece quando os Requisitos
não são satisfeitos?
- Atraso e custos além do orçamento.
- Os clientes e usuários finais podem não
ficar satisfeitos com o sistema.
- O sistema pode ficar inviável de ser
utilizado.
- O custo de manter e evoluir o sistema
pode ser muito significativo.

Por que os Requisitos são
importantes?
Requisitos devem ser especificados
antes de se tentar construir o produto.
- Falta da definição de requisitos ou
requisitos incorretos levam a um produto
que não atende às necessidades dos
usuários.
- 60% dos erros são criados no projeto
dos sistemas.

Fases do processo de
desenvolvimento de Software
Problemas com o
Desenvolvimento de Software
Softwares...
- Nem sempre fazem o que deveriam
fazer.
O
desenvolvimento
estoura
o
cronograma e custo.
o Sintomas
- Não
adequação
ao
especificado
(Requisitos Incompletos).
- Baixa Qualidade.

Problemas com o
Desenvolvimento de Software
Causas
- Má compreensão dos requisitos.
- Dificuldades de gerência e controle.
- Processos inadequados.
- Deficiência da tecnologia ou
metodologia.

da
Problemas com o
Desenvolvimento de Software

Resumo dos Principais problemas:
-
Requisitos Incompletos
Falta de envolvimento do usuário.
Falta de Recursos.
Expectativas irreais.
Mudança de requisitos.
Falta de planejamento.
Sistema não é mais necessário.
-
-
-
Análise de Requisitos

A análise de requisitos é fundamental para o
desenvolvimento de sistemas, pois trata
justamente de descobrir o que o cliente quer
com o sistema;

A análise de requisitos está associada ao
processo de descobrir quais são as operações
que o sistema deve realizar e quais são as
restrições que existem sobre estas operações;
Requisitos funcionais x Não-Funcionais

Requisitos podem ser:


Funcionais: o que o sistema deve fazer;
(capacidade, resultado, funcionalidade)
Não-Funcionais: restrições sobre como o sistema
deve desempenhar suas funções. “De que forma,
como, quando, onde, para quem, por quanto
tempo, etc. Tais operações se realizam?” são
perguntas típicas.
Requisitos Funcionais





Algumas questões que nos ajudam a definir
os Requisitos Funcionais:
O que o sistema deve fazer?
Quando ele deve atuar?
Quais cálculos devem ser realizados?
Como o sistema deve reagir a eventos
externos?
Requisitos Funcionais
Requisitos Funcionais também definem
informações sobre os dados:
 Qual deve ser o formato dos dados de
entrada e saída?


Quais dados devem ser armazenados?
Requisitos Funcionais
O professor deve cadastrar as avaliações da
disciplina.
 O usuário deve ser capaz de pesquisar todo o
acervo da biblioteca.
 Cada pedido de compra deverá ser analisado
pelo gestor de compras, que poderá decidir por
aprová-lo ou retorná-lo ao solicitante.

Requisitos Não-Funcionais
Podem ser mais críticos do que requisitos
funcionais.
 Se eles não forem atendidos, o sistema pode
se tornar inútil.
 Podem influenciar um ou mais requisitos
funcionais, ou mesmo todos.
 Devido à sua própria definição, requisitos
não-funcionais devem ser mensuráveis.

Requisitos Não-Funcionais

Eficiência:
Há restrições no tempo de execução ou de
resposta do sistema?


Qual é o volume de dados que o sistema
deve ser capaz de processar?
Requisitos Não-Funcionais

Eficiência (Cont.):

Qual é a quantidade de acessos que o
sistema deverá ser capaz de atender
simultaneamente?
Qual é a taxa de processamento esperada
para este sistema?

Requisitos Não-Funcionais

Usabilidade:

Quanto deve ser fácil para um usuário
compreender e usar o sistema?

Quanto deve ser para um usuário usar
incorretamente o sistema?
Requisitos Não-Funcionais




Confiabilidade:
O sistema deve detectar e/ou recuperar-se de
falhas?
Qual é a tolerância para o tempo médio entre
falhas?
Existe um nível de tolerância a falhas e
interrupções?
Requisitos Não-Funcionais


Manutenibilidade:
Quanto dever ser simples a adição de novas
funcionalidades ao sistema?
Qual é o tempo aceitável para diagnóstico
de problemas?

Qual é o tempo aceitável para resolução de
problemas?

Requisitos Não-Funcionais

Portabilidade:
O sistema deve ser portável a outras
plataformas?

Tipos de Requisitos
Implícitos: expectativas dos clientes e
usuários.
 Normativos: leis, padrões, etc.
 Explícitos: descritos em um documento que
apresenta os requisitos de um produto.

Tipos de Requisitos
Classificação dos requisitos quanto à
importância:
 Essencial: sem seu atendimento, o
produto torna-se inaceitável.
 Condicional: seu atendimento aumenta o
valor do produto, mas sua ausência pode
ser considerada em caso de necessidade.
 Opcional: pode ou não ser implementado,
dependendo dos prazos e recursos
disponíveis

Requisitos funcionais x Não-Funcionais

Exemplo:
Registrar o empréstimo de um filme é um requisito
funcional;
 Estabelecer que o tempo de empréstimo da fita
não pode ser superior a 48 horas é uma restrição,
ou requisito não-funcional.
O professor deve cadastrar as avaliações da
disciplina é um requisito funcional;
O usuário deve ser capaz de pesquisar todo o acervo
da biblioteca é um requisito funcional;



Requisitos funcionais x Não-Funcionais

Responda se os requisitos abaixo é um
requisito funcional ou não funcional.




Permitir a consulta de lista de pedidos pendentes.
O sistema deve ser construído utilizando a
linguagem Java.
O sistema deve ser feito em português e inglês.
O operador deverá cadastrar os dados de
atendimento aos clientes tais como nome, motivo
da ligação, data e hora e detalhes da conversa.
Cliente X Sistema

Exemplo

Necessidade do Cliente: Construir um sistema
para gerenciar o estoque dos produtos da
organização.
Funcionalidades a serem cumpridas pelo
sistema:
- Cadastrar os produtos comercializados;
-Registrar entradas e saídas de produtos;
-Gerenciar alterações de preços;




Cliente X Sistema

Exemplo

Necessidade do Cliente: Construir um sistema
para gerenciar o estoque dos produtos da
organização.
Funcionalidades a serem cumpridas pelo
sistema:
- Cadastrar os produtos comercializados;
-Registrar entradas e saídas de produtos;
-Gerenciar alterações de preços;




Passos a seguir

Descobrir / Modelar a visão da empresa para o
sistema;
O que a empresa quer com o projeto?
 Por que ele está sendo proposto?
 Há tempo disponível? Construir ou Comprar?
 O cliente tem dinheiro para pagar o desenvolvimento?
 O projeto é viável / realizável?

Passos a seguir

Levantamento de Requisitos





Entrevistas
Análise de Documentos
Estudo Bibliográfico Comparativo
Organização de Requisitos
Planejamento dos Ciclos Iterativos
Passos a seguir

Planejar o desenvolvimento:
 Métricas;
 Cronograma;
 Recursos.
Exercício proposto – Levantamento de
Requisitos






O sistema tem como objetivo básico realizar o cadastro dos alunos,
divididos por turma. O aluno deverá se matricular em uma turma, estilo
de pós graduação. Para esta turma o mesmo terá que cumprir diversas
disciplinas. Os professores por sua vez deverão lançar todas as
atividades e suas nota, ou seja o valor máximo da atividade, e a nota da
atividade para cada aluno. Além das notas a chamada também deverá
ser realizada diretamente no sistema escolar. Todas os professores
deverão ser cadastrados no sistema, assim como todas as disciplinas
que o mesmo leciona. Um calendário das disciplinas deverá ser gerado,
com o nome das disciplinas, nome do professor, e todas as datas que
ocorrerão suas aulas. Os seguintes relatórios devem ser emitidos:
Diário de classe por disciplina.
Boletim de notas para os alunos, com as disciplinas e sua pontuação, e
seu status, aprovado ou reprovado.
Histórico escolar de um determinado aluno.
Quantidade de alunos por turma.
Gerar um ranking geral(total de pontos) dos alunos.
Levantamento de Requisitos
1-Quem são os usuários do Sistema?
(Perfis)
2- O que o Sistema deverá fazer?
(Funcionalidades-Requisitos Funcionais)
3- Qual é o escopo do Sistema?
4- Caracterize o problema da Organização
5- Propósito de solução para o problema.
6- Restrições do Sistema (Requisitos nãofuncionais).
Download

analiseeprojsistemas4