290 likes | 714 Views
EXTREME PROGRAMMING XP (Programación Extrema). Tópicos Especiales de Ingeniería II UNFV – FIIS – EIS – X Ciclo HINOSTROZA NAVARRO, Eliza Marleni. ¿Verdades mentiras sobre XP?. Se asocia más a un “Programador extremo”. El trabajo de todos sea igual de importante.
E N D
EXTREME PROGRAMMING XP(Programación Extrema) • Tópicos Especiales de Ingeniería II • UNFV – FIIS – EIS – X Ciclo • HINOSTROZA NAVARRO, Eliza Marleni
¿Verdades mentiras sobre XP? • Se asocia más a un “Programador extremo”. • El trabajo de todos sea igual de importante. • Propone una jornada de 40 hrs. semanales. • Uno de sus pilares es la comunicación. • Emplea la refactorización para códigos complejos. • XP descubrió el conjunto de practicas a la hora de desarrollar código. F V V V V F
¿Qué es la Programación Extrema? Es una metodología ágil de la ingeniería de software formulada por Kent Beck para el desarrollo del mismo, que hace énfasis en la satisfacción del cliente y el trabajo en equipo.
¿Qué es una metodología ágil? • Los procesos ágiles de desarrollo de software intentan evitar los tortuosos y burocráticos caminos de las metodologías tradicionales enfocándose en la gente y los resultados.
Enfoque: • Al individuo y las interacciones de desarrollo más que el proceso y las herramientas.
Enfoque: • Desarrollar software que funciona más que conseguir una buena documentación.
Enfoque: • La colaboración con el cliente más que la negociación de un contrato.
Enfoque: • Responder a los cambios más que seguir estrictamente un plan.
Representantes de la Programación Extrema 1.-Kent Beck uno de los creadores de la metodología ágil para el desarrollo de software conocida como programación extrema. 2.-Alistair Cockburn creador de la familia de métodos ágiles "Crystal". 3.-Gary Chin autor de Agile Project Management que proporciona estrategias y las tácticas concretas para los proyectos de manejo en el ambiente dinámico de hoy. 4. Martin Fowler 5. Erich Gamma 6. Ken Auer 7. Robert Martin 8. Ron Jeffies 9. Scoot Ambler
Objetivo de la Programación Extrema La satisfacción del cliente.
Objetivo de la Programación Extrema Potenciar al máximo el trabajo en grupo
XP da solución a: • Tasa de defectos • Requisitos mal comprendidos • Cambios de negocio • Cambios de personal • Falsa riqueza
Documentación de XP • Guión de usuario
Documentación de XP • Designación de tareas
Documentación de XP • Tarjetas CRC (Clase - Responsabilidades – Colaboradores)
Las Prácticas de la Programación Extrema • Se agrupan en : plan, diseño, codificación y pruebas. Y constan de una serie de actividades, que se irán realizando de manera evolutiva.
Planificación • Se crean historias de usuarios. • La planeación del lanzamiento crea el programa de lanzamiento. • Se realiza frecuentes lanzamientos pequeños. • El proyecto se divide en iteraciones.
Diseño • Elija una metáfora del sistema. • Utilización de tarjetas CRC. • Crear soluciones rápidas para reducir el riesgo. • Ninguna funcionalidad extra se añade. • Refactorizar cuando y donde sea posible.
Codificación • El cliente siempre está disponible. • Todo el código de producción programado en parejas. • Sólo un par integra código a la vez. • Configurar un equipo dedicado a la integración. • La propiedad de uso colectivo.
Pruebas • Todo el código debe tener pruebas de unidad. • Todo el código debe pasar todas las pruebas de unidad antes de que pueda ser lanzado. • Las pruebas se crean cuando se encuentra un error. • Pruebas de aceptación se ejecutan a menudo y la puntuación se publica.
Coste, tiempo, calidad y alcance • XP define cuatro variables para proyectos de software: • Coste; máquinas, especialistas, oficinas • Tiempo; total y de entregas • Calidad; externa e interna • Alcance; intervención del cliente “Quiero estos requisitos se implementen para el día 1 del próximo mes, y cuentas con el equipo actual. ¡Ah y ya sabes que la calidad es lo primero!”
Ciclo de vida y costo en XP • La casi imposibilidad de precisar los requerimientos del sistema al inicio del desarrollo de un proyecto da como resultado el siguiente coste de cambios en el ciclo de vida de la metodología.
Los Valores de la Programación Extrema • Comunicación. • Simplicidad. • Retroalimentación. • Valentía.
Se usa cuando se cuenta con: • Cliente bien definido • Grupo de personas pequeño (máximo 12 personas) • Equipo con formación elevada y capacidad de aprender.
No se debe usar cuando: • No hay un interés sincero por todas las partes en que el proyecto tenga éxito. • No es posible tener un cliente bien definido. • El equipo de trabajo es muy grande (mas de 12 personas) • Se han fijado previamente: tiempo, recursos y alcance (en detalle) ->Fixed scope contracts
Comparativo XP - metodologías actuales • XP ha causado un gran revuelo en la comunidad de la ingeniería del software. Gráfica llevada a cabo por IBM.