domingo, 19 de junho de 2016

Lei de Little - Sobre as taxas e buffers

Eu juro que eu não planejava escrever sobre a Lei de Little novamente quando fui deitar no sábado e eu não planejava um texto domingo de manhã, antes de sair para comprar a carne do churrasco para ver o meu Flamengo massacrar o São Paulo pelo Campeonato Brasileiro. Mas o twitter ficou pequeno novamente, então vamos lá.

Como vocês já repararam na introdução, não esperem nada muito formal, de métricas, palavras chaves, SEO para blog and so on. Se algo ficar confuso, senta o dedo nos comentários. =)

Eu iria usar o meu texto anterior sobre o assunto, pois ainda concordo com cada linha do que está lá, mas percebi que faltava algo.

As taxas. Lá eu comento sobre a inexistência do equilíbrio entre as taxas de entrada e de saída de um sistema complexo. Entretanto, por incrível que pareça, parece que uma das confusões está no termo taxa. Taxa é:

Uma taxa é uma relação entre duas grandezas. Trata-se de um coeficiente que exprime a relação existente entre uma quantidade e a frequência de um fenómeno. 

Exemplos de fenômenos: clientes querendo comer (restaurante), clientes querendo falar com o gerente (banco) ou idéias sendo desenvolvidas (desenvolvimento de produto). A Lei de Little foi estabelecida para casos semelhantes aos dois primeiros fenômenos. Nos tempos atuais, as pessoas transferiram e adaptaram a Lei de Little pra o terceiro fenômeno. Só se esqueceram de um detalhe. No desenvolvimento de produtos (onde fluem idéias e/ou demandas), não existe o equilíbrio entre a taxa de entrada e de saída. Um restaurante ou um banco possui horário de funcionamento. Você consegue facilmente fechar a frequência do fenômeno dentro deste espaço. Além disso, esta previsibilidade de funcionamento faz com que as taxas diárias possam facilmente ser replicadas para uma taxa semanal, mensal, semestral ou anual, permitindo o estudo do sistema por diferentes perspectivas. Eu gostaria muito que me trouxessem dados provando que em desenvolvimento de produtos é sequer possível fechar a frequência do fenômeno, assim como dados que provem que dentro deste fechamento de frequencia, a entrada foi igual a saída. Está lançado o desafio.

Desprezar isso ao adaptar a Lei de Little é possível, como era possível desprezar o atrito com o solo e a resistência do ar nas equações durante o ensino médio. Acontece que, depois que entramos na faculdade, não fica mais tão simples desprezar atrito. Na vida real, desprezar o atrito pode ser fatal. Onde eu quero chegar? Não acho que desprezar o atrito "sistema em equilíbrio" possa ser tão catastrófico para a adaptação da Lei de Little aos sistemas complexos. O que eu acho perigoso é esquecermos desta adaptação e usarmos a lei como verdade absoluta nas nossas análises e decisões.

Como diz um grande amigo, realidade é briga de rua!

Além disso, para fechar e eu poder ir comprar a matéria prima do meu churrasco, a comunidade Kanban hoje está discutindo se realmente temos filas dentro de um sistema Kanban. O argumento principal é de que não temos disciplina de fila, portanto temos buffers. E aí eu pergunto:

É possível ter Little sem filas, apenas com buffers? Como Little se aplicaria a um sistema sem disciplina de fila?

Juro que eu acabei de pensar nisso, relacionando Little ao questionamento atual da comunidade Kanban. Em uma primeira análise, juntando o que eu sei de teoria das filas, lei de little e de comportamento de buffers, eu diria que a Lei de Little não faz mais o menor sentido. Novos fatos tendem a modificar a minha opinião e tenho certeza de que novos fatos surgiram depois deste despretensioso post.

E aí? Já pensou nisso? A área de comentários é toda sua!

quinta-feira, 17 de março de 2016

Custo de transação e custo de coordenação - Um exemplo simples

Vamos tratar aqui um exemplo simples para ilustrar o que é o custo de transação e custo de coordenação.

Existe um podcast que costumo usar para aprimoramento do meu inglês. Eles trabalhavam com um formato para o qual a minha rotina já estava ajustada: o episódio era liberado, semanalmente, com uma duração de cerca de 30m. Como eu estava com todos os episódios atrasados, eu os ouvia em sequência. Como sou adepto do transporte ativo e do transporte público, este formato estava encaixado na minha rotina de ida e volta do escritório. Entretanto, na série 3 deste podcast, eles mudaram o formato para cerca de 8 minutos por episódio.

Quais foram as consequências desta mudança:

Custo de transação

Como o aplicativo do podcast não passa automaticamente os episódios, eu precisei, agora de 8 em 8 minutos, pegar meu celular, desbloquea-lo, voltar do player do aplicativo para a lista das séries, baixar e tocar o próximo episódio, bloquear e guardar o celular. Parece pouco, mas eu precisei fazer este processo cerca de 4x a mais do que era feito antes. É chato. É muito chato. Numericamente, meu custo de transação para ouvir o podcast quadruplicou. Isso é muita coisa. Eu digo "pelo menos" porque ele não aumentou só pela quantidade de vezes a mais que eu preciso fazer as ações para mudar de episódio. Como o custo de transação deles é alto, esse aumento é exponencial.


