Design de Interfaces de Usuário
Parte 1
Prof. André Constantino da Silva
IHC
Baseado nos slides da
Prof. Dr. Heloísa Vieira da Rocha
• Compreender a importância de centrar o
design no usuário
• Conhecer os princípios do Projeto Centrado
no Usuário
• Conhecer técnicas que auxiliam a projetar
para o usuário
Objetivo das Aulas
Introdução
• Design é a concepção de um produto
(máquina, utensílio, mobiliário,
embalagem, publicação etc.),
especialmente no que se refere à sua
forma física e funcionalidade
Introdução
• O que eu preciso saber para desenvolver
uma aplicação com boa usabilidade?
Conhecimento
Introdução
• O que eu preciso saber para desenvolver
uma aplicação com boa usabilidade?
Conhecimento
– Usuários
– Funcionalidades
– Tecnologias que será utilizada para
desenvolver
6
Modelo Mental (MM)
Aparência Física
Operação
Forma de responder
Help e manuais
7
• O entendimento é fraco
• Especificado imprecisamente
• Cheio de inconsistências
• Cheio de “buracos” e artimanhas
• São incompletos
• A habilidade das pessoas para “executar” seus modelos mentais é limitada
pelos mecanismos perceptual e cognitivo
• Modelos mentais são instáveis pelas próprias restrições e interferências da
memória: as pessoas esquecem detalhes do sistema que estão usando,
artefatos e operações similares são confundidos
• Modelos mentais não são “científicos”: as pessoas mantêm comportamento
supersticioso em seus modelos
• Freqüentemente fazem operações físicas extras em vez de planejamento
mental que possibilite evitar essas ações (Norman, 1983)
Modelo Mental - Características
8
Modelo Mental – Uniforme?
O modelo conceitual entre os usuários é o mesmo?
9
• Para aprender a programar um computador você é instruído
em um paradigma de programação
– Paradigma procedimental: C, Pascal
• Durante o curso, você aprende outros paradigmas
– Paradigma orientado a objetos: Java
– E existem outros: Paradigma funcional (Lisp) e Paradigma lógico
(Prolog)
• Dificuldade de aprendizado de um novo paradigma ocorre
– o seu Modelo Mental é voltado para o primeiro paradigma que
aprende e você o usa para compreender o novo paradigma
Modelo Mental - Evolução
10
• Observação
• Instrução
• Inferência
Modelo Mental - Evolução
• Os usuários sabem todos os requisitos da
aplicação?
• Diferentes papeis dos usuários
• Contextos
E mais problemas...
• Assegurar que a Imagem do Sistema seja
consistente com o MM dos usuários
– MM do Designer coincidir com MM do Usuário
E qual o seu papel como designer?
Necessário conhecer o
usuário e as tarefas
13
Design Centrado no Usuário (UCD)
Quem?
Quais tarefas?
Funcionalidades?
Utilização.
Propostas
Protótipos
Testes com usuários
•Abordagem que coloca o usuário como centro do
processo de design e desenvolvimento
• É o processo de design em que as
necessidades, desejos e limitações do ser
humano são levados em conta durante todas as
fases de concepção e desenvolvimento de um
projeto
• O objetivo do design de interface de usuário é
tornar a interação do usuário o mais simples e
eficiente possível, em termos de realização dos
objetivos do usuário
Design Centrado no Usuário
• Definido na ISO Human-centred design for interactive systems
(ISO 9241-210, 2010)
• 6 princípios chaves:
– O design da interface é criado a partir do conhecimento explícito
dos usuários, tarefas e ambiente
– Usuários são envolvidos em todo o processo de design e
desenvolvimento
– O projeto é dirigido e refinado por meio avaliações centradas no
usuário
– O processo é iterativo
– O design deve focar a experiência do usuário como um todo
– A equipe deve ser multidisciplinar
Design Centrado no Usuário
16
Design Participativo
 Design com usuários e não para os
usuários.
 Incorpora o usuário como membro da
