Processo de desenvolvimento XP
Especificação de Requisitos
João Pessoa, 12 de maio
Aluno:
• Kyllder Medeiros.
Aluno de Engenharia
de Computação.
kyllder01@gmail.com
Kyllder Medeiros
O que é o XP?
• Metodologia de desenvolvimento de software,
nascida nos Estados Unidos ao final da década
de 90. Que tinha como objetivo criar sistemas
de melhor qualidade, produzidos em menos
tempo e de forma mais econômica que o
habitual.
Um pouco mais de historia...
• O eXtreme Programming é um
modelo de desenvolvimento de
software, criado em 1996, por
Kent Bech, no departamento de
computação da montadora de
carros Daimler Crysler. Ele pode
ser aplicado a projetos de alto
risco e com requisitos dinâmicos.
O XP é um conjunto bem definido
de regras, que vem ganhando um
grande numero de adeptos por
oferecer condições para que os
desenvolvedores respondam com
eficiência a mudanças no projeto.
Devido a grande necessidade de utilização de
métodos ágeis para desenvolvimento de
software, não só pela indústria mais também
pelo meio acadêmico e nas comunidades de
programadores.
Sim, mas como a coisa é feita?
• A “coisa” é feita de forma simples, usando
sempre um pequeno conjunto de valores e
práticas. Sempre mantendo o respeito e a
união, mas nem por isso deixando a liberdade
de lado.
Sim beleza, mas quais são esses
valores?
• Existem por padrão cinco valores nesse
modelo de desenvolvimento, sendo eles:
• Comunicação.
• Coragem.
• Feedback.
• Respeito.
• Simplicidade.
Tá ai gostei, e quais as práticas?
• As práticas são as “regras” do processo que
devem ser seguidas, sendo algumas elas:
• Planejamento.
• Fases pequenas.
• Metáforas.
• Design simples.
• Testes.
Práticas
• Refatoração.
• Programação em pares.
• Propriedade coletiva.
• Semana de 40 horas.
• Cliente junto aos desenvolvedores.
Trocando em miúdos :
Comunicação:
Coragem:
• “A única
constante em
um projeto de
software é a
mudança.”.
Feedback:
“Quanto mais cedo
descobrimos um
problema, menos
prejuízos ele pode
causar.”
Respeito:
“Dá sustentação a
todos os demais
valores.”
Simplicidade:
Planejamento:
“O que vamos fazer
hoje a noite,
cérebro?”
Fases pequenas:
• Conforme as interações
são concluídas, o
cliente recebe
pequenas
versões/releases do
sistema, visando com
que seja colocado em
prática e validado
aquilo que está sendo
implementado.
Metaforas:
• "A metáfora é uma das
mais poderosas formas
de comunicação, pelo
seu poder de quebrar
resistências, com
histórias que levam as
mensagens que você
quer comunicar."
Design Simples:
• “Quanto mais simples,
mais barato e de
melhor manutenção.”
Testes:
• “Melhor maneira de
descobrir se algo está
errado em tempo
hábil.”
Refatoração:
• “Sempre que preciso,
refazer o código.”
Propriedade Coletiva:
• “Um por todos e todos
por um!”
Semana de 40 Horas:
• “Na hora de trabalhar,
trabalhar, na hora de
descansar, descansar.”
Cliente junto aos desenvolvedores:
• “a união faz açúcar!
Não espera...tenho quase
certeza que era algo
assim...”
Gráficos++
Nem tudo são flores:
• “Problemas tendem a
acontecer em grandes
grupos, a refatoração
pode aumentar os
custos e o tempo do
projeto e por ai vai...”
Duvidas?
Bibliografia:
• https://wiki.cercomp.ufg.br/@api/deki/files/261/=xp.pdf
• http://pt.slideshare.net/adorepump/gerenciamento-de-projeto-para-
desenvolvimento-de-sistema-presentation
• http://hp.br.inter.net/jrotta/docs/omanifestoagil.pdf

E xtreme programming