Identificando necessidades e definindo os requisitos

Slides:



Advertisements
Apresentações semelhantes
Engenharia de Software
Advertisements

Introdução aos Sistemas de Informação Gerencial
Gerenciamento de Projetos
Gerenciamento do escopo
Engenharia de Software
Centrado na arquitetura
SISTEMA DE INFORMAÇÕES DESENVOLVIMENTO DE SISTEMAS
O processo de coletar os requisitos (escopo do cliente)
Extração de Requisitos
1 - Lafayette B. Melo – Análise e Projeto de Sistemas para a Internet – Noções de Engenharia de Software COINFO – CEFET-PB Noções de Engenharia de Software.
3. Como identificar requisitos?
O processo do design da interação
Introdução à avaliação. Os objetivos Discute como os desenvolvedores lidam com as restrições do mundo real Explica os conceitos e termos usados em uma.
Planejamento do gerenciamento de riscos
Engenharia de Requisitos Requisito – sistema Caso de uso - usuário
FUNÇÕES ADMINISTRATIVAS E ORGANIZACIONAIS
A implementação de avaliação formativa na sala de aula
Modelos de Processos de Software
PLANIFICAÇÃO DE UMA AVALIAÇÃO.
GESTÃO DE PROJETOS Aula 7 1.
Especificação de Requisitos de Software com Casos de Uso
ANÁLISE DE REQUISITOS DE ENGENHARIA DE SOFTWARE
Identificando necessidades e estabelecendo requisitos
Seminário de Engenharia de Usabilidade
FORMAÇÃO DE AUDITORES INTERNOS RONALDO COSTA RODRIGUES
Engenharia de Software
Lafayette B. Melo – CEFET-PB - COINFO Quando só o que se tem é um martelo, se acha que tudo que tem no mundo é prego (?) Como você vê o mundo em sua volta.
Prof.Alfredo Parteli Gomes
Qualidade de Produto de Software
Engenharia de Requisitos
Análise e Projeto de Sistemas
O Processo da Engenharia de Requisitos
Introdução e Fundamentos Engenharia de Requisitos
PSBD II Projeto de Sistemas de Banco de Dados II
Planejamento de estratégias:
Levantamento de Requisitos
Seminário sobre o livro: About Face Capítulo 3. Tipos de usuários Dilema: agradar tanto o usuário neófito, quanto o usuário experiente com a mesma interface.
Levantamento de Requisitos
Bruno Silva Desenvolvido a partir de
Engenharia de Software
Introdução a Banco de Dados
RUP - Cap. 4 – Processo Centrado na Arquitetura
GERENCIAMENTO DE PROJETOS DE T.I
Laboratório de Programação
Processos do Design 27/09.
Trabalho de Engenharia de Software II
Requisitos de Software
Técnicas de avaliação de Interfaces Alunos: Joel Levandowski Ranieri R. Tremea Prof ª.:Cristina P. dos Santos URI - Universidade Regional Integrada do.
Técnicas e Projeto de Sistemas
Gestão de Projetos de Software
Modelando Sistemas em UML
Engenharia de Software
E-commerce e E-business
Gestão de projetos de Software GTI-16
Integração.
Capítulo 4: Projeto e Desenvolvimento de um SAD
Gerenciamento dos Recursos Humanos
Um caso de uso conta uma história de como alcançar um objetivo ou um conjunto de histórias de tanto alcançando quanto falhando Caso de uso: “Fazer um pedido”
Manuais Administrativos
Engenharia de Conhecimento
Aula 02 de Eng. de Requisitos
Análise e Projeto de Sistemas Análise e Projeto de Sistemas Aula 2 Professor: Italo Rodrigues Castro.
APSI II Análise e Projeto de Sistemas de Banco de Dados II.
Engenharia de Software
Gerenciamento de Comunicações
ISO9001:2000 para Software Professor: Alexandre Vasconcelos Equipe: Amanda Pimentel Börje Karlsson Danielly Karine Erika Pessoa Jorge Cavalcanti Jose Edson.
UNIEURO CENTRO UNIVERSITÁRIO Disciplina PROJETO INTEGRADOR II Professora Responsável SELMA MORAES GESTÃO DE PROJETOS.
Pesquisa Qualitativa CONHECIMENTO:
Levantamento de Requisitos – Simulação do Supermercado
Técnicas de Avaliação de Interfaces Prof. Jorge Cavalcanti.
Transcrição da apresentação:

Identificando necessidades e definindo os requisitos

Overview A importância dos requisitos Diferentes tipos de requisitos Aquisição de dados Descrição de tarefas: Cenários Casos de uso Casos de uso essenciais Análise das tarefas: HTA

