SlideShare una empresa de Scribd logo
METODOLOGÍAS XP
Definición:
Es una metodología de desarrollo de la ingeniería de software formulada por Kent
Beck, autor del primer libro sobre la materia, Extreme Programming Explained:
Embrace Change (1999). Es el más destacado de los procesos ágiles de desarrollo de
software. Al igual que éstos, la programación extrema se diferencia de las
metodologías tradicionales principalmente en que pone más énfasis en la
adaptabilidad que en la previsibilidad.
CARACTERÍSTICAS
1. Desarrollo interactivo e incremental:
Pequeñas mejoras, unas tras otras.
2. Pruebas Unitarias Continuas:
frecuentemente repetidas y automatizadas, incluyendo pruebas de regresión. Se
aconseja escribir el código de la prueba antes de la codificación. Véase, por
ejemplo, las herramientas de prueba JUnit orientada a Java, DUnit orientada a
Delphi, NUnit para la plataforma.NET o PHPUnit para PHP. Estas tres últimas
inspiradas en JUnit, la cual, a su vez, se insipiró en SUnit, el primer framework
orientado a realizar tests, realizado para el lenguaje de programación Smalltalk.
3. Programación en Pareja:
se recomienda que las tareas de desarrollo se lleven a cabo por dos personas en un
mismo puesto. La mayor calidad del código escrito de esta manera -el código es
revisado y discutido mientras se escribe- es más importante que la posible pérdida de
productividad inmediata.
4. Frecuente integración del equipo de programación con el cliente o usuario:
Se recomienda que un representante del cliente trabaje junto al equipo de desarrollo.
5. Corrección de todos los errores:
Antes de añadir nueva funcionalidad. Hacer entregas frecuentes.
6. Refactorización del código:
Es decir, reescribir ciertas partes del código para aumentar su legibilidad y
mantenibilidad pero sin modificar su comportamiento. Las pruebas han de garantizar
que en la refactorización no se ha introducido ningún fallo.
7. Propiedad del código compartida:
En vez de dividir la responsabilidad en el desarrollo de cada módulo en grupos de
trabajo distintos, este método promueve el que todo el personal pueda corregir y
extender cualquier parte del proyecto. Las frecuentes pruebas de regresión garantizan
que los posibles errores serán detectados.
8. Simplicidad en el código:
Es la mejor manera de que las cosas funcionen. Cuando todo funcione se podrá
añadir funcionalidad si es necesario. La programación extrema apuesta que es más
sencillo hacer algo simple y tener un poco de trabajo extra para cambiarlo si se
requiere, que realizar algo complicado y quizás nunca utilizarlo.
CICLO DE DESARROLLO
1. Exploración:
En esta fase, los clientes plantean a grandes rasgos las historias de usuario que son
de interés para la primera entrega del producto. Al mismo tiempo el equipo de
desarrollo se familiariza con las herramientas, tecnologías y prácticas que se utilizarán
en el proyecto. Se prueba la tecnología y se exploran las posibilidades de la
arquitectura del sistema construyendo un prototipo. La fase de exploración toma de
pocas semanas a pocos meses, dependiendo del tamaño y familiaridad que tengan
los programadores con la tecnología.
2. Planeacion de entrega (RELEASE):
En esta fase el cliente establece la prioridad de cada historia de usuario, y correspondientemente,
los programadores realizan una estimación del esfuerzo necesario de cada una de ellas. Se toman
acuerdos sobre el contenido de la primera entrega y se determina un cronograma en conjunto con
el cliente. Una entrega debería obtenerse en no más de tres meses. Esta fase dura unos pocos días.
Las estimaciones de esfuerzo asociado a la implementación de las historias la establecen los
programadores utilizando como medida el punto. Un punto, equivale a una semana ideal de
programación. Las historias generalmente valen de 1 a 3 puntos. Por otra parte, el equipo de
desarrollo mantiene un registro de la “velocidad” de desarrollo, establecida en puntos por
iteración, basándose principalmente en la suma de puntos correspondientes a las historias de
usuario que fueron terminadas en la última iteración.
3. Iteraciones:
Esta fase incluye varias iteraciones sobre el sistema antes de ser entregado. El Plan de
Entrega está compuesto por iteraciones de no más de tres semanas. En la primera
iteración se puede intentar establecer una arquitectura del sistema que pueda ser
utilizada durante el resto del proyecto. Esto se logra escogiendo las historias que
fuercen la creación de esta arquitectura, sin embargo, esto no siempre es posible ya
que es el cliente quien decide qué historias se implementarán en cada iteración (para
maximizar el valor de negocio). Al final de la última iteración el sistema estará listo
para entrar en producción. Los elementos que deben tomarse en cuenta durante la
elaboración del Plan de la Iteración son: historias de usuario no abordadas, velocidad
del proyecto, pruebas de aceptación no superadas en la iteración anterior y tareas no
terminadas en la iteración anterior.
4. Producción:
La fase de producción requiere de pruebas adicionales y revisiones de rendimiento
antes de que el sistema sea trasladado al entorno del cliente. Al mismo tiempo, se
deben tomar decisiones sobre la inclusión de nuevas características a la versión actual,
debido a cambios durante esta fase. Es posible que se rebaje el tiempo que toma
cada iteración, de tres a una semana. Las ideas que han sido propuestas y las
sugerencias son documentadas para su posterior implementación (por ejemplo,
durante la fase de mantenimiento).
5. Mantenimiento:
Mientras la primera versión se encuentra en producción, el proyecto XP debe mantener
el sistema en funcionamiento al mismo tiempo que desarrolla nuevas iteraciones. Para
realizar esto se requiere de tareas de soporte para el cliente. De esta forma, la
velocidad de desarrollo puede bajar después de la puesta del sistema en producción.
La fase de mantenimiento puede requerir nuevo personal dentro del equipo y cambios
en su estructura.
6. Muerte de Proyecto:
Es cuando el cliente no tiene más historias para ser incluidas en el sistema. Esto
requiere que se satisfagan las necesidades del cliente en otros aspectos como
rendimiento y confiabilidad del sistema. Se genera la documentación final del sistema
y no se realizan más cambios en la arquitectura. La muerte del proyecto también
ocurre cuando el sistema no genera los beneficios esperados por el cliente o cuando
no hay presupuesto para mantenerlo.
EJEMPLOS
RESUMEN
Es una metodología de desarrollo de la ingeniería de software formulada por Kent
Beck, autor del primer libro sobre la materia, Extreme Programming Explained:
Embrace Change (1999). Es el más destacado de los procesos ágiles de desarrollo de
software. Al igual que éstos, la programación extrema se diferencia de las
metodologías tradicionales principalmente en que pone más énfasis en la
adaptabilidad que en la previsibilidad. Los defensores de la XP consideran que los
cambios de requisitos sobre la marcha son un aspecto natural, inevitable e incluso
deseable del desarrollo de proyectos. Creen que ser capaz de adaptarse a los cambios
de requisitos en cualquier punto de la vida del proyecto es una aproximación mejor y
más realista que intentar definir todos los requisitos al comienzo del proyecto e
invertir esfuerzos después en controlar los cambios en los requisitos. Es una
herramienta que facilita el proceso de conceptualización y análisis de causalidades, así
como el diseño, ejecución, monitoreo y evaluación de programas y proyectos desde
una perspectiva de orientación por objetivos.
SUMMARY
It is a development methodology of software engineering made by Kent Beck, author of
the first book on the subject, Extreme Programming Explained: Embrace Change (1999).
It is the highlight of agile software development processes. Like them, extreme
programming differs from traditional methodologies mainly in putting more emphasis
on adaptability in predictability. Proponents of XP consider changing requirements on
the fly is a natural, inevitable and even desirable aspect of project development. They
believe that being able to adapt to changing requirements at any point in the project
life is better and more realistic than trying to define all requirements early in the project
and invest in control efforts after changes in approach one requisitos.Es tool that
facilitates the process of conceptualization and causality analysis and design,
implementation, monitoring and evaluation of programs and projects from the
perspective of goal orientation.
RECOMENDACIONES
No aplicar la metodología si existe la posibilidad de no cumplir con los plazos
establecidos en la etapa de planeación, ya que además se incrementaría de gran
manera los costos del proyecto.Es recomendable que se consulten diversas fuentes
bibliográficas para lograr un mayor entendimiento del tema.Se recomienda que antes
de elegir una metodología se analicen sus ventajas y desventajas a fin de que sea la
mas adecuada para el proyecto a realizar.
CONCLUSIONES
• En la practica es un poco complicado aplicar “al pie de la letra” los postulados de la
Metodología XP si los involucrados no cuentan con total disponibilidad de tiempo.
• La metodología XP es de uso común desde hace varios años de manera que
adquirir información acerca de ella resulto sencillo, ya que la mayoría de textos
técnicos y de proyectos realizados por otras personas hablan de esta metodología.
GLOSARIO DE TÉRMINOS
• REFACTORIZACION:
Se usa a menudo para describir la modificación del código fuente sin cambiar su
comportamiento, lo que se conoce informalmente por limpiar el código.
LINKOGRAFIAS
• https://sites.google.com/site/xpmetodologia/
• http://es.slideshare.net/EvelingGiselleCruzVs/metodologia-monografia.
• http://desarrollo-de-software-j.blogspot.pe/2012/03/metodologia-xpprogramacion-
extrema.html.
GRACIAS

