Sie sind auf Seite 1von 13

RUP (Proceso Unificado de Rational)

RUP es un proceso para el desarrollo de un proyecto de software que define claramente quien, cmo, cundo y qu debe hacerse en el proyecto, con 3 caractersticas esenciales, est dirigido por los Casos de Uso: que orientan el proyecto a la importancia para el usuario y lo que este quiere , est centrado en la arquitectura: que Relaciona la toma de decisiones que indican cmo tiene que ser construido el sistema y en qu orden, y es iterativo e incremental: dividindose el proyecto en mini proyectos donde los casos de uso y la arquitectura cumplen sus objetivos de manera ms depurada. 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 luego se vendiera como producto independiente.

Este maneja 6 principios clave: 1. Adaptacin del proceso El proceso deber adaptarse a las caractersticas propias de la organizacin. El tamao del mismo, as como las regulaciones que lo condicionen, influirn en su diseo especfico. Tambin se deber tener en cuenta el alcance del proyecto. 2. Balancear prioridades Los requerimientos de los diversos inversores pueden ser diferentes, contradictorios o disputarse recursos limitados. Debe encontrarse un balance que satisfaga los deseos de todos. 3. Colaboracin entre equipos El desarrollo de software no lo hace una nica persona sino mltiples equipos. Debe haber una comunicacin fluida para coordinar requerimientos, desarrollo, evaluaciones, planes, resultados, etc.

4. Demostrar valor iterativamente

Los proyectos se entregan, aunque sea de un modo interno, en etapas iteradas. En cada iteracin se analiza la opinin de los inversores, la estabilidad y calidad del producto, y se refina la direccin del proyecto as como tambin los riesgos involucrados. 5. Elevar el nivel de abstraccin Este principio dominante motiva el uso de conceptos reutilizables tales como patrn del software, lenguajes 4GL o esquemas (frameworks) por nombrar algunos. stos se pueden acompaar por las representaciones visuales de la arquitectura, por ejemplo con UML. 6. Enfocarse en la calidad El control de calidad no debe realizarse al final de cada iteracin, sino en todos los aspectos de la produccin.

HISTORIA
El antecedente ms importante se ubica en 1967 con la Metodologa Ericsson (Ericsson Approach) elaborada por Ivar Jacobson, una aproximacin de desarrollo basada en componentes, que introdujo el concepto de Caso de Uso. Entre los

aos de 1987 a 1995 Jacobson fund la compaa Objectory AB y lanza el proceso de desarrollo Objectory (abreviacin de Object Factory). Posteriormente en 1995 Rational Software Corporation adquiere Objectory ABy 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.

CICLO DE VIDA DE RUP


RUP divide el proceso en 4 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 los distintas actividades.

FASE DE INICIO Durante la fase de inicio se define el modelo del negocio y el alcance del proyecto. Se identifican todos los actores y Casos de Uso, y se disean los Casos de Uso ms esenciales (aproximadamente el 20% del modelo completo). Se desarrolla, un plan de negocio para determinar que recursos deben ser asignados al proyecto. Los objetivos de esta fase son : Establecer el mbito del proyecto y sus lmites. Encontrar los Casos de Uso crticos del sistema, los escenarios bsicos que definen la funcionalidad. Mostrar al menos una arquitectura candidata para los escenarios principales. Estimar el coste en recursos y tiempo de todo el proyecto. Estimar los riesgos, las fuentes de incertidumbre.

Los resultados de la fase de inicio deben ser : Un documento de visin: Una visin general de los requerimientos del proyecto, caractersticas clave y restricciones principales. Modelo inicial de Casos de Uso (10-20% completado). Un glosario inicial: Terminologa clave del dominio. El caso de negocio. Lista de riesgos y plan de contingencia. Plan del proyecto, mostrando fases e iteraciones. Modelo de negocio, si es necesario Prototipos exploratorios para probar conceptos o la arquitectura candidata.

Al terminar la fase de inicio se deben comprobar los criterios de evaluacin para continuar: Todos los interesados en el proyecto coinciden en la definicin del mbito del sistema y las estimaciones de agenda. Entendimiento de los requisitos, como evidencia de la fidelidad de los Casos de Uso principales. Las estimaciones de tiempo, coste y riesgo son crebles. Comprensin total de cualquier prototipo de la arquitectura desarrollado. Los gastos hasta el momento se asemejan a los planeados.

Si el proyecto no pasa estos criterios hay que plantearse abandonarlo o repensarlo profundamente

FASE DE ELABORACION El propsito de la fase de elaboracin es analizar el dominio del problema, establecer los cimientos de la arquitectura, desarrollar el plan del proyecto y eliminar los mayores riesgos. En esta fase se construye un prototipo de la arquitectura, que debe evolucionar en iteraciones sucesivas hasta convertirse en el sistema final. Este prototipo debe contener los Casos de Uso crticos identificados en la fase de inicio. Tambin debe demostrarse que se han evitado los riesgos ms graves. Los objetivos de esta fase son : Definir, validar y cimentar la arquitectura. Completar la visin. Crear un plan fiable para la fase de construccin. Este plan puede evolucionar en sucesivas iteraciones. Debe incluir los costes si procede. Demostrar que la arquitectura propuesta soportar la visin con un coste razonable y en un tiempo razonable.

