Pular para o conteúdo

O que é Desenvolvimento Ágil?

Ágil é o nome guarda-chuva para uma família de métodos construídos em torno de uma única aposta: o software é imprevisível demais para ser planejado em detalhes de antemão, então entregue em pequenas fatias, ouça o que retorna e ajuste constantemente.

Esta página cobre o contexto. Se você já sabe tudo isto, passe direto para Como o East Agile Tracker se mapeia ao ágil.

Em fevereiro de 2001, dezessete profissionais de software — Kent Beck, Martin Fowler, Robert Martin, Ron Jeffries e outros — se reuniram em um chalé de esqui em Utah e escreveram o que tinham em comum. Eles o chamaram de Manifesto Ágil. São quatro linhas:

Estamos descobrindo maneiras melhores de desenvolver software, fazendo-o nós mesmos e ajudando outros a fazê-lo. Por meio deste trabalho, passamos a valorizar:

  • Indivíduos e interações mais que processos e ferramentas
  • Software em funcionamento mais que documentação abrangente
  • Colaboração com o cliente mais que negociação de contratos
  • Responder a mudanças mais que seguir um plano

Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à esquerda.

É isso. Uma página de preâmbulo, doze princípios de apoio e as quatro linhas acima. É o documento mais influente da prática moderna de software.

Por trás dos quatro valores, os doze princípios do manifesto detalham como o “ágil” realmente se parece no dia a dia:

  1. A maior prioridade é satisfazer o cliente por meio da entrega contínua e adiantada de software valioso.
  2. Aceite requisitos em mudança, mesmo tardiamente. Processos ágeis aproveitam a mudança para a vantagem competitiva do cliente.
  3. Entregue software em funcionamento com frequência — semanas, em vez de meses.
  4. Pessoas de negócio e desenvolvedores devem trabalhar juntos diariamente.
  5. Construa projetos em torno de indivíduos motivados. Dê a eles o que precisam e confie que farão o trabalho.
  6. A forma mais eficiente de transmitir informação é a conversa face a face.
  7. Software em funcionamento é a principal medida de progresso.
  8. Processos ágeis promovem o desenvolvimento sustentável — um ritmo constante, indefinidamente.
  9. A atenção contínua à excelência técnica e ao bom design aumenta a agilidade.
  10. Simplicidade — a arte de maximizar a quantidade de trabalho não feito — é essencial.
  11. As melhores arquiteturas, requisitos e designs emergem de equipes auto-organizadas.
  12. A equipe reflete regularmente sobre como se tornar mais eficaz, depois ajusta e adapta seu comportamento.

“Ágil” é um guarda-chuva. Sob ele residem várias metodologias distintas:

  • eXtreme Programming (XP) — A mais exigente da família. Programação em par, TDD, integração contínua, cliente no local, releases pequenos. Veja nossa página sobre XP.
  • Scrum — Iterações delimitadas no tempo chamadas sprints, reuniões diárias, papéis nomeados (Product Owner, Scrum Master). Mais leve em práticas de engenharia que o XP.
  • Kanban — Visualize o fluxo de trabalho, limite o trabalho em progresso, otimize o fluxo. Sem caixas de tempo; puxe em vez de empurrar.
  • Lean — Emprestado do sistema de manufatura da Toyota: elimine o desperdício, otimize o todo, entregue rápido, incorpore qualidade.

Esses métodos se sobrepõem e se combinam. A maioria das equipes que trabalham escolhe a dedo dos quatro. O East Agile Tracker tem opiniões fortes voltadas ao XP — veja eXtreme Programming — mas a maior parte do que ele oferece funciona para qualquer sabor de ágil.

Alguns equívocos persistentes que vale a pena nomear:

  • Ágil não é “sem planejamento”. Os planos são menores e mais curtos, mas o planejamento é constante.
  • Ágil não é “sem documentação”. Escreva o que for necessário. O manifesto diz que software em funcionamento é mais valioso que documentação abrangente — não que documentação seja ruim.
  • Ágil não é Scrum. Scrum é um método ágil. Há vários.
  • Ágil não é uma ferramenta. Nenhuma ferramenta te torna ágil. Ágil é uma forma de trabalhar. Ferramentas (incluindo esta) ajudam; não substituem.

O East Agile Tracker é projetado em torno dos princípios acima. Eis a correspondência:

PrincípioComo o tracker o apoia
Entrega contínuaIterações de 1–4 semanas; planejamento automático baseado em velocidade; releases como tipo de história de primeira classe.
Aceitar a mudançaReordene o backlog a qualquer momento; histórias se movem livremente entre iterações; sem “trava de iteração”.
Software em funcionamento como a medidaA velocidade conta pontos aceitos por padrão — apenas o trabalho entregue e funcionando conta.
Ritmo sustentávelA velocidade não é uma meta; é uma observação. O sistema planeja a próxima iteração com o que você realmente faz.
ReflexãoAnálises por iteração: burndown, taxa de rejeição, tempo de ciclo, projeções.
Equipes auto-organizadasOs papéis são intencionalmente mínimos: owner / member / viewer. A equipe decide.
SimplicidadeO painel de detalhes é uma tela. O quadro cabe em uma página. Resistimos a recursos que distraem da entrega.

O manifesto foi escrito em 2001. Desde então, o desenvolvimento de software ganhou um novo tipo de participante: agentes de IA.

Acreditamos que os agentes pertencem à equipe ágil — como participantes nomeados, com seus próprios papéis, fazendo trabalho real ao lado dos humanos. Os princípios ainda valem. Indivíduos e interações agora inclui participantes agentes. Equipes auto-organizadas agora inclui decidir quais agentes trazer e o que eles podem fazer. Reflexão agora inclui examinar as contribuições dos agentes no registro de atividade e ajustar no que eles estão trabalhando.

O East Agile Tracker é construído para tornar isso prático. Toda história pode ser de propriedade de um humano ou de um agente. Cada entrada na trilha de auditoria atribui o ator real. Cada ação que um agente realiza é visível, revisável e revogável.

Construído pela East Agile.