Como usar fluxos de trabalho ágeis para diversão e lucro

Todos odeiam processos, mas, sem um fluxo de trabalho estabelecido, você vai rapidamente para lugar nenhum.

Dan Radigan Por Dan Radigan
Buscar tópicos

Resumo: Um fluxo de trabalho ágil é uma série de estágios que as equipes ágeis usam para desenvolver um aplicativo, desde a concepção até a conclusão.

Toda equipe de software tem um processo que é usado para concluir o trabalho. Normalizar esse processo–por exemplo, estabelecê-lo como um fluxo de trabalho–torna-o mais claramente estruturado e repetível, o que, em troca, faz dele escalável. Na Atlassian, usamos uma abordagem iterativa com o gerenciamento de fluxo de trabalho, pois isso nos ajuda a atender nossas metas mais rapidamente e exemplifica a cultura da nossa equipe. Somos especialistas no gerenciamento de fluxo de trabalho ágil (se podemos dizer isso de nós mesmos) e queremos ajudar você a se tornar especialista também.

Introdução aos fluxos de trabalho ágeis

Ao implementar um fluxo de trabalho para a equipe, sempre comece simples. Lute contra a tentação de passar semanas pensando demais na engenharia. Fluxos de trabalho excessivamente complexos são difíceis de entender e adotar – sem mencionar a adaptação. Para equipes de software, recomendamos esses estados básicos do fluxo de trabalho:

Para fazer

Trabalho que não foi iniciado

Em andamento

Trabalho que está sendo feito pela equipe

Revisão de código

Trabalho que está concluído, mas está esperando revisão

Concluído

Trabalho que está finalizado e atende a definição da equipe de concluído

Em um rastreador de itens, as alterações de um status para o outro são feitas por transições que estruturam o fluxo de trabalho.

Fluxo de trabalho ágil | Instrutor ágil da Atlassian

Algumas equipes de software incluem estados adicionais no fluxo de trabalho que ajudam a monitorar o status do trabalho de modo mais preciso.

Aguardando GQ

Trabalho que foi implementado, mas ainda está aguardando uma revisão do testador (consulte nosso artigo sobre teste ágil para mais informações).

Pronto para mesclar

O código que foi revisado e está pronto para ser mesclado na ramificação principal ou de lançamento.

Os diversos estados do fluxo de trabalho não precisam ser tratados cada um por uma pessoa diferente. À medida que uma equipe ágil amadurece, os desenvolvedores lidam com mais e mais trabalho – desde o design até a entrega. Afinal, uma equipe autônoma que pode lidar com trabalhos heterogêneos é uma das características da agilidade.

Fale sobre cada dificuldade durante a retrospectiva da equipe, lembrando sempre que cada equipe pode ter valores um pouco diferentes dependendo do projeto, da pilha de tecnologia e do método de trabalho. É por isso que é importante escolher um rastreador de itens que tenha flexibilidade na configuração do fluxo de trabalho. Muitas equipes comprometem o estilo de trabalho para adequação a um determinado conjunto de ferramentas, o que é frustrante para todos. Com isso, os membros da equipe, às vezes, passam a evitar o uso da ferramenta, criando problemas e gerando frustração na equipe. E, se a motivação diminui, a produtividade cai. É um golpe duplo que todo mundo quer evitar.

As equipes novas no método ágil, ou que não têm habilidades multifuncionais, em geral acabam com "pequenas cascatas" em seu fluxo de trabalho. Por exemplo, o departamento de design começa um item de trabalho com um modelo. A equipe de desenvolvimento faz a implementação. O teste confirma a qualidade. Cada estado fica bloqueado até o estado anterior ser concluído. Soa familiar? Isso é cascata. Mas podemos fazer melhor com fluxos de trabalho ágeis para liberar a equipe e facilitar o desenvolvimento.

Otimize para um fluxo de processos ágil

Quando estiver confortável com o fluxo de trabalho básico e estiver pronto para fazer a transição para um fluxo de processos ágil, crie status para cada tipo de trabalho no processo da equipe. Concepção, projeto, desenvolvimento, revisão de código e teste funcionam de jeitos diferentes e podem ter status individuais. Use um conjunto enxuto de status que comunique com clareza em que fase cada parte do trabalho está.

Os status do projeto também podem ser compartilhados com o resto da empresa. Ao criar um fluxo de processos ágil, pense sobre quais métricas são importantes para relatórios e o que os membros de fora da equipe podem estar interessados em saber. Por exemplo, um fluxo de trabalho bem projetado responde às seguintes perguntas:

  • Que tipo de trabalho a equipe concluiu?
  • A lista de pendências de trabalho está aumentando ou está no mesmo ritmo que a equipe?
  • Quantos itens estão em cada status?
  • Há obstáculos que estão diminuindo a velocidade da equipe?
  • Quanto tempo leva para conclusão de uma tarefa média?
  • Quantos itens de trabalho não foram aprovados em nossos padrões de qualidade na primeira vez?

A próxima etapa na otimização do fluxo de trabalho é garantir a constância em todo o processo. Os limites de trabalho em andamento (WIP) estabelecem os números mínimo e máximo de itens em um estado específico do fluxo de trabalho, garantindo que cada estado tenha trabalho suficiente para manter a equipe toda em atividade, mas não a ponto fazer com que todos percam o foco e tenham que fazer malabarismos com as prioridades. Com os limites de WIP, é rápido ver quais processos atrasam o trabalho geral no pipeline. À medida que a equipe aprende a otimizar os limites do trabalho em andamento, o rendimento aumenta. (Consulte o artigo sobre limites de WIP para mais informações.)

Os desafios de escalar um fluxo de processos ágil

Empresas com várias equipes ágeis enfrentam desafios especiais com os fluxos de trabalho. Muitas vezes, as equipes querem otimizar o fluxo de trabalho para refletir sua cultura ou processo exclusivo. Dá para entender. Mas podem surgir problemas quando várias equipes que trabalham no mesmo projeto usam processos diferentes.

As equipes ágeis que trabalham juntas podem se beneficiar do compartilhamento do mesmo fluxo de trabalho. Usar o mesmo fluxo de trabalho pode facilitar a transição de trabalho entre essas equipes, porque elas usam as mesmas convenções para definir e entregar o trabalho. Criar um processo comum envolve, muitas vezes, concessões dos dois lados. Isso é bom! Elas vão aprender umas com as outras e ter um fluxo de trabalho melhor no final.

Dica profissional

Com o Jira, o rastreador de tickets da Atlassian, as equipes podem compartilhar fluxos de trabalho, mas têm diferentes representações do processo no painel ágil. Essa capacidade proporciona opções de visualização flexíveis sem sacrificar o ativo compartilhado do fluxo de trabalho.

Não importa como o seu fluxo de trabalho é, o processo de desenvolvimento dele também deve ser ágil. Converse sobre isso durante as retrospectivas e faça uma adaptação de acordo com a cultura da equipe e as alterações na composição.