ENGENHARIA DE REQUISITOS

Slides:



Advertisements
Apresentações semelhantes
Engenharia de Software
Advertisements

FACULDADE DOS GUARARAPES
Gerenciamento do escopo
Prototipação de Software
Identificando requisitos
Engenharia de Software
Especificação de Software
Prototipação de Software
Centrado na arquitetura
Faculdade de Ciências Sociais de Aplicadas de Petrolina – FACAPE
Faculdade de Ciências Sociais e Aplicadas de Petrolina – FACAPE
Técnicas eTipos de Requisitos
Adélia Barros Requisitos Adélia Barros
SISTEMA DE INFORMAÇÕES DESENVOLVIMENTO DE SISTEMAS
O processo de coletar os requisitos (escopo do cliente)
Extração de Requisitos
1 - Lafayette B. Melo – Análise e Projeto de Sistemas para a Internet – Noções de Engenharia de Software COINFO – CEFET-PB Noções de Engenharia de Software.
Workshop de Requisitos
Modelos de Processos de Software
Modelagem para Web Aula de 11/04/2011.
Rational Unified Process
Aula 1 Minicurso: Astah Ministrantes: André Martins; Camila Brondani;
Prof.Alfredo Parteli Gomes
Fase de Elaboração: Fluxo de Requisitos
Análise e Projeto de Sistemas
IEEE Std IEEE Melhores Práticas para Especificações de Requisitos de Software (ERS)
Análise e Projeto de Sistemas
Processos de Engenharia de Requisitos
Engenharia de Requisitos
Análise e Projeto de Sistemas
Elicitação e Análise de Requisitos
Use Cases (Casos de Uso)
REQUIREMENTS DEVELOPMENT DESENVOLVIMENTO DE REQUISITOS
Introdução e Fundamentos Engenharia de Requisitos
Técnicas e Projeto de Sistemas
PSBD II Projeto de Sistemas de Banco de Dados II
Especificação em Projeto de Sistemas
O Processo Unificado (UP)
ANÁLISE ESTRUTURADA DE SISTEMAS
Engenharia de Requisitos
Fabrica Um Engenharia de Requisitos Definição das Ferramentas, Modelos e Padrões.
Requisitos (Complemento) Marcio de Carvalho Victorino.
GERENCIAMENTO DE PROJETOS DE T.I
Laboratório de Programação
Requisitos de Software
Técnicas e Projeto de Sistemas
Elicitação e Análise de Requisitos
Modelando Sistemas em UML
IEEE Melhores Práticas para Descrições de Projeto de Software (DPS)
UML e a Ferramenta Astah
Engenharia de Software
Diagramas de Caso de Uso
Engenharia de Software e Sistemas
Engenharia de Requisitos
Requisitos Não funcionais
Análise e Projeto de Sistemas Orientado a Objetos Profa. Ana Karina Barbosa.
Análise e Projeto de Sistemas Orientado a Objetos
Aula 02 de Eng. de Requisitos
Análise e Projeto de Sistemas Análise e Projeto de Sistemas Aula 2 Professor: Italo Rodrigues Castro.
APSI II Análise e Projeto de Sistemas de Banco de Dados II.
Engenharia de Software com o RUP - Workflow de Requisitos
Engenharia de Software
Técnicas e Tipos de Requisitos
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
©Jaelson Castro 2000 Slide 1 Engenharia de Requisitos Uma introdução a engenharia de requisitos.
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
©Jaelson Castro 2000 Slide 1 Elicitação e Análise de Requisitos.
Extração de REQUISITOS Parte II. Segundo Pressman (1995), na analise e especificação de requisitos, a ambigüidade não só é possível mas é provável. “-
Elicitação de Requisitos Análise Orientada a Objetos Prof. Wolley W. Silva.
ROTEIRO PARA ELABORAÇÃO DE SISTEMA ESTRUTURADO
Transcrição da apresentação:

ENGENHARIA DE REQUISITOS

Fases da Engenharia de Requisitos Informações Informações elicitadas Universo das Informações MODELAGEM ELICITAÇÃO Especificação de requisitos VALIDAÇÃO ANÁLISE Aquisição Especificação Representações 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Um caso comum !! - O sistema que queremos deve fazer isto, isto, ..., e nesse caso também isto...; - Sim, Sim, estou anotando... - Conversei com os usuários e basicamente este é o sistema que teremos que desenvolver; - Sim chefe; - Ótimo, começaremos a especificar os requisitos imediatamente. 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos MOTIVAÇÃO ...Quatro meses depois ... - Senhores usuários, após o emprego das mais modernas técnicas de especificação, produzimos este documento que descreve minuciosamente o Sistema; - Ótimo! Bom! Hum! ... É um documento com 300 páginas e todos estes gráficos, tabelas. Enfim, vamos analisá-los e voltamos a falar; 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos MOTIVAÇÃO ... Mais um mês e meio ... - Sr. Analista, nosso pessoal analisou com cuidado o documento. Tivemos muitas dificuldades em entendê-lo. Mas o que percebemos é que NÃO FOMOS CORRETAMENTE ENTENDIDOS!!! - Como não? Tudo que está aí foi fruto de nosso entendimento pessoal. REALMENTE VOCÊS NÃO SABEM O QUE QUEREM!!! 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos MOTIVAÇÃO 4/1/2017 Engenharia de Requisitos

Componentes da elicitação de requisitos Domínio da aplicação Problema a ser resolvido Necessidades dos stakeholders Contexto do negócio 4/1/2017 Engenharia de Requisitos

Elicitação de Requisitos ELICITAR: descobrir, tornar explícito, obter o máximo de informações para o conhecimento do objeto em questão; identificar os fatos que compõem os requisitos do Sistema a fim de prover o mais correto e mais completo entendimento do que é demandado daquele software. 4/1/2017 Engenharia de Requisitos

Elicitação de requisitos: dificuldades Usuários podem não ter uma idéia precisa do sistema por eles requerido; Usuários têm dificuldades para descreverem seu conhecimento sobre o domínio do problema; Usuários e analistas têm diferentes pontos de vista do problema (por terem formações diferentes) Usuários podem antipatizar com o novo sistema e se negar a participar da elicitação (ou mesmo fornecer informações errôneas). 4/1/2017 Engenharia de Requisitos

Atividades da Elicitação Entendimento do domínio da aplicação O conhecimento do domínio da aplicação é o conhecimento geral onde o sistema será aplicado Entendimento do problema Os detalhes específicos do problema do cliente onde o sistema será aplicado deve ser entendido Entendimento do negócio Você deve entender como os sistemas interagem e contribuem de forma geral com os objetivos do negócio Entendimento das necessidades e limitações dos stakeholders sistema 4/1/2017 Engenharia de Requisitos

Estágios da Elicitação Definir objetivos Aquisição de conhecimento do background Organização do conhecimento Coletar os requisitos dos stakeholders 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Checagens da análise Checagem da necessidade Checagem de consistência e completude Checagem de viabilidade 4/1/2017 Engenharia de Requisitos

Negociação dos Requisitos Discutir os requisitos Priorizar os requisitos Concordância dos requisitos 4/1/2017 Engenharia de Requisitos

Técnicas de Elicitação Técnicas especiais que podem ser usadas para coletar conhecimento sobre os requisitos dos usuários Este conhecimento deve ser estruturado Problemas da elicitação Tempo Engenheiros de software stakeholders 4/1/2017 Engenharia de Requisitos

Técnicas de Elicitação Entrevistas Leitura de documentos Questionários Análise de protocolos Participação ativa dos usuários Cenários Observações e análise sociais Prototipação 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Escolhendo a técnica Deve-se selecionar as técnicas a serem utilizadas e estabelecer a maneira como elas serão integradas A escolha das técnicas e seu esquema de integração dependerá do problema e da equipe participante É interessante conhecê-las e saber identificar onde uma técnica se aplica melhor que outra 4/1/2017 Engenharia de Requisitos

Técnicas específicas de elicitação 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Entrevistas O Engenheiro de requisitos ou analista discute o sistema com diferentes stakeholders e obtêm um entendimento dos requisitos Vantagens: contato direto com o usuário e validação imediata Desvantagens: conhecimento tácito e diferenças de cultura 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Entrevistas - tipos Entrevistas fechadas: o analista busca respostas a um conjunto de questões pré-definidas Entrevistas abertas: Não há uma agenda pré-definida e o engenheiro de requisitos discute de forma aberta, o que o stakeholder quer do sistema Tutorial: o cliente dá uma aula explicando seu trabalho 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Entrevistas: dicas Identificar candidatos Preparação da entrevista : agendar e preparar questionário (se for o caso) O analista não deve ir para a entrevistas com noções pré-concebidas 4/1/2017 Engenharia de Requisitos

Entrevistas: condução Informar aos stakeholders o ponto inicial da discussão. Isto pode ser uma questão, uma proposta de requisitos ou um sistema existente Esperar por respostas incompletas Repetir frases do entrevistado com suas próprias palavras Entrevistadores devem estar cientes da política organizacional - muitos requisitos reais podem não ser discutidos devido a implicações políticas 4/1/2017 Engenharia de Requisitos

