A Programação
Extrema, ou simplesmente o XP, é uma metodologia ágil cujo foco está no
desenvolvimento de software com requisitos vagos e em constante mudança. É
adota a estratégia de constante acompanhamento e realização de vários ajustes
durante o desenvolvimento de software. O XP foi criado em 1997 por Kent Beck e tornou-se notório após a OOPLSA 2000 (Conferência de Programação Orientada a Objetos, Sistemas,
Liguagens e Aplicações).
O
objetivo do XP é otimizar o uso das boas práticas na engenharia de software.
Entre elas podemos citar o teste, visto que procurar defeitos é perda de tempo,
nós temos que constantemente testar. Entre outras práticas, o XP diz que:
- Já
que testar é bom, que todos testem o tempo todo;
- Já que revisão é bom, que se
revise o tempo todo;
- Se projetar é bom, então
refatorar o tempo todo;
- Se teste de integração é
bom, então que se integre o tempo todo;
- Se simplicidade é bom,
desenvolva uma solução não apenas que funcione, mas que seja a mais
simples possível;
- Se iterações curtas é bom, então mantenha-as
realmente curtas;
O XP já foi utilizado por grandes empresas como a
Chrysler no seu sistema de folha de pagamento global que envolvia seus 90 mil
empregados ao redor de todo o mundo. Esse projeto tem 2.000 classes e 30.000
métodos, e foi para produção sem nenhum atraso.
As práticas da Programação
Extrema são fundamentadas nos seguintes valores:
1.
Comunicação: segundo
Beck “Os problemas nos projetos invariavelmente recaem sobre alguém não falando
com alguém sobre algo importante”. Assim, a comunicação enfatiza que devemos
sempre estar se comunicando seja entre desenvolvedores ou com os clientes. O XP
é organizado em práticas que não podem ocorrer se não houver comunicação. Para um projeto de sucesso é
necessária muita interação entre os membros da equipe, programadores, cliente,
treinador. O time precisa ter muita qualidade nos canais de comunicação,
sendo conversas cara-a-cara uma das melhores formas, mas também são utilizados
telefonemas ou e-mails.
2.
Feedback: quanto antes, melhor. Para sabermos se
estamos fazendo a coisa correta, precisa ser concreto perguntando diretamente
ao código e precisa ser constante através de iterações curtas, incrementos e
releases. Aqui garantimos constantemente junto ao cliente se estamos fazendo
certo e se o prazo está de acordo com o planejamento. As respostas às decisões tomadas
devem ser rápidas e visíveis. Os envolvidos precisam estar cintes do que está acontecendo. E os
clientes devem se manter próximos dos desenvolvedores, para sempre que
necessário passar informações sobre qualquer dúvidas ao longo do projeto.
3.
Coragem: muitas vezes não
fazemos as coisas porque não temos coragem de fazer as mudanças. XP diz que
devemos ter coragem de sempre colocar o cliente a par do que está acontecendo. Porém, em
equipes XP consideram que errar é algo natural, e que quebrar eventualmente o
que já estava funcionando pode ocorrer, por isso, é necessário ter a devida
coragem para lidar com esse tipo de risco, as práticas do XP são voltadas para
proteger o software das mais variadas formas, e as equipes confiam nessas
práticas, o que os tornam adeptos as mudanças quando necessário, em vez de
impedir as ideias do cliente e evitar mudanças.
4.
Simplicidade: para
atender rapidamente às necessidades do cliente, quase sempre um dos valores
mais importantes é simplicidade. Normalmente o que o cliente quer é muito mais
simples do que aquilo que os programadores constroem. O
XP se empenha em assegurar que a equipe se concentre em desenvolver
primeiramente o que é realmente necessário, em vez de rechear o projeto com
várias funcionalidades que o cliente um dia possa a vir utilizar.
5. Respeito: é o valor mais básico de todos,
é o que dá sustentação aos demais. Todos têm sua importância dentro da equipe e
devem ser respeitados e valorizados. Isso ajuda a garantir que o projeto seja
bem-sucedido. A falta do respeito dentro de um projeto, pode ser o suficiente
para que o mesmo enfrente muitos problemas, causando até a impossibilidade de
sua continuação.
A ao contrário do que se acredita, o XP pode ser
aplicada em projetos de vários portes, pois seu dinamismo é tão latente, que
permite seu uso por equipes criativas em qualquer projeto.
A metodologia Extreme Programming é dinâmica e
flexível, porém é necessária muita disciplina para usá-la em um projeto. Para
demonstrar isso, será apresentado uma postagem com o conjunto sugerido de
"boas práticas".
Nenhum comentário:
Postar um comentário