110 likes | 326 Views
Una explicación de la programación extrema XP. Manuel Calero Apolo Software. ¿ Que es XP ?. Nueva disciplina de desarrollo de software desarrollada por Kent Beck. Esta basada en la simplicidad, la comunicación, la retroalimentación y la refactorización de código.
E N D
Una explicación de la programación extrema XP Manuel Calero Apolo Software
¿ Que es XP ? • Nueva disciplina de desarrollo de software desarrollada por Kent Beck. • Esta basada en la simplicidad, la comunicación, la retroalimentación y la refactorización de código.
¿ Por que fracasan los proyectos de software ? • Retrasos y desviaciones en la planificación. • Coste de mantenimiento elevados. • Alta tasa de defectos. • Requisitos mal comprendidos. • Cambios de negocio. • Falsa riqueza de características. • Cambios de personal.
¿ Objetivos de XP ? • La satisfacción del cliente. • Potenciar el trabajo en grupo, todos están involucrados en el desarrollo del software.
Las cuatro variables • Coste, tiempo, calidad y ámbito. • La relación entre estas variables no es directa. • A mas calidad menos tiempo. • El ámbito debe de ser determinado por los programadores.
Coste Coste Tiempo Tiempo El coste del cambio • El coste de los cambios crece con el tiempo. • XP propone que los costes de los cambios no tienen por que aumentar con el tiempo.
Los cuatro valores • Los cambios van a aparecer. • Valores para desarrollar software: • Comunicación • Sencillez • Retroalimentación • Valentía.
Las cuatro actividades básicas • Codificar • Hacer pruebas • Escuchar • Diseñar
La solución • Fases de la metodología XP • Planificación (permanente dialogo entre deseable y posible) • Negocio • Ámbito ¿Qué debe resolver el software? • Prioridad ¿Qué debe ser echo en primer lugar? • Composición de versiones ¿Cuánto es necesario hacer para aportar valor? • Fechas de versiones ¿Fechas para presencia del software? • Técnico. • Estimaciones ¿Cuánto lleva implementar una característica? • Consecuencias, informar sobre consecuencias de las decisiones que adopta el negocio. • Procesos ¿Cómo se organiza el trabajo en el equipo? • Programación detallada: En una versión ¿Qué se resolverá primero? • Pequeñas versiones.
Diseño • Metáfora. • Diseño sencillo. • Funcionan todas las pruebas • No existe lógica • Manifiesta cada intención impórtate para los programadores • Tiene el menor numero posible de clases, métodos o funciones • Desarrollo • Recodificacion • Programación por parejas • Propiedad colectiva • Integración continua • 40 Horas semanales • Cliente in-situ • Estandares de codificación • Pruebas
¿ Como soluciona XP estos problemas ? • Retrasos y desviaciones : versiones cortas. • Cancelan el proyecto : entregas periódicas. • Sistemas deteriorados y defectos : pruebas continuas. • Requisitos mal comprendidos : cliente dentro del equipo. • Cambios de negocio : versiones cortas. • Falsa riqueza : realizar tareas prioritarias. • Cambios de personal : anima el contacto y la integración.