Metodologias ágeis: o que são e quais são?

Metodologias ágeis
11 de novembro de 2019
Última modificação: 27 de julho de 2021

Autor: Murilo Fms
Categorias: Blog

O que são metodologias ágeis?

Metodologias ágeis são diversas metodologias para a gestão de equipes multifuncionais de maneira simples e eficiente. Elas focam em melhorar a eficiência da comunicação e trabalhos de times, de maneiras simples e desburocratizada. Começaram sendo aplicadas para o desenvolvimento de softwares (como é o caso do SCRUM), mas evoluíram para outras atividades, de desenvolvimento ou de gestão.

As metodologias ficaram famosas com o manifesto ágil, uma declaração dos princípios que norteiam a maioria das metodologias.

Quais são as metodologias ágeis?

Metodologia Ágil Scrum

O Scrum é uma estrutura de gerenciamento de projetos ágil leve, com ampla aplicabilidade para gerenciar e controlar projetos iterativos e incrementais de todos os tipos. Ken Schwaber, Mike Beedle, Jeff Sutherland e outros contribuíram significativamente para a evolução do Scrum na última década, sendo que este conquistou crescente popularidade na comunidade de desenvolvimento de software ágil devido à sua simplicidade, produtividade comprovada e capacidade de atuar como invólucro para várias práticas de engenharia promovidas por outras metodologias ágeis. Com a metodologia do Scrum, os projetos são divididos em ciclos chamados de Sprints, no  qual o Product Owner (Dono do Produto) trabalha em estreita colaboração com a equipe para identificar e priorizar a funcionalidade do sistema na forma de um Product Backlog (Backlog do Produto), que consiste em recursos, correções de bugs, requisitos não funcionais etc. – tudo o que precisa ser feito para fornecer com êxito um sistema de software em funcionamento.

Com as prioridades orientadas pelo Dono do Produto, as equipes multifuncionais estimam e se inscrevem para fornecer “incrementos potencialmente entregáveis” de software durante Sprints sucessivos, normalmente com duração de 30 dias. Depois que o Backlog de um produto da Sprint é confirmado, nenhuma funcionalidade adicional pode ser adicionada ao ciclo, exceto pela equipe. Depois que um Sprint é entregue, o Backlog do Produto é analisado e priorizado, se necessário, e o próximo conjunto de funcionalidades é selecionado para o próximo Sprint. Foi comprovado que a metodologia Scrum pode ser dimensionada para várias equipes em organizações muito grandes com mais de 800 pessoas. Veja como o VersionOne suporta o Scrum Sprint Planning, facilitando o gerenciamento do Backlog do Produto.

A metodologia ágil do Kanban (Desenvolvimento Lean)

O desenvolvimento Lean é uma metodologia ágil iterativa originalmente desenvolvida por Mary e Tom Poppendieck. O Lean Software Development deve muitos de seus princípios e práticas ao movimento Lean Enterprise e às práticas de empresas como a Toyota. O Lean Software Development concentra a equipe na entrega de valor ao cliente e na eficiência do “fluxo de valor”, os mecanismos que entregam esse valor. Os princípios da metodologia Lean incluem:

  • Eliminar o desperdício;
  • Amplificar o aprendizado;
  • Decidir o mais tarde possível;
  • Entregar o mais rápido possível;
  • Capacitar a equipe;
  • Incorporar a Integridade;
  • Ver o Todo.

A metodologia Lean elimina o desperdício através de práticas como selecionar apenas os recursos realmente valiosos para um sistema, priorizar os selecionados e entregá-los em pequenos lotes. Ele enfatiza a velocidade e a eficiência do fluxo de trabalho de desenvolvimento e conta com feedback rápido e confiável entre programadores e clientes. O Lean usa a ideia de o produto de trabalho ser “puxado” por solicitação do cliente. Ele concentra autoridade e capacidade de tomada de decisão em indivíduos e equipes pequenas, pois a pesquisa mostra que isso é mais rápido e eficiente do que o fluxo hierárquico de controle.

O Lean também se concentra na eficiência do uso dos recursos da equipe, tentando garantir que todos sejam produtivos o máximo de tempo possível. Concentra-se no trabalho simultâneo e no menor número possível de dependências de fluxo de trabalho dentro da equipe. O Lean também recomenda enfaticamente que os testes de unidade automatizados sejam gravados ao mesmo tempo em que o código é gravado. O Método Kanban é usado pelas organizações para gerenciar a criação de produtos com ênfase na entrega contínua, sem sobrecarregar a equipe de desenvolvimento. Como o Scrum, o Kanban é um processo projetado para ajudar as equipes a trabalharem juntas de maneira mais eficaz.