O quê, como e por quê? O quê 2 objetivos: 1. Entender o máximo possível a respeito dos usuários, das tarefas e do contexto 2. Produzir uma lista consistente de requesitos Como: Atividades de aquisição de dados Atividades de análise dos dados Entender quais são os requisitos necessários Saber que tudo isso é interativo

O quê, como e por quê? Porque: Definição de requisitos: é o estágio onde as falhas ocorrem mais freqüentemente Definir corretamente quais são os requisitos é crucial

Definindo os requisitos O quê os usuários querem? O quê eles realmente precisam? Os requisitos precisam ficar bem definidos, serem refinados, completados, analisados dentro do escopo Entrada: documentação dos requisitos (talvez) Saída: requisitos bem definidos Por quê definir os requisitos corretamente é crucial? Conhecer bem os requisitos ajuda a entender melhor as necessidades dos usuários e a trabalhar melhor com os dados do problema

Diferentes tipos de requisitos Funcionais: O quê o sistema deve fazer Históricamente o foco principal nas atividades-requisitos Não funcional: memória, tempo de resposta... Dados: Quais os tipos de dados que devem ser armazenados? Como estes dados serão armazenados (banco de dados)?

Diferentes tipos de requisitos Ambiente ou contexto de uso: físico: poeira? ruídos? vibração? luz? calor? umidade? social: compartilhamento de arquivos, de equipamentos, através de grandes distâncias, privacidade para os clientes organizacional: hierarquia, políticas internas (procedimentos adotados pela empresa) e de TI, suporte ao usuário, estrutura e infraestrutura de comunicação, treinamento

Diferentes tipos de requisitos Usuários: quem são eles? Características: habilidades, formação, atitude no computador Quanto a utilização do sistema: novato, experiente, casual, freqüente Novatos:necessidade de realizar operações passo a passo, é necessário mais restrições, informações disponíveis de forma muito clara Experiente: flexibilidade, permissões de administrador Freqüente: disponibilidade de atalhos Casual: instruções e tutoriais muito claros

Diferentes tipos de requisitos Usabilidade: facilidade de aprender a operar o sistema e flexibilidade Observe que os requisitos do usuário e os requisitos de usabilidade são coisas diferentes

Tipos de requisitos Quais são os fatores (ambiente, usuários, usabilidade) que influem nos seguintes sistemas? Compra de passagem aérea em um site de empresa nacional Compra de um produto relativamente barato em um site de leilão Operações de pagamento de contas no Internet Baking de bancos nacionais

Técnicas de aquisições de dados Questionários: Uma série de perguntas para tentar obter algumas informações específicas Questionários podem ter diferentes tipos de respostas: simples sim/não; múltipla escolha; comentada Freqüentemente são utilizadas com outras técnicas Podem fornecer dados quantitativos e qualitativos São ótimas para obter respostas que envolvem questões relacionadas a um grupo muito grande e disperso de pessoas

Técnicas de aquisições de dados Entrevistas: Fórum para conversar com as pessoas Estruturada, não estruturada, semi-estruturada Propostas que abrangem cenários e casos de uso podem ser utilizados na entrevistas Bom para explorar alternativas Entretanto consome tempo e é inviável aplicar-se a todos quando o grupo de pessoas é muito grande

Técnicas de aquisições de dados Workshops: Entrevistas com todo o grupo de usuários É ótimo para obter-se consenso e para identificar pontos ou áreas de conflito

Técnicas de aquisições de dados Observação naturalista: Acompanhar os “stakeholders” em suas tarefas diárias, observando-os trabalhar e vendo como o processo acontece Melhor compreensão das tarefas É ótimo para entender a natureza e o contexto onde as tarefas são executadas Isso requer tempo e dedicação de uma pessoa da equipe de design, e pode resultar em uma grande quantidade de dados Etnografia é uma forma

Técnicas de aquisições de dados Estudo da documentação: Procedimentos e regras estão freqüentemente descritos em manuais É boa para entender as regras, legislações e práticas de mercado que envolvem a atividade Não deve ser utilizada isoladamente É boa para entender a legislação e regras envolvidas Não “toma” o tempo dos stakeholders, que geralmente é o fator limitador nas outras técnicas

Escolhendo as técnicas As técnicas de aquisição de dados diferem de 2 formas: 1. A quantidade de tempo, nível de detalhamento e risco associado às nossas conclusões 2. O conhecimento que o analista necessita A escolha da técnica é também afetada pelo tipo de tarefa a ser estudada: Etapas seqüenciais ou conjuntos integrados de subtarefas? Detalhada ou superficial, informações complexas ou simples? É necessário assessoria técnica de um especialista da área ou de assessoria jurídica?

