Você está na página 1de 31

METODOLOGIA

AGIL
eXtreme Programming
(XP)
PROF° HOLIVER CASE
METODOLOGIA ÁGIL
 os métodos ágeis são orientados à
construção, testes e
principalmente, às pessoas. As
metodologias ágeis enfatizam os
aspectos humanos, as relações
pessoais, uma vez que buscam
valorizar o pensamento criativo
dos indivíduos envolvidos no
projeto, em que o conhecimento
é fator importante para o sucesso
do projeto.
Documentação e conhecimento!!
 No desenvolvimento ágil a
metodologia deve produzir
conhecimento e não apenas
documentação. Mas isto não
significa que nos ambientes ágeis
não exista documentação, apenas
deixa de existir a filosofia de que
“tudo tem que ser documentado” e
sim documentar apenas o necessário
uma vez que a documentação apenas
auxilia e não guia o
desenvolvimento.
O que é eXtreme Programming (XP)??

 O XP, segundo BECK (2000, p. Xi), é “uma


metodologia leve para times de tamanho
pequeno a médio, que desenvolva software em
face a requisitos vagos que se modificam
rapidamente”.

 Mas como funciona o XP?

O XP é um método sistêmico para desenvolvimento de


software. O processo inicia por um plano geral, ou seja,
entender o problema como um todo, mas sem muitos
detalhes e, posteriormente, reparte o problema em partes,
para dar início ao seu desenvolvimento.
 A XP trabalha com iterações de menor tamanho possível, contendo os requisitos de maior valor para o
negócio, sendo assim, a equipe produz um conjunto reduzido de funcionalidades e coloca em
produção rapidamente de modo que o cliente já possa utilizar o software no dia a dia e se beneficiar
dele.
Como adotar o XP?
 Pode-se utilizar três passos para a
implementação do XP:

 1 Escolha o pior dos problemas;


 2 Resolva-o da maneira XP;
 3 Quando ele não for mais seu
problema, repita os passos 1 e 2
para o próximo problema.
As VALORES do XP
 O XP tem como base quatro valores:
comunicação, simplicidade, feedback e
coragem.
 Comunicação: Valoriza a comunicação aberta e constante entre todos os membros da equipe de
desenvolvimento e os clientes. Isso ajuda a garantir que todos estejam alinhados com os objetivos do
projeto e compreendam as necessidades e expectativas uns dos outros.

 Simplicidade: Promove a simplicidade no design e na implementação do software. O XP enfatiza a criação


da solução mais simples e funcional possível para atender aos requisitos, evitando o excesso de
complexidade.

 Feedback: Valoriza o feedback contínuo ao longo do processo de desenvolvimento. Isso inclui feedback dos
clientes, dos testes automatizados e dos colegas de equipe. O feedback é utilizado para identificar
problemas e oportunidades de melhoria.

 Coragem: Encoraja a equipe a ter coragem para enfrentar desafios e tomar decisões difíceis. Isso inclui a
coragem de admitir erros, refatorar código quando necessário e fazer mudanças significativas no projeto
quando apropriado.

 Respeito: Promove o respeito mútuo entre todos os membros da equipe. Isso envolve respeitar as opiniões e
habilidades de cada pessoa e criar um ambiente de trabalho colaborativo e positivo.
12 - Práticas XP
1-Jogo de planejamento:
é a prática que define o escopo a ser
desenvolvido na próxima iteração. Para
esta definição de escopo é necessário
priorizar as necessidades de negócio
(ponto de vista do cliente) em conjunto
com as estimativas técnicas (ponto de
vista dos programadores). Se o
planejamento for falho, atualize-o;
2-Entregas frequentes:
 Durante a iteração de uma ou
duas semanas, o que estiver com
status de pronto deve ser entregue
ao cliente, assim, a equipe recebe
o feedback mais rapidamente.
Não espere todo o projeto estar
concluído, entregue
frequentemente;
3-Uso de metáforas:

 as metáforas devem guiar o


desenvolvimento, através das
histórias de usuário
simplificada e compartilhada
com todos;
4-Projeto simplificado:

 Quanto mais simples for o


projeto, mais rápido é seu
desenvolvimento.
Complexidades desnecessárias
devem ser removidas sempre
que forem descobertas, isso
mantém o ritmo e a qualidade
do produto;
5-Testes:

 Tudo deve ser testado:


