SlideShare uma empresa Scribd logo
1 de 5
La programación extrema, o Extreme Programming (XP), es una metodología de 
desarrollo ágil, una de las más exitosas en tiempo reciente. Su autor principal es 
Kent Beck, quien eligió algunas características de otras metodologías y las 
relacionó de forma que cada una complementara a la otra. 
Así, la XP se puede definir como un conjunto de pasos de diversas metodologías, 
acopladas de manera que sean pasos flexibles a seguir utilizadas con el uso 
común, para realizar un desarrollo más agradable y sencillo. 
Esta metodología tiene como base la simplicidad y como objetivo principal la 
satisfacción del cliente; para lograrlo se deben tomar en cuenta cuatro valores 
fundamentales: 
Objetivos de la programación extrema 
El objetivo principal de la XP es la satisfacción del cliente. Se le trata de dar al 
cliente lo que quiere y cuando quiere. Por tanto, se debe responder rápidamente a 
las necesidades del cliente, aunque realice cambios en fases avanzadas del 
proyecto. Como metodología Ágil que es, se pueden producir modificaciones de 
los requisitos del proyecto a lo largo de su desarrollo, sin que esto produzca 
un buen dolor de cabeza. 
Otro de los objetivos es el trabajo en grupo. Tanto los jefes del proyecto, clientes y 
desarrolladores forman parte del equipo y deben estar involucrados en el 
desarrollo. 
Valores de la programación extrema 
Para garantizar el éxito de un proyecto, los autores de XP han considerado como 
fundamentales cuatro valores: 
 Comunicación. Muy importante. La XP ayuda mediante sus prácticas a la 
comunicación entre los integrantes del grupo de trabajo: jefes de proyecto, 
clientes y desarrolladores. 
 Sencillez. Los programas deben ser los más sencillos posibles y tener la 
funcionalidad necesaria que se indican en los requisitos. No hay que añadir 
algo que no se necesitehoy. Si se necesita añadir más 
funcionalidad mañana pues ya se hará entonces. 
 Retroalimentación. Las pruebas que se le realizan al software nos mantiene 
informados del grado de fiabilidad del sistema. 
 Valentía. Asumir retos, ser valientes ante los problemas y afrontarlos. El 
