2. XP? Construir sistemas de alta qualidade, que atendam aos clientes. XP exige um ciclo constante de inspeção, adaptação e melhoria. Controlar custo, tempo, qualidade e escopo. "A XP é uma maneira leve, eficiente, de baixo risco, flexível, previsível, científica e divertida de desenvolver software." (Kent Beck, 2004)
3. Problemas encontrados Mudança de requisitos, conforme o cliente vai usando o produto. Maiores gastos de um projeto é na fase de manutenção. Mudanças são indesejáveis. Prever custa caro e ainda é incerto. Construir flexibilidade também custa caro. Evitar generalizações.
4. Problemas encontrados Taxa alta de fracassos nos projetos. Entregar tudo que o cliente quer é complicado. O cliente deixa de usar muitas funcionalidades. Grande quantidade de conhecimento em poucas pessoas do projeto. Baixa qualidade.
5. Manifesto Ágil Indivíduos e interações são mais importantes que processos e ferramentas. Software funcionando é mais importante que documentação completa e detalhada. Colaboração com o cliente é mais importante que negociação de contratos. Adaptação a mudança é mais importante que seguir um plano.
6. Comunicação Presença e envolvimento real com o cliente. Programação em par. Uso de métricas. Reunião em pé.
8. Feedback Adaptar às mudanças. Redução dos ciclos de feedback. Programação em par. Desenvolvimento dirigido por testes. Ferramentas para coletar métricas de forma rápida e constante.
9. Coragem Permitir ao cliente priorizar funcionalidades. Estimar na presença do cliente. Programação em par. Refatorar. Testes.
11. Princípios Satisfação do cliente. Mudanças são bem vindas. Entrega rápida e contínua de software que funciona. Qualidade. Indivíduos motivados, confiantes. Ritmo sustentável.
12. Princípios Comunicação face a face. Excelência técnica e bom design. Simplicidade. Equipes auto-gerenciadas. Reflexão constante do time, para se tornar mais eficiente e refinado.
13. Práticas Sentar-se junto, fortalecendo a comunicação. Ambiente informativo, um observador interessado deve encontrar as informações necessárias de forma rápida e fácil. Trabalho energizado, sem cansaço ou indisposição. Programação em par, melhora a comunicação, qualidade e dissemina o conhecimento.
14. Práticas Histórias, descreve uma unidade de funcionalidade. Ciclo semanal, interativo e incremental. Build em 10 minutos, build automático e testes deve rodar em 10min. Integração contínua, sempre trabalhar com o sistema atualizado. Desenvolvimento dirigido por testes, automatizar. Design incremental, simples sim (simplista não).
15. Práticas Jogo do planejamento, determinar o escopo da próxima versão e contemplar os requisitos. Propriedade coletiva do código. Padrões de codificação.
16. Adaptações Cada time deve se adaptar da maneira que achar melhor. Retrospectivas. Reunião em pé, prática SCRUM. Reunião diária curta e informal. O que fez ontem? O que vai fazer hoje? Existe algum impedimento para o seu progresso?
17.
18. Papéis principais Programadores, foco central da metodologia, desenvolvimento. Treinador (coach), lembra os outros das regras do jogo. Acompanhador (tracker), traz para o time dados, informações e ajuda a equipe a tomar decisões. Cliente, em XP o cliente faz parte da equipe. Deve estar sempre presente e pronto para responder às dúvidas dos programadores.
19. Conclusão Para aplicar XP é preciso conhecimento e paciência, uma prática ajuda a outra a tornar a equipe azeitada e desenvolver um produto com qualidade e valor para o cliente.