No artigo Classes de serviço e seus 4 principais arquétipos fiz uma breve introdução do Histograma do Customer Lead Time e gostaria de detalhar um pouco mais essa importantíssima ferramenta de Gestão de Fluxo.
Neste Artigo
O que é o Histograma
O histograma foi introduzido por Karl Pearson. Ele foi o responsável por cunhar o termo histograma para designar uma forma comum de representação gráfica. O histograma é uma ferramenta estatística que organiza e exibe dados em barras, onde a altura de cada barra representa a frequência ou a proporção dos valores observados dentro de um intervalo específico.
Para que serve o Histograma de Customer Lead Time?
Você já ouviu a pergunta: Quando isso ficará pronto? O Histograma pode ser a ferramenta que vai te ajudar a dar a resposta a essa pergunta. Além disso, ele é fundamental para você conseguir definir acordos de nível de serviço (Service Level Agreement, SLA) com seus clientes antes de colocar prazos em um contrato. Também serve
como fonte dos acordos de nível de expectativa (Service Level Expectation, SLE) um tanto similar ao SLA, porém pode ser utilizado para clientes internos ou externos.
Além disso, com o histograma você consegue: 1) Visualizar a distribuição dos tempos de fluxo de trabalho; 2) Identificar padrões, tendências e variações nos tempos de conclusão dos itens de trabalho; 3) Compreender melhor o desempenho do processo e como ele é formado; 4) Identificar áreas de melhoria e oportunidades de otimização; e 5) Ajudar na tomada de decisões em relação a prazos e alocação de pessoas.
Customer Lead Time
No artigo O Customer Lead Time mudou! Veja aqui a nova definição. Escrevi sobre como o Customer Lead Time é calculado. Para simplificar, podemos dizer que: para todo item de trabalho que foi entregue, é o período entre o recebimento do pedido do cliente até a entrega do item construído para esse cliente. A conta é simples, Dia da Entrega subtraído do Dia do Recebimento da Demanda.
Como o Histograma é construído
A maioria das ferramentas que temos hoje já cria para nós o Histograma do Customer Lead Time, porém detalharei aqui como elas chegam até o gráfico para que possamos compreender sua formação e facilitar a análise dele.
1. Coleta de Dados: Primeiro, é necessário coletar dados sobre o customer lead time dos itens de trabalho entregues.
2. Bins (Intervalos): Em seguida, esses dados são divididos em intervalos chamados “bins” ou “caixas”. É possível ter “caixas” que representam dias, semanas ou meses, dependendo da escala de tempo do seu fluxo de trabalho e da informação que queira prestar. Por exemplo, se você quiser dizer que o seu Acordo de Nível de Serviço é de uma entrega em X dias, seu bin será dias. Se você quiser em até Y semanas, o bin é semanas.
3. Contagem de Ocorrências: Para cada bin, são contadas quantas vezes o customer lead time “cai” dentro desse intervalo. Por exemplo, de todos os itens entregues, 10 levaram 1 dia, 13 levaram 2 dias, 9 levaram 5 dias…
4. Construção do Gráfico: Com os dados contados, cria-se o histograma. No Eixo X (horizontal, abscissa), são colocados os bins (intervalos de tempo), e no Eixo Y (vertical, ordenada), coloca-se o número de ocorrências em cada bin.
5. Análise: O histograma resultante permite a visualização da distribuição dos lead times. Você pode identificar tendências, como por exemplo, se a maioria dos itens de trabalho é concluída dentro de um intervalo específico ou se há uma grande variação nos tempos de conclusão.
Analisando um histograma de Customer Lead Time
Com base no histograma apresentado no início deste artigo, vamos colocar algumas informações importantes que já podemos perceber nele.
Melhor caso, pior caso e mais provável
Este histograma é composto pelo Customer Lead Time de 197 itens de trabalho que foram entregues. Desses, o melhor caso que temos são 4 dias (5 itens entregues). Já tiramos uma conclusão. Prometer entregar algo em 3 dias ou menos é uma loucura, pois jamais fizemos isso em 197 tentativas. Também podemos dizer que nosso pior caso é 23 dias e isso só aconteceu uma vez. No geral, conseguimos entregar os itens entre 4 e 19 dias. Com a maior chance de entregarmos em 11 dias, pois essa é a moda. Moda é o valor que mais se repete na distribuição. Com isso já podemos dizer o melhor caso (4 dias), mais provável (11 dias) e pior caso (23 dias).
Só isso ainda não basta para darmos um prazo ou apresentar um Acordo de Nível de Serviço. Vamos um pouquinho além. Vamos dividir a nossa distribuição em percentis.
Percentis
Percentis funcionam como se dividíssemos nossa distribuição em 100 partes (por cento). A mediana é o percentil 50 (P50). Isso significa que 50% de todos os itens da distribuição estão entre a linha inicial e a P50.
Definindo prazos (previsibilidade)
Visto isso, vamos aos percentis que são importantes para a criação do SLA. Vamos utilizar o P75, P85 e P95.
A leitura do gráfico é 75% dos itens foram entregues em 13 dias ou menos. 85% dos itens foram entregues em 14 dias ou menos e 95% dos itens foram entregues em 16 dias ou menos.
Agora, podemos estipular um prazo para o Acordo de Nível de Serviço e contratos. Podemos dizer para nossos clientes o seguinte: “Cliente, com 85% de probabilidade te entregaremos esse item que você está pedindo em até 16 dias.”. Isso equivale a dizer para o cliente que a cada 100 entregas, 85 levaram 16 dias ou menos. Entretanto, 15 podem durar 17 ou mais. Perceba que o acordo sempre abre espaço para uma margem de erro, pois não temos bola de cristal e algo sempre pode sair do esperado.
Qual percentil escolher?
Depende da sua aversão a riscos. Se seu time topar correr mais riscos, algo entre P75 e P80 pode ser utilizado. Se tiver muita aversão a riscos, utilize percentuais de P85 em diante.
É importante que você jamais utilize o P100 para dar prazos. Uma frase como: “Com 100% de probabilidade de entregaremos isso que você está pedindo em até 23 dias”. É um erro duplo. Primeiro porque não existe algo como 100% de probabilidade. Isso seria uma certeza. Segundo porque o item que ele está te entregando pode ser o ponto fora da curva (outlier) que irá durar 24, 25 ou 26 dias.
A melhor previsibilidade que podemos dar é um período em função de uma probabilidade.
Avelino F. Gomes Filho
A forma mais responsável de dar prazos nunca será determinístico e exato: “te entregaremos o item em 16 dias”. É probabilístico e leva em consideração um período: “com 85% de probabilidade te entregaremos o item em até 16 dias”. Podem ser 16 dias, ou menos.
Nossa distribuição é boa?
Um cuidado que temos que ter é saber se a nossa distribuição é boa para utilizarmos como base de estabelecimento de prazos. Se for ruim, aquele prazo que dissemos no passo anterior pode se tornar um problema. Para isso, temos que falar de distribuições de Cauda Curta e Cauda Longa.
Cauda Curta
A Cauda Curta representa uma boa distribuição e nos informa que os itens são mais ou menos uniformes e com ela conseguimos ter uma boa previsibilidade. Para saber se a distribuição é uma cauda curta, faça a divisão P98 (cauda) ÷ P50 (mediana). Se o resultado for igual ou menor do que 5,6 teremos a cauda curta.
A divisão da cauda (Percentil 98 = 17) pela mediana (Percentil 50 = 11) tem como resultado 1,54. Como 1,91 é menor do que 5,6 temos uma cauda curta. Ela é representada costumeiramente pela cauda de um coelho. Minha distribuição é confiável e posso acreditar nos prazos que passo para o meu cliente.
Cauda Longa
De forma oposta, quando a cauda (P98) ao ser dividida pela mediana (P50) resultar em algo maior do que 5,6, teremos uma Cauda Longa.
A divisão da cauda (Percentil 98 = 36) pela mediana (Percentil 50 = 6) tem como resultado 6 que é maior do que 5,6. Uma cauda longa representada costumeiramente pela cauda de um gato.
Significa que agora eu não tenho confiança na minha distribuição. Há um período muito grande de possibilidades. Perceba que se eu quiser utilizar o P90 o prazo seria de 13 dias. Se eu quiser utilizar o P95, já teria que utilizar 34 dias. Ou seja, com apenas 5% de diferença, temos quase que triplicar o tempo.
Encurtando a cauda longa
Não corte a cauda
A primeira coisa é meio óbvia, como diz o meme: “é raro, mas acontece muito”. As pessoas arrancam fora os números que estão alongando a cauda. No exemplo aqueles entre os dias 30 e 38. Não faça isso! Fato é fato. Quer seja bom para você ou não. Desconsiderar fatos é tomar decisões alicerçadas por mentiras.
Histograma Móvel
Se você trabalha em um time que já está trabalhando há 3 anos em algo, pode ser que pegar todos os dados desde o dia zero, o gênesis do time até hoje, seja muito tempo. Pessoas entraram, saíram, evoluímos no nosso método de trabalho, aprendemos mais sobre o cliente, as pessoas ganharam experiência técnica, o mercado mudou etc. Então ao invés de utilizarmos 3 anos de dados, poderíamos utilizar os últimos 365 dias e atualizarmos isso diariamente. Teríamos sempre 1 ano de dados para analisar. O período deve ser definido de acordo com o seu contexto. Por exemplo, se o seu time tem muita rotatividade (turnover) de pessoas um período de 180-90 dias pode ser mais adequado.
Tipos de Demanda
O mais comum é comparar os iguais com iguais e os desiguais com os desiguais. Nem toda demanda que recebemos é igual. Nós podemos separá-las, pois demandas semelhantes tendem a ter um comportamento semelhante. O Tipo de Demanda nos ajuda a fazer essa classificação.
Alguns exemplos de tipos de demandas por área:
- Desenvolvimento de Software: Bugs, Criação de Nova Funcionalidades, Manutenção de Funcionalidades Antigas, Relatórios.
- Infraestrutura de TI: Segurança, Servidores, Rede, Manutenção de Computadores
- Jurídico: Demandas Trabalhistas, Demandas Civil, Consulta Interna
- Marketing: Redes Sociais, Papelaria, Televisão
- Médico: Clínica Geral, Psicologia, Cirurgia
Normalmente os tipos de demanda possuem naturezas diferentes que permitem a classificação. Por exemplo, na área médica, a clínica geral tende a receber demandas intermitentes e tem uma duração curta. Psicologia recebe demandas cíclicas (sessões) e tende a ter uma duração de exatamente 1 hora. Cirurgia, não emergencial, tende a ter uma data marcada e uma duração indeterminada.
A mesma lógica se aplica às outras áreas. Desenvolvimento de software, por exemplo: bugs são demandas intermitentes, recebidas através de algum sistema de solicitações e tem uma duração curta. Criação de Nova Funcionalidade tende a ser feita em uma rotina de projeto com especificação feita por uma pessoa, pode ser o Product Owner, e a duração é indeterminada. Manutenção de Funcionalidades Antigas também entre através de uma pessoa, pode ser o Product Owner, a duração tende a ser um pouco mais longa porque será necessário alterar o que já funciona e manter o produto estável. Relatórios já tendem a ser demandas vindas de níveis mais estratégicos da organização e os prazos bem mais curtos.
Gráfico Cauda longa
O gráfico abaixo é de um time de Desenvolvimento de Software. Seus tipos de demanda são: Chamados (correção de erro e pequenas evoluções); Desenvolvimento de Novos Produtos; Grandes Alterações em Sistemas Antigos. O gráfico então fica da seguinte forma:
Cauda Encurtada pelo Tipo de Demanda
Perceba que agora que separamos o nosso gráfico por tipo de demanda é como se tivéssemos 3 Histogramas de Customer Lead Time. Um para cada tipo de demanda. Com isso, podemos listar novos percentis em novos histogramas que seriam os seguintes.
Agora, com os iguais juntos dos iguais, separado dos desiguais podemos fazer uma análise mais correta. A primeira coisa que percebemos é que todos são caudas curtas:
Tipo de Demanda | P98 | P50 | Razão P98 / P50 | Tipo de Cauda |
Chamados | 5 | 1 | 5 | Curta |
Desenvolvimento de Novos Produtos | 14 | 9 | 1,5 | Curta |
Grandes Alterações em Sistemas Antigos | 37 | 34 | 1,08 | Curta |
Agora, antes de dar uma previsibilidade temos que identificar o tipo de demanda. O prazo é dado de acordo com ela.
Outras formas de encurtar a cauda
Assim como a classificação por Tipo de Demandas, outras formas podem ser utilizadas. Por exemplo, separar demandas de produtos / projetos diferentes, Tipo de Cliente ou Classes de Serviço.
Cuidado com o tamanho do item
Você já deve ter ouvido a frase: “correlação não implica causalidade”, ela se aplica na tentação de separarmos o histograma por esforço-complexidade-desconhecido (tamanho). Normalmente expresso por User Story Points (1, 2, 3, 5, 8, 13, 20, 40, 100) ou T-shirt size (P, M, G).
A princípio, parece fazer sentido que itens de tamanho P sejam mais rápidos (menor Customer Lead Time) do que itens de tamanho G. Todavia na prática isso não é verdade, pois tamanho não obrigatoriamente impacta em prioridade (casualidade). Logo, é possível, e não é incomum, que itens grandes com alta prioridade tenham um Customer Lead Time menor do que itens pequenos de baixa prioridade.
Ao criar um Histograma de Customer Lead Time por tamanho, você pode ficar sem uma conclusão ou com uma conclusão falsa. Voltando à pergunta título deste artigo, se o seu cliente perguntar: Quando fica pronto? Você teria que classificar o item pelo tamanho e isso não te diria muita coisa, pois só valerá se aquele item for avaliado como prioritário.
Conclusão
O Histograma de Customer Lead Time é uma ferramenta poderosa para entendermos como nosso trabalho se comporta e como podemos estabelecer prazos de entrega de forma segura.
Espero ter ajudado a compreensão dessa importante ferramenta utilizada para gestão de fluxo de trabalho. Não deixe de ver também o artigo sobre o Cumulative Flow Diagram (CFD), um gráfico importantíssimo para entender as etapas internas do fluxo.
Se quiser um treinamento no qual abordamos o Histograma de Customer Lead Time e fazemos exercícios sobre ele, dê uma olhada no Team Kanban Practitioner (TKP) ou no Kanban System Design (KSD). Até a Próxima!