Problemas com a aquisição de dados Identificar e envolver os stakeholders: usuários, gerentes, desenvolvedores, clientes?, associações?, sociedades? Envolvendo os stakeholders: workshops, entrevistas, estudos no local, participação dos stakeholders na equipe de desenvolvimento Usuários reais, não os gerentes: tradicionalmente são um problema em engenharia de software, mas muito melhor agora

Problemas com a aquisição de dados Requisistos de gerenciamento: controle de versão, direitos autorais Comunicação: entre os membros da equipe de desenvolvimento com o usuário / cliente entre os usuários… diferentes partes da organização usam diferentes terminologias O domínio do conhecimento é distribuído e explícito: difícil de se aprofundar e de compreender o conhecimento é articulado: como você raciocina na hora que vai caminhar? Pensa na posição dos pés? Disponibilidade das pessoas-chave

Problemas com a aquisição de dados Problemas políticos da organização Domínio de certos stakeholders (autoritarismo) Mudanças na economia e no contexto dos negócios Equilíbrio entre as demandas de usuabilidade e as funcionais

Algumas diretrizes Foco na identificação das necessidades dos stakeholders Envolver todos os grupos de stakeholders Envolver mais de um representante de cada grupo de stakerholders Use uma combinação de técnicas de aquisição de dados

Algumas diretrizes Forneça suporte ao processo com a elaboração de protótipos e descrição das tarefas Execute uma seção piloto É necessário o seu compromentimento com a coleta e análise dos dados; antes de assumir o compromisso de desenvolvimento é necessário estabelecer realmente aonde você quer chegar Considere com cuidado como esses dados serão armazenados

Interpretação dos dados e análise Comece o mais rápido possível após a aquisição dos dados Faça uma interpretação inicial antes de uma análise mais aprofundada As diferentes técnicas enfatizam diferentes elementos. Por exemplo: diagramas de classes para sistemas orientados a objetos, diagramas de entidade-relacionamento para sistemas de bancos de dados

Descrição de tarefas Cenários uma história narrativa informal, simples, natural, pessoal, não corriqueira Casos de uso assumem a interação com o sistema assumem um entendimento detalhado da interação Casos essenciais de uso sumário sem muitos detalhes não tem as mesmas suposições que os casos de uso

Análise de tarefas As descrições de tarefas são usadas freqüentemente para prever sistemas ou dispositivos novos A análise de tarefas é utilizada principalmente para investigar uma situação existente É importante não se concentrar em atividades superficiais O que as pessoas estão tentando fazer? Por quê elas estão tentando fazer isso? De que forma elas estão tentando fazer isso? Existem muitas técnicas, mas a mais popular é a HTA (Hierarchical Task Analysis, ou seja, Análise Hierárquica de Tarefas)

HTA Consiste em dividir uma tarefa em subtarefas, subdividindo-se também as subtarefas em outras, e assim por diante HTA é focada em ações físicas e perceptíveis e inclui a observação de ações não relacionadas com o software ou dispositivo de interação Comece com os objetivos do usuário os quais devem ser examinados e as principais tarefas para atingi-lo devem ser identificadas Tarefas são subdivididas em subtarefas

Exemplo de HTA 0. Emprestar um livro da biblioteca 1. ir até a biblioteca 2. achar o livro desejado 2.1 acessar o catálogo da biblioteca 2.2 entrar na tela de busca no sistema 2.3 entrar com um critério de busca 2.4 identificar o livro requisitado 2.5 anotar a sua localização 3. ir até a prateleira e retirar o livro 4. levar o livro até o balcão e oficializar o empréstimo

Exemplo de HTA plano 1: execute 1-3-4. Se o livro não estiver na prateleira, execute 2-3-4. plano 2: execute 2.1-2.4-2.5. Se o livro não for encontrado, execute 2.2-2.3-2.4.

Exemplo de HTA Emprestar um livro da biblioteca plano 1: execute 1-3-4. Se o livro não estiver na prateleira, execute 2-3-4. Retire o livro da prateleira Leve o livro até o balcão Vá até a biblioteca Encontre o livro 1 2 3 4 plano 2: execute 2.1-2.4-2.5. Se o livro não foi encontrado, execute 2.2-2.3-2.4-2.5 Catálogo de acesso Utilize sistema de busca Entre com umcritério de busca Anote a localização Identifique o livro 2.1 2.2 2.3 2.4 2.5

Sumário Definir os requisitos corretamente é crucial Há diferentes tipos de requisitos, cada um deles é significativo no design de interação As técnicas mais freqüentemente utilizadas na aquisição de dados são: questionários, entrevistas, workshops, observação naturalista, estudo da documentação Cenários, casos de uso e casos esseciais de uso podem ser usados para articular práticas existentes e previstas do trabalho Técnicas de análise como a HTA ajuda a investigar sistemas existentes e práticas