Más contenido relacionado

La actualidad más candente

Diapositivas xp
Diapositivas xpDiapositivas xp
Modelos concurrentes
Modelos concurrentesModelos concurrentes
Modelos concurrentes
Juan Acevedo Solis
 
Rup disciplinas
Rup disciplinasRup disciplinas
Rup disciplinas
NELSON RODRIGUEZ
 
Modelo Cascada!!
Modelo Cascada!!Modelo Cascada!!
Modelo Cascada!!
Gaby Quezada
 
Metodologia Incremental
Metodologia IncrementalMetodologia Incremental
Metodologia Incremental
JOHNNY SURI MAMANI
 
Modelo incremental
Modelo incrementalModelo incremental
Modelo incremental
Roxny Moreno
 
Metodología xp
Metodología xpMetodología xp
Metodología xp
Piskamen
 
Ejemplo rup
Ejemplo rupEjemplo rup
Ejemplo rup
angel2365
 
metodologia de prototipos
metodologia de prototiposmetodologia de prototipos
metodologia de prototipos
Keiner Valerio
 
Metodologia XP
Metodologia XPMetodologia XP
Metodologia XP
SantiagoFelipeTuquer
 
Proceso unificado
Proceso unificadoProceso unificado
Proceso unificado
Yolanda Uruchima
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
CrisCobol
 
