5 Valoes:
- Comunicação
- Simplicidade
- Feedback
- Coragem
- Respeito
(Co SI FE CO RE)
DÉBITO TÉCNICO:
Total de desenvolvimento feito de maneira rápida e simples sem, às vezes, levar em consideração testes e arquitetura do sistema
Na XP todas as decisões sobre o rumo do projeto devem ser tomadas pelo cliente. Ele deve priorizar as tarefas, ser responsável pelos testes de aceitação, e, acima de tudo, orientar e tirar dúvidas dos desenvolvedores durante o processo de programação.
Estimativa > 3 semanas
(Cliente divida a história
em histórias menores)
Refatoração
Annotations:
Refabricação é o processo de alteração de um sistema de software de tal forma que não se altere o comportamento externo do código, mas se aprimore a estrutura interna. é uma forma disciplinada de organizar código e que minimiza as chances de introdução de bugs. em resumo, ao ser refabricar, se esta aperfeiçoando o projeto de codificação depois de este ter sido feito.
Projeto
Manter
Simplicidade
Único Artefatos
(Cartões CRC)
Problema Difícil
(Solução Pontual)
Protótipos
Ocorre tanto antes como
depois de ter dado início a
codificação
Codificação
Annotations:
KIS (Mater simplicidade)
O código deve ser de propriedade de todos e todos devem ter permissão para alterar o que for necessário para que seu trabalho possa ser desenvolvido e, também, para se evitar atrasos no desenvolvimento, devido à necessidade de alterações nas rotinas.
Criação de Testes
de Unidades
Annotations:
1 - Primeiro passo: É o teste de unidade depois codificação. Elemento Chave.
Programação
em Dupla
Annotations:
Cada um assume um papel, ligeiramente, diferente.
na XP todo o código deve ser produzido por duas pessoas utilizando o mesmo computador. Enquanto um dos parceiros se preocupa com detalhes da implementação, ficando responsável pela digitação do código, o outro deve tentar ter uma visão mais ampla da rotina, imaginando as suas peculiaridades.
Testes
Testes de integração e
validação(VAL IN)
Annotations:
A técnica de Continuous Integration diz que o código desenvolvido por cada par de desenvolvedores deve ser integrado ao código base constantemente. Quanto menor o intervalo entre cada integração, menor a diferença entre os códigos desenvolvidos e maior a probabilidade de identificação de erros, pois cada vez que o código é integrado, todos os unit tests devem ser executados, e, se algum deles falhar, é porque o código recém integrado foi o responsável por inserir erro no sistema.