O Kanban é uma das estruturas mais populares usadas para implementar o desenvolvimento de software Agile.

Já falamos na nossa série Agile Methods sobre Crystal, DSDM, LSD, hoje vamos falar um pouco de Kanban.

Vamos abordar os seguintes aspectos do Kanban neste artigo:

  • Introdução ao Kanban: Nesta seção, discutiremos – O que é o Kanban ?
  • Práticas do Kanban : Isso explicará por que o Kanban foi necessário, o Kanban Practices , qual era o objetivo por trás do Kanban e sua história.
  • Artefatos do Kanban: Aqui, tentaremos entender o Quadro Kanban e suas partes, como listas, cartões visuais, limites de trabalho em andamento etc.
  • Funções e responsabilidades do Kanban: Aqui, tentaremos entender as funções e responsabilidades do Kanban com a ajuda de um exemplo. Também conheceremos os princípios.
  • Fluxo de trabalho do processo no Kanban: Aqui, entenderemos o fluxo de trabalho do processo com a ajuda do exemplo da equipe de suporte ao desenvolvimento de software e também entenderemos os princípios do Kanban.
  • Diferença chave entre Scrum e Kanban: Como as pessoas sempre comparam o Scrum com qualquer outra coisa, é importante entender como o Scrum é diferente do Kanban ?

Vamos começar com uma introdução básica ao Kanban

O que é Kanban?

kanbanKanban surgiu inicialmente da palavra japonesa “Kan“, que significa “Visual ” e “ban” significa “cartão“.

Portanto, é um cartão contendo todas as informações sobre o trabalho finalizado em todas as etapas do desenvolvimento.

O Kanban é um dos métodos mais populares entre as equipes Lean , pois é altamente visual. 

Frequentemente a maioria das equipes Lean usa o Kanban para visualizar e gerenciar ativamente a criação de produtos, com ênfase na entrega contínua, sem sobrecarregar a equipe de desenvolvimento.

Foi usado pela primeira vez e teve origem no “Sistema Toyota de Produção1“. O método de teste de software, especialmente o teste ágil, adotou inteiramente essa estrutura ou abordagem.

Portanto os processos Kanban são projetados para ajudar as equipes a trabalharem mais eficientemente juntas.

Práticas Kanban

Visualização

Em primeiro lugar isso significa que, qualquer que seja o progresso, pode ser visto por todos os envolvidos nesse processo usando o “ Quadro Kanban. 

Já que o Kanban Board pode ser um quadro físico ou eletrônico. Apenas olhando para o quadro Kanban, você poderá descobrir o que está atualmente em andamento e o que foi concluído.

Embora seja uma etapa simples, pode produzir insights significativos. Pode ser fácil e muito detalhado, dependendo da complexidade do processo ou do fluxo de trabalho.

Limitar o trabalho em andamento

Em virtude de o quadro Kanban permitir “Limitar o WIP” que significa, finalizar a tarefa em mãos primeiro, move-la para Concluído e depois fazer outro trabalho.

E isso melhora a qualidade do trabalho.

Inicialmente, talvez você não consiga entender seus limites de trabalho e talvez tenha que observar quanto trabalho sua equipe está pronta para concluir de uma vez.

Em seguida você pode observar, coletar dados e depois definir limites WIP. Lembre-se que definimos limites de WIP para cada processo.

Já que a “limitação do WIP” remove os resíduos de “trabalho incompleto” ou “trabalho parcialmente concluído” do processo.

Em segundo lugar, o cliente também entenderá que há capacidade limitada para realizar o trabalho, portanto também planejará suas prioridades de acordo.

Gerenciando o fluxo

Be the water my friend!Da mesma forma 0 Kanban enfatiza o gerenciamento do fluxo de trabalho de uma maneira que:

  • Maximiza a entrega de valor ao cliente
  • Facilita todo o processo
  • Minimize tempo e custo.

Do mesmo modo, para maximizar a entrega de valor, precisamos garantir que conhecemos

  • O que o cliente espera
  • O sistema atual pode oferecer o que?
  • O cliente assinou esperando o que da entrega?

Ter e fazer políticas explícitas

Ainda que as políticas explícitas sejam uma maneira de articular e definir o processo que vai além da definição do fluxo de trabalho.

Uma vez que essas políticas podem ser tão simples quanto uma lista de verificação das etapas que devem ser seguidas ao executar qualquer trabalho, OU ao selecionar uma nova tarefa.

Portanto essas políticas devem ser definidas explicitamente e visualizadas geralmente na parte superior do quadro Kanban e, se estiverem relacionadas a tarefas/estágio, na parte superior da respectiva coluna. Desse modo isso torna o processo transparente, traz todos para a mesma página e eles conhecem o procedimento padrão.