programadores devem utilizar
as práticas de TDD para
melhorar a qualidade do
produto;
6-Refatoração:
 Outra prática necessária para
melhorar o design e a qualidade
do produto. Reestruturar o
sistema, sem alterar o seu
comportamento, removendo
sempre que possível a
duplicidade, melhorando e
simplificando o que já existe e
tornando-o mais flexível;
7-Programação em pares:

 o desenvolvimento é guiado
pela programação em par,
ou seja, todo o sistema é
implementado por dois
programadores em uma
única máquina;
8-Propriedade coletiva
 os códigos não têm um
dono, ou seja, viu que
precisa melhorar
(refatorar)? Faça você
mesmo e não espere pelos
outros, pois todos podem
modificar qualquer parte do
código a qualquer
momento;
9-Integração contínua:
 Se temos que entregar
constantemente,. Integre e
atualize a é através da
integração contínua que
atingiremos este objetivos
versões do sistema várias vezes
ao dia, cada vez que uma nova
tarefa for concluída;
10-Ritmo sustentável:

 A semana deve ser de 40


horas no máximo, ou seja,
trabalhe no máximo oito
horas por dia durante quatro
dias, evite fazer hora extras,
pois a produtividade é
reduzida;
11- Cliente presente:

 Precisamos de comunicação
constante, desta forma, inclua
sempre um cliente real no time;
12-Padrões de codificação:

 Utilize padrões, assim os


programadores escreverão seus
códigos respeitando as regras e isso
cria uma comunicação através do
código.
Implementando o XP
Membros da equipe. São eles:
 Programador: segundo Back, ele é o
coração do XP, pois o principal foco
é a implementação. A diferença entre
um programador em outras
metodologias e no XP é que aqui ele
precisa se preocupar com a
comunicação, com o design do
sistema, com os testes unitários, com
ser eXtremo.
Cliente
 Se o programador é quem implementa, o cliente é quem sabe o que deve ser implementado, ou
seja, é quem conhece o produto. O título de cliente é dado a pessoa responsável por escrever as
histórias de usuário, por defender os interesses do cliente, por saber dar valor as histórias (valor
do ponto de vista de importância ao negócio).
Testador

 Como o programador já
fez os testes unitários, a
tarefa do testador está
relacionada aos testes
funcionais e por sua
execução frequente.
Rastreador:

 Back afirma que o rastreador é a


consciência da equipe, sendo o
responsável por finalizar a iteração,
por uma visão global do andamento
do sistema, etc. Este papel
necessita de habilidade de coleta de
informação e boa comunicação
interpessoal.
Treinador:

 Assim como no vôlei temos


um treinador, equipes XP
possuem um treinador que é o
responsável pelo processo
como um todo e por manter o
XP funcionando.
Consultor:

 Não é obrigatório, mas


quando há necessidade,
equipes XP podem
chamar um consultor ad
hoc.
O Chefão:

 este
é o manda chuva,
quem manda em tudo...
ATIVIDADE

 1.O que significa XP (Extreme Programming) na


metodologia ágil?
 2. Quais são os valores fundamentais do XP?
 3. Quais são algumas das práticas-chave no XP?
 4. Qual é o papel do cliente no XP?
 5.Como o XP lida com mudanças nos requisitos do
projeto?
1: Extreme Programming (XP) é uma metodologia ágil de desenvolvimento de software que enfatiza a
comunicação próxima entre equipe, cliente e desenvolvedores, promovendo a simplicidade, feedback contínuo,
testes e refatoração constantes.
2: O XP se baseia em cinco valores fundamentais: Comunicação, Simplicidade, Feedback, Coragem e Respeito.
Esses valores orientam as práticas e os princípios da metodologia.
3: Algumas práticas-chave do XP incluem programação em pares, testes automatizados, integração contínua,
planejamento de jogo, refatoração e desenvolvimento orientado a testes (TDD).
4: No XP, o cliente desempenha um papel ativo e participativo. Eles colaboram com a equipe de desenvolvimento
para definir requisitos, priorizar funcionalidades e fornecer feedback constante sobre o progresso do projeto.
5: O XP é altamente adaptativo às mudanças nos requisitos do projeto. Ele abraça a flexibilidade e permite que os
requisitos evoluam ao longo do tempo. Isso é alcançado por meio de iterações curtas e feedback contínuo do
cliente, permitindo ajustes rápidos e eficazes.

Você também pode gostar