2. Definição
• Identifica as necessidades ou requisitos de um cliente.
• É a primeira fase de desenvolvimento de software.
• É fase do processo de criação do software que engloba
todas as tarefas que lidam com investigação, definição
e escopo de novos sistemas ou alterações.
• Realiza as primeiras reuniões com os clientes e
usuários do software para conhecer as funcionalidades
do sistema que será desenvolvido.
• É nesta fase também que ocorre a maior parte dos
erros, pois a falta de experiência dos clientes ou
usuários faz com que eles nem sempre tenham claro
em sua mente quais funcionalidades o software terá.
3. Principais Atividades
• Levantamento dos requisitos: é a tarefa de
comunicar-se com os usuários e clientes para
determinar quais são os requisitos de sistema.
• Análise de requisitos: determina se o estado do
requisito é obscuro, incompleto, ambíguo, ou
contraditório e resolve estes problemas.
• Registros dos requisitos: os requisitos podem ser
documentados de várias formas, tais como
documentos de linguagem natural, casos de
uso, ou processo de especificação.
4. Principais Técnicas
• Entrevistas: devem revelar requisitos ainda não
descobertos de acordo com o escopo do projeto.
• Workshops: uso de projetores e diagramas
podem levar os usuários a discutirem uma
melhor forma de resolver um requisito.
• Questionário: os usuários poderão responder as
mesmas perguntas e, com isso, mostrar para o
analista, diversos pontos de visão sobre o mesmo
assunto.
• Observação: o analista dispõe de tempo para
observar os usuários do sistema.
5. Principais Técnicas
• Protótipos: consiste em criar um projeto que
simule a aplicação real, permitindo que o usuário
visualize a aplicação que ainda não foi produzida.
Isso faz com que correções possam ser feitas
antes de o projeto estar em andamento.
• Casos de Uso: é uma técnica para capturar
requisitos em potencial para um sistema.
Consiste em criar cenários específicos para cada
ação que o sistema terá. Serve para ter uma ideia
geral do tópico sem aprofundamento.
6. Tipos de Requisitos
• Projeto: requisitos do negócio, gerenciamento
e entrega do produto.
• Produto: requisitos técnicos, segurança e
desempenho.
• Funcionais: funções e ações do usuário
• Não funcionais: propriedades do sistema e
restrições, como tempo de resposta e espaço
em disco.
7. Problemas
• Usuários não sabem o que querem.
• Usuários não querem participar do processo de requisitos.
• A comunicação com o usuário é lenta
• Os usuários não participam das revisões ou não sabem
como fazer.
• Os usuários não entendem o processo de desenvolvimento.
• Vocabulário de técnicos e usuários são diferentes
• Os desenvolvedores tentam ajustar os requisitos para um
modelo criado e não para o usuário
• É necessária muita habilidade para traduzir o que o usuário
deseja para um modelo que os desenvolvedores entendam.
8. Conclusão
• Reconhecer o problema
• Avaliar o problema e a solução
• Modelar
• Especificar os requisitos
• Revisar