equipe de projeto, participando de todas
as etapas.
• Melhora o entendimento do trabalho
do usuário e combina o conhecimento
dos diversos participantes.
17
Design Participativo
18
Engenharia Cognitiva
• Enfatiza a modelagem de uma
atividade na forma como ela é
entendida pelo usuário.
• Visa facilitar a realização da tarefa
através de um bom modelo conceitual
do sistema.
• Dificuldade de mapeamento de termos psicológicos para mecanismos
físicos: Golfo da Execução e Golfo da Avaliação.
Golfo da execução: Como eu executo a tarefa....?
Golfo da Avaliação: Consegui...?
19
Modelo Estrela
Onde e como é necessário
Tarefas automatizadas
Características e Requisitos
Métricas e metas
de usabilidade
Representação do projeto para
Comunicação entre a equipe
Materializar o projeto
Facilitar a avaliação prévia
Ocorre entre todas as etapas
Avaliando artefatos
gerados em cada
20
Engenharia de Usabilidade
Compreensão do usuário e atividades
Funcionalidades e Contexto de trabalho
Evolução do usuário
Sistemas similares
Metas e métricas de usabilidade
Explorar possíveis soluções de projeto
Design Participativo
Avaliações Heurísticas / Guidelines
Protótipos e Testes com Usuários
– Qual o ponto de partida?
– Quais as informações necessárias?
– Usuário, Sistema, Tarefa? O que é importante e
como obter essas informações?
– Quais artefatos da ES e IHC poderiam ajudar nessa
etapa?
21
Desenvolvimento
22
– Como a aplicação vai auxiliar nas tarefas do
usuário?
– Como planejar o funcionamento da
aplicação?
– Que artefatos podem auxiliar nessa etapa?
23
Usuário – Características
24
Introdução
Integração
ES/IHC
Desenvolvimento de Sistemas Interativos
no usuário
(aspectos de
interação)
Interação Humano-
Computador (IHC)
Engenharia de
Software (ES)
no sistema
(tecnologia)
foco foco
25
– Qual o ponto de partida?
– Contexto Exemplo:
Você e seus colegas montaram uma empresa de
desenvolvimento de software educacionais. Ao ouvir o
professor comentar que existem poucos softwares para o
Tablet PC, vocês resolveram inovar e desenvolver softwares
para este dispositivo. Como todos os participantes gostam
muito de Inteligência Artificial, resolveram que o primeiro
produto seria para auxiliar os alunos nesta matéria.
Iniciando o Desenvolvimento
26
• E...
– O produto tem que ter diferencial
• Queremos que ele seja usavél e usado
– Explore o potencial do Tablet PC
• Uso da escrita a mão
– Ser usado tanto em sala de aula quanto fora da sala
• Dando um passo a frente:
– Quem serão meus potenciais usuários?
– O que eles gostariam de fazer usando o Tablet PC?
Dificultando...
27
• IHC
• Conhecer o usuário
– Pesquisa
– Entrevista / Questionário
(usados em avaliações também)
– Personas
• Geração de idéias
– Brainstorming
– Mindmaps
• Conhecendo as necessidades
– Cenários
– Storyboard
Métodos / Artefatos
• ESw
– Documentos
de Requisitos
– Casos de Uso
– Features
– etc...
Conhecer usuário, necessidades, tarefas...
28
29Alunos Professores
• Conhecemos superficialmente os usuários
– Temos uma noção de quem são e o seu
trabalho
• Precisamos dar um próximo passo
– Definir melhor a aplicação. O que vamos
desenvolver?
Mais um passo a frente
31
• Brainstorming
• Criatividade - Grupo vs. Individual
• Mais Idéias == Mais Criativo == Melhor
• Tempo limitado
• Manter um registro
Geração de idéias
“Brainstorming is not just a good idea but an
inexhaustible source of inspiration and fresh thinking”
32
• Brainstorming dicas:
• Seja visual
• Evitar fazer julgamentos
• Encorajar idéias “viagens”
• Construir em cima da idéia de outro
• Vá em direção da quantidade
• Somente um fala a cada vez
• Mantenha-se focado no tema
Geração de idéias
33
• MindMaps (Log de idéias)
Geração de idéias
34
• Por que fazer um log de idéias?
Geração de idéias
•Para não esquecê-las
•Para guardar e avaliá-las depois
•Para ajudar a clarificar, concretizar, idéias que ficam
rodando na cabeça
•Para liberar sua cabeça para novas idéias
•Porque uma boa idéias leva a outras
•Para dar às idéias a importância que elas merecem
35
• O nosso MindMaps
Geração de idéias
Aplicação educacional
para tablet
Conceito de Brainstorming
Textos
Aplicativos pen-based
Disciplina de IA
Senso Comum
Ensino de IA
Agentes
Construção de
agentes
Protótipo funcional
(???)
Jogo
Imagem e ação “Bolinha”
Palavra-cruzada
IHC 2006
Processo
Representação de
conhecimento
Símbolos matemáticos
“Tradutor”
Expressões lógicas
Colaboração
Grafos
Aluna “monta” agente
ConceptNet
Software
ROBOCOD
Eliza
Redes neurais
Desenho com apoio
da ConceptNet
Exemplos de
aplicativos
Escolhido
36
• Vale a pena investir na idéia selecionada?
• Existem softwares semelhantes? Qual vai ser o
diferencial?
É uma nova idéia?
Através da análise de aplicações semelhantes, verificou-se três formas
para a entrada dos símbolos lógicos:
1) Teclado Físico: os símbolos lógicos são mapeados para caracteres do
teclado, como no sistema ALFie, Café, Gateway, que usam o & para
simbolizar o conector , o LLProver, que usa a seqüência / , e o MIB; e
2) Teclado Virtual: os símbolos lógicos são disponibilizados através de
botões, como no sistema Tarski´s World (em uma janela flutuante) e
WinKE (em uma barra de ferramenta);
3) Interação com Menu: os símbolos lógicos são disponibilizados em um
menu, como no sistema DC Proof.
Alguns sistemas estão disponíveis para a Web, como é o caso do ALFie,
Café, Gateway e LLProver, outros são para ambientes desktop, como
por exemplo, Aristotle, DC Proof, MIB, Tarski´s World e WinKE.
37
– Como a aplicação vai auxiliar nas tarefas do
usuário?
– Como planejar o funcionamento da
aplicação?
Precisamos então conhecer melhor o usuário!
– Que artefatos podem auxiliar nessa etapa?
Usuário – Características
38
• Não – estruturadas
– Conversa informal, mas com um “plano de assuntos” a tratar
– Gera informações interessantes e imprevistas, difícil de analisar
• Estruturadas
– Questões pré-determinadas (similar a um questionário),
geralmente de múltipla-escolha
– Objetivos claros com as questões
• Semi-estruturadas
– Questões abertas e outras objetivas
– Explora mais um livre discurso do entrevistado
Entrevistas
39
Vamos dizer que optamos por uma entrevista Semi-estruturada
Planejamos então a entrevista:
- Duração de 30 minutos a 1 hora
- Pessoas que irão participar da entrevista
- Recursos a serem utilizados
- Lápis, papel e gravador de áudio
- As perguntas. Exemplos:
1. Quais os tópicos (na disciplina) nos quais os alunos tem mais dificuldade?
2. Qual a importância de lógica de primeira ordem no currículo de cursos de
computação?
3. Como você ensina lógica de primeira ordem ou outro tipo de lógica?
4. Em que ponto os alunos apresentam maior dificuldade?
5. O que é importante que o aluno saiba ou desenvolva para vencer essa
dificuldade?
6. Que aplicativos de apoio ao ensino de lógica de primeira ordem você conhece?
Entrevistas
40
• Criação de perfis de usuários
– Usuários fictícios
– Representativos
– Usado para motivar e guiar os membros ao PCD
• Descrição de características como:
– Educação
– Habilidades
– Profissão
– Idade
– Características pessoais como: se gosta de esportes, hobby, estado civil,
etc.
Personas
41
• Pedro Marcuse
Designer de Interfaces
Formação: Antes de começar a faculdade de Desenho
Industrial, sua principal ocupação eram os games.
Escolheu essa faculdade porque sempre teve facilidade
com as artes. Nunca poderia ter feito um curso chato
como Administração ou Direito. Começou a trabalhar a
partir do segundo ano de faculdade só pra não precisar
depender mais da mesada do pai. Há dois anos
formado, Pedro se encontrou no Design de Interfaces e
quer se especializar nisso, apesar de seu trabalho atual
como webdesigner exigir outras habilidades.
Personas - Exemplo
http://usabilidoido.com.br/persona_o_usuario_mascote_do_projeto.html
42
• Pedro Marcuse
Interesse no Usabilidoido:
Melhorar o discurso para argumentar com clientes e outros
membros da equipe, visando obter uma situação profissional
superior.
Assuntos Preferidos:
– Usabilidade
– Design gráfico de interfaces
Tipo psicológico : Introvertido - Intuitivo - Pensador - Julgador
Personas - Exemplo
http://usabilidoido.com.br/persona_o_usuario_mascote_do_projeto.html
43
• Pedro Marcuse
Descrição da personalidade :
Pedro sente uma pressão grande por se manter informado nas novidades da profissão. Por
vezes, encontramos Pedro sentado na frente do computador fora do horário de
trabalho, só para dar conta das novidades que saem nas listas de email, blogs e sites
especializados. Quando está muito concentrado, prefere terminar de ler um artigo ou
livro antes de sair de casa para se divertir.
Quando está longe do computador, está sempre no mundo-da-lua. Durante as aulas da
faculdade, as aulas chatas eram o momento em que ele tinha as melhores idéias para
solucionar problemas do trabalho. Comprou um Palmtop só para anotar as idéias
porque, senão o fizesse, esquecia depois.
Seu círculo social é pequeno, não é um tipo popular. No entanto, valoriza muito o contato
com as poucas pessoas que mantém vínculos fortes. Pedro prefere não ficar com a
responsabilidade de líder, mas se precisar pode guiar uma equipe em projetos
inovadores. Quando trabalha em equipe costuma desenvolver idéias em segredo até
que tenha certeza de que está certo. "Dizem que sou teimoso, mas sei reconhecer
quando estou errado", afirma ele.
Personas - Exemplo
http://usabilidoido.com.br/persona_o_usuario_mascote_do_projeto.html
44
• Projeto: Internet Explorer 5 da Microsoft
• Motivação: conscientizar os desenvolvedores da
importância de oferecer uma boa experiência aos
usuários
• Como foi usado: durante as discussões sobre o rumo da
interface, o nome das personas eram evocadas para
defender que determinado recurso seria difícil demais
para ser usado por aquela persona
Personas no projeto
45
• Como seria uma Persona para o nosso
exemplo?
Personas
46
• Pequenas narrativas que descrevem atividades humanas ou
tarefas
• Não necessariamente descrevem o uso de um software
• Ajudam a identificar os stakeholders, suas tarefas, necessidades,
objetivos, etc
• Ótima maneira de comunicação entre equipe de produção e
usuários
• Podem mostrar situações existentes nas atividades dos usuários
ou propor novas situações
• Ajudam na representação do modelo conceitual para as
atividades
Cenários
47
•Exemplo de cenário:
“Maria quer encontrar um livro de “Donald Norton”. Ela não lembra o título mas
sabe que foi publicado em 1988. Ela vai até o catálogo e informa seu nome e
senha. Ela se irrita pela fato de ter que solicitar permissão para simplesmente
consultar o catálogo. Tendo o acesso liberado ela tem a possibilidade de fazer um
busca por autor ou por data, mas não pela combinação dos dois como gostaria. Ela
então faz um busca por autor porque por ano retornaria muitos registros. O
sistema retorna que não há registros para “Donald Norton” e exibe registros com
nomes de autores similares. Maria percebe então que o nome do autor não era
Norton e sim Norman. Ela seleciona o registro e verifica então onde está o livro
que procura”.
Cenários
48
Storyboards
Continuação no TelEduc!
49
• O que é uma tarefa?
Conjunto de atividades que são realizadas
para atingir algum objetivo do usuário ao
interagir com a aplicação
• Tarefa x Requisitos
Tarefas reúne diversos requisitos levantados
por um usuário
Tarefas
50
• Professor
– Elabora o enunciado do exercício (podendo usar o
teclado para digitar frases e a caneta para inserir
símbolos lógicos)
– Disponibiliza exercícios aos alunos
– Explica como resolver um exercício
• Aluno
– Resolve o exercício
– Auxilia outro aluno a resolver um exercício
– Explica como resolver um exercício
Algumas Tarefas
51
• Em paralelo! Desenvolvimento de casos de
uso
Onde estão os métodos e artefatos da ESw?
N Evento Caso de uso
1 O professor insere um exercício no caderno
de atividades
Inserir Exercício
2 O professor edita um exercício no caderno
de atividades
Editar Exercício
3 O professor exclui um exercício do caderno
de atividades
Excluir Exercício
4 O aluno resolve individualmente um
exercício do caderno de atividades
Resolver Exercício
Individualmente
5 Os alunos resolvem colaborativamente um
exercício do caderno de atividades
Resolver Exercício
Colaborativamente
... ... ...
52
Caso de Uso 1 - Inserir Exercício
Breve Descrição: O professor deseja inserir um novo exercício no caderno de
atividades.
Ator Primário: Professor
Precondições: professor estar logado
Pós-condições: novo exercício é guardado e disponibilizado
Onde estão os métodos e artefatos da ESw?
Ator Sistema
1. O professor informa que deseja
adicionar um novo exercício
2. O professor fornece as
informações do exercício
3. O sistema guarda as informações
do exercício
53
• Como referenciar a aplicação?
– Caderno Interativo de Lógica
Precisamos de um nome
54
• Já tenho uma boa idéia... e agora?
Design, Projeto, Especificação, Testes...
•Planejar, materializar as soluções...
•Diversos artefatos da ES e IHC podem auxiliar no
design e projeto do sistema
55
• IHC
• Design
– Diagrama de fluxo
– Diagrama de CTTs
• Prototipação
– Low-Fidelity (paper prototyping
– High-Fidelity
• Avaliação
– Inspeção
– Testes de Usabilidade
Artefatos
• Engenharia de
Software
• Diagramas:
– Classes
– ER
– Sequência
– Componentes
– etc...
• Protótipo
• Código
• Testes de software
Design, Projeto, Especificação, Testes...
56
Diagrama CTTs
57
Diagrama CTTs
Tarefa
Abstrata
58
Diagrama CTTs
Tarefa Interação
Ex.: pressionar
botão
59
Diagrama CTTs
Tarefa da Aplicação
Ex.: fornecer
informação ao
usuário
60
Diagrama CTTs
Tarefa do Usuário
Ex.: pensar, decidir
(normalmente tarefas
cognitivas)
61
Diagrama CTTs
Ativação
62
Diagrama CTTs
Ativação
com
passagem
de dados
63
Diagrama CTTs
Escolha
64
Diagrama CTTs
Desativação
65
Diagrama CTTs
Interação
66
• Foco nas atividades
– designer não foca em detalhes de
implementação
• Estrutura hierárquica
– Decomposição do problema em problemas
menores
• Sintaxe gráfica
• Notação de concorrência
• Objetos
Diagrama CTTs
67
Diagrama de Fluxo
•Também conhecido como:
• Interface-flow diagram;
• Windows navigation diagram;
• Context-navigation map;
• Navigation diagram (RUP);
•Visa modelar os relacionamentos entre elementos da interface;
• Utilizado para modelar a interação de um usuário com a interface,
ilustrando um cenário ou caso de uso;
• Oferece um overview da interface e sua navegação;
• Permite verificar todo o fluxo de navegação na interface;
68
Diagrama de Fluxo
69
Diagrama de Fluxo
70
Prototipação – Por que?
• “Mil e uma utilidades...”
• Útil para discutir idéias com os stakeholders;
• Meio de comunicação entre os membros da
equipe de desenvolvimento;
• Ótimo para testar suas próprias idéias;
• Permite testar alternativas de design;
• Auxilia na obtenção de requisitos (e
refinamento);
• Permite testes e avaliações;
71
Prototipação - Low-Fidelity
Prototipação em Papel
• Rápido, barato, fácil de fazer e modificar;
• Útil para explorar alternativas de design e
idéias;
• Bastante usual nos primeiros estágios do
desenvolvimento (coletar requisitos);
• Podem ser utilizados para testar a interação
também;
• Não se parecem muito com o produto final;
72
Prototipação - Low-Fidelity
73
Prototipação - Low-Fidelity
74
Prototipação - Low-Fidelity
Uma proposta de
solução?
75
Prototipação - Low-Fidelity
Uma proposta de
solução?
Duas?
76
Prototipação - Low-Fidelity
Uma proposta de
solução?
Duas?
Três?
77
Prototipação - Low-Fidelity
Uma proposta de
solução?
Duas?
Três?
Quatro?
Caderno Interativo de Lógica
Exercício:aula1_ex03
Considerando que:
- Todo aluno de computação é uma pessoa inteligente.
- Toda pessoa inteligente gosta de festa.
- Natanael é um aluno de computação.
Use o cálculo de primeira ordem para mostrar que:
- Natanael gosta de festa.
Enunciado:
Escrever com
a Caneta
Inserir
Desenhar
Grafo
Cancelar
Abrir Exercício Fechar Exercício
Arquivo
Novo Exercício
Salvar Como ImprimirSalvar Visualizar Impressão
Editar Inserir Resolução Relembrar a Teoria Ajuda
Sair
78
Prototipação - Low-Fidelity
Uma proposta de
solução?
Duas?
Três?
Quatro?
Caderno Interativo de Lógica
Exercício:aula1_ex03
Considerando que:
- Todo aluno de computação é uma pessoa inteligente.
- Toda pessoa inteligente gosta de festa.
- Natanael é um aluno de computação.
Use o cálculo de primeira ordem para mostrar que:
- Natanael gosta de festa.
Enunciado:
Escrever com
a Caneta
Inserir
Desenhar
Grafo
Cancelar
Abrir Exercício Fechar Exercício
Arquivo
Novo Exercício
Salvar Como ImprimirSalvar Visualizar Impressão
Editar Inserir Resolução Relembrar a Teoria Ajuda
Sair
Vencedor!
79
Prototipação - High-Fidelity
• Muito próximo do produto final;
• Funcional, interativo, navegacional;
• Utilizado para exploração e testes;
• Usado para “vender” as idéias;
• Útil para testar aspectos técnicos e a interação;
• Utiliza ferramental de software para auxiliar no
desenvolvimento;
• Ex: HTML, JavaScript, Visio, Delphi.
80
Prototipação - High-Fidelity
81
Prototipação - High-Fidelity
82
Prototipação - High-Fidelity
83
Validando o Protótipo
84
• Em paralelo!
• Desenvolvimento da arquitetura do
sistema:
Já ia esquecendo a ESw?
Interface com
o usuário
Negócio
Persistência
85
• Elaboração dos
diagramas
de classes:
Já ia esquecendo a ESw?
86
• Elaboração dos diagramas de classes:
Já ia esquecendo a ESw?
87
• Elaboração dos diagramas de classes:
Já ia esquecendo a Esw?
“O design é um processo que equilibra as
restrições e os constantes compromissos de
um conjunto de requisitos uns com os outros,
e as restrições podem resultar em poucas
alternativas viáveis”
Rogers, Sharp e Preece, 2013, p. 337
Resumindo...
89
• Vários métodos/artefatos para apoiar diferentes momentos
do processo de desenvolvimento
– Entrevistas
– Personas
– Storyboards
– Protótipos
– Casos de uso
– Diagramas UML
– Diagramas CTT
– ...
• Como escolher?
Conclusão

Aula 6 - Design e Processo de Design de Interfaces de Usuário

  • 1.
    Design de Interfacesde Usuário Parte 1 Prof. André Constantino da Silva IHC Baseado nos slides da Prof. Dr. Heloísa Vieira da Rocha
  • 2.
    • Compreender aimportância de centrar o design no usuário • Conhecer os princípios do Projeto Centrado no Usuário • Conhecer técnicas que auxiliam a projetar para o usuário Objetivo das Aulas
  • 3.
    Introdução • Design éa concepção de um produto (máquina, utensílio, mobiliário, embalagem, publicação etc.), especialmente no que se refere à sua forma física e funcionalidade
  • 4.
    Introdução • O queeu preciso saber para desenvolver uma aplicação com boa usabilidade? Conhecimento
  • 5.
    Introdução • O queeu preciso saber para desenvolver uma aplicação com boa usabilidade? Conhecimento – Usuários – Funcionalidades – Tecnologias que será utilizada para desenvolver
  • 6.
    6 Modelo Mental (MM) AparênciaFísica Operação Forma de responder Help e manuais
  • 7.
    7 • O entendimentoé fraco • Especificado imprecisamente • Cheio de inconsistências • Cheio de “buracos” e artimanhas • São incompletos • A habilidade das pessoas para “executar” seus modelos mentais é limitada pelos mecanismos perceptual e cognitivo • Modelos mentais são instáveis pelas próprias restrições e interferências da memória: as pessoas esquecem detalhes do sistema que estão usando, artefatos e operações similares são confundidos • Modelos mentais não são “científicos”: as pessoas mantêm comportamento supersticioso em seus modelos • Freqüentemente fazem operações físicas extras em vez de planejamento mental que possibilite evitar essas ações (Norman, 1983) Modelo Mental - Características
  • 8.
    8 Modelo Mental –Uniforme? O modelo conceitual entre os usuários é o mesmo?
  • 9.
    9 • Para aprendera programar um computador você é instruído em um paradigma de programação – Paradigma procedimental: C, Pascal • Durante o curso, você aprende outros paradigmas – Paradigma orientado a objetos: Java – E existem outros: Paradigma funcional (Lisp) e Paradigma lógico (Prolog) • Dificuldade de aprendizado de um novo paradigma ocorre – o seu Modelo Mental é voltado para o primeiro paradigma que aprende e você o usa para compreender o novo paradigma Modelo Mental - Evolução
  • 10.
    10 • Observação • Instrução •Inferência Modelo Mental - Evolução
  • 11.
    • Os usuáriossabem todos os requisitos da aplicação? • Diferentes papeis dos usuários • Contextos E mais problemas...
  • 12.
    • Assegurar quea Imagem do Sistema seja consistente com o MM dos usuários – MM do Designer coincidir com MM do Usuário E qual o seu papel como designer? Necessário conhecer o usuário e as tarefas
  • 13.
    13 Design Centrado noUsuário (UCD) Quem? Quais tarefas? Funcionalidades? Utilização. Propostas Protótipos Testes com usuários •Abordagem que coloca o usuário como centro do processo de design e desenvolvimento
  • 14.
    • É oprocesso de design em que as necessidades, desejos e limitações do ser humano são levados em conta durante todas as fases de concepção e desenvolvimento de um projeto • O objetivo do design de interface de usuário é tornar a interação do usuário o mais simples e eficiente possível, em termos de realização dos objetivos do usuário Design Centrado no Usuário
  • 15.
    • Definido naISO Human-centred design for interactive systems (ISO 9241-210, 2010) • 6 princípios chaves: – O design da interface é criado a partir do conhecimento explícito dos usuários, tarefas e ambiente – Usuários são envolvidos em todo o processo de design e desenvolvimento – O projeto é dirigido e refinado por meio avaliações centradas no usuário – O processo é iterativo – O design deve focar a experiência do usuário como um todo – A equipe deve ser multidisciplinar Design Centrado no Usuário
  • 16.
    16 Design Participativo  Designcom usuários e não para os usuários.  Incorpora o usuário como membro da equipe de projeto, participando de todas as etapas. • Melhora o entendimento do trabalho do usuário e combina o conhecimento dos diversos participantes.
  • 17.
  • 18.
    18 Engenharia Cognitiva • Enfatizaa modelagem de uma atividade na forma como ela é entendida pelo usuário. • Visa facilitar a realização da tarefa através de um bom modelo conceitual do sistema. • Dificuldade de mapeamento de termos psicológicos para mecanismos físicos: Golfo da Execução e Golfo da Avaliação. Golfo da execução: Como eu executo a tarefa....? Golfo da Avaliação: Consegui...?
  • 19.
    19 Modelo Estrela Onde ecomo é necessário Tarefas automatizadas Características e Requisitos Métricas e metas de usabilidade Representação do projeto para Comunicação entre a equipe Materializar o projeto Facilitar a avaliação prévia Ocorre entre todas as etapas Avaliando artefatos gerados em cada
  • 20.
    20 Engenharia de Usabilidade Compreensãodo usuário e atividades Funcionalidades e Contexto de trabalho Evolução do usuário Sistemas similares Metas e métricas de usabilidade Explorar possíveis soluções de projeto Design Participativo Avaliações Heurísticas / Guidelines Protótipos e Testes com Usuários
  • 21.
    – Qual oponto de partida? – Quais as informações necessárias? – Usuário, Sistema, Tarefa? O que é importante e como obter essas informações? – Quais artefatos da ES e IHC poderiam ajudar nessa etapa? 21 Desenvolvimento
  • 22.
  • 23.
    – Como aaplicação vai auxiliar nas tarefas do usuário? – Como planejar o funcionamento da aplicação? – Que artefatos podem auxiliar nessa etapa? 23 Usuário – Características
  • 24.
    24 Introdução Integração ES/IHC Desenvolvimento de SistemasInterativos no usuário (aspectos de interação) Interação Humano- Computador (IHC) Engenharia de Software (ES) no sistema (tecnologia) foco foco
  • 25.
    25 – Qual oponto de partida? – Contexto Exemplo: Você e seus colegas montaram uma empresa de desenvolvimento de software educacionais. Ao ouvir o professor comentar que existem poucos softwares para o Tablet PC, vocês resolveram inovar e desenvolver softwares para este dispositivo. Como todos os participantes gostam muito de Inteligência Artificial, resolveram que o primeiro produto seria para auxiliar os alunos nesta matéria. Iniciando o Desenvolvimento
  • 26.
    26 • E... – Oproduto tem que ter diferencial • Queremos que ele seja usavél e usado – Explore o potencial do Tablet PC • Uso da escrita a mão – Ser usado tanto em sala de aula quanto fora da sala • Dando um passo a frente: – Quem serão meus potenciais usuários? – O que eles gostariam de fazer usando o Tablet PC? Dificultando...
  • 27.
    27 • IHC • Conhecero usuário – Pesquisa – Entrevista / Questionário (usados em avaliações também) – Personas • Geração de idéias – Brainstorming – Mindmaps • Conhecendo as necessidades – Cenários – Storyboard Métodos / Artefatos • ESw – Documentos de Requisitos – Casos de Uso – Features – etc... Conhecer usuário, necessidades, tarefas...
  • 28.
  • 29.
  • 30.
    • Conhecemos superficialmenteos usuários – Temos uma noção de quem são e o seu trabalho • Precisamos dar um próximo passo – Definir melhor a aplicação. O que vamos desenvolver? Mais um passo a frente
  • 31.
    31 • Brainstorming • Criatividade- Grupo vs. Individual • Mais Idéias == Mais Criativo == Melhor • Tempo limitado • Manter um registro Geração de idéias “Brainstorming is not just a good idea but an inexhaustible source of inspiration and fresh thinking”
  • 32.
    32 • Brainstorming dicas: •Seja visual • Evitar fazer julgamentos • Encorajar idéias “viagens” • Construir em cima da idéia de outro • Vá em direção da quantidade • Somente um fala a cada vez • Mantenha-se focado no tema Geração de idéias
  • 33.
    33 • MindMaps (Logde idéias) Geração de idéias
  • 34.
    34 • Por quefazer um log de idéias? Geração de idéias •Para não esquecê-las •Para guardar e avaliá-las depois •Para ajudar a clarificar, concretizar, idéias que ficam rodando na cabeça •Para liberar sua cabeça para novas idéias •Porque uma boa idéias leva a outras •Para dar às idéias a importância que elas merecem
  • 35.
    35 • O nossoMindMaps Geração de idéias Aplicação educacional para tablet Conceito de Brainstorming Textos Aplicativos pen-based Disciplina de IA Senso Comum Ensino de IA Agentes Construção de agentes Protótipo funcional (???) Jogo Imagem e ação “Bolinha” Palavra-cruzada IHC 2006 Processo Representação de conhecimento Símbolos matemáticos “Tradutor” Expressões lógicas Colaboração Grafos Aluna “monta” agente ConceptNet Software ROBOCOD Eliza Redes neurais Desenho com apoio da ConceptNet Exemplos de aplicativos Escolhido
  • 36.
    36 • Vale apena investir na idéia selecionada? • Existem softwares semelhantes? Qual vai ser o diferencial? É uma nova idéia? Através da análise de aplicações semelhantes, verificou-se três formas para a entrada dos símbolos lógicos: 1) Teclado Físico: os símbolos lógicos são mapeados para caracteres do teclado, como no sistema ALFie, Café, Gateway, que usam o & para simbolizar o conector , o LLProver, que usa a seqüência / , e o MIB; e 2) Teclado Virtual: os símbolos lógicos são disponibilizados através de botões, como no sistema Tarski´s World (em uma janela flutuante) e WinKE (em uma barra de ferramenta); 3) Interação com Menu: os símbolos lógicos são disponibilizados em um menu, como no sistema DC Proof. Alguns sistemas estão disponíveis para a Web, como é o caso do ALFie, Café, Gateway e LLProver, outros são para ambientes desktop, como por exemplo, Aristotle, DC Proof, MIB, Tarski´s World e WinKE.
  • 37.
    37 – Como aaplicação vai auxiliar nas tarefas do usuário? – Como planejar o funcionamento da aplicação? Precisamos então conhecer melhor o usuário! – Que artefatos podem auxiliar nessa etapa? Usuário – Características
  • 38.
    38 • Não –estruturadas – Conversa informal, mas com um “plano de assuntos” a tratar – Gera informações interessantes e imprevistas, difícil de analisar • Estruturadas – Questões pré-determinadas (similar a um questionário), geralmente de múltipla-escolha – Objetivos claros com as questões • Semi-estruturadas – Questões abertas e outras objetivas – Explora mais um livre discurso do entrevistado Entrevistas
  • 39.
    39 Vamos dizer queoptamos por uma entrevista Semi-estruturada Planejamos então a entrevista: - Duração de 30 minutos a 1 hora - Pessoas que irão participar da entrevista - Recursos a serem utilizados - Lápis, papel e gravador de áudio - As perguntas. Exemplos: 1. Quais os tópicos (na disciplina) nos quais os alunos tem mais dificuldade? 2. Qual a importância de lógica de primeira ordem no currículo de cursos de computação? 3. Como você ensina lógica de primeira ordem ou outro tipo de lógica? 4. Em que ponto os alunos apresentam maior dificuldade? 5. O que é importante que o aluno saiba ou desenvolva para vencer essa dificuldade? 6. Que aplicativos de apoio ao ensino de lógica de primeira ordem você conhece? Entrevistas
  • 40.
    40 • Criação deperfis de usuários – Usuários fictícios – Representativos – Usado para motivar e guiar os membros ao PCD • Descrição de características como: – Educação – Habilidades – Profissão – Idade – Características pessoais como: se gosta de esportes, hobby, estado civil, etc. Personas
  • 41.
    41 • Pedro Marcuse Designerde Interfaces Formação: Antes de começar a faculdade de Desenho Industrial, sua principal ocupação eram os games. Escolheu essa faculdade porque sempre teve facilidade com as artes. Nunca poderia ter feito um curso chato como Administração ou Direito. Começou a trabalhar a partir do segundo ano de faculdade só pra não precisar depender mais da mesada do pai. Há dois anos formado, Pedro se encontrou no Design de Interfaces e quer se especializar nisso, apesar de seu trabalho atual como webdesigner exigir outras habilidades. Personas - Exemplo http://usabilidoido.com.br/persona_o_usuario_mascote_do_projeto.html
  • 42.
    42 • Pedro Marcuse Interesseno Usabilidoido: Melhorar o discurso para argumentar com clientes e outros membros da equipe, visando obter uma situação profissional superior. Assuntos Preferidos: – Usabilidade – Design gráfico de interfaces Tipo psicológico : Introvertido - Intuitivo - Pensador - Julgador Personas - Exemplo http://usabilidoido.com.br/persona_o_usuario_mascote_do_projeto.html
  • 43.
    43 • Pedro Marcuse Descriçãoda personalidade : Pedro sente uma pressão grande por se manter informado nas novidades da profissão. Por vezes, encontramos Pedro sentado na frente do computador fora do horário de trabalho, só para dar conta das novidades que saem nas listas de email, blogs e sites especializados. Quando está muito concentrado, prefere terminar de ler um artigo ou livro antes de sair de casa para se divertir. Quando está longe do computador, está sempre no mundo-da-lua. Durante as aulas da faculdade, as aulas chatas eram o momento em que ele tinha as melhores idéias para solucionar problemas do trabalho. Comprou um Palmtop só para anotar as idéias porque, senão o fizesse, esquecia depois. Seu círculo social é pequeno, não é um tipo popular. No entanto, valoriza muito o contato com as poucas pessoas que mantém vínculos fortes. Pedro prefere não ficar com a responsabilidade de líder, mas se precisar pode guiar uma equipe em projetos inovadores. Quando trabalha em equipe costuma desenvolver idéias em segredo até que tenha certeza de que está certo. "Dizem que sou teimoso, mas sei reconhecer quando estou errado", afirma ele. Personas - Exemplo http://usabilidoido.com.br/persona_o_usuario_mascote_do_projeto.html
  • 44.
    44 • Projeto: InternetExplorer 5 da Microsoft • Motivação: conscientizar os desenvolvedores da importância de oferecer uma boa experiência aos usuários • Como foi usado: durante as discussões sobre o rumo da interface, o nome das personas eram evocadas para defender que determinado recurso seria difícil demais para ser usado por aquela persona Personas no projeto
  • 45.
    45 • Como seriauma Persona para o nosso exemplo? Personas
  • 46.
    46 • Pequenas narrativasque descrevem atividades humanas ou tarefas • Não necessariamente descrevem o uso de um software • Ajudam a identificar os stakeholders, suas tarefas, necessidades, objetivos, etc • Ótima maneira de comunicação entre equipe de produção e usuários • Podem mostrar situações existentes nas atividades dos usuários ou propor novas situações • Ajudam na representação do modelo conceitual para as atividades Cenários
  • 47.
    47 •Exemplo de cenário: “Mariaquer encontrar um livro de “Donald Norton”. Ela não lembra o título mas sabe que foi publicado em 1988. Ela vai até o catálogo e informa seu nome e senha. Ela se irrita pela fato de ter que solicitar permissão para simplesmente consultar o catálogo. Tendo o acesso liberado ela tem a possibilidade de fazer um busca por autor ou por data, mas não pela combinação dos dois como gostaria. Ela então faz um busca por autor porque por ano retornaria muitos registros. O sistema retorna que não há registros para “Donald Norton” e exibe registros com nomes de autores similares. Maria percebe então que o nome do autor não era Norton e sim Norman. Ela seleciona o registro e verifica então onde está o livro que procura”. Cenários
  • 48.
  • 49.
    49 • O queé uma tarefa? Conjunto de atividades que são realizadas para atingir algum objetivo do usuário ao interagir com a aplicação • Tarefa x Requisitos Tarefas reúne diversos requisitos levantados por um usuário Tarefas
  • 50.
    50 • Professor – Elaborao enunciado do exercício (podendo usar o teclado para digitar frases e a caneta para inserir símbolos lógicos) – Disponibiliza exercícios aos alunos – Explica como resolver um exercício • Aluno – Resolve o exercício – Auxilia outro aluno a resolver um exercício – Explica como resolver um exercício Algumas Tarefas
  • 51.
    51 • Em paralelo!Desenvolvimento de casos de uso Onde estão os métodos e artefatos da ESw? N Evento Caso de uso 1 O professor insere um exercício no caderno de atividades Inserir Exercício 2 O professor edita um exercício no caderno de atividades Editar Exercício 3 O professor exclui um exercício do caderno de atividades Excluir Exercício 4 O aluno resolve individualmente um exercício do caderno de atividades Resolver Exercício Individualmente 5 Os alunos resolvem colaborativamente um exercício do caderno de atividades Resolver Exercício Colaborativamente ... ... ...
  • 52.
    52 Caso de Uso1 - Inserir Exercício Breve Descrição: O professor deseja inserir um novo exercício no caderno de atividades. Ator Primário: Professor Precondições: professor estar logado Pós-condições: novo exercício é guardado e disponibilizado Onde estão os métodos e artefatos da ESw? Ator Sistema 1. O professor informa que deseja adicionar um novo exercício 2. O professor fornece as informações do exercício 3. O sistema guarda as informações do exercício
  • 53.
    53 • Como referenciara aplicação? – Caderno Interativo de Lógica Precisamos de um nome
  • 54.
    54 • Já tenhouma boa idéia... e agora? Design, Projeto, Especificação, Testes... •Planejar, materializar as soluções... •Diversos artefatos da ES e IHC podem auxiliar no design e projeto do sistema
  • 55.
    55 • IHC • Design –Diagrama de fluxo – Diagrama de CTTs • Prototipação – Low-Fidelity (paper prototyping – High-Fidelity • Avaliação – Inspeção – Testes de Usabilidade Artefatos • Engenharia de Software • Diagramas: – Classes – ER – Sequência – Componentes – etc... • Protótipo • Código • Testes de software Design, Projeto, Especificação, Testes...
  • 56.
  • 57.
  • 58.
  • 59.
    59 Diagrama CTTs Tarefa daAplicação Ex.: fornecer informação ao usuário
  • 60.
    60 Diagrama CTTs Tarefa doUsuário Ex.: pensar, decidir (normalmente tarefas cognitivas)
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
    66 • Foco nasatividades – designer não foca em detalhes de implementação • Estrutura hierárquica – Decomposição do problema em problemas menores • Sintaxe gráfica • Notação de concorrência • Objetos Diagrama CTTs
  • 67.
    67 Diagrama de Fluxo •Tambémconhecido como: • Interface-flow diagram; • Windows navigation diagram; • Context-navigation map; • Navigation diagram (RUP); •Visa modelar os relacionamentos entre elementos da interface; • Utilizado para modelar a interação de um usuário com a interface, ilustrando um cenário ou caso de uso; • Oferece um overview da interface e sua navegação; • Permite verificar todo o fluxo de navegação na interface;
  • 68.
  • 69.
  • 70.
    70 Prototipação – Porque? • “Mil e uma utilidades...” • Útil para discutir idéias com os stakeholders; • Meio de comunicação entre os membros da equipe de desenvolvimento; • Ótimo para testar suas próprias idéias; • Permite testar alternativas de design; • Auxilia na obtenção de requisitos (e refinamento); • Permite testes e avaliações;
  • 71.
    71 Prototipação - Low-Fidelity Prototipaçãoem Papel • Rápido, barato, fácil de fazer e modificar; • Útil para explorar alternativas de design e idéias; • Bastante usual nos primeiros estágios do desenvolvimento (coletar requisitos); • Podem ser utilizados para testar a interação também; • Não se parecem muito com o produto final;
  • 72.
  • 73.
  • 74.
  • 75.
    75 Prototipação - Low-Fidelity Umaproposta de solução? Duas?
  • 76.
    76 Prototipação - Low-Fidelity Umaproposta de solução? Duas? Três?
  • 77.
    77 Prototipação - Low-Fidelity Umaproposta de solução? Duas? Três? Quatro? Caderno Interativo de Lógica Exercício:aula1_ex03 Considerando que: - Todo aluno de computação é uma pessoa inteligente. - Toda pessoa inteligente gosta de festa. - Natanael é um aluno de computação. Use o cálculo de primeira ordem para mostrar que: - Natanael gosta de festa. Enunciado: Escrever com a Caneta Inserir Desenhar Grafo Cancelar Abrir Exercício Fechar Exercício Arquivo Novo Exercício Salvar Como ImprimirSalvar Visualizar Impressão Editar Inserir Resolução Relembrar a Teoria Ajuda Sair
  • 78.
    78 Prototipação - Low-Fidelity Umaproposta de solução? Duas? Três? Quatro? Caderno Interativo de Lógica Exercício:aula1_ex03 Considerando que: - Todo aluno de computação é uma pessoa inteligente. - Toda pessoa inteligente gosta de festa. - Natanael é um aluno de computação. Use o cálculo de primeira ordem para mostrar que: - Natanael gosta de festa. Enunciado: Escrever com a Caneta Inserir Desenhar Grafo Cancelar Abrir Exercício Fechar Exercício Arquivo Novo Exercício Salvar Como ImprimirSalvar Visualizar Impressão Editar Inserir Resolução Relembrar a Teoria Ajuda Sair Vencedor!
  • 79.
    79 Prototipação - High-Fidelity •Muito próximo do produto final; • Funcional, interativo, navegacional; • Utilizado para exploração e testes; • Usado para “vender” as idéias; • Útil para testar aspectos técnicos e a interação; • Utiliza ferramental de software para auxiliar no desenvolvimento; • Ex: HTML, JavaScript, Visio, Delphi.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
    84 • Em paralelo! •Desenvolvimento da arquitetura do sistema: Já ia esquecendo a ESw? Interface com o usuário Negócio Persistência
  • 85.
    85 • Elaboração dos diagramas declasses: Já ia esquecendo a ESw?
  • 86.
    86 • Elaboração dosdiagramas de classes: Já ia esquecendo a ESw?
  • 87.
    87 • Elaboração dosdiagramas de classes: Já ia esquecendo a Esw?
  • 88.
    “O design éum processo que equilibra as restrições e os constantes compromissos de um conjunto de requisitos uns com os outros, e as restrições podem resultar em poucas alternativas viáveis” Rogers, Sharp e Preece, 2013, p. 337 Resumindo...
  • 89.
    89 • Vários métodos/artefatospara apoiar diferentes momentos do processo de desenvolvimento – Entrevistas – Personas – Storyboards – Protótipos – Casos de uso – Diagramas UML – Diagramas CTT – ... • Como escolher? Conclusão