Eduardo Castro                           www.quaddract.com.br                              Análise de Negócio             ...
Eduardo Castro                                                       Instrutor                 Eduardo José Ribeiro de Cas...
Eduardo Castro                 Causas de Fracasso                          em                 Projetos de Software    3   ...
Eduardo Castro                                        Causas de Fracasso                 REQUISITOS X QUALIDADE           ...
Eduardo Castro                                       Causas de Fracasso                 Principais causas de fracasso     ...
Eduardo Castro                                      Causas de Fracasso                 Principais causas de fracasso      ...
Eduardo Castro                                 Causas de Fracasso                 Principais causas de fracasso           ...
Eduardo Castro                 Evolução do Problema    8                  Engenharia de Requisitos – Fator de Sucesso em P...
Eduardo Castro                                Evolução do Problema                 • Esse problema é tão antigo e conhecid...
Eduardo Castro                                   Evolução do Problema                 • Alguém que esteja começando uma ca...
Eduardo Castro                 Evolução do Problema    11              Engenharia de Requisitos – Fator de Sucesso em Proj...
Eduardo Castro                 Importância dos                    Requisitos    12               Engenharia de Requisitos ...
Eduardo Castro                             Importância dos Requisitos                  Conceito de Qualidade de Software  ...
Eduardo Castro                            Importância dos Requisitos                 • Uma compreensão completa do problem...
Eduardo Castro                           Importância dos Requisitos                 • Requisitos mal definidos, ou que não...
Eduardo Castro                  Processo de                 Construcao de                   Software    16              En...
Eduardo Castro                              Análise do Negócio                  • Desenvolver       sistemas       é      ...
Eduardo Castro                    Nucleo de Gestao de Resultados                    Relação entre                    Proce...
Eduardo Castro                            Nucleo de Gestao de Resultados                 Infra estrutura do processo de co...
Eduardo Castro                 Nucleo de Gestão de Resultado    20                   Engenharia de Requisitos – Fator de S...
Eduardo Castro                 Análise do Negócio    21                Engenharia de Requisitos – Fator de Sucesso em Proj...
Eduardo Castro                                 Análise do Negócio                  • "A primeira regra de qualquer        ...
Eduardo Castro                              Análise do Negócio                  • Processo     Definido,   Requisitos     ...
Eduardo Castro                                  Análise do Negócio                 Segundo o BABOK 2.0, a Análise de Negóc...
Eduardo Castro                                  Análise do Negócio                 • A analise do negócio de um Sistema de...
Eduardo Castro                 Processo de Negócio    26                 Engenharia de Requisitos – Fator de Sucesso em Pr...
Eduardo Castro                                                Processo                 Conceitos gerais                 • ...
Eduardo Castro                         Sistemas de Informação                 SISTEMA DE INFORMAÇÃO – S.I.                ...
Eduardo Castro                           Análise do Negócio                   SISTEMA DE INFORMAÇÃO – S.I.                ...
Eduardo Castro                                 Análise do Negócio e Requisitos                                      Anális...
Eduardo Castro                 Engenharia de Requisitos    31                   Engenharia de Requisitos – Fator de Sucess...
Eduardo Castro                            Importância dos Requisitos                 • O que é um REQUISITO ?             ...
Eduardo Castro                                 Importância dos Requisitos                 Requisitos         • Definem o q...
Eduardo Castro                               Engenharia de Requisitos                 • A ER é uma sub-área da Engenharia ...
Eduardo Castro                                Engenharia de Requisitos                 • A tendência natural das organizaç...
Eduardo Castro                                  Engenharia de Requisitos                 •   A engenharia de requisitos en...
Eduardo Castro                 Produção de Requisitos    37                  Engenharia de Requisitos – Fator de Sucesso e...
Eduardo Castro                                    Engenharia de Requisitos                  Produção de Requisitos        ...
Eduardo Castro                                             Engenharia de Requisitos                                       ...
Eduardo Castro                 Gerencia de Requisitos    40                  Engenharia de Requisitos – Fator de Sucesso e...
Eduardo Castro                 Engenharia de Requisitos                 Gerencia de Requisitos                            ...
Eduardo Castro                                           Engenharia de Requisitos                                         ...
Eduardo Castro                 Documento de Requisitos    43                   Engenharia de Requisitos – Fator de Sucesso...
Eduardo Castro                                      Documento de Requisitos                 • Dois tipos de DOCUMENTO de R...
Eduardo Castro                             Documento de Requisitos                 • Documentação de Requisitos           ...
Eduardo Castro                     Processo RON                        Requisitos                  Orientado ao Negócio ...
Eduardo Castro                                      Processo RON®                  • Com base nos conceitos de Engenharia ...
Eduardo Castro                                               Processo RON®                                          Eduard...
Eduardo Castro                                            Processo RON®                                          VISÃO    ...
Eduardo Castro                 Tipos de Requisitos                 Método Requisitos Orientado ao Negócio - RON    50     ...
Eduardo Castro                                  Tipos de Requisitos                  • Requisitos                      “Po...
Eduardo Castro                                       Tipos de Requisitos                 • Requisitos de Negócio          ...
Eduardo Castro                                         Tipos de Requisitos                 • Requisitos do Software:      ...
Eduardo Castro                 Estudo de Caso    54              Engenharia de Requisitos – Fator de Sucesso em Projetos d...
Eduardo Castro                                Estudo de Caso                    Para o sistema descrito a seguir          ...
Eduardo Castro                                          Estudo de Caso                 Compras NET                 • O cli...
Eduardo Castro                                                   Estudo de Caso                 Inicio                    ...
Eduardo Castro                                                 Estudo de Caso                 Requisitos Funcionais       ...
Eduardo Castro                                                 Estudo de Caso                 Requisitos Complementares   ...
Eduardo Castro                                             Estudo de Caso                 Regras de Negócio               ...
Eduardo Castro                                                          Estudo de Caso                 Requisitos não func...
Eduardo Castro                 Rastreabilidade    62               Engenharia de Requisitos – Fator de Sucesso em Projetos...
Eduardo Castro                                                         Estudo de Caso                 Rastreabilidade     ...
Eduardo Castro                                                       Estudo de Caso                 Rastreabilidade       ...
Eduardo Castro                 Modelagem de Requisitos                       Analise O.O.    65                   Engenhar...
Eduardo Castro                                     Estudo de Caso                 – Os requisitos funcionais e regras de n...
Eduardo Castro                  Estudo de Caso    67           Engenharia de Requisitos – Fator de Sucesso em Projetos de ...
Eduardo Castro                 Modelagem de Requisitos                   Analise Estruturada    68                   Engen...
Eduardo Castro                                     Estudo de Caso                 – Os requisitos funcionais, requisitos c...
Eduardo Castro                  Estudo de Caso    70           Engenharia de Requisitos – Fator de Sucesso em Projetos de ...
Eduardo Castro                                                 Estudo de Caso                                      Analise...
Eduardo Castro                                                 Estudo de Caso                                      Analise...
Eduardo Castro    73           Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
Upcoming SlideShare
Loading in …5
×