intentar mejorar algo que ya funciona. Aunque gracias a las pruebas unitarias 
no existe el riesgo de ‘meter la pata’.
1ª Fase: Planificación del proyecto. 
....... .......Historias de usuario: Las historias de usuario tienen la misma finalidad 
que los casos de uso pero con algunas diferencias: Constan de 3 ó 4 líneas 
escritas por el cliente en un lenguaje no técnico sin hacer mucho hincapié en los 
detalles; no se debe hablar ni de posibles algoritmos para su implementación ni de 
diseños de base de datos adecuados, etc. Son usadas para estimar tiempos de 
desarrollo de la parte de la aplicación que describen. 
.......Release planning*: . " es una planificación donde los desarrolladores y 
clientes establecen los tiempos de implementación ideales de las historias de 
usuario, la prioridad con la que serán implementadas y las historias que serán 
implementadas en cada versión del programa. 
....... Iteraciones Todo proyecto que siga la metodología X.P. se ha de dividir en 
iteraciones de aproximadamente 3 semanas de duración. Al comienzo de cada 
iteración los clientes deben seleccionar las historias de usuario definidas en el 
"Release planning" que serán implementadas. También se seleccionan las 
historias de usuario que no pasaron el test de aceptación que se realizó al 
terminar la iteración anterior. Estas historias de usuario son divididas en tareas de 
entre 1 y 3 días de duración que se asignarán a los programadores. 
....... Velocidad del proyecto: La velocidad del proyecto es una medida que 
representa la rapidez con la que se desarrolla el proyecto; estimarla es muy 
sencillo, basta con contar el número de historias de usuario que se pueden 
implementar en una iteración; de esta forma, se sabrá el cupo de historias que se 
pueden desarrollar en las distintas iteraciones. 
....... Programación en pareja: La metodología X.P. aconseja la programación en 
parejas pues incrementa la productividad y la calidad del software desarrollado. El 
trabajo en pareja involucra a dos programadores trabajando en el mismo equipo; 
mientras uno codifica haciendo hincapié en la calidad de la función o método que 
está implementando, el otro analiza si ese método o función es adecuado y está 
bien diseñado. De esta forma se consigue un código y diseño con gran calidad. 
....... Reuniones diarias. Es necesario que los desarrolladores se reúnan 
diariamente y expongan sus problemas, soluciones e ideas de forma conjunta. Las 
reuniones tienen que ser fluidas y todo el mundo tiene que tener voz y voto. 
2ª Fase: Diseño. 
....... Diseños simples: La metodología X.P sugiere que hay que conseguir 
diseños simples y sencillos. Hay que procurar hacerlo todo lo menos complicado 
posible para conseguir un diseño fácilmente entendible e impleméntable que a la 
larga costará menos tiempo y esfuerzo desarrollar. 
....... Glosarios de términos: Usar glosarios de términos y un correcta
especificación de los nombres de métodos y clases ayudará a comprender el 
diseño y facilitará sus posteriores ampliaciones y la reutilización del código. 
....... Riesgos: Si surgen problemas potenciales durante el diseño, X.P sugiere 
utilizar una pareja de desarrolladores para que investiguen y reduzcan al máximo 
el riesgo que supone ese problema. 
....... Funcionalidad extra: Nunca se debe añadir funcionalidad extra al programa 
aunque se piense que en un futuro será utilizada. Sólo el 10% de la misma es 
utilizada, lo que implica que el desarrollo de funcionalidad extra es un desperdicio 
de tiempo y recursos. 
....... Refactorizar. Refactorizar es mejorar y modificar la estructura y codificación 
de códigos ya creados sin alterar su funcionalidad. Refactorizar supone revisar de 
nuevo estos códigos para procurar optimizar su funcionamiento. Es muy común 
rehusar códigos ya creados que contienen funcionalidades que no serán usadas y 
diseños obsoletos. Esto es un error porque puede generar código completamente 
inestable y muy mal diseñado; por este motivo, es necesario refactorizar cuando 
se va a utilizar código ya creado. 
.......Tarjetas C.R.C. El uso de las tarjetas C.R.C (Class, Responsabilities and 
Collaboration) permiten al programador centrarse y apreciar el desarrollo orientado 
a objetos olvidándose de los malos hábitos de la programación procedural clásica. 
.......Las tarjetas C.R.C representan objetos; la clase a la que pertenece el objeto 
se puede escribir en la parte de arriba de la tarjeta, en una columna a la izquierda 
se pueden escribir las responsabilidades u objetivos que debe cumplir el objeto y a 
la derecha, las clases que colaboran con cada responsabilidad. 
3ª Fase: Codificación. 
.......Como ya se dijo en la introducción, el cliente es una parte más del equipo de 
desarrollo; su presencia es indispensable en las distintas fases de X.P. A la hora 
de codificar una historia de usuario su presencia es aún más necesaria. No 
olvidemos que los clientes son los que crean las historias de usuario y negocian 
los tiempos en los que serán implementadas. Antes del desarrollo de cada historia 
de usuario el cliente debe especificar detalladamente lo que ésta hará y también 
tendrá que estar presente cuando se realicen los test que verifiquen que la historia 
implementada cumple la funcionalidad especificada. 
.......La codificación debe hacerse ateniendo a estándares de codificación ya 
creados. Programar bajo estándares mantiene el código consistente y facilita su 
comprensión y escalabilidad. 
.......Crear test que prueben el funcionamiento de los distintos códigos 
implementados nos ayudará a desarrollar dicho código. Crear estos test antes nos 
ayuda a saber qué es exactamente lo que tiene que hacer el código a implementar 
y sabremos que una vez implementado pasará dichos test sin problemas ya que 
dicho código ha sido diseñado para ese fin. Se puede dividir la funcionalidad que 
debe cumplir una tarea a programar en pequeñas unidades, de esta forma se
crearán primero los test para cada unidad y a continuación se desarrollará dicha 
unidad, así poco a poco conseguiremos un desarrollo que cumpla todos los 
requisitos especificados. 
.......Como ya se comentó anteriormente, X.P opta por la programación en pareja 
ya que permite un código más eficiente y con una gran calidad. 
.......X.P sugiere un modelo de trabajo usando repositorios de código dónde las 
parejas de programadores publican cada pocas horas sus códigos implementados 
y corregidos junto a los test que deben pasar. De esta forma el resto de 
programadores que necesiten códigos ajenos trabajarán siempre con las últimas 
versiones. Para mantener un código consistente, publicar un código en un 
repositorio es una acción exclusiva para cada pareja de programadores. 
.......X.P también propone un modelo de desarrollo colectivo en el que todos los 
programadores están implicados en todas las tareas; cualquiera puede modificar o 
ampliar una clase o método de otro programador si es necesario y subirla al 
repositorio de código. El permitir al resto de los programadores modificar códigos 
que no son suyos no supone ningún riesgo ya que para que un código pueda ser 
publicado en el repositorio tiene que pasar los test de funcionamiento definidos 
para el mismo. 
.......La optimización del código siempre se debe dejar para el final. Hay que hacer 
que funcione y que sea correcto, más tarde se puede optimizar. 
.......X.P afirma que la mayoría de los proyectos que necesiten más tiempo extra 
que el planificado para ser finalizados no podrán ser terminados a tiempo se haga 
lo que se haga, aunque se añadan más desarrolladores y se incrementen los 
recursos. La solución que plantea X.P es realizar un nuevo "Release plan" para 
concretar los nuevos tiempos de publicación y de velocidad del proyecto. 
.......A la hora de codificar no seguimos la regla de X.P que aconseja crear test de 
funcionamiento con entornos de desarrollo antes de programar. Nuestros test los 
obtendremos de la especificación de requisitos ya que en ella se especifican las 
pruebas que deben pasar las distintas funcionalidades del programa, procurando 
codificar pensando en las pruebas que debe pasar cada funcionalidad. 
4ª Fase: Pruebas. 
.......Uno de los pilares de la metodología X.P es el uso de test para comprobar el 
funcionamiento de los códigos que vayamos implementando. 
.......El uso de los test en X.P es el siguiente: 
.......Se deben crear las aplicaciones que realizarán los test con un entorno de 
desarrollo específico para test. 
.......Hay que someter a tests las distintas clases del sistema omitiendo los 
métodos más triviales. 
.......Se deben crear los test que pasarán los códigos antes de implementarlos; en 
el apartado anterior se explicó la importancia de crear antes los test que el código. 
.......Un punto importante es crear test que no tengan ninguna dependencia del
código que en un futuro evaluará. Hay que crear los test abstrayéndose del futuro 
código, de esta forma aseguraremos la independencia del test respecto al código 
que evalúa. 
.......Como se comentó anteriormente los distintos test se deben subir al repositorio 
de código acompañados del código que verifican. Ningún código puede ser 
publicado en el repositorio sin que haya pasado su test de funcionamiento, de esta 
forma, aseguramos el uso colectivo del código (explicado en el apartado anterior). 
.......El uso de los test es adecuado para observar la refactorización. Los test 
permiten verificar que un cambio en la estructura de un código no tiene porqué 
cambiar su funcionamiento. 
.......Test de aceptación. Los test mencionados anteriormente sirven para evaluar 
las distintas tareas en las que ha sido dividida una historia de usuario. Para 
asegurar el funcionamiento final de una determinada historia de usuario se deben 
crear "Test de aceptación"; estos test son creados y usados por los clientes para 
comprobar que las distintas historias de usuario cumplen su cometido. 
.......Al ser las distintas funcionalidades de nuestra aplicación no demasiado 
extensas, no se harán test que analicen partes de las mismas, sino que las 
pruebas se realizarán para las funcionalidades generales que debe cumplir el 
programa especificado en la descripción de requisitos

