SlideShare uma empresa Scribd logo
1 de 44
Baixar para ler offline
Programación Extrema
eXtreme Programming
Daniel Ochoa
Enrique Alcocer
William Munevar
Natalia Herrera Rey
Introducción
Metodologías Ágiles
Equipos ágiles
Incorpora al Cliente
Introducción
Metodologías Ágiles
Requerimientos cambiantes
Entrega rápida de software operativo
Manifiesto Ágil
Lodge Snowbird (montañas de Wasatch de Utah)
Extreme Programming
Scrum
DSDM
Adaptive Software
Development
Crystal
Feature-Driven Development
Pragmatic Programming
Manifiesto Ágil
El manifiesto está conformado por tres
elementos claves que son:
La declaración del manifiesto
Los principios que soportan la declaración
Los mentalizadores y simpatizantes de la
declaración
Manifiesto Ágil
Kent Beck
Mike Beedle
Arie van Bennekum
Alistair Cockburn
Ward Cunningham
Martin Fowler
James Grenning
Jim Highsmith
Andrew Hunt
Ron Jeffries
Jon Kern
Brian Marick
Robert C. Martin
Steve Mellor
Ken Schwaber
Jeff Sutherland
Dave Thomas
Estamos descubriendo formas mejores de
desarrollar software tanto por nuestra propia
experiencia como ayudando a terceros.
A través de este trabajo hemos
aprendido a valorar:
Individuos e interacciones
sobre
Procesos y herramientas
Software funcionando Documentación extensiva
Colaboración con el cliente Negociación contractual
Respuesta ante el cambio Seguir un plan
Esto es, aunque valoramos los elementos de la derecha, valoramos
más los de la izquierda.
Principios Ágiles
Imágenes por: Pablo Tortorella
1 Nuestra mayor prioridad es satisfacer al cliente
mediante la entrega temprana y continua de software
con valor.
2 Aceptamos que los requisitos cambien, incluso en
etapas tardías del desarrollo. Los procesos Ágiles
aprovechan el cambio para proporcionar ventaja
competitiva al cliente.
Principios Ágiles
Imágenes por: Pablo Tortorella
3 Entregamos software funcional
frecuentemente, entre dos semanas y dos
meses, con preferencia al periodo de
tiempo más corto posible.
4 Los responsables de negocio y los
desarrolladores trabajamos juntos de
forma cotidiana durante todo el proyecto.
Principios Ágiles
Imágenes por: Pablo Tortorella
5 Los proyectos se desarrollan en torno a individuos
motivados. Hay que darles el entorno y el apoyo que
necesitan, y confiarles la ejecución del trabajo.
6 El método más eficiente y efectivo de
comunicar información al equipo de
desarrollo y entre sus miembros es la
conversación cara a cara.
Principios Ágiles
Imágenes por: Pablo Tortorella
7 El software funcionando es la medida principal de
progreso.
8 Los procesos Ágiles promueven el desarrollo
sostenible. Los promotores, desarrolladores y usuarios
debemos ser capaces de mantener un ritmo constante
de forma indefinida.
Principios Ágiles
Imágenes por: Pablo Tortorella
9 La atención continua a la
excelencia técnica y al buen diseño
mejora la Agilidad.
10 La simplicidad, o el arte de
maximizar la cantidad de trabajo no
realizado, es esencial.
Principios Ágiles
Imágenes por: Pablo Tortorella
11 Las mejores arquitecturas, requisitos y
diseños emergen de equipos auto-
organizados.
12 A intervalos regulares el equipo
reflexiona sobre cómo ser más efectivo
para a continuación ajustar y
perfeccionar su comportamiento en
consecuencia.
Programación eXtrema
La programación extrema (en inglés eXtreme
Programming o XP) fue desarrollada por Kent
Beck en 1996.
Primer libro sobre XP
En 1999 se publicó el
primer libro sobre está
metodología.
En 2004 se refinaría la
misma.
Los “extremo” de XP
Kent Beck:
“Llevar buenas prácticas de Ingeniería de
Software al extremo”
Práctica Extrema
Entregas incrementales e integración continua
Programación de a pares
Desarrollo guiado por pruebas
Cliente in situ
Buena Práctica
Software funcionando
Revisiones de código
Sistemas de pruebas estructurado
Tener alineado al cliente
Problemas del desarrollo de SW
Tiempos
Requerimientos
Tiempos
Problemas del desarrollo de SW
Falsa
Riqueza
Cambio de
Personal
Mantenimiento
Defectos
El costo del cambio
Objetivos de la XP
Satisfacción
del Cliente
Trabajo en
Equipo
Valores de la XP
Comunicación
Valentía
Sencillez
Retroalimentación
Actividades básicas
Hacer
Pruebas
Codificar Diseñar
Escuchar
Las Cuatro Variables
Coste:
Máquinas,
especialistas y oficinas
Alcance:
Intervención del cliente
Tiempo:
Total y de Entregas
Calidad:
Externa e Interna
¿Qué es lo novedoso aquí?
“Quiero estos requisitos
satisfechos para el día uno
del mes que viene, para lo
cual cuenta con este equipo.
¡Ah, y ya saben que la
calidad es lo primero!”
El equipo de desarrollo determinaría
la cuarta variable
Ciclo de vida
un proyecto con XP lleva 10 a 15 ciclos o iteraciones
Fases
Prácticas de la XP
Planificación Diseño
Desarrollo
Pruebas
Planificación
Plan de
entregas
Plan de
iteraciones
Reuniones
diarias
Historias de
Usuario
Diseño
Soluciones
Recodificación Metáforas
Simplicidad
Desarrollo del Código
Programación
por pruebas
Programación
en pares
Integraciones
Permanentes
Estandares
Desarrollo del Código
Ritmo
sostenido
Propiedad
colectiva del
código
Pruebas
Corrección de
errores
Pruebas de
aceptación
Pruebas
unitarias
Roles en un equipo XP
Programador Cliente
Roles en un equipo XP
Pruebas
(Tester)
Seguimiento
(Tracker)
Roles en un equipo XP
Entrenador Consultor
Roles en un equipo XP
Jefe de proyecto
(Big Boss)
Artefactos XP
- Historias de usuario
Escritas en términos del cliente, son una herramienta para dar a conocer los requerimientos del
proyecto a desarrollar.
Las historias de usuario tienen tres aspectos:
● Tarjeta
● Conversación
● Prueba de aceptación
Artefactos XP
Artefactos XP
- Tarea de ingeniería (Task Card)
Usadas para describir tareas que realizan el proyecto. Deben tener relación con una Historia de
Usuario.
- Tarjetas CRC (Clase - Responsabilidad - Colaborador)
Forma de trabajo grupal donde se encuentran los objetos del dominio de la aplicación a resolver.
Artefactos XP
Críticas a eXtreme Programming
40 Horas semanales
Programación de pares
Problemas entre programadores
Diseñado para grupos pequeños
Recursos
❏ JULIÁN Gómez. El laboratorio de las TI [En línea]. [Fecha de consulta: 10 abril 2014].
Disponible en: http://www.laboratorioti.com/2014/02/17/historia-de-las-metodologias-agiles/
❏ WARD Cunningham. Manifesto for Agile Software Development. [Fecha de consulta: 10 abril
2014]. Disponible en: http://agilemanifesto.org/
❏ ARQUITECTURA DSN_XP. Historia: El manifiesto ágil. [En línea]. [Fecha de consulta: 10 abril
2014]. Disponible en: http://dsnxpagile.blogspot.com/2013/02/historia-el-manifiesto-agil.html
❏ CHILE ÁGIL. Introducción Ágil a eXtreme Programming. [En línea]. [Fecha de consulta: 10 abril
2014]. Disponible en: http://www.slideshare.net/chileagil/introduccin-gil-a-extreme-programming-
webprendedor08-350127
❏ PABLO, Tortorella. Kleer - Principios Ágiles. [En línea]. [Fecha de consulta: 10 abril 2014].
Disponible en: https://www.youtube.com/watch?v=V5LaKpjcgKQ
❏ Extreme Programming: A gentle introduction. [En línea]. [Fecha de consulta: 15 abril 2014].
Disponible en: http://www.extremeprogramming.org/
❏ Joskowicz, José. Reglas y Prácticas en eXtreme Programming.[En línea].[Fecha de consulta: 12
abril 2014].Disponible en:http://iie.fing.edu.uy/~josej/docs/XP%20-%20Jose%20Joskowicz.pdf
❏ Escribano, Gerardo. Introducción a Extreme Programming.[En línea]. [Fecha de consulta: 12
abril 2014]. Disponible en: http://es.scribd.com/doc/105125372/Metodologia-agil-XP

