Escolar Documentos
Profissional Documentos
Cultura Documentos
Conceitos e definições
Definição de IHC
Psicologia
Psicologia Social e
Cognitiva Organizacional
Ergonomia e
Ciência da Fatores
computação Humanos
Conhecimento e
Inteligência Habilidades dos Engenharia Teorias,
Especialistas em IHC
Artificial Métodos,
Design Técnicas e
Lingüística
Ferramentas
Antropologia
de
Filosofia Sociologia Design de IHC
Computação ubíqua
●
Produzir sistemas usáveis, seguros e funcionais.
●
Desenvolver ou melhorar a segurança, utilidade,
efetividade e USABILIDADE de sistemas
computacionais.
Conceitos básicos
●
"Usabilidade, um direito". (IHC 2002).
●
Na era da informação, pessoas são obrigadas a realizar
grande parte de suas atividades através de computadores:
votar, pagar contas, pagar impostos, etc.
●
Muitos não conseguem atingir seus objetivos devido a
problemas de usabilidade nos sistemas.
Referências
●
Design de interação: além da interação humano-computador. Yvonne Roggers, Helen
Sharp e Jenny Preece. 3ª ed. Porto Alegre: Bookman, 2013.
●
Design e Avaliação de Interfaces Humano-Computador. Heloísa Vieira da Rocha e
Maria Cecília Calani Baranauskas, Instituto de Computação Universidade Estadual de
Campinas, 2003. E-book. Disponível em: <https://www.nied.unicamp.br/biblioteca/design-
e-avaliacao-de-interfaces-humano-computador/>. Acesso em: 01/07/2019.
●
Interação Humano Computador e o Desenvolvimento de Interações Alternativas.
Daniela G. Trevisan - Instituto de Computação Universidade Federal Fluminense.
●
Interação humano-computador. Simone Diniz Junqueira Barbosa e Bruno Santana da
Silva. Rio de Janeiro: Elsevier, 2010.
●
Professor Geraldo Ranthum. UTFPR, 2017.
IHC - histórico e evolução
Os primórdios do IHC
●
Termo criado por volta de 1880 – com pouca repercussão
até 1960 quando começou a ser utilizada pela indústria
computacional.
●
A partir de então começa a ter um emprego mais amplo
significando, inclusive, interações entre departamentos e
organizações ou campos de estudo.
Definição de Interface
●
Free Flight Sim
●
Flight Simulator
●
Microsoft Flight
●
https://www.techtudo.com.br/listas/
noticia/2015/02/veja-lista-com-os-
melhores-simuladores-de-aviao-para-
pc-e-smart.html
Evolução do IHC
●
No intuito de estudar a problemática
da adequação dos equipamentos,
máquinas e produtos para a
necessidade dos usuários surgiu a
disciplina de ergonomia (Amaral &
Nascimento, 2010).
●
“A ergonomia evoluiu no decorrer de
1950 e 1960, após o fim da guerra
principalmente com suas pesquisas
concentradas no desenvolvimento de
eletrodomésticos e automóveis mais
fáceis de serem utilizados”.
Evolução do IHC
●
1970 e 1980 - os pesquisadores ergonômicos começaram a ter
interesse pela psicologia cognitiva, buscando adaptá-la para projetos
de interface com o usuário (Moraes & Rosa, 2008).
●
Pesquisadores começaram a criar novas metodologias, métodos e
técnicas para identificar problemas relacionados à utilização de
sistemas (Amaral & Nascimento, 2010).
●
Nesse período, com o surgimento de monitores, computadores
pessoais e uma onda de tecnologias da computação interativas,
surgiram novos desafios e paradigmas específicos para interfaces
interativas (Preece et alii, 2005).
Evolução do IHC
●
Brasil - década de 90 - começaram a surgir os primeiros estudos
de IHC realizados por pesquisadores das áreas de Inteligência
Artificial e Engenharia de Software
●
No decorrer dos anos, pesquisadores das áreas de Ciência de
Informação e Antropologia começaram a contribuir para o
desenvolvimento e o estabelecimento da IHC no país.
Evolução do IHC no Brasil
Em um curto período de
tempo, a IHC no Brasil se
consolidou e criou uma grande
comunidade ativa que
organiza eventos de escala
continental, dando visibilidade
as pesquisas brasileiras sobre
IHC.
Evolução do IHC no Brasil
●
Anos 1950: Interface de hardware “para
engenheiros” com diversos botões de interação
●
Anos 1960-1970: Interface de programação
(COBOL, FORTRAN)
●
Anos 1970-1990: Interface de terminais
(linguagens de comando)
●
Anos 1980: Interface de interação para diálogo
(GUIs, multimídia)
●
Anos 1990: Interface para realizar trabalho
(redes e grupos)
●
A partir de 2000: Interface torna-se onipresente
(Aparelhos celulares, bluetooth, dispositivos
móveis, eletrônicos, por toda a parte, telas
interativas e muita tecnologia embarcada). Computação Ubíqua
Melhorias para Interfaces Gráficas com o Usuário
●
Os esforços em estabelecer procedimentos de interação nos sistemas
computacionais semelhantes àqueles utilizados em situações reais
resultam em várias propostas de melhoria para Interfaces Gráficas com
o Usuário (GUI, do inglês Graphical User Interface).
●
Estas pesquisas de melhorias das Interfaces Gráficas concentram-se
em estudos de Interação entre Homem e Computador (IHC).
●
Os benefícios destas pesquisas e práticas da IHC vão além da melhoria
das condições de uso dos sistemas, adentra questões comerciais que
definem a aceitabilidade e permanência dos produtos no mercado.
A importância de um projeto de interação
●
O sucesso de produtos interativos
chamou a atenção de
departamentos de marketing que
compreenderam que a usabilidade
afeta fatores como marca, número
de acessos aos sites, índice de
retorno nos sites e a satisfação do
usuário e potencial cliente.
●
“A interação com a interface afeta a
percepção de marca” (Fernandez,
2005). Clique num tablet para
ler uma análise
A expansão do mercado
●
O número de profissionais e especialistas na área de projeto de interação
cresce na medida em que a demanda por produtos mais usáveis é
solicitada por usuários.
●
Com a abertura deste mercado multidisciplinar vários profissionais como
sociólogos, antropólogos, dramaturgos combinam habilidades para
encontrar as melhores soluções de interação.
●
Isso gera custos, causa confusão, desentendimento e até mesmo falhas
de comunicação. Mas o resultado tem sido satisfatório uma vez que os
projetos começam a pensar mais no usuário.
●
O DESIGN DE INTERAÇÃO JÁ É UM GRANDE NEGÓCIO.
Design de Interação
●
https://www.vagas.com.br/vagas-d
e-designer-de-interfaces
●
https://programathor.com.br/
Referências
●
Design e Avaliação de Interfaces Humano-Computador. Heloísa Vieira da
Rocha e Maria Cecília Calani Baranauskas, Instituto de Computação
Universidade Estadual de Campinas, 2003. E-book. Disponível em:
<https://www.nied.unicamp.br/biblioteca/design-e-avaliacao-de-interfaces-
humano-computador/>. Acesso em: 01/07/2019.
●
RANTHUM, Geraldo. UTFPR, 2017.
●
User Experience and HCI Expert. Irla Rebelo - Blog disponível em
<http://irlabr.wordpress.com/apostila-de-ihc/parte-1-ihc-na-pratica/introducao-a-
interacao-entre-homem-e-computador-ihc/> acesso em 01/07/2019.
●
IHC: histórico da área. Blog de Marcelo Ramos disponível em:
<http://www.marceloramos.com.br/publicacao/45/ihc-historico-da-area>
IHC – Exercício sobre disciplinas envolvidas
Exercício
A composição de uma equipe de design depende do tipo de produto
interativo que será desenvolvido.
●
Responda às questões abaixo:
– Quem você acha que deveria estar envolvido no desenvolvimento de:
●
Um balcão de informações sobre as exposições disponíveis em um museu de
ciências ou
●
Uma página de Internet interativa educacional que acompanha uma série de TV ou
●
Um quiosque automatizado para vendas de ingressos de shows.
– Qual será o custo aproximado desse projeto?
– Quanto tempo será necessário para desenvolvê-lo?
IHC Interação Humano Computador
●
Menu pull-down (drop-down, menu
suspenso): o menu surge ao se clicar
em seu título, e desaparece assim
que se seleciona uma das opções.
●
Menu pop-up (menu de contexto,
menu local): é exibido ao se clicar
com o botão direito, ou em um
determinada área da tela ou elemento
de interface, e pode permanecer
visível até que o usuário selecione um
de seus itens ou decida fechá-lo.
Teclas de Atalho (combinação de teclas)
●
Agilizam a realização de
funções comumente usadas.
●
Devem ser apresentadas para
o usuário de modo que ele
possa conhecê-las e utilizá-
las.
●
Exemplos:
– F1 – Ajuda, CTRL + C, CTRL +
V, ALT + A, CTRL + A, CTRL + Z.
Teclas de atalho
É importante manter a consistência interna e externa entre as teclas de atalho.
●
O WIMP é a junção de tecnologias de
hardware e software, associado aos
conceitos de janelas e de Widgets que
permite a implementação de vários estilos.
●
Em interfaces WIMP é possível encontrar
os estilos de menus, manipulação direta,
preenchimento de formulário e linguagem
de comandos.
●
WIMP pode ser considerado um estilo ou
um framework de interface apoiado pela
tecnologia de interfaces gráficas (GUI –
Graphical User Interfaces)
Realidade Virtual
●
Estilo de interação
caracterizado por oferecer ao
usuário a sensação de estar
presente num ambiente que
simule certas condições de
trabalho de um domínio com o
uso de tecnologias avançadas.
●
Pode ser imersiva ou não-
imersiva.
Realidade virtual imersiva
●
Aquela na qual o usuário utiliza
dispositivos que lhe dá a
sensação de estar presente no
ambiente virtual.
– Óculos (com visores especiais
para que sua visão esteja
concentrada apenas no mundo
virtual),
– Luvas (que lhe permitam interagir
com os elementos do mundo
virtual).
Realidade virtual não-imersiva
●
É aquela na qual o
usuário utiliza um
“computador” visualizando
imagens tridimensionais e
interage com o ambiente
virtual através de
dispositivos como: mouse,
teclado, joystick.
Hipertexto (Web)
●
Modelo de estruturação que
permite ao usuário fazer
referências cruzadas entre
diferentes partes através de
links (ligações).
●
Este estilo ficou conhecido
também como browsing
(folheamento).
Estilos de Interação – Yvonne Rogers et al
11) Toque.
1) Baseada em comando.
2) WIMP e GUI. 12) Gestos.
Contato:
celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
●
Permitem ao usuário interagir com a aplicação
●
Disponíveis em bibliotecas
●
Podem ser agrupados
●
Precisam ser associados às funcionalidades e
aos objetos da aplicação
Componentes Visuais Interativos
Widgets – alguns exemplos
●
Windows (janelas).
●
Ícones.
●
Menus pull-down (suspensos), pop-up.
●
Pointers (cursores).
●
Botões.
●
Sliders (controles deslizantes).
●
Caixas de texto.
●
Quadros de: mensagens, diálogo, edição.
●
Barras de ferramentas (toolbars).
●
Paletas de cores, etc.
Janelas
Janelas primárias
– Janelas de contextualização, com
menus, barras de ferramentas e de
status.
– Nelas são representados os
objetos principais da aplicação.
– Deve-se limitar o número de
janelas simultâneas.
– Deve-se manter uma aparência
consistente entre as diversas
janelas.
Janelas
Janelas secundárias
– Exibição (output) de
mensagens (quadros
de mensagens).
– Inserção (input) de
informações adicionais
(quadros de diálogo,
formulários)
Menus
●
Menus padronizados (Arquivo,
Editar, Exibir, Inserir, Formatar,
Ferramentas, Janelas, Ajuda).
– Tipos de itens de menu:
●
Acionamento de comando.
– Comando imediato (salvar).
– Comando que precisa de mais input - salvar
como…
●
Mudança de estado.
●
Opções independentes – tais como estilos
de fonte: negrito, itálico, regular.
●
Opções interdependentes (Alinhamento:
esquerda, direita, centro, justificado.
Tipos de menus
●
Menus suspenso (pull-down) e pop-
up.
●
Seleção simples: botão de opção
(radio buttons).
●
Seleção múltipla: caixas de seleção
(checkboxes).
●
Barras de ferramentas e paletas
(palettes).
Barras de ferramentas (toolbars)
●
São utilizadas para incluir elementos de
uso frequente: deve-se evitar incluir
controles que não estão disponíveis de
outra forma.
●
Fornecer dicas de contexto (tooltips).
●
Deve-se fornecer ao usuário o controle
de visibilidade (ocultar/exibir) caso haja
múltiplas barras de ferramentas.
●
Orienta-se analisar a adequação de
representações gráficas (ícones e
botões) dos comandos disponibilizados.
Barra de status
●
Exibe mensagens diretas (constantes) sobre:
– Estado atual da aplicação;
– Item de menu selecionado;
– Estado do teclado;
– Idioma;
– Zoom, etc.
Botões de Comando
●
Utilizar de botões de comando para
disparar ações ou para indicar e
alterar estados.
●
Deve-se utilizar descrições breves,
consistentes e claramente distintas
(ex: “Fechar”, “Cancelar”, “Voltar”).
●
Orienta-se seguir as convenções
do ambiente operacional.
●
Manter tamanho e posicionamento
consistentes.
Botões de Comando
●
Acionamento imediato e contextualizado
– Em barras de ferramentas:
●
executa ação associada.
– Em janela secundária:
●
Inicia uma transação dentro da janela ou
●
aplica uma transação e fecha a janela.
Botões de Opção - diretrizes
●
Se o número de opções for muito grande, deve-
se utilizar lista ou uma tabela.
●
Se o texto de um item for grande, ele deve ser
alinhado pelo topo.
●
Deve-se disponibilizar teclas de atalho.
Botões de Opção
●
Botões de opção (radio buttons)
– Utilizado para opções relacionadas e
mutuamente exclusivas.
– Apenas uma opção pode estar
selecionada.
– Pode apresentar um valor padrão (default).
●
Botões de seleção (checkboxes)
– Opções independentes, que podem
estar ligadas ou desligadas.
– Os estados ligado/desligado devem
ser opostos.
Listas
●
São utilizadas para grande número de opções;
●
As opções devem ser ordenadas por um determinado critério;
●
Devem ser exibidas entre 3 e 7 opções;
●
Evitar barras de rolamento horizontais;
●
A lista deve possuir um rótulo (label) para identificação;
●
Teclas de atalho para acesso rápido devem ser disponibilizadas;
●
Operações de arrastar e soltar (drag-and-drop) são desejáveis.
Diretrizes:
– Forneça um rótulo (label) para identificar o elemento.
– Forneça teclas de atalho para acesso rápido.
– Valide a entrada de dados imediatamente, se possível.
Caixas de mensagem
Objetivo: para apresentar mensagens
explicativas, de erro, entre outras.
●
Deve-se:
– Sinalizar o tipo de mensagem: (alerta (!),
pergunta (?), erro (X).
– Utilizar vocabulário simples e claro.
– Relacionar a mensagem à tarefa do usuário.
●
Em mensagens de erro, exiba:
– descrição do erro;
– causa do erro;
– possível solução.
Quadros de Diálogo - painéis
●
Objetivo: entrada de dados
Termos utilizados
– Título significativo, estilo consistent
– Terminologia, fontes, capitalização e justificação consistentes.
●
Organização
– Sequência topo-esquerda a baixo-direita;
– Agrupamento e ênfase;
– Layouts consistentes (proporções, margens, grids, linhas, etc.)
– Indicação de itens habilitados e desabilitados;
– Valores default (padrão);
●
Botões padronizados (OK, Cancela)
●
Prevenção de erros
Quadros de Diálogo e Janelas: erros comuns
●
Desconsiderar o padrão look and feel (aparência) do ambiente de trabalho;
●
Proporções incomuns;
●
Estrutura excessiva;
●
Muitos quadros aninhados, um quadro para cada controle, muitas linhas
divisórias;
●
Pouco ou muito contraste entre áreas e elementos;
●
Densidade espacial: informação demais ou de menos;
●
Layouts arbitrários: controles de tamanhos diferentes, alinhamento e
posicionamento arbitrários, agrupamento inexistente ou inadequado.
Formulários – Orientações Gerais
●
Siga orientações gerais para quadros de
diálogo.
●
Utilize widgets adequados para o tipo de dado.
●
Forneça movimento conveniente do cursor.
●
Marque claramente os campos opcionais e
obrigatórios.
●
Sinalize o término do preenchimento (ex.:
habilitando botão de confirmação).
●
Instruções e mensagens
●
Instruções claras e breves (evite pronomes e
referências).
●
Mensagens explicativas (barra de status ou
quadros de Mensagem).
Formulários – Orientações Gerais
Instruções e mensagens - utilize:
1) Instruções claras e breves (evite pronomes e referências);
2) Mensagens explicativas (barra de status ou quadros de mensagem).
Tratamento de erros:
●
Faça uso de caixas de texto;
●
Correção de erros para caracteres individuais ou campos inteiros;
●
Prevenção de erros;
●
Mensagens de erro para valores inaceitáveis.
Formulários — erros Comuns
●
Uso inadequado do formato de formulário x planilha;
●
Apresentação de informações internas ao sistema e
irrelevantes para o usuário;
●
Instruções excessivas, com texto redundante;
●
Instruções para o preenchimento dos campos em locais
pouco visíveis (ex. barra de status);
●
Excesso de quadros de mensagens que interferem na
tarefa do usuário; Não indicação de campos obrigatórios.
Mensagens de erro
●
Sempre que possível, o sistema não deve permitir que ocorram erros.
●
Causas de erros:
– Falta de conhecimento.
– Noções incorretas.
– Lapsos.
Mensagens de erro – como redigir
Apresentar ao usuário: O QUE houve, POR QUE aconteceu, COMO
contornar ou resolver
– Especificidade: DADO INVÁLIDO vs. Digite um valor numérico de 1 a 10.
– Formato físico apropriado: CAIXA ALTA PARA ERROS DE POUCA
IMPORTÂNCIA.
– Mensagens eficazes: ERRO Xbc345! vs. Data inválida: o formato correto é
dd/mm/aaaa.
– Orientação construtiva (indicação de como resolver o problema): COMANDO
INVÁLIDO vs. Verifique a sintaxe do comando.
Sistemas de ajuda
Segundo a Engenharia
Semiótica
Help é uma comunicação
designer-usuário privilegiada.
Objetivo: permitir ao usuário
expressar dúvidas específicas
em um contexto de interação.
Principais problemas em Sistemas de Ajuda*
●
Não fornecem informações
específicas desejadas pelos
usuários;
●
Não estão disponíveis quando
necessário;
●
Informação não está correta
ou está Incompleta;
●
Dificuldade de alternar entre
sistema de ajuda e aplicação.
* Professora: Raquel Oliveira Prates 2006
Referências
●
Aulas do professor Geraldo Ranthum. UTFPR, 2017.
●
Interação humano-computador. Simone Diniz Junqueira
Barbosa e Bruno Santana da Silva. Rio de Janeiro: Elsevier, 2010.
●
Design e Avaliação de Interfaces Humano-Computador. Heloísa
Vieira da Rocha e Maria Cecília Calani Baranauskas, Instituto de
Computação Universidade Estadual de Campinas, 2003. E-book.
●
E–usabilidade. Simone Bacelar Leal Ferreira e Ricardo Rodrigues
Nunes. São Paulo, LTC, 2008.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
●
Embora princípios e diretrizes possam ser utilizados como auxílio ao design,
elas não substituem um processo cuidadoso que inclui a busca pelo
entendimento do problema, a elaboração de soluções candidatas e a
avaliação dessas soluções alternativas.
Diretrizes
Alguns conjuntos de diretrizes são
desenvolvidos especificamente para
certos ambientes de trabalho, como
o Windows®, o MacOs® e o
Gnome®, ou para certos
dispositivos, como dispositivos
móveis e televisão digital interativa,
e certos domínios, como educação,
governo eletrônico etc.
Barbosa e Silva (2010)
Diretrizes
●
Segundo Barbosa e Silva (2010):
– “A aplicação adequada de boa parte dos princípios e
diretrizes depende, em alguma medida, do conhecimento do
designer acerca do domínio do problema, dos usuários e
das suas atividades nesse domínio.”
– “Sendo assim, cabe ao designer considerar cuidadosamente
quais diretrizes são adequadas à sua situação de design, e
como elas devem se manifestar na solução de IHC.”
Perfis de usuários
●
No projeto de uma interface
usuário é necessário levar-se
em consideração o perfil dos
seus potenciais usuários.
●
A análise deste perfil é
fundamental para que a
interface (e por consequência,
o software) seja explorada em
todo o seu potencial.
Perfis de usuários
●
Shneiderman (1993) sugere três categorias de
diretrizes para serem aplicadas ao projeto de
interfaces :
– Interação Geral.
– Entradas de Dados.
– Exibição de Informações.
Diretrizes - categorias
●
O detalhamento e exemplos de cada categoria
estão nos slides: aulas 10A, 10B e 10C
Diretrizes de Interação Geral
●
Consistência.
●
Feedback significativo.
●
Verificação de qualquer ação destrutiva não-trivial.
●
Fácil reversão da maioria das ações.
●
Redução da quantidade de informações que devem ser
memorizadas.
Diretrizes de Interação Geral
●
Eficiência de diálogo, movimento e raciocínio.
●
Tratamento de erros.
●
Divisão das funções e organização da geografia da tela.
●
Facilidades de ajuda sensíveis ao contexto.
●
Uso de verbos de ação ou expressões verbais simples
para os comandos.
Diretrizes para Entradas de Dados
●
Minimização do número de ações de entrada exigidas do
usuário.
●
Manutenção da consistência entre: exibição das informações
e entrada de dados.
●
Adaptação da entrada ao usuário.
●
Desativação de comandos não utilizados no contexto atual.
●
Controle do fluxo interativo pelo usuário.
●
Eliminação de entradas que possam ser default.
Diretrizes para Exibição de Informações
●
Exibição de informações que sejam relevantes ao
contexto atual.
●
Diminuição da quantidade de dados.
●
Uso de rótulos (labels) consistentes, abreviações
padronizadas.
●
Manutenção do contexto visual.
●
Mensagens de erro significativas.
Diretrizes para Exibição de Informações
●
Uso de caixa alta e caixa baixa, entradas e agrupamento
de textos.
●
Usar janelas ou painéis para dividir diferentes tipos de
informação.
●
Usar displays análogos para representar informações de
modo a serem mais facilmente assimiladas.
●
Consideração da geografia disponível na tela e uso
eficiente da mesma.
Princípio KISS de Design
https://www.interaction-design.org/literature/article/kiss-keep-it-simple-stupid-a-design-principle
Interfaces simples
“A user interface is like a
joke. If you have to
explain it, it’s not that
good”. — Martin Leblanc.
●
Aulas do professor Geraldo Ranthum. UTFPR, 2017.
●
E – usabilidade. Simone Bacelar Leal Ferreira e Ricardo Rodrigues Nunes. São Paulo, LTC, 2008.
●
Design e Avaliação de Interfaces Humano-Computador. Heloísa Vieira da Rocha e Maria Cecília Calani
Baranauskas, Instituto de Computação Universidade Estadual de Campinas, 2003. E-book.
●
UX Collectiv - Curated stories on user experience, usability, and product design (Histórias selecionadas
sobre a experiência do usuário, usabilidade e design de produtos) - https://uxdesign.cc
●
Artigo: “Desenvolvimento do Protótipo ” - Robson Santos - PUC Rio - disponível em:
https://www2.dbd.puc-rio.br/pergamum/tesesabertas/0313143_06_cap_10.pdf
Dúvidas?
Contato:
celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
Proporcionar ao usuário um
feedback visual e auditivo que
garanta o estabelecimento de
uma comunicação bidirecional
(entre o usuário e a interface).
Verificação de qualquer ação destrutiva não-trivial
O sistema deve se
proteger contra erros do
usuário que possam fazer
com que ocorram falhas
ou que provoquem a
interrupção do uso do
sistema.
Divisão das funções e organização da geografia da tela
●
Aulas do professor Geraldo Ranthum. UTFPR,
2017.
●
Interação humano-computador. Simone Diniz
Junqueira Barbosa e Bruno Santana da Silva. Rio de
Janeiro: Elsevier, 2010.
Dúvidas?
Contato:
celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
Em muitas aplicações, o teclado permanece como o meio de entrada primário, mas mouse,
digitalizadora, telas touch, sistemas de reconhecimento vocal, etc, estão se tornando
rapidamente alternativas efetivas para entrada de dados.
●
Acima de tudo, é necessário
reduzir a quantidade de digitação
necessária.
●
Isso pode ser realizado com o uso
do mouse para selecionar dentre
conjuntos de entrada pré-definidos
ou ao utilizar “macros” que
possibilitem que um único toque no
teclado seja transformado em uma
coleção mais complexa de dados
Filtro aplicado ao digitar a
de entrada. letra inicial de um nome.
Manutenção da consistência entre: exibição das
informações e entrada de dados.
As características visuais da
tela (do display), tais como
tamanhos do texto, cor, arranjo,
devem ser transportadas ao
domínio de entrada.
Adaptação da entrada ao usuário
●
Permitir que o usuário crie
comandos "customizados" ou
prescinda de alguns tipos de
mensagens de aviso ou verificação
de ações.
●
A interação dever ser flexível, mas
também sintonizada com o modo
de entrada preferido do usuário.
Desativação de comandos não utilizados no contexto atual
A desativação de comandos
protege o usuário de tentar
alguma ação que possa resultar
em erro.
Controle do fluxo interativo pelo usuário
Contato:
celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
●
O usuário não deve ter de
vagar por dados, menus e
gráficos estranhos para obter
informações relevantes para
uma função de sistema
específica.
Diminuição da quantidade de dados
●
Usar um formato de
apresentação que possibilite
uma rápida assimilação das
informações.
●
Gráficos ou diagramas
devem substituir tabelas
volumosas.
Uso de rótulos (labels) consistentes, abreviações padronizadas
●
O significado de um display
deve ser óbvio, sem
necessidade de referência a
alguma fonte de informações
externa.
Manutenção do contexto visual
●
Se os displays gráficos de
computador (computer graphics
displays) forem dimensionados
para cima ou para baixo, a
imagem original deve ser exibida
constantemente (de forma
reduzida no canto do monitor)
para que o usuário entenda a
localização relativa da parte da
imagem que está sendo vista
atualmente.
Mensagens de erro significativas
●
Mensagens e avisos de erro são "más
notícias" enviadas aos usuários de
sistemas interativos quando alguma
coisa sai errada.
●
Um exemplo clássico é uma
mensagem do tipo SEVERE SYSTEM
FAILURE 14A.
●
Em algum lugar, uma explicação para
o erro 14A deve existir; caso contrário
ela não deveria ser mostrada.
Uso de caixa alta e caixa baixa, entradas e agrupamento de textos
●
Grande parte das informações
comunicadas por uma interface
é textual;
●
O layout e a forma do texto
exercem um significativo
impacto sobre a facilidade com
que as informações são
assimiladas pelo usuário.
Usar janelas ou painéis para dividir diferentes tipos de informação
●
Janelas possibilitam que o usuário
“guarde” muitos tipos diferentes
de informação ao seu alcance.
●
No exemplo ao lado a janela
principal exibe o desenho, a
janela secundária o diálogo para
salvar o trabalho realizado.
Usar displays análogos para representar informações de modo a serem
mais facilmente assimiladas.
●
Por exemplo, se um display da pressão
mantido em tanques em uma refinaria
de petróleo tivesse uma representação
numérica, isso geraria pouco impacto.
●
Porém, se fosse usado um display
semelhante a um termômetro,
mudanças verticais de movimento e de
cor poderiam ser utilizadas para indicar
condições de pressão perigosas. Isso
ofereceria ao usuário tanto informações
relativas como absolutas.
●
Quando múltiplas janelas
tiverem de ser usadas, deve
haver espaço disponível para
mostrar pelo menos uma parte
de cada uma.
●
Além disso, o tamanho da tela
(Engenharia de Sistemas) deve
ser selecionado para acomodar
o tipo de aplicação que será
implementado.
Dúvidas?
Contato:
celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
Trabalho avaliativo
Exercícios – Diretrizes para desenvolvimento de Interfaces
●
Crie uma apresentação que contenha:
– Um slide de título (capa da
apresentação);
– Um slide com o nome dos estudantes
que criaram a apresentação;
– Um slide para cada diretriz
selecionada.
Referências
●
Aulas do professor Geraldo Ranthum. UTFPR, 2017.
●
Interação humano-computador. Simone Diniz Junqueira
Barbosa e Bruno Santana da Silva. Rio de Janeiro: Elsevier,
2010.
●
Oito Regras de Ouro de Shneiderman – Princípios de Design de
Interação. Blog de Rian Dutra sobre UX, UI e IxD, disponível em:
<http://designr.com.br/oito-regras-de-ouro-de-shneiderman-
principios-de-design-de-interacao/> - acesso em 21/10/2019.
●
Design e Avaliação de Interfaces Humano-Computador. Heloísa
Vieira da Rocha e Maria Cecília Calani Baranauskas, Instituto de
Computação Universidade Estadual de Campinas, 2003. E-book.
Dúvidas?
Contato:
celso.canteri@ifpr.edu.br
IHC / Engenharia de Software
2
Prototipação
• É uma ferramenta que busca simular para o usuário o
funcionamento dos seus requisitos, antes que o produto
final esteja pronto ou em desenvolvimento.
3
Prototipação
• O desenvolvedor pode estar incerto sobre a eficiência
de um algoritmo, adaptação de um sistema operacional
ou sobre a forma da interação homem-máquina.
4
Prototipação
Início
Fim
Coleta e
refinamento dos
requisitos
Engenharia Projeto
do produto rápido
Refinamento Construção
do protótipo do protótipo
Avaliação do
protótipo pelo
cliente
5
O Modelo Prototipação Rápida
• Pode ser usado quando o sistema possui muita interação com o usuário
e se deseja avaliar a interface.
6
Estratégias de Prototipação
7
Protótipo de Baixa Fidelidade
8
Protótipo de Alta Fidelidade
• Possui um nível rico de detalhes e procura representar da
forma mais realista possível como ficará o produto final.
• Vantagens:
• Usuário tem uma melhor noção de como ficará o software quando
estiver pronto;
• Bem utilizado para refinar requisitos de usabilidade de design.
• Desvantagens:
• Pode levar o usuário a confundir o
protótipo com o software pronto.
9
Prototipação Horizontal
• Baseia-se em um conjunto amplo de funcionalidades,
porém não se preocupa em detalhar as características
individuais de cada uma.
• Utilizada principalmente nas etapas iniciais do projeto.
10
Prototipação Vertical
• Demonstra os requisitos mais específicos de uma ou várias
funcionalidades do sistema.
• Utilizada principalmente em etapas mais adiantadas do
desenvolvimento do sistema, pois pode ajudar mais no
refinamento dos requisitos do usuário.
11
Prototipação Descartável
• O protótipo será descartado após cumprir seu objetivo.
• O protótipo é desenvolvido com ferramentas específicas e
mais rápidas para a construção de protótipos.
12
Prototipação Evolutiva
• Protótipo sofrerá evolução até se tornar o produto final.
• O protótipo deve ser criado com a própria ferramenta de
desenvolvimento de software.
13
Prototipação Evolutiva
14
Ferramentas de Prototipação
15
Ferramentas de Prototipação
16
Prototipação – utilizando aplicativos - tutoriais
●
Curso de Figma app Design - Como
criar um protótipo navegável
●
Tutorial Pencil Project #1 – – https://youtu.be/s9r_fLXbWn4
Introdução ao software
●
Primeiros passos no Figma - Tutorial
– https://youtu.be/49YSNSN0vzE básico para criação de conteúdo
– https://youtu.be/Y1uJT3zk7Rk
Prototipação – utilizando aplicativos - tutoriais
●
Prototipação Tutorial Justinmind
●
Introdução ao software -
– https://youtu.be/s9r_fLXbWn4
Apresentação Justinmind
●
Video – protótipos no Canva
– https://youtu.be/5f6x9SoZNQQ – https://www.youtube.com/watch?v=Bp
FFx3NvP9I
Dúvidas?
• Recapitulando...
19
Referências
Bibliografia Básica:
• PRESSMAN, Roger S. Engenharia de Software. São Paulo, Sp:
Makron Books, 1995-2011. 1056 P. Isbn 85-346-1237-9.
• PRESSMAN, Roger S. Engenharia de Software: Uma
Abordagem Profissional. 7. Ed. Porto Alegre, Rs: Amgh Ed.,
2011. 780 P. Isbn 978-85-63308-33-7.
• SOMMERVILLE, Ian. Engenharia de Software. 9. Ed. São Paulo,
Sp: Pearson, 2011. Xiii, 529 P. Isbn 9788579361081.
20
Referências
Bibliografia Complementar:
• ENGHOLM JÚNIOR, Hélio. Engenharia de Software na Prática. São Paulo,
Sp: Novatec, 2011. 439 P. Isbn 978-85-7522-217-1.
• LARMAN, Craig. Utilizando Uml e Padrões: Uma Introdução a Análise e
ao Projeto Orientados a Objetos e ao Desenvolvimento Iterativo. 3.
Ed. Porto Alegre, Rs: Bookman, 2007-2008. 695 P. Isbn 978-85-60031-52-8.
• WAZLAWICK, Raul Sidnei. Análise e Projeto de Sistemas de Informação
Orientados a Objetos. 2. Ed. Rev. e Atual. Rio de Janeiro, Rj: Elsevier, 2011.
330 P. (Série Sociedade Brasileira de Computação). Isbn 978-85-352-3916-4.
21
IHC Interação Humano Computador
Engenharia Cognitiva
Teorias em IHC
●
Teorias em IHC são fundamentais para:
– Fornecer explicações para os fenômenos de interação ocorridos
entre o usuário e o sistema.
– Subsidiar resultados práticos para o design da interface de
usuário.
●
Principais Teorias em IHC:
– Engenharia Cognitiva (Norman, 1986).
– Engenharia Semiótica (de Souza, 1993).
Teorias baseadas na Ciência Cognitiva
●
Na década de 80 as fundamentações
teóricas eram baseadas principalmente na
ciência cognitiva e no objetivo de entender o
sistema humano de processamento de
informações.
●
Abordagens Cognitivas: focam na
compreensão das capacidades e limitações
da mente dos usuários.
●
Estas teorias envolvem aspectos:
– Psicológicos: usuários têm objetivos e intenções
(nível psicológico)
– Físicos: usuários devem realizá-los através da
atuação sobre controles oferecidos pela interface
(nível físico).
Engenharia Cognitiva
●
Proposta por Donald A. Norman (1986)
●
Definição: é uma ciência cognitiva, que
busca aplicar o que se sabe deste tema
no design e construção de artefatos
computacionais.
●
Objetivos:
– Entender as questões envolvidas no uso de
computadores;
– Mostrar como tomar decisões de design mais
acertadas;
– Mostrar os custos e benefícios quando se
privilegia um aspecto em detrimento a outro.
O que é Cognição?
●
É o que acontece em nossos
cérebros quando fazemos nossas
atividades diárias. Envolve:
– Atenção;
– Percepção e reconhecimento;
– Memória;
– Aprendizado;
– Leitura, fala e audição;
– Resolução de problemas,
planejamento, raciocínio, tomada
de decisão.
Fonte: Prof. Emilio Cesar Parmegiani
Meta da Engenharia Cognitiva
Psi = psicológico
Teoria da Ação
Teoria da Ação
Teoria da Ação
Teoria da Ação
Teoria da Ação
Distância e Ação
●
Segundo o modelo de IHC da Engenharia
Cognitiva, a travessia dos golfos sugere que há
2 distâncias a serem percorridas entre as
etapas mentais e físicas:
– Distância Semântica
– Distância Articulatória
Distância Semântica
●
É a distância entre o que o usuário gostaria de dizer na
linguagem de interface e o significado disponível pelos
elementos da linguagem:
– É possível dizer o que se quer dizer nesta linguagem?
– É possível dizer o que se que deseja de forma concisa?
Distância Semântica
●
A Distância Semântica avalia a separação entre as metas/tarefas do
usuário e a funcionalidade do sistema a elas associada, isto é, se existe
um comando no modelo de interação cujo significado (resultado ou
efeito) seja aquele pretendido pelo usuário.
– Distância pequena: significa que existe um comando diretamente (ou
quase que) associado à meta;
– Distância grande: indica que o usuário precisa quebrar metas em
submetas e realizar um planejamento de tarefas.
Distância Semântica
Exemplo de Distância Semântica
Travessia do Golfo de Execução:
1) Formular a intenção: quero trocar a cor do ●
Exemplo: quero trocar a cor do
título para verde.
2) Plano de ação: título deste slide no Libre Office
1) Selecionar o título;
para verde.
2) Selecionar a cor verde;
3) Confirmar;
3) Execução:
1) Selecionar com o mouse ou com o teclado o
título do slide;
2) No painel de propriedades do caractere
clicar no seletor de cor;
3) Selecionar a cor verde.
Exemplo de Distância Semântica
3) Avaliação:
1) Consegui fazer o que eu queria.
Distância Articulatória
●
A Distância Articulatória avalia o relacionamento entre o
significado (resultado ou efeito) de um comando e a forma da
sequência de ações (o comando) tal como se disponibiliza para
o usuário.
– É a distância entre o significado e a forma dos elementos
da linguagem de interface.
– Quais os obstáculos para expressar nesta linguagem de
interface os significados daquilo que ela pode processar?
Distância Articulatória
Resumo das Distâncias
Engenharia Cognitiva - “resumo”
●
A Engenharia Cognitiva conceitua uma interface pelos seus
“dois lados”: o do sistema e o do ser humano.
●
Estágios de execução e percepção (humanos) mediam entre
representações físicas (do sistema) e psicológicas (do ser
humano).
●
Mecanismos de entrada/saída (do sistema) mediam entre
representações psicológicas e físicas.
Exemplo: Interação com um sistema de agenda → quero
agendar uma reunião na próxima segunda feira.
Exemplo: Golfo da execução → imprimir uma carta
●
Interação humano-computador. Simone Diniz Junqueira Barbosa e Bruno Santana da Silva. Rio
de Janeiro: Elsevier, 2010.
●
Design e Avaliação de Interfaces Humano-Computador. Heloísa Vieira da Rocha e Maria Cecília
Calani Baranauskas, Instituto de Computação Universidade Estadual de Campinas, 2003. E-book.
●
Design de interação: além da interação humano-computador. Yvonne Roggers, Helen Sharp e Jenny
Preece. 3ª ed. Porto Alegre: Bookman, 2013.
●
Slides da aula 05 - Projeto de Interface Com Usuário – prof. Emílio César Parmegiani.
●
Sobre affordances blog disponível em: https://uxdesign.blog.br/affordances-df63a212d413 acesso 23/11/2020,
Curiosidades – quem é Donald Norman? *
Donald A. Norman (25 de dezembro de 1935) é
professor emérito de ciência cognitiva na Universidade
da Califórnia em San Diego e Professor de Ciência da
Computação na Universidade Northwestern, mas seus
trabalhos de hoje são na maioria na engenharia de
usabilidade. Também leciona na Universidade de
Stanford e é um membro do corpo editorial da
Enciclopédia Britannica.
Os primeiros livros de Norman lidam na sua maioria
com usabilidade ou com psicologia cognitiva, mas
Things That Make Us Smart também faz algumas
observações de natureza crítica em relação à nossa
sociedade.
Ele ama produtos que são gostosos de usar, uma
característica que ele atribui a juntar emoção e design,
ou coração e mente. Ele explicou isto em detalhes em
seu livro Emotional Design.
* Fonte: https://pt.wikipedia.org/wiki/Donald_Norman
Quem é Donald Norman?
●
Permitem ao usuário interagir com a aplicação
●
Disponíveis em bibliotecas
●
Podem ser agrupados
●
Precisam ser associados às funcionalidades e
aos objetos da aplicação
Componentes Visuais Interativos
Widgets – alguns exemplos
●
Windows (janelas).
●
Ícones.
●
Menus pull-down (suspensos), pop-up.
●
Pointers (cursores).
●
Botões.
●
Sliders (controles deslizantes).
●
Caixas de texto.
●
Quadros de: mensagens, diálogo, edição.
●
Barras de ferramentas (toolbars).
●
Paletas de cores, etc.
Janelas
Janelas primárias
– Janelas de contextualização, com
menus, barras de ferramentas e de
status.
– Nelas são representados os
objetos principais da aplicação.
– Deve-se limitar o número de
janelas simultâneas.
– Deve-se manter uma aparência
consistente entre as diversas
janelas.
Janelas
Janelas secundárias
– Exibição (output) de
mensagens (quadros
de mensagens).
– Inserção (input) de
informações adicionais
(quadros de diálogo,
formulários)
Menus
●
Menus padronizados (Arquivo,
Editar, Exibir, Inserir, Formatar,
Ferramentas, Janelas, Ajuda).
– Tipos de itens de menu:
●
Acionamento de comando.
– Comando imediato (salvar).
– Comando que precisa de mais input - salvar
como…
●
Mudança de estado.
●
Opções independentes – tais como estilos
de fonte: negrito, itálico, regular.
●
Opções interdependentes (Alinhamento:
esquerda, direita, centro, justificado.
Tipos de menus
●
Menus suspenso (pull-down) e pop-
up.
●
Seleção simples: botão de opção
(radio buttons).
●
Seleção múltipla: caixas de seleção
(checkboxes).
●
Barras de ferramentas e paletas
(palettes).
Barras de ferramentas (toolbars)
●
São utilizadas para incluir elementos de
uso frequente: deve-se evitar incluir
controles que não estão disponíveis de
outra forma.
●
Fornecer dicas de contexto (tooltips).
●
Deve-se fornecer ao usuário o controle
de visibilidade (ocultar/exibir) caso haja
múltiplas barras de ferramentas.
●
Orienta-se analisar a adequação de
representações gráficas (ícones e
botões) dos comandos disponibilizados.
Barra de status
●
Exibe mensagens diretas (constantes) sobre:
– Estado atual da aplicação;
– Item de menu selecionado;
– Estado do teclado;
– Idioma;
– Zoom, etc.
Botões de Comando
●
Utilizar de botões de comando para
disparar ações ou para indicar e
alterar estados.
●
Deve-se utilizar descrições breves,
consistentes e claramente distintas
(ex: “Fechar”, “Cancelar”, “Voltar”).
●
Orienta-se seguir as convenções
do ambiente operacional.
●
Manter tamanho e posicionamento
consistentes.
Botões de Comando
●
Acionamento imediato e contextualizado
– Em barras de ferramentas:
●
executa ação associada.
– Em janela secundária:
●
Inicia uma transação dentro da janela ou
●
aplica uma transação e fecha a janela.
Botões de Opção - diretrizes
●
Se o número de opções for muito grande, deve-
se utilizar lista ou uma tabela.
●
Se o texto de um item for grande, ele deve ser
alinhado pelo topo.
●
Deve-se disponibilizar teclas de atalho.
Botões de Opção
●
Botões de opção (radio buttons)
– Utilizado para opções relacionadas e
mutuamente exclusivas.
– Apenas uma opção pode estar
selecionada.
– Pode apresentar um valor padrão (default).
●
Botões de seleção (checkboxes)
– Opções independentes, que podem
estar ligadas ou desligadas.
– Os estados ligado/desligado devem
ser opostos.
Listas
●
São utilizadas para grande número de opções;
●
As opções devem ser ordenadas por um determinado critério;
●
Devem ser exibidas entre 3 e 7 opções;
●
Evitar barras de rolamento horizontais;
●
A lista deve possuir um rótulo (label) para identificação;
●
Teclas de atalho para acesso rápido devem ser disponibilizadas;
●
Operações de arrastar e soltar (drag-and-drop) são desejáveis.
Diretrizes:
– Forneça um rótulo (label) para identificar o elemento.
– Forneça teclas de atalho para acesso rápido.
– Valide a entrada de dados imediatamente, se possível.
Caixas de mensagem
Objetivo: para apresentar mensagens
explicativas, de erro, entre outras.
●
Deve-se:
– Sinalizar o tipo de mensagem: (alerta (!),
pergunta (?), erro (X).
– Utilizar vocabulário simples e claro.
– Relacionar a mensagem à tarefa do usuário.
●
Em mensagens de erro, exiba:
– descrição do erro;
– causa do erro;
– possível solução.
Quadros de Diálogo - painéis
●
Objetivo: entrada de dados
Termos utilizados
– Título significativo, estilo consistent
– Terminologia, fontes, capitalização e justificação consistentes.
●
Organização
– Sequência topo-esquerda a baixo-direita;
– Agrupamento e ênfase;
– Layouts consistentes (proporções, margens, grids, linhas, etc.)
– Indicação de itens habilitados e desabilitados;
– Valores default (padrão);
●
Botões padronizados (OK, Cancela)
●
Prevenção de erros
Quadros de Diálogo e Janelas: erros comuns
●
Desconsiderar o padrão look and feel (aparência) do ambiente de trabalho;
●
Proporções incomuns;
●
Estrutura excessiva;
●
Muitos quadros aninhados, um quadro para cada controle, muitas linhas
divisórias;
●
Pouco ou muito contraste entre áreas e elementos;
●
Densidade espacial: informação demais ou de menos;
●
Layouts arbitrários: controles de tamanhos diferentes, alinhamento e
posicionamento arbitrários, agrupamento inexistente ou inadequado.
Formulários – Orientações Gerais
●
Siga orientações gerais para quadros de
diálogo.
●
Utilize widgets adequados para o tipo de dado.
●
Forneça movimento conveniente do cursor.
●
Marque claramente os campos opcionais e
obrigatórios.
●
Sinalize o término do preenchimento (ex.:
habilitando botão de confirmação).
●
Instruções e mensagens
●
Instruções claras e breves (evite pronomes e
referências).
●
Mensagens explicativas (barra de status ou
quadros de Mensagem).
Formulários – Orientações Gerais
Instruções e mensagens - utilize:
1) Instruções claras e breves (evite pronomes e referências);
2) Mensagens explicativas (barra de status ou quadros de mensagem).
Tratamento de erros:
●
Faça uso de caixas de texto;
●
Correção de erros para caracteres individuais ou campos inteiros;
●
Prevenção de erros;
●
Mensagens de erro para valores inaceitáveis.
Formulários — erros Comuns
●
Uso inadequado do formato de formulário x planilha;
●
Apresentação de informações internas ao sistema e
irrelevantes para o usuário;
●
Instruções excessivas, com texto redundante;
●
Instruções para o preenchimento dos campos em locais
pouco visíveis (ex. barra de status);
●
Excesso de quadros de mensagens que interferem na
tarefa do usuário; Não indicação de campos obrigatórios.
Mensagens de erro
●
Sempre que possível, o sistema não deve permitir que ocorram erros.
●
Causas de erros:
– Falta de conhecimento.
– Noções incorretas.
– Lapsos.
Mensagens de erro – como redigir
Apresentar ao usuário: O QUE houve, POR QUE aconteceu, COMO
contornar ou resolver
– Especificidade: DADO INVÁLIDO vs. Digite um valor numérico de 1 a 10.
– Formato físico apropriado: CAIXA ALTA PARA ERROS DE POUCA
IMPORTÂNCIA.
– Mensagens eficazes: ERRO Xbc345! vs. Data inválida: o formato correto é
dd/mm/aaaa.
– Orientação construtiva (indicação de como resolver o problema): COMANDO
INVÁLIDO vs. Verifique a sintaxe do comando.
Sistemas de ajuda
Segundo a Engenharia
Semiótica
Help é uma comunicação
designer-usuário privilegiada.
Objetivo: permitir ao usuário
expressar dúvidas específicas
em um contexto de interação.
Principais problemas em Sistemas de Ajuda*
●
Não fornecem informações
específicas desejadas pelos
usuários;
●
Não estão disponíveis quando
necessário;
●
Informação não está correta
ou está Incompleta;
●
Dificuldade de alternar entre
sistema de ajuda e aplicação.
* Professora: Raquel Oliveira Prates 2006
Referências
●
Aulas do professor Geraldo Ranthum. UTFPR, 2017.
●
Interação humano-computador. Simone Diniz Junqueira
Barbosa e Bruno Santana da Silva. Rio de Janeiro: Elsevier, 2010.
●
Design e Avaliação de Interfaces Humano-Computador. Heloísa
Vieira da Rocha e Maria Cecília Calani Baranauskas, Instituto de
Computação Universidade Estadual de Campinas, 2003. E-book.
●
E–usabilidade. Simone Bacelar Leal Ferreira e Ricardo Rodrigues
Nunes. São Paulo, LTC, 2008.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
Label / button
Mensagem na tela
●
File → New → Project → Application.
●
Ajustar o tamanho do formulário.
●
Inserir um Tlabel da aba Standard no formulário.
●
Inserir um Tbutton da aba Standard no formulário.
Ajustando os componentes
●
Tbutton – alterar Caption para “Mudar Nome”.
●
Tlabel – alterar Caption para TADS – IHC - IFPR.
– AutoSize = false;
– Opcionais
●
Tamanho e cor da fonte (do Tlabel).
●
Cor do Tlabel.
●
Cor do formulário.
Ajustando os componentes
●
Criar o código para para alterar o texto da
TLabel.
– Em Tbutton – digitar o código:
Label1.Caption := ‘Parabens seu primeiro programa
funciona!’;
Form / programa em execução
Observação importante
●
Ao salvar o seu programa nunca o nome do projeto
pode ser igual ao nome da Unit (Unidade de
programação) – mesmo sabendo que a extensão
deles será diferente.
– Você não conseguirá mais compilar o programa se
você cometer essa “particularidade”.
Referências
●
Lazarus IDE - https://www.lazarus-ide.org
●
Documentação Lazarus IDE:
https://wiki.freepascal.org/Lazarus_Documentation
●
Programação Visual para Linux - Kylix 1.0 – William
Braga, Book Express, Rio de Janeiro.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
Label / button
Primeiro programa
https://wiki.freepascal.org/Lazarus_Documentation
●
Programação Visual para Linux - Kylix 1.0 – William
Braga, Book Express, Rio de Janeiro.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
Label / button
Relógio digital
●
File → New → Project → Application.
●
Ajuste o tamanho do formulário.
●
Insera um label da aba Standard no formulário.
●
Insera um timer da aba System no formulário.
Ajustando os componentes
●
Ajuste o nome do form: “Hora certa”.
●
Escolha a cor do form
●
Altere o Timer Interval para 1000
●
Escolha a cor do Label
●
Altere a fonte: tamanho e cor (do label)
●
Escreva o código abaixo para o timer:
– Label1.Caption := TimeToStr(time);
Form / programa em execução
Referências
●
Lazarus IDE - https://www.lazarus-ide.org
●
Documentação Lazarus IDE:
https://wiki.freepascal.org/Lazarus_Documentation
●
Programação Visual para Linux - Kylix 1.0 – William
Braga, Book Express, Rio de Janeiro.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
Image1.Visible:=true;
Label1.Visible:=true;
Image2.Visible:=false;
Label2.Visible:=false;
Image3.Visible:=false;
Label3.Visible:=false;
Criando o código para o 2º botão
Botão 02
Begin
Image1.Visible:=false;
Label1.Visible:=false;
Image2.Visible:=true;
Label2.Visible:=true;
Image3.Visible:=false;
Label3.Visible:=false;
end;
Criando o código para o 3º botão
Botão 03
Begin
Image1.Visible:=false;
Label1.Visible:=false;
Image2.Visible:=false;
Label2.Visible:=false;
Image3.Visible:=true;
Label3.Visible:=true;
End;
Iniciar sem mensagem e sem imagem
Image1.Visible:=false;
Efetuar um duplo clique no
Label1.Visible:=false;
formulário e digitar o código
Image2.Visible:=false;
ao lado entre o begin e end
Label2.Visible:=false;
da procedure
“TForm1.FormCreate(Sender: Image3.Visible:=false;
TObject); ” Label3.Visible:=false;
IHC – criando um botão para encerrar o programa
●
Insira um Tbutton da
guia Standard.
●
Altere a propriedade
Caption dele para &Sair
●
Insira apenas o código:
close; na procedure
ButtonClick deste botão.
Referências
●
Lazarus IDE - https://www.lazarus-ide.org
●
Documentação Lazarus IDE:
https://wiki.freepascal.org/Lazarus_Documentation
●
Programação Visual para Linux - Kylix 1.0 – William
Braga, Book Express, Rio de Janeiro.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
●
No formulário, para inicialmente
ocultar a figura e mensagem.
Digitar os comandos:
– Image1.Visible:= false;
– Label4.visible:= false;
Código para o botão jogar
Begin
Image1.Visible:= false;
label4.visible:= false;
label1.caption := inttostr(random(10));
label2.caption := inttostr(random(10));
label3.caption := inttostr(random(10));
if ( Label1.Caption = '5') or (Label2.Caption = '5') or (Label3.Caption = '5')
then begin
Image1.Visible:=true;
Label4.Visible:=true;
Beep
End;
End;
end.
Sistema funcionando com número 5 sorteado
Referências
●
Lazarus IDE - https://www.lazarus-ide.org
●
Documentação Lazarus IDE:
https://wiki.freepascal.org/Lazarus_Documentation
●
Programação Visual para Linux - Kylix 1.0 – William
Braga, Book Express, Rio de Janeiro.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
●
Para vencer no jogo um dos três
números sorteados deve ser igual ao
informado pelo utilizador.
Alterando o código do botão jogar
procedure TForm1.Button1Click(Sender: TObject);
var
vsorteio: string; Apenas acrescentar as linhas destacadas em
begin amarelo nos locais corretos do código. Na
Image1.Visible:= false; condicional if alterar o 5 para vsorteio.
Label4.visible:= false;
vsorteio := InputBox('Escolher número para sorteio', 'Digite um número de 0 a 10',' ');
label1.caption := inttostr(random(10));
label2.caption := inttostr(random(10));
label3.caption := inttostr(random(10));
if ( Label1.Caption = vsorteio) or (Label2.Caption = vsorteio) or (Label3.Caption = vsorteio
then begin
Image1.Visible:=true;
StaticText1.Visible:=true;
beep
Sistema funcionando
Aplicando diretrizes de IHC
E se o usuário não ganhou…
Fornecer feedback consistente para o usuário: vamos lembrar o
número escolhido e exibir uma mensagem informando que ele
não acertou.
Alterar o código do botão jogar conforme as linhas destacadas
no código ao lado após o primeiro end (logo após beep):
Image1.Visible:=true;
Label4.visible:=true;
beep
end; <- tem de apagar esse um ponto e vírgula e acrescentar as linhas abaixo
else
begin
ShowMessage('Você escolheu ' + vsorteio + ' mas infelizmente você não acertou!');
end;
Referências
●
Lazarus IDE - https://www.lazarus-ide.org
●
Documentação Lazarus IDE:
https://wiki.freepascal.org/Lazarus_Documentation
●
Programação Visual para Linux - Kylix 1.0 – William
Braga, Book Express, Rio de Janeiro.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
Calculadora ?
Programa de cálculo simples
●
File → New → Project →
Application.
●
Ajustar o tamanho do
formulário.
●
Inserir dois componentes
Labels da aba Standard.
●
Inserir dois componentes
Editbox da aba Standard.
Programa de cálculo simples
●
Inserir um componente
Groupbox da aba Standard.
●
Inserir quatro Radiobutton
dentro do Groupbox.
●
Fora do Groupbox crie mais
um label e dois buttons da
aba Standard.
Ajustando as propriedades dos componentes
Calculadora
Form1 Caption
básica
Primeiro
Label1 Caption
valor
Edit1 Text Vazio (apagar)
Segundo
Label2 Caption
valor
Edit2 Text Vazio (apagar)
Groupbox Caption Operador
Ajustando as propriedades dos componentes
https://wiki.freepascal.org/Lazarus_Documentation
●
Programação Visual para Linux - Kylix 1.0 – William
Braga, Book Express, Rio de Janeiro.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br
IHC Interação Humano Computador
Cronômetro
Programa para criar um cronômetro
●
Feche o projeto anterior.
●
Crie um novo projeto.
●
Coloque um componente timer.
– Altere sua propriedade Intervalo
para 1.
– Altere sua propriedade enabled
para false.
– Crie uma variável global:
var
vHoraComeca: TDateTime;
Inserindo os componentes
●
Altere a propriedade Caption do form1
para Cronômetro.
●
Insira três componentes button, e altere
suas propriedades Caption como segue:
1) &Iniciar
2) &Parar
3) Sai&r
●
Coloque um componente Edit e altere
suas propriedades:
– Text – para vazio (apague).
– Font – tamanho 72.
Código para o primeiro botão - &Iniciar
Horacomeca := time;
Button2.Enabled:=true;
Button1.Enabled:=false;
Timer1.Enabled:=true;
Código para o primeiro botão - &Parar / Sai&r
Botão &Iniciar
Button1.Enabled:=true; Botão sai&r
Button2.Enabled:=false; Application.Terminate;
Timer1.Enabled:=false;
Código para o componente timer
Edit1.text:=FormatDateTime('ss:zzz',time - vHoraComeca);
Execute o seu programa
Referências
●
Lazarus IDE - https://www.lazarus-ide.org
●
Documentação Lazarus IDE:
https://wiki.freepascal.org/Lazarus_Documentation
●
Programação Visual para Linux - Kylix 1.0 –
William Braga, Book Express, Rio de Janeiro.
Dúvidas?
Contato: celso.canteri@ifpr.edu.br