Desenvolimento Agil x Dirigido a planos

  • agil: considera o projeto e impl como atividades centrais no software.
  • planos: identifica estagios distintos do processo de software com saidas de cada estagio, usadas no pŕoximo

qual escolher?

planos: se o projeto for grande e se for preciso documentar tudo antes, sem feedback rapido do cliente ou sem a capacitacao completa e adequada da equipe de desenvolvimento.

agil: caso contrario

Desenvolimento Agil

filosofia do manifesto:

  • individuos e interacoes acima de processos e ferramentas.
  • software operacional acima de documentacao abrangente.
  • colaboracao dos clients acima de negociacoes de contratos.
  • responder a mudancas acima de seguir um plano.

preceitos chaves

  • dificil entender todos os requisitos
  • dificil projetar o projeto todo

principios

  1. entrega antecipada e continua
  2. mudancas nos requisitos sao importantes
  3. entregar software funcional com frequencia
  4. stakeholders e desenvolvedores devem trabalhar juntos diariamente durante o projeto
  5. individuos precisam estar motivados
  6. conversa aberta e presencial
  7. medida de progresso eh a entrega de software
  8. todos devem ser capacitados e manter um ritmo constante
  9. excelencia tecnica
  10. simplicidade
  11. equipes devem ser auto organizaveis
  12. adaptar comportamente da equipe
  • deve-se ponderar comunicação com os stakeholders e ter um membro comunicativo para tal.
  • nem sempre documentação é priorizada.

fatores humanos

  • competencia
  • foco comum: entregar o incremento
  • colaboração
  • habilidade na tomada de decisão: autonomia para a equipe
  • Auto-organização

Extreme Programming (XP)

Valores:

  1. Comunicação
  2. Simplicidade
  3. Feedback
  4. Coragem
  5. Respeito

Fases do XP:

  • Planejamento: histórias de usuários, valor e custo
  • Projeto: cartões CRC, refatoração, simplicidade
  • Codificação: testes de unidade, programação em par, integração contínua
  • Testes: test-first, testes de cliente (aceitação)

SCRUM

  • Foco: gerenciamento iterativo
  • Scrum Master: facilitador do processo
  • Product Owner: prioriza backlog
  • Não especifica práticas como XP, mas pode adotá-las

Conceitos:

  • Product Backlog: lista priorizada de requisitos
  • Sprint: ciclos de 30 dias, com reuniões de revisão e retrospectiva
  • Reuniões diárias (15 min): o que fez, obstáculos, o que fará
  • Demos: entrega e avaliação de incrementos

Considerações Finais

  • Métodos ágeis e dirigidos a planos podem ser combinados
  • Adaptar o processo conforme o projeto e a organização