Académique Documents
Professionnel Documents
Culture Documents
Qu es XP?
Proceso software ligero Diseado para entornos dinmicos Ideal para equipos pequeos (hasta 10 programadores) Basado en el cdigo Alta dependencia en la comunicacin informal, verbal
04/02/03
Qu es XP?
Creado por Kent Beck para la plantilla del proyecto C3 en Chrysler Kent fue contratado para dirigir el proyecto Durante el proceso naci una nueva metodologa C3 concluy exitosamente en 1997
04/02/03
Qu es XP?
Valores que intenta fomentar la filosofia XP: Comunicacin Simplicidad Retroalimentacin Coraje
04/02/03
Actores
Programador (Programmer) Responsable de decisiones tcnicas Responsable de construir el sistema Sin distincin entre analistas, diseadores o codificadores En XP, los programadores disean, programan y realizan las pruebas
Cliente (Customer) Es parte del equipo Determina qu construir y cundo Escribe tests funcionales para determinar cundo est completo un determinado aspecto
04/02/03
Actores
Entrenador (Coach) El lder del equipo - toma Probador (Tester) las decisiones Ayuda al cliente con importantes las pruebas Principal responsable funcionales del proceso Se asegura de que los Tiende a estar en un tests funcionales se segundo plano a medida ejecutan que el equipo madura Rastreador (Tracker) Metric Man Observa sin molestar Conserva datos histricos
04/02/03 6
El proceso
Mientras(sistema_es_til) { Captar requisitos User Stories Methaphor Planificar Release planning Iteration planning Desarrollar Programming Presentar la entrega Releasing }
04/02/03 7
Prcticas clave en XP
El juego de planificacin (The planning game) Entregas pequeas (Short releases) Metfora (Metaphor) Diseos simples (Simple designs) Pruebas (Testing) Refactorizacin (Refactoring)
04/02/03
Prcticas clave en XP
Programacin en parejas (Pair programming) Dominio colectivo del cdigo (Collective code ownership) Integracin contnua (Continuous integration) Semana de 40 horas (40-hour week) Cliente in situ (On site customer) Estndares de codificacin (Coding standard)
04/02/03
La gran foto
De forma aislada, cualquier prctica individual de XP tiene poco sentido
Pero en conjunto, unas compensan las carencias que las otras puedan tener Para evaluar XP tienes que mirar la gran foto, es decir, todo el conjunto
04/02/03
10
La gran foto
04/02/03
11
04/02/03
13
04/02/03
14
Cmo empezar?
Incrementalmente De Extreme Programming Explained: Escoge tu peor problema Resuelvelo al estilo XP Repite
04/02/03
15
Experiencias con XP
XP 2000 Conference: Implantacin progresiva de las prcticas Muy pocos usan XP al completo Prcticas ms utilizadas: Iteraciones cortas Refactorizacin Evolucin progresiva (planning game) Problemas surgidos: Objetivos mezclados Falta de comunicacin
04/02/03 16
Resumen
XP es una forma de desarrollar software bien definida y bien estructurada Est hecho para equipos de trabajo pequeos que trabajan en la misma localizacin Especialmente idneo para entornos dinmicos Prometedor pero no probado
04/02/03
17
Dnde encontrar ms
URLs http://www.extremeprogramming.org/ Web de XP http://www.xprogramming.com An Extreme Programming Resource http://www.martinfowler.com/articles/designDead.html Is Design Dead? (Martin Fowler, Chief Scientist, ThoughtWorks) http://www.martinfowler.com/articles/xp2000.html The XP 2000 Conference http://www.ucongres.edu.ar/cemun/cemun/hgest-pincirolli.htm La importancia de un estndar para el desarrollo de sistemas (por Fernando Pincirolli) http://www.cimat.mx/ingsoft/seminario/XPresentation.zip Seminario de Ing. de Software del CIMAT. Conferencia sobre XP. Pedro Pinto. 22/01/2001 http://linux.oreillynet.com/pub/a/linux/2001/05/04/xp_intro.html An Introduction to XP O'Reilly Open Source Convention in San Diego, CA, 2327/07/2001 http://www.objectmentor.com Object Mentor - Extreme Programming at the Speed of Change
04/02/03 18
Dnde encontrar ms
URLs http://www.egroups.com/group/extremeprogramming Discussion of Extreme Programming practices and principles http://www.martinfowler.com/articles/newMethodology.html The New Methodology LIBROS / REVISTAS Extreme Programming Explained Beck, Kent; Addison Wesley Extreme Programming Installed Jeffries, Ron et al; Addison Wesley Planning Extreme Programming Beck, Kent et al; Addison Wesley Refactoring Improving the Design of Existing Code Fowler, Martin; Addison Wesley Principles of Software Engineering Management Gilb, Tom; Addison Wesley Strengthening the Case for Pair Programming Williams, Laurie et al;; IEEE SOFTWARE, July/August 2000
04/02/03 19
04/02/03
20