Portanto isso também ajuda as pessoas novas no processo, pois sabem o que precisam fazer.

Loops de feedback:

Igualmente os loops de feedback são parte crucial e integrante de qualquer processo/sistema controlado. Dar feedback e melhorar conforme a entrada fornecida em todas as áreas do processo é muito importante.

Ademais no Kanban, o feedback é obtido e aplicado não apenas dentro da equipe, mas também entre grupos e membros da equipe e seu gerente hierárquico.

Melhoria

Realmente o Kanban é um método de melhoria. O Kanban segue o processo lento e sem interrupções do gerenciamento de mudanças.

Isso significa que o processo existente é aprimorado e trabalhado em etapas pequenas, constantes e fáceis em vez de uma mudança significativa, no Kanban, é preferível executar muitas pequenas mudanças com um ritmo que todos da equipe possam ajustar.

Certamente o impacto de cada mudança é avaliado para avaliar se as mudanças feitas estão ajudando o processo a melhorar ou não. Com base nisso, podemos decidir se você deseja manter essas alterações ou fazer algumas alterações ou se deseja descartá-las.

Reduz o risco, melhora a eficiência e o desempenho geral.

Artefatos Kanban

Além disso um dos contribuintes significativos para a popularidade do Kanban é o Kanban Board“. No Kanban, usamos um quadro visual para exibir o progresso do projeto em três etapas simples e fáceis, ou seja,

  • Fazer (To Do)
  • Em andamento / Fazendo (Doing)
  • Concluído / Concluído (Done)

Kanban_Basic_Board

Uma estrutura básica do quadro Kanban inclui:

Listas (colunas para acompanhar o progresso)

Primeiramente as listas são as colunas que existem no board principal. Cada coluna representa uma etapa específica do processo. Essas atividades juntos compõem um “Workflow.”

Além disso cada cartão segue o fluxo até atingir o último estágio, que é “ Concluído/Acabado. Qualquer fluxo de trabalho kanban pode ser tão simples quanto “Tarefas“, “Em andamento ,Concluído“.

Cartões (itens para representar uma tarefa)

Certamente o mais notável que o diferencia no quadro Kanban são os cartões/sinais visuais (adesivos, bilhetes, capturas de tela). Um cartão geralmente possui um item de trabalho escrito pela equipe do Kanban.

Em resumo quando a equipe começa a trabalhar e o gerente de projeto garante que o quadro seja atualizado, os cartões visuais fazem com que os colegas entendam, em que sua equipe está trabalhando e o que está concluído.

Limites do trabalho em andamento (WIP)

Como o nome sugere, “limites WIP” é usado para limitar tarefas de “trabalho em andamento”. É um número máximo de cartões que podem estar presentes em uma coluna a qualquer momento.

Por exemplo, se houver uma coluna com um limite WIP de cinco, essa coluna em particular não poderá ter mais de cinco cartões.

Dessa forma esses limites de WIP são críticos, pois controlam o fluxo de trabalho e fornecem um sinal de aviso antecipado de que você se comprometeu com muito trabalho.

Ponto de compromisso

As equipes kanban costumam ter uma carteira de pedidos pendentes, o backlog nada mais é do que uma coluna em que clientes e colegas de equipe colocam suas idéias para projetos que a equipe pode selecionar e preparar sua lista de tarefas.

Nesse sentido o ponto de comprometimento é o momento em que uma ideia é captada pela equipe e eles começam a trabalhar nessa tarefa específica.

Ponto de entrega

O ponto de entrega é o último ponto do fluxo de trabalho de uma equipe Kanban. É o momento em que o serviço, software ou produto é entregue ao cliente.

Nesse sentido o objetivo da equipe é pegar as cartas do ponto de comprometimento até o ponto de entrega o quanto antes.

Fluxo de trabalho básico do painel Kanban

Certamente como nos familiarizamos com os artefatos, vamos começar entender o fluxo de trabalho de um K-Board básico:

  • Na figura acima – as tarefas listadas na coluna ” Histórias ” atuam como um Backlog para a equipe.
  • Quatro colunas (Histórias, Tarefas, Atividades, Pronto) são chamadas de listas.
  • As tarefas escolhidas pela equipe na coluna “Histórias” para trabalhar são movidas para a lista de tarefasEsse processo de captar histórias da lista de pendências e movê-las para as tarefas é chamado de ponto de compromisso .
  • Como e quando a equipe começa a trabalhar em uma tarefa, ela passa para a coluna ” Fazendo “.
  • Stickies, fotos e comentários são chamados Visual Cards.
  • Há um limite de tarefas que podem estar presentes em “Fazendo” e esse limite é conhecido como ” limites WIP”.
  • E, finalmente, quando a tarefa for concluída e ela for transferida para Concluído de Fazer , esse momento será chamado Ponto de Entrega.

