250 likes | 403 Vues
Nombre: Villafuerte Robles, Víctor Eduardo Curso: Tópicos en la seguridad informática II Tema: “Extreme Programming” Ciclo: X. Kent Beck es uno de los creadores de la metodología ágil para el desarrollo de software conocida como programación extrema. Libros:
E N D
Nombre: Villafuerte Robles, Víctor Eduardo Curso: Tópicos en la seguridad informática II Tema: “Extreme Programming” Ciclo: X Extreme Programming
Kent Beck es uno de los creadores de la metodología ágil para el desarrollo de software conocida como programación extrema. • Libros: • Smalltalk Best Practice Patterns • Una explicación de la programación extrema: aceptar el cambio • Test-Driven Development: By Example • Planning Extreme Programming , con Martin Fowler Extreme Programming
Extreme Programming • Definición: • Procesos agiles de desarrollo de software. • Mas énfasis en la adaptabilidad que a la previsibilidad. • Adopción de las mejores metodologías de desarrollo de acuerdo a lo que se pretende llevar a cabo con el proyecto, y aplicarlo de manera dinámica durante el ciclo de vida del software. Extreme Programming
Características fundamentales • Desarrollo iterativo e incremental. • Pruebas unitarias continuas. • Programación en pareja. • Integración del equipo de programación con el usuario. • Corrección de todos los errores. • Refactorización del código. • Propiedad del código compartida. • Simplicidad. Extreme Programming
Características Fundamentales Extreme Programming
Principios del XP • 1.- Simplicidad.- • Base de la programación extrema. • Agiliza el desarrollo y facilitar el mantenimiento. • Refactorización del código, ésta es la manera de mantener el código simple a medida que crece. • Documentación del código. • Los nombres de las variables, métodos y clases. • Aplicando la simplicidad junto con la autoría colectiva del código y la programación por parejas. Extreme Programming
Principios del XP • 2.- Comunicación.- • El código comunica mejor cuanto más simple sea. • Si el código es complejo hay que esforzarse para hacerlo inteligible. • El código autodocumentado es más fiable que los comentarios. • Las pruebas unitarias. • Programación por parejas. • La comunicación con el cliente. Extreme Programming
Principios del XP • 3.- Retroalimentación (feedback).- • Opinión del cliente en tiempo real. • Ciclos muy cortos tras los cuales se muestran resultados. • El código también es una fuente de retroalimentación gracias a las herramientas de desarrollo. Extreme Programming
Principios del XP • 4.- Coraje o valentía.- • Hay que ser valiente para confiar en que la programación por parejas beneficia la calidad del código sin repercutir negativamente en la productividad. • Se requiere coraje para implementar las características que el cliente quiere ahora sin caer en la tentación de optar por un enfoque más flexible que permita futuras modificaciones. Extreme Programming
Principios del XP • 5.- Respeto.- • Los miembros del equipo se respetan los unos a otros. • Los miembros se respetan su trabajo porque siempre están luchando por la alta calidad en el producto y buscando el diseño óptimo o más eficiente para la solución a través de la refactorización del código. Extreme Programming
Roles XP Programador (Programmer) En Xp, los programadores diseñan, programan y realizan las pruebas. Cliente (Customer) Determina qué construir y cuándo. Entrenador (Coach) El líder del equipo - toma las decisiones importantes. Rastreador (Tracker) Observa sin molestar. Conserva datos históricos. Probador (Tester) Ayuda al cliente con las pruebas funcionales. Extreme Programming
Proceso XP Extreme Programming
Ciclo de vida del XP Extreme Programming
Actividades del XP 1.- Codificar 2.- Hacer pruebas 3.- Escuchar 4.- Diseñar Resumiendo las actividades de Xp: Tenemos que codificar porque sin código no hay programas, tenemos que hacer pruebas por que sin pruebas no sabemos si hemos acabado de codificar, tenemos que escuchar, porque si no escuchamos no sabemos que codificar ni probar, y tenemos que diseñar para poder codificar, probar y escuchar indefinidamente. Extreme Programming
Practicas básicas del XP 1.- Planificación.- • Juego de planificacion. • Versiones pequeñas. • Historias. Extreme Programming
Practicas básicas del XP 2.- Diseño.- • Diseño simple. • Refactorización. • Metáfora del sistema. Extreme Programming
Practicas básicas del XP 3.- Codificación.- • Programación por parejas. • Integración continua. • Cliente en el sitio. Extreme Programming
Practicas básicas del XP 4.- Pruebas.- • Primera prueba. • Prueba de aceptación. • Automatización. Extreme Programming
Practicas básicas del XP 5.- Equipo.- • Área de trabajo informativo. • Propiedad colectiva. • Estándares de codificación. • Ritmo sostenible. Extreme Programming
Practicas básicas del XP Las practicas se refuerzan entre si Extreme Programming
Artefactos XP 1.- Historia del Usuario Extreme Programming
Artefactos XP 2.- Tareas de Ingeniería.- Extreme Programming
Artefactos XP 3.- Tarjetas CRC (Clase - Responsabilidad – Colaborador) .- Extreme Programming
Programación extrema (Pipeline) • Variación de la programación extrema clásica que consigue cuadriplicar la eficacia de la misma • Principios (Pipeline) • La programación extrema en pipeline se basa en la arquitectura Harvard de los procesadores. • Eficiencia como: • e=x+(n*nc-1) • Donde: • x es el tiempo de cada ciclo • n el numero de escritorios remotos o participantes • nc es el numero de iteraciones del proyecto. Extreme Programming