Mais conteúdo relacionado

Mais procurados

Metodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudMetodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudEliud Cortes
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xpgmjuan
 
Extreme Programming-Fases
Extreme Programming-FasesExtreme Programming-Fases
Extreme Programming-FasesBelghy Chisag
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programmingjoaquin_win
 
Metodologias xp
Metodologias xpMetodologias xp
Metodologias xpElvisAR
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xpfiremas
 
las fases del proceso de programacion
las fases del proceso de programacionlas fases del proceso de programacion
las fases del proceso de programaciongabyota_123
 
Pasos para la solución de un problema por computador
Pasos para la solución de un problema por computadorPasos para la solución de un problema por computador
Pasos para la solución de un problema por computadorgisseparrav
 
Metodologia xp (tarea msmad)
Metodologia xp (tarea msmad)Metodologia xp (tarea msmad)
Metodologia xp (tarea msmad)Renata Briseño
 
Monografia metodologia agil xp oficial
Monografia metodologia agil xp oficialMonografia metodologia agil xp oficial
Monografia metodologia agil xp oficialHarry G Portales
 
Metodología para la solución de un problema
Metodología para la solución de un problemaMetodología para la solución de un problema
Metodología para la solución de un problemaIEO Santo Tomás
 
Programación extrema xp
Programación extrema xpProgramación extrema xp
Programación extrema xpJose Luis Dorao
 
