Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Requisitos de Sistemas Marcelo Vasques de Oliveira Revisão – Aulas 1 a 5 Revisão Aulas 1 a 5 2 Aula Assuntosabordados 1 O que são requisitos? Importância do correto levantamento de requisitos Qualidade no processo de desenvolvimento e software 2 Requisitos de usuário x Requisitosde sistemas 3 Requisitos Funcionaisx Requisitos não funcionais 4 Conceitose exemplos deStakeholders Técnicas de levantamento de dados 5 Documentode Especificação de Requisitos Revisão Aula 1 O que são requisitos? Importância do correto levantamento de requisitos Qualidade no processo de desenvolvimento e software 3 Relembrando...... 4 O Que os usuários desejam? Se entendermos errado o que os usuários desejam que o sistema faça, qual será o resultado ? Resp: Um sistema que não atende ao que se deseja, que consequentemente será descartado mais cedo ou mais tarde. Mas isso deve acontecer com pouca frequencia no PDS. Certo ? Resp: Não, é um problema bem recorrente 5 6 O Que são requisitos ? São necessidades dos usuários que os sistemas precisam atender. Uma conduta desejada do sistema para atender as necessidades dos usuários. Os requisitos demandarão funcionalidades do sistema para que o usuário possa realizar uma tarefa e atender as suas necessidades. Entender bem os requisitos sistema com as funcionalidades adequadas. 7 Exemplos de Requisitos Contexto: Sistema de Vendas Usuário: vendedor Necessidades (requisitos) dos usuários Ter uma lista com as vendas que efetuou no período Ter acesso aos dados de seus clientes. Funcionalidades do Sistema Emitir Vendas por Vendedor no Período Consultar Cliente 8 Custo de Correção ao longo do PD 9 Levantamento de Requisitos A identificação de requisitos de um sistema é tão importante que a maioria dos PDS, demandam um fase, no início, para tal. O adequado levantamento e identificação dos requisitos afetará a qualidade do produto (software) que será entregue Como então, atingir a qualidade do software? 10 Qualidade de Software Qualidade : Processo + Produto Usar métodos de garantia de qualidade no Processo: quantificação da qualidade com métricas + técnicas de verificação (inspeções) Produto: Técnicas de verificação (revisão, inspeções formais) e validação (testes, auditoria do produto, além de testes e homologações pelo Cliente). 11 Revisão Aula 2 Requisitos de usuário Requisitos de sistemas 12 Por que níveis de Requisitos? 13 Separar os 2 níveis em um documento de requisitos Não ocupar com detalhes, os que não querem ou não necessitam deles. Requisito de Usuário Definem O QUE o sistema deve fazer (atender), em linhas gerais. Leitor: usuário sem conhecimento técnico, gestores Quando: estágios iniciais do desenvolvimento Servem de base para contratação e planejamento do projeto Apontam serviços e restrições do sistema Evitar expor características do projeto 14 Requisitos de Sistema Derivam dos requisitos do usuário. São versões expandidas , usadas para especificações do projeto Adicionam DETALHES, Serve de base para projetar o sistema; Pode ser usado como parte do contrato do sistema (escopo do sistema). Leitor: usuário técnico, desenvolvedor Precisam conhecer melhor o que sistema fará Foco: Projeto, Implementação e testes Elaborado como esforço direto para o desenvolvimento do sistema 15 EXEMPLOS Requisito de Usuário Desenvolver uma aplicação que permita que cada professor lance as notas de seus alunos: são 2 avaliações, contendo trabalho (2,00) e prova (8,00), conforme os requisitos obrigatórios, abaixo: Importar, do cadastro geral de alunos, dados dos alunos, da turma solicitada Registrar, de cada turma solicitada, por Avaliação: nota de trabalho e prova para cada aluno, somando e obtendo a nota de cada avaliação Imprimir boletim, de cada aluno, da turma solicitada, contendo o resultado de trabalho, prova de cada avaliação, nota final de cada avaliação, média e situação final. Média é aritmética; >= 7,00–APR, senão REP 16 EXEMPLOS Requisito de Usuário 17 EXEMPLOS DE Requisitos de Sistema Requisito de usuário Importar, do cadastro geral de alunos, dados dos alunos, da turma solicitada Requisito de Sistema Função: Importar Alunos Precondição: Cadastro Geral de Alunos Descrição: com base na turma informada pelo usuário, importar do cadastro geral de alunos, a matricula e nome do aluno e acrescentando os campos Nota e prova da Avaliação 1 e Nota de prova da Avaliação 2 e armazenando todos os dados. 18 EXEMPLOS DE Requisitos de Sistema Função: Importar Alunos Precondição: Cadastro Geral de Alunos Cenário Principal 1. Professor informa turma desejada 2. Sistema seleciona alunos da turma 3. Para cada aluno da turma faça 3.1. Sistema obtém matrícula e nome do aluno 3.2.Sistema acrescenta os dados nota, prova da avaliação 1 e nota, prova da avaliação 2 3.3 Sistema registra dados do aluno e dados das avaliações Cenários Alternativos 2.a. Turma não tem alunos Sistema informa “a turma informada não tem alunos” Sistema encerra caso de uso 19 Revisão Aula 3 Requisitos Funcionais Requisitos não funcionais 20 Requisitos Funcionais Descrevem as funcionalidades que o sistema precisa ter para atender as necessidades dos seus usuários. Definem O QUE o sistema deve fazer. Indicam o que o sistema não deve fazer O sistema não deve permitir o acesso de clientes inadimplentes Exemplos (começam com verbo infinitivo). Emitir Listagem com Nome e Matrícula de cada aluno, por curso Calcular os descontos de cada funcionário, bem como o salário líquido a ser pago no mês 21 Regras de Negócios x Requisitos Regras de negócio existem mesmo para sistemas manuais e dependes do negócio e não do sistema. Podem indicar COMO funcionalidades devem operar, . Clientes com mais de 10 mil em compras num mês, terão desconto de 10% a cada compra do mês seguinte. Nas promoções de encarte, cada cliente poderá adquirir 3 produtos iguais 22 Requisitos Não Funcionais Descrevem as restrições e características das funcionalidades do sistema qualidades Exemplos Deve ser possível , ao professor, lançar as notas a qualquer momento, em qualquer lugar A emissão do contra cheque deve demorar menos que 3 segundos após usuário solicitar. Devemos usar o banco de dados Oracle, em função da base de dados existente Na venda os produtos são identificados por leitor de código de barras. A tela de vendas dever ser de toque (touch) 23 Requisitos Não Funcionais Requisitos não funcionais podem demandar: Características individuais – degradação da função Sistema como um todo – inutilidade do sistema Sistema para deficiente visual – usabilidade Sistema de aviação – confiabilidade Requisitos não funcionais podem restringir o processo de desenvolvimento: por exemplo, uso de determinado PDS, ou padrão de qualidade, ou ferramenta Case 24 Requisitos Não Funcionais Surgem por necessidades dos usuário Restrição de orçamento Políticas organizacionais, como padrões de qualidade Interoperabilidade com outros sistemas Uso de determinado parque de hardware ou banco de dados Características específicas de seus usuários ou grupo de usuários. Fatores externos Regulamentos de segurança Legislação de privacidade. 25 Tipos de Requisitos Não Funcionais 26 Revisão Aula 4 Conceitos e exemplos de Stakeholders Técnicas de levantamento de Requisitos 27 Stakeholders - conceito Stakeholder Stake – Interesse, participação, risco Holder – Aquele que possui Tem a interesse/participação no sistema? Patrocinador (financiamento), membros da equipe de desenvolvimento, conjunto de usuários do sistema Segundo Summerville (2009) “Um stakeholder em uma arquitetura de software é uma pessoa, grupo ou entidade com um interesse ou preocupações sobre a realização da arquitetura.” 28 Stakeholders - Exemplos 29 Gerente de Projeto Analista de Sistemas Programador Patrocinador (quem paga a conta) Cliente (Grupo de usuários) Poder público Comunidade Concorrentes Fornecedores Investidores e acionistas Famílias da equipe de projeto Levantamento de Requisitos Realidade percebida nos levantamentos de requisitos Usuário não sabe o que quer exatamente Usuário não sabe expressar o que quer. Requisitos declarados, que não exprimem a realidade Conflito de requisitos – visões diferentes dos usuários – desconhecimento do processo como um todo. Requisitos e stakeholder equivocados geram retrabalho, despesas e problemas 30 Levantamento de Requisitos-Técnicas Dificuldades da equipe de análise. Forma inadequada de extração de requisitos Descrição dos requisitos de forma clara, sem ambiguidade e com consistência. Técnicas de levantamento de Requisitos Etnografia Workshop Entrevistas Questionários Brainstorm Prototipagem JAD 31 Etnografia Técnica de observação, onde o analista é inserido no ambiente de trabalho Objetivo: analista familiarizar-se com o cliente: seus valores, sua história Entender os requisitos sociais e organizacionais: cultura da empresa Identificar os requisitos implícitos (o que realmente acontece, além do formal). VANTAGEM: Como as pessoas realmente trabalham e cooperam entre si X como os processos dizem que devem trabalhar 32 Workshops Técnica desenvolvida em grupo – reunião estruturada Analistas + Stakeholders envolvidos Funcionamento Há um mediador neutro, que conduz o grupo a discussão Ao final, são documentadas as decisões e os requisitos Dia, Hora (início e término), assuntos devem estar claros na divulgação 33 Entrevistas Simples. Trás bons resultados nas fases iniciais Características Planejamento– uso eficiente do tempo Curta – não cansar, resultados eficientes. O entrevistado deve poder expor suas idéias. Funcionamento Antes – autorização para entrevistas; coleta e estudo dos dados pertinentes à discussão, como formulários, relatórios, documentos e outros; conhecer o entrevistado ; autorização para gravação da entrevista 34 Questionários Vários tipos Múltipla escolha, listas de verificação, preencher lacunas e etc. Quando usar? Usuários estão espalhados geograficamente e/ou grande quantidade de pessoas. Procedimento Identifique quem participará Distribua o questionário com instruções Informe prazo de finalização Documente o resultado: quantitativa e qualitativamente Informe o resultado aos participantes 35 Brainstorm Tempestade de ideias – técnica para geração de ideias, a partir ou não de uma preliminar Características Pode ser 1 ou mais reuniões Quanto mais ideias, melhor Colaborar e enriquecer ideias dos colegas todos tem que conhecer as ideias geradas Analisar as ideias – rever as ideias e atribuir prioridades as mais relevantes 36 Prototipagem Objetivo Ajudar ao usuário a visualização do que seria o produto final , em casos de complexidade do sistema (críticos) ou especificidade do usuários. Implementa um subconjunto das funcionalidades do sistema Aconselhado para: Estudo de alternativas de interface Problemas de comunicação com outros produtos Viabilizar atributos como desempenho 37 JAD JAD (Joint Application Design) – técnica que promove a cooperação, entendimento e trabalho em grupo: usuários e equipe de desenvolvimento. Juntos usuários de desenvolvedores elaboram, em conjunto, as soluções para os problemas detectados. Aproxima os 2 lados, com sentido maior de pertencimento e responsabilidade com o sucesso do produto 38 Revisão Aula 5 Documento de Especificação de Requisitos 39 Documento de Requisitos Antes de codificar em uma LP, precisamos entender OS REQUISITOS – Levantamento A empresa O contexto do sistema As necessidades dos usuários É preciso documentar os requisitos e “coisas” relevantes do levantamento. Documento de Requisito de Software (SRS – Software Requeriments Specification) Clareza Completo, no sentido de “conversar” com os principais interessados. 40 Documento de Requisitos Não é um documento estritamente técnico Deve atender a diversidade de stakeholders Foco: comunicação com os stakeholders Deve ser organizado Deve trazer tópico voltado a manutenção e implementações futuras Template do documento (Sommerville) Prefácio, introdução, Glossário, Definição de requisitos de usuário (F e NF), Modelos de sistema, Evolução apêndice, índices. 41 Documento de Requisitos - Problemas Disparidade no nível das especificações alguns requisitos foram especificados em um nível alto e outros em um nível muito baixo. Situações Utilizaram diferentes estilos de escrita Diferentes níveis de detalhes nos requisitos. Mesclam requisitos com soluções parciais Requisitos excessivamente especificados, requisitos pouco especificados, em geral ao descreverem o ambiente de operação, manutenção, simulação para treinamento 42 Exemplos de Usuários Clientes do sistema Especificam e acessam os requisitos para verificar se satisfazem suas necessidades. Os clientes especificam as mudancas nos requisitos. Gerentes Usam documentos de requisitos para planejar uma proposta para o sistema e planejar o processo de desenvolvimento. Engenheiros de software Usam os requisitos para entender o sistema que será desenvolvido. 43 Exemplos de Usuários Engenheiros de testes Usam os requisitos para desenvolver testes de validação de sistema. Engenheiros de manutenção do sistema Usam requisitos para entender o sistema e os relacionamentos entre suas partes. 44 Revisão Aulas 1 a 5 Marcelo Vasques de Oliveira Atividades Exercícios 1) Sobre o Documento de Requisitos analise as assertivas I. É um documento estritamente técnico. II. Atende aos diferentes interessados técnicos III. Os engenheiros de software usam o documento para entender o que o sistema fará Com base em sua análise, assinale a opção correta ( ) Estão corretos apenas I e II ( ) Estão corretas apenas II e III ( ) Estão corretos I, II e III ( ) Está correto apenas III ( ) Estão corretos I e III. 46 Exercícios 2) Diferentes grupos de usuários tem objetivos diferentes ao usar Documento de Especificação de Requisitos. Assinale o grupo cujo objetivo é: Usam documentos de requisitos com a finalidade de planejar o processo de desenvolvimento do sistema a.( ) Clientes b.( ) Engenheiros de Software c.( ) Engenheiros de testes d.( ) Gestores e.( ) Engenheiros de manutenção 47 Exercícios 3) Das especificações abaixo relacionados, assinale o que deve estar contido dentro da estrutura no template do documento de requisitos no item DEFINIÇÃO DE REQUISITOS DE USUÁRIO. ( ) Descreve como o sistema deve atender aos objetivos estratégicos da empresa ( ) Descreve os modelos gráficos, que por exemplo apresentam as funcionalidades do sistema ( ) Descrevem mudanças previstas ( ) Apresenta os termos técnicos ( ) Descreve os requisitos não funcionais 48 Exercícios 4) O documento de requisitos deve permitir que sejam especificados as necessidades dos usuários, requisitos do sistema , características, restrições e outros dados relacionados ao levantamento de requisitos do sistema. Para tanto, tal documento deve ser elaborado contendo uma série de itens. - “Descrever os serviços oferecidos aos usuários” é uma das especificações que devem constam no documento. Assinale o item do documento em que tal especificação deve estar presente ( ) Introdução ( ) Evolução do sistema ( ) Definição de Requisitos de usuários ( ) Apêndices ( ) Modelos de sistemas 49 Exercícios 5) Diferentes tipos de usuários devem acessar o documento de Especificação de Requisitos, com diferentes finalidades. Que tipo de usuário usa o documento para a finalidade abaixo: Usam os requisitos para entender o sistema que será desenvolvido, do ponto de vista técnico ( ) Engenheiros de teste ( ) Gestores ( ) Engenheiros de manutenção ( ) Engenheiros de software ( ) Gerentes 50 Exercícios 6) Sobre o Documento de Requisitos, analise as assertivas I. Devem ser completos no sentido de atender aos diferentes stakeholders II. Muitas vezes encontramos disparidades nos níveis de especificação, no que tange aos detalhes. III. Deve especificar apenas aspectos técnicos , do desenvolvimento IV. Deve conter apenas elementos textuais, devendo ser evitados diagramas. Assinale a única alternativa correta ( ) Estão corretos apenas I, II e IV ( ) Está correto apenas I ( ) Estão corretos apenas I e III ( ) Estão corretos apenas I e II ( ) Está correto apenas II 51 Exercícios 5) No que se refere aos stakeholders, analise as assertivas a seguir Incluem todo e qualquer funcionário da empresa para o qual o software esta sendo desenvolvido Inclui os que investem recursos financeiros no projeto Inclui todos os usuários do sistema, sejam operacionais ou gestores. Inclui todos que tem interesse direto e indireto no sistema. Assinale a única alternativa correta ( ) Estão corretas I e II ( ) Estão corretas I, II e III ( ) Estão corretas I e IV ( ) Estão corretas II , III e IV ( ) Está correta apenas III 52 Exercícios 5) No que se refere aos stakeholders, analise as assertivas a seguir Incluem todo e qualquer funcionário da empresa para o qual o software esta sendo desenvolvido Inclui os que investem recursos financeiros no projeto Inclui todos os usuários do sistema, sejam operacionais ou gestores. Inclui todos que tem interesse direto e indireto no sistema. Assinale a única alternativa correta ( ) Estão corretas I e II ( ) Estão corretas I, II e III ( ) Estão corretas I e IV ( ) Estão corretas II , III e IV ( ) Está correta apenas III 53 Exercícios 3) Diga se V ou F para cada assertiva Os requisitos de usuário são úteis nas fases iniciais do desenvolvimento ( ) Nas declarações de requisitos de sistemas usamos linguagem natural. ( ) A classificação em níveis ajuda no entendimento do sistema por diferentes interessados ( ) Nas declarações de requisitos de usuário a linguagem natural pode ser problemática. ( ) 54 Exercícios 2) Classifique cada característica abaixo como sendo de requisito de (U)suário ou (S)istema Apresenta o requisito em linguagem informal ( ) Apresenta detalhes dos requisitos ( ) São destinados a usuários não técnicos ( ) Foca no desenvolvimento do sistema ( ) Útil para gerentes dos clientes ( ) Usa-se diagramas complementando com especificações textuais mais detalhadas ( ) 55 Exercícios 1) Assinale a assertiva ERRADA Requisitos são necessidades, desejos dos usuários ( ) Através de funcionalidades os requisitos estão presentes no software ( ) Através de características dessas funcionalidades os requisitos estão presentes nos softwares ( ) Requisitos incompletos não afetam a qualidade do software ( ) 56
Compartilhar