quinta-feira, 8 de janeiro de 2009

XP Extreme Programming

É uma metodologia ágil para equipes pequenas e médias e que pretendem desenvolver software com requisitos vagos e em constante mudança. Adota-se a estratégia de constante acompanhamento e realização de muitos pequenos ajustes durante o desenvolvimento de software.

Valores:
Comunicação, simplicidade, feedback e coragem :-)

Princípios básicos:
* Feedback rápido;
* Assumir simplicidade;
* Mudanças incrementais;
* Abraçar mudanças;
* Trabalho de qualidade;

Uma equipe que utiliza metodologia XP, geralmente é composta da seguinte forma:

• Gerente de Projeto;
• Coach;
• Analista de Teste;
• Redator Técnico;
• Desenvolvedor;

A situação é clara para toda equipe, mas você deve estar se perguntado que diabos é o tal de Coach?!?!?!?!?

Coach: É o responsável técnico do projeto. O XP recomenda que um profissional tecnicamente bem preparado seja destacado para orientar a equipe de modo que ela siga as boas práticas recomendadas pelo XP. Embora também possa atuar na implementação do sistema, sua tarefa principal é assegurar o bom funcionamento do processo e buscar formas de melhorá-lo continuamente.


A metolodogia XP é indicada para equipes que possuam de 2 à 10 pessoas.

Práticas do Extreme Programming:

Cliente Presente: A presença do cliente permite que os desenvolvedores compreendam melhor o que se espera do software.

Jogo do Planejamento: Uma vez por semana os desenvolvedores se reúnem com o cliente para priorizar um pequeno conjunto de funcionalidades que, no conjunto, possam ser implementadas e testadas completamente naquela semana.

Stand Up Meeting: Realiza-se uma reunião no início de cada dia, cujo objetivo é atualizar todos os membros da equipe a respeito do que ocorreu no dia anterior.

Programação em Par: Programação em Par é uma das práticas mais conhecidas e mais polêmicas utilizadas em projetos XP. Quando é adotada, todo e qualquer código produzido no projeto é implementado por duas pessoas juntas, diante do mesmo computador, revezando-se no teclado.

Desenvolvimento Orientado a Testes: Implementar testes automatizados antes de cada funcionalidade, de cada classe e de cada método criados no sistema. Quando isso é feito, cria-se um mecanismo automatizado que aponta os problemas assim que eles são inseridos, o que reduz o tempo de depuração.

Refatoração: Para evitar que a aplicação se transforme em uma casa suja, desorganizada e difícil de manter, equipes XP utilizam a prática de refatoração. Frequentemente, sempre que encontram uma oportunidade para melhorar o código o sistema é alterado em pequenas partes.


Isto é um resumo do trabalho apresentado na disciplina de Engenharia de Software.

Nenhum comentário: