INF 043 Comunicacão
Homem-Computador
Parte 6
Prof. Roberto Cabral de Mello Borges
Instituto de Informática
UFRGS
2008
1
Ergonomia de
Software
a) Definição
– ciência que estuda conforto, utilização, organização
e documentação do software.
– objetiva facilitar e otimizar o trabalho do usuário
junto ao computador.
– propõe padrões de:
»
»
»
»
»
»
»
»
apresentação de telas
diálogos
ferramentas de trabalho
cardápios (menus)
documentação
técnicas de arquivos
técnicas de otimização
auxílio (help)
2
Vantagens/Desvantagens
• b) Vantagens:
– atração homem-máquina
– programas mais bem documentados
– redução dos custos de manutenção
– software mais eficiente
– software com funções mais poderosas
– facilidade de aprendizado
– redução de perturbações psicológicas do usuário
em relação ao computador.
• c) Desvantagens:
– esforço adicional no desenvolvimento de software.
– técnica bastante desconhecida dos "micreiros".
– técnica relativamente nova, ainda em fase de
maturação. Mas já há muitos antecedentes que
comprovam sua eficácia.
3
Princípios Básicos
1 - Esforço Mínimo do Usuário
2 - Memória Mínima do Usuário
3 - Frustração Mínima
4 - Maximizar o uso de Padrões e Hábitos
5 - Máxima Tolerância para Diferencas Humanas
6 - Máxima Tolerância para Mudanças Ambientais
7 - Notificação Imediata de Problemas
8 - Controle Máximo de tarefas pelo usuário
9 - Apoio Máximo às Tarefas
4
1 - Esforço Mínimo do Usuário
• usuário deve desempenhar somente as funções
absolutamente essenciais, e que não possam ser
desempenhadas pelo sistema.
– tomadas de decisões
– digitação de valores escolhidos (num saque de banco, p. ex.)
– escolha de opções desejadas
• transferir para o software uma função mesmo que ela
possa ser desempenhada pelo usuário.
– calcular um sub-total ou total de parcelas já informadas
• não repetir trabalho já feito:
– um dado só deve ser alimentado uma vez; programa deve ser
re-utilizável, assim como rotinas, consultas , comandos, etc.
– Trabalho não produtivo deve ser eliminado - Ex.: A data deve
ser fornecida pelo sistema; "Recovery" deve ser automático.
– questão para discussão: redigitação sucessiva da senha em
terminais bancários ou na Internet; controle de tempo pode
servir para timeout e para evitar redigitação da senha.
5
Ex. de pagamento de Doc bancário
• DOC:
– Valor do DOC: R$100,00
– à vista 15% de desconto
– Valor à vista: R$85,00
Banco XXXX
Valor do DOC
Desconto
Multa
Juros
Total
R$100,00
R$15,00
Este valore deverá ser
calculado pelo usuário
R$85,00
6
1 - Esforço Mínimo do Usuário
• facilitar acesso a
informações sobre o
sistema:
– documentação (ou "help")
escrita completa, mas
apenas a suficiente e
necessária para a tarefa do
usuário.
– instruções do sistema
devem ser diretas e
específicas, que não
requeiram interpretação
(somar números, decifrar
código, etc.)
Exemplo: Calculadora do
programa do Imposto de Renda:
calcula e transfere resultados
para os campos
7
1 - Esforço Mínimo do Usuário
• eliminar trabalho duplicado:
–Todo trabalho deve poder ser feito pelo
uso do sistema, sem estágios burocráticos
intermediários.
–Não redigitar dados já digitados
anteriormente.
–Evitar a repetição de ciclos para operações
semelhantes.
» Exemplo: No banrisul cada operação que se faz no caixa
eletrônico exige o inicio de uma nova sessão (redigitar
conta, senha, etc)
8
2 - Memória Mínima do Usuário
• O usuário deve ter que memorizar o mínimo possível.
• o aprendizado do sistema deve ser um processo
hierárquico e incremental.
• o usuário só deve ter que aprender o essencial para
sua tarefa.
• aprender uma pequena parte do sistema, deve
recompensar o usuário com a capacidade de fazer
algum trabalho real, ainda que limitado.
• o usuário não deve ter que aprender a terminologia
não relacionada à tarefa - instruções ou comunicações
do sistema devem ser feitas na linguagem natural da
tarefa.
• a terminologia deve ser consistente por todo software
com que o usuário vai interagir.
• os comandos do usuário devem ter sintaxe natural e
simples, e não devem ser complexos e compostos.
9
2 - Memória Mínima do Usuário
10
3 - Frustração Mínima
• evitar demora na execução de tarefas.
• ao usar menus ou técnicas equivalentes, o
sistema deve permitir que o usuário
experiente vá direto à tarefa desejada.
• a organização hieráquica de menus ou
técnicas equivalentes deve ser tal que o
usuário não tenha que executar ou
explicitamente saltar tarefas
desnecessárias.
• orientação ou help deve estar disponível de
forma consistente em todo o sistema.
11
3 - Frustração Mínima
• relembrar ações passadas:
– em caso de interrupção de uma série de passos interrelacionados. o sistema deve prover (se solicitado) um
resumo das ações executadas antes da interrupção.
• escolha de atividade:
– o usuário deve poder interromper ou terminar qualquer
atividade a qualquer momento e selecionar outra. Após
terminar a 2ª atividade, o sistema deve permitir a
retomada da atividade interrompida no ponto de
interrupção, numa ação simples e intuitiva.
• auto-configuração e auto-verificação:
– a instalação de hardware ou software básico deve ser
suportada por técnicas de auto-configuração e autoverificação.
– deve ser fornecida orientação para qualquer ação cujos
resutados não sejam óbvios.
12
4 - Maximizar o Uso de Padrões e Hábitos
• usar sempre certas teclas para as mesmas
funções.
• colocar sempre informações similares nas
mesmas posições nas telas.
• desenho consistente de formato de telas.
• informação devolvida ao usuário como resultado
de uma ação sua, deve ser posicionada no ponto
onde o usuário a espera: em geral na próxima
linha.
• abordagem e terminologia consistentes para todas
as funções do usuário.
• "datilografar" uma carta num processador de
textos deve ser o mais próximo possível da
mesma atividade na máquina de escrever. Isto
implica em um mínimo de re-treinamento.
13
5 - Máxima Tolerância para Diferenças Humanas
• os sistemas devem
armazenar
perfis
sobre a forma em que
cada usuário prefere
executar as tarefas.
• estes perfis devem
condicionar
o
sistema aos padrões
de
trabalho
do
usuário quando este
começa uma sessão.
14
5 - Máxima Tolerância para Diferenças Humanas
15
5 - Máxima Tolerância para Diferenças Humanas
• uso de métodos visuais e audíveis para
chamar a atenção.
16
5 - Máxima Tolerância para Diferenças Humanas
• uso de formas gráficas ou de desenho para
auxiliar a comunicação visual.
– aceitar abordagens "procedurais" e "não
procedurais" em técnicas de orientação e em
tarefas complexas como o desenvolvimento de
consultas.
17
6 - Máxima Tolerância para Mudanças
Ambientais
• o sistema deve suportar mudanças do ambiente de
hardware/software com um mínimo de esforço do
usuário.
– a mudança de ambiente também pode ser a mudança de
plataforma ou ambiente operacional.
– considerar como plataformas:
» Windows
» Macintosh
» Linux/Unix
– ambientes operacionais:
» Windows 98 / NT / XP …
» Mac OS 9 / X
» família Linux / família Unix
18
6 - Máxima Tolerância para Mudanças
Ambientais
• o sistema deve se re-configurar
automaticamente no caso de adição ou retirada
de unidades do computador (exceto no caso de
dispositivos de hardware críticos, como a UCP
ou a unidade de disco onde o software reside).
– no caso de adição dispor pelo menos de um assistente
de configuração do novo hardware.
• programas de aplicação não devem precisar
recompilação para mudanças na base de dados,
seja de conteúdo, método de acesso ou
localização do arquivo, que não mudem a lógica
de processamento para o programa de aplicação
em questão.
19
6 - Máxima Tolerância para Mudanças
Ambientais
• programas de aplicação devem ser compatíveis
e transportáveis entre diferentes modelos de
computadores.
– aplicações para Internet: a difícil compatibilidade entre
plataformas, ambientes, browsers e versões.
• cuidado com o uso de exclusividades de certo
modelo/marca de computador, pois causará
problemas quando da transportabilidade.
– antes de usar um recurso novo verificar sua
compatibilidade.
• alocação de espaço deve ser automática, não
requerendo intervenção ou ação do usuário
– a existência de defaults selecionados pelo usuário
facilita esta alocação automática.
20
7 - Notificação Imediata de
Problemas
• notificar ao usuário sobre um problema tão
logo seja detectado.
• notificar problemas potenciais antes que
ocorram.
• antes da mudança permanente em informação
armazenada, o sistema deve mostrar os
resultados da mudança e requerer aprovação
do usuário.
– cuidado com a "síndrome de Windows"
21
7 - Notificação Imediata de
Problemas
• sintaxe e terminologia de comandos, devem ser
editados interativamente com resposta imediata
indicando qual o erro e qual a ação corretiva.
• o usuário deve ser notificado quando um percentual
substancial de utilização do espaço for atingido (ex:
80%) para que o usuário possa tomar ações
preventivas com antecedência.
• a edição da entrada deve ser interativa, indicando os
erros e provendo orientação e meios para correção
imediata. Terminada a correção, o sistema deve voltar ao
ponto que interrompeu.
22
8 - Controle máximo de tarefas
pelo usuário
• usuário deve controlar e gerenciar a
sequência do trabalho sempre que não hajam
atividades que exijam uma sequência.
• usuário deve poder modificar as prioridades
de processamento.
• usuário deve poder definir opções "default"e o
sistema deve "lembrar" estas definições no
futuro.
• usuário deve poder armazenar e recuperar
informações de forma consistente, sendo-lhe
transparente os problemas de localização e
armazenamento físicos.
23
9 - Apoio máximo às tarefas
• o usuário não deve precisar de outros
recursos para desempenhar a tarefa.
• documentação da tarefa deve estar "on
line" , estruturada hierarquicamente e
bem indexada.
• um usuário deve poder se comunicar
com outros via facilidades do sistema.
• o usuário deve possuir acesso a
métodos "customizados" de obtenção
de informações, tais como filtros para
geração de relatórios.
24
21 novos Princípios da ANEC
(Association européenne pour la coordination de la
représentation des consommateurs dans la normalisation)
1 - Facilidade de uso
2 - Projeto para todos
3 - Funcionalidade da solução
4 - Aspectos multi-cultural e multi-lingüista
5 - Terminologia
6 - Padrões compreensíveis
7 - Interoperabilidade e Compatibilidade
8 - Interface de usuário consistente
9 - Adaptabilidade
10 - Provisão para informações de status do sistema
11 - Tolerância a erros e estabilidade do sistema
25
21 novos Princípios da ANEC
(Association européenne pour la coordination de la
représentation des consommateurs dans la normalisation)
12 - Minimização das necessidades do usuário relembrar
operações
13 - Explorabilidade
14 - Privacidade e segurança das informações
15 - Transparência de custos
16 - Qualidade do serviço, confiabilidade e durabilidade do
sistema
17 - Questões de saúde e segurança
18 - Importância da informação
19 - Questões ambientais
20 -Utilização de Sistemas de avaliação e de classificação
21 - Trabalhos posteriores
26
1 - Facilidade de uso
• Sistemas ergonômicos devem ser fáceis de
usar, independentemente do tipo de usuário
que fará uso do mesmo.
• Facilidade de uso inclui aspectos de
hardware, software, serviços e suporte.
• A facilidade de uso pode ser medida em
termos de desempenho do usuário para
completar uma tarefa (inclui tempo, número
de erros, satisfação)
• Deve-se estabelecer metas de facilidade de
uso a serem alcançadas.
27
2 - Projeto para todos
• Consiste no processo de criação de produtos,
sistemas e serviços que são acessíveis e
usáveis por pessoas com a mais ampla faixa
possível de habilidades operacionais, na mais
ampla faixa possível de situações.
• Pode haver situações em que o sistema não é
desejado que seja para uso de todos. Seu uso
dependeria de seleção de grupo especial de
usuário e de treinamento específico. Nesse
caso deve ser conhecido para quem o
sistema é indicado e para quem não é
indicado.
28
3 - Funcionalidade da solução
• A solução adotada para determinado
problema deve ser funcional.
• Geralmente casos de não-funcionalidade são
aqueles em que o desenvolvedor não
conhece exatamente as necessidades dos
usuários para o qual desenvolve o sistema.
Até mesmo porque nunca se deparou com
aquela situação em sua vida, se pondo como
usuário.
29
4 - Aspectos multicultural e multilingüístico
• Os sistemas hoje saem da fronteira de
nossas redes internas (principalmente na
Internet), e assim percorre várias culturas
diferentes, mesmo dentro de um mesmo
país.
– Ex. Um site de seguro descreve os passos para
acionar o conserto do carro:
» "…com a liberação na mão o cliente pode procurar o
lanterneiro de sua preferência… (São Paulo)
» "…com a liberação na mão o cliente pode procurar o
funileiro de sua preferência… (Rio de Janeiro)
» "…com a liberação na mão o cliente pode procurar o
chapeador de sua preferência… (Rio Grande do Sul)
30
4 - Aspectos multicultural e multilingüístico
• Alguns sistemas precisam ser multilingüísticos, ou seja, devem poder ser
operados em várias línguas. É o caso de
sites de turismo, hotéis e similares.
31
5 - Terminologia
• A terminologia usada nas interfaces deve ser
consistente, e compatível com a terminologia
usada em documentos escritos, em uso fora
do computador.
• Deve ser clara e de fácil domínio por
qualquer usuário.
32
6 - Padrões compreensíveis
• Padrões devem ser "não ambíguos" e fáceis
de entender, de forma que qualquer pessoa
não técnica em informática possa entender.
• O não atendimento deste princípio dificulta a
padronização de processos e procedimentos.
Símbolo padrão para erros
Símbolo padrão para Atenção
33
6 - Padrões compreensíveis
transferência de tarefas
Tarefas
Disponibilidades
34
7 - Interoperabilidade e compatibilidade
• Diferentes serviços devem operar entre si,
nas mesmas redes e equipamentos.
• Para tanto é preciso que haja compatibilidade
nas aplicações.
• Compatibilidade dentro de um sistema
deveria assegurar que novas versões do
sistema, devem ser compatíveis com as
versões anteriores.
35
8 - Interface de usuário consistente
• Os sistemas devem ter uma interface de
usuário consistente.
• É especialmente importante que o método de
processamento, armazenamento e acesso
aos sistemas seja consistente para o usuário.
36
9 - Adaptabilidade
• O sistema deve se adaptar às necessidades
específicas de cada usuário.
• Isso implica em necessidades essenciais
(deficiências) e necessidades preferenciais
do usuário.
• A forma e a seleção de saídas pode ser um
exemplo de necessidades especiais e
preferenciais.
37
10 - Provisão de informações sobre
status do sistema
• O status do sistema deve estar disponível
para o usuário.
• Diferentes mecanismos podem ser
empregados para dar um completo feedback
ao usuário.
• Técnicas de áudio e visuais podem contribuir
para melhor comunicação de erros e de
entrada de dados.
38
11 - Tolerância a erros e
estabilidade do sistema
• O sistema deveria antecipar erros de
operação e se possível corrigí-los.
• O sistema deve ser robusto e permanecer
estável, se o usuário comete erros
operacionais e de entrada de dados,
informando a existência do erro e como
corrigí-lo.
39
11 - Tolerância a erros e estabilidade do sistema
40
12 - Minimização da necessidade de
memorização da operação do sistema
• Sistemas devem mostrar elementos do
diálogo ao usuário e permitir que se
selecione itens gerados pelo sistema e
permitir que se os edite.
• Técnica de Menus, é o exemplo de aplicação
deste objetivo
41
13 -Explorabilidade
• O sistema deve permitir que o usuário o
explore, até mesmo sem realizar operações
completas, fazendo apenas uma navegação.
• Se o usuário sabe que há caminhos de
retorno e se há possibilidade de "Undo" para
desfazer alguma "mancada" ele se encorajará
a explorar o software.
42
14 - Privacidade e Segurança de
informações
• O sistema deve garantir a privacidade do
indivíduo.
• Não deve ser permitido que pessoas não
autorizadas acessem certos dados
individuais nas redes.
• O nível de segurança adotado deve ser
comunicado ao usuário.
43
15 - Transparência nos custos
• O sistema deve ser transparentes quanto aos
custos envolvidos.
• Por exemplo, ao se selecionar serviços e
produtos que envolvam custos, mostrá-los
antes da efetivação do serviço.
44
16 - Qualidade do serviço,
confiabilidade e durabilidade
• A qualidade é hoje ponto importantíssimo na
prestação de um serviço. E nos serviços
prestados pelo computador, especialmente
na Internet é ponto importante.
• A confiabilidade contribui para a qualidade e
para obter a adesão do usuário ao sistema.
• A durabilidade inclui a manutenção de
serviços e sistemas ainda que com a
implantação de novos sistemas.
45
17 - Confiabilidade da informação
• As informações prestadas devem conter a
fonte, para que a confiabilidade dos dados
seja mantida.
• Informações corretas (sem erros) também
aumenta a confiabilidade.
46
18 - Questões de saúde e segurança
• Os sistemas devem considerar a aplicação
das regras de ergonomia e segurança física
do usuário.
• Exemplo: Quase todos os terminais
bancários (brasileiros) serão reprovados se
submetidos a exames de regras de
ergonomia (tanto de hardware como de
software).
47
19 - Questões ambientais
• Muito se discute sobre a questão ambiental e
os sistemas computadorizados também
devem entrar nesta discussão.
• Por exemplo, determinado banco suspendeu
a emissão de comprovante de saque, porque
constatou que 90% dos clientes, jogava fora
o comprovante, e muitos o faziam no chão do
caixa eletrônico ou mesmo na rua, na saída.
48
20 - Permitir sistemas de avaliação e de
classificação
• A avaliação constante do sistema faz parte
das regras para garantir que os princípios
têm sido aplicados.
• Nas técnicas de Usabilidade tem-se diversos
critérios e formas de avaliar um sistema.
• Estudos sobre classificação dos sistemas
("Taxionomia") começam a ser desenvolvidos
e implementados.
49
21 - Trabalhos posteriores
• Após a conclusão do sistema, há de se fazer
avaliações e simulações de processos, para
se medir a eficiência, eficácia e satisfação do
usuário
Eficiência significa fazer certo. Eficácia é fazer
da maneira certa, ou da melhor maneira possível. E
nisto consiste uma grande diferença. Isto porque
podemos alcançar uma meta, porém despendendo
um esforço e recursos maiores do que necessário.
50
Download

INF 043 - Comunicacão Homem