PROGRAMACIÓN
EXTREMA
XP
Wilson Gerardo Rodríguez Vicente
Análisis de Sistemas
201210007
¿Qué es XP?
•Nueva disciplina del desarrollo de
software.
•Su objetivo es aumentar la
productividad al desarrollar software.
•Permite la reducción de la burocracia
alrededor de la creación de software.
•Metodología de desarrollo ligera (ágil).
Metodologías agiles
Se basan en la adaptabilidad de cualquier cambio como medio para
aumentar las posibilidades de éxito de un proyecto.
• Los individuos y sus interacciones son más importantes que los
procesos y las herramientas.
• El software que funciona es más importante que la documentación
exhaustiva.
• La colaboración con el cliente en lugar de la negociación de
contratos.
• La respuesta delante del cambio en lugar de seguir un plan
cerrado.
¿QUE PRETENDE EVITAR XP?
•Retrasos en la planificación.
•Sistemas deteriorados.
•Tasa de defectos.
•Requisitos mal comprendidos.
•Cambios de negocio.
•Falsa riqueza.
•Cambios de personal.
OBJETIVOS DE XP
La satisfacción del cliente
Potenciar el trabajo en grupo.
EPISODIO DE DESARROLLO
EL JEFE DE PROYECTO:
“Quiero estos requisitos realizados
para el día 1 de mes próximo, solo
cuentan con el equipo actual. ¡Ah
ya sabes que la calidad es lo
primero!”
CUATRO VARIABLES DE XP
 COSTO.
 TIEMPO.
 CALIDAD.
 AMBITO.
CUATRO VALORES PARA AFRONTAR
CAMBIO CON XP
Comunicación
Sencillez
Retroalimentación
Valentía
•XP ayuda mediante sus prácticas a
fomentar la comunicación.
•XP nos enseña a apostar, ¡Apuesta por
hacer una cosa sencilla hoy y pagar un
poco mas para mañana.!
•“No me preguntes a mi, pregúntale al
sistema”
•Asumir retos, ser valientes antes los
problemas y afrontarlos.
¿ Qué tareas debemos de llevar a cabo
para desarrollar un buen software ?
•Codificar.
•Hacer pruebas.
•Escuchar.
•Diseñar
FASES DE LA METODOLOGIA XP
Se basa en 12 principios básicos,
agrupados en 4 categorías.
•Retroalimentación a escala fina.
•Proceso continuo en lugar de por lotes.
•Entendimiento compartido.
•Bienestar del programador.
Retroalimentación a escala fina
1. El principio de pruebas: definición de las entradas al
sistema y los resultados esperados de estas entradas.
2. Proceso de planificación: Se creará un documento
llamado
Historias del usuario (User Stories).
3. El cliente en el sitio: Representante del cliente para
determinar los requerimientos, definir la funcionalidad,
señalar las prioridades y responder las preguntas de los
programadores.
4. Programación en parejas: Este principio puede producir
aplicaciones más buenas, de manera consistente, a
iguales o menores costos.
Proceso continuo en lugar de por
lotes.
1. Integración continua: permite al equipo hacer un
rápido progreso implementando las nuevas
características del software.
2. Refactorización: Los programadores evalúan
continuamente el diseño y recodifican lo necesario.
3. Entregas pequeñas: colocan un sistema sencillo en
producción rápidamente que se actualiza de forma
rápida y constante permitiendo que el verdadero valor
de negocio del producto sea evaluado en un ambiente
real.
Entendimiento compartido.
1. Diseño simple (Simple Design): el mayor valor de
negocio es entregado por el programa más sencillo
que cumpla los requerimientos.
2. Metáfora: define una historia de como funciona el
sistema completo.
3. Propiedad colectiva del código: un código con
propiedad compartida.
4. Estándar de codificación: define la propiedad del
código compartido sí como las reglas para escribir
y documentar el código.
Bienestar del
programador.
La semana de 40 horas: la programación
extrema sostiene que los programadores
cansados escriben código de menor calidad.
Bienestar del programador
CONCLUSIONES
 Se puede concluir que la programación extrema es una
buena alternativa, dependiendo del entorno de
desarrollo en que se esta trabajando.
 Al ser una herramienta que se basa en otras
metodologías, se puede confiar en cada proceso
individual.
 La XP brinda no solo ventajas en cuanto a rapidez, sino
que promueve habilidades sociales como la
comunicación, el trabajo en equipo y disciplina.