Mais conteúdo relacionado

Mais procurados

Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
kaolong
 
Tecnicas de estimacion de software
Tecnicas de estimacion de softwareTecnicas de estimacion de software
Tecnicas de estimacion de software
Ades27
 
Arquitectura dirigida a eventos
Arquitectura dirigida a eventosArquitectura dirigida a eventos
Arquitectura dirigida a eventos
rehoscript
 
diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistema
Universidad Tecnológica
 

Mais procurados (20)

Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
 
Metodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudMetodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliud
 
Modelos de estimacion de software
Modelos de estimacion de softwareModelos de estimacion de software
Modelos de estimacion de software
 
Modelo de desarrollo de software
Modelo de desarrollo de softwareModelo de desarrollo de software
Modelo de desarrollo de software
 
MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)
 
Estimación de Proyectos de Software
Estimación de Proyectos de SoftwareEstimación de Proyectos de Software
Estimación de Proyectos de Software
 
metodología crystal clear
 metodología crystal clear metodología crystal clear
metodología crystal clear
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Metodologías ágiles, Scrum, Kanban y eXtreme Programming
Metodologías ágiles, Scrum, Kanban y eXtreme ProgrammingMetodologías ágiles, Scrum, Kanban y eXtreme Programming
Metodologías ágiles, Scrum, Kanban y eXtreme Programming
 
