Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

32
Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas

Transcript of Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Page 1: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Levantamento de Requisitos

Eveline Alonso VelosoPUC-Minas

Page 2: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Bibliografia PAULA-FILHO, Wilson de Pádua.

Engenharia de Software: Fundamentos, Métodos e Padrões. 2ª ed., Rio de Janeiro: LTC - Livros Técnicos e Científicos, 2003, capítulo 5.

PRESSMAN, Roger S. Engenharia de Software. 5ª ed., Rio de Janeiro: McGraw Hill, 2002, capítulos 10 e 11.

IEEE. SWEBOK: Guide to the Software Engineering Body of Knowledge. 2004, capítulo 2.

Transparências da professora Maria Augusta Vieira Nelson – PUC-Minas.

Page 3: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Levantamento de Requisitos Conjunto de atividades da Engenharia

de Requisitos que tem como objetivo descobrir: mais informações sobre o domínio da

aplicação; quais são os efeitos que o sistema deve

ter; sobre o domínio do problema;

restrições relacionadas ao produto de software.

Outras terminologias: elicitação de requisitos; descoberta de requisitos.

Page 4: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Dimensões do Levantamento de Requisitos

Page 5: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Dimensões do Levantamento de Requisitos Compreender o domínio da aplicação:

conhecimento geral de onde o sistema será implantado.

Compreender o problema a ser resolvido: entendimento dos detalhes específicos do

problema do cliente e dos usuários. Compreender o contexto de negócio:

entendimento de como os sistemas interagem e contribuem de forma geral com os objetivos do negócio do cliente.

Compreender as necessidades e restrições dos interessados.

Page 6: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Clientes e usuários: nem sempre sabem;

o que um produto de software pode oferecer;

podem não saber exatamente o que desejam;

podem ser relutantes em tomar decisões;

geralmente expressam os requisitos; em seus próprios termos. Problemas com a própria linguagem

utilizada: ambígua, mesmos termos com significados

diferentes, etc.

Usuários podem ter dificuldades; para descrever suas tarefas.

Dificuldades

Page 7: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Dificuldades Especialistas no domínio da aplicação

podem entender tão bem a área; que não tornam todos os requisitos explícitos.

Diferentes interessados no produto de software; podem ter requisitos conflitantes.

O escopo do sistema pode não estar bem-definido.

Os requisitos podem mudar durante o projeto de desenvolvimento de software: novos interessados no produto de software

podem surgir; o processo de negócio pode mudar.

Page 8: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Dificuldades Fatores políticos e organizacionais;

também podem influenciar os requisitos do sistema.

Por não ser a especialidade dos analistas de requisitos; as características do domínio da aplicação

podem não ser entendidas de forma suficiente; para produzir uma especificação de requisitos

satisfatória.

Analistas de requisitos podem não dominar; o próprio processo de levantamento de

requisitos do software. Analistas de requisitos podem concentrar-

se em informações desnecessárias neste momento; relacionadas, por exemplo, ao projeto

arquitetural do sistema.

Page 9: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

O que Deve ser Levantado? Objetivo do sistema;

Vocabulário do domínio da aplicação;

Requisitos: funcionais;

de projeto;

de processo;

não-funcionais;

Critérios de aceitação desses requisitos.

Page 10: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

O que Deve ser Levantado? Objetivo do sistema:

descrição sucinta e em alto nível sobre: o que queremos que o sistema faça; como o sistema contribuirá com os objetivos

do trabalho.

indica a motivação para o desenvolvimento do produto de software.

Stakeholders devem atribuir valores aos objetivos do sistema; relativos à prioridade.

Page 11: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

O que Deve ser Levantado? Vocabulário do domínio da aplicação:

termos utilizados na descrição dos requisitos do sistema.

O analista de requisitos precisa adquirir conhecimento sobre o domínio da aplicação, o que possibilitará: inferir conhecimento tácito;

que os stakeholders não explicitam;

avaliar requisitos conflitantes.

Page 12: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