Modelo de desarrollo de software
Modelo de desarrollo de softwareModelo de desarrollo de software
Modelo de desarrollo de software
Yaskelly Yedra
 
Programación Extrema - XP
Programación Extrema - XPProgramación Extrema - XP
Programación Extrema - XP
Natalia Herrera Rey
 
UML
UMLUML
Modelo evolutivo
Modelo evolutivoModelo evolutivo
Modelo evolutivo
Barklyn Lsla
 
Cocomo II
Cocomo IICocomo II
Monografia metodologia xp
Monografia   metodologia xpMonografia   metodologia xp
Monografia metodologia xp
Christian O. Gonzalez Horna
 
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSINGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
Lenin Acosta Mata
 
Metodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudMetodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliud
Eliud Cortes
 

La actualidad más candente (20)

Diapositivas xp
Diapositivas xpDiapositivas xp
Diapositivas xp
 
Modelos concurrentes
Modelos concurrentesModelos concurrentes
Modelos concurrentes
 
Rup disciplinas
Rup disciplinasRup disciplinas
Rup disciplinas
 
Modelo Cascada!!
Modelo Cascada!!Modelo Cascada!!
Modelo Cascada!!
 
Metodologia Incremental
Metodologia IncrementalMetodologia Incremental
Metodologia Incremental
 
Modelo incremental
Modelo incrementalModelo incremental
Modelo incremental
 
Metodología xp
Metodología xpMetodología xp
Metodología xp
 
Ejemplo rup
Ejemplo rupEjemplo rup
Ejemplo rup
 
metodologia de prototipos
metodologia de prototiposmetodologia de prototipos
metodologia de prototipos
 
Metodologia XP
Metodologia XPMetodologia XP
Metodologia XP
 
Proceso unificado
Proceso unificadoProceso unificado
Proceso unificado
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Modelo de desarrollo de software
Modelo de desarrollo de softwareModelo de desarrollo de software
Modelo de desarrollo de software
 
Programación Extrema - XP
Programación Extrema - XPProgramación Extrema - XP
Programación Extrema - XP
 
UML
UMLUML
UML
 
Modelo evolutivo
Modelo evolutivoModelo evolutivo
Modelo evolutivo
 
Cocomo II
Cocomo IICocomo II
Cocomo II
 
Monografia metodologia xp
Monografia   metodologia xpMonografia   metodologia xp
Monografia metodologia xp
 
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSINGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
 
Metodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudMetodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliud
 

Destacado

METODOLOGIAS XP
METODOLOGIAS XPMETODOLOGIAS XP
METODOLOGIAS XP
BiingeSof
 
Xp
XpXp
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
CrisCobol
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
firemas
 
Metodologia de desarrollo software
Metodologia  de desarrollo softwareMetodologia  de desarrollo software
Metodologia de desarrollo software
UNIVERSIDAD LAICA ELOY ALFARO DE MANABI
 
