Projetando e desenhando aplicações e websites complexos

por em Experiência do Usuário (7) comentários

O terceiro workshop que participei no User Experience 2008 teve por tema Designing Complex Applications and Websites. Um workshop de dois dias com muita informação interessante!

O que faz um site ou aplicação ser complexa?

Está cada vez mais difícil distinguir a diferença entre um site e uma aplicação complexa. Em algum determinado ponto do seu site você vai querer adicionar alguma interatividade além dos links. A partir desse momento você começa a adicionar complexidade. Sites estáticos são considerados simples. Sites de comércio eletrônico e intranets são de média complexidade. Já nas aplicações complexas temos enterprise software (SAP, PeopleSoft, etc.), software específicos a um tema (biotech, global imaging systems, sistemas médicos, seguro, aviação, etc.) e aplicações de internet “ricas” (fotos, stock, comunidades online, leilão, configuração de carro, internet banking, etc.).

Quem são os usuários de aplicacações complexas?

  • domain expert: especialista em um determinado assunto e precisa de soluções para as situações complexas de seu trabalho (ex: operador de sistema de passagens de avião).
  • expert: é aquele que vai fundo num tema fora do trabalho (ex: pessoas que compram e vendem ações mas não de forma profissional).
  • enthusiast: é apaixonado ou conhece muito de um determinado assunto fora do domínio de sua profissão (ex: hobbies, fotografia, online gaming, etc.).

A principal barreira para adoção de uma aplicação complexa é sua utilidade. O conceito de utilidade é diferente de usabilidade. Enquanto a usabilidade se procupa em como algo é usado e em facilitar esse uso, a utilidade se foca em quão útil os elementos de design são para o objetivo do usuário. Assim como existe o teste de usabilidade existe também o teste de utilidade. Ele acontece antes do teste de usabilidade. Ele é muito parecido com um teste de usabilidade na forma, ou seja, apresenta-se a uma pessoa uma tela e, por meio de perguntas, vamos descobrindo a utilidade de determinadas funcionalidades dessa tela. Normalmente em um teste de utilidade, basta ter uma tela, pode até ser um protótipo em papel. Ao apresentar essa tela, fazemos algumas perguntas para que está testando essa tela:

  • Explique o que está acontencendo nessa tela. O que você pode fazer nessa tela?
  • O que você faria primeiro nessa tela para fazer X?
  • Como você de fato gostaria de começar a fazer X?
  • Você compartilharia esses dados? Se sim, com quem?
  • O que você sente falta nessa tela?
  • Que outras aplicações essa tela te lembra?

O que fazemos com o resultado de um teste de utilidade?

É usado para descobrir padrões de uso. Por meio desse teste descobrimos como o usuário irá utiizar nossa aplicação e, a partir daí, mapear padrões de uso com padrões de interação. Por exemplo: softwares de CRM normalmente vêm com uma opção “novo” para criar um novo contato. Uma vez clicado em “novo” aparece o formulários com as opções “salvar” e “cancelar”:

Save

Fazendo um teste de utilidade com esses usuários, descobriu-se que o padrão de uso era, na maioria das vezes, após clicar em “salvar” o usuário clicava em “novo” para cadastrar mais um contato. Percebendo esse padrão de uso, apareceu um terceiro botão no formulário, o “salvar e novo”:

Save and New

Padrões de uso e seus correspondentes padrões de interface facilitam muito o trabalho de quem está projetando uma aplicações complexa.

Quais são os padrões de interação e seus respectivos padrões de uso?

Podemos trabalhar com 8 categorias de padrão de uso:

1. Exploratório

         - mostrar dados e ações
         - permitir erros

2. Navegação em grandes bases de dados

         - hierarquias
         - tabelas

3. Busca avançada

         - busca baseada em atributos
         - refinamento da busca

4. Entrada e alteração de dados

         - captura eficiente de dados
         - wizard

5. Informação centralizada

         - visualização
         - dashboard

6. Guias

         - mensagens e instruções
         - ajuda

7. Construção de cenários

         - cálculos complexos
         - visualização interativa

8. Comunidade

         - rating/ranking/promoção
         - acompanhar (follow)

Para cada um desses padrões de uso existe um tipo de padrão de interação mais apropriado. Veja abaixo alguns exemplos:

Yahoo!

Berkley

Jennifer Tidewell

Welie.com

Existem algumas bibliotecas públicas de padrões de interação:

Baseado nessas bilbliotecas de padrões e em sua própria experiência, você deve começar a construir sua própria biblioteca, com as particularidades do seu negócio.

Mas não reinvente a roda, é provável que alguém já tenha tido o mesmo problema de design que você e já tenha documentado uma solução.

A partir de agora vou publicar uma série de posts que serão identificados com [Padrão de Uso] no título para entrarmos em mais detalhes sobre cada um desses padões de uso e seus respectivos padrões de interface.