sábado, 26 de abril de 2008

miércoles, 23 de abril de 2008

METODOLOGIAS RUP Y XP



Rational Unified Process Vs. Xtrime Programming

Como todos sabemos una metodología son una serie de métodos de investigación que se siguen con el fin de alcanzar una gama de objetivos. En este articulo vamos a ver las diferencias entre RUP y XP, con el fin de que este articulo sea una ayuda para los lectores.

La metodología mas conocida es la RUP, donde esta nos brinda una disciplina para el desarrollo de todas y cada una de los objetivos a cumplir de un proyecto. Como se muestra en la imagen 1, nos muestra las diferentes actividades donde se tiene que cumplir para cada fase. nuestra primera fase (FASE I), "Principios del Desarrollo", en esta fase se debe cumplir el proceso que deberá adaptarse a las características propias del proyecto u organización; también se debe tener en cuenta el alcance del proyecto y sus actividades son:
"Balancear prioridades", en esta fase se debe encontrar un balance que satisfaga los deseos de todos.

"Demostrar valor iterativamente", estas son etapas iteradas en donde en cada iteración se analiza la estabilidad, calidad del producto, refinamiento y los riesgos.
"Elevar el nivel de abstracción", se utiliza el termino de realización, esto previene a los ingenieros de software ir directamente de los requisitos también se puede acompañar por las representaciones visuales de la arquitectura con UML.

"Enfocarse en la calidad", este es un proceso que debe estar presente en todas las fases del desarrollo de un proyecto la calidad es un factor muy importante.
Ya cumplida nuestra primera fase,continuamos con el "Ciclo de Vida". RUP maneja un desarrollo en espiral en donde debemos tener en cuenta la determinación de objetivos, análisis del riesgo, desarrollo y pruebas y plantificación. En cada una de estas iteraciones se tiene la ventaja de que se reducen los riesgos del proyecto, incorpora calidad, integra desarrollo con mantenimiento; pero también tiene sus desventajas y una de ellas es que se genera mucho tiempo en el desarrollo y genera mucho trabajo adicional.

RUP, es una metodología que esta para brindar una ayuda para el desarrollo de proyectos de largo plazo, a diferencia de la metodología XP (Xtrime Programming ), en esta encontramos una plantificación, diseño, codificación y pruebas. En esta metodología el cliente esta presente en todos los procesos, ya que este es el que define la "historia del usuario con el cliente". Estas son usadas con el fin estimar tiempos de desarrollo para la parte de la aplicación , también se utiliza la fase de pruebas para verificación, para saber si se cumple con los objetivos que especifica la historia.

XP, cumple también con fases pero cada una de ellas es especifica por ejemplo en la fase de diseño , esto deben ser de manera simple, hay que procurar hacerlo todo lo menos complicado posible para conseguir un diseño fácil y entendible. En la fase de "codificacion", no se debe olvidar que los clientes son los que crean las historias de usuario y negocian los tiempos de implementación, y en nuestra fase de "Pruebas" , los test permiten verificar, para así asegurar el funcionamiento los cuales son usados y creados por los clientes para comprobar que las distintas historias de usuario cumplen su cometido. Estas pruebas son diseñadas para saber las funcionalidades que debe cumplir el programa especificada en los requisitos.
En conclusión personal, el tiempo es un factor que me determina cual de estas dos metodologías usar ya que de este depende su desarrollo.
-----------------------------------------------------------------------------------
Referencias
Curso Oficial de RUP-Bogotá