Sei sulla pagina 1di 4

Extreme Programming (XP)

A Extreme Programming (XP) uma Metodologia gil para equipes


pequenas e mdias que desenvolvem software baseado em requisitos vagos e
que se modificam rapidamente. Entre as principais diferenas da XP em
relao s Metodologias Clssicas esto o feedback constante, a abordagem
incremental e o encorajamento da comunicao entre as pessoas.
A maioria das regras da XP causa surpresa no primeiro contato e
muitas no fazem sentido se aplicadas isoladamente. a fora de seu conjunto
que sustenta o sucesso da XP, trazendo uma verdadeira revoluo no
desenvolvimento de software.
O principal objetivo da XP dar agilidade ao desenvolvimento do
projeto e busca garantir a satisfao do cliente. As prticas, regras, e os
valores da XP garantem um agradvel ambiente de desenvolvimento de
software para os seus seguidores, que so conduzidos por quatro princpios
bsicos:

Princpio da Comunicao - busca manter o melhor relacionamento
possvel entre clientes e desenvolvedores, preferindo conversas
pessoais a outros meios de comunicao.

Princpio da Simplicidade - entende-se como simplicidade, a busca do
objetivo de implementar o software com o menor nmero possvel de
classes e mtodos. Outra idia importante deste princpio procurar
implementar apenas requisitos atuais, evitando assim adicionar
funcionalidades que podem ser importantes apenas no futuro. A aposta
da XP que melhor fazer algo simples hoje do que implementar algo
complicado hoje que talvez no venha a ser usado.

Princpio do Feedback - A prtica do feedback constante significa que o
desenvolvedor ter informaes constantes do cdigo e do cliente. A
informao do cdigo dada pelos testes constantes, que indicam os
erros tanto individuais quanto do software integrado.

Princpio da Coragem - Sabe-se que no so todas as pessoas que
possuem facilidade de comunicao e tm bom relacionamento
interpessoal, este princpio tambm d suporte simplicidade, pois
assim que a oportunidade de simplificar o software percebida, a
equipe pode experimentar e buscar novas solues, alm disso,
preciso coragem para obter e cobrar constantemente um feedback do
cliente.

Principais prticas da Extreme Programming (XP)

Planejamento - Define o que ou no necessrio ser feito no projeto. A
XP baseia-se em requisitos atuais para desenvolvimento de software,
no em requisitos futuros.

Entregas Frequentes - Baseiam-se no desenvolvimento de um software
simples, e conforme os requisitos aparecem, h a atualizao da
verso do software. Cada verso entregue deve ter o menor tamanho
possvel, contendo os requisitos de maior valor para o negcio.
recomendado que as verses devem ser entregues a cada ms, ou no
mximo a cada dois meses, aumentando a possibilidade de feedback
rpido do cliente.

Metfora - So as descries de um software sem a utilizao de
termos tcnicos com o objetivo de guiar o desenvolvimento do software
com a maior transparncia possvel para o cliente.

Projeto simples - O software desenvolvido de acordo com a
metodologia XP deve ser o mais simples possvel e satisfazer os
requisitos atuais, sem a preocupao de requisitos futuros. Eventuais
requisitos futuros devem ser adicionados assim que eles realmente
existirem.

Testes - A Extreme Programming (XP) prioriza a validao do projeto
durante todo o processo de desenvolvimento. Os desenvolvedores
implementam o software criando primeiramente os testes.

Programao em pares - A implementao do cdigo feita em dupla,
ou seja, dois desenvolvedores trabalham em um nico computador.
Procurando identificar erros sintticos e semnticos, pensando
estrategicamente em como melhorar o cdigo que est sendo
implementado. Esses papis podem e devem ser alterados sempre que
possvel.

Refatorao - Focaliza a lapidao do projeto do software e est
presente em todas as etapas do desenvolvimento. A refatorao deve
ser feita sempre que possvel, buscando principalmente simplificar o
cdigo atual sem perder nenhuma funcionalidade.

Propriedade coletiva - O cdigo do projeto pertence a todos os
membros da equipe. Isto significa que qualquer pessoa que percebe
que pode adicionar valor a um cdigo, mesmo que ele prprio no o
tenha desenvolvido, pode faz-lo, desde que faa os testes
necessrios e no prejudique as funcionalidades atuais. Isto possvel
porque na XP todos so responsveis pelo software. Uma grande
vantagem desta prtica que, caso um membro da equipe deixe o
projeto antes do fim, a equipe consegue continuar o projeto sem
grandes dificuldades, pois todos conhecem todas as partes do
software, mesmo que no seja de forma detalhada.

