Sorry, this entry is only available in Brazilian Portuguese.

custom-programming-design-project-managementOlá pessoal! Aproveitando a deixa do Luiz tomaz sobre os 10 Mandamentos do Agile Tester, irei fazer um post parecido. Mas começo o post me corrigindo. Não são mandamentos como o título nos mostra, eu diria que são 10 filosofias que designers podem seguir para que não aconteçam alguns problema pelo que eu e vários agile designers já passamos. Podem funcionar para o seu negócio, mas podem não funcionar. São pequenas percepções que tive trabalhando por mais de 2 anos como designer em projetos ágeis e também lendo artigos de outros designers em semelhantes situações.

Então, começaremos enunciando o primeiro mandamento:

1 – Faça o cliente um membro de sua equipe

Em projetos ágeis sabemos da importância do cliente como membro da equipe para aliar os interesses. Com design não é diferente, faça com que o cliente sinta-se como parte de sua equipe mostre a evolução do seu trabalho. Aproveitando isso, podemos enunciar o segundo mandamento.

2 – Deixe o cliente participar e acompanhar todo o processo de criação

Não espere ter um monte de trabalho pronto para mostrar tudo de uma vez ao seu cliente. Faça isso iterativamente como todo projeto ágil deve ser. Mostre os esboços das ideias, nem que sejam discutidos com papel e caneta. Mas mostre algo.

3 – Crie modelos, faça diagramas.

Logo após a fase de concepção, ao tornar concreto o que o cliente espera que você crie, faça modelos. Crie diagramas que ajudem o cliente enxergar as coisas de forma mais concreta. Eles podem ajudar ao cliente entender a criação das telas do sistema. Podem ajudar a equipe de desenvolvimento a criar uma ordem para a codificação também. Podem ajudar a definir o comportamento do sistema. 

4 – O feedback é seu amigo

Para você ter certeza que as ideias estão alinhadas, tanto do cliente, quando da equipe de programação, quanto do design, procure saber a opinião de todos. Procure saber se todos estão no caminho certo, se os comportamento que você definiu podem ser realmente codificados (não espere ser tarde demais para descobrir que existem problemas arquiteturais que não permitem criar essa ou aquela funcionalidade).

5 – Alinhe pensamentos com a equipe de desenvolvimento. Se beneficie da mentalidade de integração contínua

Não deixe nada para amanhã. Pergunte a equipe de desenvolvimento quais serão os próximos passos do sistema. Esteja sempre integrado a equipe de desenvolvimento. Tente ver suas telas funcionando na aplicação final e veja se o comportamento está do jeito esperado.

6 – Faça testes frequentemente.

Teste as páginas. Em meus dias como agile designer tivemos muito retrabalho porque uma determinada tela não encaixava com determinados dados ou ficava ruim em determinadas resoluções. Se seu sistema não precisa ser responsivo, teste ele em todas as resoluções permitidas. E faça isso antes de mandar o design para a equipe de codificação.

7 – Designers também devem codificar

É ingênuo pensar que mandando uma tela como uma série de imagens, medidas, estilos de fontes e cores, ela ficará idêntica a idealizada pelo designer. Vários artefatos mudarão de lugar, comportamentos deixarão de existir e sem contar que a organização pode mudar. Portanto, codifique suas telas. Faça com que a equipe de codificação não precise fazer muita coisa em relação a interface visual do sistema.

8 – Documente coisas complicadas

Como você codificará a interface visual, talvez possam aparecer comportamentos complicados, e seja necessário muitas linhas de código para fazê-lo. Documente bem essas partes para que a equipe de codificação saiba exatamente o que você fez.

9 – Prove codificando

Nunca assuma que seu design funciona. Prove que funciona codificando. Faça o modelo funcional das suas telas utilizando HTML, CSS e javascripts.

10 – Agile designers não precisam vislumbrar como a aplicação inteira ficará

Em meu tempo de experiência aprendi que não é necessário fazer uma série de artefatos no inicio do projeto. Por exemplo, não é necessário criar todos os botões, todas as janelas, todos os inputs, antes de criar as telas. Verifique com o cliente as demandas mais importantes e conforme forem surgindo estes elementos você os cria e utiliza nas demandas futuras.