Análise de Requisitos
Fernando Pereira dos Santos
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á.
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.
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.
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.
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.
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.
Conclusão
• Reconhecer o problema
• Avaliar o problema e a solução
• Modelar
• Especificar os requisitos
• Revisar

Análise de requisitos

  • 1.
  • 2.
    Definição • Identifica asnecessidades 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 • Levantamentodos 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ãosabem 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 oproblema • Avaliar o problema e a solução • Modelar • Especificar os requisitos • Revisar