23
IDENTIFICANDO NECESSIDADES E ESTABELECENDO REQUISITOS – AULA 5 Desenvolvimento de Interfaces Prof. Jemerson Fernando Maia 03/2012

Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Embed Size (px)

DESCRIPTION

Identificando Necessidades e Estabelecendo Requisitos – Aula 6

Citation preview

Page 1: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

IDENTIFICANDO NECESSIDADES E ESTABELECENDO REQUISITOS – AULA 5

Desenvolvimento de Interfaces

Prof. Jemerson Fernando Maia

03/2012

Page 2: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Introdução

Identificar as necessidade do usuário não é uma tarefa tão simples como parece. Estabelecer requisitos não implica simplesmente escrever uma lista de desejos das características pretendidas.

Será apresentado uma visão geral detalhada da identificação de necessidades e do estabelecimento de requisitos. Será apresentado tipos diferentes de requisitos e algumas técnicas úteis.

Page 3: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

O que estamos tentando alcançar com esta atividade de design? Dois objetivos:

primeiro consiste em entender o máximo possível os usuários, seu trabalho e o contexto desse trabalho.

segundo consiste em produzir, a partir das necessidades identificadas, um conjunto de requisitos estáveis que formem uma base sadia para se pensar o design.

Page 4: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

O que estamos tentando alcançar com esta atividade de design? Entender o que o produto em

desenvolvimento deveria realizar e assegurar que ofereça suporte ás necessidades dos stakeholders são atividades importantes no desenvolvimento de qualquer produto. Se os requisitos estiverem errados, o produto então será, na melhor das hipóteses, ignorado e, na pior, desprezado pelos usuários, causando tristeza e perda de produtividade. Em ambos os casos, tanto para o produtor como para o cliente as consequencias são sérias.

Page 5: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

O que são requisitos?

Um Requisito consiste da definição documentada de uma propriedade ou comportamento que um produto ou serviço particular deve atender. Funcionalidade, propriedade ou comportamento

desejado para um sistema. Um dos objetivos da atividade de

estabelecimento de requisitos é torná-los o mais específicos, não-ambíguos e claros possíveis.

Os requisitos vêm em muitas formas diferentes e em diferentes níveis de abstração, mas precisamos nos certificar de que eles sejam tão claros quanto o possível e que saberemos reconhecer quando forem preenchidos.

Page 6: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Exemplo de requisitos

Page 7: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Diferentes Tipos de requisitos?

Na engenharia de software, dois tipos diferentes de requisitos foram tradicionalmente identificados: requisitos funcionais e não-funcionais. Requisitos funcionais: dizem o que o

sistema deveria fazer. Requisitos não-funcionais: indicam quais

são as limitações do sistema e em seu desenvolvimento.

Page 8: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Diferentes Tipos de requisitos?

Exemplo: Um requisito funcional para um processador de

texto: oferecer suporte a uma variedade de estilos de

formatações; Oferecer corretor-ortográfico;

Requisitos não-funcional para o processador de texto: ser capaz de ser executado em várias Sistemas

Operacionais; poder funcionar em um computador com 64MB de

memória RAM; deve ficar pronto em 6 meses;

Page 9: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Diferentes Tipos de requisitos?

O design de interação exige que entendamos a funcionalidade exigida e as restrições sob as quais o produto deve operar ou ser desenvolvido. No entanto, em vez de referenciar-se a todos os requisitos que não são funcionais simplesmente como “não-funcionais”, é preferível pô-los em outras categorias. Segue a lista (onde consta funcionais também): requisitos funcionais, requisitos de dados, requisitos

ambientais ou contexto de uso, requisitos de usuário e requisitos de usabilidade

Não se trata de uma categorização muito exata, no entanto ilustra bem a variedade de requisitos que precisam ser apreendidos.

Page 10: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Requisitos Funcionais

Captam o que o produto deveria fazer. Um requisito funcional para um geladeira

inteligente poder ser o de ela estar apta a informar quando a gaveta de carne estiver vazia. Entender os requisitos funcionais de um produto interativo é muito importante.

Page 11: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Requisitos de Dados

Captam tipo, volatilidade, tamanho/quantidade, persistência, precisão e valor de dados exigidos. No domínio de bancos, os dados devem ser

precisos e persistir por muitos meses, provavelmente por anos e em grande quantidade, em virtude de serem muito valiosos.

Page 12: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Requisitos Ambientais ou Contexto de Uso Referem-se á circunstância em que se

