Você está na página 1de 32

Metodologias

geis
Extreme
Programming

Extreme Programming

A extreme programming
visa
um
rpido
desenvolvimento, com a
inteno de atender as
reais
necessidades
do
cliente e, ainda, permite
modificaes a cada nova
necessidade.

Extreme Programming

Extreme Programming

Extreme Programming

No assim que se faz


software

E x t re m e P ro g ra m m in g Fu n c io n a l id a d e
s vezes 16%
Frequentemente 13%
Raramente 19%

Sempre 7%

Nunca 45%

Extreme Programming

Uso de Funcionalidade

64% de
desperd
cio

Extreme Programming

64% de desperdcio

Extreme Programming

Uso de Funcionalidade

Extreme Programming

Uso de Funcionalidade

20% das
funcionalidades geram
80% do valor do

Extreme Programming

Falhas na comunicao

Extreme Programming

Comparao do
desenvolvimento
tradicional de software

Extreme Programming

O resultado por ser uma


surpresa

Extreme Programming

O resultado por ser uma


surpresa

Extreme Programming

Por que tem sido assim?

Extreme Programming

Dualidade

Mundo
Digital

Mundo
Fsico

Extreme Programming

Dualidade: Mundo Fsico

Companheiro, poderia
colocar
essa ponte um metro

Extreme Programming

No !!!

Extreme Programming

Dualidade: Mundo Digital

Extreme Programming

Dualidade: Mundo Digital


Fluidez
Maleabilidade
Invisibilidade
Complexidade (elementos
distintos)
Baixo custo de manufatura
Rpida evoluo

Extreme Programming

Foi criada em 1996, por Kent Bench;


Possui equipes mdias ou pequenas;
Comunicao intensa com o cliente;
Cdigo escrito em dupla;
Cdigo limpo para validao com os
programadores e o cliente;

Extreme Programming

Valores
Comunicao;
Simplicidade;
Feedback;
Coragem;
Respeito.

Extreme Programming

Princpios Bsicos
Feedback rpido;
Simplicidade;
Mudanas incrementais;
Abraar mudanas;
Trabalho de qualidade;

Extreme Programming

Prticas
Jogos de Planejamento (Planning
Games):
O desenvolvimento feito em iteraes;
So definidas prioridades para a estimao dos
desenvolvedores;
Escopo negocivel.

Pequenas Verses (Small Release):


Aceitao do cliente;
O cliente pode testar.

Metfora (Metaphor):
Facilitar a comunicao com o Cliente;
Traduo.

Extreme Programming

Prticas
Projeto Simples (Simple Design):
Exatido do cdigo;
Simples no fcil.

Time Coeso (Whole Team):


Desenvolvimento = cliente +
desenvolvedores.

Teste de Aceitao (Costumer


Tests):
Construdos pelo cliente, analistas e

Extreme Programming

Prticas
Ritmo Sustentvel (Sustainable
Pace):
Qualidade no Trabalho.
40 horas/semana, 8 horas/dia.

Reunies em P (Stand-up
Meeting):
Abordagem rpida de tarefas (feitas e
pendentes).

Posse Coletiva (Collective

Extreme Programming

Prticas
Programao em
Pares (Pair
Programming):
Programao em dupla;
Novato e Instrutor;
Menos bugs.

Extreme Programming

Programao em par:
Velocidade

Extreme Programming

Mantenha o ambiente em
ordem

Extreme Programming

Prticas
Programao em Pares (Pair Programming):
Programao em dupla;
Novato e Instrutor;
Menos bugs.

Padres de Codificao (Coding Standards):


Regas de padronizao.

Desenvolvimento Orientado a Teste (Test


Driven Development):
Unit Tests -> Criao do Cdigo.

Extreme Programming

Prticas
Refatorao (Refactoring):
Melhoria da Programao;
Clareza.

Integrao Contnua (Continuou


Integration):
Aplicao rpida das mudanas.

Você também pode gostar