A metodologia Scrumban favorece a abordagem de desenvolvimento just-in-time, contribuindo para a redução dos tempos de entrega.
Você vai ler nesse artigo:
Metodologias Ágeis: Uma visão geral
A popularização das Metodologias Ágeis dentro das fábricas de software mundo a fora, foi responsável por pequenas, porém centradas na flexibilidade, colaboração e entrega contínua de valor ao cliente.
Na lista das metodologias ágeis para desenvolvimento de software existem três gigantes muito conhecidos: Scrum, Kanban e Lean, cada um contribuindo com princípios únicos para a eficiência do desenvolvimento ágil.
O Manifesto Ágil de 2001
No ano de 2001 um grupo composto por 17 profissionais que vivenciavam práticas ágeis criaram e assinaram juntos o Manifesto para Desenvolvimento Ágil de Software, originalmente em inglês Manifesto for Agile Software Development.
O documento compila os valores e princípios das metodologias ágeis, como resposta à complexidade da engenharia de software e às limitações dos modelos tradicionais. No artigo ‘O que é o Manifesto Ágil?‘ explicamos ele detalhadamente.
O mínimo sobre Scrum
O Scrum é uma metodologia ágil que se baseia em controle empírico, adotando uma abordagem iterativa e incremental. Caracteriza-se por fases bem definidas, papéis específicos, e rituais estabelecidos.
Oficialmente existem 3 papéis no Scrum: O Product Owner, responsável pelo produto e pela visão do cliente, o Scrum Master, que lidera a equipe. Juntos, orientam o Scrum Team composto por profissionais multifuncionais que transformam requisitos em incrementos de produto.
O Scrum possui cerimônias e/ou reuniões com funções específicas e definidas:
- Sprint Planning
- Daily Scrum
- Sprint Review
- Sprint Retrospective
Juntas, essas quatro reuniões, se executas corretamente, garantem a colaboração contínua e de resultado entre a equipe ao longo do desenvolvimento.
O mínimo sobre Kanban
O Kanban representa uma abordagem ágil distinta, centrada na melhoria contínua do processo. Fruto dos processos empregados em chão de fábrica e em modelos de produção industria, foi introduzido por David Anderson.
Os princípios do Kanban visam à redução de desperdícios e à construção de um software coeso, ao incorporar os princípios Lean, não apenas elimina desperdícios, mas amplia o conhecimento, permite tomadas de decisões no momento ideal e promove lançamentos frequentes.
O desafio Ágil no desenvolvimento de software
O grande paradigma, ou melhor, o grande desafio a ser superado através da agilidade no desenvolvimento de software é a resposta ágil à mudanças, reconhecendo que as necessidades do projeto podem evoluir ao longo do tempo.
Essa característica é provavelmente o maior diferencial entre as metodologias e métodos tradicionais, que geralmente seguem processos rígidos e muitas vezes burocráticos.
O mais importante é ter claro em mente o seguinte conceito: A agilidade concentra-se em responder rapidamente às demandas do cliente, produto, projeto e mercado, adaptando-se continuamente para atender tais mudanças.
O que é Scrumban?
O ideia do Scrumban, foi concebida e proposta inicialmento por Corey Ladas em seu livro “Scrumban: Ensaios sobre Sistemas Kanban para o Desenvolvimento de Software Enxuto”, como uma alternativa ágil para equipes de desenvolvimento.
Ladas, propôs o Scrumban como uma alternativa híbrida e intermediária entre o framework Scrum e a metodologia Kanban, com o objetivo de facilitar a transição gradual para a gestão ágil.
Esse método busca simplificar a migração, permitindo que equipes abandonem gradualmente as práticas do Scrum em favor dos princípios do Kanban e, mais amplamente, dos métodos enxutos.
Princípios e objetivos do Scrumban
Ao priorizar o desenvolvimento just-in-time e a otimização dos tempos de entrega, o Scrumban oferece uma alternativa viável à rigidez e imperatividade de algumas ferramentas e cerimônias existentes no Scrum.
A aplicação do método não é restrita apenas para o gerenciamento de demandas imprevistas e/ou suporte em projetos já em fase de produção, mas principalmente no refinamento e entrega de valores, eliminando tarefas preliminares na inclusão de novas solicitações.
Sua concepção menos rígida e abertura para prazos mais flexíveis são qualidades relevantes do Scrumban em situações de erros, inclusão de novas User Stories e requisitos, ou ainda dificuldades na gestão do fluxo de trabalho por parte de equipes Scrum.
Vantagens e Desvantagens do Scrumban
O método Scrumban, ao adotar um sistema pull e incorporar elementos do Lean, oferece vantagens para o desenvolvimento de software, porém, assim como como toda metodologia, o Scrumban apresenta desafios: imposição de limites podem exigir uma mudança cultural na equipe.
Principais vantagens do Scrumban
Uma das principais vantagens é a flexibilidade na gestão do fluxo de trabalho, permitindo uma abordagem just-in-time e redução dos tempos de entrega. Além disso, a utilização de Kanban Boards físicas facilita a visualização do trabalho de forma simples e eficaz.
- Flexibilidade no Fluxo de Trabalho: A abordagem just-in-time permite ajustes dinâmicos nas atividades do projeto, adaptando-se às mudanças no ambiente de desenvolvimento.
- Uso de Kanban Boards: O uso de Kanban Boards físicas simplifica a gestão do fluxo de trabalho, proporcionando uma visualização clara e facilitando modificações.
- Redução de Tempos de Entrega: O Scrumban favorece tempos de entrega mais curtos, otimizando a eficiência do desenvolvimento de software.
- Integração de Práticas Lean: A introdução gradual de práticas Lean no processo Scrum permite uma transição suave, possibilitando à equipe compreender e incorporar essas práticas.
- Foco na Filosofia Lean: Ao incorporar elementos do Lean, o Scrumban estimula a equipe a pensar em termos de valor para o cliente e redução de desperdícios.
Principais desvantagens do Scrumban
Idealizar e import limites multitasking à equipe pode exigir grande mudança cultural, e a redução dos tempos de interação pode ser desafiador no longo do processo. Portanto, é crucial avaliar cuidadosamente os aspectos críticos ao adotar a metodologia.
- Mudança Cultural: A imposição de limites ao multitasking pode encontrar resistência na equipe, demandando esforços na mudança de mentalidade.
- Redução dos Tempos de Interação: A redução dos tempos de interação, embora benéfica, pode apresentar desafios práticos ao longo do processo de implementação.
- Compreensão da Filosofia Lean: Integrar práticas Lean exige tempo e compreensão gradual por parte da equipe, podendo gerar resistência inicial.
- Adoção Incremental: O processo de adotar gradualmente práticas Lean pode requerer paciência, pois cada mudança deve ser incorporada de forma efetiva pelos membros da equipe.
O objetivo dessas listas é permitir uma avaliação das vantagens e desvantagens do Scrumban. Sempre é válido ressaltar: toda metodologia deve ser entendida em sua profundidade, adaptando sua implementação à realidade do projeto e equipe de desenvolvimento.
Papéis e funções do Scrumban
Partindo dos papéis já existentes no Scrum, pode-se realizar uma transição para o Kanban reatribuindo funções, procurando manter, na medida do possível, uma linearidade nas responsabilidades durante essa mudança.
Time de Desenvolvimento
Conceitualmente para o Development Team, não há modificações a serem feitas, embora o Kanban permita a integração de vários Times Scrum em uma equipe de maior porte. Essa escolha pode ser conveniente para reduzir os custos de gestão.
Product Owner
O Product Owner pode se tornar o Service Request Manager na nova configuração da equipe. Suas habilidades de comunicação com o cliente e compreensão das prioridades para cada funcionalidade são qualidades úteis em ambos os papéis.
Scrum Master
O Scrum Master é provavelmente a figura mais indicada para assumir o papel de Service Delivery Manager. Sua habilidade em gerenciar uma equipe Scrum pode ser aproveitada na nova estrutura organizacional para orientar as atividades da equipe.
Kanban Coach
O papel do Kanban Coach pode exigir a introdução de uma nova pessoa na organização, caso nenhum membro da equipe tenha experiência prévia no mundo Lean ou Kanban.
Com o tempo, à medida que a equipe se familiariza com o novo método, esse papel pode ser atribuído ao Service Delivery Manager.
Scrumban: O melhor do Scrum e do Kanban
Quando estudamos de maneira séria o Scrumban e seu conceito, percebemos que essa metodologia oferece uma ponte eficaz entre o rigor do Scrum e a flexibilidade do Kanban.
O Scrumban permite que equipes de desenvolvimento de software alcancem um equilíbrio delicado entre planejamento estruturado e resposta ágil às solicitações de mudanças inesperadas, ajustando-se conforme as necessidades específicas do projeto.
Equipes que utilizam esse formato têm a oportunidade não apenas de melhorar a eficiência do desenvolvimento, mas também de promover uma cultura de aprendizado contínuo e adaptação constante.
A combinação de práticas ágeis do Scrum com os princípios visuais e limites do Kanban cria um ambiente propício para a inovação e melhoria gradual.