Técnicas de levantamento de requisitos

Marcely Dias
marcely.dias@unibratec.edu.br
1

Etapas no Desenvolvimento de Sistemas
Requisitos;  Análise & Projeto;  Implementação;  Testes;  Implantação;  Manutenção. 

Desenvolvimento de Sistemas

2

Porque e como obter informações ?! 

Técnicas de levantamento de requisitos.
Analisar documentação existente / sistema existente; Entrevistas; Questionários; Observação direta; Reuniões; Sessões JAD.

Desenvolvimento de Sistemas

3

Primeiro passo para obter informações

Estudar e entender o vocabulário do sistema / cliente !
Desenvolvimento de Sistemas
4

Analisar outros diagramas disponíveis. Entender o modelo de dados existente.Técnicas de levantamento de requisitos  Analisar documentação existente / sistema existente. Entender o modelo de classes. Desenvolvimento de Sistemas 5 . Leitura da documentação do sistema atual. Navegar pelo sistema atual para ter acesso a telas e relatórios.

Promover a compreensão básica do problema.Compreender e verbalizar solução. Ex: Quem está por trás do pedido deste trabalho ? Quem usará a solução ? Qual o benefício de uma solução bem-sucedida ?  2° . Ex: Como caracterizar um ³bom´ resultado que seria gerado por uma solução bem-sucedida ? Qual problema esta solução resolverá ? Você poderia mostrar ou descrever o ambiente em que a solução será usada ? Desenvolvimento de Sistemas 6 .  1º .Entrevista  Problemas nas entrevistas A primeira entrevista:  Desconserto entre o analista e o cliente.

 Quem no momento está ocupado. Criar ressentimentos recíprocos. Desenvolvimento de Sistemas 7 .  Quem não sabe responder as perguntas.Entrevista  3º . Fazer perguntas erradas e obter respostas erradas.Garantir a efetividade do encontro. Ex: Você é a pessoa certa para responder essas perguntas ? Minhas perguntas são pertinentes ao problema que você tem ? Existe alguém que possa fornecer informações adicionais ? Entrevistar a pessoa errada no momento errado.

 Interferir nas atividades. Autorização para falar com usuários  Quem pode fornecer a informação.Entrevista  Diretrizes para a realização de entrevistas: Desenvolver um Plano Geral de Entrevistas.  Seqüência das entrevistas.  Quem autoriza acha que sabe mais.  Observar o organograma.  Atenção para os funcionários administrativos.  Quem pode deturpar os requisitos. Desenvolvimento de Sistemas 8 .

Desenvolvimento de Sistemas 9 . Uso de ferramentas: Protótipo. Tempo da entrevista 1 hora ou menos (planejamento). Coletar antes da entrevista dados pertinentes ao assunto. transformação funcional ou ³depósito´ de dados. Certificar que o usuário conhece o assunto. Relatórios de saída. Diagramas de análise de classes. Tentar descobrir que informação o usuário está mais interessado.Entrevista    Planejamento para fazer uso eficiente do tempo: Você está tomando tempo do usuário.

explique como você« Objetivas  Quantos«. Quanto tempo«. Qual das seguintes informações« De aprofundamento  Permite explorar os detalhes de uma questão  Porquê?. Você poderia dar um exemplo?  Cuidado para não chegar a detalhes de implementação Desenvolvimento de Sistemas 10 .Entrevista  Tipos de questões Subjetivas  O que você acha de«.

 Diga ao entrevistado o que será feito com as informações coletadas e re-assegure seu aspecto confidencial. Se for usar gravador. Desenvolvimento de Sistemas 11 .  Relembre o entrevistado de que você estará registrando pontos importantes.  Apresente-se e esboçe brevemente os objetivos da entrevista.  A entrevista deve durar entre 45 minutos e uma hora. coloque-o em local visível.Entrevista  Durante Como registrar  Gravador. anotações Como conduzir uma entrevista  Chegue um pouco antes do horário marcado.  Mantenha o controle da entrevista.

marque nova entrevista. Use questões de aprofundamento. peça para o entrevistado dar definições ou outros esclarecimentos.Entrevista  Durante Como conduzir uma entrevista  venda a ³idéia do sistema´. provendo ao entrevistado as informações necessárias.  Quando for o caso.  Ao término da entrevista. Após Relatório da entrevista Desenvolvimento de Sistemas 12  .  Faça um resumo da entrevista e dê suas impressões globais.  Pergunte se há outra pessoa com a qual você deveria conversar. pergunte se há algo mais sobre o assunto que o entrevistado ache importante você saber.  Informe o entrevistado sobre os passos seguintes.  Quando estiver incerto sobre uma questão.

Propósito específico. Desenvolvimento de Sistemas 13 .Questionário Técnica de levantamento de requisitos.  Assim como uma entrevista:  Formato pergunta ± resposta.  Questões escritas distribuídas para um conjunto de pessoas envolvidas com o sistema.

 Determinar quanto um sentimento é realmente difundido ou limitado.Objetivos Procurar quantificar o que foi achado em entrevistas.  Desenvolvimento de Sistemas 14 .  Examinar uma grande amostra de usuários do sistema para sentir problemas ou levantar questões importantes antes das entrevistas.

Desenvolvimento de Sistemas 15 . grupos ou coisas.Vantagens  Permite ao analista obter de várias pessoas afetadas pelo sistema: Posturas: o que elas dizem querer. Características: propriedades de pessoas. Comportamento: o que elas fazem. Crenças: o que elas pensam ser verdade.

 Pode ser útil combinar os dois métodos:  Levando a uma entrevista respostas de questionários não claras para maiores explicações.Questionários x entrevistas Há muitas similaridades. Desenvolvimento de Sistemas 16 . Projetando o questionário com base no que foi levantado em uma entrevista.

..  Se deseja saber uma opinião global antes de se definir qualquer direção específica (estudo exploratório).  É necessário saber a proporção de pessoas de um grupo muito grande que aprova ou não uma determinada idéia. As pessoas se encontram espalhadas pela organização.Usar questionários quando.  Desenvolvimento de Sistemas 17 .

Controlar o contexto de forma geral. Levantar. Definir um termo obscuro. Ter fluxo definido. portanto. antecipadamente. Num questionário. Ter administração planejada em detalhes. as dúvidas das pessoas que irão respondê-lo.Redação das questões    Uma entrevista permite a interação a respeito das questões e seus significados. isso não é possível! É preciso. Desenvolvimento de Sistemas 18 . Alterar o curso do questionamento. O analista pode: Refinar uma questão. ter os seguintes cuidados: Ter questões claras e não ambíguas.

Tipos de questões Assim como nas entrevistas:  Questões subjetivas.  Desenvolvimento de Sistemas 19 .  Questões objetivas.

Devem ser restritas o suficiente para guiar as pessoas. Desenvolvimento de Sistemas 20 . Atenção a perguntas que permitem respostas muito amplas.: O que você acha do novo sistema? Quando usar? Para levantar opiniões sobre algum aspecto do sistema. que dificultem a interpretação e comparação. de modo que respondam de maneira específica.  Ex. Situações exploratórias.Questões subjetivas   Cuidados: Antecipe o tipo de resposta que você espera obter.

 Quando usar?  Quando o analista é capaz de listar todas as possíveis respostas.Questões objetivas Envolve a escolha de uma escala para as respostas. Desenvolvimento de Sistemas 21 . Para examinar uma grande amostra de pessoas.

Questões objetivas x subjetivas Subjetivas Tempo gasto para responder Natureza exploratória Amplitude e profundidade Facilidade de preparação Facilidade de análise Alto Objetivas Baixo Alta Alta Fácil Difícil Baixa Baixa Difícil Fácil 22 Desenvolvimento de Sistemas .

Prefira perguntas curtas. Evite redação tendenciosa. Não pergunte algo que talvez não saibam responder. Prime pela simplicidade. Desenvolvimento de Sistemas 23 . evite termos vagos ou ambíguos. Tente evitar que os entrevistados se sintam investigados ou obrigados a alguma coisa. Garanta que as questões estão tecnicamente precisas.Linguagem utilizada       Use a linguagem das pessoas que irão responder.

Desenvolvimento de Sistemas 24 . Em questões de escala. Seja consistente no estilo.Projeto do questionário   Um formulário bem projetado (aspecto visual) pode aumentar a taxa de resposta. peça para circular o número correspondente à resposta. Dicas: Deixe amplos espaços em branco. Deixe espaço suficiente para as respostas subjetivas. Lembre-se dos objetivos do questionário.

Desenvolvimento de Sistemas 25 .  Dicas:  As primeiras questões devem ser de interesse dos entrevistados. Agrupe itens de conteúdo similar e observe tendências de associação.Ordem das questões Lembre-se dos objetivos e analise a função de cada questão para alcançá-los.

etc. Desenvolvimento de Sistemas 26 .redação.). Avaliar as questões de modo geral (escolha do tipo. ordenação. Peça que verbalizem críticas e dúvidas.  Objetivos: Antecipar dúvidas. escala das respostas. aplique o questionário em um grupo-piloto antes para simulação. Peça atenção à adequabilidade dos termos.Testando o questionário  Se preciso. Avaliar a linguagem utilizada.

instruções uniformes resultado rápido. elas podem ter coisas importantes para fazer naquele momento. Vantagens: 100% de retorno.  Métodos de aplicação: Reunir todos os respondedores em um mesmo local para aplicação.  Desenvolvimento de Sistemas 27 .  Problemas: é difícil reunir todas as pessoas.Aplicação do questionário  Quem deve responder? Definido pelos objetivos do questionário.

Aplicação dos questionários    Métodos de aplicação (continuação): Analista entrega e recolhe individualmente:  Vantagens: boa taxa de resposta.  Problemas: desperdício de tempo do analista. Desenvolvimento de Sistemas 28 . Por correspondência: Solução para questionar pessoas em locais remotos. Entrevistado administra o questionário: Vantagens: anonimato garante respostas mais reais. respondedo pode ser identificado. Problema: taxa menor de resposta.

 É interessante avaliar se o formulário teve o efeito esperado e se as respostas são confiáveis.  Desenvolvimento de Sistemas 29 .Avaliação dos questionários Depois de preenchidas. as respostas são processadas para gerar a informação desejada.

Desenvolvimento de Sistemas 30 . Na medida do possível o analista deve executar as atividades do usuário para entender como o usuário opera em seu próprio ambiente.Técnicas de levantamento de requisitos  Observação direta Pode ser usada para diversas finalidades como:  Processo e confirmação dos resultados de uma entrevista  Identificação de documentos que devem ser coletados para análise posterior  Esclarecimento do que está sendo feito no ambiente atual e de que forma  Tarefas similares. O analista observa sem intervir diretamente no processo. mas ele interage com a pessoa que está observada.

Técnicas de levantamento de requisitos  Observação direta Antes  Identificar as áreas de usuário a serem observadas  Obter aprovação das gerências apropriadas  Obter nomes e funções das pessoas-chave que serão envolvidas no estudo da observação  Explicar para as pessoas observadas o que será feito e por quê Durante  Familiarizar-se com o local de trabalho que está sendo observado  Observar os agrupamentos organizacionais atuais  Observar as facilidades manuais e automatizadas em uso atualmente  Coletar amostras de documentos e procedimentos escritos usados em cada processo específico que está sendo observado Desenvolvimento de Sistemas 31 .

Desenvolvimento de Sistemas 32 .  Erros podem ser induzidos pelos analistas Essa técnica é freqüentemente usada para complementar informações obtidas com outras: entrevistas e questionários.Técnicas de levantamento de requisitos  Observação direta Após  Documente as descobertas  Consolide os resultados  Reveja os resultados consolidados com as pessoas observadas e/ ou com seus superiores. Desvantagem  O processo global consome TEMPO.

Os participantes devem ter conhecimento dos tópicos que serão discutidos. Tópicos devem ser definidos. Qualquer problema a culpa é do moderador. Desenvolvimento de Sistemas 33 . E participar ativamente nos objetivos do encontro.Reuniões      Os participantes devem dar a sua contribuição.

a reunião entra rapidamente num período de maturidade. ³Infância´  momento em que os participantes estão juntos pela primeira vez. ³Adolescência´  reforçar o controle  canalizar a energia dos participantes para áreas específicas ³Adulta´  A reunião passa por uma fase adulta em que o animador se torna apenas um facilitador. Desenvolvimento de Sistemas 34 . o tipo de preparação necessária e como se pretende que o encontro se desenrole. Evolução do grupo. ³Maturidade´  como o grupo se reúne regularmente.Reuniões ± Abordagem evolutiva   Reuniões menos freqüentes e mais curtas. estão habituados a terem reuniões juntos e o clima gerado é de menos tensão.  definir as regras a respeitar: a pontualidade.  Moderador dispensável  Os participantes conhecem-se bem.

 Como preparar a informação para os não presentes ?  Divulgar o plano de reunião Desenvolvimento de Sistemas 35 . Plano:  Objetivo da reunião. Fase 1 ± Antes da reunião Reunião começa antes da equipe estar reunida.  Quem precisa estar presente.Reuniões ± Como realizar uma reunião de sucesso   Durante os primeiros 5 minutos o moderador será julgado.  Qual o resultado esperado.

Normas simples  Utilizar agenda.  Rotatividade de funções Desenvolvimento de Sistemas 36  .  Evitar dispersões  Redator. Fase 2 ± Durante a reunião Não perca o controle.  Ter o material certo a mão. Definir o tempo de intervenção.Reuniões  Antecipar o que pode ocorrer mal (fase 2) Melhorar o planejamento. Tentar reunir consenso.

Distraídos. Desenvolvimento de Sistemas 37 .Reuniões   Tipos de pessoas Participativo. Tímidos. Fase 3 ± Após a reunião Respeito Feedback  Decisões.  Próximas etapas. Agressivos.  Próxima reunião. Monopolizam.

etc. envolvendo processos complexos e diversos perfis de usuários e profissionais diferentes). gestores.Sessões JAD  Joint Application Development (JAD) Desenvolvido pela IBM anos 70. usuários.  Os melhores sistemas de informação são resultado do trabalho conjunto de todas as pessoas envolvidas: profissionais de TI. assim como suas limitações.  Os profissionais de TI são os mais preparados para identificar as possibilidades que a tecnologia oferece. Objetivo: organizar as reuniões que discutem o próprio processo de levantamento de requisitos e gerenciamento do projeto Grandes projetos (grandes sistemas de software. Desenvolvimento de Sistemas 38 . analistas de negócio. Princípios Básicos:  Ninguém é melhor para explicar um determinado processo do que as pessoas que trabalham com ele.

os seguintes aspectos devem ser bem definidos: Desenvolvimento de Sistemas 39 . Para que a reunião seja produtiva.Sessões JAD  Componentes do JAD Sessões (Pontos fortes do JAD) Uma sessão nada mais é do que uma reunião com profissionais envolvidos no projeto.

Desenvolvimento de Sistemas 40 . é importante que ele participe da primeira e última sessões.  Deve ter a autoridade e responsabilidade reconhecidas.  Trabalhará bastante ligado ao gestor.  Apesar dele provavelmente não participar de todas as sessões.  Garante que a sessão será conduzida adequadamente e que a opinião de todos seja ouvida.  Papel mais crítico das sessões JAD.  Habilidade para lidar com pessoas é essencial. Gestor  Patrocinador do projeto.  Representado pelo diretor ou gerente da área a qual o sistema irá atender.Sessões JAD  Equipe JAD Facilitador:  Representado pelo líder do projeto. fornecendo resumos das sessões e definindo metas regularmente.

 São as pessoas que entendem do negócio e que poderão dizer o que é necessário e como os processos de negócio podem e devem ser Desenvolvimento de Sistemas melhorados.  Conhecem as tecnologias disponíveis para serem aplicadas  Avaliam as vantagens e limitações das soluções propostas.Sessões JAD  Equipe JAD Especialistas São tipicamente os profissionais de TI.  41 .  Clientes Usuários do sistema e/ou analistas de negócio.

 Notebooks e gravadores podem ser ferramentas úteis para o anotador. quais decisões foram tomadas. por quem e por que. assim como reservar um tempo ao fim da sessão para considerações finais. Gerenciador de tempo  Monitorar o andamento da sessão com base no tempo estimado.  Cabe a ele registrar o que foi dito.Sessões JAD  Equipe JAD Anotador  Responsável por registrar o que foi discutido na sessão JAD. Desenvolvimento de Sistemas 42 .  Avisar aos membros da sessão quando o tempo para cada assunto estiver sendo ultrapassado.

Antes mesmo da primeira sessão de JAD.  Definir o Escopo Desenvolvimento de Sistemas 43 . tanto quanto na condução das sessões em si.Sessões JAD  O processo do JAD ³Gira em torno das sessões´  O sucesso da aplicação desta técnica é baseado nas tarefas de preparo e finalização das sessões. o gestor e o líder do projeto se encontrarão para definir alguns pontos:  Composição da equipe que irá participar da sessões.

assim como do escopo do projeto.Sessões JAD  O processo do JAD Quadro do projeto (Uma ferramenta do JAD adequada para esta tarefa)  Criado inicialmente pelo líder do projeto e o gestor.  Visão geral dos objetivos.  Papel importante na condução das sessões JAD e é recomendado que esteja sempre à vista durante as sessões. Desenvolvimento de Sistemas 44 .

 Quadro do projeto sempre deve ser observado. evitando que determinadas discussões demorem demasiadamente e que outros assuntos não sejam abordados.  Gerenciador do tempo ± interrompe quando necessário. lembrando os assuntos em foco e os que estão fora do foco. O JAD utiliza os seguintes recursos para mantê-las dentro da proposta:  O facilitador é neutro: ele não opina nos assuntos discutidos.Sessões JAD  Condução Sabemos como reuniões tendem facilmente a sair do foco e se tornarem improdutivas. Cabe a ele também evitar que determinados indivíduos dominem a reunião. A condução das sessões JAD é muito importante.  Anotador ± registra os assuntos discutidos e decisões tomadas. mas pode direcionar os assuntos conforme o planejamento inicial. impedindo assim discussões improdutivas. Desenvolvimento de Sistemas 45 .

 Finalização: considerações finais e próximos passos como agendamento da próxima sessão. Desenvolvimento de Sistemas . respeitando o tempo delimitado para os mesmos. onde os objetivos definidos inicialmente devem ser revisados e teoricamente todos foram atingidos.  Discussões: discussão dos tópicos em seqüência. incluindo o gestor. Importante a presença de todos os membros. assim como os papéis e responsabilidades de cada membro da equipe. Última sessão Sessão de finalização. pontos que necessitam 46 aprofundamento.Sessões JAD    Primeira sessão Reunião em que o processo do JAD é explicado. Estrutura da sessão Todas as sessões JAD devem seguir a seguinte estrutura:  Abertura: apresentação dos tópicos a serem discutidos. etc.

Intervalos entre sessões  Assuntos a serem discutidos na sessão seguinte podem demandar algum levantamento de informações por parte dos membros da equipe.  Permite que as idéias amadureçam.Sessões JAD  Estrutura da sessão Disponibilizar a ata  As anotações do anotador devem ser transformadas em uma ata  Disponibilizar para todos os membros da equipe. Desenvolvimento de Sistemas 47 .

Dúvidas? Desenvolvimento de Sistemas 48 .