Analise sistemas 04

2,558 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,558
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
182
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Analise sistemas 04

  1. 1. ENGENHARIA DE REQUISITOS Profª. M.Sc. Caroline Raquel Rodrigues Análise de Sistemas Computacionais FANAP
  2. 2. Engenharia de Requisitos <ul><li>Introdução: </li></ul><ul><li>É o 1º passo no modelo do processo. O que devo fazer e não a forma como será implementado. Serve como contrato entre desenvolvedor e comprador. </li></ul><ul><li>É o processo de aquisição, refinamento e verificação das necessidades do sistema. </li></ul><ul><li>O objetivo é sistematizar o processo de definição dos requisitos, obtendo uma especificação correta e completa do mesmo para elaboração do Documento de Requisitos . </li></ul>
  3. 3. Engenharia de Requisitos <ul><li>Introdução: </li></ul><ul><ul><li>A análise de requisitos tem como objetivo estabelecer os serviços que devem ser fornecidos pelo sistema e as restrições sobre as quais ele deve operar. </li></ul></ul>
  4. 4. Engenharia de Requisitos <ul><li>Introdução: </li></ul>
  5. 5. Engenharia de Requisitos <ul><li>Introdução: </li></ul>
  6. 6. Engenharia de Requisitos <ul><li>Definição de Requisitos do Sistema: </li></ul><ul><li>Obter os requisitos do sistema como um todo estabelecendo um conjunto de objetivos gerais que o sistema deve cumprir; </li></ul><ul><li>Características do que o sistema deve fazer e não o que deve ser implementado; </li></ul><ul><li>Utilizados pelos: usuários finais de sistemas, desenvolvedores de software e arquitetos de sistemas. </li></ul>
  7. 7. Engenharia de Requisitos <ul><li>Tipos de requisitos: </li></ul><ul><ul><li>Funcional: descreve um serviço ou uma função do sistema; </li></ul></ul><ul><ul><li>Não funcional: descreve uma restrição imposta ao sistema (por exemplo, tempo de resposta) ou ao processo de desenvolvimento (por exemplo, uso de uma linguagem de programação específica;)‏ </li></ul></ul>
  8. 8. Engenharia de Requisitos <ul><li>Requisitos Funcionais: </li></ul><ul><li>São declarações de funções de como o sistema deve reagir a entradas específicas e como deve comportar em determinadas situações. É uma interação entre o sistema e o seu ambiente. Algumas vezes, os requisitos funcionais podem também explicitamente declarar o que o sistema não deve fazer. A especificação deve ser completa e consistente. </li></ul>
  9. 9. Engenharia de Requisitos <ul><li>Requisitos Funcionais – exemplo: </li></ul><ul><li>O sistema deve permitir a inclusão, alteração e remoção de funcionários com os seguintes atributos: nome, endereço, cidade,etc). </li></ul><ul><li>O usuário deve ser capaz de buscar todo o conjunto inicial do BD ou selecionar um subconjunto a partir dele. </li></ul><ul><li>O sistema fornecerá telas apropriadas para o usuário ler documentos </li></ul><ul><li>Cada pedido tem um único identificador. </li></ul>
  10. 10. Engenharia de Requisitos <ul><li>Requisitos Não Funcionais: </li></ul><ul><li>Organizacionais : refere-se a políticas e procedimentos nas organizações do cliente e do desenvolvedor. </li></ul><ul><ul><li>de entrega, de implementação, padrões de processo </li></ul></ul><ul><li>Externos : refere-se a fatores externos ao sistema e ao seu processo de desenvolvimento. </li></ul><ul><ul><li>interoperabilidade (interação do sistema com outros), éticos, legais (privacidade e de segurança) </li></ul></ul><ul><li>De produto : especificam o comportamento do produto. </li></ul><ul><ul><li>eficiência (desempenho, espaço, rapidez, memória), confiabilidade, portabilidade. </li></ul></ul>
  11. 11. Engenharia de Requisitos <ul><li>Requisitos Não Funcionais - exemplo: </li></ul><ul><li>Organizacional : o processo de desenvolvimento de sistema e os documentos a serem entregues deverão estar de acordo com o processo e os produtos a serem entregues definidos em XYZKL. </li></ul><ul><li>Externo : o sistema não deverá revelar aos operadores nenhuma informação pessoal sobre os clientes. </li></ul><ul><li>De produto : toda comunicação necessária entre o ambiente X e o usuário deve ser expressa no conjunto padrão de caracteres ANSI. </li></ul>
  12. 12. Engenharia de Requisitos <ul><li>Requisitos Não Funcionais - exemplo: </li></ul><ul><li>Ambiente físico : Onde o equipamento funcionará? </li></ul><ul><li>Interfaces : A saída vai para outro ou outros sistemas? </li></ul><ul><li>Funcionalidade : Existem limitações quanto à velocidade de execução, ao tempo de resposta, ou a saída? </li></ul><ul><li>Os usuários e os fatores humanos : Haverá diverso s tipos de usuários? </li></ul>
  13. 13. Engenharia de Requisitos <ul><li>Requisitos Não Funcionais - exemplo: </li></ul><ul><li>Documentação : Essa documentação deve ser online, no formato de livro, ou ambos? </li></ul><ul><li>Dados : Qual será o fluxo de dados do sistema? </li></ul><ul><li>Segurança : O acesso ao sistema ou às informações deve ser controlado? </li></ul><ul><li>Recursos : Quanto espaço físico será ocupado pelo sistema. </li></ul>
  14. 14. Engenharia de Requisitos <ul><li>Como obter os requisitos ? </li></ul><ul><ul><li>Entrevista </li></ul></ul><ul><ul><li>Questionário </li></ul></ul><ul><ul><li>Observação direta </li></ul></ul><ul><ul><li>Sessões brainstorming </li></ul></ul>
  15. 15. Engenharia de Requisitos <ul><li>Como obter os requisitos ? – Entrevista: </li></ul><ul><li>Usado quanto poucas pessoas conhecem as informações necessárias para o desenvolvimento do sistema. </li></ul><ul><li>Precisa ser preparada antecipadamente. </li></ul><ul><li>Ter perguntas objetivas. </li></ul><ul><li>Evitar constrangimento dos participantes . </li></ul>
  16. 16. Engenharia de Requisitos <ul><li>Como obter os requisitos ? – Entrevista: </li></ul><ul><li>Antes : planejar, identificar a posição e responsabilidade do entrevistado, marcar horário, escolher local sossegado. </li></ul><ul><li>Durante : apresente-se informando a finalidade da entrevista, explique as anotações que fizer, não demore mais do que 2 horas, agradeça a contribuição. </li></ul><ul><li>Depois : documente os pontos relevantes; envie a documentação ao entrevistado (aprovação final), envie os resultados para os usuários e seus gerentes </li></ul>
  17. 17. Engenharia de Requisitos <ul><ul><li>Como obter os requisitos ? – Questionário : </li></ul></ul><ul><li>Usado quanto muitas pessoas conhecem as informações necessárias para o desenvolvimento do sistema. </li></ul><ul><li>Preparar antecipadamente com questões objetivas </li></ul><ul><li>Desvantagem: comunicação restrita com o usuário e não há troca de informação face a face. A preparação exige tempo. </li></ul>
  18. 18. Engenharia de Requisitos <ul><ul><li>Como obter os requisitos ? – Questionário : </li></ul></ul><ul><li>Preparação: identificar o tipo de informação que deseja obter. Enviar carta acompanhando o questionário enfatizando a sua importância. </li></ul><ul><li>Identificar quem responderá: nome, função e localização. </li></ul><ul><li>Distribuir com instruções detalhadas de como preencher e o prazo de devolução. </li></ul><ul><li>Analisar e consolidar as informações recebidas, documentar as principais descobertas e enviá-las juntamente com cópia do relatório para todos os respondentes. </li></ul>
  19. 19. Engenharia de Requisitos <ul><ul><li>Como obter os requisitos ? – Observação : </li></ul></ul><ul><li>Utilizada como processamento e confirmação de outros resultados (entrevista e questionário). </li></ul><ul><li>Identificar documentos que devem ser coletados para posterior análise. </li></ul><ul><li>Observar diretamente quem desenvolve o trabalho. </li></ul><ul><li>Deve ter aprovação antecipada das gerências. </li></ul>
  20. 20. Engenharia de Requisitos <ul><ul><li>Como obter os requisitos ? – Brainstorming : </li></ul></ul><ul><li>Útil para obter rapidamente informações sobre a atual situação. </li></ul><ul><li>Reunião de pessoas com diferentes níveis de informação e conhecimento sobre o sistema desejado. </li></ul><ul><li>A discussão em grupo é conduzida por um mediador. </li></ul><ul><li>Conceito: diversas cabeças pensam melhor do que uma. </li></ul>
  21. 21. Engenharia de Requisitos <ul><li>O processo de engenharia de requisitos: </li></ul>
  22. 22. <ul><li>Tipos de requisitos: </li></ul>
  23. 23. Engenharia de Requisitos <ul><li>O processo de engenharia de requisitos: </li></ul><ul><ul><li>Estudo de viabilidade: </li></ul></ul><ul><ul><ul><li>Analisa se as necessidades do cliente podem ser satisfeitas usando as tecnologias de software e hardware atuais; </li></ul></ul></ul><ul><ul><ul><li>Analisa de o projeto do cliente pode ir adiante, dadas as restrições orçamentárias existentes; </li></ul></ul></ul>
  24. 24. Engenharia de Requisitos <ul><li>O processo de engenharia de requisitos: </li></ul><ul><ul><li>Análise de requisitos: </li></ul></ul><ul><ul><ul><li>Descobre os requisitos do sistema através da observação de sistemas existentes, da discussão com usuários e da análise da tarefa; </li></ul></ul></ul><ul><ul><ul><li>Gera um conjunto de modelos que ajudam o analista a compreender o sistema que será especificado. </li></ul></ul></ul><ul><ul><ul><li>Protótipos podem ser desenvolvidos para ajudar a compreender os requisitos; </li></ul></ul></ul>
  25. 25. Engenharia de Requisitos <ul><li>O processo de engenharia de requisitos: </li></ul><ul><ul><li>Definição dos requisitos: </li></ul></ul><ul><ul><ul><li>Transforma a informação obtida durante a etapa de análise em um documento que define um conjunto de requisitos realmente desejados pelo cliente; </li></ul></ul></ul><ul><ul><ul><li>O documento deve ser compreendido pelo usuário final e pelo cliente do sistema; </li></ul></ul></ul>
  26. 26. Engenharia de Requisitos <ul><li>O processo de engenharia de requisitos: </li></ul><ul><ul><li>Especificação dos requisitos: </li></ul></ul><ul><ul><ul><li>Os requisitos são detalhados e descritos de forma precisa ; </li></ul></ul></ul><ul><ul><ul><li>Serve como base de contrato entre o cliente e o desenvolvedor; </li></ul></ul></ul>
  27. 27. Engenharia de Requisitos <ul><li>O documento de requisitos: </li></ul><ul><ul><li>Também chamado de especificação de requisitos </li></ul></ul><ul><ul><li>É a declaração oficial do que é requerido dos desenvolvedores de software; </li></ul></ul><ul><ul><li>Especifica o que o software deve fazer sem dizer como ; </li></ul></ul><ul><ul><li>Cada requisito deverá gerar uma parte do software que implementa uma solução para o problema; </li></ul></ul>
  28. 28. Engenharia de Requisitos <ul><li>Estrutura do documento de requisitos: </li></ul><ul><ul><li>Introdução : descreve brevemente as funções que o sistema deverá desempenhar; </li></ul></ul><ul><ul><li>Glossário : define termos técnicos utilizados no documento; </li></ul></ul><ul><ul><li>Modelos do sistema : inclui os modelos que mostram o relacionamento entre os componentes do sistema e entre o sistema e seu ambiente (modelos de objetos, modelos de fluxos de dados etc.). </li></ul></ul>
  29. 29. Engenharia de Requisitos <ul><li>Estrutura do documento de requisitos: </li></ul><ul><ul><li>Definição de requisitos funcionais : descreve através de linguagem natural ou de diagramas, os serviços que serão fornecidos pelo sistema; </li></ul></ul><ul><ul><li>Definição de requisitos não-funcionais : descreve as restrições impostas sobre o software e relaciona estas restrições aos requisitos funcionais; </li></ul></ul><ul><ul><li>Especificação de requisitos: descreve os requisitos funcionais em mais detalhes; </li></ul></ul>
  30. 30. Engenharia de Requisitos <ul><li>Validação dos requisitos: </li></ul><ul><ul><li>Objetivo : mostrar que os requisitos realmente definem o sistema que o cliente deseja; </li></ul></ul><ul><ul><li>Revisões são a técnica mais comum de validação de requisitos; </li></ul></ul><ul><ul><li>Nas revisões usuários e desenvolvedores se reúnem para discutir o documento de requisitos em busca de conflitos, contradições, erros e omissões; </li></ul></ul>
  31. 31. Engenharia de Requisitos <ul><li>Validação dos requisitos: </li></ul><ul><ul><li>O que deve ser checado? </li></ul></ul><ul><ul><ul><li>Consistência: não existe conflito entre os requisitos. </li></ul></ul></ul><ul><ul><ul><li>Completude : todas as funções e restrições pretendidas pelo cliente são consideradas; </li></ul></ul></ul>
  32. 32. Engenharia de Requisitos <ul><li>Evolução dos requisitos: </li></ul><ul><ul><li>Os requisitos sempre mudam durante o processo de desenvolvimento de software. </li></ul></ul><ul><ul><li>É preciso ter a preocupação de manter o documento de requisitos atualizado tendo em vista essas mudanças; </li></ul></ul>
  33. 33. Engenharia de Requisitos <ul><li>Análise de requisitos - dificuldades: </li></ul><ul><ul><li>O cliente nem sempre sabe o que quer que o sistema faça; </li></ul></ul><ul><ul><li>A comunicação entre os clientes e os engenheiros normalmente é difícil; </li></ul></ul>
  34. 34. Engenharia de Requisitos <ul><li>Análise de requisitos - dificuldades: </li></ul><ul><ul><li>Diferentes usuários podem ter diferentes requisitos: </li></ul></ul><ul><ul><ul><li>Cabe aos engenheiros captar os requisitos comuns e os conflitos entre os requisitos; </li></ul></ul></ul><ul><ul><li>Requisitos podem mudar e novos requisitos podem surgir durante o processo; </li></ul></ul>
  35. 36. Engenharia de Requisitos <ul><li>Análise de requisitos – etapas do processo : </li></ul><ul><ul><li>Compreensão do domínio : os analistas buscam o máximo de informações possíveis a respeito do problema; </li></ul></ul><ul><ul><li>Coleta de requisitos : os analistas interagem com os usuários a fim de descobrir seus requisitos; </li></ul></ul><ul><ul><li>Classificação: os requisitos coletados são classificados em grupos coerentes; </li></ul></ul>
  36. 37. Engenharia de Requisitos <ul><li>Análise de requisitos – etapas do processo : </li></ul><ul><ul><li>Resolução de conflitos : os analistas procuram e resolvem conflitos existentes entre os requisitos dos diferentes usuários; </li></ul></ul><ul><ul><li>Priorização : os analistas interagem com os usuários a fim de descobrir quais são os requisitos mais importantes; </li></ul></ul><ul><ul><li>Validação de requisitos : os analistas checam os requisitos a fim de garantir sua consistência e completude; </li></ul></ul>

×