Interação Homem- Máquina (IHM) Prof. Paulo César Fernandes de Oliveira, BSc, MPhil, PhD (Fonte: Pressman, R. Software Engineering: A Practitioner s Approach. McGraw-Hill, 2005) 08/12/11 PCF de Oliveira (2011) 1
IHM Projeto de Interface de Usuário ² Introdução ² Regras de ouro ² Conciliando 4 modelos diferentes ² Análise da Interface do usuário ² Projeto da Interface do usuário ² Avaliação da Interface do usuário 08/12/11 PCF de Oliveira (2011) 2
² Fácil de usar? Introdução ² Fácil de aprender? ² Fácil de entender? 08/12/11 PCF de Oliveira (2011) 3
Introdução ² Erros Típicos de Projeto ² Falta de consistência ² Muita memorização ² Falta de ajuda/help ² Sem sensibilidade ao contexto ² Resposta ruim ² Não amigável 08/12/11 PCF de Oliveira (2011) 4
Introdução ² Interfaces gráficas do usuário (GUIs) ajudaram a eliminar a maioria dos problemas de interfaces ² Algumas são difíceis de aprender, de usar, confusas, não intuitivas e frustantes 08/12/11 PCF de Oliveira (2011) 5
Introdução ² Análise e projeto da interface do usuário tem a haver com o estudo das pessoas e como elas se relacionam com a tecnologia ² Para criar tecnologia que se adapte ao ser humano, é necessário estudá-lo. Mas hoje temos uma tendência de estudar apenas a tecnologia. Como consequência, exige-se que as pessoas se adaptem à tecnologia. É chegada a hora de inverter a tendência, a hora de fazer com que a tecnologia se adapte às pessoas (Norman, 1988) 08/12/11 PCF de Oliveira (2011) 6
Regras de Ouro ² Deixar o usuário no comando ² Reduzir a carga de memória do usuário ² Tornar a interface consistente 08/12/11 PCF de Oliveira (2011) 7
Deixar o usuário no comando ² Definir modos de interação para não forçar o usuário a realizar ações desnecessárias ou indesejadas ² Proporcionar interação flexível 08/12/11 PCF de Oliveira (2011) 8
Deixar o usuário no comando ² Possibilitar que a interação do usuário possa ser interrompida e desfeita ² Simplificar a interação à medida que os níveis de competência avançam ² Permitir que a interação possa ser personalizada 08/12/11 PCF de Oliveira (2011) 9
Deixar o usuário no comando ² Ocultar detalhes técnicos de funcionamento interno do usuário casual ² Projetar a interação direta com objetos que aparecem na tela 08/12/11 PCF de Oliveira (2011) 10
Reduzir a carga de memória do usuário ² Reduzir a demanda de memória recente ² Estabelecer defaults significativos ² Definir atalhos intuitivos 08/12/11 PCF de Oliveira (2011) 11
Reduzir a carga de memória do usuário ² Layout visual da interface deve se basear na metáfora do mundo real ² Revelar informações de maneira progressiva 08/12/11 PCF de Oliveira (2011) 12
Tornar a interface consistente ² Permitir o usuário inserir a tarefa atual em um contexto significativo ² Manter consistência ao longo de uma família de operações ² Modelos interativos anteriores criaram expectativas nos usuários, não fazer alterações ² Somente se houver uma razão forte para isto 08/12/11 PCF de Oliveira (2011) 13
Análise e Projeto de Interfaces Modelo de Análise e Projeto de Interfaces 08/12/11 PCF de Oliveira (2011) 14
Modelo de Análise e Projeto de Interfaces ² Papel do projetista da interface ² Conciliar estes diferentes modelos ² Produzir uma representação consistente da interface Modelo de Análise e Projeto de Interfaces 08/12/11 PCF de Oliveira (2011) 15
Modelo de Análise e Projeto de Interfaces ² Modelo de usuário ² estabelecido por um engenheiro humano ou engenheiro de software ² perfil dos usuários finais do sistema ² Modelo de projeto ² criado por um engenheiro de software ² realização do projeto do modelo de usuário 08/12/11 PCF de Oliveira (2011) 16
Modelo de Análise e Projeto de Interfaces ² Modelo de implementação ² criado pelos implementadores do sistema ² aparência externa do sistema (look and feel) mais as informações de apoio/suporte que descrevem a sintaxe e semântica da interface ² Modelo mental ² desenvolvido pelo usuário quando interage com a aplicação ² imagem mental do usuário de como é a interface (percepção do sistema) 08/12/11 PCF de Oliveira (2011) 17
Análise e Projeto de Interfaces ² Processo de Análise e Projeto de Interfaces 08/12/11 PCF de Oliveira (2011) 18
Análise de Interfaces ² Foca-se em compreender (ou analisar) ² Pessoas (usuários finais) que vão interagir com o sistema através da interface ² Tarefas que os usuários devem executar para fazer seus trabalhos ² Conteúdo que é apresentado como parte da interface ² Ambiente onde estas tarefas serão executadas 08/12/11 PCF de Oliveira (2011) 19
Análise de Interfaces ² Análise das Pessoas ² Obter o modelo mental e de projeto do usuário para entender ² Usuários ² Como eles usarão o sistema ² Informação pode ser obtida através ² Entrevistas com os usuários finais ² Pessoal de vendas que interage com clientes e usuários finais regularmente ² Análise de mercado para entender como diferentes segmentos da população podem usar o software ² Pessoal de suporte sobre o que funciona e o que não, o que usuários gostam/desgostam, quais características geram perguntas e que são fáceis de usar 08/12/11 PCF de Oliveira (2011) 20
Análise de Interfaces ² Perguntas para Análise das Pessoas ² Usuários são profissionais treinados, técnicos, de escritório, ou de fábrica? ² Qual o nível formal de educação que o usuário tem? ² Usuários são capazes de aprender por meio de material escrito ou desejam treinamento em sala de aula? ² Usuários datilografam bem ou têm aversão ao teclado? ² Qual a faixa de idade dos usuários? ² Usuários terão representação predominante (masculino / feminino)? ² Como usuários serão remunerados pelo trabalho que executam? ² Usuários trabalham em horários normais ou até terminá-lo? ² Software será parte integral do trabalho dos usuários ou será usado ocasionalmente? ² Qual o principal idioma falado entre os usuários? ² Quais as consequências se um usuário erra usando o sistema? ² Usuários são especialistas no assunto que é abordado pelo sistema? ² Usuários querem saber sobre a tecnologia que está por trás da interface? 08/12/11 PCF de Oliveira (2011) 21
Análise de Interfaces ² Análise das Tarefas ² Responder ² Qual o trabalho o usuário irá executar em determinadas circunstâncias? ² Quais tarefas e subtarefas serão executadas enquanto o usuário faz o trabalho? ² Quais objetos de domínio específico do problema o usuário manipular enquanto o trabalho é realizado? ² Qual é a sequência de tarefas (i.e. Workflow) ² Qual a hierarquia das tarefas? ² Casos de uso definem a interação básica ² Elaboração de tarefa refina as tarefas interativas ² Elaboração de objetos identifica os objetos da interface (classes) ² Análise do fluxo de trabalho (workflow) define como um processo é completado quando várias pessoas (papéis) estão envolvidas 08/12/11 PCF de Oliveira (2011) 22
Análise de Interfaces ² Análise do Conteúdo ² Conteúdo mostrado pode variar de relatórios de texto, visualização gráfica e até informação multimídia ² Conteúdo da tela ² Gerado por componentes de outras partes da aplicação ² Adquirido de dados armazenados em BD que estão acessíveis pela aplicação ² Transmitidos de sistemas externos à aplicação em questão ² Formato e estética do conteúdo (como é exibido pela interface) precisa ser considerado 08/12/11 PCF de Oliveira (2011) 23
Análise de Interfaces ² Perguntas para Análise do Conteúdo ² Tipos de dados diferentes estão alocados em localizações geográficas consistentes na tela (e.g. fotos apareceriam no canto direito da tela? ² Usuário pode personalizar a localização do conteúdo na tela? ² Todo o conteúdo possui identificação apropriada na tela? ² Se um relatório extenso precisa ser apresentado na tela como ele deve ser particionado para fácil compreensão? ² Mecanismos estarão disponíveis para ir diretamente a informações resumidas em coleções de dados volumosas? ² Saída gráfica estará adequada para caber dentro dos limites físicos do dispositivo de tela que está sendo usado? ² Como as cores serão usadas para melhorar a compreensão? ² Como mensagens de erro e advertência serão apresentadas ao usuário? 08/12/11 PCF de Oliveira (2011) 24
Análise de Interfaces ² Análise do Ambiente ² Software precisa ser projetado para adequar-se ao ambiente de trabalho ² Fatores a considerar ² Tipo de iluminação ² Tamanho e altura da tela ² Tamanho e altura do teclado (e fácil de usar) ² Tipo do mouse (e fácil de usar) ² Ruído do ambiente ² Limitações de espaço para o computador e/ou usuário ² Condições meteorológicas ou atmosféricas ² Restrições de temperatura e pressão ² Restrições de tempo (quando, quão rápido e por quanto tempo) 08/12/11 PCF de Oliveira (2011) 25
Etapas no Projeto de Interfaces ² Considerações ² Projeto de Interfaces é um processo interativo ² Cada interação elabora e refina a informação desenvolvida na etapa anterior ² Etapas ² Usar informações desenvolvidas durante a análise de interfaces definir objetos e ações (operações) de interface ² Definir eventos (ações de usuário) que provocarão a mudança de estado de uma interface modelar esse comportamento ² Representar cada estado da interface como realmente aparecerá para o usuário final ² Indicar como usuário interpreta o estado do sistema com base em informações fornecidas através da interface 08/12/11 PCF de Oliveira (2011) 26
Etapas no Projeto de Interfaces ² Considerações ² Projetista deve ² Sempre seguir as regras de ouro (3) ² Modelar como a interface será implementada ² Considerar o ambiente a ser usado ² Tecnologia de exibição ² Sistema operacional ² Ferramentas de desenvolvimento 08/12/11 PCF de Oliveira (2011) 27
Etapas no Projeto de Interfaces ² Questões de projeto ² Tempo de resposta ² Recursos de ajuda ² Quando está disponível? ² Como é acessada? ² Como é representada ao usuário? ² Como é estruturada? ² O que acontece quando sair dela? ² Tratamento de erros ² Significativos ao usuário ² Descritivos sobre o problema ² Atribuição de nomes a comandos e menus ² Consistente ² Fácil de aprender ² Acessibilidade ² Internacionalização 08/12/11 PCF de Oliveira (2011) 28
Avaliação de Projeto de Interfaces ² Ciclo de Avaliação preliminary design build prototype #1 interface build prototype # n interface design modifications are made user evaluate's interface evaluation is studied by designer Interface design is complete 08/12/11 PCF de Oliveira (2011) 29
Avaliação de Projeto de Interfaces ² Critérios de Avaliação ² Volume de aprendizado exigido dos usuários ² Duração e complexidade da especificação escrita do sistema ² Tempo de interação e a eficiência geral do sistema ² Número de tarefas de usuário especificado ² Número médio de ações por tarefa ² Carga de memória necessária por parte dos usuários ² Número de ações, tarefas e estados do sistema ² Complexidade da interface e grau de aceitação por parte dos usuários ² Estilo da interface ² Recursos de ajuda ² Tratamento de erros 08/12/11 PCF de Oliveira (2011) 30