Conceptos básicos en educación
Conceptos básicos en educaciónConceptos básicos en educación
Conceptos básicos en educación
Dianne Gallegos
 
Modelo espiral
Modelo espiralModelo espiral
Modelo espiral
00ordnajela00
 
Cuadro comparativo
Cuadro comparativo Cuadro comparativo
Cuadro comparativo
Seba Briones
 
El Modelo Dra
El Modelo DraEl Modelo Dra
El Modelo Dra
toryneutral
 
ENSEÑANZA DE CONCEPTOS
ENSEÑANZA DE CONCEPTOSENSEÑANZA DE CONCEPTOS
ENSEÑANZA DE CONCEPTOS
INSTITUTO TECNOLÓGICO DE SONORA
 
Concepto de enseñanza
Concepto de enseñanzaConcepto de enseñanza
Concepto de enseñanza
Lupita Palacios
 
Que es la didactica
Que es la didacticaQue es la didactica
Que es la didactica
Thelyn Meedinna
 
La didactica
La didacticaLa didactica
La didactica
jorgeluis1991
 
Pedagogía power point completo
Pedagogía power point completoPedagogía power point completo
Pedagogía power point completo
Evelyn Ovejero
 
Qué es PEDAGOGIA?
Qué es PEDAGOGIA?Qué es PEDAGOGIA?
Qué es PEDAGOGIA?
Lic. Dilma Pucheta
 
Conceptos de Didáctica General
Conceptos de Didáctica GeneralConceptos de Didáctica General
Conceptos de Didáctica General
Monoguito
 

Destacado (16)

METODOLOGIAS XP
METODOLOGIAS XPMETODOLOGIAS XP
METODOLOGIAS XP
 
Xp
XpXp
Xp
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Metodologia de desarrollo software
Metodologia  de desarrollo softwareMetodologia  de desarrollo software
Metodologia de desarrollo software
 
Conceptos básicos en educación
Conceptos básicos en educaciónConceptos básicos en educación
Conceptos básicos en educación
 
Modelo espiral
Modelo espiralModelo espiral
Modelo espiral
 
Cuadro comparativo
Cuadro comparativo Cuadro comparativo
Cuadro comparativo
 
El Modelo Dra
El Modelo DraEl Modelo Dra
El Modelo Dra
 
ENSEÑANZA DE CONCEPTOS
ENSEÑANZA DE CONCEPTOSENSEÑANZA DE CONCEPTOS
ENSEÑANZA DE CONCEPTOS
 
Concepto de enseñanza
Concepto de enseñanzaConcepto de enseñanza
Concepto de enseñanza
 
Que es la didactica
Que es la didacticaQue es la didactica
Que es la didactica
 
La didactica
La didacticaLa didactica
La didactica
 
Pedagogía power point completo
Pedagogía power point completoPedagogía power point completo
Pedagogía power point completo
 
Qué es PEDAGOGIA?
Qué es PEDAGOGIA?Qué es PEDAGOGIA?
Qué es PEDAGOGIA?
 
Conceptos de Didáctica General
Conceptos de Didáctica GeneralConceptos de Didáctica General
Conceptos de Didáctica General
 

Similar a Metodologias xp

Metodologiaxp
MetodologiaxpMetodologiaxp
Metodologiaxp
dorysvalero
 
Monografia de xp
Monografia de xpMonografia de xp
Monografia de xp
luiseodriguez
 
Metodologia xp (tarea msmad)
Metodologia xp (tarea msmad)Metodologia xp (tarea msmad)
Metodologia xp (tarea msmad)
Renata Briseño
 
Metodologia Xp
Metodologia XpMetodologia Xp
Metodologia Xp
ErikaMorelia
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
gmjuan
 
Xp Metodologia
Xp MetodologiaXp Metodologia
Xp Metodologia
FabianEduardoBorjaAr
 
Programación Extrema - Metodología Ágil
Programación Extrema - Metodología Ágil Programación Extrema - Metodología Ágil
Programación Extrema - Metodología Ágil
Universidad Autónoma de Baja California
 
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
 
Luis
LuisLuis
Faces y Sub Faces de la Metodologia XP
Faces y Sub Faces de la Metodologia XPFaces y Sub Faces de la Metodologia XP
Faces y Sub Faces de la Metodologia XP
danielocaa12
 
Metodos agiles 3
Metodos agiles 3Metodos agiles 3
Metodos agiles 3
paotacuba
 
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
 
Las metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el PerúLas metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el Perú
Pagina web Peru - F5mas
 
Sesión 03-métodos-ágiles-del-desarrollo-de-software
Sesión 03-métodos-ágiles-del-desarrollo-de-softwareSesión 03-métodos-ágiles-del-desarrollo-de-software
Sesión 03-métodos-ágiles-del-desarrollo-de-software
R̶a̶m̶s̶é̶s̶ M̶a̶r̶t̶í̶n̶e̶z̶ ̶O̶r̶t̶i̶z̶
 
Programacion extrema
Programacion extremaProgramacion extrema
Programacion extrema
Adrian Espinosa
 
Especial ingenieria de software
Especial ingenieria de softwareEspecial ingenieria de software
Especial ingenieria de software
alejandor reyes
 
Especial ingenieria de software
Especial ingenieria de softwareEspecial ingenieria de software
Especial ingenieria de software
alejandor reyes
 
Public3
Public3Public3
xp
xpxp
Programación extrema
Programación extremaProgramación extrema
Programación extrema
chris morales
 

Similar a Metodologias xp (20)

Metodologiaxp
MetodologiaxpMetodologiaxp
Metodologiaxp
 
Monografia de xp
Monografia de xpMonografia de xp
Monografia de xp
 
Metodologia xp (tarea msmad)
Metodologia xp (tarea msmad)Metodologia xp (tarea msmad)
Metodologia xp (tarea msmad)
 
Metodologia Xp
Metodologia XpMetodologia Xp
Metodologia Xp
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Xp Metodologia
Xp MetodologiaXp Metodologia
Xp Metodologia
 
Programación Extrema - Metodología Ágil
Programación Extrema - Metodología Ágil Programación Extrema - Metodología Ágil
Programación Extrema - Metodología Ágil
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyecto
 
Luis
LuisLuis
Luis
 
Faces y Sub Faces de la Metodologia XP
Faces y Sub Faces de la Metodologia XPFaces y Sub Faces de la Metodologia XP
Faces y Sub Faces de la Metodologia XP
 
Metodos agiles 3
Metodos agiles 3Metodos agiles 3
Metodos agiles 3
 
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
 
Las metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el PerúLas metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el Perú
 
Sesión 03-métodos-ágiles-del-desarrollo-de-software
Sesión 03-métodos-ágiles-del-desarrollo-de-softwareSesión 03-métodos-ágiles-del-desarrollo-de-software
Sesión 03-métodos-ágiles-del-desarrollo-de-software
 
Programacion extrema
Programacion extremaProgramacion extrema
Programacion extrema
 
Especial ingenieria de software
Especial ingenieria de softwareEspecial ingenieria de software
Especial ingenieria de software
 
Especial ingenieria de software
Especial ingenieria de softwareEspecial ingenieria de software
Especial ingenieria de software
 
Public3
Public3Public3
Public3
 
xp
xpxp
xp
 
Programación extrema
Programación extremaProgramación extrema
Programación extrema
 

Más de ElvisAR

Introducción a GNU/Linux
Introducción a GNU/LinuxIntroducción a GNU/Linux
Introducción a GNU/Linux
ElvisAR
 
Cocomo
CocomoCocomo
Cocomo
ElvisAR
 
Diagrama de despliegue
Diagrama de despliegueDiagrama de despliegue
Diagrama de despliegue
ElvisAR
 
Diagrama de actividades
Diagrama de actividadesDiagrama de actividades
Diagrama de actividades
ElvisAR
 
Diagrama de actividades
Diagrama de actividadesDiagrama de actividades
Diagrama de actividades
ElvisAR
 
Metodologias rup
Metodologias rupMetodologias rup
Metodologias rup
ElvisAR
 
Clasificación de las metodologías de desarrollo de software
Clasificación de las metodologías de desarrollo de softwareClasificación de las metodologías de desarrollo de software
Clasificación de las metodologías de desarrollo de software
ElvisAR
 

Más de ElvisAR (7)

Introducción a GNU/Linux
Introducción a GNU/LinuxIntroducción a GNU/Linux
Introducción a GNU/Linux
 
Cocomo
CocomoCocomo
Cocomo
 
Diagrama de despliegue
Diagrama de despliegueDiagrama de despliegue
Diagrama de despliegue
 
Diagrama de actividades
Diagrama de actividadesDiagrama de actividades
Diagrama de actividades
 
Diagrama de actividades
Diagrama de actividadesDiagrama de actividades
Diagrama de actividades
 
Metodologias rup
Metodologias rupMetodologias rup
Metodologias rup
 
Clasificación de las metodologías de desarrollo de software
Clasificación de las metodologías de desarrollo de softwareClasificación de las metodologías de desarrollo de software
Clasificación de las metodologías de desarrollo de software
 

Último

