No momento, estamos no meio da construção da nova propriedade da Web I mencionei em um post anterior. Antes de escrever uma única linha de código, quero ter um uma ideia bastante clara de como será a interface do usuário. Estou no concordo plenamente com Rick Schaut aqui:
Quando se trabalha com software para o usuário final, não importa se o senhor está trabalhando em um aplicativo da Web, adicionando um recurso a um aplicativo existente ou trabalhando em um plug-in para algum outro aplicativo, o senhor precisa projetar a interface do usuário primeiro.
Isso é difícil por alguns motivos. O primeiro é que a maioria dos programadores, especialmente aqueles que foram treinados em cursos de ciência da computação em nível universitário, aprendeu a programar escrevendo primeiro códigos que deveriam ser executados por meio da linha de comando. Como consequência, aprendemos a implementar algoritmos eficientes para problemas comuns de ciência da computação, mas nunca aprendemos a projetar uma boa interface de usuário.
É claro, A interface do usuário é difícilmuito mais difícil do que a codificação para os desenvolvedores. É tentador pular a parte difícil e fazer o que vem naturalmente: começar a bater em uma janela de código sem pensar realmente em como o usuário irá interagir com os recursos que você está criando.
Lembre-se, para o usuário final, a interface é O aplicativo. Não faz sentido pensar sobre isso? antes de de acionar o compilador?
Certamente é verdade que há limitações sobre como a interface do usuário pode ser criada com base na tecnologia que o senhor está usando. O fato de alguns pixels poderem ser organizados de uma determinada maneira no Photoshop não significa que isso possa ser magicamente transformado em um produto compilável e enviável em um prazo razoável. Para amenizar esse problema, aproveite as vantagens do padrões de design visual. Se estiver criando um aplicativo de GUI, use uma paleta de widgets comuns à sua GUI. Se estiver criando um aplicativo da Web, use uma paleta de elementos HTML, CSS e DOM de toda a Web. Deixe que a paleta imponha suas restrições tecnológicas.
Não deve ser difícil sentar-se com algumas ferramentas básicas e fazer uma maquete aproximada de como será a interface do usuário. No entanto, nesse ponto, é extremamente importante ficar longe de ambientes de desenvolvimento técnico ao fazer a simulação da interface do usuário, ou a tentação de transformar o modelo em produto pode ser forte demais para sua equipe resistir. Tente evitar a armadilha do protótipo.
Então, como podemos criar um protótipo da interface do usuário sem depender de nossas ferramentas de desenvolvimento? Uma maneira é prototipagem simples em papel.
O livro Paper Prototyping: The Fast and Easy way to Design and Refine User Interfaces (A maneira rápida e fácil de projetar e refinar interfaces de usuário) é uma excelente introdução à prototipagem em papel. É possível navegar interativamente pelas seções desse livro em Amazon, através de Livros do Googlee o próprio site dedicado ao livro.
Há uma certa atemporalidade na prototipagem em papel que tem um apelo profundo, como aponta Jacob Nielsen:
A prototipagem em papel tem um segundo benefício, além de seu impacto na qualidade de seu projeto de design atual. Ela também beneficiará sua carreira. Considere todos os outros livros que o senhor leu sobre computadores, web design e tópicos semelhantes. Quanto do que o senhor aprendeu ainda será útil daqui a dez anos? Em vinte anos? Nas palavras imortais de meu antigo chefe, Scott McNealy, a tecnologia tem a vida útil de uma banana.
Em contrapartida, a técnica de prototipagem em papel tem uma vida útil mais próxima da de, digamos, papel. Depois de aprender a prototipagem em papel, o senhor pode usá-la em todos os projetos que fizer pelo resto de sua carreira. Não tenho ideia de quais tecnologias de interface de usuário serão populares daqui a vinte anos, mas sei que terei de submeter esses projetos à avaliação de usabilidade e que a prototipagem em papel será uma técnica valiosa para a realização de estudos iniciais.
Os protótipos de papel geralmente são lançados em termos de fazer estudos de usabilidade de baixa fidelidadee com razão. Mas acho que um protótipo em papel é extremamente útil, mesmo que eu seja o único que o veja. Preciso criar uma imagem em minha mente do que estou construindo, como será visto pelo mundo, antes de começar a colocar o concreto para torná-lo real.
Se o senhor precisar de mais algum convencimento de que a prototipagem em papel é uma ferramenta incrivelmente valiosa, mesmo para meros desenvolvedores, considere o conselho da empresa de Jared Spool, a User Interface Engineering:
Também recomendo a leitura do Preocupações comuns sobre prototipagem em papel se o senhor ainda estiver em dúvida.
Mas o que acontece quando o senhor supera o protótipo de papel? Jensen Harris, um dos principais designers de interface do usuário da equipe do Office 2007, primeiro me apresentou à prototipagem do PowerPoint:
Usamos o PowerPoint como uma espécie de versão melhorada do [Office 2007] protótipos em papel. Essa técnica tem várias vantagens: os protótipos podem ser feitos para parecerem um pouco interativos, porque o conteúdo é eletrônico e pode ser modificado mais facilmente do que o papel e (o melhor de tudo) o participante de usabilidade usa o mouse e está no computador, portanto, parece natural para ele.
É claro que não precisa ser o PowerPoint. Use a ferramenta que o senhor preferir, desde que seja não uma ferramenta de desenvolvimento. O senhor não quer algo muito poderoso. O que o senhor deseja é uma interatividade leve e, ao mesmo tempo, simples e direta para mudanças iterativas rápidas. Esse é o próximo passo lógico em relação à prototipagem em papel.
É muito mais fácil compartilhar esse artefato digital em uma equipe distribuída do que compartilhar um monte de papel físico. Se o senhor estiver curioso para saber mais sobre os detalhes da prototipagem do PowerPoint, vá em frente:
A busca pelo desenvolvimento de software UI-First é mais importante do que qualquer ferramenta específica. Use papel, use PowerPoint, use o Keynote, use o que fizer sentido para o senhor. Desde que o senhor evite, nas palavras de Manuel Clemente, despejar concreto muito cedo.
Como sua equipe pratica o desenvolvimento de software UI-First?