Programacion extrema

  • 1.
    PROGRAMACIÓN EXTREMA XP Wilson Gerardo RodríguezVicente Análisis de Sistemas 201210007
  • 2.
    ¿Qué es XP? •Nuevadisciplina del desarrollo de software. •Su objetivo es aumentar la productividad al desarrollar software. •Permite la reducción de la burocracia alrededor de la creación de software. •Metodología de desarrollo ligera (ágil).
  • 3.
    Metodologías agiles Se basanen la adaptabilidad de cualquier cambio como medio para aumentar las posibilidades de éxito de un proyecto. • Los individuos y sus interacciones son más importantes que los procesos y las herramientas. • El software que funciona es más importante que la documentación exhaustiva. • La colaboración con el cliente en lugar de la negociación de contratos. • La respuesta delante del cambio en lugar de seguir un plan cerrado.
  • 4.
    ¿QUE PRETENDE EVITARXP? •Retrasos en la planificación. •Sistemas deteriorados. •Tasa de defectos. •Requisitos mal comprendidos. •Cambios de negocio. •Falsa riqueza. •Cambios de personal.
  • 5.
    OBJETIVOS DE XP Lasatisfacción del cliente Potenciar el trabajo en grupo.
  • 6.
    EPISODIO DE DESARROLLO ELJEFE DE PROYECTO: “Quiero estos requisitos realizados para el día 1 de mes próximo, solo cuentan con el equipo actual. ¡Ah ya sabes que la calidad es lo primero!”
  • 7.
    CUATRO VARIABLES DEXP  COSTO.  TIEMPO.  CALIDAD.  AMBITO.
  • 8.
    CUATRO VALORES PARAAFRONTAR CAMBIO CON XP Comunicación Sencillez Retroalimentación Valentía
  • 9.
    •XP ayuda mediantesus prácticas a fomentar la comunicación. •XP nos enseña a apostar, ¡Apuesta por hacer una cosa sencilla hoy y pagar un poco mas para mañana.! •“No me preguntes a mi, pregúntale al sistema” •Asumir retos, ser valientes antes los problemas y afrontarlos.
  • 10.
    ¿ Qué tareasdebemos de llevar a cabo para desarrollar un buen software ? •Codificar. •Hacer pruebas. •Escuchar. •Diseñar
  • 11.
    FASES DE LAMETODOLOGIA XP Se basa en 12 principios básicos, agrupados en 4 categorías. •Retroalimentación a escala fina. •Proceso continuo en lugar de por lotes. •Entendimiento compartido. •Bienestar del programador.
  • 12.
    Retroalimentación a escalafina 1. El principio de pruebas: definición de las entradas al sistema y los resultados esperados de estas entradas. 2. Proceso de planificación: Se creará un documento llamado Historias del usuario (User Stories). 3. El cliente en el sitio: Representante del cliente para determinar los requerimientos, definir la funcionalidad, señalar las prioridades y responder las preguntas de los programadores. 4. Programación en parejas: Este principio puede producir aplicaciones más buenas, de manera consistente, a iguales o menores costos.
  • 13.
    Proceso continuo enlugar de por lotes. 1. Integración continua: permite al equipo hacer un rápido progreso implementando las nuevas características del software. 2. Refactorización: Los programadores evalúan continuamente el diseño y recodifican lo necesario. 3. Entregas pequeñas: colocan un sistema sencillo en producción rápidamente que se actualiza de forma rápida y constante permitiendo que el verdadero valor de negocio del producto sea evaluado en un ambiente real.
  • 14.
    Entendimiento compartido. 1. Diseñosimple (Simple Design): el mayor valor de negocio es entregado por el programa más sencillo que cumpla los requerimientos. 2. Metáfora: define una historia de como funciona el sistema completo. 3. Propiedad colectiva del código: un código con propiedad compartida. 4. Estándar de codificación: define la propiedad del código compartido sí como las reglas para escribir y documentar el código.
  • 15.
    Bienestar del programador. La semanade 40 horas: la programación extrema sostiene que los programadores cansados escriben código de menor calidad. Bienestar del programador
  • 16.
    CONCLUSIONES  Se puedeconcluir que la programación extrema es una buena alternativa, dependiendo del entorno de desarrollo en que se esta trabajando.  Al ser una herramienta que se basa en otras metodologías, se puede confiar en cada proceso individual.  La XP brinda no solo ventajas en cuanto a rapidez, sino que promueve habilidades sociales como la comunicación, el trabajo en equipo y disciplina.