Implementando uma interface do usuário
Esta seção descreve algumas das tarefas associadas à implementação de uma interface do usuário para um aplicativo do Windows.
Protótipo
As interfaces do usuário (UI) devem ser projetadas a partir da lista de cenários e requisitos do usuário que foram identificados na etapa de análise do usuário.
Os protótipos podem ser tão simples quanto esboços a lápis ou tão complexos quanto maquetes de tela interativas. Mantenha todos os trabalhos anteriores, pois pode ser útil para mostrar aos stakeholders as alternativas que foram consideradas e explicar por que elas foram descartadas.
Tente limitar esta etapa a dois ou três protótipos, no máximo. Os protótipos não precisam ser exaustivos; eles só precisam simular efetivamente a experiência de usar o aplicativo real.
Demonstre os protótipos e acompanhe o feedback do usuário para ajudar a identificar as tendências gerais de usabilidade. Se for possível, descarte os protótipos menos bem-sucedidos e incorpore o máximo de feedback útil possível em um ou mais dos protótipos restantes. Repita esse processo conforme o tempo e os recursos permitirem.
Há várias ferramentas de prototipagem disponíveis, incluindo o SketchFlow no Microsoft Expression Studio 3, o editor de layout no Microsoft Visual Studio e até mesmo o Microsoft Paint.
Constructo
Ao implementar a interface do usuário para um aplicativo, considere o seguinte:
Estrutura de comando
Determine se deseja implementar uma estrutura de comando tradicional com base em menus e barras de ferramentas ou uma estrutura de comando alternativa baseada no Windows Ribbon Framework. Para obter mais informações, consulte Menus, barras de ferramentas e Windows Ribbon Framework.
Janelas e caixas de diálogo
Com base no trabalho de criação de protótipos e design da interface do usuário, implemente as janelas do aplicativo, incluindo a janela principal, janelas filhas, caixas de diálogo e caixas de mensagem. Siga as Diretrizes de experiência do usuário para determinar quais estilos e controles usar nas janelas e caixas de diálogo. Para obter mais informações, consulte Windows, caixas de diálogo e controles do Windows.
Controles personalizados
Crie novos controles personalizados somente se você não puder obter a funcionalidade desejada de um dos controles padrão do Windows. Novos controles personalizados são muito caros de desenvolver e exigem trabalho adicional para torná-los acessíveis. Se seu aplicativo exigir controles personalizados, verifique se eles estão adequadamente expostos a tecnologias assistivas. Para obter mais informações, consulte Controles personalizados e API de automação do Windows.
Suporte para dispositivos de entrada de usuário padrão
A maioria dos aplicativos do Windows precisa oferecer suporte à entrada do usuário por meio do teclado e do mouse. A capacidade de navegar e acessar todas as funcionalidades do aplicativo apenas pelo teclado é especialmente importante para usuários com deficiência visual ou com problemas de mobilidade. Para obter mais informações, consulte Entrada do usuário e o eBook Software de engenharia para acessibilidade.
Estilos visuais, animações e efeitos visuais
O Windows inclui várias tecnologias que você pode usar para adicionar interesse visual e diferenciar a interface do usuário da de outros aplicativos. Isso inclui especificar os estilos visuais dos controles, adicionar animações aos elementos da interface do usuário e implementar vários efeitos visuais na interface do usuário. Para obter mais informações, consulte Estilos visuais, Gerenciador de animação do Windows e Gerenciador de janelas da área de trabalho.
Simplificar
Uma experiência de usuário bem-sucedida depende da abordagem, perspectiva e suposições do desenvolvedor durante o processo de design. Alcançar uma compreensão básica de como um aplicativo pode ser usado pelo público-alvo requer a capacidade de pensar amplamente, além das restrições do que se adequa às necessidades do desenvolvedor. Investir esse tempo, esforço e pesquisa no início de um projeto renderá dividendos no final.
Reduzir, Reutilizar, Desembaraçar
Os recursos só melhoram um produto se forem realmente usados. Em muitos casos, a proliferação de recursos pode introduzir complexidade com a adição de mais ícones, itens de menu, barras de ferramentas e caixas de diálogo, interferindo na eficiência e na produtividade em vez de agregar valor.
A melhor interface do usuário é nenhuma interface do usuário
A interface do usuário implica que o usuário precisa interagir com o aplicativo para fazer algo acontecer. No caso ideal, nenhuma interação é necessária. Do ponto de vista do usuário, ele simplesmente funciona. Se for possível adicionar um recurso que remova com segurança uma interação do usuário, isso tornará a experiência do usuário significativamente melhor.
Menos interface do usuário é melhor interface do usuário
Em muitos casos, não é possível remover completamente a interação da interface do usuário da experiência do usuário. No entanto, quanto menos interação do usuário exigida por um aplicativo, melhor.
Identifique as atividades mais comuns e essenciais que os usuários executarão com o aplicativo e torne essas funções as mais proeminentes na interface do usuário. Relege outras funções e atividades a um status menor, visualmente, hierarquicamente ou por meio de configurações opcionais do aplicativo e preferências do usuário.
Substituir em vez de adicionar
A regra de conservação da interface do usuário afirma que você adiciona algo somente quando pode remover algo. Essa regra força um desenvolvedor a pensar criticamente sobre um novo recurso, considerando o impacto que o recurso tem em toda a experiência do usuário.
Novos recursos não devem ser promovidos porque são novos: não confunda marketing com usabilidade. Para ajudar os usuários a encontrar novos recursos em seu produto, adicione um item ao menu Ajuda que descreva as alterações que ocorreram desde a última versão do aplicativo.
O usuário é um recurso limitado
Quanto mais funcionalidade for exposta a qualquer momento, mais difícil será para um usuário encontrar a funcionalidade de que precisa.
É rude interromper
Quando um aplicativo exibe uma caixa de diálogo, ele força o usuário a parar o que quer que esteja fazendo e prestar atenção em outra coisa. Se for possível, remova completamente a necessidade de uma caixa de diálogo, evitando casos de erro e outras experiências de usuário perturbadoras. Para obter mais informações sobre diretrizes de mensagens, consulte Mensagens.
Simples pode ser poderoso
Uma interface do usuário simples não implica falta de funcionalidade. Normalmente, o resultado de uma interface do usuário mais simples é uma curva de aprendizado encurtada, maior eficiência e maior produtividade. Isso permite que um usuário aumente sua proficiência com o aplicativo.
Interface do usuário consistente é boa interface do usuário
Geralmente, é recomendável buscar consistência em toda a interface do usuário de um aplicativo. Fornecer uma interface do usuário consistente permite que um usuário se torne mais proficiente com um aplicativo em um tempo muito menor. Eles são capazes de aplicar seu conhecimento existente do aplicativo a diferentes situações e usar funcionalidades desconhecidas com confiança.
Em casos raros, a consistência não oferece nenhum benefício para o usuário e pode até mesmo degradar a experiência do usuário. Não torne a interface do usuário consistente se essa consistência prejudicar a capacidade de realizar uma tarefa. A consistência por si só não garante usabilidade. Engana-se quem pensa que a consistência na interface levará a um bom design.
Por exemplo, a interface do usuário do videogame normalmente é muito específica para o tipo de jogo. Tentar projetar uma interface de usuário genérica que funcione bem para dois jogos especializados, um que requer um volante e outro que funcione melhor com um joystick e botões, provavelmente não será bem-sucedido para nenhum dos jogos. Na melhor das hipóteses, é provável que se consiga um meio termo que não seja bom para nenhum dos dois.
Ter bons dados sobre como as coisas são usadas é a chave para tomar essa decisão. Seja claro sobre os prós e contras de cada compensação (velocidade versus confiabilidade, facilidade de aprendizado versus proficiência de especialistas, consistência global versus otimização local) e tome as melhores decisões para o recurso em relação a todo o produto.
Design é escolher como falhar: otimizar para uma coisa significa falhar para outra. A chave para um bom design de interface do usuário é ser capaz de decidir quais características do aplicativo são as mais importantes e quais podem ser cortadas.