Engenharia Requisitos - Método RON

4,429 views

Published on

Método RON - Requisitos Orientado ao Negócio
Tem por objetivo apresentar método de definição e gerencia de requisitos com base nas atividades de um processo de negócio.

Published in: Technology

Engenharia Requisitos - Método RON

  1. 1. Eduardo Castro www.quaddract.com.br Análise de Negócio e Engenharia de Requisitos Fator de Sucesso em Projetos de Software Eduardo Castro eduardo@quaddract.com.br www.quaddract.com.br 1 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  2. 2. Eduardo Castro Instrutor Eduardo José Ribeiro de Castro Formação Acadêmica: • Mestre em Gestão do Conhecimento e Tecnologia da Informação – UCB - 2005 • Especialista em Analise de Sistemas – EDF - 1990 • Graduado em Ciências Contábeis – UNICEUB – 1989 Atividades Profissionais: • Gerente de Projetos há mais de 12 anos na área de desenvolvimento de software. • Consultor na área de Engenharia de Software e Engenharia de Requisitos • Coordenador da Pós-Graduação em Engenharia de Requisitos de Software do Uniceub • Professor dos Cursos de Tecnólogo em Analise e Desenvolvimento de Sistemas do UniCEUB e Bacharelado em Ciência da Computação da UCB onde ministra, entre outras, as seguintes disciplinas: – Analise de Requisitos – Analise e Projeto Estruturado de Sistemas – Análise e Projeto Orientado e Objetos – Gerencia de Projeto – Engenharia de Software – Gestão da Tecnologia da Informação 2 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  3. 3. Eduardo Castro Causas de Fracasso em Projetos de Software 3 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  4. 4. Eduardo Castro Causas de Fracasso REQUISITOS X QUALIDADE • Leffingwell ressalta que 40% a 60% de todos os problemas encontrados em um projeto são causados por falhas no processo de requisitos (ausência ou à não utilização de um processo de definição de requisitos adequado). • As conseqüências da falta de um processo de requisitos eficaz têm sido a produção de softwares que não refletem as necessidades reais dos clientes. • Como os requisitos constituem a base para o desenvolvimento do software, então, requisitos de má qualidade geram software com qualidade inadequada. 4 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  5. 5. Eduardo Castro Causas de Fracasso Principais causas de fracasso TÉCNICA • Poucos analistas fazem uso de técnicas no momento de elicitar e analisar os requisitos de um sistema. • Desenvolvedores, de uma forma geral, têm uma visão simplista do processo de software. – Entendem que todo sistema computacional é tão somente linhas de código e que quanto mais cedo se começar a codificar um sistema, maior será a chance de sucesso. – definem, eles próprios, os requisitos dos sistemas 5 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  6. 6. Eduardo Castro Causas de Fracasso Principais causas de fracasso GERENCIAL • É comum que projetos sejam iniciados e continuados mesmo com falhas nas informações dos usuários • É necessário obter o conhecimento do negócio e das necessidades do usuário – que devem ser escritos para serem lidos e entendidos por clientes, gerentes e arquitetos de sistemas 6 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  7. 7. Eduardo Castro Causas de Fracasso Principais causas de fracasso • Falhamos quando perdemos o controle do processo de construção, permitindo que cliente e gerentes interfiram diretamente na equipe e no processo de desenvolvimento do sistema. 7 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  8. 8. Eduardo Castro Evolução do Problema 8 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  9. 9. Eduardo Castro Evolução do Problema • Esse problema é tão antigo e conhecido na área de desenvolvimento de software, que na década de 70 alguém teve a idéia de fazer o seguinte desenho ilustrando a situação. 9 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  10. 10. Eduardo Castro Evolução do Problema • Alguém que esteja começando uma carreira de analista ou desenvolvedor de software poderá imaginar que um problema tão antigo já foi solucionado, ou, que pelo menos, o seu impacto nos projetos de software tenha sido minimizado. • Que grande engano! • O problema é ainda tão crítico, que o desenho foi revisto e adequado aos nossos dias. 10 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  11. 11. Eduardo Castro Evolução do Problema 11 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  12. 12. Eduardo Castro Importância dos Requisitos 12 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  13. 13. Eduardo Castro Importância dos Requisitos Conceito de Qualidade de Software • “Conformidade a requisitos funcionais e de desempenho, explicitamente declarados, a padrões de desenvolvimento claramente documentados e a características implícitas que são esperadas de todo o software profissionalmente desenvolvido.” Pressman, Roger13 13 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  14. 14. Eduardo Castro Importância dos Requisitos • Uma compreensão completa do problema e a definição dos requisitos do software e sua especificação minuciosa é fundamental para o processo de desenvolvimento obter um software com alta qualidade. • Não importa quão bem projetado ou codificado está um programa, se ele for mal analisado e especificado desapontará o usuário e trará aborrecimentos ao desenvolvedor. 14 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  15. 15. Eduardo Castro Importância dos Requisitos • Requisitos mal definidos, ou que não atendam as expectativas dos clientes, exigem reparos durante o desenvolvimento do software. • A manutenção do projeto de software eleva drasticamente seus custos, podendo levá- lo ao fracasso. 15 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  16. 16. Eduardo Castro Processo de Construcao de Software 16 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  17. 17. Eduardo Castro Análise do Negócio • Desenvolver sistemas é automatizar processos de negócio Eduardo Castro17 17 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  18. 18. Eduardo Castro Nucleo de Gestao de Resultados Relação entre Processo de Negocio e Software Conjunto de Processo de Tarefas Negócio (BPM) Define Automação Conjunto de Software Requisitos LP BD 18 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  19. 19. Eduardo Castro Nucleo de Gestao de Resultados Infra estrutura do processo de construção de software Cliente Equipe Técnica Gestão Analise de Engenharia de Gerencia de Negócio Software Projeto (BPM) (SEI) (PMI) Definição dos Requisitos Mapeamento Controle de e Desenvolvimento Processo Monitoramento Teste Manutenção 19 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  20. 20. Eduardo Castro Nucleo de Gestão de Resultado 20 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  21. 21. Eduardo Castro Análise do Negócio 21 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  22. 22. Eduardo Castro Análise do Negócio • "A primeira regra de qualquer tecnologia utilizada nos negócios é que a automação aplicada a um processo eficiente aumentará a eficiencia. • A segunda é que a automação aplicada a um processo ineficiente aumentará a ineficiência.” (Bill Gates)22 22 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  23. 23. Eduardo Castro Análise do Negócio • Processo Definido, Requisitos Identificados, Software com Qualidade e TI com governança. Lucia Bastos & Eduardo Castro23 23 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  24. 24. Eduardo Castro Análise do Negócio Segundo o BABOK 2.0, a Análise de Negócio é definida como: • Conjunto de tarefas e técnicas utilizadas para o trabalho como um elo de ligação entra as partes interessadas (stakeholders) para entender a estrutura, as políticas e as operações de uma organização bem como os problemas envolvidos, e recomendar soluções que permitam que esta possa alcançar seus objetivos. 24 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  25. 25. Eduardo Castro Análise do Negócio • A analise do negócio de um Sistema de Informação deve ser realizada buscando identificar os elementos que a compõem e os processos utilizados para transformação dos dados em informação • Essa análise do processo nos permite analisar o negócio, identificar os problemas e propor soluções 25 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  26. 26. Eduardo Castro Processo de Negócio 26 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  27. 27. Eduardo Castro Processo Conceitos gerais • “Conjunto de recursos e atividades inter-relacionadas que transformam insumos (entradas) em produtos (saídas).” (ISO, 1990) • “Um processo é um grupo de atividades realizadas numa seqüência lógica com o objetivo de produzir um bem ou um serviço que tem valor para um grupo específico de clientes.” (Hammer e Champy, 1994) 27 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  28. 28. Eduardo Castro Sistemas de Informação SISTEMA DE INFORMAÇÃO – S.I. PROCESSO DADOS INFORMAÇÃO 28 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  29. 29. Eduardo Castro Análise do Negócio SISTEMA DE INFORMAÇÃO – S.I. PROCESSO DADOS Mapeamento do INFORMAÇÃO Processo Identificação do Problema Análise do Problema Proposta de Solução 29 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  30. 30. Eduardo Castro Análise do Negócio e Requisitos Análise Proposta Definição do de dos Negócio Solução Requisitos Descrição Mapeamento Identificação Produção e Análise do Definição do do do Gerência Problema dos Processo Processo Problema de Objetivos Requisitos Viabilidade Funcionalidades Engenharia e de Recursos Requisitos 30 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  31. 31. Eduardo Castro Engenharia de Requisitos 31 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  32. 32. Eduardo Castro Importância dos Requisitos • O que é um REQUISITO ? “Podemos conceituar requisitos como sendo uma ação a ser executada por um sistema, possuindo características e condições próprias e que devem ser atendidas conforme as necessidades de negócio do usuário.” Carlos Vazquez - FATTO 32 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  33. 33. Eduardo Castro Importância dos Requisitos Requisitos • Definem o que é solicitado ao software fazer e com quais limitações ele é requisitado a operar para atender a necessidade do negócio. Engenharia de • Propõe métodos, técnicas e ferramentas que Requisitos auxiliam o processo de descoberta, documentação e gestão dos requisitos que o software deve atender. Gerenciamento de • Gerenciar as mudanças que ocorrem nos Requisitos requisitos já acordados; • Gerenciar relacionamentos entre os requisitos; • Gerenciar as dependências entre os documentos de requisitos e outros documentos produzidos durante o processo de engenharia de software; 33 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  34. 34. Eduardo Castro Engenharia de Requisitos • A ER é uma sub-área da Engenharia de Software que estuda o processo de produção e gerência dos requisitos que o software deverá atender. • O objetivo da ER é fornecer métodos, procedimentos e ferramentas que forneçam suporte adequado às tarefas de produção e gerência dos requisitos do sistema. • Foi estabelecida como disciplina independente em 1993, quando da criação do IEEE International Symposyum on Requirements Engineering (RE’93). 34 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  35. 35. Eduardo Castro Engenharia de Requisitos • A tendência natural das organizações que trabalham sem um processo de ER tem sido identificar os requisitos rapidamente de maneira informal e iniciar a codificação. • Este é o processo “codifica-remenda” até a produção de uma versão com qualidade adequada ou o cancelamento do projeto. • Estes projetos freqüentemente estouram o prazo e o orçamento. • É importante lembrar que o esforço e o custo do retrabalho são maiores do que os investimentos em ER, buscando desenvolver o projeto certo da primeira vez. 35 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  36. 36. Eduardo Castro Engenharia de Requisitos • A engenharia de requisitos engloba os processos de produção e gerência de requisitos. 36 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  37. 37. Eduardo Castro Produção de Requisitos 37 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  38. 38. Eduardo Castro Engenharia de Requisitos Produção de Requisitos • Os 4 subprocessos: – Elicitação • Identificação da fonte de informação. Obtenção dos dados e fatos – Análise e Negociação de Requisitos • Obter entendimento sobre as funcionalidades do sistema. Avaliar e revisar o escopo do software. – Definiçao dos Requisitos • Definição e conversão dos requisitos em alguma forma- padrão; Documento de Definição de Requisitos – Validação • Verificação se os requisitos realmente definem o sistema que o cliente deseja; Protótipo.38 38 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  39. 39. Eduardo Castro Engenharia de Requisitos Produção de Requisitos Análise do Identificação Negócio das Fontes de Análise dos Documentação Protótipo do Informação Requisitos dos Requisitos Sistemas Proposta Análise e Definição dos de Elicitação Validação Negociação Requisitos Solução 39 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  40. 40. Eduardo Castro Gerencia de Requisitos 40 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  41. 41. Eduardo Castro Engenharia de Requisitos Gerencia de Requisitos Subprocessos da Gerência de Requisitos: – Gerência de Qualidade dos Requisitos • Define o padrão de produção e verificação da qualidade dos requisitos. – Controle de Mudanças dos Requisitos • Controla as solicitações de mudança do cliente. – Controle de Produção dos Requisitos • Controla a identificação dos requisitos. – Rastreabilidade • Relação entre as fontes dos requisitos, entre os requisitos propriamente ditos, e entre requisitos e os outros produtos (artefatos) da engenharia de software. – Gerência de Configuração • Controla versões dos requisitos e artefatos (armazenamento, manipulação, liberação). 41 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  42. 42. Eduardo Castro Engenharia de Requisitos Gerencia de Requisitos Controle de Relação entre Analise de Controle de Padrão de Gestão Mudança Requisitos e Impacto das Versionamento e Produção de Artefatos Mudanças Requisitos Plano de Controle de Gerencia de Qualidade dos Gerencia de Rastreabilidade Mudança Configuração Requisitos Requisitos 42 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  43. 43. Eduardo Castro Documento de Requisitos 43 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  44. 44. Eduardo Castro Documento de Requisitos • Dois tipos de DOCUMENTO de REQUISITOS Clientes Projetistas Definição Especificação dos Requisitos dos Requisitos •Redefine os requisitos em termos •Lista do que o Cliente espera que o técnicos; sistema faça; •Compreensível para o Projetista •Compreensível ao Cliente; •Consenso entre Analista e •Consenso entre Cliente e Analista; Desenvolvedor •Envolve Modelagem 44 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  45. 45. Eduardo Castro Documento de Requisitos • Documentação de Requisitos – Não importa o método, deve-se manter um conjunto de documentos que registrem os requisitos – Esse conjunto será utilizado durante todo o desenvolvimento e manutenção do sistema 45 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  46. 46. Eduardo Castro Processo RON Requisitos Orientado ao Negócio (Eduardo Castro, Direitos Reservados)46 46 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  47. 47. Eduardo Castro Processo RON® • Com base nos conceitos de Engenharia de Software (IEEE), de Qualidade de Software (ISO 9126), Gestão de Processo de Negócio (BPM) e dos processo de Engenharia de Requisitos (IEEE) foi construído um processo para definição de requisitos composto de fases e disciplinas. • Cada disciplina com seu conjuntos de atividades e artefatos necessários a definição de requisitos a partir das funcionalidades de um software definido pelo usuário.47 47 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  48. 48. Eduardo Castro Processo RON® Eduardo José Ribeiro de Castro Fases Elicitação Análise Documentação Validação Disciplinas Análise do Negócio Proposta de Solução Definição dos Requisitos Prototipação Teste Gerência de Requisitos Disciplinas de Apoio Gerência de Administração Métrica de Projeto de Dados Software48 48 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  49. 49. Eduardo Castro Processo RON® VISÃO SISTÊMICA Pontos de Automação Inicio Fim Processo de Negócio Requisitos Melhoria do Sistema Preocupação com a Orientado ao solução Negócio ESTRATÉGICA RON49 49 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  50. 50. Eduardo Castro Tipos de Requisitos Método Requisitos Orientado ao Negócio - RON 50 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  51. 51. Eduardo Castro Tipos de Requisitos • Requisitos “Podemos conceituar requisitos como sendo uma ação a ser executada por um sistema, possuindo características e condições próprias e que devem ser atendidas conforme as necessidades de negócio do usuário.” Carlos Vazquez - FATTO51 51 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  52. 52. Eduardo Castro Tipos de Requisitos • Requisitos de Negócio • Correspondem aos objetivos de negócio - ou do cliente - que devem ser satisfeitos pelo sistema. • Deve explicitar suas restrições e premissas bem como prazo e custo • Requisitos de Usuário • Descrevem os objetivos geral, específicos e as funcionalidades que o software deverá oferecer, sob o ponto de vista do negócio, de modo que sejam compreensíveis aos usuários • Requisitos do Software • Descrevem os requisitos (ações) que o sistema deve possuir para que os usuários possam executar suas atividades, de modo a atingir os objetivos do negócio. 52 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  53. 53. Eduardo Castro Tipos de Requisitos • Requisitos do Software: • Funcionais • (funcionalidades, ações do sistema) • Ex.: O sistema deve gerar extrato bancário • Complementares • (características e propriedades funcionais) • Ex.: O sistema deve gerar extrato bancário contendo nome, hora, data, saldo e movimentação • Regras de Negócio • (norma, condição, padrão para execução das funcionalidades) • Ex.: Quando o sistema gerar o extrato bancário o sistema deve apresentar a movimentação dos 5 último dias • Não Funcionais (Norma ISO 9126) • (características de qualidade do software) • Ex.: Quando o sistema gerar o extrato bancário o sistema deve apresentar a movimentação dos 5 último dias 53 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  54. 54. Eduardo Castro Estudo de Caso 54 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  55. 55. Eduardo Castro Estudo de Caso Para o sistema descrito a seguir (Compras NET), escrever os requisitos funcionais, complementares, regras de negócio e não funcionais que forem identificados. 55 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  56. 56. Eduardo Castro Estudo de Caso Compras NET • O cliente navega pelo site e adiciona itens desejados ao carrinho de compras. Se não encontrar o produto desejado, pode usar a opção de busca. • Durante sua navegação no site, o cliente pode ver o conteúdo de seu carrinho de compras, alterando quantidades ou excluindo itens. • Quando o cliente finalizar a compra, ele deve se identificar com seu login/senha. Caso não seja ainda cadastrado, deverá fazê-lo antes de prosseguir. Em seguida, informa o endereço de entrega daquela compra e detalha a opção de pagamentos (dados do cartão de crédito ou para pagamento por boleto bancário). • Confirmada a compra, o sistema fecha a venda e envia um e- mail informando ao cliente o status da compra (aguardando confirmação do cartão de credito ou do pagamento do boleto). 56 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  57. 57. Eduardo Castro Estudo de Caso Inicio Processo de Compra na WEB Não Sim Busca Adiciona Visualiza Modifica Achou ? Finaliza? Produto Produto Produto Produto Não Sim Seleciona Cadastra Valida Sim Solicita Possui Opção de Endereço Usuário e Cadastro? Usuário e Compra de Entrega Senha Senha Não Sistema Cadastra Confirma Fecha a Usuario e Envia Compra Venda Senha e-mail FIM 57 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  58. 58. Eduardo Castro Estudo de Caso Requisitos Funcionais Sub-Processo Seleciona Produto RF1 – O sistema deve buscar produto (rc01) RF2 – O sistema deve adicionar produto (itens do carrinho) (rc02) RF3 – O sistema deve visualizar produtos (itens do carrinho) (rc3) (rng1) (rng2) RF4 – O sistema deve excluir produto (itens do carrinho) (rc01) RF5 – O sistema deve alterar quantidade produto (itens do carrinho) (rc02) RF6 – O sistema deve finalizar pedido (fechar carrinho) (rc04) (rgn3) (rgn4) (rgn5) (rgn6) Sub-Processo Seleciona Realiza Compra RF7 – O sistema deve identificar cliente (rc5) RF8 – O sistema deve cadastrar cliente (rc6) RF9 – O sistema deve cadastrar endereço de entrega (rc7) RF10 – O sistema deve permitir ao cliente selecionar opção de pagamento (rc08) RF11 – O sistema deve confirmar a compra (rc9) (rng7) RF12 – O sistema deve enviar e-mail de status (rc10) 58 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  59. 59. Eduardo Castro Estudo de Caso Requisitos Complementares Sub-Processo Seleciona Produto RC1 – o sistema deve permitir pesquisar nome do produto (RF1) (RF4) RC2 – o sistema deve permitir selecionar nome e quantidade (RF2) (RF5) RC3 – o sistema deve exibir produto, quantidade, valor e total ao visualizar produto (carrinho) (RF3) RC4 – o sistema deve permitir registrar nome, data e hora ao finalizar o pedido (RF6) Sub-Processo Seleciona Realiza Compra RC5 – o sistema deve identificar o cliente por usuário e senha ao finalizar o pedido (RF7) RC6 – o sistema deve cadastrar usuário e senha (RF8) RC7 – o sistema deve cadastrar endereço, bairro, cidade e cep (RF9) RC8 – o sistema deve exibir as seguintes opções de pagamento: cartão de crédito e boleto bancário (RF10) RC9 – o sistema deve registrar nome, data, hora, produto e quantidade ao confirmar o pedido (RF11) RC10 – o sistema deve informar o status da compra (aguardando confirmação do cartão de credito ou do pagamento do boleto) ao finalizar a compra (RF12) 59 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  60. 60. Eduardo Castro Estudo de Caso Regras de Negócio RNG1 – quando o cliente visualizar os produtos (carrinho) o sistema deve permitir alteração de quantidade de itens (RF3) RNG2 – quando o cliente visualizar os produtos (carrinho) o sistema deve permitir exclusão de itens (RF3) RNG3 – quando o cliente finalizar o pedido o sistema deve identificar cliente (RF7) RNG4 – quando o cliente finalizar o pedido e o cliente não for cadastrado o sistema deve permitir cadastrar cliente (RF8) RNG5 – quando o cliente finalizar o pedido o sistema deve cadastrar endereço de entrega (RF9) RNG6 – quando o cliente finalizar o pedido o sistema deve permitir selecionar tipo de pagamento (RF10) RNG7 – quando o cliente confirmar a compra o sistema deve enviar e- mail informando status da compra (RF12) 60 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  61. 61. Eduardo Castro Estudo de Caso Requisitos não funcionais • 1. Confiablidade – O sistema deve garantir que a atualização de dados será feita de forma atômica e imediata, sempre com registro histórico; – O sistema deve realizar backups diariamente após a 00:00 hrs; • 2. Eficiência – O sistema deve responder a qualquer pesquisa, inclusão, alteração e exclusão em tempo inferior a 3 (três) segundos; – O sistema deve garantir que as atualizações dinâmicas de informação única não devem exceder 1 (um) segundo; • 3. Portabilidade – O sistema deve ser executado em em microcomputadores de arquitetura IBM PC, com processadores Intel P4 2.5Ghz com 512Mb de memória RAM e HD de 40Gb com sistema operacional Windows XP; – O sistema deve ser portável para GNU/Linux, com ambiente Desktop GNOME, em máquina de mesma configuração; • 4. Usabilidade – O sistema deve focar em eficiência, fornecendo teclas de atalho para todas as ações mais importantes; – O sistema deve seguir as Diretrizes de Interface Humana do projeto GNOME: http://developer.gnome.org/projects/gup/hig/; 61 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  62. 62. Eduardo Castro Rastreabilidade 62 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  63. 63. Eduardo Castro Estudo de Caso Rastreabilidade Requisitos Funcionais x Requisitos Complementares Req.Complementar RC01 RC02 RC03 RC04 RC05 RC06 RC07 RC08 RC09 RC10 Req. Funcionais RF01 x RF02 x RF03 x RF04 x RF05 x RF06 x RF07 x RF08 x RF09 x RF10 x RF11 x RF12 x 63 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  64. 64. Eduardo Castro Estudo de Caso Rastreabilidade Requisitos Funcionais x Regras de Negocio Regras de Neg. RNG01 RNG02 RNG03 RNG04 RNG05 RNG06 RNG07 Req. Funcionais RF03 x x RF07 x RF08 x RF09 x RF10 x RF12 x 64 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  65. 65. Eduardo Castro Modelagem de Requisitos Analise O.O. 65 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  66. 66. Eduardo Castro Estudo de Caso – Os requisitos funcionais e regras de negócio são avaliadas de forma a elaborar o diagrama de caso de uso – Os casos de uso podem modelar 1 ou um conjunto de requisitos funcionais que sejam necessários a um determinado ator realizar sua tarefa. – Os atores são identificados dos elementos envolvidos no processo e definidos no Documento de Definição de Requisitos - DDR 66 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  67. 67. Eduardo Castro Estudo de Caso 67 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  68. 68. Eduardo Castro Modelagem de Requisitos Analise Estruturada 68 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  69. 69. Eduardo Castro Estudo de Caso – Os requisitos funcionais, requisitos complementares e regras de negócio são avaliadas de forma a elaborar o Diagrama de Contexto - DC e posteriormente o Diagrama de Fluxo de Dados - DFD – Os fluxos de dados se relacionam diretamente aos Requisitos Funcionais - RF, tendo em vista que cada RF obrigatoriamente possui Requisitos Complementar que representa os dados. – As entidades são identificadas dos elementos envolvidos no processo e definidos no Documento de Definição de Requisitos - DDR 69 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  70. 70. Eduardo Castro Estudo de Caso 70 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  71. 71. Eduardo Castro Estudo de Caso Analise do Negocio – DAN Problema Analista Negocio Solução Gerente do Projeto Analise de Requisitos – DDR RF, RC, RNG Analista RNF Requisitos Protótipo Analise do Sistema – UML DCU DC Analista Especificação Sistema DS Analise do Banco de Dados – MER DER Administrado de Banco de Dados Desenvolvimento – Linguagem Programação Código Desenvolvedor 71 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  72. 72. Eduardo Castro Estudo de Caso Analise do Negocio – DAN Problema Analista Negocio Solução Gerente do Projeto Analise de Requisitos – DDR RF, RC, RNG Analista RNF Requisitos Protótipo Analise do Sistema – UML DCU DC Analista Especificação Sistema DS Analise do Banco de Dados – MER DER Administrado de Banco de Dados Desenvolvimento – Linguagem Programação Código Desenvolvedor 72 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software
  73. 73. Eduardo Castro 73 Engenharia de Requisitos – Fator de Sucesso em Projetos de Software

×