O que Deve ser Levantado? Requisitos:

funcionais; de projeto; de processo; não-funcionais. Como saber se cada requisito foi

satisfeito? É necessário estabelecer critérios de

aceitação para os requisitos. Critérios de aceitação para requisitos

não-funcionais; devem ser mensuráveis.

Page 13: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Stakeholders; Ambiente operacional:

requisitos podem ser derivados do ambiente no qual o software executará.

Requisitos desse tipo podem afetar a viabilidade e custo do software;

e restringir as opções de solução.

Ambiente organizacional; Documentos da empresa cliente;

Fontes de Requisitos

Page 14: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Normas, legislação, etc; Produtos e sistemas já existentes:

produtos concorrentes; sistemas da empresa cliente;

com os quais o sistema a ser desenvolvido deverá interagir;

versões anteriores do sistema que será desenvolvido.

Fontes de Requisitos

Page 15: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

É toda pessoa que tem interesse no produto de software: clientes;usuários finais;especialistas do domínio da aplicação;

auxiliam na obtenção de conhecimento tácito;

que os usuários não explicitam;

departamento de marketing;desenvolvedores;engenheiros envolvidos na manutenção

e operação de outros sistemas relacionados;

reguladores.

Stakeholder

Page 16: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Stakeholders representam diferentes maneiras de se olhar para um problema; ou pontos de vista diferentes.

Uma análise com várias perspectivas é importante; já que não há uma única forma

correta para analisar os requisitos do sistema.

Stakeholder

Page 17: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

É a forma mais comum de levantamento de requisitos.

O objetivo de uma entrevista é:obter informações do

entrevistado, sobre:o domínio da aplicação;o processo de negócio existente;um determinado assunto ou

problema; para entender os problemas reais e

soluções potenciais, da perspectiva dos stakeholders do sistema.

Técnicas de Levantamento de Requisitos – Entrevista com Stakeholders

Page 18: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Cada stakeholder fornece informações; sobre sua área de interesse ou

especialidade.

Pode ser individual ou em grupo:em grupo:

permite a comprovação imediata de discordâncias.

Não se deve assumir nenhum conhecimento prévio sobre o problema; chama-se essa postura de “ignorante

inteligente”.

Técnicas de Levantamento de Requisitos – Entrevista com Stakeholders

Page 19: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Diretrizes para uma Boa Entrevista:desenvolva um Plano Geral de

Entrevistas:quem entrevistar?

consulte o organograma da empresa cliente para definir as áreas envolvidas e a ordem das entrevistas.

planeje a entrevista:defina seu escopo;obtenha e estude os documentos necessários

antes da entrevista;defina os objetivos da entrevista, os pontos

que serão tratados e seu roteiro; deve-se preparar as perguntas

antecipadamente;

defina o perfil necessário para o entrevistado.

Técnicas de Levantamento de Requisitos – Entrevista com Stakeholders

Page 20: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Diretrizes para uma Boa Entrevista: durante a entrevista, recomenda-se:

ser imparcial; não influenciar o entrevistado; evitar interrupções por terceiros; evitar criar atritos recíprocos e bloqueios de

comunicação; evitar discussões desnecessárias; organização.

sugere-se elaborar: um resumo oral da entrevista, ao final; um resumo escrito, que deve ser

encaminhado para o entrevistado, para sua validação.

Técnicas de Levantamento de Requisitos – Entrevista com Stakeholders

Page 21: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Técnicas de Levantamento de Requisitos – JAD Joint Application Design. Técnica desenvolvida pela IBM;

orientada ao trabalho em grupo; decisões baseiam-se em consenso; considerando que um grupo de pessoas pode

obter melhores resultados para seu problema; do que trabalhando individualmente.

Em geral, resulta em um conjunto de requisitos mais rico e consistente; do que o usualmente alcançado através

de entrevistas.

Page 22: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Técnicas de Levantamento de Requisitos – JAD O processo é altamente estruturado. Cada sessão tem uma finalidade previamente