Casos de éxito en Negocios online: Estrategias WPO que funcionan - Presentac...
Casos de éxito en Negocios online: Estrategias WPO que funcionan - Presentac...Casos de éxito en Negocios online: Estrategias WPO que funcionan - Presentac...
Casos de éxito en Negocios online: Estrategias WPO que funcionan - Presentac...
Javier Martinez Seco
 
IF y SWITCH: Claves para una Lógica de Programación
IF y SWITCH: Claves para una Lógica de ProgramaciónIF y SWITCH: Claves para una Lógica de Programación
IF y SWITCH: Claves para una Lógica de Programación
bvaldivieso014
 
PLUGIN (Mary Cielo Huañec Paz) .pdf
PLUGIN (Mary Cielo Huañec Paz)      .pdfPLUGIN (Mary Cielo Huañec Paz)      .pdf
PLUGIN (Mary Cielo Huañec Paz) .pdf
MaryCieloHuaecPaz
 
software para ver la descripcion de nuestra computadora
software para ver la descripcion de nuestra computadorasoftware para ver la descripcion de nuestra computadora
software para ver la descripcion de nuestra computadora
ChristiamGiraldoAsce
 
DuckDuckGo (Motor de Busqueda) - JRM - APSTI I A
DuckDuckGo (Motor de Busqueda) -  JRM - APSTI I ADuckDuckGo (Motor de Busqueda) -  JRM - APSTI I A
DuckDuckGo (Motor de Busqueda) - JRM - APSTI I A
DarnotOcxalFlorianoP
 
Aplicación de las sentencias de control en telecomunicaciones
Aplicación de las sentencias de control en telecomunicacionesAplicación de las sentencias de control en telecomunicaciones
Aplicación de las sentencias de control en telecomunicaciones
ambuludimateo2
 
Trabajo programacion primer semestre Telecomunicaciones
Trabajo programacion primer semestre TelecomunicacionesTrabajo programacion primer semestre Telecomunicaciones
Trabajo programacion primer semestre Telecomunicaciones
paulbosq
 
APLICACIONES EN INTERNET-GOOGLE.20240pdf
APLICACIONES EN INTERNET-GOOGLE.20240pdfAPLICACIONES EN INTERNET-GOOGLE.20240pdf
APLICACIONES EN INTERNET-GOOGLE.20240pdf
jordanovillacorta09
 

Último (8)

Casos de éxito en Negocios online: Estrategias WPO que funcionan - Presentac...
Casos de éxito en Negocios online: Estrategias WPO que funcionan - Presentac...Casos de éxito en Negocios online: Estrategias WPO que funcionan - Presentac...
Casos de éxito en Negocios online: Estrategias WPO que funcionan - Presentac...
 
IF y SWITCH: Claves para una Lógica de Programación
IF y SWITCH: Claves para una Lógica de ProgramaciónIF y SWITCH: Claves para una Lógica de Programación
IF y SWITCH: Claves para una Lógica de Programación
 
PLUGIN (Mary Cielo Huañec Paz) .pdf
PLUGIN (Mary Cielo Huañec Paz)      .pdfPLUGIN (Mary Cielo Huañec Paz)      .pdf
PLUGIN (Mary Cielo Huañec Paz) .pdf
 
software para ver la descripcion de nuestra computadora
software para ver la descripcion de nuestra computadorasoftware para ver la descripcion de nuestra computadora
software para ver la descripcion de nuestra computadora
 
DuckDuckGo (Motor de Busqueda) - JRM - APSTI I A
DuckDuckGo (Motor de Busqueda) -  JRM - APSTI I ADuckDuckGo (Motor de Busqueda) -  JRM - APSTI I A
DuckDuckGo (Motor de Busqueda) - JRM - APSTI I A
 
Aplicación de las sentencias de control en telecomunicaciones
Aplicación de las sentencias de control en telecomunicacionesAplicación de las sentencias de control en telecomunicaciones
Aplicación de las sentencias de control en telecomunicaciones
 
Trabajo programacion primer semestre Telecomunicaciones
Trabajo programacion primer semestre TelecomunicacionesTrabajo programacion primer semestre Telecomunicaciones
Trabajo programacion primer semestre Telecomunicaciones
 
APLICACIONES EN INTERNET-GOOGLE.20240pdf
APLICACIONES EN INTERNET-GOOGLE.20240pdfAPLICACIONES EN INTERNET-GOOGLE.20240pdf
APLICACIONES EN INTERNET-GOOGLE.20240pdf
 

