Dealing with Complexity in UI Design
Autor original: Julian Fietkau
Publicado originalmente no: osnews.com
Tradução: Roberto Bechtlufft
Nas últimas décadas, os programas que nos permitem ser produtivos em nossos computadores foram se tornando cada vez mais sofisticados e complexos. Hoje, os projetistas de interfaces se veem diante do desafio de criar interfaces de usuário fáceis de usar e que ainda assim ofereçam acesso a uma vasta gama de recursos. Aqui vão algumas ideias sobre a natureza da complexidade da interface gráfica, seguidas por algumas considerações sobre a simplicidade que podem surpreendê-lo.
Sobre a natureza da complexidade
Todo mundo quer um software que seja simples. Como programador, eu sempre leio reclamações sobre programas com elementos demais, alguns pouco úteis, e isso é problemático tanto para o desenvolvimento quanto para a utilização do software. Se é assim que as coisas funcionam, por que os desenvolvedores de software continuam criando programas cada vez mais complexos?
Para deixar as coisas bem claras, vamos começar com algumas definições. Quando falo em “complexidade”, falo em um sentido praticamente idêntico ao do livro de Don Norman, Living with Complexity (amazon), e pode ser resumido assim: a complexidade é a medida da sofisticação estrutural de um sistema(seja ele um software, um painel de avião ou uma torradeira). Ou seja, quanto mais peças e propriedades algo tiver, mais complexo vai ser. Eu prefiro essa definição a outras mais comuns, porque separa a complexidade da conotação negativa que é amplamente difundida. Ela tem um fim puramente descritivo, sem fazer juízo algum. Por outro lado, um sistema pode ser complicado, e mais uma vez eu concordo com a definição de Don Norman: uma medida do grau de confusão e imprevisibilidade que o programa apresenta diante de um usuário humano.Isso define que a complicação é, em sua essência, uma questão subjetiva – ou, caso você prefira, um fenômeno psicológico. A complicação deve ser considerada no contexto de uma experiência humana individual para ter sentido.
Não acredita em mim? Veja só esta interface de usuário:
Cockpit do Hawker Hunter, por Greg Weir no flickr, usado com permissão da licença CC-BY
Para quem não é piloto, essa interface é um pesadelo. A enorme quantidade de botões e alavancas é complexa E complicada, a não ser que você saiba pilotar um avião. Nesse caso, a complexidade continua evidente, mas em vez de enxergar um monte de botões complicados e assustadores você vê uma série de ações possíveis, organizadas em grupos sensatos, com tudo o que for importante ao seu alcance. A diferença está no seu conhecimento acerca das ferramentas, e na sua experiência com os problemas que elas se propõem a resolver.
Logo, “complexo” e “complicado” são duas coisas diferentes, embora não sejam de todo independentes. Se você incluir complexidade sem pensar no que está fazendo, pode acabar ficando com um sistema muito complicado. Da mesma forma, reduzir a complexidade é uma forma viável de se criar algo menos complicado, mas como vamos ver adiante, não é a única maneira (e nem necessariamente a melhor) de se fazer isso.
A complexidade não para de crescer
Como medir o grau de complexidade e o grau de complicação de algo? Não tenho uma resposta definitiva para essa pergunta, mas dá para tentar chegar perto disso. Vou aproveitar a oportunidade para concordar com a afirmação de que o software está se tornando cada vez mais complexo – com alguns dados quantitativos de Jensen Harris, que escreveu uma série em quatro partes sobre a história da interface do Microsoft Office (leitura recomendada, especialmente por suas considerações sobre a complexidade). Dentre outras informações úteis, ele apresenta a quantidade de barras de ferramentas a cada novo lançamento do MS Office até o Office 2007, que abriu mão delas em prol da faixa de opções. Esses valores são reproduzidos na tabela abaixo:
Versão do MS Word |
1.0 |
2.0 |
6.0 |
95 |
97 |
2000 |
2002 |
2003 |
2007 |
Qtde. de barras de ferramentas |
2 |
2 |
8 |
9 |
18 |
23 |
30 |
31 |
n/d |
É claro que a quantidade de barras de ferramentas não é um indicativo perfeito da funcionalidade disponível, mas dá para notar a tendência, não dá? Para quem quiser ir mais a fundo nisso, o blog de Harris oferece muitas informações detalhadas sobre a complexidade da interface do Microsoft Office.
“Mas”, diz você, “nem todo software está ficando mais complexo. E quanto aos meus elegantes aplicativos web 2.0?” Bem lembrado! Vamos dar uma espiada no Google Docs do fim de 2007 e no Google Docs de hoje. Ele começou como uma alternativa online leve ao software tradicional de processamento de texto, mas logo teve que encarar a realidade de que uma migração de usuários em larga escala só ocorreria se o Google Docs oferecesse os recursos dos quais esses usuários precisavam (e que aparentemente incluíam até aquelas réguas horrorosas). É só dar uma olhada rápida no blog do Google Docs e ver por conta própria quantos posts tratam exclusivamente de novos recursos.
Resumindo: o aumento de complexidade no software moderno é algo bastante real. Mas por quê? A resposta é surpreendentemente simples: expansão. Muito software é criado pensando no retorno financeiro, o que obviamente depende da quantidade de pessoas dispostas a investir a quantia necessária. Até o software livre muitas vezes se vê lutando por uma fatia de mercado. Como fazer para que seu software atraia mais pessoas? Vamos ver o que Joel Spolsky tem a dizer sobre o excesso de recursos:
Acho que é um erro dizer que o iPod foi um sucesso por causa de sua ausência de recursos. Quando você começa a acreditar nisso, passa a acreditar, dentre outras coisas, que tirarrecursos vai aumentar o sucesso do produto. Com seis anos de experiência no comando da minha própria empresa de software, posso dizer que nadaque já tenhamos feito na Fog Creek aumentou mais os rendimentos do que lançar uma nova versão com mais recursos. Nada. Os resultados financeiros quando lançamos esses produtos são absolutamente incontestáveis. É como a gravidade. Quando experimentamos o Google ads, quando implementamos vários esquemas de afiliados ou quando um artigo sobre o FogBuzz saía na imprensa, mal pudemos notar os resultados na ponta do lápis. Quando uma nova versão sai com mais recursos, temos um súbito, indiscutível, substancial e permanente aumento nos rendimentos.
Nada mais a declarar.
Capaz, e ainda assim utilizável
O outro lado da moeda é o aumento da usabilidade, outra coisa que todo mundo quer.
Hoje em dia, o software é consumido mais rapidamente do que nunca. Lembra de quando você comprava software na loja depois de pensar e repensar, de quando o manual (impresso e incluso!) tinha centenas de páginas e a instalação podia levar a noite toda? Hoje você baixa o software conforme a necessidade, via internet. Com os repositórios de software e as lojas de aplicativos se espalhando cada vez mais, o download, a instalação e a integração ao sistema foram reduzidos a um único clique. O mundo do software passa por uma mudança de paradigma, do “software como investimento a longo prazo” para o “software como utilidade”, e para ganhar impulso, o software tem que ser fácil de aprender e fácil de ser encontrado. Steve Krug, autor do livro iconicamente intitulado Don’t Make Me Think (“Não me faça pensar”, à venda em inglês na Amazon e traduzido para o português em diversas lojas do Brasil, como a Siciliano), resumiu essa mentalidade:
Uma coisa que fica óbvia quando você começa a fazer testes de usabilidade, seja testando sites na web, software ou até eletrodomésticos, é como as pessoas usam coisas o tempo inteiro sem entender direito como elas funcionam, ou com ideias completamente equivocadas a esse respeito.
Diante de qualquer tipo de tecnologia, pouquíssimas pessoas se dedicam a ler o manual de instruções. Em vez disso, vamos em frente sem entender direito as coisas, criando nossas vagas hipóteses sobre o que estamos fazendo e como tudo funciona.
Além de uma boa gama de funcionalidades, uma boa usabilidade é o segundo pilar do potencial de expansão da base de usuários. Como todas essas informações em mente, vamos reescrever a pergunta inicial: como oferecer uma boa usabilidade sem comprometer a variedade de recursos? Será que devemos investir mesmo na simplicidade, como se costuma dizer?
No que investir
Quando eu me pergunto como criar uma boa experiência de usuário, o bom e velho ISO 9241-110 sempre funciona como um lembrete de quais devem ser meus objetivos conceituais. A simplicidadeestá claramente ausente. Em vez disso, sempre leio sobre a adequação à tarefa, sobre a adequação ao aprendizado ou sobre a capacidade de autodescrição.São essas coisas que realmente ajudam meus usuários. Não é uma questão de gosto ou preferência.
Se interpretarmos a simplicidadecomo a redução do número de ações disponíveis em um dado momento, ou (talvez de forma menos acadêmica) como a redução de recursos, ela certamente será uma maneira de reduzir a temida “aura de complicação”.
Mas, se você tiver que aprender algo com este artigo, que seja o seguinte: a simplicidade é um meio, e não um fim. Há muitas outras maneiras de se criar interfaces com ótima usabilidade sem comprometer a complexidade ou limitar os recursos.
Na verdade, para quem estiver interessado, vou escrever um artigo depois deste que descreve várias dessas técnicas. Eu adoraria que vocês opinassem sobre esse assunto.
Créditos a Julian Fietkau – osnews.com
Tradução por Roberto Bechtlufft <info at bechtranslations.com.br>
Deixe seu comentário