O que é o custo de transação?

Pegar meu celular, desbloquea-lo, voltar do player do aplicativo para a lista das séries, baixar e tocar o próximo episódio, bloquear e guardar o celular. 

Então o custo de transação, neste exemplo dos podcasts, é o tempo e as atividades necessários para eu mudar de um episódio para outro.

Como diminuir este custo de transação? Seria só tocar automaticamente o próximo episódio da lista, até eu mandar parar. O iTunes faz isso. =)

Custo de coordenação

Além do custo de transação, o sistema do podcast tem um custo de coordenação alto. Este custo consiste na coordenação que preciso fazer, durante o tempo de transação, para eu não me perder na sequência dos episódios, eu preciso clicar no botão geral de edição, apagar o episódio e confirmar a exclusão. Esta ação faz com que o primeiro episódio baixado seja o próximo episódio a ouvir. Isso acontecia 4x menos, como vimos no custo de transação, no formato anterior.

O que é custo de coordenação?

clicar no botão geral de edição, apagar o episódio e confirmar a exclusão.

Então o custo de coordenação é todo custo usado para eu não me perder no sequenciamento dos meus podcasts, assim como a manutenção da bateria com carga suficiente para todo o meu trajeto, checklist para lembrar de levar o carregador (para a volta) e meu fone (para não incomodar as outras pessoas). Mas para esta análise, estamos considerando apenas o meu custo para eu não me perder no sequenciamento dos podcasts.

Como este custo poderia ser reduzido? Bastaria uma funcionalidade para marcar o episódio como "tocado" após o seu término. O iTunes faz isso. =)

Eu sei que você deve estar pensando: que aplicativo ruim você usa. Sim, já estou resolvendo isso, mas pelo menos serviu para este exemplo de mundo real de custos que vemos (quando vemos) muito em livros e palestras.

Conclusão

Aqui estamos analisando tamanho de lote. Um dos tamanhos do lote neste caso é o tamanho do episódio. Outro poderia ser o tamanho da minha fila de episódios para ouvir.

Muitos, até na gestão ágil, defendem o tamanho cada vez mais reduzido do lote para aumentar a fluidez do processo de trabalho. A princípio isso pode parecer uma certeza que todos devem buscar. Entretanto, como vimos, temos outros custos envolvidos nesta decisão: o custo de coordenação e o custo de transação.

Ahh Celso, então você está querendo me dizer que o tamanho de lote ideal para este sistema seriam episódios de 30 minutos? Não. Estou dizendo que com os custos atuais de transação e coordenação episódios maiores funcionam melhor que episódios menores. E como fazer para ter lotes menores, maior fluidez e melhor percepção de entrega? A Toyota já responde essa pergunta a mais de meio século: trabalhar para reduzir os custos de transação e coordenação. É este um dos papéis principais da gestão de fluxo. Nas subseções onde eu explico os dois custos, coloquei sugestões de como reduzir estes custos em um aplicativo de podcast. Ah é mais simples? Sim, ficou mais simples depois que eu esparramei os dados pelo post e o guiei para um pensamento e conclusão fora da caixa. O mesmo acontece dentro da sua empresa.

O problema é que a grande maioria das empresas não faz idéia do tamanho destes custos e tomam decisões completamente no escuro, com a convicção de que estão enxergando tudo, só porque vêem throughput e leadtime. Percebam que neste parágrafo abordamos apenas empresas que já estão no caminho da gestão moderna, que já estão a um passo de medir as coisas certas e de tomar decisões em cima de dados relevantes, de forma científica.

Outros, um pouco mais avançados, já tomam esta decisão em cima do custo de transação. Medem corretamente este custo e o levam para a mesa para discutir o tamanho dos lotes, repetindo isso frequentemente. E isso é lindo, pois permite aos decisores usar análise de dados relevantes e fatos para a tomada de decisão, como venho repetindo. Considero estas pessoas bem mais avançadas até que muita empresa ágil e de ótima cultura.

Entretanto, mesmo nestas empresas, o custo de coordenação pode ser negligenciado. Isso acontece por um problema de entendimento do que pode ser considerado custo de coordenação. No meu exemplo do podcast, meu custo de coordenação está embutido no custo de transação. Nem sempre isso acontece. E nem sempre esse custo é percebido.

O que você precisa fazer agora? Impossível adivinhar através de um post de blog. Medir, analisar e decidir sobre estas informações é algo muito sensível ao contexto. Não existe uma fórmula, diferente do já conhecido ciclo: observação, análise, experimentação, análise dos resultados, adaptação, observação...

Alguém reconhece esse ciclo em outro método, bem mais idoso?

Sim, está correto quem pensou no método científico.