Exemplos do Conselho – Exemplo de Vida Pessoal

Se você precisar organizar uma festa de aniversário, qual será sua estratégia? Primeiro, vamos anotar o que precisamos fazer. Abaixo estão as tarefas que são necessárias:

  • Criar lista de convidados
  • Decidir o local e o tema
  • Convidar as pessoas
  • Organizar comida
  • Ajustar as decorações
  • Garantir um bolo e uma roupa adequada de aniversário
  • Fazer a organização dos presentes

Nesse sentido, todas as atividades mencionadas acima servirão como nossa “Lista de tarefas”, podemos “puxar” uma tarefa da base “lista de tarefas”; sua criticidade e viabilidade para “Em andamento” e, assim que terminar, a moveremos para “Concluído”.

Se necessário – cada item da tarefa pode ter um nome individual atribuído a ele. Por exemplo

  • Criar lista de convidados – Mãe
  • Decidir o local e o tema – Pai
  • Convidar as pessoas – Pai
  • Organizar comida – Pai
  • Ajustar as decorações – Mãe
  • Garantir um bolo e uma roupa adequada de aniversário – Cunhada
  • Fazer a organização dos presentes – Cunhado

Da mesma forma, a data limite ou prazo, durante o qual deveríamos terminar a atividade, também pode ser atribuído a cada atividade. As linhas de tempo precisam ser atribuídas com base na criticidade de uma atividade.

Por exemplo:

  • “Convidar Convidados” – Como os convidados podem solicitar licenças nos respectivos escritórios, reserve passagens de avião / trem para que possamos decidir realizar essa atividade pelo menos dez dias antes do aniversário.
  • “Fazer uma lista de convidados” – Somente após a preparação da lista de convidados os convidados poderão ser convidados. Aqui, você planeja convidar convidados com dez dias de antecedência, para que a lista de convidados seja preparada pelo menos 12 dias antes do aniversário.

Como maneiras, você pode atribuir uma linha do tempo para todas as atividades listadas.

Exemplo de Board para desenvolvimento de software

No desenvolvimento de software, podemos ter as seguintes colunas:

  • Analisar
  • Projeto
  • Desenvolver
  • Testar
  • Implantar

Nota – Uma tarefa pode passar por tantas colunas quanto o fluxo de trabalho escolhido permitir.

Primeiramente para qualquer novo desenvolvimento de software, há uma lista de atividades pendentes; a equipe de desenvolvimento poderá extrair itens da Tarefa pendente para em andamento e movê-los para Trabalho em andamento, chamado de sistema puxado.

Enquanto no WIP, eles analisam, projetam e desenvolvem, e a equipe de teste conclui o Teste e os move para Implantar.

Exemplo-de-Kanban-Board

Papéis e responsabilidades:

No Kanban, a parte mais importante é o Kanban Board. Fora isso, temos:

Gerente de projeto, responsável por:

  • Gerenciamento de equipes;
  • Motivar a equipe;
  • Garantir que o trabalho termine a tempo
  • Garantir que o Kanban Board seja atualizado o tempo todo
  • Garantirá que a lista de pendências seja mantida

Membro da equipe Kanban

Além de gerente de projetos, todos os outros são chamados de ” membros da equipe do Kanban ” e serão responsáveis ​​por todo o fluxo de trabalho do Kanban.

Além disso não é necessário que uma equipe Kanban seja multifuncional, pois o fluxo de trabalho do Kanban deve ser usado por toda e qualquer equipe envolvida nesse projeto em particular.

Portanto, um grupo de especialistas e uma equipe separada de generalistas podem estar trabalhando em diferentes aspectos do mesmo projeto Kanban e usando o mesmo quadro Kanban.

Enfim o Kanban não possui funções e responsabilidades específicas além de Gerente de equipe e projeto ou conjunto de processos. Não há papéis prescritos.

Isto é, praticamente, qualquer pessoa com experiência pode servir como gerente ou supervisor de projeto, especialmente para projetos Kanban maiores e mais complexos, mas as funções devem evoluir teoricamente com as necessidades do projeto e da organização.

Fluxo de trabalho do processo Kanban

Isso funciona em quatro princípios básicos, que são:

  1. Comece com o que você tem
  2. Concorda em buscar mudanças incrementais e evolutivas
  3. Incentivar o ato de liderança em todas as etapas
  4. Respeite o processo, as funções, a responsabilidade e o título atuais.

A priori o Kanban também pode servir como uma técnica para organizar o trabalho de suporte ao desenvolvimento de software.