Al terminar deben obtenerse los siguientes resultados : Un modelo de Casos de Uso completa al menos hasta el 80%: todos los casos y actores identificados, la mayora de los casos desarrollados. Requisitos adicionales que capturan los requisitos no funcionales y cualquier requisito no asociado con un Caso de Uso especfico. Descripcin de la arquitectura software. Un prototipo ejecutable de la arquitectura. Lista de riesgos y caso de negocio revisados. Plan de desarrollo para el proyecto. Un caso de desarrollo actualizado que especifica el proceso a seguir. Un manual de usuario preliminar (opcional).

En esta fase se debe tratar de abarcar todo el proyecto con la profundidad mnima. Slo se profundiza en los puntos crticos de la arquitectura o riesgos importantes.

En la fase de elaboracin se actualizan todos los productos de la fase de inicio. Los criterios de evaluacin de esta fase son los siguientes: La visin del producto es estable.

La arquitectura es estable. Se ha demostrado mediante la ejecucin del prototipo que los principales elementos de riesgo han sido abordados y resueltos. El plan para la fase de construccin es detallado y preciso. Las estimaciones son crebles. Todos los interesados coinciden en que la visin actual ser alcanzada si se siguen los planes actuales en el contexto de la arquitectura actual. Los gastos hasta ahora son aceptables, comparados con los previstos.

Si no se superan los criterios de evaluacin quiz sea necesario abandonar el proyecto o replanterselo considerablemente. FASE DE CONSTRUCCION La finalidad principal de esta fase es alcanzar la capacidad operacional del producto de forma incremental a travs de las sucesivas iteraciones. Durante esta fase todos los componentes, caractersticas y requisitos deben ser implementados, integrados y probados en su totalidad, obteniendo una versin aceptable del producto. Los objetivos concretos segn [KRU00] incluyen: Minimizar los costes de desarrollo mediante la optimizacin de recursos y evitando el tener que rehacer un trabajo o incluso desecharlo. Conseguir una calidad adecuada tan rpido como sea prctico. Conseguir versiones funcionales (alfa, beta, y otras versiones de prueba) tan rpido como sea prctico.

Los resultados de la fase de construccin deben ser [RSC98]: Modelos Completos (Casos de Uso, Anlisis, Diseo, Despliegue e Implementacin) Arquitectura ntegra (mantenida y mnimamente actualizada) Riesgos Presentados Mitigados Plan del Proyecto para la fase de Transicin. Manual Inicial de Usuario (con suficiente detalle) Prototipo Operacional beta Caso del Negocio Actualizado

Los criterios de evaluacin de esta fase son los siguientes: El producto es estable y maduro como para ser entregado a la comunidad de usuario para ser probado.

Todos los usuarios expertos estn listos para la transicin en la comunidad de usuarios. Son aceptables los gastos actuales versus los gastos planeados.

FASE DE TRANSICION La finalidad de la fase de transicin es poner el producto en manos de los usuarios finales, para lo que se requiere desarrollar nuevas versiones actualizadas del producto, completar la documentacin, entrenar al usuario en el manejo del producto, y en general tareas relacionadas con el ajuste, configuracin, instalacin y facilidad de uso del producto. Algunas de las cosas que puede incluir esta fase: Prueba de la versin Beta para validar el nuevo sistema frente a las expectativas de los usuarios Funcionamiento paralelo con los sistemas legados que estn siendo sustituidos por nuestro proyecto. Conversin de las bases de datos operacionales. Entrenamiento de los usuarios y tcnicos de mantenimiento. Traspaso del producto a los equipos de marketing, distribucin y venta. Los principales objetivos de esta fase son: Conseguir que el usuario se valga por si mismo. Un producto final que cumpla los requisitos esperados, que funcione y satisfaga suficientemente al usuario. Los resultados de la fase de transicin son Prototipo Operacional Documentos Legales Caso del Negocio Completo Lnea de Base del Producto completa y corregida que incluye todos los modelos del sistema Descripcin de la Arquitectura completa y corregida Las iteraciones de esta fase irn dirigidas normalmente a conseguir una nueva versin. Los criterios de evaluacin de esta fase son los siguientes: El usuario se encuentra satisfecho.

Son aceptables los gastos actuales versus los gastos planificados.

Roles, actividades, artefactos y flujos de trabajo


Un proceso de desarrollo de software define quin hace qu, cmo y cundo. RUP define cuatro elementos los roles, que responden a la pregunta Quin?, las actividades que responden a la pregunta Cmo?, los productos, que responden a la pregunta Qu? y los flujos de trabajo de las disciplinas que responde a la pregunta Cundo?

Roles Un rol define el comportamiento y responsabilidades de un individuo, o de un grupo de individuos trabajando juntos como un equipo. Una persona puede desempear diversos roles, as como un mismo rol puede ser representado por varias personas. Las responsabilidades de un rol son tanto el llevar a cabo un conjunto de actividades como el ser el dueo de un conjunto de artefactos. Analistas: Analista de procesos de negocio. Diseador del negocio. Analista de sistema. Especificador de requisitos.

