SlideShare uma empresa Scribd logo
1 de 17
Programación Extrema(XP)
Programación Extrema(XP)
La programación extrema(XP) es una
metodología de desarrollo de software,
la cual pertenece al grupo de
metodologías de procesos agiles.
A diferencia de las metodologías
tradicionales, XP es una metodología
capaz de adaptarse a los cambios en el
desarrollo de software.
XP parte del hecho de que los cambios
en los requisitos de un proyecto en
construcción son algo natural e
inevitable.
Características
Desarrollo iterativo e incremental
◦ Entregas parciales del proyecto.
◦ Mejoras una tras otra.
Pruebas unitarias continuas
◦ Las pruebas ayudan a mejorar la calidad
del producto.
◦ Las pruebas deben de ser escritas antes
de la codificación.
Desarrollo en parejas
◦ Se recomienda que los equipos de
trabajo sean conformados por 2
personas, ya que de esta manera es
posible discutir el código mientras se
escribe y ejecutar las pruebas unitarias
en tiempo real.
Integración Cliente-Equipo de
desarrollo
Refactorización de código
◦ Se debe de crear código mas compacto que
permita aumentar su legibilidad y mantenga
su mismo comportamiento.
◦ Las pruebas unitarias son una forma de
comprobar que durante la refactorización de
código no se introdujeron errores.
Corrección de errores
◦ Se deben de corregir todos los errores antes
de comenzar a construir una nueva
funcionalidad.
Código compartido
◦ Promueve que cualquier miembro del
equipo de desarrollo pueda extender o
corregir cualquier parte modular del
proyecto.
Simplicidad en el código
◦ Es mas sencillo hacer algo simple que
requiera un poco de trabajo extra para
cambiarlo en caso de ser necesario, que
realizar algo complicado y quizás nunca
Valores XP
XP se fundamenta en 5 valores para su
implementación.
Comunicación Retroalimentación
Coraje Respeto
Simplicidad
Simplicidad
El diseño debe ser sencillo para
agilizar su desarrollo y mantenimiento.
El código debe de ser
refactorizado/reducido.
El código debe de ser documentado.
Comunicación
El contacto con el cliente es lo mas
importante.
El cliente pasa a formar parte del
equipo de desarrollo.
Los desarrolladores se comunican
constantemente al estar trabajando en
parejas.
Para los desarrolladores el código
comunica mejor cuando mas simple y
claro sea.
Retroalimentación
El cliente al estar formando parte del
equipo, es capaz de dar su opinión
sobre el estado del proyecto en
tiempo real.
Al realizarse entregas parciales del
proyecto, se minimiza el problema de
tener que rehacer partes que no
cumplan con los requerimientos.
Coraje
El coraje permite a los desarrolladores
afrontar los cambios en las
tecnologías y requerimientos.
El desarrollador debe de estar
consiente de que su código puede
llegar a ser reconstruido en caso de
ser necesario.
Respeto
Debe de existir respeto mutuo entre
los miembros del equipo.
Los miembros del equipo deben de
respetar el trabajo del resto, no
haciendo menos a otros.
Un buen autoestima en el equipo
fomenta una mejor productividad.
XP en la practica
Historias de usuario
Es la representación de un requerimiento
del usuario escrito en 1 o 2 frases
utilizando el lenguaje común del usuario.
Son una forma rápida de administrar los
requerimientos de los usuarios, evitando
tener que generar gran cantidad de
documentos formales que requieran de
mayor tiempo para administrarlos.
Deben de ser escritas por los clientes*.
Una historia de usuario debe de ser:
 Independiente
 Negociable
 Valorada por el cliente
 Estimable
 Pequeña
 Verificable
Tarjetas CRC
 Las tarjetas CRC(Clase-
Responsabilidad-Colaborador) son
documentos que representan las
responsabilidades que tiene una clase
y que objetos colaboran con ella para
cumplir las responsabilidades.

Mais conteúdo relacionado

Mais procurados (18)

Diferencias entre scrum y xp
Diferencias entre scrum y xp Diferencias entre scrum y xp
Diferencias entre scrum y xp
 
Metodologiaxp
MetodologiaxpMetodologiaxp
Metodologiaxp
 
Estrategias ágiles para incrementar calidad al construir y probar software
Estrategias ágiles para incrementar calidad al construir y probar softwareEstrategias ágiles para incrementar calidad al construir y probar software
Estrategias ágiles para incrementar calidad al construir y probar software
 
3.desarrollo ágil
3.desarrollo ágil3.desarrollo ágil
3.desarrollo ágil
 
