Metodologia ágil é uma forma de planejar e entregar o projeto em partes, de forma incremental, gerando valor para a organização ou para o cliente em períodos curtos, em vez de planejar tudo e entregar de uma só vez no final.
Ser ágil é ter a habilidade de trazer valor aos clientes, em um ambiente dinâmico, com incertezas, volatilidade, mudanças e adaptação constante, e não significa ser rápido. Na verdade, ser ágil é produzir mais em menos tempo.
O manifesto ágil criou frameworks e métodos para gerenciar o desenvolvimento de produtos. Os mais populares são: scrum, Extreme Programming (XP), Crystal, Dynamic Systems Development Method (DSDM), Lean Development, e Feature-Driven Development (FDD).
Valores do Manifesto Ágil
Indivíduos e Interações mais que Processos e Ferramentas
Produto em Funcionamento mais que Documentação Abrangente
Colaboração com o Cliente mais que Negociação de Contratos
Respostas a Mudanças mais que Seguir um Plano
Mas, antes de entrarmos nas metodologias ágeis, vamos ver alguns conceitos importantes.
Design Thinking: É uma maneira de pensar. É geralmente considerado como a habilidade de combinar empatia pelo contexto do problema, criatividade na geração de insights e soluções, e a racionalização de analisar e formatar as soluções do contexto, tendo as pessoas no centro do desenvolvimento.
Story mapping: é a atividade em que se realiza a definição e decomposição do produto de forma visual por meio de um mapa (story map).
Mínimo Produto Viável, ou MVP (minimum viable product): segundo Jeff Patton é “a menor versão de um produto entregue, a qual atinge com sucesso os resultados desejados”.
Metodologia Lean
A metodologia Lean, também conhecida como Lean Thinking, é uma abordagem de gestão originada no sistema de produção da Toyota no Japão, na década de 1950, que se concentra na eliminação de desperdícios e na maximização do valor entregue ao cliente.
A filosofia Lean pode ser aplicada em uma variedade de contextos, desde a fabricação até os serviços, incluindo desenvolvimento de software e gerenciamento de projetos.
Como princípios fundamentais, essa metodologia traz:
Entrega de um fluxo constante de valor ao cliente: o lean busca orquestrar todo este ambiente complexo de modo a criar um fluxo contínuo de entrega de alto valor agregado.
Criação de uma organização que aprende: não existe desenvolvimento sem a aquisição contínua de conhecimento. Criar mecanismos para que o aprendizado seja inserido implicitamente no processo de desenvolvimento é um princípio essencial do Lean.
Criação de um ambiente de melhoria contínua: no Lean, as pessoas são desafiadas a não se acomodar com o status quo e a criticar continuamente os padrões existentes em busca de melhorias.
Identificação e eliminação de desperdícios: o Lean ensina a categorizar e entender o que é desperdício de modo que possamos removê-lo. (Exemplos de desperdício: Work in Progress [trabalhos em andamento são considerados desperdício pois ainda não proporcionam valor algum, para nenhuma das partes], funcionalidades extras, processos extras, troca constante de tarefas, atrasos nas entregas, defeitos nas entregas [bugs], complexidade desnecessária).
Implementação do Pull System: em vez de produzir com base em previsões ou em lotes fixos, o Lean incentiva a adoção de um sistema puxado (pull system), no qual o trabalho é iniciado apenas quando há demanda do cliente. Isso ajuda a reduzir o excesso de produção e a minimizar o desperdício.
Respeito pelas pessoas: o Lean reconhece que as pessoas são o recurso mais valioso em qualquer organização. Ele promove um ambiente de trabalho que valoriza e respeita os funcionários, incentivando a participação, o trabalho em equipe e o desenvolvimento pessoal e profissional.
Framework SCRUM
Scrum é um "framework por meio do qual pessoas podem tratar e resolver problemas complexos e adaptativos, enquanto produtiva e criativamente entregam produtos com o mais alto valor possível".
Esse framework tem como pilares a transparência, inspeção e adaptação, e carrega como valores o foco, respeito, comprometimento, coragem e abertura para compartilhamento de novas ideias.
Papeis e responsabilidades
O Scrum define claramente os papéis que devem ser desempenhados pelos membros da equipe para garantir uma colaboração eficaz e a entrega contínua de valor ao cliente. Cada papel possui responsabilidades específicas que contribuem para o funcionamento fluido do processo de desenvolvimento.
Scrum Master: auxilia a compreender e adotar os valores e práticas do scrum da melhor maneira possível. Direcionado para pessoas e processos.
Product Owner (P.O.): dono do produto, o cliente ou representante do cliente. Direcionado para o negócio.
Time Scrum: as pessoas que efetivamente realizarão as atividades de construção do produto.
Artefatos do framework SCRUM
Product Backlog
Lista priorizada de requisitos necessários para evoluir no desenvolvimento do produto.
É dinâmica, podendo ser atualizada conforme necessário.
Sprint
Ciclo de trabalho que pode durar de uma a quatro semanas.
Ao término de cada sprint, o time gera um novo incremento do produto, isto é, a soma de todos os itens do backlog construídos durante a sprint, adicionados aos incrementos construídos nas sprints anteriores.
A sprint é organizada em eventos de planejamento, monitoramento, controle e aprendizado contínuo.
Sprint Planning
Reunião em que é determinado o backlog da sprint, ou seja, é definido o que pode ser entregue na sprint que se inicia e como o trabalho será feito.
A duração sugerida para a reunião é de duas horas para cada semana de sprint. Portanto, caso a sprint seja de duas semanas, a reunião de planejamento poderá levar até quatro horas.
Aqui também é importante definir a alocação do time para o desenvolvimento das atividades.
Daily Scrum
Após o início de uma sprint, a daily scrum acontece para que o time planeje o trabalho para as próximas 24 horas.
É uma oportunidade de inspecionar a sprint atual e verificar seu progresso, além de identificar os gargalos e as dependências que possam ameaçar a sprint atual.
Os membros do time relatam rapidamente em que estão trabalhando e se têm algum impedimento (algo que esteja bloqueando ou desacelerando seu trabalho).
Mais importante do que relatar “em que trabalharam ontem” e “em que trabalharão até a próxima reunião diária”, o time relata de forma transparente qual a sua real confiança em cumprir o planejado para a sprint atual.
Sprint Review
É uma reunião de revisão da sprint, que tem como objetivo inspecionar as entregas feitas pelo time durante a sprint e adaptar o backlog do produto, se necessário.
Ela tem duração de até uma hora por semana de sprint – o que significa que, para sprints de duas semanas, a revisão pode durar até duas horas.
Nessa reunião, o time compartilha o que foi construído na sprint.
O P.O. (e os stakeholders que podem ser convidados para a reunião) fornece feedback e o time todo discute sobre as entregas realizadas e realiza projeções para as próximas entregas baseado no que foi construído até o momento.
Sprint Retrospective
Assim como a reunião de revisão, todo o time deve participar da retrospectiva
A retrospectiva da sprint é uma oportunidade para o time scrum se inspecionar e criar um plano de melhorias para ser executado durante a próxima sprint.
Release
É a entrega gradual de acordo com o feedback do cliente, aproximando-se cada vez mais do resultado ideal desejado por ele.
A implantação de metodologias ágeis em organizações, independentemente do setor em que operam, representa uma abordagem transformadora para alcançar maior eficiência, flexibilidade e adaptabilidade em um ambiente de negócios em constante mudança.
Ao adotar princípios ágeis, como colaboração, feedback contínuo, iteração rápida e foco no valor do cliente, as organizações podem enfrentar os desafios de forma mais ágil e responder rapidamente às demandas do mercado.
Saiba como implementar medotologias ágeis no seu negócios.
Comentarios