Monografia Metodologia Agil XP
Monografia Metodologia Agil XPMonografia Metodologia Agil XP
Monografia Metodologia Agil XPJorw Yengle
 
Presentación literal 5
Presentación literal 5Presentación literal 5
Presentación literal 5Alex Cayo
 

Mais procurados (20)

Metodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudMetodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliud
 
Tema vi
Tema viTema vi
Tema vi
 
Tema vi
Tema viTema vi
Tema vi
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Extreme Programming-Fases
Extreme Programming-FasesExtreme Programming-Fases
Extreme Programming-Fases
 
Monografia metodologia xp
Monografia   metodologia xpMonografia   metodologia xp
Monografia metodologia xp
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Metodologias xp
Metodologias xpMetodologias xp
Metodologias xp
 
Metodologia Xp
Metodologia XpMetodologia Xp
Metodologia Xp
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
las fases del proceso de programacion
las fases del proceso de programacionlas fases del proceso de programacion
las fases del proceso de programacion
 
Pasos para la solución de un problema por computador
Pasos para la solución de un problema por computadorPasos para la solución de un problema por computador
Pasos para la solución de un problema por computador
 
Metodologia xp (tarea msmad)
Metodologia xp (tarea msmad)Metodologia xp (tarea msmad)
Metodologia xp (tarea msmad)
 
Monografia metodologia agil xp oficial
Monografia metodologia agil xp oficialMonografia metodologia agil xp oficial
Monografia metodologia agil xp oficial
 
Las fases de la programación
Las fases de la programaciónLas fases de la programación
Las fases de la programación
 
Metodología para la solución de un problema
Metodología para la solución de un problemaMetodología para la solución de un problema
Metodología para la solución de un problema
 
Programación extrema xp
Programación extrema xpProgramación extrema xp
Programación extrema xp
 
Monografia Metodologia Agil XP
Monografia Metodologia Agil XPMonografia Metodologia Agil XP
Monografia Metodologia Agil XP
 
Tarea5
Tarea5Tarea5
Tarea5
 
Presentación literal 5
Presentación literal 5Presentación literal 5
Presentación literal 5
 

Destaque

PLOA 2013 - A Contribuição Previdenciária dos Servidores Públicos Inativos e ...
PLOA 2013 - A Contribuição Previdenciária dos Servidores Públicos Inativos e ...PLOA 2013 - A Contribuição Previdenciária dos Servidores Públicos Inativos e ...
PLOA 2013 - A Contribuição Previdenciária dos Servidores Públicos Inativos e ...Sylvio Micelli
 
Ciberbullying jp emanuel
Ciberbullying jp emanuelCiberbullying jp emanuel
Ciberbullying jp emanuelinformatica666
 
Mapa quimica
Mapa quimicaMapa quimica
Mapa quimicaJenni Rjs
 
Las mejores semillas
Las mejores semillasLas mejores semillas
Las mejores semillascpsanjua
 
Gymkhana derechosniño1
Gymkhana derechosniño1Gymkhana derechosniño1
Gymkhana derechosniño1javiuclm4
 
Introd sala de aula interativa por fabio queiroz
Introd sala de aula interativa   por fabio queirozIntrod sala de aula interativa   por fabio queiroz
Introd sala de aula interativa por fabio queirozbaixatextos
 
Los impuestos en un blogger
Los impuestos en un bloggerLos impuestos en un blogger
Los impuestos en un bloggerjobito1
 
LOS MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (PARTE 4)
LOS MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (PARTE 4)LOS MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (PARTE 4)
LOS MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (PARTE 4)JORGE ALVITES
 
EL LIBRO MAGICO
EL LIBRO MAGICOEL LIBRO MAGICO
EL LIBRO MAGICOinsfatima
 
MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (Parte 3)
MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (Parte 3)MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (Parte 3)
MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (Parte 3)JORGE ALVITES
 
Presentación: Estudio Técnico Reestructuración ESE Municipio de Cali
Presentación: Estudio Técnico Reestructuración ESE Municipio de CaliPresentación: Estudio Técnico Reestructuración ESE Municipio de Cali
Presentación: Estudio Técnico Reestructuración ESE Municipio de CaliCedetes Univalle
 
La importancia de_la_definicion
La importancia de_la_definicionLa importancia de_la_definicion
La importancia de_la_definicionMaria Guevara
 
Boletim informativo novembro 2013
Boletim informativo   novembro 2013Boletim informativo   novembro 2013
Boletim informativo novembro 2013fespiritacrista
 
