A Extreme Programming, ou simplesmente XP, é uma metodologia de software ágil, foi criada nos Estados Unidos por Kent Beck em 1997. Sua abordagem abusa do desenvolvimento iterativo e conta com uma aproximação do cliente com o projeto. Nele todos os requisitos são descritos em histórias, que são implementados como tarefas. O desenvolvimento das tarefas é realizadas em pares e antes da codificação das mesmas é criado testes.
O XP é formado fundamentalmente por princípios e valores, são características que moldam o desenvolvimento de software sobre o escopo dessa metodologia. São ao todo cinco valores e quatorze princípios. Vejamos cada um a seguir.
Valores do XP
O XP é formado fundamentalmente por princípios e valores, são características que moldam o desenvolvimento de software sobre o escopo dessa metodologia. São ao todo cinco valores e quatorze princípios. Vejamos cada um a seguir.
Valores do XP
- Comunicação
O XP prima pela comunicação ativa entre os clientes e a equipe de desenvolvimento, com o intuito de reduzir requisitos equivocados e assim construir um software mais próximo do que o cliente espera. Além disso o XP prioriza uma comunicação presencial com o objetivo de garantir que todas as partes envolvidas em um projeto tenham a chance de se compreender da melhor maneira possível.
- Coragem
No XP acredita-se que o erro vai acontecer, o diferencial seria como tratar a ocorrência do mesmo. Assim, impedir mudanças e frear a criatividade do cliente não são consideradas no XP. Nessa metodologia a equipe deve se adaptar as modificações e está confiantes nos mecanismos do XP.
- Feedback
Os desenvolvedores procuram entregar as tarefas o mais rápido possível, para que assim o cliente possa usufruir das funcionalidades e prover informações a respeito delas.
- Respeito
Saber ouvir, saber compreender e respeitar o ponto de vista do outro é essencial para que um projeto de software seja bem sucedido.
- Simplicidade
Nesse aspecto a equipe XP se concentra, primeiramente, em desenvolver as tarefas essências para o funcionamento do sistema, evitando desenvolver funcionalidades que talvez nunca cheguem a ser utilizadas.
Princípios
- Auto-semelhança: Soluções que funcionem em diferentes contextos
- Benefício Mútuo: Estrutura que proporciona benefícios para as diferentes partes do projeto
- Diversidade: Equipes com profissionais de varias áreas, arquiteto, designer, programadores etc.
- Economia: Priorizar módulos que gerem receita mais rápido e controle de gastos no desenvolvimento
- Falha: Testar soluções sem medo de falhas.
- Fluidez: O objetivo é fazer com que o sistema seja desenvolvido de forma evolutiva e vá crescendo em funcionalidades a cada nova iteração.
- Humanismo: Compreender a natureza humana para que possamos potencializar o que ela tem de melhor e suprimir o que tem de pior
- Melhoria: Aprimoramento continuo do software.
- Oportunidade: Enxergar problemas como oportunidades.
- Passos de Bebê: Realizar pequenas modificações por vez.
- Qualidade: Desenvolver visando a melhor qualidade possível
- Redundância: Os problemas críticos devem ser resolvidos com varias soluções
- Reflexão: A equipe analisa seu processo durante a construção do software, discutindo falhas e acertos.
- Responsabilidade Aceita: A responsabilidade não deve ser atribuída, ela deve ser aceita.
Referencia:
EXTREME PROGRAMMING Disponível em:<http://www.desenvolvimentoagil.com.br/xp/> Acessado em 30 de Outubro de 2016.
SOMMERVILLE, Ian. Engenharia de Software. 8ª Edição. São Paulo: Addison-Wesley, 2007.
Nenhum comentário:
Postar um comentário