Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Introdução aos Sistemas de Informação 1/2005 3. Decidir quem entrevistar. Incluir na lista de entrevistados pessoas-chave de todos os
Aula 3 -Técnicas de Levantamento de Requisitos níveis da organização afetados pelo sistema. A pessoa de contato na organização pode
(material elaborado pelas Profas. Rosângela e Junia) ajudar nesta seleção. Quando necessário, use amostragem.
4. Preparar a entrevista. Uma entrevista deve ser marcada com antecedência e deve ter
Em todo desenvolvimento de software, um aspecto fundamental é a captura dos requisitos uma duração entre 45 minutos e uma hora, no máximo duas horas.
dos usuários. Para apoiar este trabalho, diversas técnicas podem ser utilizadas. 5. Decidir sobre os tipos de questões e a estrutura da entrevista. É o ponto
principal de uma entrevista, saber elaborar as questões e a estrutura da entrevista.
Em um levantamento de requisitos, geralmente um engenheiro de software se depara com 6. Decidir como registrar a entrevista. Registrar as informações obtidas para que
duas importantes questões: não sejam perdidas logo em seguida. Os meios mais naturais de se registrar uma entrevista
1. Entre os muitos relatórios, formulários e documentos gerados pelos membros de incluem anotações e o uso de gravador.
uma organização, quais deverão ser objeto de investigação?
2. Pode haver um grande número de pessoas afetadas pelo sistema de informação Tipos de Questões
proposto. Quais delas devem ser entrevistadas, observadas ou questionadas? Podem ser de três tipos básicos:
Servindo de base para todas as técnicas de levantamento de requisitos, entre elas 1. Questões subjetivas: permitem respostas “abertas”.
investigação, entrevistas e observação, estão as decisões cruciais dizendo respeito a o que Exemplos: O que você acha de ...? Explique como você ...?
examinar e quem questionar ou observar. Vantagens:
Provêem riqueza de detalhes.
Revelam novos questionamentos.
1. Entrevista
Colocam o entrevistado a vontade.
Uma entrevista de levantamento de informações é uma conversa direcionada com um Permitem maior espontaneidade.
propósito específico, que utiliza um formato “pergunta-resposta”. Desvantagens:
Podem resultar em muitos detalhes irrelevantes.
Objetivos: Perda do controle da entrevista.
- obter as opiniões do entrevistado, o que ajuda na descoberta dos problemas- Respostas muito longas para se obter pouca informação útil.
chave a serem tratados; Podem dar a impressão de que o entrevistador está perdido, sem objetivo.
- conhecer os sentimentos do entrevistado sobre o estado corrente do sistema;
- obter metas organizacionais e pessoais; e
- levantar procedimentos informais. 2. Questões objetivas: limitam as respostas possíveis.
Exemplos: Quantos ...? Quem ...? Quanto tempo ...? Qual das seguintes informações ...?
Pontos a serem observados em um entrevista, considerando que o desenvolvedor está Vantagens:
estabelecendo um contato um relacionamento com uma pessoa estranha: Ganho de tempo, uma vez que vão direto ao ponto em questão.
1. construa, rapidamente, uma base de confiança e entendimento; Mantêm o controle da entrevista.
2. mantenha o controle da entrevista; Levam a dados relevantes.
3. venda a “idéia do sistema”, provendo ao entrevistado as informações Desvantagens:
necessárias. Podem ser maçantes para o entrevistado.
Podem falhar na obtenção de detalhes importantes.
Não constroem uma afinidade entre entrevistador e entrevistado.
Etapas de uma entrevista:
Antes 3. Questões de aprofundamento: permitem explorar os detalhes de uma questão.
Podem ser subjetivas ou objetivas.
1. Estudar material existente sobre os entrevistados e suas organizações.
Exemplos: Por que? Você poderia dar um exemplo?
Procure dar atenção especial à linguagem usada pelos membros da organização,
procurando estabelecer um vocabulário comum a ser usado na elaboração das questões da Quadro comparativo das questões subjetivas e objetivas
entrevista.
Subjetivas Objetivas
Isso para otimizar o tempo despendido nas entrevistas, evitando-se perguntar questões
Confiabilidade dos dados Baixa Alta
básicas e gerais.
Uso eficiente do tempo Baixo Alto
2. Estabelecer objetivos. Há algumas áreas sobre as quais um engenheiro de software Precisão dos dados Baixa Alta
desejará fazer perguntas relativas ao processamento de informação e ao comportamento na Amplitude e profundidade Alta Baixa
tomada de decisão, tais como fontes de informação, formatos da informação, freqüência na Habilidade requerida do entrevistador Alta Baixa
tomada de decisão, estilo da tomada de decisão, etc.
3 4
4- Entrevista Não Estruturada: Não há uma definição da seqüência das questões. De O relatório da entrevista deve capturar a essência da entrevista. Assim, escreva o relatório
acordo com o andar da entrevista, caminhos possíveis são avaliados e a seqüência é tão rápido quanto possível para assegurar qualidade.
estabelecida. Requer mais tempo. Vale ressaltar que, ainda que a seqüência das questões Registre entrevistado, entrevistador, data, assunto e objetivos. Diga se os objetivos foram
não seja definida a priori, as questões devem ser definidas antecipadamente, ou seja, o alcançados e aponte objetivos para entrevistas futuras. Registre, ainda, os pontos principais
planejamento é necessário. da entrevista e sua opinião.
Remeta-o ao(s) entrevistado(s) para autenticar as informações.
Durante
Como registrar as entrevistas
2. Questionário
Gravador: requer a permissão do entrevistado.
O uso de questionários constitui uma técnica de levantamento de informações que permite
Vantagens:
ao engenheiro de software obter de várias pessoas afetadas pelo sistema (corrente ou
Registro completo da entrevista.
proposto) informações, tais como:
Rapidez e melhor desenvolvimento.
- Posturas: o que as pessoas na organização dizem querer;
Reprodução para outros membros da equipe.
- Crenças: o que as pessoas pensam ser realmente verdade;
Desvantagens:
- Comportamento: o que as pessoas fazem;
5 6
3. Respondedor administra o questionário. - Acumular informações estatísticas a respeito das tarefas: freqüência que ocorrem,
Vantagens: estimativas de volumes, tempo de duração p/ cada um que está sendo observado, etc..
Anonimato garantido.
- Ser objetivo e não comentar as formas de trabalho de maneira não construtiva, na
Respostas mais reais. interação com o usuário.
Problemas:
Taxa menor de respostas. Este problema pode ser minimizado, mantendo-se uma lista - Observar as exceções que podem ocorrer e não são citadas por não serem operações
de respondedores e controlando a devolução. normais de negocio.
- Quando completar a observação, agradeça às pessoas pelo apoio.
4. Por correspondência. Útil somente para alcançar pessoas distribuídas geograficamente.
Após Após
Como ocorre com a entrevista o desenvolvedor elaborar um relatório contendo todas as - Documente as descobertas
informações conseguidas e enviar ao solicitante do sistema para a validação das - Consolide os resultados
informações.
- Reveja os resultados consolidados com as pessoas observadas e/ ou com seus
superiores.
3. Observação Direta
Desvantagem
Pode ser usada para diversas finalidades como: - O processo global consome TEMPO.
- Processo e confirmação dos resultados de uma entrevista - Erros podem ser induzidos pelos analistas
- Identificação de documentos que devem ser coletados para análise posterior
Essa técnica é freqüentemente usada para complementar informações
- Esclarecimento do que está sendo feito no ambiente atual e de que forma obtidas com outras: entrevistas e questionários.
- Tarefas similares.
Antes
- Identificar as áreas de usuário a serem observadas Uso da Técnica: quando o trabalho do usuário é dividido em muitos processos
executados por vários deptos de negócio e não se tem uma visão global da situação.
- Obter aprovação das gerências apropriadas
- Obter nomes e funções das pessoas-chave que serão envolvidas no estudo da
observação Tipos de problemas que ocorrem:
- Explicar para as pessoas observadas o que será feito e por quê - Reclamações sobre interações desnecessárias;
- Tempo perdido com a falta de habilidade de seguir em frente
- Excesso de erros no local de trabalho
Durante
- Familiarizar-se com o local de trabalho que está sendo observado
- Observar os agrupamentos organizacionais atuais Essa técnica de identificação de problemas tem suas raízes na engenharia industrial.
- Observar as facilidades manuais e automatizadas em uso atualmente Processo: uma série de operações que são conduzidas em um departamento e que
produzem algum resultado.
- Coletar amostras de documentos e procedimentos escritos usados em cada processo
específico que está sendo observado Análise: significa estudar um processo e dividi-lo em elementos mais simples e ver
como podem ser melhorados.
9 10
Líder de sessão JAD- coração do processo JAD. Seu papel é conduzir as entrevistas
Símbolos de análise de fluxo de processos: preparatórias antes da sessão JAD real com o executivo patrocinador e com gerentes
funcionais para a definição do escopo básico do processo.
Representantes do SI: poucas pessoas convidadas a participar das sessões. Tem 3) Preparação do material para o workshop: Analista de Sistema (pode ser o líder
conhecimentos técnicos das aplicações atuais do negócio pelo ponto de vista dos JAD) constrói um modelo elementar do sistema – esboço de telas e relatórios que serão
sistemas (de 1 a 4) revisados durante o workshop.Esses relatórios são veículos para simular as idéias.
11 12
Tipos de Protótipos
7. Casos de Uso
Protótipo não-operacional: apenas as interfaces de entrada e saída são
Um caso de uso especifica um comportamento de um sistema segundo uma perspectiva
implementadas; o processamento propriamente dito não. É útil para avaliar certos
externa e é uma descrição de um conjunto de seqüências de ações realizadas pelo sistema
aspectos do sistema quando a codificação requerida pela aplicação é custosa e a
para produzir um resultado de valor observável por um ator [Booch00]. Em resumo, um
noção básica do que é o sistema pode ser transmitida pela análise de suas entradas e
caso de uso (use case) é uma interação típica entre um ator (usuário o, outro sistema
saídas.
comuputacional ou um dispositivo) e um sistema. Um caso de uso captura alguma função
Protótipo “arranjado às pressas”: o protótipo possui toda a funcionalidade do visível ao ator e, em especial, busca atingir uma meta do usuário.
sistema final, mas não foi construído com o devido cuidado e, portanto, sua
qualidade e desempenho são deficientes. Casos de uso têm dois importantes papéis:
Protótipo “primeiro de uma série”: um sistema piloto é desenvolvido para ser 1. Eles capturam os requisitos funcionais de um sistema. Um modelo de caso de uso define
avaliado antes de ser distribuído. Útil quando o sistema será implantado em vários o comportamento de um sistema (e a informação associada) através de um conjunto de
locais diferentes. casos de uso. O ambiente do sistema é definido pela descrição dos diferentes usuários.
Protótipo de características selecionadas: apenas parte das características do Estes usuários utilizam o sistema através de um número de casos de uso.
sistema final são implementadas. O sistema vai sendo construído em partes: cada 2. Eles oferecem uma abordagem para a modelagem de sistemas. Para gerenciar a
protótipo aprovado passa a ser um módulo do sistema. complexidade de sistemas reais, é comum apresentar os modelos do sistema em um
número de diferentes visões. Em uma abordagem guiada por casos de uso, pode-se
Diretrizes para o Desenvolvimento de um Protótipo construir uma visão para cada caso de uso, isto é, em cada visão são modelados apenas
aqueles elementos que participam de um caso de uso específico. Um particular elemento
1) Trabalhe com módulos gerenciáveis: não é necessário e, muitas vezes, nem pode, é claro, participar de vários casos de uso. Isto significa que um modelo do sistema
desejável, construir um sistema completo. completo só é visto através de um conjunto de visões – uma por caso de uso. Encontra-se
2) Construa o protótipo rapidamente: use ferramentas adequadas. todas as responsabilidades de um elemento de modelo, olhando todos os casos de uso onde
este tem um papel.
13
Um caso de uso pode ser capturado através de conversas com usuários típicos, discutindo
as várias coisas que eles querem fazer com o sistema. Cada uma dessas interações discretas
constitui um caso de uso. Dê a ela um nome e escreva uma descrição textual pequena (não
mais do que uns poucos parágrafos). Não tente capturar todos os detalhes de um caso de
uso logo no início.
Os objetivos do usuário podem ser o ponto de partida para a elaboração dos casos de uso.
Proponha um caso de uso para satisfazer cada um dos objetivos do usuário. A partir deles,
estude as possíveis interações do usuário com o sistema e refine o modelo de casos de uso.