Em seguida vamos tentar entender como a equipe de suporte ao desenvolvimento de software funcionaria da perspectiva do Kanban. Por exemplo, seu cliente percebe qualquer erro na interface do seu aplicativo, por exemplo:

A matriz não carrega, o cliente não pode acessar sua conta ou o novo recurso não está lá, etc. Em seguida, eles vão para o quadro Kanban e criam uma tarefa nele. Caberá à equipe de suporte e, se não conseguirem resolvê-lo, eles o atribuirão ao desenvolvedor front-end para fornecer uma solução e corrigir o problema.

No nosso exemplo Kanban, dividimos o quadro usando o seguinte fluxo de trabalho:

Começaremos com o que tivermos:

Com toda a certeza a regra básica do Kanban é começar com o que você tiver. Em nosso exemplo, quando uma tarefa é gerada, o membro da equipe de suporte começa a trabalhar nela com as informações fornecidas para fornecer resolução.

  • Se os membros da equipe de suporte fornecerem a resolução, ela irá diretamente para o bloco Concluído em Em andamento.
  • Caso contrário, o membro do suporte o atribuirá ao Desenvolvedor Front-End. O desenvolvedor analisa a situação e tenta resolver a tarefa. Depois que o trabalho é resolvido, ele passa para a coluna Concluído .

Concorde em buscar mudanças evolutivas e incrementais:

Por outro lado um desenvolvedor manterá todas as informações fornecidas, como capturas de tela, detalhes de erros etc. em um único local para referência futura. A documentação da análise da causa raiz, as medidas tomadas e a manutenção de todas essas informações são de grande importância.

Incentive o ato de liderança em todas as etapas:

Em suma o Kanban enfatiza que as pessoas de qualquer nível podem contribuir para a melhoria contínua da entrega e do processo, fornecendo idéias inovadoras e mostrando suas habilidades de liderança enquanto implementam mudanças.

Para incentivar o ato de liderança, enfatiza que devemos

  • Deixe-os tomar decisões importantes
  • Dê-lhes responsabilidade com base em seus pontos fortes
  • Ajude-os a planejar seu futuro na organização
  • Confie neles pelo seu trabalho
  • Ajude-os a crescer no processo

Respeite o processo, as funções e a responsabilidade atuais:

O Kanban segue o princípio “comece com o que você faz agora“. Precisamos respeitar as posições existentes e começar a partir daí.

Posteriormente, dependendo do feedback, os papéis podem ser alterados ou surgidos. Este método evita a introdução de alterações adicionais.

Inclusive no Kanban, resolver o objetivo da função é mais importante do que atribuir a alguém um cargo. É como um “chapéu”, quem estiver confortável carregando-o pode usá-lo.

Scrum vs. Kanban:

O Kanban adota alguns dos princípios do Scrum, mas existem algumas diferenças fundamentais entre o Kanban e o Scrum .

ScrumKanban
Funções da equipeScrum master, proprietário do produto e membros da equipe formam uma equipe scrumNão há funções definidas definidas. As funções não precisam ser multifuncionais
BoardAs colunas verticais no scrum ativo de um painel de tarefas do Scrum são usadas para refletir cada estágio do fluxo de trabalho do projeto.

O progresso de cada tarefa é mencionado na coluna “Tarefas”.

As colunas verticais do Kanban Board refletem os estágios do fluxo de trabalho, como pendências, Em andamento e Concluído.

Mas em Kanban, há um limite para o máximo de histórias. Histórias limitadas podem estar presentes lá a bordo para essa coluna específica.

Método de liberaçãoNo final de cada sprint.Entrega contínua
FilosofiaA equipe não deve trazer e retirar as tarefas durante o sprint. Alterações na entrega do Sprint precisam passar pelos canais adequados.Alterações e modificações podem acontecer a qualquer momento pela equipe que trabalha nela.
CadênciaSprints regulares de duração fixa (ou seja, duas semanas)Fluxo contínuo
Metodologia de liberaçãoNo final de cada sprint, se aprovado pelo proprietário do produtoEntrega constante ou a critério da equipe

Às vezes, a equipe mistura os artefatos de Kanban e Scrum para produzir Scrumban . Isso é feito através da seleção de funções de sprints e scrum com prazo determinado na metodologia Scrum e limite de WIP e tempo de ciclo  na metodologia Kanban.

No entanto, para iniciantes, é recomendável usar apenas uma das metodologias e se acostumar com isso.

Concluindo, comece com pequenos passos, e você como está fazendo na sua empresa? Comente aqui

Referências

  1. Wikipedia – Sistema Toyota de Produção
Tags:,
  1. Excelente material, parabens!!!!!

    Existe algum template que possa ser disponibilizados com os graficos de metricas kanban para quem nao tem ferramentas para tal?

    Obrigado

    Railton

Leave a Reply