BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Alcançando previsibilidade em um mundo complexo

Alcançando previsibilidade em um mundo complexo

A previsibilidade é o precursor e facilitador de outras coisas importantes que as pessoas procuram, como fazer coisas mais rápidas e baratas, argumentou José Casal na palestra na Agile Portugal 2019, onde falou sobre como alcançar a previsibilidade em três passos: concentrar-se no trabalho em progresso, reduzir o tempo para se concluir o trabalho, e pensar em como conseguir fazer mais.

Casal começou a palestra afirmando que quando perguntamos às pessoas por que querem melhorar, ouvimos coisas como "queremos fazer as coisas mais rápido, mais barato, e melhor. Queremos oferecer mais, com melhor qualidade e com menor risco". Todos essas coisas são muito importantes, mas antes que possamos alcançar qualquer uma delas, devemos começar com a previsibilidade.

Casal apresentou o Business Agility Nirvana: alcançando um nível de previsibilidade e confiança que nos permita entregar mais rápido, melhor, e mais barato do que antes. É algo que não pode ser alcançado rapidamente, é preciso tempo, paciência, determinação, e acima de tudo foco.

Casal se inspirou no trabalho de Daniel Vacanti, que sugere alcançar a previsibilidade em três etapas, com cada etapa concentrando-se em uma das principais métricas do fluxo.

Normalmente, as empresas assumem mais trabalho do que podem oferecer. Helen Meek, colega de Casal, chama isso de "boca de crocodilo". Nessa situação, o trabalho fica estagnado em longas filas, levando muito tempo para ser entregue, e com a previsibilidade sendo apenas um sonho distante. Se não fizermos nada, a boca do crocodilo acabará mordendo com força, matando os negócios, disse Casal.

Casal mencionou que o primeiro passo é focar no trabalho em andamento e impedir que a boca do crocodilo piore, sugerindo criar políticas para começar a aplicar o lema "Pare de começar e comece a terminar" da comunidade Kanban. "Nesta fase, queremos apenas trazer algum equilíbrio e estabilidade ao sistema atual. Sem essas características, a previsibilidade não irá acontecer", disse Casal. Para conseguir isso, Casal sugeriu experimentar colocar um limite de WIP no nível do sistema, ou ter uma política "sai um, entra um".

Uma vez que alcançamos esse equilíbrio, é hora de começar o segundo passo, focar no tempo decorrido. Fazemos isso porque mesmo que tenhamos equilíbrio, provavelmente ainda temos muito trabalho em movimento, Casal argumentou, então pode-se ainda levar um bom tempo até terminar o trabalho.

Nesta fase, Casal sugeriu fazer todos os tipos de melhorias no processo para reduzir o tempo necessário para realizar o trabalho, por exemplo, identificando e lidando com as fontes de atraso e desperdício. "Até o final desta fase, ainda manteríamos equilíbrio e estabilidade, inclusive veremos uma redução na quantidade de trabalho que está em andamento e uma redução no tempo necessário para concluir o trabalho", disse Casal.

Casal afirmou que, neste estágio, a previsibilidade estaria presente, mas talvez ainda não seja o nirvana. "Agora é a hora em que podemos começar a considerar se podemos e como faremos para produzir mais". O último passo é sobre a capacidade de produção, quanto trabalho podemos entregar. Nesta fase, Casal sugere se concentrar em fazer melhorias técnicas. Por exemplo, considere treinar pessoas e, pela primeira vez, comece a considerar o crescimento das equipes.

Muitas empresas tentam escalar muito cedo, tentando pular direto para a terceira etapa sem tornar as coisas previsíveis primeiro, e com isso, o que alcançam é um aumento exponencial de falhas. Em vez disso, precisamos estabilizar nosso sistema antes mesmo de tentar escalá-lo.

O InfoQ falou com Jose Casal depois da palestra no Agile Portugal 2019.

InfoQ: Como podemos construir um sistema previsível que funcione em ambientes complexos e incertos?

José Casal: Nosso trabalho é complexo e incerto. Antes de fazer qualquer trabalho criativo, é difícil sabermos quanto tempo levaremos para fazê-lo, nos deixando muito desconfortáveis e por consequência, fingimos ter certeza de algo.

Então, como podemos construir um sistema previsível? Usamos nossa experiência passada para prever o trabalho futuro usando as métricas de fluxo para produzir estimativas probabilísticas.

Medir o tempo decorrido de trabalho, também chamado de lead time ou tempo de ciclo, e a taxa de produção, também conhecida como taxa de entrega, permite que nos tornemos previsíveis mesmo em um ambiente complexo.

Trabalhei com empresas que concordam com as Expectativas de Nível de Serviço (Service Level Expectations, SLE) usando previsões com base no tempo decorrido do trabalho concluído. Usar essa abordagem para estimar o tempo de conclusão de itens individuais de trabalho é, na minha experiência, muito mais confiável e relacionável do que as técnicas tradicionais de estimativa (incluindo técnicas populares usadas pela comunidade Ágil). É mais eficaz concordar que temos "85% de confiança em completar nos próximos cinco dias" uma tarefa do backlog do produto, do que dizer "são três pontos de história".

Outras empresas fazem o planejamento do release usando simulações de Montecarlo de suas próprias métricas de taxa de produção. Novamente, em vez de usar as técnicas tradicionais de planejamento do release, é muito mais eficiente usar as métricas de fluxo e concordar que temos "95% de confiança de que podemos entregar pelo menos 37 recursos nos próximos três meses". Com essa previsão, podemos priorizar os que achamos mais valioso.

Finalmente, há uma métrica de fluxo alucinante que a maior parte do mundo Ágil ainda não descobriu, chama-se, métrica do envelhecimento. Essa métrica pode ser incorporada em nosso scrum diário, e permite que as equipes antecipem quais histórias em andamento exigem a atenção da equipe para que possam ser concluídas de maneira previsível e no prazo previsto. Quando vi a reunião diária (daily Scrum meeting) baseada na métrica do envelhecimento, foi uma mudança reveladora e transformadora.

InfoQ: Quais benefícios podemos ver nas organizações quando se concentram na previsibilidade ao adotar o modelo ágil?

Casal: Acho que o principal benefício é que as organizações se tornam um ambiente mais saudável para as pessoas trabalharem. A previsibilidade permite confiar no sistema e nas pessoas que trabalham nele. Uma vez que tenhamos confiança, podemos começar a nos tornar mais transparentes verdadeiramente. Com transparência, podemos construir ambientes mais sustentáveis que promovem mais colaboração e qualidade. Isso nos ajuda a inspecionar e adaptar de uma maneira mais significativa e profunda. Então, temos a chance de realmente melhorar o que e como entregamos.

InfoQ: Como a previsibilidade cria confiança?

Casal: Acima de tudo, a previsibilidade permite a confiança tanto no sistema como nas pessoas. Há perguntas como "quando isso será feito?" que sempre estarão presentes.

A maneira como respondemos é importante, pois cria uma expectativa. Infelizmente, nosso histórico de atender a essa expectativa é péssimo, principalmente porque respondemos a pergunta incorretamente. Nós fornecemos respostas deterministas. No entanto, nossos ambientes de trabalho são incertos e nossas respostas precisam ser probabilísticas. Essa é a única maneira de ser previsível em um ambiente complexo e incerto.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT