Metodologias Ageis
Metodologias Ágeis em Engenharia de Software
As metodologias ágeis são abordagens iterativas e incrementais para o desenvolvimento de software, focadas em entrega rápida, adaptação a mudanças e colaboração com o cliente. Surgiram como alternativa aos modelos tradicionais (como Cascata) com o Manifesto Ágil (2001), baseado em 4 valores e 12 princípios.
Principais Metodologias Ágeis
- Scrum: Framework com ciclos curtos (Sprints), papéis definidos (Product Owner, Scrum Master, Dev Team) e artefatos (Product Backlog, Sprint Backlog).
- Kanban: Visualização do fluxo de trabalho (quadro Kanban) com limites de trabalho em progresso (WIP).
- XP (Extreme Programming): Foco em qualidade com práticas como programação em par, integração contínua e testes automatizados.
- Lean: Eliminação de desperdícios e otimização de valor, inspirado no Toyota Production System.
Conceitos-Chave para Concursos
- Iteração e Incremento: Desenvolvimento em ciclos curtos com entregas parciais funcionais.
- Auto-organização: Times multidisciplinares sem hierarquia rígida.
- Entrega Contínua: Software sempre em estado potencialmente entregável.
- Cerimônias do Scrum: Daily Stand-up, Sprint Planning, Review e Retrospective.
Vantagens e Desafios
Vantagens: Flexibilidade, redução de riscos, maior envolvimento do cliente.
Desafios: Requer cultura colaborativa, dificuldade em projetos com escopo fixo ou grandes equipes.
Diferenças para Modelos Tradicionais
Ágil vs. Cascata: Adaptação a mudanças (ágil) vs. planejamento rígido (cascata); documentação enxuta vs. documentação extensa.