Metodologias xp

  • 2. Definición: Es una metodología de desarrollo de la ingeniería de software formulada por Kent Beck, autor del primer libro sobre la materia, Extreme Programming Explained: Embrace Change (1999). Es el más destacado de los procesos ágiles de desarrollo de software. Al igual que éstos, la programación extrema se diferencia de las metodologías tradicionales principalmente en que pone más énfasis en la adaptabilidad que en la previsibilidad.
  • 3. CARACTERÍSTICAS 1. Desarrollo interactivo e incremental: Pequeñas mejoras, unas tras otras. 2. Pruebas Unitarias Continuas: frecuentemente repetidas y automatizadas, incluyendo pruebas de regresión. Se aconseja escribir el código de la prueba antes de la codificación. Véase, por ejemplo, las herramientas de prueba JUnit orientada a Java, DUnit orientada a Delphi, NUnit para la plataforma.NET o PHPUnit para PHP. Estas tres últimas inspiradas en JUnit, la cual, a su vez, se insipiró en SUnit, el primer framework orientado a realizar tests, realizado para el lenguaje de programación Smalltalk.
  • 4. 3. Programación en Pareja: se recomienda que las tareas de desarrollo se lleven a cabo por dos personas en un mismo puesto. La mayor calidad del código escrito de esta manera -el código es revisado y discutido mientras se escribe- es más importante que la posible pérdida de productividad inmediata. 4. Frecuente integración del equipo de programación con el cliente o usuario: Se recomienda que un representante del cliente trabaje junto al equipo de desarrollo. 5. Corrección de todos los errores: Antes de añadir nueva funcionalidad. Hacer entregas frecuentes.
  • 5. 6. Refactorización del código: Es decir, reescribir ciertas partes del código para aumentar su legibilidad y mantenibilidad pero sin modificar su comportamiento. Las pruebas han de garantizar que en la refactorización no se ha introducido ningún fallo. 7. Propiedad del código compartida: En vez de dividir la responsabilidad en el desarrollo de cada módulo en grupos de trabajo distintos, este método promueve el que todo el personal pueda corregir y extender cualquier parte del proyecto. Las frecuentes pruebas de regresión garantizan que los posibles errores serán detectados. 8. Simplicidad en el código: Es la mejor manera de que las cosas funcionen. Cuando todo funcione se podrá añadir funcionalidad si es necesario. La programación extrema apuesta que es más sencillo hacer algo simple y tener un poco de trabajo extra para cambiarlo si se requiere, que realizar algo complicado y quizás nunca utilizarlo.
  • 6.
  • 7. CICLO DE DESARROLLO 1. Exploración: En esta fase, los clientes plantean a grandes rasgos las historias de usuario que son de interés para la primera entrega del producto. Al mismo tiempo el equipo de desarrollo se familiariza con las herramientas, tecnologías y prácticas que se utilizarán en el proyecto. Se prueba la tecnología y se exploran las posibilidades de la arquitectura del sistema construyendo un prototipo. La fase de exploración toma de pocas semanas a pocos meses, dependiendo del tamaño y familiaridad que tengan los programadores con la tecnología.
  • 8. 2. Planeacion de entrega (RELEASE): En esta fase el cliente establece la prioridad de cada historia de usuario, y correspondientemente, los programadores realizan una estimación del esfuerzo necesario de cada una de ellas. Se toman acuerdos sobre el contenido de la primera entrega y se determina un cronograma en conjunto con el cliente. Una entrega debería obtenerse en no más de tres meses. Esta fase dura unos pocos días. Las estimaciones de esfuerzo asociado a la implementación de las historias la establecen los programadores utilizando como medida el punto. Un punto, equivale a una semana ideal de programación. Las historias generalmente valen de 1 a 3 puntos. Por otra parte, el equipo de desarrollo mantiene un registro de la “velocidad” de desarrollo, establecida en puntos por iteración, basándose principalmente en la suma de puntos correspondientes a las historias de usuario que fueron terminadas en la última iteración.
  • 9. 3. Iteraciones: Esta fase incluye varias iteraciones sobre el sistema antes de ser entregado. El Plan de Entrega está compuesto por iteraciones de no más de tres semanas. En la primera iteración se puede intentar establecer una arquitectura del sistema que pueda ser utilizada durante el resto del proyecto. Esto se logra escogiendo las historias que fuercen la creación de esta arquitectura, sin embargo, esto no siempre es posible ya que es el cliente quien decide qué historias se implementarán en cada iteración (para maximizar el valor de negocio). Al final de la última iteración el sistema estará listo para entrar en producción. Los elementos que deben tomarse en cuenta durante la elaboración del Plan de la Iteración son: historias de usuario no abordadas, velocidad del proyecto, pruebas de aceptación no superadas en la iteración anterior y tareas no terminadas en la iteración anterior.
  • 10. 4. Producción: La fase de producción requiere de pruebas adicionales y revisiones de rendimiento antes de que el sistema sea trasladado al entorno del cliente. Al mismo tiempo, se deben tomar decisiones sobre la inclusión de nuevas características a la versión actual, debido a cambios durante esta fase. Es posible que se rebaje el tiempo que toma cada iteración, de tres a una semana. Las ideas que han sido propuestas y las sugerencias son documentadas para su posterior implementación (por ejemplo, durante la fase de mantenimiento).
  • 11. 5. Mantenimiento: Mientras la primera versión se encuentra en producción, el proyecto XP debe mantener el sistema en funcionamiento al mismo tiempo que desarrolla nuevas iteraciones. Para realizar esto se requiere de tareas de soporte para el cliente. De esta forma, la velocidad de desarrollo puede bajar después de la puesta del sistema en producción. La fase de mantenimiento puede requerir nuevo personal dentro del equipo y cambios en su estructura.
  • 12. 6. Muerte de Proyecto: Es cuando el cliente no tiene más historias para ser incluidas en el sistema. Esto requiere que se satisfagan las necesidades del cliente en otros aspectos como rendimiento y confiabilidad del sistema. Se genera la documentación final del sistema y no se realizan más cambios en la arquitectura. La muerte del proyecto también ocurre cuando el sistema no genera los beneficios esperados por el cliente o cuando no hay presupuesto para mantenerlo.
  • 14. RESUMEN Es una metodología de desarrollo de la ingeniería de software formulada por Kent Beck, autor del primer libro sobre la materia, Extreme Programming Explained: Embrace Change (1999). Es el más destacado de los procesos ágiles de desarrollo de software. Al igual que éstos, la programación extrema se diferencia de las metodologías tradicionales principalmente en que pone más énfasis en la adaptabilidad que en la previsibilidad. Los defensores de la XP consideran que los cambios de requisitos sobre la marcha son un aspecto natural, inevitable e incluso deseable del desarrollo de proyectos. Creen que ser capaz de adaptarse a los cambios de requisitos en cualquier punto de la vida del proyecto es una aproximación mejor y más realista que intentar definir todos los requisitos al comienzo del proyecto e invertir esfuerzos después en controlar los cambios en los requisitos. Es una herramienta que facilita el proceso de conceptualización y análisis de causalidades, así como el diseño, ejecución, monitoreo y evaluación de programas y proyectos desde una perspectiva de orientación por objetivos.
  • 15. SUMMARY It is a development methodology of software engineering made by Kent Beck, author of the first book on the subject, Extreme Programming Explained: Embrace Change (1999). It is the highlight of agile software development processes. Like them, extreme programming differs from traditional methodologies mainly in putting more emphasis on adaptability in predictability. Proponents of XP consider changing requirements on the fly is a natural, inevitable and even desirable aspect of project development. They believe that being able to adapt to changing requirements at any point in the project life is better and more realistic than trying to define all requirements early in the project and invest in control efforts after changes in approach one requisitos.Es tool that facilitates the process of conceptualization and causality analysis and design, implementation, monitoring and evaluation of programs and projects from the perspective of goal orientation.
  • 16. RECOMENDACIONES No aplicar la metodología si existe la posibilidad de no cumplir con los plazos establecidos en la etapa de planeación, ya que además se incrementaría de gran manera los costos del proyecto.Es recomendable que se consulten diversas fuentes bibliográficas para lograr un mayor entendimiento del tema.Se recomienda que antes de elegir una metodología se analicen sus ventajas y desventajas a fin de que sea la mas adecuada para el proyecto a realizar.
  • 17. CONCLUSIONES • En la practica es un poco complicado aplicar “al pie de la letra” los postulados de la Metodología XP si los involucrados no cuentan con total disponibilidad de tiempo. • La metodología XP es de uso común desde hace varios años de manera que adquirir información acerca de ella resulto sencillo, ya que la mayoría de textos técnicos y de proyectos realizados por otras personas hablan de esta metodología.
  • 18. GLOSARIO DE TÉRMINOS • REFACTORIZACION: Se usa a menudo para describir la modificación del código fuente sin cambiar su comportamiento, lo que se conoce informalmente por limpiar el código.
  • 19. LINKOGRAFIAS • https://sites.google.com/site/xpmetodologia/ • http://es.slideshare.net/EvelingGiselleCruzVs/metodologia-monografia. • http://desarrollo-de-software-j.blogspot.pe/2012/03/metodologia-xpprogramacion- extrema.html.