Paula guia
Paula guiaPaula guia
Paula guia
 
Rup vs. xp
Rup vs. xpRup vs. xp
Rup vs. xp
 
Xtreme Programming
Xtreme ProgrammingXtreme Programming
Xtreme Programming
 
Programacion Extrema
Programacion ExtremaProgramacion Extrema
Programacion Extrema
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de software
 
TDD (Test-Driven Development)
TDD (Test-Driven Development)TDD (Test-Driven Development)
TDD (Test-Driven Development)
 
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)
 
3.desarrollo ágil
3.desarrollo ágil3.desarrollo ágil
3.desarrollo ágil
 
Metodos agiles 4
Metodos agiles 4Metodos agiles 4
Metodos agiles 4
 
Kevin guia
Kevin guiaKevin guia
Kevin guia
 
Programación extrema xp
Programación extrema xpProgramación extrema xp
Programación extrema xp
 
Metodología xp
Metodología xpMetodología xp
Metodología xp
 
Programación Extrema - XP
Programación Extrema - XPProgramación Extrema - XP
Programación Extrema - XP
 

Semelhante a Programación extrema(XP)

Programación extrema
Programación extremaProgramación extrema
Programación extremaBrandon Betto
 
Metodología ágil de programación extrema
Metodología ágil de programación extremaMetodología ágil de programación extrema
Metodología ágil de programación extremaRafael Hernandez
 
Metodología ágil de programación extrema
Metodología ágil de programación extremaMetodología ágil de programación extrema
Metodología ágil de programación extremaMiguelGonzalezLo
 
