Gerência - Qualidade e Testes
Usabilidade - uma introdução
Segundo (ISO/IEC 9126), “usabilidade refere-se à capacidade de uma aplicação ser compreendida, aprendida, utilizada e atraente para o usuário, em condições específicas de utilização”.
por Ezequiel C. BlascoAcontece com todo mundo. Você está no seu trabalho, e o chefe está mirando na sua cabeça uma bomba de tamanho considerável. Sim, aquela planilha “básica”, gigantesca, que você deveria ter aprontado ontem (se tivesse duas cabeças e dez braços você teria conseguido – é tanta coisa para fazer...), está sendo cobrada. Assim sendo, você vai correr (ou melhor, VOAR) para o seu computador, abrir o editor de planilhas e fazer isso até às seis da tarde...
Oh-oh! Instalaram uma versão nova do editor de planilhas, com novas funcionalidades... mas você não está conseguindo achar as funções conhecidas, e a interface está TODA diferente! E a tarde corre, as horas passam rapidamente: você reza para “São Google” para achar a maneira correta de colocar uma fórmula! E pergunta para um, e pergunta para outro... até achar. Mas já é o final do expediente, e o seu chefe está manso como um tigre faminto, prontinho para lanchar seu fígado.
Se o editor fosse mais fácil de ser usado, mais intuitivo, nada disso teria acontecido. Você teria tido um final de expediente feliz, se aquele bendito aplicativo tivesse uma usabilidade adequada... não é mesmo?
Mas, afinal, como definir o que é usabilidade?
Segundo (ISO/IEC 9126), “usabilidade refere-se à capacidade de uma aplicação ser compreendida, aprendida, utilizada e atraente para o usuário, em condições específicas de utilização”. Usabilidade é, em outras palavras, a qualidade de um aplicativo que o torna fácil de ser usado para executar as funções ao qual ele foi destinado. Isso significa que aquele editor de textos devia, entre outras coisas, ter as seguintes características:
- Ser fácil de aprender: coloque uma
interface muito complicada ou diferente do que o usuário está acostumado,
e veja o desastre acontecer. De camarote.
- Ser fácil de usar: não é nada agradável quando você tem que apertar Shift + Insert + F12 para abrir um Menu de Formatação de texto, você concorda?
- Ser fácil de memorizar: tudo deve ser lógico, todos os itens devem ser claros e estar em seus respectivos lugares.
- Ser agradável de usar.
O cuidado com a usabilidade é um item que vem sendo abordado há pouco tempo, relativamente. A disciplina de IHC (Interação Humano-Computador), a qual aborda os temas relacionados à usabilidade, tem apenas 35 anos. Isso faz sentido, quando pensamos que os computadores pessoais surgiram por volta de 30 anos atrás, com a criação do Apple II (1977). Antes, apenas pessoas especializadas mexiam com os computadores, em geral mainframes, para manipulação de dados matemáticos e científicos. Com a popularização do computador, uma nova gama de aplicações surgiu para o usuário “doméstico”, e se fez necessário que o computador deixasse de ser uma “ferramenta para cientistas” para se tornar um item ao alcance de todos.
A usabilidade é um fator extremamente importante para dar rentabilidade e confiabilidade a um aplicativo, algo extremamente importante quando estamos tratando com empresas de desenvolvimento de software. Um aplicativo fácil de usar e aprender é um aplicativo fácil de vender, porque o usuário está interessado em um aplicativo que facilite a vida dele: o lema aqui é automatizar, e não, fazer raciocinar. Cada minuto que o usuário gastar tentando encontrar uma função é tempo perdido, precioso para que ele cumpra a tarefa. Nesse tempo, em vez de ele conseguir terminar o seu trabalho, ele acaba procurando informações externas, subsídios que possam ajudá-lo (leia-se: Google e fóruns, porque muito poucos procuram o sistema de ajuda do aplicativo). Assim, o seu rendimento cai, a sua paciência vai se esgotando e o usuário, quando achar algum aplicativo mais fácil de ser usado naquela área, vai acabar trocando.
Pior ainda é quando estamos tratando de sites e aplicativos online, e um bom exemplo disso são os sites de compras (e-commerce). Funções de compra ambíguas ou difíceis de achar, falta de feedback do andamento da compra e formulários quilométricos são alguns dos problemas que os usuários enfrentam quando vão comprar qualquer artigo na Internet, de livros à medicamentos. Como o usuário não entra na internet para perder seu tempo e paciência, acaba abandonando o site em busca de outro que ofereça uma maior usabilidade. Uma das maiores autoridades em usabilidade no mundo, Jakob Nielsen, pesquisou a respeito e afirma que a esmagadora maioria dos usuários (83%) tende a sair de um site com problemas notórios de usabilidade em 10 segundos, mais ou menos. Quer dizer: não adianta um site oferecer produtos e serviços a baixo custo e de boa qualidade. Se o site não tiver uma usabilidade adequada, poucas pessoas se disporão a gastar sua paciência tentando fazer compras nele.
DESIGN CENTRADO NO USUÁRIO
Para desenvolver uma usabilidade adequada, é necessário que se pense desde o início do projeto naquele que é o maior interessado em que o aplicativo seja simples e fácil: o usuário final. Ele, por não ter (em geral) contato com o projeto, desconhece detalhes de implementação; por isso, a sua principal via de comunicação e conhecimento do aplicativo é a interface, que deve suportar o “diálogo” entre este e o usuário. Desta forma, deve-se conhecer o escopo, as limitações e os anseios do usuário desde o início do projeto, voltando-se os olhos não só para a robustez e eficiência do sistema, mas também para as necessidades do usuário, o que conduz o projeto ao que comumente se denomina “Design Centrado no Usuário”.
Fig. 1. O design centrado no usuário dá menos ênfase ao aspecto funcional, ressaltando o aspecto humano.
Dois autores primais de IHC e usabilidade, Gould e Lewis, postularam em 1985 três princípios para efetuar o Design Centrado no Usuário:
• Foco inicial em Usuários e Tarefas (ao invés de funcionalidades);
• Avaliação empírica (com usuários) da usabilidade do produto;
• O produto deve ser projetado, modificado e testado repetidamente, a cada fase do ciclo de desenvolvimento (design iterativo).
Uma empresa que cuide em fazer o design do seu aplicativo pensando no usuário vai ter que adequar a sua linha de produção para contemplar os subsídios que serão fornecidos pelo usuário. Isto vai desde a análise de requisitos (onde poderão ser feitos protótipos não-funcionais e simples para a avaliação dos componentes da interface) até as fases de testes e implantação do sistema (onde os usuários podem avaliar protótipos funcionais, ou mesmo uma versão beta). Nestas avaliações, os usuários detectarão, em conjunto com os especialistas em usabilidade, quais são os pontos fracos da interface, onde ela não consegue comunicar a eles quais as funções acessíveis através destes.
Fig. 2. O Design Centrado no Usuário é, preferencialmente, iterativo
A aplicação de um design voltado para o usuário, utilizando avaliações de usabilidade durante todo o ciclo de desenvolvimento de software, resulta em vários benefícios para a empresa que a adotar:
- Prever a usabilidade do aplicativo,
assim como possíveis erros na interface.
- Adequação da interface do aplicativo aos requisitos apontados pelo usuário, em tempo de execução do projeto.
- Verificação de consistência e padronização da interface.
- Verificação de legibilidade dos itens da interface.
- Sessões curtas (1-2 horas) de avaliação individual, onde o especialista detecta os problemas de usabilidade e associa-os com as heurísticas adotadas.
- Consolidação da avaliação dos especialistas, onde, juntos, fazem uma análise global dos problemas encontrados e geram um relatório unificado destes, com suas respectivas soluções.
- Seleção dos problemas a serem corrigidos, junto com o gerente de projeto ou cliente, conforme a disponibilidade de recursos humanos, financeiros e tempo de projeto restante.
- Considerar a experiência dos participantes com o aplicativo avaliado (ou com aplicativos similares
- Captura de telas de interação
- Registros de vídeo e áudio
Fig. 3. Abrangência das Avaliações Somativa e Formativa
As avaliações, como já foi anteriormente dito, podem ser efetuadas por duas classes de sujeito de experimento:
Na próxima seção, serão mostrados
TÉCNICAS DE AVALIAÇÃO
Avaliação por Checklists
A aplicação de checklists é um método simples para aferir pontos-chave da usablidade de um aplicativo, tais como:
- Conformidade a padrões preestabelecidos
(manuais de estilo do GNOME e Win XP, por exemplo.)
Geralmente, essas checklists são preparadas conforme diretrizes e heurísticas já estabelecidas e consagradas (como o Ergolist, um trabalho da UFSC baseado nas heurísticas ergonômicas de Bastien e Scapin (1995)), ou mesmo através da experiência empírica de um especialista em usabilidade. A vantagem nisso é que o checklist pode ser aplicado por uma pessoa que não tenha nenhum conhecimento específico em usabilidade.
Alguns exemplos de checklists:
• Ergolist (www.labiutil.inf.ufsc.br/ergolist)
• MIT IS&T – Usability Guidelines (http://web.mit.edu/is/usability/)
• Web Content Accessibility Guidelines (http://www.w3.org/TR/WAI-WEBCONTENT/#gl-provide-equivalents)
• DaSilva Avaliador de Acessibilidade para Websites (http://www.dasilva.org.br/)
Prototipação em Papel
A prototipação em papel é um método largamente usado para desenhar, testar e refinar interfaces, principalmente nos estágios iniciais de desenvolvimento. Antes da década de 1990 foi uma técnica usada por um pequeno grupo desenvolvedores, fora do mainstream das softhouses. A partir de 1990, a prototipação em papel foi adotada por grandes companhias, como a IBM e a Microsoft, como uma técnica eficiente para uso integral no desenvolvimento da usabilidade e acessibilidade de seus produtos.
Esse método consiste em desenhar as telas de interface, com todos os seus elementos, em papel ou em um meio computacional que possa suportar transições (wireframing em HTML, PowerPoint, etc.).
Fig. 4. Um exemplo de tela gerada na prototipação em papel.
A prototipação em papel, por não depender de tecnologia alguma para ser aplicada, pode ser usada nas fases iniciais do ciclo de desenvolvimento, sendo especialmente adequada para a fase de análise de requisitos.
Avaliação Heurística
A avaliação heurística é baseada em um conjunto de diretivas gerais que devem ser consideradas no desenvolvimento da interface do aplicativo, para a sua melhor usabilidade. Em geral, essa técnica é feita com um grupo de 3 a 5 especialistas, e não há participação de usuários finais.
A avaliação heurística possui uma fase de preparação e uma de aplicação. Na fase de preparação são gerados ou obtidos todos os subsídios necessários, como o protótipo (que pode ser funcional ou não, como na prototipação em papel), as hipóteses sobre onde os usuários vão falhar na interação com a interface do aplicativo, etc.
Na fase de aplicação, são seguidos esses passos:
Geralmente, é usado na avaliação heurística o conjunto de heurísticas preconizado por Nielsen (1994), os quais já são consagrados pela literatura e pela prática.
Testes Empíricos com Usuários
Os testes empíricos com usuários são aplicados quando se procura saber qual a opinião deste sobre a interação com o sistema. Os usuários, em todas as técnicas, são os principais sujeitos da avaliação (sendo o objeto o aplicativo avaliado), realizando uma bateria de testes com algumas funções do aplicativo, disponíveis através da interface. O avaliador, por sua vez, é responsável pela observação do usuário e pela coleta dos dados que o mesmo disponibiliza, para em um momento posterior interpretá-los, identificando os problemas da interface do aplicativo.
Os usuários são, via de regra, selecionados através de um questionário pré-teste, no qual são aferidos os aspectos que são desejáveis dentro do perfil de usuário a ser adotado. Para a seleção de usuários, são recomendadas as seguintes medidas (Prates e Barbosa 2003):
- Ter um número equivalente de homens e
mulheres participando do teste
O teste empírico com usuários precisa (salvo raros casos) de um laboratório especialmente preparado para esses testes, com, no mínimo, um computador para a realização dos testes, e os aplicativos ali instalados. Para possibilitar a avaliação, os especialistas acabam se valendo de fontes adicionais de informação, as quais tornam esses testes, via de regra, dispendiosos, como:
- Logs de interação (mouse, teclado, etc.)
Fig. 5. Um típico laboratório de usabilidade.
Uma variação do teste com usuários é o chamado protocolo Think-Aloud, o qual difere da outra técnica por exigir que o usuário diga, em voz alta, ao avaliador qual o seu raciocínio para utilizar certo caminho para avançar até a funcionalidade necessária para que ele possa completar os passos de sua tarefa. Os criadores da técnica original, Ericsson e Simon (1987), afirmam que a seqüência de verbalizações corresponde ao seguimento de pensamentos gerados, sendo o indivíduo capaz de exteriorizar seus processos mentais mantendo a seqüência de informações processadas.
NO PRÓXIMO ARTIGO...
Aqui, nós vimos a importância dos testes de usabilidade para a indústria de aplicativos em geral, e os benefícios que os usuários e as empresas têm quando existe a atenção em tornar os aplicativos mais fáceis de ser usados, aprendidos e memorizados. Também, mostramos uma visão geral das técnicas mais utilizadas dentro da indústria, para a avaliação de usabilidade. Nos próximos artigos serão apresentadas em maior profundidade as técnicas e ferramentas mais utilizadas na indústria de TI para a avaliação de usabilidade.
- Entendendo o conceito por trás dos processos de Qualidade de SoftwareQualidade e Testes
- Entendendo Indicadores de Prazo e Custo de ProjetosQualidade e Testes
- Aplicação de QUALIDADE de processo de SoftwareQualidade e Testes
- Segurança: Item primordialQualidade e Testes
- Qualidade de Software: Oculte seu códigoQualidade e Testes