Entrevistas: Finalização Tempo para rever respostas de todas as perguntas - consolidar informações Agradecimentos Gerar documento que deve ser assinado pelo entrevistado 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Leitura de Documentos Abstrações Vocabulário da aplicação Vantagens: facilidade de acesso e volume de informações Desvantagens: dispersão das informações e volume de trabalho 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Questionários Quando existe conhecimento sobre o problema e grande número de clientes Quando dados estatísticos são importantes Dão idéia definida sobre como certos aspectos do universo de informação são percebidos Vantagens: padronização das perguntas e tratamento estatístico das respostas Desvantagens: limitação do universo de respostas e pouca iteração 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Cenários Cenários são partes inerentes de alguns métodos de desenvolvimento OO São estórias que explicam como um sistema poderá ser utilizado. Devem incluir: descrição do estado do sistema antes de começar o cenário o fluxo normal de eventos do cenário exceções ao fluxo normal de eventos informações sobre atividades concorrentes uma descrição do estado do sistema no final do cenário 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Cenários Cenários são exemplos de interação que descrevem como o usuário interage com o sistema A descoberta de cenários expõe interações possíveis do sistema e revela as facilidades que o sistema pode precisar 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Análise de protocolos Analisar o trabalho de determinada pessoa através da verbalização Objetivo: estabelecer a racionalidade utilizada na execução de tarefas Vantagens: possibilidade de elicitar fatos não facilmente observáveis e permitir melhor entendimento dos fatos Desvantagens: desempenho do entrevistado e “o que se diz é diferentes do que se faz” 4/1/2017 Engenharia de Requisitos

Participação ativa dos usuários Incorporação dos usuários ao grupo de ER Os usuários precisam aprender a linguagem de modelagem utilizadas para ler as descrições e criticá-las Integração dos usuários na modelagem do sistema Vantagens: envolvimento dos clientes/usuários Desvantagens: Tempo em treinamento dos usuários e falsas expectativas no usuário 4/1/2017 Engenharia de Requisitos

Observação e análise social Difícil descrever os processos, interessante observar Etnografia: o analista procura ter a mesma perspectiva do cliente Processos reais diferem dos processos formais escritos nos manuais Vantagens: visão mais completa e perfeitamente ajustada ao contexto Desvantagens: custo com tempo e pessoal gasto e pouca sistematização do processo 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Prototipação Uma versão inicial de um sistema que poderá ser usado para experimentação Protótipos são úteis para elicitar requisitos porque o usuário poderá “experimentar” o sistema e mostrar os pontos fortes e fracos Concreto 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Tipos de prototipagem Descartável Protótipo serve para requisitos e é descartado um outro sistema é implementado depois; Evolucionária usado no ciclo espiral Os requisitos vão aparecendo conforme o usuário está utilizando o “sistema” 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Vantagens O protótipo permite que os usuários experimentem e descubram o que eles realmente necessitam para suportar o trabalho deles Estabelece a viabilidade e utilidade antes que altos custos de desenvolvimento tenham sido realizados Interface Pode ser usado para teste do sistema e desenvolvimento da documentação Força estudo detalhado dos requisitos que revela inconsistências e omissões 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Desvantagens Custos de treinamento: pode se optar por ferramentas específicas para prototipação Incompletude 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Modelagem Visa a representação dos requisitos em modelos conceituais que descrevem as necessidades encontradas na elicitação. 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Análise de Requisitos Analisar o modelo gerado buscando encontrar inconsistências e omissões nos requisitos elicitados Intercalar com elicitação pois problemas são descobertos quando os requisitos são elicitados Desempenhada apenas pelos analistas 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Validação Com a ajuda dos clientes/usuários, busca-se validar ou seja, confirmar o conhecimento adquirido. 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Documentação Gerada O documento de requisitos de software - também chamado de SRS software requirements specification - é o resultado da engenharia de requisitos. Deve incluir requisitos do usuário, requisitos do sistema 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Requisitos do usuário São declarações em linguagem natural e também em diagramas sobre as funções que o sistema deve fornecer e as restrições sob as quais deve operar. 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Requisitos do sistema Estabelecem detalhadamente as funções e as restrições de sistema. Algumas vezes chamado de ESPECIFICAÇÃO FUNCIONAL Pode servir como contato entre o comprador e o desenvolvedor do software. 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos Padrão IEEE/ANSI 830-1998 1. Introdução 1.1 Propósito 1.2 Convenções 1.3 Público Alvo e Orientações para Leitura 1.4 Escopo do Produto 1.5 Referências 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos 2. Descrição Geral 2.1 Perspectiva do Produto 2.2 Funções do Produto 2.3 Classes de Usuários e Características 2.4 Ambiente Operacional 2.5 Restrições de Projeto e Implementação 2.6 Premissas e Dependências 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos 3. Requisitos de Interface Externa 3.1 Interfaces do Usuário 3.2 Interfaces de Hardware 3.3 Interfaces com outros Sistemas 3.4 Interfaces de Comunicação 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos 4. Funcionalidades do Sistema 4.x Funcionalidade X 4.x.1 Descrição e Prioridade 4.x.2 Seqüências de Estímulos e Respostas 4.x.3 Requisitos Funcionais 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos 5. Requisitos não Funcionais 5.1 Requisitos de Performance 5.2 Requisitos de Uso com Segurança 5.3 Requisitos de Segurança 5.4 Atributos de Qualidade 5.5 Regras de Negócio 5.6 Documentação do Usuário 4/1/2017 Engenharia de Requisitos

Engenharia de Requisitos 6. Outros Requisitos Apêndice A: Glossário Apêndice B: Modelos de Análise Apêndice C: Lista de Pendências 4/1/2017 Engenharia de Requisitos