Apresentação de resultados 3 t12 final pt
Apresentação de resultados 3 t12 final ptApresentação de resultados 3 t12 final pt
Apresentação de resultados 3 t12 final ptvigor_ri
 

Destaque (20)

PLOA 2013 - A Contribuição Previdenciária dos Servidores Públicos Inativos e ...
PLOA 2013 - A Contribuição Previdenciária dos Servidores Públicos Inativos e ...PLOA 2013 - A Contribuição Previdenciária dos Servidores Públicos Inativos e ...
PLOA 2013 - A Contribuição Previdenciária dos Servidores Públicos Inativos e ...
 
Xirgi 99
Xirgi 99Xirgi 99
Xirgi 99
 
Ciberbullying jp emanuel
Ciberbullying jp emanuelCiberbullying jp emanuel
Ciberbullying jp emanuel
 
Mapa quimica
Mapa quimicaMapa quimica
Mapa quimica
 
Las mejores semillas
Las mejores semillasLas mejores semillas
Las mejores semillas
 
Gymkhana derechosniño1
Gymkhana derechosniño1Gymkhana derechosniño1
Gymkhana derechosniño1
 
Introd sala de aula interativa por fabio queiroz
Introd sala de aula interativa   por fabio queirozIntrod sala de aula interativa   por fabio queiroz
Introd sala de aula interativa por fabio queiroz
 
Los impuestos en un blogger
Los impuestos en un bloggerLos impuestos en un blogger
Los impuestos en un blogger
 
Errores de excel
Errores de excelErrores de excel
Errores de excel
 
LOS MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (PARTE 4)
LOS MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (PARTE 4)LOS MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (PARTE 4)
LOS MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (PARTE 4)
 
EL LIBRO MAGICO
EL LIBRO MAGICOEL LIBRO MAGICO
EL LIBRO MAGICO
 
MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (Parte 3)
MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (Parte 3)MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (Parte 3)
MILAGROS DE JESUS N 9 'LA RESURRECCION DE LAZARO" (Parte 3)
 
Alfonso xii
Alfonso xiiAlfonso xii
Alfonso xii
 
Programação Robótica com RobotExpert
Programação Robótica com RobotExpertProgramação Robótica com RobotExpert
Programação Robótica com RobotExpert
 
Presentación: Estudio Técnico Reestructuración ESE Municipio de Cali
Presentación: Estudio Técnico Reestructuración ESE Municipio de CaliPresentación: Estudio Técnico Reestructuración ESE Municipio de Cali
Presentación: Estudio Técnico Reestructuración ESE Municipio de Cali
 
La importancia de_la_definicion
La importancia de_la_definicionLa importancia de_la_definicion
La importancia de_la_definicion
 
Mbdr
MbdrMbdr
Mbdr
 
Boletim informativo novembro 2013
Boletim informativo   novembro 2013Boletim informativo   novembro 2013
Boletim informativo novembro 2013
 
caída libre
caída librecaída libre
caída libre
 
Apresentação de resultados 3 t12 final pt
Apresentação de resultados 3 t12 final ptApresentação de resultados 3 t12 final pt
Apresentação de resultados 3 t12 final pt
 

Semelhante a Programación extrema (XP): Metodología ágil de desarrollo de software

Programación extrema [XP]
Programación extrema [XP]Programación extrema [XP]
Programación extrema [XP]Agustín
 
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
 
Aplicaciones de estándares de calidad en la construcción de algoritmaos
Aplicaciones de estándares de calidad en la construcción de algoritmaosAplicaciones de estándares de calidad en la construcción de algoritmaos
Aplicaciones de estándares de calidad en la construcción de algoritmaosalexisj2303
 
Metodologia seleccionada
Metodologia seleccionadaMetodologia seleccionada
Metodologia seleccionadayinethperez
 
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XPETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XPJglory22
 
Modelo de desarrollo de software
Modelo de desarrollo de softwareModelo de desarrollo de software
Modelo de desarrollo de softwareSaul mendoza valdez
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Lis Pater
 
Metodologia XP fases y subfases
Metodologia  XP fases y subfasesMetodologia  XP fases y subfases
Metodologia XP fases y subfasesJazminaNaranjo
 
Programación extrema
Programación extremaProgramación extrema
Programación extremaBrandon Betto
 
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 usarKiberley Santos
 
Programacion extrema
Programacion extremaProgramacion extrema
Programacion extremaCheo Mateo
 

