Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PROYECTO DE INVESTIGACION 1 DESARROLLO DE UN SISTEMA DE BASE DE DATOS PARA LA ADMINISTRACION DE UN GIMNASIO MEDIANTE LA METODOLOGIA DE PROCESO UNIFICADO RACIONAL (RUP)
INTRODUCCION
El Proceso Unificado Racional (Rational Unified Process en ingls, habitualmente resumido como RUP) es un proceso de desarrollo de software y junto con el Lenguaje Unificado de Modelado UML, constituye la metodologa estndar ms utilizada para el anlisis, implementacin y documentacin de sistemas orientados a objetos. El RUP no es un sistema con pasos firmemente establecidos, sino un conjunto de metodologas adaptables al contexto y necesidades de cada organizacin. Tambin se conoce por este nombre al software desarrollado por Rational, hoy propiedad de IBM, el cual incluye informacin entrelazada de diversos artefactos y descripciones de las diversas actividades. Est incluido en el Rational Method Composer (RMC), que permite la personalizacin de acuerdo a necesidades. Originalmente se dise un proceso genrico y de dominio pblico, el Proceso Unificado, y una especificacin ms detallada, el Rational Unified Process, que se vendiera como producto independiente.
Figura 1: Historia de RUP Posteriormente en 1995 Rational Software Corporation adquiere Objectory AB y entre 1995 y 1997 se desarrolla Rational Objectory Process (ROP) a partir de Objectory 3.8 y del Enfoque Rational (Rational Approach) adoptando UML como lenguaje de modelado. Desde ese entonces y a la cabeza de Grady Booch, Ivar Jacobson y James Rumbaugh, Rational Software desarroll e incorpor diversos elementos para expandir ROP, destacndose especialmente el flujo de trabajo conocido como modelado del negocio. En junio del 1998 se lanza Rational Unified Process.
Caractersticas esenciales
Los autores de RUP destacan que el proceso de software propuesto por RUP tiene tres caractersticas esenciales: est dirigido por los Casos de Uso, est centrado en la arquitectura, y es iterativo e incremental.
Figura 2: Los Casos de Uso integran el trabajo Los Casos de Uso no slo inician el proceso de desarrollo sino que proporcionan un hilo conductor, permitiendo establecer trazabilidad entre los artefactos que son generados en las diferentes actividades del proceso de desarrollo. Como se muestra en la Figura 3, basndose en los Casos de Uso se crean los modelos de anlisis y diseo, luego la implementacin que los lleva a cabo, y se verifica que efectivamente el producto implemente adecuadamente cada Caso de Uso. Todos los modelos deben estar sincronizados con el modelo de Casos de Uso.
Cada producto(documento, modelo, elemento del modelo) tiene tanto una funcin como una forma. La funcin corresponde a la funcionalidad reflejada en los Casos de Uso y la forma la proporciona la arquitectura. Existe una interaccin entre los Casos de Uso y la arquitectura, los Casos de Uso deben encajar en la arquitectura cuando se llevan a cabo y la arquitectura debe permitir el desarrollo de todos los Casos de Uso requeridos, actualmente y en el futuro. Esto provoca que tanto arquitectura como Casos de Uso deban evolucionar en paralelo durante todo el proceso de desarrollo de software. En la Figura 4 se ilustra la evolucin de la arquitectura durante las fases de RUP. Esta arquitectura, es una implementacin parcial del sistema, construida para demostrar algunas funciones y propiedades RUP establece refinamientos sucesivos de una arquitectura ejecutable, construida como un prototipo evolutivo.
Es conveniente ver el sistema desde diferentes perspectivas para comprender mejor el diseo por lo que la arquitectura se representa mediante varias vistas que se centran en aspectos concretos del sistema, abstrayndose de los dems. Para RUP, todas las vistas juntas forman el llamado modelo 4+1 de la arquitectura, el cual recibe este nombre porque lo forman las vistas lgica, de implementacin, de proceso y de despliegue, ms la de Casos de Uso que es la que da cohesin a todas.
MODELO INICIAL
MODELO FINAL
ARQUITECTURA INICIAL
ARQUITECTURA FINAL
Figura 5: Los modelos se completan, la arquitectura no cambia drsticamente Al final de la fase de elaboracin se obtiene una primera aproximacin de la arquitectura donde fueron seleccionados una serie de Casos de Uso arquitectnicamente relevantes (aquellos que ayudan a mitigar los riesgos ms importantes, aquellos que son los ms importantes para el usuario y aquellos que cubran las funcionalidades significativas) Como se observa en la Figura 5, durante la construccin los diversos modelos van desarrollndose hasta completarse. La descripcin de la arquitectura sin embargo, no debera cambiar significativamente (abajo a la derecha) debido a que la mayor parte de la arquitectura se decidi durante la elaboracin. Se incorporan pocos cambios a la arquitectura.
Figura 6: Una iteracin RUP El proceso iterativo e incremental consta de una secuencia de iteraciones. Cada iteracin aborda una parte de la funcionalidad total, pasando por todos los flujos de trabajo relevantes y refinando la arquitectura. Cada iteracin se analiza cuando termina. Se puede determinar si han aparecido nuevos requisitos o han cambiado los existentes, afectando a las iteraciones siguientes. Durante la planificacin de los detalles de la siguiente iteracin, el equipo tambin examina cmo afectarn los riesgos que an quedan al trabajo en curso. Toda la retroalimentacin de la iteracin pasada permite reajustar los objetivos para las siguientes iteraciones. Se contina con esta dinmica hasta que se haya finalizado por completo con la versin actual del producto.
Adaptar el proceso
El proceso deber adaptarse a las caractersticas propias del proyecto u organizacin. El tamao del mismo, as como su tipo o las regulaciones que lo condicionen, influirn en su diseo especfico. Tambin se deber tener en cuenta el alcance del proyecto.
Equilibrar prioridades
Los requerimientos de los diversos participantes pueden ser diferentes, contradictorios o disputarse recursos limitados. Debe encontrarse un equilibrio que satisfaga los deseos de todos. Gracias a este equilibrio se podrn corregir desacuerdos que surjan en el futuro.
Ciclo de vida
El ciclo de vida RUP es una implementacin del Desarrollo en espiral. Fue creado ensamblando los elementos en secuencias semi-ordenadas. El ciclo de vida organiza las tareas en fases e iteraciones. RUP divide el proceso en cuatro fases, dentro de las cuales se realizan varias iteraciones en nmero variable segn el proyecto y en las que se hace un mayor o menor hincapi en las distintas actividades. En la Figura muestra cmo vara el esfuerzo asociado a las disciplinas segn la fase en la que se encuentre el proyecto RUP. FASES(iteraciones)
Las primeras iteraciones (en las fases de Inicio y Elaboracin) se enfocan hacia la comprensin del problema y la tecnologa, la delimitacin del mbito del proyecto, la eliminacin de los riesgos crticos, y al establecimiento de una primera aproximacin o lnea base de la arquitectura. Durante la fase de inicio las iteraciones hacen mayor nfasis en actividades de modelado del negocio y de requerimientos. En la fase de elaboracin, las iteraciones se orientan al desarrollo de la lnea base de la arquitectura, abarcan ms los flujos de trabajo de requerimientos, modelo de negocios (refinamiento), anlisis, diseo y una parte de implementacin orientado a la lnea base de la arquitectura. En la fase de construccin, se lleva a cabo la construccin del producto por medio de una serie de iteraciones(implementacin, pruebas y muestra del sistema). Para cada iteracin se selecciona algunos Casos de Uso, se refina su anlisis y diseo y se procede a su implementacin y pruebas. Se realiza una pequea cascada para cada ciclo. Se realizan tantas iteraciones hasta que se termine la implementacin deseada de la nueva versin del producto. En la fase de transicin se pretende garantizar que se tiene un producto preparado para su entrega a la comunidad de usuarios con el fin de que la prueben . Como se puede observar en cada fase participan todas las disciplinas, pero que dependiendo de la fase el esfuerzo dedicado a una disciplina o actividad vara.
Otras prcticas
RUP identifica 6 practicas deseables con las que define una forma efectiva de trabajar para los equipos de desarrollo de software.
Gestin de requisitos
RUP brinda una gua para encontrar, organizar, documentar, y seguir los cambios de los requisitos funcionales y restricciones. Utiliza una notacin de Caso de Uso y escenarios para representar los requisitos.
resumen, el modelado visual ayuda a mejorar la capacidad del equipo para gestionar la complejidad del software.
Cada fase se concluye con un hito (entregable) bien definido, un punto en el tiempo en el cual se deben tomar ciertas decisiones crticas y alcanzar las metas clave antes de pasar a la siguiente fase, ese hito principal de cada fase se compone de hitos menores que podran ser los criterios aplicables a cada iteracin. Los hitos para cada una de las fases son: Inicio - Lifecycle Objectives, Elaboracin - Lifecycle Architecture, Construccin - Initial Operational Capability, Transicin - Product Release. Las fases y sus respectivos hitos se ilustran en la Figura 10.
La duracin y esfuerzo dedicado en cada fase es variable dependiendo de las caractersticas del proyecto. Sin embargo, la Figura 11 ilustra porcentajes frecuentes al respecto. Consecuente con el esfuerzo sealado, la Figura 12 ilustra una distribucin tpica de recursos humanos necesarios a lo largo del proyecto.
Inicio Esfuerzo 5%
Elaboracin 20 %
Construccin 65 %
Transicin 10%
10 % 10 %
30 % 15 %
50 % 50 %
10% 25 %
recursos
iniciacin
elaboracin
construccin
transicin tiempo