Ingeniería de software modelo incremental
Ingeniería de software  modelo incrementalIngeniería de software  modelo incremental
Ingeniería de software modelo incremental
 
Rup vs. xp
Rup vs. xpRup vs. xp
Rup vs. xp
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema
 
Tecnicas de estimacion de software
Tecnicas de estimacion de softwareTecnicas de estimacion de software
Tecnicas de estimacion de software
 
Arquitectura dirigida a eventos
Arquitectura dirigida a eventosArquitectura dirigida a eventos
Arquitectura dirigida a eventos
 
Gestión de proyecto de software
Gestión de proyecto de softwareGestión de proyecto de software
Gestión de proyecto de software
 
Metodologia dsdm
Metodologia dsdmMetodologia dsdm
Metodologia dsdm
 
2 modelos de la ingenieria de software
2  modelos de la ingenieria de software2  modelos de la ingenieria de software
2 modelos de la ingenieria de software
 
Scrum
ScrumScrum
Scrum
 
diagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistemadiagrama de casos de uso del negocio y del sistema
diagrama de casos de uso del negocio y del sistema
 

Destaque

Programacion extrema
Programacion extremaProgramacion extrema
Programacion extrema
Cheo Mateo
 
Extreme programming (1)
Extreme programming (1)Extreme programming (1)
Extreme programming (1)
Enrique Polo
 
Modelo de cascadaa
Modelo de cascadaaModelo de cascadaa
Modelo de cascadaa
mendez45
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyecto
Johita Guerrero
 

Destaque (20)

Programación Extrema
Programación ExtremaProgramación Extrema
Programación Extrema
 
Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)
 
Historias de Usuario (Tarjetas)
Historias de Usuario (Tarjetas)Historias de Usuario (Tarjetas)
Historias de Usuario (Tarjetas)
 
Diferencias entre scrum y xp
Diferencias entre scrum y xp Diferencias entre scrum y xp
Diferencias entre scrum y xp
 
Visual Scrum – WYSWYG
Visual Scrum – WYSWYGVisual Scrum – WYSWYG
Visual Scrum – WYSWYG
 
MODELO RUP
MODELO RUPMODELO RUP
MODELO RUP
 
Programacion extrema
Programacion extremaProgramacion extrema
Programacion extrema
 
Extreme programming (1)
Extreme programming (1)Extreme programming (1)
Extreme programming (1)
 
Chrysler c3 project
Chrysler c3 projectChrysler c3 project
Chrysler c3 project
 
rup
ruprup
rup
 
Xp
XpXp
Xp
 
Pomodoro
PomodoroPomodoro
Pomodoro
 
Tarjetas crc
Tarjetas crcTarjetas crc
Tarjetas crc
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Modelo de cascadaa
Modelo de cascadaaModelo de cascadaa
Modelo de cascadaa
 
How a project portfolio is born, grows and dies
How a project portfolio is born, grows and diesHow a project portfolio is born, grows and dies
How a project portfolio is born, grows and dies
 
User Story Card Design
User Story Card DesignUser Story Card Design
User Story Card Design
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyecto
 
Metodologías de desarrollo ágiles: Scrum, XP
Metodologías de desarrollo ágiles: Scrum, XPMetodologías de desarrollo ágiles: Scrum, XP
Metodologías de desarrollo ágiles: Scrum, XP
 

Semelhante a Programación Extrema - XP

Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3   Extreme ProgrammingSeminario MetodologíAs áGiles Y Xp, Tema 3   Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
guest123148
 
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3   Extreme ProgrammingSeminario MetodologíAs áGiles Y Xp, Tema 3   Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
guest123148
 
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3   Extreme ProgrammingSeminario MetodologíAs áGiles Y Xp, Tema 3   Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
guest82ea27
 
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3   Extreme ProgrammingSeminario MetodologíAs áGiles Y Xp, Tema 3   Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
guest82ea27
 
Metodos agiles
Metodos agilesMetodos agiles
Metodos agiles
CrisCobol
 
Metodos agiles
Metodos agilesMetodos agiles
Metodos agiles
CrisCobol
 
La programación extrema o e xtreme programming
La programación extrema o e xtreme programmingLa programación extrema o e xtreme programming
La programación extrema o e xtreme programming
JoseMariaAndujar
 
Díme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usarDíme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usar
Kiberley Santos
 

Semelhante a Programación Extrema - XP (20)

Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3   Extreme ProgrammingSeminario MetodologíAs áGiles Y Xp, Tema 3   Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
 
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3   Extreme ProgrammingSeminario MetodologíAs áGiles Y Xp, Tema 3   Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
 
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3   Extreme ProgrammingSeminario MetodologíAs áGiles Y Xp, Tema 3   Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
 
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3   Extreme ProgrammingSeminario MetodologíAs áGiles Y Xp, Tema 3   Extreme Programming
Seminario MetodologíAs áGiles Y Xp, Tema 3 Extreme Programming
 
Metodologías Ágiles en la Práctica
Metodologías Ágiles en la PrácticaMetodologías Ágiles en la Práctica
Metodologías Ágiles en la Práctica
 
Metodos agiles
Metodos agilesMetodos agiles
Metodos agiles
 
Metodos agiles
Metodos agilesMetodos agiles
Metodos agiles
 
Xp
XpXp
Xp
 
Programación extrema (xp)
Programación extrema (xp)Programación extrema (xp)
Programación extrema (xp)
 
Xp
XpXp
Xp
 
Metodologias de analisis y diseño de sistemas
Metodologias de analisis y diseño de sistemasMetodologias de analisis y diseño de sistemas
Metodologias de analisis y diseño de sistemas
 
Alternativas metodológicas
Alternativas metodológicasAlternativas metodológicas
Alternativas metodológicas
 
Metodologias agiles
Metodologias agilesMetodologias agiles
Metodologias agiles
 
La programación extrema o e xtreme programming
La programación extrema o e xtreme programmingLa programación extrema o e xtreme programming
La programación extrema o e xtreme programming
 
