Engenharia de Requisitos



Documentos relacionados
Requisitos. Sistemas de Informações

Qualidade no levantamento de requisitos

Engenharia de Software Software Requirements

Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software

Projeto de Sistemas I

Requisitos de Software. Teresa Maciel DEINFO/UFRPE

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

Engenharia de Software

Extração de Requisitos

Processos de Desenvolvimento de Software

Universidade Paulista

Engenharia de Software Questionário sobre Engenharia de Requisitos Resolvido Prof. MSc Wagner Siqueira Cavalcante

Requisitos. Professor Gabriel Baptista ( gabriel.baptista@uninove.br ) ( )

Tópicos da Aula. Que é são requisitos? Tipos de Requisitos. Requisitos Funcionais. Classificação de Requisitos. Requisitos de Software.

Engenharia de Requisitos

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

Análise de Sistemas. Contextualização. O Sucesso. Aula 4. Instrumentalização. Aula 4. Prof. Emerson Klisiewicz. Clientes satisfeitos

Notas de Aula 02: Processos de Desenvolvimento de Software

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Teste de Software. Profa. Cátia dos Reis Machado

ISO/IEC 12207: Gerência de Configuração

Auditoria e Qualidade de Software ISO/IEC 9126 Engenharia de Software Qualidade de Produto

Engenharia de Requisitos

APOO Análise e Projeto Orientado a Objetos. Requisitos

O modelo unificado de processo. O Rational Unified Process, RUP.

Atividade da gerência da qualidade

Dicionário da EAP - Software FarmaInfor

Requisitos do usuário, do sistema e do software [Sommerville, 2004]

CHECK - LIST - ISO 9001:2000

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES

O Impacto da Engenharia de Requisitos no Processo de Métricas. Fátima Cesarino CAIXA

QUALIDADE DE SOFTWARE

PEN - Processo de Entendimento das Necessidades de Negócio Versão 1.4.0

Mostrei minha obra-prima à gente grande, perguntando se meu desenho lhes dava medo.

Levantamento, Análise e Gestão Requisitos. Aula 06

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

LEVANTAMENTO DE REQUISITOS. Lílian Simão Oliveira

PPS - Processo de Proposta de Solução Versão 1.3.1

PROFESSOR: CRISTIANO MARIOTTI

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com

Gerência de Projetos Prof. Dr. Sandro Ronaldo Bezerra Oliveira

Prova de Conhecimento para Consultores de Implementação MPS.BR INSTRUÇÕES

Tipos de teste de software

Gerenciamento de Incidentes

LEVANTAMENTO DE REQUISITOS DE FORMA ENXUTA

A Disciplina Gerência de Projetos

Documento de Requisitos

Introdução Fatores de Qualidade Garantia de Qualidade Rivisões de Software Conclusão. Qualidade. Plácido A. S. Neto 1

Requisitos de Software

Análise de Requisitos

Exame de Fundamentos da ITIL

Políticas de Qualidade em TI

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Elicitação de requisitos e análise

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues

Tópicos de Ambiente Web. Modulo 2 Processo de desenvolvimento de um site Professora: Sheila Cáceres

Gestão do Risco e da Qualidade no Desenvolvimento de Software

Introdução à Computação

Os desafios do Bradesco nas redes sociais

O que é Gerenciamento de Redes de Computadores? A gerência de redes de computadores consiste no desenvolvimento, integração e coordenação do

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

ADMINISTRAÇÃO DE ATIVOS DE TI GERENCIAMENTO DE LIBERAÇÃO

REGULAMENTO DO TRABALHO DE CONCLUSÃO DE CURSO Curso Superior de Tecnologia em Sistemas para Internet 1/2011

O papel do CRM no sucesso comercial

Requisitos de Software

Gerenciador de Log. Documento Visão. Projeto Integrador 2015/2. Engenharia de Software. Versão 2.0. Engenharia de Software

Engenharia de Requisitos Estudo de Caso

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Gerência de Projetos

Qualidade de Processo de Software Normas ISO e 15504

Engenharia de Software. Artigo revista Engenharia de Software, edição 30 (novembro 2010)

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

Engenharia de Software