Semelhante a Programación extrema (XP): Metodología ágil de desarrollo de software (20)

Metodologia XP
Metodologia XPMetodologia XP
Metodologia XP
 
Programación extrema [XP]
Programación extrema [XP]Programación extrema [XP]
Programación extrema [XP]
 
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
 
Monografia de xp
Monografia de xpMonografia de xp
Monografia de xp
 
Aplicaciones de estándares de calidad en la construcción de algoritmaos
Aplicaciones de estándares de calidad en la construcción de algoritmaosAplicaciones de estándares de calidad en la construcción de algoritmaos
Aplicaciones de estándares de calidad en la construcción de algoritmaos
 
Programación Extrema - Metodología Ágil
Programación Extrema - Metodología Ágil Programación Extrema - Metodología Ágil
Programación Extrema - Metodología Ágil
 
Metodologia seleccionada
Metodologia seleccionadaMetodologia seleccionada
Metodologia seleccionada
 
Luis
LuisLuis
Luis
 
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XPETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
 
Modelo de desarrollo de software
Modelo de desarrollo de softwareModelo de desarrollo de software
Modelo de desarrollo de software
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema
 
desarrollo agil-2022.pdf
desarrollo agil-2022.pdfdesarrollo agil-2022.pdf
desarrollo agil-2022.pdf
 
Diapositivas xp
Diapositivas xpDiapositivas xp
Diapositivas xp
 
Etapas y subetapas de xp
Etapas y subetapas de xpEtapas y subetapas de xp
Etapas y subetapas de xp
 
Metodologia XP fases y subfases
Metodologia  XP fases y subfasesMetodologia  XP fases y subfases
Metodologia XP fases y subfases
 
Programación extrema
Programación extremaProgramación extrema
Programación extrema
 
Metodos agiles 4
Metodos agiles 4Metodos agiles 4
Metodos agiles 4
 
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
 
Programacion extrema
Programacion extremaProgramacion extrema
Programacion extrema
 

Último

LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
Éteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesÉteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesLauraColom3
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfenelcielosiempre
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 

Último (20)

LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
Éteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesÉteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reacciones
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 