Desarrolladores: Arquitecto de software. Diseador Diseador de interfaz de usuario Diseador de cpsulas. Diseador de base de datos. Implementador. Integrador.

Gestores: Jefe de proyecto

Jefe de control de cambios. Jefe de configuracin. Jefe de pruebas Jefe de despliegue Ingeniero de procesos Revisor de gestin del proyecto Gestor de pruebas.

Apoyo: Documentador tcnico Administrador de sistema Especialista en herramientas Desarrollador de cursos Artista grfico

Especialista en pruebas: Especialista en Pruebas (tester) Analista de pruebas Diseador de pruebas Otros roles: Stakeholders. Revisor Coordinacin de revisiones Revisor tcnico Cualquier rol

Actividades

Una actividad en concreto es una unidad de trabajo que una persona que desempee un rol puede ser solicitado a que realice. Las actividades tienen un objetivo concreto, normalmente expresado en trminos de crear o actualizar algn producto.

Artefactos

Un producto o artefacto es un trozo de informacin que es producido, modificado o usado durante el proceso de desarrollo de software. Los productos son los resultados tangibles del proyecto, las cosas que va creando y usando hasta obtener el producto final.

Un artefacto puede ser cualquiera de los siguientes : Un documento, como el documento de la arquitectura del software. Un modelo, como el modelo de Casos de Uso o el modelo de diseo. Un elemento del modelo, un elemento que pertenece a un modelo como una clase, un Caso de Uso o un subsistema. Flujos de trabajo Con la enumeracin de roles, actividades y artefactos no se define un proceso, necesitamos contar con una secuencia de actividades realizadas por los diferentes roles, as como la relacin entre los mismos. Un flujo de trabajo es una relacin de actividades que nos producen unos resultados observables. A continuacin se dar una explicacin de cada flujo de trabajo.

Ejemplo: Configuracin RUP para proyecto pequeo


A continuacin se describen brevemente cada uno de los artefactos que se generarn y usarn durante el proyecto.

1. Flujos de Trabajo Se utilizarn Diagramas de Actividad para modelar los Flujos de Trabajo (workflows) del rea problema, tanto los actuales (previos a la implantacin de nuevo sistema) como los propuestos, que sern soportados por el sistema desarrollado 2. Caractersticas del Producto Software Es una lista de las caractersticas principales del producto, deseables desde una perspectiva de las necesidades del cliente.

3. Glosario Es un documento que define los principales trminos usados en el proyecto. Permite establecer una terminologa consensuada.

4. Modelo de Casos de Uso El modelo de Casos de Uso presenta la funcionalidad del sistema y los actores que hacen uso de ella. Se representa mediante Diagramas de Casos de Uso. 5. Especificaciones de Casos de Uso Para los casos de uso que lo requieran (cuya funcionalidad no sea evidente o que no baste con una simple descripcin narrativa) se realiza una descripcin detallada utilizando una plantilla de documento, donde se incluyen: precondiciones, postcondiciones, flujo de eventos, requisitos no-funcionales asociados. 6. Modelo de Anlisis y Diseo Este modelo establece la realizacin de los casos de uso en clases y pasando desde una representacin en trminos de anlisis (sin incluir aspectos de implementacin) hacia una de diseo (incluyendo una orientacin hacia el entorno de implementacin). Est constituido esencialmente por un Diagrama de Clases y algunos Diagramas de Estados para las clases que lo requieran. 7. Modelo Lgico Relacional Previendo que la persistencia de la informacin del sistema ser soportada por una base de datos relacional, este modelo describe la representacin lgica de los datos persistentes, de acuerdo con el enfoque para modelado relacional de datos. Para expresar este modelo se utiliza un Diagrama de Tablas donde se muestran las tablas, claves, etc. 8. Modelo de Implementacin Este modelo es una coleccin de componentes y los subsistemas que los contienen. Estos componentes incluyen: ficheros ejecutables, ficheros de cdigo fuente, y todo otro tipo de ficheros necesarios para la implantacin y despliegue del sistema. 9. Modelo de Pruebas Para cada Caso de Uso se establecen pruebas de Aceptacin que validarn la correcta implementacin del Caso de Uso. Cada prueba es especificada mediante un documento que establece las condiciones de ejecucin, las entradas de la prueba, y los resultados esperados. 10. Manual de Instalacin Este documento incluye las instrucciones para realizar la instalacin del producto. 11. Material de Usuario Corresponde a un conjunto de documentos y facilidades de uso del sistema. 12. Producto Todos los ficheros fuente y ejecutable del producto.

Ilustracin de relaciones entre artefactos del proyecto

BIBLIOGRAFIA
Jacaboson, I., Booch, G., Rumbaugh J., El Proceso Unificado de Desarrollo de Software, 2000 Addison Wesley

CIBERGRAFIA
http://d.scribd.com/docs/nea8l914j8kevn67ffn.pdf http://es.wikipedia.org/wiki/RUP

Das könnte Ihnen auch gefallen