Aqui vão os 10 principais factores a ter em conta no desenvolvimento de um layout. Foi desenvolvido por Jakob Nielsen e chama-se “heurística“, porque são considerados como recomendações no desenvolvimento de uma aplicação.

1) Feedback
– O sistema deve informar continuamente o utilizador sobre o que está fazendo.
– 10 segundos é o limite para manter a atenção do utilizador.

2) Falar a linguagem do utilizador
– A terminologia deve ser baseada na linguagem do utilizador e não orientada ao sistema. As informações devem ser organizadas conforme o modelo mental do utilizador.

3) Saídas claramente demarcadas
– O utilizador controla o sistema, ele pode, a qualquer momento, abortar uma tarefa, ou desfazer uma operação e retornar ao estado anterior.

4) Consistência
– Um mesmo comando ou acção deve ter sempre o mesmo efeito.
– A mesma operação deve ser apresentada na mesma localização e deve ser formatada/apresentada da mesma maneira para facilitar o reconhecimento.

5) Prevenir erros
– Evitar situações de erro.
– Conhecer as situações que mais provocam erros e modificar a layout para que estes erros não ocorram.

6) Minimizar a sobrecarga de memória do utilizador
– O sistema deve mostrar os elementos de diálogo e permitir que o utilizador faça suas escolhas, sem a necessidade de lembrar um comando específico.

7) Atalhos
– Abreviações, teclas de função, duplo clique no rato, função de volta em sistemas hipertexto.
– Atalhos também servem para recuperar informações que estão numa profundidade na árvore navegação a partir da interface principal.

8) Diálogos simples e naturais
– Deve-se apresentar exactamente a informação que outilizador precisa no momento, nem mais nem menos.
– A sequência da interacção e o acesso aos objectos e operações devem ser compatíveis com o modo pelo qual o utilizador  realiza suas tarefas.

9) Boas mensagens de erro
– Linguagem clara e sem códigos.
– Devem ajudar o utilizador a entender e resolver o problema.
– Não devem culpar ou intimidar o utilizador.

10) Ajuda e documentação
– O ideal é que um software seja tão fácil de usar (intuitivo) que não necessite de ajuda ou documentação.
– Se for necessária a ajuda deve estar facilmente acessível on-line.