Integrao contnua - a prtica de interagir e construir o sistema de
software vrias vezes por dia, mantendo os programadores em
sintonia, alm de possibilitar processos rpidos. Integrar apenas um
conjunto de modificaes de cada vez uma prtica que funciona bem
porque fica bvio quem deve fazer as correes quando os testes
falham. Esta prtica facilitada com o uso de apenas uma mquina de
integrao, que deve ter livre acesso a todos os membros da equipe.

40 horas de trabalho semanal - a XP assume que no se deve fazer
horas extras constantemente. Caso seja necessrio trabalhar mais de
40 horas pela segunda semana consecutiva, existe um problema srio
no projeto que deve ser resolvido no com aumento de horas
trabalhadas, mas com melhor planejamento.


Cliente presente - fundamental a participao do cliente durante todo
o desenvolvimento do projeto. O cliente deve estar sempre disponvel
para sanar todas as dvidas de requisitos, evitando atrasos e at
mesmo construes erradas. Uma idia interessante manter o cliente
como parte integrante da equipe de desenvolvimento (Tester).

Cdigo padro - Baseia-se na padronizao da arquitetura do cdigo,
para que este possa ser compartilhado entre todos os programadores e
at mesmo entre outros softwares.

Vantagens

As prticas do XP so usadas pelos integrantes da equipe, para facilitar no
desenvolvimento e agregar qualidade no projeto. Um dos benefcios que a
mesma oferece tornar o processo mais gil e flexvel.
As prticas do XP so criadas para funcionarem juntas e fornecer mais
valor do que cada uma poderia fornecer individualmente.
Anlise prvia de tudo que pode acontecer durante o desenvolvimento
do projeto, oferecendo qualidade, confiana, data de entregas e custos
promissores.
O XP ideal para ser usada em projetos em que o cliente no sabe
exatamente o que deseja e pode mudar muito de opinio durante o
desenvolvimento do projeto. Com feedback constante, possvel adaptar
rapidamente eventuais mudanas nos requisitos.
Estas alteraes nos requisitos so muitas vezes crticas nas
metodologias tradicionais, que no apresentam meios de se adaptar
rapidamente s mudanas.
Outro ponto positivo das metodologias geis so as entregas
constantes de partes operacionais do software. Desta forma, o cliente no
precisa esperar muito para ver o software funcionando, como nas metodologias
tradicionais.

Desvantagens


frequente acontecer bugs em todos os projetos de desenvolvimento
de software. Existem pontos fracos no uso dessa metodologia, como:
No existe uma avaliao de riscos, devendo, portanto implementar
uma anlise e estratgias que buscam diminuir os erros.
A anlise de requisitos informal e com isso pode no ser bem vista
pelos clientes, que podero se sentir inseguros quanto ao bom funcionamento
do sistema.
A falta de documentao caracterstica do processo XP, pois, o
mesmo no d muita nfase em burocracias como documentos, formulrios,
processos, entre outros.
Sendo, portanto, importante elaborao de documentos e diagramas
que facilitem no entendimento e identificao do problema.
Alm dessas desvantagens, existem algumas situaes em que no
indicado o uso do XP conforme apresentado a seguir:
A maior barreira para o sucesso de um projeto XP a cultura
empresarial.
Qualquer negcio que gerencie projetos tentando apontar o carro para
a direo certa logo de cara ter conflitos com o time que insiste em ir
acertando a direo continuamente.
Outra cultura que no contribui para o XP aquela na qual voc
requisitado a trabalhar horas e mais horas para provar o seu comprometimento
com a empresa. Voc no consegue executar o XP se estiver cansado. Se
aquilo que o seu time produz trabalhando em velocidade mxima no
suficiente para a sua empresa ento o XP no a soluo.
Outra barreira tecnolgica para o XP um ambiente no qual
necessrio um longo tempo para se obter feedback. Por exemplo, se o seu
sistema leva 24 horas para compilar e linkar, ser difcil integrar, compilar e
testar vrias vezes ao dia.

Potrebbero piacerti anche