Blog >

Medir processos, não pessoas!

Todo bom líder discute números com a equipe diariamente e, durante as conversas, indicadores de tudo quanto é tipo são analisados, KPIs e métricas de tudo, para que tenhamos quadros promissores, com perspectivas que possam nortear priorizações, desmobilizações, mudanças de rumo, sempre no sentido de estar apto a fazer correções rápidas, a fim de  gerar mais possibilidades e oportunidades para clientes, funcionários e, claro, para a própria empresa.

Às vezes, no entanto, algumas formas de medir podem não revelar aquilo que de fato está acontecendo com as equipes, processos e negócio ou, ainda, podemos ser enganados por visões míopes ou apenas diferentes quanto a mesma métrica, de tal forma que se torna bastante complicado entender a saúde, competitividade ou agilidade deste negócio em especial.

Isto posto, e diante de uma infinidade de KPIs, como compilar indicadores reais e de melhor compressão? Talvez tenhamos que fazer uma análise exaustiva dos tipos possíveis e compreendê-los.  Como disse William Deming: Não se gerencia o que não se mede, não se mede o que não se define, não se define o que não se entende, e não há sucesso naquilo em que não se gerencia.

Depois que a Avivatec começou a trabalhar com métodos ágeis, tivemos ganhos consideráveis de produtividade, maior controle sobre custos e prazos, melhor alinhamento com nossos clientes e maior colaboração entre os times. Adotamos também o uso de métricas ágeis, que pra mim não têm nada de diferente de quaisquer outras formas de medir.

Para medirmos o número de entrega das nossas equipes, iniciamos com o uso dos seguintes indicadores: WIP, Lead Time e Throughput e depois incrementamos com o CFD (Cumulative Flow Diagram).

As medidas são semanais e, mesmo que nossas sprints sejam quinzenais, ao analisar a vazão semanal, identificamos problemas com maior antecedência e ajustamos com ações imediatas em um curto espaço de tempo, evitando surpresas indesejadas no final da Sprint.

O que são tais indicadores e seus benefícios?

1- WIP – Work In Progress: é qualquer trabalho que não tenha sido concluído, mas que já tenha incorrido em um custo de capital para a organização.

Pensando em um contexto ágil, uma unidade de trabalho deve ser algo que gerará de forma direta ou indireta valor para o cliente ou usuário. Um item de trabalho pode ser uma história de usuário, uma funcionalidade, um bug, uma melhoria etc.

Fazendo um paralelo com processos ágeis, o Scrum determina, na cerimônia de Sprint Planning, o ponto de chegada de um item de trabalho para o sistema de desenvolvimento do time. Ao término da cerimônia, os itens que foram incluídos no escopo de trabalho (Sprint Backlog) passarão a ser o montante de WIP que, idealmente, será finalizado no término da iteração (sprint). O ponto de saída de um sistema Scrum nada mais é do que o trabalho aprovado na cerimônia de Review.

Benefícios do WIP: Gerenciando o WIP, garantimos um controle na cadência das entregas e impactamos o tempo que uma demanda passará pelo fluxo de desenvolvimento.

2- Lead Time – Tempo Total do Processo: Representa a latência entre a iniciação e a execução de um processo.

No contexto de desenvolvimento de software, podemos considerar o lead time como sendo o número de dias entre o início e o fim do processo de entrega de um dos itens de trabalho (por exemplo, história do usuário, bugs etc.).

Conforme podemos visualizar na figura a seguir, o lead time nada mais é do que o tempo de atravessamento de um item a partir dos limites de entrada e saída definidos no processo de desenvolvimento.

Benefícios do Lead Time:   Compreender quanto tempo a equipe tem levado para desenvolver um item de trabalho; analisar a saúde do processo de desenvolvimento; identificar casos extremos (outliers); compreender os efeitos que as incertezas e as complexidades não mapeadas podem causar, na forma de variabilidade, no tempo necessário para a conclusão dos itens de trabalho de uma equipe de desenvolvimento de software.

3-  Throughput é uma medida que determina quantas unidades de trabalho foram completadas em uma unidade de tempo. Olhando pela perspectiva de vazão (ou saída), é possível afirmar que o throughput é uma medida que determina quanto o meu fluxo é capaz de processar.

Uma dúvida que pode estar surgindo na sua cabeça neste momento é: throughput seria o sinônimo de velocidade (velocity), utilizada comumente em equipes que adotam o Kanban?  A resposta é não.

Velocidade, conforme definição da Zheglov (2016), representa o total de story points entregues por uma equipe ao longo de uma iteração (sprint). Story points é uma medida usada por equipes na mensuração do esforço necessário para desenvolver determinado requisito, funcionalidade, história do usuário, bug etc.

No caso de throughput, estamos lidando com o total de itens de trabalho entregues ao longo de uma unidade de tempo que não precisa estar restrita ao limite de uma iteração, diferentemente da variável de velocidade que descreve o número de pontos entregues dentro de uma iteração. Como exemplo, ao final de uma iteração, sua equipe pode ter entregue 5 histórias de usuário e 30 story points.

Benefícios do throughput: Auxiliará a identificar se a equipe está criando uma tendência de aumento no número de entregas. E na identificação de algum fator que esteja bloqueando a cadência de entrega da equipe, gerando questionamentos como: será que a equipe está com tamanho ideal? Será que existe algum gargalo ao longo do processo?

4- Relação entre Wip, Lead Time e Throughput

A fórmula ilustrada a seguir é uma variação da fórmula original de Little. Ela nos diz que o tempo médio de um item no processo de desenvolvimento (lead time) é igual ao do número médio de itens no processo (WIP) pelo número médio de itens que saem do sistema por unidade de tempo (throughput).

O resultado da aplicação da variação da lei em equipes de desenvolvimento de software nos diz que, em geral, quanto mais coisas são trabalhadas em um determinado momento (em média), mais tempo levará para que cada uma dessas coisas termine (em média).

Ao alterar qualquer uma das variáveis da equação, você certamente afetará as outras. Em outras palavras, a fórmula revela possíveis alavancas para a realização de melhoria nos processos.

5- CFD é um tipo de visualização que trata essencialmente de entradas e saídas. Como o próprio nome pode sugerir, o Cumulative Flow Diagram é uma excelente forma de compreender o fluxo de trabalho ao longo de um processo, afinal o gráfico pode nos dar um panorama geral do que está acontecendo durante o desenvolvimento de um projeto ou produto. O CFD é um instrumento de muito valor no processo de monitoramento em projetos ágeis, pois usando-o, você poderá rapidamente analisar: quanto de trabalho foi realizado, quanto de trabalho está em progresso e quanto de trabalho ainda precisa ser feito.

Resumindo: Muitas pessoas, inclusive do meu time, não gostam de ser medidas, mas, na verdade, não medimos pessoas, e sim processos.  O tema é polêmico e sua implementação é complexa, porém é certo que traz benefícios imediatos.

 

Fábio Moraes é CEO da Avivatec, ex-jogador de futebol de várzea e apaixonado por sua familia. No mercado de TI desde 2006, atuou em posições de liderança de grandes empresas como Credicard, Epson e C&A. Acorda todos os dias com o objetivo de potencializar o crescimento das pessoas e da Avivatec com foco em encantar os clientes e fazer os colaboradores felizes. Eles que o digam.

 

Fonte: Métricas Ágeis, Raphael Donaire Albino.

Colaboração: Milena Carvalho (nossa Golden Girl).