8.7.04

Cambio Metodologico RUP ->XP (1 parte)

En los ultimos 3 meses nuestro equipo de proyectos de software ha iniciado un proceso de desarrollo con XP.
XP (extremme Programing) es una metodologia recomendada para aumnetar la velocidad de desarrollo de un producto, el cual fundamenta su desarrollo en los casos de prueba y en las historias de usuario.

Cabe mencionar que lo mas importante en el desarrollo de una aplicacion, es el uso adecuado de una metodologia que administre y garantice el cumplimiento de los requerimientos especificados al inicio del proyecto, por medio del uso de alguna tecnologia (Lenguajes de programacion, Hardware, Sistemas distrbuidos..etc) apropiada.

Generalmente aqui hablamos del ciclo de vida del desarrollo de software (Espiral, entrega por etapas, prototipado evolutivo... etc )(para tener en cuenta);


En este Comentario; se plantea el uso de XP orientado con tecnicas desarrolladas y definidas en RUP; Advierto que lo que se plantea es el paso de la metodologia RUP a la XP
lo cual solo se puede realizar para proyectos definidos donde un estudio preliminar indica que el desarrollo de la aplicacion es de complejidad baja.


Por que pasar de RUP a XP? (desventajas de RUP en tiempo de ejecucion)

Cuando estas sentado en tu salon de clase aprendiendo sobre RUP (generalmente al final del curso de analisis de sistemas ó en el curso Ing de software), observas que en conjunto la metodologia es bastante estructurada, lo cual permite poseer un universo de documentacion a cada elemento significativo del proyecto (documentos de analisis, de diseño, de construccion, de implementacion)

el concepto de hito en RUP es un concepto que provee de elementos tangibles (artefactos), que permiten decidir si el trabajo realizado hasta el momento es el adecuado o no, y si se han superado las necesidades de cada fase definida en la metodologia

en algunos equipos de desarrollo, el desconocimiento de dicha estructura desvia el concepto fundamental de hito, al simple hecho de cumplir con cierta documentacion (ó conjunto de artefactos), lo cual implica un gasto grande de los recursos para una conjunto enorme de documentacion que solo sirve para ser archivada.

desventaja 1: Si el conjunto de documentos y artefactos no son concebidos tal y como se plantea en RUP, dicha documentacion solo servira para ser archivada lo cual no genera valor respecto a la calidad del desarrollo, y evoluciona en problemas mas complejos (aplicacion que no satisface los requerimientos, diseño de la estructura no coincide con la estructura final de la aplicacion, etc)

desventaja 2: Es necesario incluir a mas personas en el equipo de desarrolo:
Especialistas en los diseños y evolucion de casos de uso, de los modelos de analisis y diseño, de los modelos de implementacion, etc

cabe indicar que la tendencia es a reducir cada vez mas los equipos de desarrollo, esto no creo que se deba a una simple politica de reduccion de costos, sino a la reduccion de la complejidad asociada a la comunicacion entre los miembros del equipo.

desventaja 3: lo mas importente en el desarrollo de un producto informatico es el propio de sarrollo, en RUP se gasta posiblemente demasiado tiempo para pasar a la fase de desarrollo

nota: esto es importante cuando nuestra aplicacion es grande y envuelve un problema de complejidad grande en algunos proyectos de menor comlejidad 100% Rup reducen el numero de documentos lo cual podria ser una buena practica, como tambien puede ser un gran riesgo, esto y es especifico de cada proyecto

por que en XP y no en otra metodologia?
por que XP se ha clasificado en las metodologias agiles las cuales plantean aumentar la velocidad del proyecto.

reducen la documentacion asociada a cada proyecto (esto puede ser riesgoso con proyectos de complejidad alta)

Por que lo mas importante es el desarrollo de la aplicacion


Entonces XP es la Panacea? (Desventajas de XP en tiempo de ejecucion)
No, Xp es un proceso metodologico que plantea el cumplimiento de las historias de usuario y superar las pruebas en una iteracion no mayor a 3-4 semanas

durante cada iteracion se debe indicar cuales historias de usuario (HU) se van a implementar, se definen las pruebas de aceptacion para cada HU, se desarrolla, se prueba y se pasa a la sigueinte iteracion.

en el momento en que estas realizando esto en la vida real necesitas de otrosl elementos para formalizar conceptos y otros elemntos asociados al proceso, ni modos usamos casos de uso y especificacion de casos de uso (NO planteado en XP)

conclusion Preliminar:
RUP para algunos proyectos es demasiado complejo
XP para algunos proyectos es demasiado ligero

Metas : intentar definir un proceso que utilice 100% Xp pero que utilice tecnicas RUP para especificar m,as los requerimientos y ayude a garantizar la calidad durante el proceso de desarollo









No hay comentarios.: