Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Técnicas de Levantamento de Requisitos Renato Tilelli Engenharia de Software II FATEC ITAPETININGA Introdução Em todo desenvolvimento de software, um aspecto fundamental é a captura dos requisitos dos usuários. Para apoiar este trabalho, diversas técnicas podem ser utilizadas. Em um levantamento de requisitos, geralmente um engenheiro de software se depara com duas importantes questões: 1. Entre os muitos relatórios, formulários e documentos gerados pelos membros de 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 proposto. Quais delas devem ser entrevistadas, observadas ou questionadas? Servindo de base para todas as técnicas de levantamento de requisitos, entre elas investigação, entrevistas e observação, estão as decisões cruciais dizendo respeito a o que examinar e quem questionar ou observar. Metodologias e Técnicas Conversação Entrevista Workshops Brainstorm Questionário Observação Etnografia Observação Analíticos Reuso de Requisitos Estudo de documentação/Conteúdos Laddering Sintéticos Sessões JAD Prototipagem Casos de Usos Técnicas de Levantamento de Requisitos Conversação Meio verbal de comunicação entre um grupo de pessoas. Forma mais natural de expressão de ideias e necessidades. Proporciona melhor levantamento de informações detalhadas. Técnicas: Entrevistas Workshops Brainstorm Questionário 4 11/06/2013 Fatec Itapetininga Engenharia de Software II Técnicas de Levantamento de Requisitos Prof. Renato Tilelli Técnicas de Levantamento de Requisitos Conversação - Entrevistas Técnica mais simples e que produz bons resultados na fase inicial de obtenção de dados. Entrevistador deve dar liberdade aos stakeholder (parte interessada) em expressar suas necessidades e ideias. Normalmente existem entrevistas individuais e em grupo. Vantagens: Facilidade em extrair informações do entrevistado. Liberdade de mudança de curso da entrevista para captar informações não previstas. Permite motivar entrevistado no decorrer do processo. Desvantagens: Desvios de cursos podem dificultar e alongar entrevista. Dificuldade de concentração em caso de abordagens de muitos temas. Entrevistado pode não conseguir expressar sua real necessidade. Entrevista - Etapas Etapas de Entrevista: Estudar material existente sobre os entrevistados e suas organizações. Dar atenção a linguagem utilizada pela organização procurando estabelecer um vocabulário comum na elaboração das perguntas. Estabelecer objetivos para entrevista. Decisão de quem entrevistar, quais são as pessoas chaves do processo de captação das informações e suas áreas. Preparar a entrevista com antecedência, definido datas e estabelecendo um tempo máximo para entrevista. Definição de como registrar a entrevista, usando anotações, gravando em áudio ou vídeo. Entrevista - Questões Tipos de Questões: Questões subjetivas: Permitem respostas mais “abertas” como “O que você acha de ....?” e “Explique como você....?” Vantagens: Riqueza de detalhes, abre novas questões não previstas, deixa entrevistado mais a vontade. Desvantagens: Abordar detalhes irrelevantes, perda de controle e impressão de falta de controle da entrevista por parte do entrevistador. Questões objetivas: Limitam as respostas possíveis. “Quando... ?”, “Quem... ?”, “Quanto tempo...?” Vantagens: Ganho de tempo, controle da entrevista e dados relevantes. Desvantagens: Pressão ao entrevistado, ocultação de informações e falta de afinidade. Questões de aprofundamento: Permitem explorar os detalhes de uma questão. “Por que ...?”, “Você poderia dar um exemplo...?” Entrevista - Estruturas Estrutura Pirâmide Começa com questões detalhadas (Objetivas / finas) Termina com questões mais gerais (Subjetivas / largas ) Estrutura Funil Começa com questões mais gerais (Subjetivas / largas ) Termina com questões mais detalhadas (Objetivas / finas) Estrutura de Diamante Funil + Pirâmide Específicas -> Gerais -> Específicas Geralmente a melhor forma Tende a ser mais longa Não-Estruturada Não há uma sequência de como as questões serão abordadas Técnicas de Levantamento de Requisitos Conversação - Workshops Técnica de obtenção de dados junto a usuários em grupo em uma reunião estruturada. Devem fazer parte do grupo uma equipe de analistas e uma seleção dos stakeholders que melhor representam a organização. Vantagens: Obter conjunto de requisitos bem definidos. Trabalho em equipe tornando o levantamento mais eficaz. Baixo custo e respostas mais rápidas. Tempo reduzido. Desvantagens: Reunir envolvidos no mesmo horário pode ser mais difícil. Não abre caminho para ideias externas além da equipe de analistas. Dados excessivamente agregados. Técnicas de Levantamento de Requisitos Conversação - Brainstorm Normalmente utilizado em Workshops. Seu objetivo é uma apresentação do problema/necessidade a um grupo especifico, requerendo assim soluções. Vantagens: Varias pessoas pensam mais do que uma. Rompe a inibição de ideias. Generaliza a participação dos membros do grupo. Desvantagem: Disponibilidade das pessoas visto que é gerado através de workshops. Técnicas de Levantamento de Requisitos Conversação - Questionários Diferente da entrevista, essa técnica é interessante quanto temos uma quantidade grande de pessoas para extrair as mesmas informações. As questões são dirigidas por escrito aos participantes com o objetivo de ter conhecimento sobre opiniões das mesmas questões. Vantagens: Atinge numero grande de pessoas. Permite que os participantes respondam quando quiserem. Questões padronizadas garantem uniformidade. Desvantagens: Não há garantias de resposta se for opcional aos participantes. Cada participante pode ter interpretação diferente do que é. Questionário Etapas: Planejamento: Devem ser levados em consideração aspectos relacionados com a redação das questões, escalas, formato e ordem. Redação das Questões: Um questionário deve ter questões claras e não ambíguas, ter fluxo bem definido, ter administração planejada em detalhes e levantar, antecipadamente, as duvidas das pessoas que irão responde-la. Tipos de Questões: Similar à entrevista existem questões objetivas e subjetivas. Técnicas de Levantamento de Requisitos Observação Utilizado para a compreensão do domínio da aplicação, observando as atividades humanas. Pode comprovar respostas de entrevistas e questionários. Técnicas: Etnografia Observação Direta Observação- Etnografia Analise do componente social das tarefas desempenhadas numa organização. Utilizada para um entendimento completo e detalhado. Observa o trabalho do dia a dia e anota as tarefas reais nas quais os participantes estão envolvidos. O valor da etnografia está na ajuda que presta aos analistas para descobrir requisitos implícitos de sistemas que refletem os processos reais, e não os formais. Ela é eficaz para descobrir dois tipos de requisitos: 1. derivados da maneira como as pessoas realmente trabalham 2. derivados da cooperação e do conhecimento das atividades de outras pessoas. Observação- Etnografia Vantagens: Capacidade de observar o comportamento do ambiente gerando maior profundidade no conhecimento. Apoia-se no comportamento real. Permite uma abordagem integral. Desvantagens: Dificuldade para analisar e interpretar situações. Amostra pode ser reduzida. Requer treinamento especializado. Interpretação complicada de acordo com usuário observado. Observação- 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. 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. Observação- Observação Direta Vantagens: Capaz de captar o comportamento natural das pessoas. Nível de intromissão relativamente baixo. Desvantagens: Polarizada pelo observador. Requer treinamento especializado. Numero restrito de variáveis. Técnicas de Levantamento de Requisitos Analítico Conjunto de técnicas para analise de documento e conhecimento existentes com o intuito de adquirir requisitos através do levantamento de informações pertinentes ao sistema a ser especificado, como por exemplo, domínio do negocio, fluxos de trabalhos e características do produto. Técnicas: Reuso de Requisitos Estudo de documentação/Conteúdos Laddering Analítico – Reuso de Requisitos Estudo e reutilização de especificações e glossários referente a projetos de sistemas legados ou sistemas de mesma família (funcionalidade de negócios similares). Vantagens: Economia de tempo de dinheiro de projeto. Sistemas similares podem reutilizar 80% de seus requisitos. Redução de risco. Analítico – Estudo Doc./An. Conteúdo Estudo e reutilização de documentação de diferentes naturezas, para a identificação de requisitos a serem implementados no sistema que se está modelando. Podem ser utilizados pesquisas de mercado, manuais de usuário como forma de captação de dados. Desvantagens: Documentos com problemas podem levar a falhas de requisitos. Analítico – Laddering (Congnitivo) Método de entrevistas estruturadas, um – a – um. Utilizado para o levantamento de conhecimento de especialistas e que consiste na criação, revisão e modificação da hierarquia de conhecimento dos especialistas, geralmente na forma de diagramas hierárquicos. Vantagens: Cobre amplo domínio de requisitos. Consome menos tempo. Desvantagens: Necessita execução combinada com outras técnicas como a entrevista e obsevação. Analítico – Laddering (Congnitivo) Sintético Algumas vezes em projetos complexos, um único levantamento de requisitos não é suficiente para captar todos os dados necessários detalhadamente. Ao invés de utilizar a combinação de mais de uma técnica, utilizam-se métodos sintéticos, que basicamente são formados pela combinação de outras técnicas em uma única. Técnicas: Sessões JAD Prototipagem Casos de Uso JAD (Join Application Design) – Projeto de Aplicação em Conjunto Refinam brainstorming para englobar abordagens mais estruturadas em que o mediador é um profissional altamente experiente e bem treinado. líder da sessão: é apoiado por outras pessoas que se dedicam a apoiar o processo global. Vantagens: Melhor aplicado para projetos complexos. Discussões que ocorrem na fase de sessões são altamente produtivas porque resolvem dificuldades entre as partes em quanto se dá o desenvolvimento do sistema para empresa. Desvantagens: Requer mais recursos comparados a métodos tradicionais. Processos JAD 4 Etapas para os processos: Orientação Inicial Familiarização com a área/aplicação Preparação do material para o workshop Conduzir o workshop – 3 a 5 dias JAD – Orientação Inicial Definição global do projeto documentando os seguintes itens: finalidade do projeto escopo do projeto e áreas funcionais envolvidas objetivos que devem ser alcançados no final do workshop suposições técnicas e de negócio que afetam o projeto objetivos do workshop fatores críticos de sucesso A obtenção das informações: o líder as obtém com o executivo patrocinador, gerentes funcionais e de sistemas ligados ao projeto antes do workshop Tempo : 4 dias em média JAD – Familiarização área/aplicação Análise de procedimentos atuais do negócio e identificação do fluxo geral de trabalho de documentos no local do trabalho. A documentação é feita da seguinte forma, pois ajudam o líder a entender melhor a aplicação, áreas relacionadas e conflitos de aderia, em potencial. Auxiliam o líder para conduzir melhor as discussões em grupo durante o workshop. finalidade da tarefa dados de entrada dados de saída descrição do processo feito problemas/oportunidades Tempo : 3 dias em média JAD – Preparação Material Workshop Analista de Sistema (pode ser o líder JAD) constrói um modelo elementar do sistema – esboço de telas e relatórios que serão revisados durante o workshop. Esses relatórios são veículos para simular as ideias. Tempo : 1 dias em média JAD – Conduzir o workshop 1º dia: explicar a finalidade do projeto Descrever os compromissos de todos os participantes com apoio da administração. Dar as informações gerais relacionadas ao escopo, objetivo. Revisar o material detalhado e consolidado antes da reunião abordagem estruturada, passo a passo. Conforme o workshop progride, os secretários transcrevem as decisões para telões, permitindo rápidas revisões do trabalho realizado até o momento. Tempo: 3 a 5 dias em média. Prototipação A prototipação é uma técnica valiosa para se obter rapidamente informações específicas sobre requisitos de informação do usuário. Tipicamente, a prototipação permite obter: Reações iniciais do usuário: Como o usuário se sente em relação ao sistema em desenvolvimento? Reações ao protótipo podem ser obtidas através da observação, entrevistas, questionário ou relatório de avaliação. Sugestões do usuário para refinar ou alterar o protótipo: guiam o engenheiro de software na direção de melhor atender as necessidades dos usuários. Inovações: novas capacidades, não imaginadas antes da interação com o protótipo. Informações para revisão de planos: estabelecer prioridades e redirecionar planos. Prototipação Vantagens: Permite alcançar um feedback antecipado dos stakeholders. Redução de tempo de desenvolvimento devido a detecção dos erros em fase inicial do projeto. Prove alto nível de satisfação aos usuários e sensação de segurança ao ver algo próximo do real. Desvantagens: Demanda alto investimento em desenvolvimento em relação as outras técnicas. Prototipação – Tipos de Protótipos Protótipo não-operacional: apenas as interfaces de entrada e saída são implementadas; o processamento propriamente dito não. É útil para avaliar certos aspectos do sistema quando a codificação requerida pela aplicação é custosa e a noção básica do que é o sistema pode ser transmitida pela análise de suas entradas e saídas. Protótipo “arranjado às pressas”: o protótipo possui toda a funcionalidade do sistema final, mas não foi construído com o devido cuidado e, portanto, sua qualidade e desempenho são deficientes. Protótipo “primeiro de uma série”: um sistema piloto é desenvolvido para ser avaliado antes de ser distribuído. Útil quando o sistema será implantado em vários locais diferentes. Protótipo de características selecionadas: apenas parte das características do sistema final são implementadas. O sistema vai sendo construído Caso de Uso Casos de uso são narrativas em texto, descrevendo a unidade funcional, e são amplamente utilizados para descobrir e registrar requisitos de sistemas. Os diagramas de Casos de Uso são representações dos Casos de Uso e podem ser representados por uma elipse contendo, internamente, o nome do caso de uso. Um caso de uso representa uma unidade discreta da interação entre um usuário (humano ou máquina) e o sistema. Um caso de uso é uma unidade de um trabalho significante. Por exemplo: o "login para o sistema", "registrar no sistema" e "criar pedidos" são todos casos de uso. Cada caso de uso tem uma descrição o qual descreve a funcionalidade que irá ser construída no sistema proposto. Um caso de uso pode "incluir" outra funcionalidade de caso de uso ou "estender" outro caso de uso com seu próprio comportamento. Casos de uso são tipicamente relacionados a "atores". Um ator é um humano ou entidade máquina que interage com o sistema para executar um significante trabalho.
Compartilhar