Programación extrema (XP): Metodología ágil de desarrollo de software

  • 1. La programación extrema, o Extreme Programming (XP), es una metodología de desarrollo ágil, una de las más exitosas en tiempo reciente. Su autor principal es Kent Beck, quien eligió algunas características de otras metodologías y las relacionó de forma que cada una complementara a la otra. Así, la XP se puede definir como un conjunto de pasos de diversas metodologías, acopladas de manera que sean pasos flexibles a seguir utilizadas con el uso común, para realizar un desarrollo más agradable y sencillo. Esta metodología tiene como base la simplicidad y como objetivo principal la satisfacción del cliente; para lograrlo se deben tomar en cuenta cuatro valores fundamentales: Objetivos de la programación extrema El objetivo principal de la XP es la satisfacción del cliente. Se le trata de dar al cliente lo que quiere y cuando quiere. Por tanto, se debe responder rápidamente a las necesidades del cliente, aunque realice cambios en fases avanzadas del proyecto. Como metodología Ágil que es, se pueden producir modificaciones de los requisitos del proyecto a lo largo de su desarrollo, sin que esto produzca un buen dolor de cabeza. Otro de los objetivos es el trabajo en grupo. Tanto los jefes del proyecto, clientes y desarrolladores forman parte del equipo y deben estar involucrados en el desarrollo. Valores de la programación extrema Para garantizar el éxito de un proyecto, los autores de XP han considerado como fundamentales cuatro valores:  Comunicación. Muy importante. La XP ayuda mediante sus prácticas a la comunicación entre los integrantes del grupo de trabajo: jefes de proyecto, clientes y desarrolladores.  Sencillez. Los programas deben ser los más sencillos posibles y tener la funcionalidad necesaria que se indican en los requisitos. No hay que añadir algo que no se necesitehoy. Si se necesita añadir más funcionalidad mañana pues ya se hará entonces.  Retroalimentación. Las pruebas que se le realizan al software nos mantiene informados del grado de fiabilidad del sistema.  Valentía. Asumir retos, ser valientes ante los problemas y afrontarlos. El intentar mejorar algo que ya funciona. Aunque gracias a las pruebas unitarias no existe el riesgo de ‘meter la pata’.
  • 2. 1ª Fase: Planificación del proyecto. ....... .......Historias de usuario: Las historias de usuario tienen la misma finalidad que los casos de uso pero con algunas diferencias: Constan de 3 ó 4 líneas escritas por el cliente en un lenguaje no técnico sin hacer mucho hincapié en los detalles; no se debe hablar ni de posibles algoritmos para su implementación ni de diseños de base de datos adecuados, etc. Son usadas para estimar tiempos de desarrollo de la parte de la aplicación que describen. .......Release planning*: . " es una planificación donde los desarrolladores y clientes establecen los tiempos de implementación ideales de las historias de usuario, la prioridad con la que serán implementadas y las historias que serán implementadas en cada versión del programa. ....... Iteraciones Todo proyecto que siga la metodología X.P. se ha de dividir en iteraciones de aproximadamente 3 semanas de duración. Al comienzo de cada iteración los clientes deben seleccionar las historias de usuario definidas en el "Release planning" que serán implementadas. También se seleccionan las historias de usuario que no pasaron el test de aceptación que se realizó al terminar la iteración anterior. Estas historias de usuario son divididas en tareas de entre 1 y 3 días de duración que se asignarán a los programadores. ....... Velocidad del proyecto: La velocidad del proyecto es una medida que representa la rapidez con la que se desarrolla el proyecto; estimarla es muy sencillo, basta con contar el número de historias de usuario que se pueden implementar en una iteración; de esta forma, se sabrá el cupo de historias que se pueden desarrollar en las distintas iteraciones. ....... Programación en pareja: La metodología X.P. aconseja la programación en parejas pues incrementa la productividad y la calidad del software desarrollado. El trabajo en pareja involucra a dos programadores trabajando en el mismo equipo; mientras uno codifica haciendo hincapié en la calidad de la función o método que está implementando, el otro analiza si ese método o función es adecuado y está bien diseñado. De esta forma se consigue un código y diseño con gran calidad. ....... Reuniones diarias. Es necesario que los desarrolladores se reúnan diariamente y expongan sus problemas, soluciones e ideas de forma conjunta. Las reuniones tienen que ser fluidas y todo el mundo tiene que tener voz y voto. 2ª Fase: Diseño. ....... Diseños simples: La metodología X.P sugiere que hay que conseguir diseños simples y sencillos. Hay que procurar hacerlo todo lo menos complicado posible para conseguir un diseño fácilmente entendible e impleméntable que a la larga costará menos tiempo y esfuerzo desarrollar. ....... Glosarios de términos: Usar glosarios de términos y un correcta
  • 3. especificación de los nombres de métodos y clases ayudará a comprender el diseño y facilitará sus posteriores ampliaciones y la reutilización del código. ....... Riesgos: Si surgen problemas potenciales durante el diseño, X.P sugiere utilizar una pareja de desarrolladores para que investiguen y reduzcan al máximo el riesgo que supone ese problema. ....... Funcionalidad extra: Nunca se debe añadir funcionalidad extra al programa aunque se piense que en un futuro será utilizada. Sólo el 10% de la misma es utilizada, lo que implica que el desarrollo de funcionalidad extra es un desperdicio de tiempo y recursos. ....... Refactorizar. Refactorizar es mejorar y modificar la estructura y codificación de códigos ya creados sin alterar su funcionalidad. Refactorizar supone revisar de nuevo estos códigos para procurar optimizar su funcionamiento. Es muy común rehusar códigos ya creados que contienen funcionalidades que no serán usadas y diseños obsoletos. Esto es un error porque puede generar código completamente inestable y muy mal diseñado; por este motivo, es necesario refactorizar cuando se va a utilizar código ya creado. .......Tarjetas C.R.C. El uso de las tarjetas C.R.C (Class, Responsabilities and Collaboration) permiten al programador centrarse y apreciar el desarrollo orientado a objetos olvidándose de los malos hábitos de la programación procedural clásica. .......Las tarjetas C.R.C representan objetos; la clase a la que pertenece el objeto se puede escribir en la parte de arriba de la tarjeta, en una columna a la izquierda se pueden escribir las responsabilidades u objetivos que debe cumplir el objeto y a la derecha, las clases que colaboran con cada responsabilidad. 3ª Fase: Codificación. .......Como ya se dijo en la introducción, el cliente es una parte más del equipo de desarrollo; su presencia es indispensable en las distintas fases de X.P. A la hora de codificar una historia de usuario su presencia es aún más necesaria. No olvidemos que los clientes son los que crean las historias de usuario y negocian los tiempos en los que serán implementadas. Antes del desarrollo de cada historia de usuario el cliente debe especificar detalladamente lo que ésta hará y también tendrá que estar presente cuando se realicen los test que verifiquen que la historia implementada cumple la funcionalidad especificada. .......La codificación debe hacerse ateniendo a estándares de codificación ya creados. Programar bajo estándares mantiene el código consistente y facilita su comprensión y escalabilidad. .......Crear test que prueben el funcionamiento de los distintos códigos implementados nos ayudará a desarrollar dicho código. Crear estos test antes nos ayuda a saber qué es exactamente lo que tiene que hacer el código a implementar y sabremos que una vez implementado pasará dichos test sin problemas ya que dicho código ha sido diseñado para ese fin. Se puede dividir la funcionalidad que debe cumplir una tarea a programar en pequeñas unidades, de esta forma se
  • 4. crearán primero los test para cada unidad y a continuación se desarrollará dicha unidad, así poco a poco conseguiremos un desarrollo que cumpla todos los requisitos especificados. .......Como ya se comentó anteriormente, X.P opta por la programación en pareja ya que permite un código más eficiente y con una gran calidad. .......X.P sugiere un modelo de trabajo usando repositorios de código dónde las parejas de programadores publican cada pocas horas sus códigos implementados y corregidos junto a los test que deben pasar. De esta forma el resto de programadores que necesiten códigos ajenos trabajarán siempre con las últimas versiones. Para mantener un código consistente, publicar un código en un repositorio es una acción exclusiva para cada pareja de programadores. .......X.P también propone un modelo de desarrollo colectivo en el que todos los programadores están implicados en todas las tareas; cualquiera puede modificar o ampliar una clase o método de otro programador si es necesario y subirla al repositorio de código. El permitir al resto de los programadores modificar códigos que no son suyos no supone ningún riesgo ya que para que un código pueda ser publicado en el repositorio tiene que pasar los test de funcionamiento definidos para el mismo. .......La optimización del código siempre se debe dejar para el final. Hay que hacer que funcione y que sea correcto, más tarde se puede optimizar. .......X.P afirma que la mayoría de los proyectos que necesiten más tiempo extra que el planificado para ser finalizados no podrán ser terminados a tiempo se haga lo que se haga, aunque se añadan más desarrolladores y se incrementen los recursos. La solución que plantea X.P es realizar un nuevo "Release plan" para concretar los nuevos tiempos de publicación y de velocidad del proyecto. .......A la hora de codificar no seguimos la regla de X.P que aconseja crear test de funcionamiento con entornos de desarrollo antes de programar. Nuestros test los obtendremos de la especificación de requisitos ya que en ella se especifican las pruebas que deben pasar las distintas funcionalidades del programa, procurando codificar pensando en las pruebas que debe pasar cada funcionalidad. 4ª Fase: Pruebas. .......Uno de los pilares de la metodología X.P es el uso de test para comprobar el funcionamiento de los códigos que vayamos implementando. .......El uso de los test en X.P es el siguiente: .......Se deben crear las aplicaciones que realizarán los test con un entorno de desarrollo específico para test. .......Hay que someter a tests las distintas clases del sistema omitiendo los métodos más triviales. .......Se deben crear los test que pasarán los códigos antes de implementarlos; en el apartado anterior se explicó la importancia de crear antes los test que el código. .......Un punto importante es crear test que no tengan ninguna dependencia del
  • 5. código que en un futuro evaluará. Hay que crear los test abstrayéndose del futuro código, de esta forma aseguraremos la independencia del test respecto al código que evalúa. .......Como se comentó anteriormente los distintos test se deben subir al repositorio de código acompañados del código que verifican. Ningún código puede ser publicado en el repositorio sin que haya pasado su test de funcionamiento, de esta forma, aseguramos el uso colectivo del código (explicado en el apartado anterior). .......El uso de los test es adecuado para observar la refactorización. Los test permiten verificar que un cambio en la estructura de un código no tiene porqué cambiar su funcionamiento. .......Test de aceptación. Los test mencionados anteriormente sirven para evaluar las distintas tareas en las que ha sido dividida una historia de usuario. Para asegurar el funcionamiento final de una determinada historia de usuario se deben crear "Test de aceptación"; estos test son creados y usados por los clientes para comprobar que las distintas historias de usuario cumplen su cometido. .......Al ser las distintas funcionalidades de nuestra aplicación no demasiado extensas, no se harán test que analicen partes de las mismas, sino que las pruebas se realizarán para las funcionalidades generales que debe cumplir el programa especificado en la descripción de requisitos