rosefib.webnode.com.br

Pós Graduação Engenharia de Software

O Processo Unificado: Captura de requisitos

Gerenciamento de Requisitos Gerenciamento de Requisitos

Aula 04 - Planejamento Estratégico

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR

GARANTIA DA QUALIDADE DE SOFTWARE

ENGENHARIA DE SOFTWARE I

Engenharia de Software. Análise de Requisitos de Sistema e de Software. Análise de requisitos

Prof. Marcelo Machado Cunha

INOVAÇÃO NA ADVOCACIA A ESTRATÉGIA DO OCEANO AZUL NOS ESCRITÓRIOS JURÍDICOS

Gerenciamento de Problemas

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

Capítulo X. Gerenciar Mudanças dos Requisitos. Aluizio Saiter, M. Sc.

Análise e Projeto Orientados a Objetos Aula IV Requisitos. Prof.: Bruno E. G. Gomes IFRN

3 a Lista de Exercícios

Engenharia de Software III

Princípios de Liderança

SISTEMAS DE GESTÃO São Paulo, Janeiro de 2005

Transcrição:

Engenharia de Requisitos

Processo de Eng. Requisitos p Composto por quatro (ou cinco) atividades de alto nível (Soares, 2005): p Viabilidade p Identificação. p Análise e negociação. p Especificação e documentação. p Validação.

Viabilidade p interação com "as partes interessadas" (ou stakeholder em inglês) do projeto p reuniões ou entrevistas p Será que o sistema contribui para os objetivos da organização? p Dadas as restrições tecnológicas, organizacionais (econômicas, políticas, ambientais, recursos disponíveis) e temporais associadas ao projeto, será que o sistema pode ser implementado? p Se o novo sistema não fosse implementado, quais seriam as alternativas para a organização? p Quais são os problemas que os sistemas atuais apresentam e como é que um sistema novo irá resolver estas falhas? p Caso haja necessidade de integração entre diferentes sistemas, será que esta é possível?

Identificação p Compreensão do domínio: p Identificação das partes interessadas: p Captura: consiste na obtenção com o cliente dos requisitos (funcionais e não-funcionais) pretendidos para o sistema. p Identificação e análise de problemas: os problemas devem ser identificados (e a sua definição deve ser consensual) e devem ser propostas soluções em conjunto com as partes interessadas.

Técnicas para levantamento de requisitos p Entrevista e Questionários p Workshop de requisitos p Cenários p Prototipagem Versão inicial do sistema com poucos requisitos

Análise e negociação dos requisitos p Classificação: agrupamento de requisitos em "módulos" p Resolução de conflitos p Prioritização: consiste na atribuição de uma "prioridade" a cada requisito (por exemplo elevada/média/baixa); p Confirmação: Confirma com as partes interessadas a completude dos requisitos, sua consistência e validade.

Especificação e documentação p Requisitos Funcionais p Requisitos não-funcionais

Validação p demonstrar que o documento de requisitos produzido corresponde, de fato, ao sistema que o cliente pretende

Engenharia de Requisitos / Análise de Requisitos Trecho do Pequeno Príncipe: Antoine Saint-Exupéry, 1996. E ele repetiu-me então, brandamente, como uma coisa muito séria: - Por favor... desenha-me um carneiro... Quando o mistério é muito impressionante, a gente não ousa desobedecer. Por mais absurdo que aquilo me parecesse a mil milhas de todos os lugares habitados e em perigo de morte, tirei do bolso uma folha de papel e uma caneta. Mas lembrei-me, então, que eu havia estudado de preferência geografia, história, cálculo e gramática, e disse ao garoto (com um pouco de mau humor) que eu não sabia desenhar. Respondeu-me: -Não tem importância. Desenha-me um carneiro. Como jamais houvesse desenhado um carneiro, refiz para ele um dos dois únicos desenhos que sabia. O da jibóia fechada. E fiquei estupefato de ouvir o garoto replicar:

