Engenharia de Software
Interface HomemComputador
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
Analyse and
understand user
activities
Produce paperbased design
prototype
Design
prototype
Evaluate design
with end-users
Produce
dynamic design
prototype
Executable
prototype
Faculdade 7 de Setembro – Sistemas de Informação
Engenharia de Software – Prof. Ciro Coelho
Evaluate design
with end-users
Implement
final user
interface
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
– 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
– 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
– 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
– Poderoso e flexível
• Desvantagens
– Difícil de aprender
– Gerenciamento deerros deficiente
• Exemplos
– Sistemas operacionais (no Windows,:
IniciarExecutar)
Faculdade 7 de Setembro – Sistemas de Informação
Engenharia de Software – Prof. Ciro Coelho
Linguagem natural
• Vantagens
– 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
Download

Introdução à Engenharia de Requisitos - fa7