La programación extrema o e xtreme programming (xp
La programación extrema o e xtreme programming (xpLa programación extrema o e xtreme programming (xp
La programación extrema o e xtreme programming (xpjezule
 
Metodologías Ágiles - Scrum y XP
Metodologías Ágiles - Scrum y XPMetodologías Ágiles - Scrum y XP
Metodologías Ágiles - Scrum y XPJose I. Honrado
 
Comparación de dos Metodologias
Comparación de dos MetodologiasComparación de dos Metodologias
Comparación de dos Metodologiaszonajava
 
Rup vs. xp
Rup vs. xpRup vs. xp
Rup vs. xpjhon
 
Rup vs. xp
Rup vs. xpRup vs. xp
Rup vs. xpljds
 
La programación extrema
La programación extremaLa programación extrema
La programación extremaingridleona
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoJohita Guerrero
 
Programación extrema [XP]
Programación extrema [XP]Programación extrema [XP]
Programación extrema [XP]Agustín
 
Metodologías Aágiles: TDD (Test Driven development)
Metodologías Aágiles: TDD (Test Driven development)Metodologías Aágiles: TDD (Test Driven development)
Metodologías Aágiles: TDD (Test Driven development)Martín Machuca
 
Proceso agil
Proceso agilProceso agil
Proceso agiljohusiro
 

Semelhante a Programación extrema(XP) (20)

Programación extrema
Programación extremaProgramación extrema
Programación extrema
 
Monografia de xp
Monografia de xpMonografia de xp
Monografia de xp
 
Metodologias agiles
Metodologias agilesMetodologias agiles
Metodologias agiles
 
desarrollo agil-2022.pdf
desarrollo agil-2022.pdfdesarrollo agil-2022.pdf
desarrollo agil-2022.pdf
 
Metodología ágil de programación extrema
Metodología ágil de programación extremaMetodología ágil de programación extrema
Metodología ágil de programación extrema
 
Metodología ágil de programación extrema
Metodología ágil de programación extremaMetodología ágil de programación extrema
Metodología ágil de programación extrema
 
La programación extrema o e xtreme programming (xp
La programación extrema o e xtreme programming (xpLa programación extrema o e xtreme programming (xp
La programación extrema o e xtreme programming (xp
 
Luis
LuisLuis
Luis
 
XP Programming
XP ProgrammingXP Programming
XP Programming
 
Metodologías Ágiles - Scrum y XP
Metodologías Ágiles - Scrum y XPMetodologías Ágiles - Scrum y XP
Metodologías Ágiles - Scrum y XP
 
Comparación de dos Metodologias
Comparación de dos MetodologiasComparación de dos Metodologias
Comparación de dos Metodologias
 
Rup vs. xp
Rup vs. xpRup vs. xp
Rup vs. xp
 
Rup vs. xp
Rup vs. xpRup vs. xp
Rup vs. xp
 
Rup vs. xp
Rup vs. xpRup vs. xp
Rup vs. xp
 
Xp
XpXp
Xp
 
La programación extrema
La programación extremaLa programación extrema
La programación extrema
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyecto
 
Programación extrema [XP]
Programación extrema [XP]Programación extrema [XP]
Programación extrema [XP]
 
Metodologías Aágiles: TDD (Test Driven development)
Metodologías Aágiles: TDD (Test Driven development)Metodologías Aágiles: TDD (Test Driven development)
Metodologías Aágiles: TDD (Test Driven development)
 
Proceso agil
Proceso agilProceso agil
Proceso agil
 

Último

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 estossgonzalezp1
 
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 XXIhmpuellon
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
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.FlorenciaCattelani
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
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...JohnRamos830530
 
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 ASPECTOSpptxJorgeParada26
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
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.pptxAlan779941
 
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 eyvanamcerpam
 

Último (12)

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
 
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
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
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.
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
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...
 
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
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
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
 
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
 

Programación extrema(XP)

  • 2. Programación Extrema(XP) La programación extrema(XP) es una metodología de desarrollo de software, la cual pertenece al grupo de metodologías de procesos agiles. A diferencia de las metodologías tradicionales, XP es una metodología capaz de adaptarse a los cambios en el desarrollo de software.
  • 3. XP parte del hecho de que los cambios en los requisitos de un proyecto en construcción son algo natural e inevitable.
  • 4. Características Desarrollo iterativo e incremental ◦ Entregas parciales del proyecto. ◦ Mejoras una tras otra. Pruebas unitarias continuas ◦ Las pruebas ayudan a mejorar la calidad del producto. ◦ Las pruebas deben de ser escritas antes de la codificación.
  • 5. Desarrollo en parejas ◦ Se recomienda que los equipos de trabajo sean conformados por 2 personas, ya que de esta manera es posible discutir el código mientras se escribe y ejecutar las pruebas unitarias en tiempo real. Integración Cliente-Equipo de desarrollo
  • 6. Refactorización de código ◦ Se debe de crear código mas compacto que permita aumentar su legibilidad y mantenga su mismo comportamiento. ◦ Las pruebas unitarias son una forma de comprobar que durante la refactorización de código no se introdujeron errores. Corrección de errores ◦ Se deben de corregir todos los errores antes de comenzar a construir una nueva funcionalidad.
  • 7. Código compartido ◦ Promueve que cualquier miembro del equipo de desarrollo pueda extender o corregir cualquier parte modular del proyecto. Simplicidad en el código ◦ Es mas sencillo hacer algo simple que requiera un poco de trabajo extra para cambiarlo en caso de ser necesario, que realizar algo complicado y quizás nunca
  • 8. Valores XP XP se fundamenta en 5 valores para su implementación. Comunicación Retroalimentación Coraje Respeto Simplicidad
  • 9. Simplicidad El diseño debe ser sencillo para agilizar su desarrollo y mantenimiento. El código debe de ser refactorizado/reducido. El código debe de ser documentado.
  • 10. Comunicación El contacto con el cliente es lo mas importante. El cliente pasa a formar parte del equipo de desarrollo. Los desarrolladores se comunican constantemente al estar trabajando en parejas. Para los desarrolladores el código comunica mejor cuando mas simple y claro sea.
  • 11. Retroalimentación El cliente al estar formando parte del equipo, es capaz de dar su opinión sobre el estado del proyecto en tiempo real. Al realizarse entregas parciales del proyecto, se minimiza el problema de tener que rehacer partes que no cumplan con los requerimientos.
  • 12. Coraje El coraje permite a los desarrolladores afrontar los cambios en las tecnologías y requerimientos. El desarrollador debe de estar consiente de que su código puede llegar a ser reconstruido en caso de ser necesario.
  • 13. Respeto Debe de existir respeto mutuo entre los miembros del equipo. Los miembros del equipo deben de respetar el trabajo del resto, no haciendo menos a otros. Un buen autoestima en el equipo fomenta una mejor productividad.
  • 14. XP en la practica
  • 15. Historias de usuario Es la representación de un requerimiento del usuario escrito en 1 o 2 frases utilizando el lenguaje común del usuario. Son una forma rápida de administrar los requerimientos de los usuarios, evitando tener que generar gran cantidad de documentos formales que requieran de mayor tiempo para administrarlos. Deben de ser escritas por los clientes*.
  • 16. Una historia de usuario debe de ser:  Independiente  Negociable  Valorada por el cliente  Estimable  Pequeña  Verificable
  • 17. Tarjetas CRC  Las tarjetas CRC(Clase- Responsabilidad-Colaborador) son documentos que representan las responsabilidades que tiene una clase y que objetos colaboran con ella para cumplir las responsabilidades.