Engenharia de Requisitos / Análise de Requisitos - Não! Não! Eu não quero um elefante numa jibóia. A jibóia é perigosa e o elefante toma muito espaço. Tudo é pequeno onde eu moro. Preciso é dum carneiro. Desenha-me um carneiro. Então eu desenhei. Olhou atentamente, e disse: - Não! Esse já está muito doente. Desenha outro. Desenhei de novo. -Bem vês que isto não é um carneiro. É um bode... Olha os chifres... -Fiz mais uma vez o desenho. Mas ele foi recusado como os precedentes: - Este aí é muito velho. Quero um carneiro que viva muito. -Então, perdendo a paciência, como tinha pressa de desmontar o motor, rabisquei o desenho ao lado. E arrisquei: -Esta é a caixa. O carneiro está dentro. Mas fiquei surpreso de ver iluminar-se a face do meu pequeno juiz: - Era assim mesmo que eu queria! Será preciso muito capim para esse carneiro?

Engenharia de Requisitos / Análise de Requisitos Definindo o Sucesso do Software p Clientes satisfeitos p Eles estão satisfeitos quando você: Atende às expectativas Entrega no prazo Entrega no orçamento O Sucesso começa com a Gerência de Requisitos

Engenharia de Requisitos / Análise de Requisitos Principais Fatores de Falha dos Projetos o Falta de Input do Usuário o Objetivos não estavam claros o Falta de suporte do nível executivo o Ignorar um grupo de clientes o Requisitos e especificações incompletos o Requisitos e especificações instáveis (mudanças) o Omitir um grupo de requisitos o Permitir inconsistências entre grupos de requisitos o Aceitar requisito inadequado, incorreto, indefinido, ou impreciso o Aceitar um requisito ambíguo e inconsistente

Engenharia de Requisitos / Análise de Requisitos Como os Projetos podem ter sucesso? p Análise do Problema Entenda o problema Obtenha concordância dos envolvidos p Levantamento dos Requisitos Identifique quem usará o sistema (atores) Descubra como o sistema será usado (casos de uso) p Gerência de Requisitos Especifique os requisitos completamente Gerencie expectativas, mudanças e erros Controle o aumento do escopo Defina a equipe e a mantenha informada

Engenharia de Requisitos / Análise de Requisitos Mas o que são Requisitos? p Os requisitos de um sistema de computação constituem uma especificação das características e propriedades do sistema ou p Uma descrição do que o sistema deve fazer, de como ele deve se comportar, bem como das suas restrições de operação.

Engenharia de Requisitos / Análise de Requisitos Mas o que são Requisitos? p É importante ressaltar que os requisitos descrevem "o que o sistema deve fazer"- e também "o que ele não deve fazer"- sem dizer "o como fazer". p Quando o requisito é expresso em termos do comportamento do sistema, este comportamento deve ser possível de ser percebido por um observador externo ao sistema.

Engenharia de Requisitos / Análise de Requisitos O que são requisitos? Clientes Usuários Necessidades Limitações Impossibilidades Infra-Estrutura Tecnológica

Engenharia de Requisitos / Análise de Requisitos Requisitos e Especificação p Requisito (IEEE) Uma condição ou capacidade necessitada por um usuário para resolver um problema ou alcançar um objetivo Uma condição ou capacidade que deve ser satisfeita por um sistema para satisfazer um contrato ou um padrão p Especificação: descrição rigorosa e minuciosa das características que um material, uma obra, ou um serviço deverá apresentar processo de representação dos requisitos de uma forma que leva à implementação bemsucedida

Engenharia de Requisitos / Análise de Requisitos Importância da Especificação Correta p Uma compreensão completa dos Requisitos do Software é fundamental para obter um software e um processo de desenvolvimento com alta qualidade p 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

Engenharia de Requisitos / Análise de Requisitos Especificação de Requisitos p ser a base para o desenvolvimento; p permitir o controle da qualidade do produto; p estabelecer a comunicação entre o pessoal envolvido no projeto; p auxiliar no entendimento do problema.

Engenharia de Requisitos / Análise de Requisitos Fase de Análise de Requisitos Engenharia de Sistemas de Computador PONTE ANÁLISE DE REQUISITOS Projeto de Software Escopo do Software Primeiro passo técnico Analista de Sistemas