O Kanban é baseado em 3 princípios básicos:

  1. Visualize o que você faz hoje (fluxo de trabalho): ver todos os itens no contexto um do outro pode ser muito informativo
  2. Limitar a quantidade de trabalho em andamento (WIP): isso ajuda a equilibrar a abordagem baseada no fluxo para que as equipes não iniciem e se comprometam com muito trabalho ao mesmo tempo
  3. Aprimore o fluxo: quando algo termina, a próxima coisa mais alta da lista de pendências é colocada em ação

O Kanban promove a colaboração contínua e incentiva o aprendizado ativo e contínuo e a melhoria, definindo o melhor fluxo de trabalho da equipe possível. Veja como o VersionOne suporta o desenvolvimento de software Kanban.

Programação Extrema (XP)

O XP, originalmente descrito por Kent Beck, emergiu como uma das metodologias ágeis mais populares e controversas. XP é uma abordagem disciplinada para fornecer software de alta qualidade de forma rápida e contínua. Promove alto envolvimento do cliente, ciclos rápidos de feedback, testes contínuos, planejamento contínuo e trabalho em equipe próximo para fornecer software de trabalho em intervalos muito frequentes, geralmente a cada 1-3 semanas. A receita original do XP baseia-se em quatro valores simples – simplicidade, comunicação, feedback e coragem – e em doze práticas de suporte:

  1. Jogo de Planejamento;
  2. Pequenas Versões;
  3. Testes de aceitação do cliente;
  4. Design simples;
  5. Programação em pares;
  6. Desenvolvimento Orientado a Testes;
  7. Refatoração;
  8. Integração contínua;
  9. Propriedade do código coletivo;
  10. Padrões de codificação;
  11. Metáfora;
  12. Ritmo Sustentável.

Don Wells descreveu o processo XP em um diagrama popular, no qual o “Cliente” trabalha em estreita colaboração com a equipe de desenvolvimento para definir e priorizar unidades granulares de funcionalidade, conhecidas como “Histórias do Usuário”. A equipe de desenvolvimento estima, planeja e entrega as histórias de usuários com a mais alta prioridade na forma de software testado e funcional, com base na iteração por iteração. Para maximizar a produtividade, as práticas fornecem uma estrutura leve e de suporte para orientar uma equipe e garantir software de alta qualidade.

Crystal

A metodologia Crystal é uma das abordagens mais leves e adaptáveis ​​ao desenvolvimento de software. Ela é realmente composta por uma família de metodologias ágeis, como Crystal Clear, Crystal Yellow, Crystal Orange e outras, cujas características únicas são impulsionadas por vários fatores, como tamanho da equipe, criticidade do sistema e prioridades do projeto. Esta família Crystal aborda a percepção de que cada projeto pode exigir um conjunto de políticas, práticas e processos levemente adaptados para atender às características exclusivas do projeto. Os princípios do Crystal incluem trabalho em equipe, comunicação e simplicidade, além de reflexão para ajustar e melhorar o processo com frequência. Como outras metodologias de processo ágeis, o Crystal promove a entrega precoce e frequente de software de trabalho, alto envolvimento do usuário, adaptabilidade e remoção de burocracia ou distração. Caso tenha gostado do assunto, Alistair Cockburn, o criador do Crystal, lançou um livro, Crystal Clear: A Human-Powered Metodology for Small Teams, que pode ser interessante para você.

Método Dinâmico de Desenvolvimento de Sistemas (DSDM)

O DSDM, datado de 1994, surgiu da necessidade de fornecer uma estrutura de entrega de projetos padrão do setor para o que era conhecido como RAD (Rapid Application Development) na época. Embora o RAD fosse extremamente popular no início dos anos 90, a abordagem do RAD para a entrega de software evoluiu de maneira bastante desestruturada. Como resultado, o DSDM Consortium foi criado e convocado em 1994 com o objetivo de criar e promover uma estrutura comum da indústria para a entrega rápida de software. Desde 1994, a metodologia DSDM evoluiu e amadureceu para fornecer uma base abrangente para planejar, gerenciar, executar e dimensionar processos ágeis e projetos iterativos de desenvolvimento de software. O DSDM é baseado em nove princípios-chave que giram principalmente em torno das necessidades/valor do negócio, envolvimento ativo do usuário, equipes capacitadas, entrega frequente, testes integrados e colaboração das partes interessadas.

O DSDM chama especificamente de “adequação aos objetivos de negócios” como o principal critério para entrega e aceitação de um sistema, concentrando-se nos 80% úteis do sistema que podem ser implantados em 20% do tempo. Os requisitos são baseados em alto nível no início do projeto. O retrabalho é incorporado ao processo e todas as mudanças no desenvolvimento devem ser reversíveis.

Quer conhecer mais sobre as metodologias ágeis?

Aproveite nosso plano de assinatura! Lá temos diversos cursos sobre essas e outras metodologias.

Deixe seu comentário

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

13 − três =