eXtreme Programming (XP) (English)
"El Programdor es el corazón de XP."
¿Qué es XP?
?XP es una metodología ágil para pequeños a medianos equipos, desarrollando software cuando los requerimientos son ambiguos o rápidamente cambiantes? (Beck)
?XP es una disciplina de desarrollo de software con valores de sencillez, comunicación, retroalimentación y coraje.? (Jeffries)
¿Por qué es Extrema?
?XP lleva principio y prácticas de sentido común a niveles extremos.? (Beck)
El autor señala alguna de esas prácticas llevadas al extremo de la siguiente manera:
- Si las revisiones del código son buenas, entonces continúan se revisa el código programando en parejas.
- Si las pruebas del sistema son buenas, entonces todos prueban el sistema a través de pruebas unitarias y de aceptación.
- Si la sencillez es buena, el sistema se realiza con el diseño más sencillo, que soporte la funcionalidad actual, haciendo lo más simple que pueda funcionar.
- Si la arquitectura es importante, se trabaja todo el tiempo definiendo y redefiniendo la arquitectura con la metáfora
- Si las pruebas de integración son importantes en varios momentos del día se está integrando el sistema mediante la integración continua.
- Si las pequeñas iteraciones son buenas, son lo más breves y pequeñas que sean posibles a través del juego de la planificación.
Valores Beck enuncia los siguientes cuatro valores centrales en los cuales se base XP, y que constituye el cimiento para las prácticas a emplear en la metodología.
- Comunicación
- Retroalimentación
- Sencillez
- Coraje
Principios - Aceptar el cambio
- Asumir la sencillez
- Cambios incrementales
- Retroalimentación rápida
- Trabajo de Calidad
Principios Secundarios - Aceptar la responsabilidad
- Adaptación local
- Comunicación abierta y honesta
- Enseñar conocimientos
- Experimentos concretos
- Jugar para ganar
- Mediciones honestas
- Pequeña inversión inicial
- Trabajar con los instintos de las personas
- Viajar liviano
Actividades en XP - Diseñar
- Escuchar
- Probar
- Programar
Roles - Cliente
- Entrenador
- Gerente
- Programador
- Testes
- Tracker
Prácticas en XP En XP existen doce prácticas que ponen en aplicación los cuatro valores de comunicación, coraje, retroalimentación y sencillez.
Estas prácticas, muchas de las cuales no son novedosas, están olvidadas o mal aplicadas en los procesos de software tradicionales. XP las adopta y las combina una con otra y los lleva a niveles extremos. Las doce prácticas propuestas por Beck.
- 40 horas semanales
- Cliente on-site
- Diseño simple
- El juego de la planificación
- Estándares de código
- Integración continua
- Metáfora
- Pequeñas entregas
- Programación en pareja
- Propiedad colectiva
- Pruebas
- Refactoring
Refactoring: ?Un cambio hecho a la estructura interna del código para hacerlo más fácil de comprender y más barato de modificar sin cambiar su comportamiento externo.? (Fowler)
Sitios Oficiales http://www.extremeprogramming.org http://www.xprogramming.com eXtreme Programming y GX en la Universidad "Los estudiantes de la Facultad de Ingeniería de la Universidad de la República, desarrollaron un prototipo de sistema de gestión de expedientes aplicando las metodologías propuestas por XP y GeneXus" -
Ver GeneXus News
Relacionados
Programar en GeneXus de forma eXtrema: eXtreme GX
Extreme Programming and the Capability Maturity Model por Ron Jeffries
Extreme Programming from a CMM Perspective
Sitio con Links a información sobre XP