RUP

Proceso Unificado Racional

1.- Introducción

Al momento de realizar un software hay varias metodologías que podemos usar para
desarrollarlo y debemos hacer la pregunta ¿Cuál vamos a usar?, ¿Cuál nos conviene más?... Y
estas preguntas deben ser respondidas en base al estudio de cada una de esas metodologías.
El software no debe ser realizado creyendo que ese producto está bien porque nosotros creemos
que esta correcto, cuando en realidad debe ser pensado, analizado y diseñado de tal forma que
la calidad que le demos al cliente sea la más propicia a que cumpla con todas sus necesidades.
Vamos a ver a continuación una de las metodologías de desarrollo que se aplica al desarrollo de
software (sistemas) que el RUP o proceso racional unificado el cual tiene tanto ventajas como
desventajas y veremos sus características principales.

2.- Definición de la metodología

El Proceso Unificado Racional, Rational Unified Process en inglés, y sus siglas RUP, es un
proceso de desarrollo de software y junto con el Lenguaje Unificado de Modelado UML,
constituye la metodología estándar más utilizada para el análisis, implementación y
documentación de sistemas orientados a objetos. El RUP no es un sistema con pasos firmemente
establecidos, sino que trata de un conjunto de metodologías adaptables al contexto y
necesidades de cada organización, donde el software es organizado como una colección de
unidades atómicas llamados objetos, constituidos por datos y funciones, que interactúan entre
sí. RUP es un proceso para el desarrollo de un proyecto de un software que define claramente
quien, cómo, cuándo y qué debe hacerse en el proyecto
RUP es explícito en la definición de software y su trazabilidad, es decir, contempla en relación
causal de los programas creados desde los requerimientos hasta la implementación y pruebas e
identifica claramente a los profesionales (actores) involucrados en el desarrollo del software y
sus responsabilidades en cada una de las actividades.

3.- Características Principales

Sus características es que es iterativo e incremental y está basada mucho en los casos de uso,
también sus características es que verifica de manera seguida la calidad del software y
administrar los requisitos. Este proceso de desarrollo tiene tanto artefactos como roles (que son
las personas que están encargadas dentro del desarrollo o proceso).

enfocada a las necesidades y metas del usuario. como se enmarca en el negocio. usuarios finales y desarrolladores tengan un entendimiento común de la organización objetivo. sobre conocer sus procesos.. donde se identifican los principales casos de uso y se identifican los riesgos. especificando las características y el diseño de la arquitectura. · Establecer y mantener un acuerdo entre clientes y otros stakeholders sobre lo que el sistema podría hacer.Modelado del negocio En esta fase el equipo se familiarizará más al funcionamiento de la empresa. · Definir una interfaz de usuarios para el sistema.Fase de elaboración Se realiza el plan de proyecto.. · Proveer a los desarrolladores un mejor entendimiento de los requisitos del sistema.1.Análisis y Diseño .4. El objetivo en esta etapa es determinar la visión del proyecto.2.. En esta etapa el objetivo es determinar la arquitectura Óptima..1. 1. de modo que los usuarios finales tienen que comprender y aceptar los requisitos que especifiquemos. el alcance del proyecto. Planificar las actividades necesarias y los recursos requeridos.. · Entender la estructura y la dinámica de la organización para la cual el sistema va ser desarrollado. la visión del producto. 2. · Definir el ámbito del sistema. donde se completan los casos de uso y se mitigan los riesgos. 1. Se concreta la idea.Fase de inicio Se hace un plan de fases.. · Proveer una base para estimar costos y tiempo de desarrollo del sistema. · Entender el problema actual en la organización objetivo e identificar potenciales mejoras.Requisitos En esta línea los requisitos son el contrato que se debe cumplir. · Asegurar que clientes.Estructura o elementos específicos de la metodología Fases de desarrollo del software · Inicio · Elaboración · Construcción · Transición 1. 2.

Construir el producto.1. · Encontrar y documentar defectos en la calidad del software. · Se integra el sistema siguiendo el plan.. · Planificar qué subsistemas deben ser implementados y en qué orden deben ser integrados.. formando el Plan de Integración. · Generalmente asesora sobre la calidad del software percibida. envío. 3.Etapa de transición El objetivo es llegar a obtener el release del proyecto. 4.Implementación Se implementan las clases y objetos en ficheros fuente. entrenamiento. · Desarrollar una arquitectura para el sistema. pero no para aceptar o rechazar el producto al final del proceso de desarrollo. hasta que el cliente quede satisfecho. binarios. la arquitectura y los planes.2. soporte y mantenimiento del producto.En esta actividad se especifican los requerimientos y se describen sobre cómo se van a implementar en el sistema. · Cada implementador decide en qué orden implementa los elementos del subsistema. · Provee la validación de los supuestos realizados en el diseño y especificación de requisitos por medio de demostraciones concretas. los notifica. 3. · Transformar los requisitos al diseño del sistema.Pruebas Este flujo de trabajo es el encargado de evaluar la calidad del producto que estamos desarrollando. 4. · Si encuentra errores de diseño. hasta que el producto está listo para ser enviado a la comunidad de usuarios. · Verificar las funciones del producto de software según lo diseñado. Realizar la transición del producto a los usuarios. En esta etapa el objetivo es llevar a obtener la capacidad operacional inicial. Se realiza la instalación del producto en el cliente y se procede al entrenamiento de los usuarios. por tanto en esta fase suelen ocurrir cambios. Las actividades implicadas incluyen: . ejecutables y demás. · Verificar que los requisitos tengan su apropiada implementación.Fase de construcción Se basa en la elaboración de un producto totalmente operativo y en la elaboración del manual de usuario. · Adaptar el diseño para que sea consistente con el entorno de implementación...1. 3. sino que debe ir integrado en todo el ciclo de vida. lo cual incluye: manufactura.Despliegue Esta actividad tiene como objetivo producir con éxito distribuciones del producto y distribuirlo a los usuarios. El resultado final es un sistema ejecutable.

con lo cual el proyecto va creciendo hasta completarlo en su totalidad. · Integrador. · Instalar el software. · Implementador. Este modelo plantea la implementación del proyecto a realizar en Iteraciones.Roles que participan Analistas: · Analista de procesos de negocio. entre ellas se puede mencionar la de tener pequeños avances del proyectos que son entregables al cliente el cual puede probar mientras se está desarrollando otra iteración del proyecto.Ciclo de Vida de desarrollo de software utilizado · Proceso Iterativo e Incremental: Es el modelo utilizado por RUP para el desarrollo de un proyecto de software. · Jefe de pruebas · Jefe de despliegue · Ingeniero de procesos · Revisor de gestión del proyecto · Gestor de pruebas. · Diseñador de base de datos.. con lo cual se pueden definir objetivos por cumplir en cada iteración y así poder ir completando todo el proyecto iteración por iteración. Apoyo: · Documentador técnico . con lo cual se tienen varias ventajas. 6. Desarrolladores: · Arquitecto de software. · Formar a los usuarios y al cuerpo de ventas. · Probar el producto en su entorno de ejecución final. · Analista de sistema. Gestores: · Jefe de proyecto · Jefe de control de cambios. 5. · Diseñador de interfaz de usuario · Diseñador de cápsulas. · Empaquetar el software para su distribución. · Jefe de configuración. · Diseñador. · Diseñador del negocio. · Proveer asistencia y ayuda a los usuarios. · Distribuir el software.. · Especificador de requisitos. · Migrar el software existente o convertir bases de datos .

.Bibliografía · Tesis Aplicación de la metodología RUP para el desarrollo rápido de aplicaciones basado en el Estándar J2EE de la universidad San Carlos de Guatemala · Libro Técnicas cuantitativas para la gestión en la ingeniería del software Escrito por Javier Dolado Cosín . 9. los roles que tiene la metodología cada uno tiene impartido las prioridades que conlleva el desarrollar software por este medio.Conclusión: La metodología RUP como se pudo observar es la mejor al momento de obtener software de calidad... · Administrador de sistema · Especialista en herramientas · Desarrollador de cursos · Artista gráfico Especialista en pruebas: · Especialista en Pruebas · Analista de pruebas · Diseñador de pruebas Otros roles: · Stakeholders (personas afectadas o pueden ser afectados por la actividad de una empresa) · Revisor · Coordinación de revisiones · Revisor técnico 7.Ventajas y Desventajas Ventajas: -Requiere de conocimientos del proceso y de UML -Progreso visible en las etapas tempranas -El uso de iteraciones -Evaluación de riesgos en lugar de descubrir en la integración final del sistema -Facilita la reutilización del código Desventajas: -Por el grado de complejidad puede no resultar no muy adecuado -Mal aplicado en el estilo cascada 8. También la complejidad que lleva el desarrollar un software ya sea grande o chico como su base fundamental que son las iteraciones y la reutilización de recursos. y concluimos que al momento de elegir cualquier metodología es la que mejor se adapte a los requerimientos de las empresas y que cumpla con un software de calidad.

De la colección VITOR Escruto por Erla Mariela MORALES MORGADO .· Tekhne Revista de la facultad de ingeniería de la universidad Católica Andrés Bello Caracas. Venezuela N°10 año 2007 · Libro Gestión del conocimiento en Sistemas basado en objetos de aprendizaje. cualitativa y pedagógicamente definidos.