espera que o produto interativo opere. Quatro aspectos devem ser considerados: Ambiente físico;

barulho, luz, poeira, roupas Ambiente social;

compartilhamento de tarefas Ambiente organizacional;

suporte, infra-estrutura, hierarquias Ambiente técnico;

Tecnologias que o produto utilizará, com quais precisa ser compatível, limitações tecnológicas relevantes

Page 13: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Requisitos de Usuários

Capturam as características do grupo de usuários pretendidos: Habilidades; Conhecimento; Usuário frequente ou casual;

Um usuário pouco experiente precisará seguir instruções passo a passo. Um usuário especialista necessitará de uma interação mais flexível que lhe permita ter maior autonomia. Um usuário frequente será interessante oferecer atalhos como tecla de atalhos de funções.

Page 14: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Requisitos de Usabilidade

Captam as metas de usabilidade e as medidas associadas para um produto em particular. Eficiência, eficácia, segurança, utilidade,

capacidade e aprendizagem, capacidade de memorização.

Page 15: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Coleta de Dados

O propósito da coleta de dados e reunir informações suficientes, relevantes e apropriadas, de forma que um conjunto de requisitos estável possa ser produzido.

Mesmo no caso de existir um conjunto de requisitos iniciais, será exigido que a coleta de dados expanda, esclareça e confirme esses requisitos iniciais.

Page 16: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Técnicas de Coleta de Dados Há essencialmente um número limitado

de técnicas básicas para a coleta de dados. Tais técnicas constituem-se de questionários, entrevistas, grupos de foco e workshops, observação natural e estudo de documentação.

Page 17: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Escolhendo as técnicas

Técnica Boa para Tipos de dados

Vantagens Desvantagens

Questionários

Responder a questões específicas.

Dados qualitativos e quantitativos.

Pode atingir várias pessoas com poucos recursos.

O índice de resposta pode ser baixo.

Entrevistas Explorar questões.

Alguns dados quantitativos, mas mais qualitativos.

O entrevistador pode guiar o entrevistado se necessário. Encoraja o contato entre desenvolvedores e usuários.

Requer tempo. Ambientes artificiais podem intimidar o entrevistado.

Page 18: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Escolhendo as técnicas

Técnica Boa para Tipos de dados

Vantagens Desvantagens

Grupos de Foco e Workshops

Coletar vários pontos de vista.

Alguns dados quantitativos, mas mais qualitativos.

Ressalta áreas de consenso e conflito. Encoraja o contato entre desenvolvedores e usuários

Possibilidade de dominarem certos tipos de personalidades.

Observação natural

Entender o contexto da atividade do usuário.

Qualitativo. Observar o trabalho real oferece percepções que outras técnicas não oferecem.

Requer muito tempo. Grandes quantidades de dados.

Page 19: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Escolhendo as técnicas

Técnica Boa para Tipos de dados

Vantagens Desvantagens

Estudo de documentação

Aprender sobre procedimentos, regulamentações e padrões.

Quantitativo e qualitativo.

Não compromete o tempo dos usuários.

Os trabalhos diário será diferente dos procedimentos documentados.

Page 20: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Diretrizes básicas para coleta de dados Concentrar-se na identificação das necessidades dos

stakeholders. Estudando seu comportamento, ferramentas, olhando

outros produtos, de concorrentes ou versões anteriores. Envolver todos os grupos de stakeholders principais.

Certificar-se que você dispõe de todos os pontos de vista das pessoas certas.

Não envolver somente um representante de cada grupo de stakeholders. Todos os envolvidos darão suas perspectivas da situação.

Utilizar uma combinação de técnicas de coleta de dados.

Page 21: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Interpretação de dados e análise Quando a primeira sessão de coleta de dados já

houver sido conduzida, a análise e a interpretação poderão ter início.

É uma boa idéia começar a interpretação o quanto antes.

O objetivo da interpretação é começar a estruturar e registrar as descrições dos requisitos.

Também é importante discutir os resultados com os outros, afim de se obter uma variedade de perspectivas acerca dos dados.

Page 22: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Interpretação de dados e análise Utilizar um template como o sugerido

abaixo ressalta os tipos de informações que se deve procurar e guia a interpretação e a análise dos dados.

Page 23: Identificando Necessidades e Estabelecendo Requisitos – Aula 6 - Desenvolvimento de Interfaces

Interpretação de dados e análise