Metodos agiles 4
Metodos agiles 4Metodos agiles 4
Metodos agiles 4
 
Clase 03 XP
Clase 03 XPClase 03 XP
Clase 03 XP
 
Introducción a Técnicas Agiles y Scrum : Dia 1
Introducción a Técnicas Agiles y Scrum  : Dia 1Introducción a Técnicas Agiles y Scrum  : Dia 1
Introducción a Técnicas Agiles y Scrum : Dia 1
 
Díme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usarDíme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usar
 
Is.EXP.1.327117 Programación Extrema
Is.EXP.1.327117 Programación ExtremaIs.EXP.1.327117 Programación Extrema
Is.EXP.1.327117 Programación Extrema
 
Exposicion xp[1]
Exposicion xp[1]Exposicion xp[1]
Exposicion xp[1]
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (11)

Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 

Programación Extrema - XP

  • 1. Programación Extrema eXtreme Programming Daniel Ochoa Enrique Alcocer William Munevar Natalia Herrera Rey
  • 4. Manifiesto Ágil Lodge Snowbird (montañas de Wasatch de Utah) Extreme Programming Scrum DSDM Adaptive Software Development Crystal Feature-Driven Development Pragmatic Programming
  • 5. Manifiesto Ágil El manifiesto está conformado por tres elementos claves que son: La declaración del manifiesto Los principios que soportan la declaración Los mentalizadores y simpatizantes de la declaración
  • 6. Manifiesto Ágil Kent Beck Mike Beedle Arie van Bennekum Alistair Cockburn Ward Cunningham Martin Fowler James Grenning Jim Highsmith Andrew Hunt Ron Jeffries Jon Kern Brian Marick Robert C. Martin Steve Mellor Ken Schwaber Jeff Sutherland Dave Thomas Estamos descubriendo formas mejores de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros.
  • 7. A través de este trabajo hemos aprendido a valorar: Individuos e interacciones sobre Procesos y herramientas Software funcionando Documentación extensiva Colaboración con el cliente Negociación contractual Respuesta ante el cambio Seguir un plan Esto es, aunque valoramos los elementos de la derecha, valoramos más los de la izquierda.
  • 8. Principios Ágiles Imágenes por: Pablo Tortorella 1 Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor. 2 Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente.
  • 9. Principios Ágiles Imágenes por: Pablo Tortorella 3 Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia al periodo de tiempo más corto posible. 4 Los responsables de negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo el proyecto.
  • 10. Principios Ágiles Imágenes por: Pablo Tortorella 5 Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que necesitan, y confiarles la ejecución del trabajo. 6 El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus miembros es la conversación cara a cara.
  • 11. Principios Ágiles Imágenes por: Pablo Tortorella 7 El software funcionando es la medida principal de progreso. 8 Los procesos Ágiles promueven el desarrollo sostenible. Los promotores, desarrolladores y usuarios debemos ser capaces de mantener un ritmo constante de forma indefinida.
  • 12. Principios Ágiles Imágenes por: Pablo Tortorella 9 La atención continua a la excelencia técnica y al buen diseño mejora la Agilidad. 10 La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial.
  • 13. Principios Ágiles Imágenes por: Pablo Tortorella 11 Las mejores arquitecturas, requisitos y diseños emergen de equipos auto- organizados. 12 A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y perfeccionar su comportamiento en consecuencia.
  • 14.
  • 15. Programación eXtrema La programación extrema (en inglés eXtreme Programming o XP) fue desarrollada por Kent Beck en 1996.
  • 16. Primer libro sobre XP En 1999 se publicó el primer libro sobre está metodología. En 2004 se refinaría la misma.
  • 17. Los “extremo” de XP Kent Beck: “Llevar buenas prácticas de Ingeniería de Software al extremo” Práctica Extrema Entregas incrementales e integración continua Programación de a pares Desarrollo guiado por pruebas Cliente in situ Buena Práctica Software funcionando Revisiones de código Sistemas de pruebas estructurado Tener alineado al cliente
  • 18. Problemas del desarrollo de SW Tiempos Requerimientos Tiempos
  • 19. Problemas del desarrollo de SW Falsa Riqueza Cambio de Personal Mantenimiento Defectos
  • 20. El costo del cambio
  • 21. Objetivos de la XP Satisfacción del Cliente Trabajo en Equipo
  • 22. Valores de la XP Comunicación Valentía Sencillez Retroalimentación
  • 24. Las Cuatro Variables Coste: Máquinas, especialistas y oficinas Alcance: Intervención del cliente Tiempo: Total y de Entregas Calidad: Externa e Interna
  • 25. ¿Qué es lo novedoso aquí? “Quiero estos requisitos satisfechos para el día uno del mes que viene, para lo cual cuenta con este equipo. ¡Ah, y ya saben que la calidad es lo primero!”
  • 26. El equipo de desarrollo determinaría la cuarta variable
  • 27. Ciclo de vida un proyecto con XP lleva 10 a 15 ciclos o iteraciones
  • 28. Fases
  • 29. Prácticas de la XP Planificación Diseño Desarrollo Pruebas
  • 32. Desarrollo del Código Programación por pruebas Programación en pares Integraciones Permanentes Estandares
  • 35. Roles en un equipo XP Programador Cliente
  • 36. Roles en un equipo XP Pruebas (Tester) Seguimiento (Tracker)
  • 37. Roles en un equipo XP Entrenador Consultor
  • 38. Roles en un equipo XP Jefe de proyecto (Big Boss)
  • 39. Artefactos XP - Historias de usuario Escritas en términos del cliente, son una herramienta para dar a conocer los requerimientos del proyecto a desarrollar. Las historias de usuario tienen tres aspectos: ● Tarjeta ● Conversación ● Prueba de aceptación
  • 41. Artefactos XP - Tarea de ingeniería (Task Card) Usadas para describir tareas que realizan el proyecto. Deben tener relación con una Historia de Usuario. - Tarjetas CRC (Clase - Responsabilidad - Colaborador) Forma de trabajo grupal donde se encuentran los objetos del dominio de la aplicación a resolver.
  • 43. Críticas a eXtreme Programming 40 Horas semanales Programación de pares Problemas entre programadores Diseñado para grupos pequeños
  • 44. Recursos ❏ JULIÁN Gómez. El laboratorio de las TI [En línea]. [Fecha de consulta: 10 abril 2014]. Disponible en: http://www.laboratorioti.com/2014/02/17/historia-de-las-metodologias-agiles/ ❏ WARD Cunningham. Manifesto for Agile Software Development. [Fecha de consulta: 10 abril 2014]. Disponible en: http://agilemanifesto.org/ ❏ ARQUITECTURA DSN_XP. Historia: El manifiesto ágil. [En línea]. [Fecha de consulta: 10 abril 2014]. Disponible en: http://dsnxpagile.blogspot.com/2013/02/historia-el-manifiesto-agil.html ❏ CHILE ÁGIL. Introducción Ágil a eXtreme Programming. [En línea]. [Fecha de consulta: 10 abril 2014]. Disponible en: http://www.slideshare.net/chileagil/introduccin-gil-a-extreme-programming- webprendedor08-350127 ❏ PABLO, Tortorella. Kleer - Principios Ágiles. [En línea]. [Fecha de consulta: 10 abril 2014]. Disponible en: https://www.youtube.com/watch?v=V5LaKpjcgKQ ❏ Extreme Programming: A gentle introduction. [En línea]. [Fecha de consulta: 15 abril 2014]. Disponible en: http://www.extremeprogramming.org/ ❏ Joskowicz, José. Reglas y Prácticas en eXtreme Programming.[En línea].[Fecha de consulta: 12 abril 2014].Disponible en:http://iie.fing.edu.uy/~josej/docs/XP%20-%20Jose%20Joskowicz.pdf ❏ Escribano, Gerardo. Introducción a Extreme Programming.[En línea]. [Fecha de consulta: 12 abril 2014]. Disponible en: http://es.scribd.com/doc/105125372/Metodologia-agil-XP