O que é o mapeamento de fluxos de valores?

O mapeamento de fluxos de valores é uma técnica enxuta para analisar processos, identificar áreas de desperdício e otimizar fluxos de trabalho.

Na manufatura enxuta, o mapeamento de fluxos de valores examina todas as etapas envolvidas na transformação de materiais em produtos, incluindo logística, armazenamento e linhas de montagem e procura torná-los mais eficientes.

Esse processo envolve mapear os processos de ponta a ponta, identificar diferentes tipos de desperdícios, como superprodução, tempos de espera, movimento e defeitos e, em seguida, criar e implementar um plano para reduzir esse desperdício o máximo possível.

O movimento Lean Software mostrou como o pensamento e as técnicas enxutas (Lean), incluindo o mapeamento de fluxos de valores, podem ser aplicados ao ciclo de vida de desenvolvimento de software para torná-lo mais eficiente e melhorar o que é fornecido aos usuários.

A filosofia enxuta complementa os princípios do Agile e DevOps, que enfatizam os benefícios de ciclos iterativos com ciclos de feedback contínuos e a necessidade de criar qualidade como forma de entregar valor com mais rapidez.

Criar um mapa de fluxos de valores do processo de desenvolvimento de software pode ser um exercício útil se você já implementou um Pipeline de CI/CD ou está apenas começando.

Mapear todas as etapas, pessoas e ferramentas envolvidas, das ideias ao design, desenvolvimento e lançamento, permite que você visualize todo o ciclo de vida do produto.

Você pode então usar esse mapa para facilitar as discussões entre as equipes de desenvolvimento e operações, construindo uma compreensão compartilhada do valor que cada etapa agrega, juntamente com as preocupações e motivações de todos os envolvidos.

Depois de esboçar o processo, você pode começar a identificar casos de desperdício: atividades que não agregam valor ao usuário (seja diretamente, na forma de recursos desejados, ou indiretamente, como manter o produto estável).

Os tipos de desperdícios identificados na manufatura enxuta foram adaptados para o desenvolvimento de software e incluem:

Recursos indesejados

Como superprodução na manufatura, criar funcionalidades que não são usadas é um desperdício. Trabalhar em pequenos incrementos que são entregues com frequência, adotar uma abordagem de produto mínimo viável e continuamente coletar e ouvir o feedback são estratégias que informam o que você está construindo e evitam que tempo e esforços sejam desperdiçados em recursos que não são usados.

Alternância de tarefas

A constante alternância entre tarefas diferentes é um desperdício, pois impede que você entre em um estado de fluxo. Cada vez que você é interrompido em uma tarefa, precisa perder tempo voltando ao espaço certo antes de se tornar produtivo novamente. Ter um pipeline totalmente automatizado que não requer entrada manual para acionar cada estágio de teste ajuda a evitar a alternância de tarefas. Da mesma forma, usar alertas com cuidado, de modo que você só seja interrompido quando for essencial (como uma falha na produção, mas não um teste de unidade com falha), ajuda a evitar a alternância desnecessária de tarefas.

Espera

Uma das formas mais óbvias de desperdício, atrasos em qualquer estágio do fluxo de trabalho acabarão retardando o progresso no mercado. Reduzir transferências entre indivíduos e automatizar tudo o que pode ser automatizado, como build, teste, implantação e feedback, reduzirá o tempo de espera.

Processos extras

A criação de processos e procedimentos excessivamente complexos quando algo mais simples seria capaz de gerar os mesmos resultados exige mais tempo e recursos para implementar e manter. Exemplos podem variar desde implantações complicadas a ambientes de preparação e avaliações de risco exigentes antes de cada lançamento. Compreender a motivação por detrás das etapas ajudará você a descobrir se um processo mais simples será suficiente.

Defeitos

Defeitos criam trabalho extra e demoram para ser corrigidos quando encontrados, ao mesmo tempo em que afetam negativamente a experiência do cliente quando vazam para produção. Trabalhar em pequenos incrementos que são testados automaticamente é uma forma comprovada de aumentar a qualidade, ajudando a encontrar problemas antecipadamente e facilitando a identificação da causa de um problema. Quando defeitos são encontrados na produção, ter a capacidade de lançar uma correção rapidamente minimiza o impacto sobre os usuários.

Trabalho parcialmente concluído

Conhecido como estoque ou excesso de estoque em um contexto de manufatura, o trabalho parcialmente concluído não agrega valor aos usuários, ao mesmo tempo que retarda o fornecimento de outras funcionalidades e melhorias. Normalmente, isso é causado pelo início do desenvolvimento de algo antes de estar pronto, resultando em atrasos. Ao mesmo tempo, as necessidades do usuário são melhor compreendidas, seguido pelo retrabalho para acomodar novos requisitos.

Transferências

Quando o trabalho precisa ser transferido para outra equipe para concluir a próxima fase, isso adiciona um atraso (pois a próxima equipe pode não estar pronta para iniciar o trabalho imediatamente) e requer que o conhecimento seja transferido, seja por meio de reuniões ou documentação escrita. Frequentemente, uma parte do conhecimento é perdida no processo e precisa ser redescoberta. Tudo isso desperdiça tempo e esforços, tornando o processo mais lento. Minimizar transferências com equipes multifuncionais que têm a propriedade de todo o ciclo de vida ajuda a reduzir esse tipo de desperdício.

Tendo identificado os desperdícios no seu processo, é hora de começar a lidar com eles.

Para manter os princípios Lean, DevOps e Agile, é uma boa ideia implementar as alterações de forma incremental, monitorando o impacto das alterações, continuando a coletar feedback e ajustando o curso conforme você avança.

Finalmente, não deixe o mapeamento de fluxos de valor tornar-se um exercício isolado inútil. Embora seja possível gastar muito tempo aprendendo os símbolos corretos e transferindo suas descobertas para uma ferramenta de mapeamento para criar um ativo digital, muitas vezes você pode começar com uma sessão de quadro de comunicação simples para ter uma ideia inicial de quanto é possível ganhar com um exercício de mapeamento de fluxos de valores.