Engenharia de Software Interface Homem-Computador Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Interface com o Usuário Os usuários costumam julgar os sistemas pela sua interface, ao invés de julgá-los pela sua funcionalidade Uma interface mal projetada pode fazer um usuário cometer erros catastróficos Um projeto de interface ruim é a razão porque muitos softwares não são nunca usados Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Evolução da Interface com Usuário 50s – Interfaces são painel de controles do hardware usuário são engenheiros 60-70s – Interfaces são programas em linguagens como COBOL, FORTRAN 70-90s – Interfaces são comando num interpretador de comandos (shell) 80s – Interfaces gráficas com aplicativos 90s – Interfaces multimídia e interfaces baseadas na Web (browser-based software) 00s - Interface tornam-se ubíqua – estão em todo lugar e em dispositivos móveis. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Interfaces Gráficas A maioria dos sistemas, hoje em dia, apresenta uma interface gráfica (GUI – Graphic User Interface) Alguns sistemas legados ainda apresentam interface baseada em texto Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Interface Gráfica - Vantagens São fáceis de aprender O usuário pode passar facilmente de uma tarefa para outra e pode interagir com diferentes aplicações A informação permanece visível na sua própria janela quando o usuário muda o foco Permite interação rápida, usando toda a tela Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Projeto Centrado no Usuário Processo de Projeto de Interface Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Princípios do projeto de interface Os projetistas de interface devem levar em conta as necessidades, experiência e capacidade dos usuários Os projetistas devem estar atentos às limitações físicas e mentais dos usuários e reconhecer que pessoas cometem erros Princípios de projeto de interface são aplicáveis, apesar de nem todos os princípios serem aplicáveis a todos os projetos Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Princípios do projeto de interface Familiaridade A interface deveser baseada em termos e conceitos familiares ao usuário. Exemplo: documentos e pastas ao invés de arquivos e diretórios Consistência Comandos, menus, ícones, janelas etc devem obedecer a um formato, a um padrão Surpresa mínima Se um comando funciona de uma certa forma, o usuário deveser capaz de predizer o comportamento de um comando relacionado Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Princípios do projeto de interface Recuperabilidade O sistema deve prover formas de o usuário desfazer erros Guias Ex: help, manual on-line, mensagens de alerta Diversidade de usuários O sistema deve se adequar às necessidades dos diversos tipos de usuário Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Formas de interação Manipulação direta Menus Formulários Linguagem de comando Linguagem natural Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Manipulação direta Vantagens Desvantagens Exemplos Interação rápida e intuitiva Fácil de aprender Desvantagens Pode ser difícil de implementar Precisa de metáforas visuais para tarefas e objetos Exemplos Video games, softwares CAD Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Menus Vantagens Desvantagens Exemplos Evitam erros do usuário Pouca digitação Desvantagens Interação lenta para usuários experientes Pode se tornar complexa se existirem muitas opções Exemplos Sistemas touch-screen Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Formulários Vantagens Desvantagens Exemplos Entrada de dados simples Fácil de aprender Desvantagens Precisa de muito espaço na tela Exemplos Cadastro em sites Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Linguagem de comando Vantagens Desvantagens Exemplos Poderoso e flexível Desvantagens Difícil de aprender Gerenciamento deerros deficiente Exemplos Sistemas operacionais (no Windows,: IniciarExecutar) Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Linguagem natural Vantagens Desvantagens Exemplos Acessível a usuários casuais Fácil de estender Desvantagens Precisa de mais digitação Sistemas de entendimento de linguagens naturais são pouco confiáveis Exemplos Sistemas de busca na web Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Apresentação das informações Informações estáticas e dinâmicas Gráficos, figuras, textos, textos destacados, cores... Dicas para uso de cores: Não use muitas cores Use o esquema de cores para suportar ações Permita que os usuários definam o esquema de cores Projete para monocromático e depois adicione as cores Tenha consistência no uso de cores Evite combinações confusas de cores (ex: cores muito parecidas) Use a mudança de cor para mostrar mudança de status Fique atento à possibilidade de a resolução ser baixa Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Suporte ao usuário Help on-line, mensagens de erro e de alerta, documentação Mensagens devem ser polidas, concisas, consistentes e construtivas Sistemas de ajuda devem prover informações, ajudar o usuário a usar o sistema e indicar o que fazer para solucionar problemas A documentação do sistema deve ser feita considerando as diferentes necessidades e os diferentes tipos de usuário Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho
Usabilidade Qualidade do sistema que avalia utilidade para o usuário facilidade de aprendizado facilidade de uso produtividade do usuário satisfação do usuário flexibilidade na utilização Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho