Programacion Extrema
Programacion Extrema
Programacion Extrema
Programacin
Extrema
Integrantes:
Programacin extrema
Objetivos.
Valores xp
El estilo xp
Roles
Historias de usuario:
El primer paso de cualquier proyecto que siga la metodologa X.P es definir las
historias de usuario con el cliente. Las historias de usuario tienen la misma
finalidad que los casos de uso pero con algunas diferencias: Constan de 3 o 4
lneas escritas por el cliente en un lenguaje no tcnico sin hacer mucho hincapi
en los detalles; no se debe hablar ni de posibles algoritmos para su
implementacin ni de diseos de base de datos adecuados, etc. Son usadas para
estimar tiempos de desarrollo de la parte de la aplicacin que describen. Tambin
se utilizan en la fase de pruebas, para verificar si el programa cumple con lo que
especifica la historia de usuario. Cuando llega la hora de implementar una historia
de usuario, el cliente y los desarrolladores se renen para concretar y detallar lo
que tiene que hacer dicha historia. El tiempo de desarrollo ideal para una historia
de usuario es entre 1 y 3 semanas.
Planificacin de publicaciones:
Iteraciones:
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 nmero de
historias de usuario que se pueden implementar en una iteracin; de esta forma,
se sabr el cupo de historias que se pueden desarrollar en las distintas
iteraciones. Usando la velocidad del proyecto se controla que todas las tareas se
puedan desarrollar en el tiempo del que dispone la iteracin.
Programacin en pareja:
Reuniones diarias:
2 Fase: Diseo.
Diseos simples: La metodologa X.P sugiere que hay que conseguir diseos
simples y sencillos. Hay que procurar hacerlo todo lo menos complicado posible
para conseguir un diseo fcilmente entendible e implementable que a la larga
costar menos tiempo y esfuerzo desarrollar.
3 Fase: Codificacin.
X.P sugiere un modelo de trabajo usando repositorios de cdigo dnde las parejas
de programadores publican cada pocas horas sus cdigos implementados y
corregidos junto a los test que deben pasar. De esta forma el resto de
programadores que necesiten cdigos ajenos trabajarn siempre con las ltimas
versiones. Para mantener un cdigo consistente, publicar un cdigo en un
repositorio es una accin exclusiva para cada pareja de programadores.
La optimizacin del cdigo siempre se debe dejar para el final. Hay que hacer que
funcione y que sea correcto, ms tarde se puede optimizar.
4 Fase: Pruebas.
Se deben crear las aplicaciones que realizarn los test con un entorno de
desarrollo especfico para test.
Hay que someter a tests las distintas clases del sistema omitiendo los
mtodos ms triviales.
Se deben crear los test que pasarn los cdigos antes de implementarlos.
Un punto importante es crear test que no tengan ninguna dependencia del
cdigo que en un futuro evaluar. Hay que crear los test abstrayndose del
futuro cdigo, de esta forma aseguraremos la independencia del test
respecto al cdigo que evala.
Los distintos test se deben subir al repositorio de cdigo acompaados del
cdigo que verifican. Ningn cdigo puede ser publicado en el repositorio
sin que haya pasado su test de funcionamiento, de esta forma, se asegura
el uso colectivo del cdigo.
El uso de los test es adecuado para observar la refactorizacin. Los test
permiten verificar que un cambio en la estructura de un cdigo no tiene por
qu cambiar su funcionamiento.
Test de aceptacin.
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 aceptacin"; estos
test son creados y usados por los clientes para comprobar que las distintas
historias de usuario cumplen su cometido.
Ventajas:
Programacin organizada.
Menor taza de errores.
Satisfaccin del programador.
Implementa una forma de trabajo donde se adopte fcilmente a las
circunstancias.
Cuenta con una tasa de errores muy pequea.
Fomenta la comunicacin entre los clientes y los desarrolladores.
Permite ahorrar mucho tiempo y dinero.
Puede ser aplicada a cualquier lenguaje de programacin.
La XP es mejor utilizada en la implementacin de nuevas tecnologas.
Desventajas:
Cundo utilizar XP
El equipo de desarrollo real debe ser pequeo (no menos de dos personas y no
ms de 10 u 11) y todos los miembros del equipo de proyecto (no slo los de
desarrollo) pueden apropiarse del proceso de creacin.