Um grupo de profissionais se reuniu em 2001 para discutir sobre os melhores métodos de desenvolvimento de softwares. Tal consenso deu origem ao Agile Manifesto, o qual se encontra online até hoje.
No Agile Manifesto encontram-se 4 pilares e 12 princípios para que os projetos de desenvolvimento fossem mais produtivos. Priorizando alguns aspectos como: confiança, abertura e comunicação.
Mas como que um Manifesto escrito, em um primeiro momento, para facilitar os processos de desenvolvimento, pode ajudar também o UX Design? Continue conosco e entenda como isso é possível!
Filosofia ou metodologia Agile?!
O documento mais importante sobre a filosofia Agile ainda está na internet. O Agile Manifesto está no ar desde 2001 e nele encontramos os principais pilares e valores que sustentam essa filosofia.
Mas por que filosofia e não metodologia?
Metodologia envolve métodos, procedimentos e regras específicas para atingir um determinado resultado final. E o Agile Manifesto não prevê nenhum método ou procedimento específico.
Por conta disso, é correto dizer que Agile está mais para uma filosofia do que para uma metodologia. O Manifesto indica algumas questões-chave que ajudam na escolha de uma metodologia que mais se alinha ao Agile.
A partir desse entendimento, vamos prosseguir para os pilares e princípios do Agile Manifesto.
Os 4 pilares
O Manifesto descreve 4 pilares:
- As interações dos indivíduos são mais importantes do que processos ou ferramentas: devemos priorizar a interação entre as pessoas e questionar qualquer processo ou ferramenta que atrapalhe tais interações. Se é mais fácil sentar ao lado de uma pessoa e facilitar a conversa, por exemplo, por que o deveríamos fazê-lo por e-mail?
- Produtos e serviços funcionais são mais importantes do que documentação pesada: não há sentido em perder tempo elaborando uma documentação/especificação de um produto que não funciona direito. É preferível ter um produto excelente e documentar o mínimo necessário, sem informações desnecessárias;
- A colaboração com o cliente é mais importante do que a negociação de contrato: para evitar grandes frustrações, o cliente deve colaborar com o desenvolvimento de seu produto. É importante haver reuniões de alinhamento durante o desenvolvimento para que eventuais correções de rota sejam feitos. A co-criação é a palavra-chave desse pilar.
- Ser capaz de responder às mudanças é mais importante do que seguir um plano: é normal surgirem dúvidas e situações inesperadas durante um projeto. O quarto pilar do Manifesto coloca a importância de conseguir corrigir seu plano de projeto levando em consideração essas mudanças. Dessa forma, garantir que o produto final estará cumprindo com as expectativas do seu usuário.
Os pilares descritos acima são os alicerces para os 12 princípios descritos no Agile Manifesto, os quais vemos a seguir.
Dica de Leitura: OKR - Defina, Acompanhe e Alcance seus Objetivos
Os 12 princípios
Cada um dos princípios está relacionado com um dos pilares descritos acima.
Princípios do pilar nº 1
- Desenvolver os produtos e serviços envolvendo times motivados: deixar claro os objetivos do projeto e confiar no trabalho da equipe;
- Conversas face a face: mais interação entre as pessoas evita ruídos na comunicação, evitando erros no projeto;
- Melhores soluções emergem de times auto-organizáveis: dar autonomia para os times tomarem as melhores decisões possíveis, e trabalhar com uma equipe multidisciplinar;
- Reunir para refletir e corrigir: os times capazes de parar para conversar sobre o andamento do projeto são mais eficazes em efetuar as correções necessárias.
Princípios do pilar nº 2
- Realizar entregas relevantes em ciclos curtos: uma maneira ágil de verificar se o desenvolvimento do projeto está cumprindo as expectativas é quebrar o resultado final em pequenas entregas. Para cada uma dessas entregas, o prazo deve ser o menor possível sem afetar a qualidade do produto e a qualidade de trabalho da equipe;
- Um produto funcional é a melhor maneira de medir o sucesso do seu time: avaliar a equipe e remunerá-la de acordo com suas capacidades e excelência na entrega de produtos funcionais;
- Criar um ambiente onde a entrega de valor seja constante: interação entre todas as partes do projeto — cliente, UX Design, programadores e usuários — deve ser constante. Dessa forma, as melhorias do produto também serão constantes;
- Dar atenção constante aos detalhes técnicos e de Design: a preocupação com a qualidade das entregas melhora a qualidade de execução dos times.
Princípios do pilar nº 3
- A prioridade do time é satisfazer o cliente com entregas antecipadas e contínuas, com valor percebido: quanto mais cedo entregarmos uma parte do produto para o cliente, mais cedo ele nos dará o feedback;
- Todas as pessoas envolvidas no projeto devem trabalhar juntas: a interação entre cliente, UX, programadores e usuários devem ser constantes. Dessa forma, elimina-se os ruídos na comunicação.
Princípios do pilar nº 4
- Solicitações de mudança, mesmo que tardias, são sempre bem vindas: não importa o momento da solicitação da mudança. O importante é garantir a satisfação do cliente e re-priorizar as atividades conforme forem necessárias;
- Simplicidade é a arte de minimizar o trabalho futuro: planejamento e organização das prioridades. Dessa forma, simplificamos o método de trabalho.
Melhores práticas para aplicar o Agile
Observamos que o Agile Manifesto reúne pilares e princípios. Mas como aplicamos isso na rotina de trabalho?
Confira abaixo algumas práticas que estão alinhadas com a filosofia Agile.
- Contrato Social: é a descrição das regras de trabalho da sua equipe. O próprio time é quem escreve esse documento. Contempla diversas informações como formas de trabalho, horários, pausas e etc;
- Reuniões Standup: reuniões curtas e feitas em pé. A ideia é ser rápido e produtivo, sem dar margem para distrações ou interrupções;
- Cronograma das entregas: possibilitando quebrar o projeto em pequenos ciclos e entregas;
- Retrospectiva: discussão entre ciclos, abordando dúvidas, acertos, erros e novas ideias para o próximo ciclo de entrega;
- Showcase: apresentação do projeto para o cliente. Lembrando que a apresentações devem ser feitas durante todo o projeto para garantir as expectativas e reduzir as frustrações;
- Jornada do usuário: para entender as interações do usuário com o produto e engajar a equipe com sua história.
Listamos aqui apenas algumas práticas para alcançar o estilo Agile. Contudo, existem diversas outras que podem funcionar para a sua equipe e empresa. O importante é sempre ter em mente os pilares e princípios e escolher práticas aderentes a eles.
Dica de Leitura: Jornada do Usuário - Por Que é Tão Importante em UX Design?
Metodologias que trazem agilidade
Conforme explicado acima, Agile não é uma metodologia, mas uma filosofia.
Uma filosofia composta por pilares e princípios; e que ajuda na escolha de um método ágil.
Nesse sentido, existem alguns métodos bem difundidos no mercado e que estão bastante alinhados com o Manifesto Ágil:
- Kanban
- Scrum
- Lean UX
Kanban
A palavra Kanban siginifica, literalmente, "placa" e foi criada pela empresa japonesa Toyota. Tinha o objetivo de demonstrar as etapas da produção para obter melhor controle sobre ela.
Para utilizar essa metodologia basta desenhar 3 colunas — preferencialmente em um quadro — "a fazer", "fazendo"e "feito". Descreva, então, todas as atividades "a fazer" em post-its e cole na coluna correspondente. Conforme o projeto for evoluindo mude os post-its de coluna para "fazendo" e, por fim, "feito".
Kanban é uma metodologia simples, mas que ajuda bastante na visibilidade das atividades. É possível ter uma visão geral do projeto, saber o que precisa ser feito e prever algum tipo de problema no percurso.
Scrum
A metodologia Scrum é muito utilizada em projetos de desenvolvimento de Software. Contudo, é uma metodologia que pode ser aplicada em projetos de qualquer área. Dessa forma, é muito comum encontrar projetos de finanças, administração, RH, que utilizam essa metodologia.
O Scrum é dividido em 3 grandes blocos: papéis e responsabilidades, atividades e documentação.
Papéis e responsabilidades
Nesse bloco são definidas os seguintes responsáveis no projeto:
- Projetct Owner: responsável pela interação entre o cliente e o time;
- Scrum Master: responsável por manter a metodologia funcionando. É ele quem vai adaptar as atividades e liderar a equipe;
- Time Scrum: as pessoas que compõem o time. Não possuem papéis definidos dentro da equipe. Geralmente são profissionais multidisciplinares.
Atividades
A metodologia Scrum prevê algumas atividades fundamentais:
- Planejamento do Sprint: Sprints são ciclos de trabalho que duram entre 2 e 4 semanas. O planejamento de Sprints enumera as atividades e o tempo estimado para a realização de cada uma delas;
- Daily Scrum: reuniões diárias e rápidas para fazer o acompanhamento das atividades do projeto. A presença total do time é importante;
- Retrospectiva: segue o mesmo conceito já abordado no começo desse artigo. São reuniões ao final de cada Sprint para captar feedbacks. É importante colaborar com todo tipo de informação, erros, acertos e melhorias para o próximo sprint.
Documentação
O Agile Manifesto não trata a documentação pesada como prioridade. O Scrum possui, portanto, documentações mais simples e ágeis:
- Product Backlog: lista de prioridades escrita pelo Product Owner. É uma documentação aberta, ou seja, sempre aceita novas atividades;
- Sprint Backlog: lista das atividades a serem cumpridas durante um Sprint. Ela é desenvolvida em conjunto pelo Product Owner e pelo Scrum Master;
- Definição de pronto: todas as tarefas devem ter uma definição de pronto, ou seja, quando elas são consideradas concluídas. Dessa forma, é possível calcular uma estimativa de prazo mais assertiva.
Lean UX
O dia a dia de uma equipe de UX Design envolve diversas documentações como: fluxogramas, wireframes, sitemaps, taxonomia, etc. O desenvolvimento dessas documentações, muitas vezes por simples burocracia, pode ser demorado e atrasar o processo de lançamento de um produto.
Para resolver essa questão, é que existe o Lean UX.
Lean UX é uma metodologia de simplificação de processos de validação e aprovação. Ela preza por documentações simples e por uso de protótipos para facilitar o entendimento do produto/interface o qual será lançado.
A agilidade do Lean UX está na capacidade de conseguir apresentar o produto/interface o mais rapidamente para todo o time, capturar feedbacks, corrigir e testar com o usuário.
Ao invés do time investir tempo montando um fluxograma em um software, por exemplo, pode-se desenhar rapidamente o fluxo em um quadro branco e chamar todo o time para validar esse processo.
Dessa forma, o objetivo do Lean UX é criar experimentos e colocar para o usuário testar o mais rápido possível, e assim poder validar (ou invalidar) as hipóteses que foram criadas, visando evitar desperdício de recursos (tempo, dinheiro, esforços).
Kanban, Scrum e Lean UX são apenas três exemplos de metodologias ágeis. Não se prenda a somente esses exemplos. Procure novas metodologias que se encaixem melhor com os seus objetivos. Afinal, ser ágil é isso.
Dica de Leitura: Lean UX - O Que é e Por Que Usar Em Seus Projetos de UX?
Os benefícios da filosofia Agile
Em uma entrevista realizada pela NN/g (Nielsen Norman Group) foram identificados alguns benefícios básicos da filosofia Agile por entre os entrevistados:
- Transparência: problemas são encontrados antecipadamente e as melhorias são entregues mais rápido. Antes do Agile, o desenvolvimento era feito sem colaborações e os problemas somente apareciam no final do projeto;
- Melhor uso do tempo: os times ficam mais concisos e respeitam a agenda das reuniões. Conforme a equipe foi se acostumando e implementando o Agile, se tornaram mais precisos com a questão do timing. Tanto de reuniões como dos prazos de entrega;
- Melhor comunicação: para a maioria dos times entrevistados, um dos maiores benefícios é a melhoria na comunicação. Uma vez que o Agile promove mais interação e colaboração entre os envolvidos no projeto, a comunicação se torna uma ferramenta essencial.
Apesar dos benefícios serem uma certeza, não se iluda. É preciso paciência e persistência para aplicar a filosofia Agile em seu time e na sua empresa. Os entrevistados admitiram que o começo não foi fácil. Mas depois de um tempo, implementando, melhorando e integrando o time, ninguém quer voltar aos processos de desenvolvimento tradicional.
Contudo, vale lembrar que o Manifesto Agile foi concebido para ajudar, principalmente, as equipes de desenvolvimento de softwares. Em nenhum momento, o UX Design foi incluído nesse Manifesto. Sendo assim, é possível para o UX Designer utilizar o Agile em seus projetos?
Agile em UX Design, é possível?
Entendemos que a filosofia Agile consiste em trazer novos olhares para os processos e métodos que envolvem o gerenciamento de um projeto. Dessa forma, algumas práticas para o Agile envolvem desenvolvimentos em prazos menores.
Product Designers sentem dificuldade em se adaptar à filosofia Agile, pois seus processos — pesquisas, desenvolvimento e testes — podem ser mais demorados, por levarem em consideração o Design Centrado no Usuário.
No entanto, há Product Designers que conseguiram sobrepor essas dificuldades e trabalham com sucesso em um ambiente Agile. Infelizmente, parte dessa conquista está nas mãos das próprias organizações.
Existem alguns fatores dentro das empresas que facilitam o ambiente Agile para UX Design.
- Cultura Do Design: se existe uma valorização do Design dentro da empresa, com certeza os processos de UX são priorizados e levados em consideração em um ambiente Agile;
- Liderança: em uma empresa onde os Product Designers assumem papéis de liderança, ou mostram tais habilidades, são empresas mais suscetíveis a inclusão de UX nos processos ágeis;
- Flexibilidade: os princípios e pilares do Manifesto Agile definem exatamente a flexibilização de processos para garantir agilidade. O UX Design trabalha melhor em uma empresa cujos processos de Agile são mais flexíveis. Afinal, seria irônico construir processos ágeis imutáveis e inflexíveis.
- Interação da equipe: UX Design deve conseguir trabalhar em equipe com os desenvolvedores. Ambas as partes devem entender os objetivos do projeto bem como os objetivos individuais de cada área. Dar espaço e confiança para que o UX Design trabalhe em conjunto com o time, garante um ambiente favorável e ágil.
Apesar dos fatores acima serem organizacionais, existem algumas dicas que o Product Designer pode utilizar para garantir a melhoria da experiência do usuário em um ambiente Agile. Confira o próximo tópico!
10 dicas para melhorar o UX Design dentro de uma organização Agile
A NN/g compilou as seguintes 10 dicas para conseguir melhorar a experiência do usuário em um ambiente Agile.
1) Invista tempo no planejamento e na construção da Jornada do Usuário
Planejar e criar a Jornada do usuário no começo do projeto fará com que haja mais colaboração dos Stakeholders nesse processo. Dessa forma, toda a equipe estará alinhada com os objetivos antes mesmo de começarem as atividades.
2) Conduza as atividades de UX a frente dos Sprints
Os sprints são os intervalos de tempo entre um ciclo de entrega e o próximo. Geralmente duram em torno de duas semanas. Com esse prazo, torna-se difícil conduzir todas as atividades necessárias de UX – pesquisa, criação de wireframes, testes. Portanto, é importante que essas atividades sejam feitas em um ciclo a frente do ciclo de desenvolvimento. Por exemplo, no sprint 1 é feito todo o trabalho de UX. Dessa forma, cabe no sprint 2 a condução do desenvolvimento em si.
3) Cultive uma cultura colaborativa
Desenvolver uma cultura colaborativa é crucial para o sucesso. O UX Design deve contribuir para melhorar a comunicação e a colaboração dos envolvidos no projeto.
4) Pense em iteração, não em perfeição
A questão não é acertar de primeira, mas errar e consertar o erro rapidamente. A melhoria deve ser contínua, portanto falhe, conserte e repita.
5) Participe de reuniões Standup
As reuniões Standup geralmente trazem feedbacks e status das atividades. Portanto, participar dessas reuniões é essencial para ficar a par dos assuntos e poder direcionar seus esforços para as prioridades corretas.
6) Faça das pesquisas eventos para todo o time
Os testes com usuário são importantes para unir equipes e influenciar decisões. O UX Designer deve integrar a equipe com as atividades de pesquisa. Tomar decisões baseadas em testes é importante para o sucesso do projeto e todo o time deve entender sua importância.
7) Garanta o engajamento dos Stakeholders
Difundir a cultura do UX garante o entendimento por todas as partes da importância do Product Design. Dessa forma, o UX consegue trabalhar melhor e se estabelecer como parte do ambiente.
8) Defina papéis e responsabilidades
Uma vez que o UX não estava presente na filosofia Agile, é importante gerenciar as expectativas definindo os papéis e responsabilidades de cada membro do projeto. Dessa forma, toda a equipe saberá da importância de cada membro no projeto.
9) Gerencie treinamentos
Para garantir que todos entendam seus papéis e o papel do UX dentro do ambiente Agile, se faz importante oferecer treinamentos rápidos de alinhamento. Não há retrabalho ou perda de tempo quando a equipe sabe exatamente seus objetivos e responsabilidades.
10) Modifique seu método até que funcione
Conforme princípios do Manifesto, teste seus métodos e modifique-os para que atendam suas necessidades da melhor forma. Elimine tudo aquilo que não agrega valor e que desperdice tempo.
Dica de Leitura: Dashboard: Como Criar o Design de Dados e Informações?
A filosofia Agile pode ser difícil de ser seguida e depende de diversos fatores. Mas, com certeza, é um pensamento que traz muitos benefícios para os profissionais e para a empresa.
Apesar dessa filosofia ter sido elaborada, em princípio, para desenvolvedores, ela pode ser muito útil para os UX Designers. É necessário bastante esforço e paciência, mas os resultados positivos valem a pena.