Engenharia de Requisitos / Análise de Requisitos Conceito de Requisito Requisito é uma condição ou capacidade necessária para um usuário resolver um problema ou alcançar um objetivo; para satisfazer uma especificação em um sistema ou em um componente; com uma representação documentada. Em: The IEEE Standard Glossary of Software Engineering Terminology, 1997. Rocco, 2004

Engenharia de Requisitos / Análise de Requisitos Fase de Análise de Requisitos Engenharia de Sistemas de Computador PONTE ANÁLISE DE REQUISITOS Projeto de Software Escopo do Software Primeiro passo técnico Analista de Sistemas

Engenharia de Requisitos / Análise de Requisitos

Engenharia de Requisitos / Análise de Requisitos Requisitos de Software p A Norma ISO/IEC 9126 define seis características de qualidade de software que devem ser avaliados: Funcionalidade (finalidade do produto) Usabilidade (esforço para utilizar, aprender o produto) Confiabilidade (freqüência de falhas, recuperabilidade) Eficiência (desempenho) Manutenibilidade (esforço necessário para modificar) Portabilidade (capacidade de transferir o produto para outros ambientes)

Como os Projetos Podem Ter Sucesso? p Análise do Problema Entenda o problema Obtenha concordância dos envolvidos p Levantamento dos Requisitos Identifique quem usará o sistema (atores) Descubra como o sistema será usado (casos de uso) p Gerência de Requisitos Especifique os requisitos completamente Gerencie expectativas, mudanças e erros Controle o aumento do escopo Defina a equipe e a mantenha informada

Gerência de Requisitos Atividades de: - acompanhar o desenvolvimento - controlar as mudanças dos requisitos Ações: - planejamento desenvolvimento ( baseline ) - rastreabilidade com componentes de software - definição do estado e avaliação da qualidade - análise impacto e controle versões de mudanças Rocco, 2004

Necessidades da Elicitação p Faz p Faz p Faz Coleta de Fatos Identificação de Fontes de Informação Comunicação p Faz/Usa Ferramentas p Usa p Usa Pessoal Métodos p Depende de Pontos de Vista

Identificação das Fontes de Informação p O que são Stakeholders do sistema? Qualquer pessoa afetada de alguma forma pelo sistema (atores, cliente, usuário final, desenvolvedor) o A análise dos Stakeholders ajuda a determinar o impacto que um novo sistema de informação terá.

Coleta de Fatos p Entrevistas p Coleta e Leitura de documentos p Observação p Questionários p Análise de Protocolos p Enfoque antropológico (estudo do ser humano) p Reuniões p Reutilização p Recuperação (eng. reversa) do projeto do software

Características das TécnicasT p Brainstorm útil no início do processo levantamento de requisitos reunião conjunta objetivo estimular a imaginação e a geração de idéias não avalia um conjunto de soluções p Entrevistas não-estruturadas estruturadas

JAD - Joint Application Development p Usuários e desenvolvedores trabalham juntos em uma reunião com o objetivo de: identificar o problema propor elementos de solução negociar diferentes abordagens especificar um conjunto preliminar de requisitos de solução p Envolve: preparação para reunião a partir de uma requisição geral do produto reunião INTRODUZ TEMA MOSTRAR EXEMPLOS DISCUSSÃO CONSENSO DOCUMENTAÇÃO Processo Responsável PENDÊNCIA IMPASSE Gerência

Linguagem p A linguagem é reflexo da cultura de uma sociedade. p Para entendermos algo de importante para uma sociedade temos que entender sua linguagem. p Deve-se compreender a linguagem antes de elicitar as necessidades. Exemplos Fecha a mesa, Passagem de Resultados, Zipar, FTP, TCP/IP

Nível de Abstração p A comunicação pode ser ruidosa se os indivíduos estiverem dialogando em diferentes níveis de abstração. p Conflito presente entre generalistas e especialistas. Exemplo Devemos conquistar mercados (Diretoria) X Distribuir os vendedores (Gerência de Vendas)

Retroalimentação p Obrigar ao receptor da informação a recolocar a comunicação até que o emissor responda positivamente a recolocação. p Resumir, parafrasear, confirmar. a? a