definida. O líder da sessão conduz o grupo para o

objetivo; segundo o indicado na agenda.

Permite o levantamento e refinamento de idéias;

que dificilmente seriam obtidas através de entrevistas.

Requisitos conflitantes são detectados mais cedo;

permitindo economia de tempo; pela resolução mais rápida de divergências.

Page 23: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Técnica em que os diversos stakeholders do sistema se reúnem;para levantar idéias e emitir

opiniões sobre o sistema.Na primeira sessão de

brainstorming, idéias são apenas levantadas;não se deve julgar as idéias;é proibido criticar.

Sessões posteriores são usadas;para priorizar o que foi levantado.

Técnicas de Levantamento de Requisitos – Brainstorming

Page 24: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Técnicas de Levantamento de Requisitos – Cenário Meio que permite ao analista de

requisitos prover um contexto para a formulação de questões a respeito: da execução das tarefas do usuário; dos requisitos do sistema.

Permite também que questões como “e se” e “como isso é resolvido?” sejam formuladas.

Page 25: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Perguntas são distribuídas aos stakeholders do sistema.

Resultados são obtidos por escrito.

Em geral, é difícil elaborar questionários eficazes.Técnica mais aplicável em

mercados específicos;onde perguntas são bem definidas.

Técnicas de Levantamento de Requisitos – Questionário

Page 26: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Técnicas de Levantamento de Requisitos – Protótipos

São ferramentas para o

levantamento e validação de

requisitos.

Criação de uma versão inicial e, em

geral, parcial do sistema;

útil para clarear requisitos mal-

definidos.

A idéia é desenvolver um protótipo

o mais cedo possível;

e colher feedback dos stakeholders.

Page 27: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Atuam de forma semelhante a cenários; provendo um contexto;

em que os usuários podem melhor compreender de que informações o analista de requisitos necessita.

Baseados no principio IKIWISI: “I’ll know it when I see it”. As pessoas têm mais facilidade em reconhecer

a solução correta; do que em descrevê-la.

Não precisam ser: funcionais; visualmente fiéis ao produto final.

Precisam demonstrar como o usuário irá interagir com o sistema.

Técnicas de Levantamento de Requisitos – Protótipos

Page 28: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Vale tudo:protótipos de papel;desenhos de telas;páginas HTML estáticas.

O importante é que o cliente saiba dizer; se é ou não aquele o sistema que ele

precisa.

Não serve para avaliar a correção e precisão dos requisitos.

Deve-se jogar fora o código do protótipo descartável!

Técnicas de Levantamento de Requisitos – Protótipos

Page 29: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Técnicas de Levantamento de Requisitos – Observação

Page 30: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Técnica em que o analista de

requisitos busca informações

na documentação existente na

empresa cliente:relatórios;

manuais;

normas; etc.

Técnicas de Levantamento de Requisitos – Estudo de Documentos

Page 31: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Quais são alguns motivos pelos quais você e seus colegas usariam o novo sistema?

Que objetivos você tem em mente que esse sistema o ajudaria a cumprir?

Que aspecto do sistema você acha mais interessante?

Que aspecto terá mais valor para você? E menos valor?

Que problemas você espera que esse sistema resolva para você?

Que palavras você usaria para descrever o sistema?

Como você vai julgar se o sistema é um sucesso?

Perguntas para se Levantar Requisitos

Page 32: Levantamento de Requisitos Eveline Alonso Veloso PUC-Minas.

Em que aspectos você imagina que o sistema deva ser semelhante à forma como você trabalha hoje? Como ele deve ser diferente?

Que aspectos dos seus processos de negócios você quer manter? Quais você quer substituir?

Que eventos externos estão associados ao sistema?

Você pode descrever o ambiente onde o sistema vai ser usado?

Algumas partes do produto são mais importantes que outras por motivos de desempenho, segurança, robustez, disponibilidade, ou alguma outra característica?

Há alguma restrição ou regra a qual o sistema deve estar de acordo?

Perguntas para se Levantar Requisitos