Sunteți pe pagina 1din 68

UNIVERSIDAD CENTRAL DE VENEZUELA FACULTAD DE CIENCIA, ESCUELA DE COMPUTACIN Postgrado de Sistema de Informacin y Gerencia

El Proceso Unificado de Rational (Rational Unified Process, RUP)

ELABORADO POR: CARLOS OSUNA M. FRANKLIN MNDEZ YASMINA SALAZAR

Caraca Venezuela 2014

ndice Contenido
1. 2. 3. 4. HISTORIA ........................................................................................................................... 5 DEFINICIN DE RUP ........................................................................................................ 5 VENTAJAS DE RUP ........................................................................................................... 6 CARACTERISTICAS ......................................................................................................... 7 Dirigido por casos de Uso ...................................................................................................... 7 Centrado en la Arquitectura .................................................................................................... 7 Iterativo e Incremental ............................................................................................................ 8 5. ELEMENTOS BSICOS DE RUP ..................................................................................... 8

Roles ............................................................................................................................................ 8 Analistas: ................................................................................................................................. 9 Desarrolladores: ....................................................................................................................... 9 Probadores Profesionales: ....................................................................................................... 9 Encargados............................................................................................................................... 9 Otros ........................................................................................................................................ 9 Actividades .................................................................................................................................. 9 Artefactos................................................................................................................................... 10 Conjuntos de artefactos ......................................................................................................... 11 Disciplinas ................................................................................................................................. 12 Flujos de Trabajo (Workflows) .................................................................................................. 13 6. 7. Flujos de Trabajo Detallados ................................................................................................. 13 ESTRUCTURA DE RUP ................................................................................................... 13 FASES DEL CICLO DE VIDA DE RUP .......................................................................... 15 Importancia de los Hitos ........................................................................................................ 16 Flujos de Trabajo y Artefactos Dinmicos. ........................................................................... 16 Fase de Inicio ......................................................................................................................... 17 Fase de elaboracin ............................................................................................................... 26 Fase de construccin.............................................................................................................. 29 Fase de transicin .................................................................................................................. 32 8. 9. QUIENES DEBEN USAR EL RUP .................................................................................. 35 CUANDO USAR RUP ...................................................................................................... 35

10. GUA DE HERRAMIENTAS ............................................................................................. 36 A. Relational Administrator ................................................................................................ 36

B. Rational Application Develope .......................................................................................... 36 C. Rational ClearCase ............................................................................................................. 37 D. Rational ClearQuest. .......................................................................................................... 40 E. Rational Method Composer. .............................................................................................. 44 F. Rational Project Console. ................................................................................................... 51 G. Rational PurifyPlus ............................................................................................................ 52 H. Rational QualityArchitect ................................................................................................... 53 I. Rational RequisitePro......................................................................................................... 54 J. Rational Robot.................................................................................................................... 57 K. Rational Rose RealTime .................................................................................................... 63 L. Rational SoDA ................................................................................................................... 63 M Rational Software Architect ............................................................................................... 63 N. Rational Suite AnalystStudio ............................................................................................. 63 O. Rational Systems Developer .............................................................................................. 64 P. Rational Test RealTime ...................................................................................................... 64 Q. Rational TestFactory .......................................................................................................... 64 R Rational TestManager ......................................................................................................... 64 S. Rational Unified Process .................................................................................................... 64 T. Rational XDE Developer ................................................................................................... 64 CONCLUSIN ......................................................................................................................... 65 GLOSARIO ............................................................................................................................... 66 BIBLIOGRAFA ....................................................................................................................... 68

ndice de Figuras Figura N 1: Estructuras RUP (Fuente: Kruchten, 1996). .......................................... 14 Figura N 2: Hitos de las Diferentes Fases de RUP. ................................................. 16 Figura N 3 : Actividades y Artefactos de la Fase de Inicio. ...................................... 20 Figura N 4: Arquitectura Candidata del Ejemplo ...................................................... 25 Figura N 5: Actividades y Artefactos de la Fase de Elaboracin. ............................. 28 Figura N 6: Actividades y Artefactos de la Fase de Construccin ............................ 31 Figura N 7: Actividades y Artefactos de la Fase de Transicin................................. 33 Figura N 8: Solapamiento de los Ciclos de Desarrollo ............................................. 34

1. HISTORIA
El Proceso Unificado de Rational (Rational Unified Process en ingls,

habitualmente resumido como RUP) es un proceso de desarrollo de software desarrollado por la empresa Rational Software. Los orgenes de RUP se remontan al modelo espiral original de Barry Boehm. Ken Hartman, uno de los contribuidores claves de RUP colabor con Boehm en la investigacin. En 1995 Rational Software compr una compaa sueca llamada Objectory AB, fundada por Ivar Jacobson, famoso por haber incorporado los casos de uso a los mtodos de desarrollo orientados a objetos. El Rational Unified Process fue el resultado de una convergencia de Rational Approach y Objectory (el proceso de la empresa Objectory AB). El primer resultado de esta fusin fue el Rational Objectory Process, la primera versin de RUP, fue puesta en el mercado en 1998, siendo el arquitecto en jefe Philippe Kruchten. El primer libro para describir el proceso fue titulado "The Unified Software Development Process (ISBN 0-201-57169-2)" El Proceso Unificado de Desarrollo de Software (ISBN 0-201-57169-2), y publicado en 1999 por Ivar Jacobson, Grady Booch y James Rumbaugh

2. DEFINICIN DE RUP
RUP es una metodologa para procesos de desarrollo de software dentro del contexto de la ingeniera de software. Es un proceso de desarrollo de software desarrollado por la empresa Rational Software, actualmente propiedad de IBM. Junto con el Lenguaje Unificado de Modelado UML, constituye la metodologa estndar ms utilizada para el anlisis, diseo, 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. Sobre esta base, la empresa crear sus propios procesos configurables. Un lenguaje de definicin de procesos elementales.

No existe un proceso de software universal. Las caractersticas de cada proyecto (equipo de desarrollo, recursos, tiempo, etc.) exigen que el proceso de desarrollo de software sea configurable. A continuacin se explicar qu ofrece RUP como metodologa para lidiar con la variedad de proyectos que se pueden desarrollar.

3. VENTAJAS DE RUP
RUP proporciona al desarrollador de software, un ambiente para el proceso de desarrollo configurable basado en estndares, que permite: Un proceso de software hecho a la medida para ser publicado y hacerlo accesible para todo el equipo del proyecto. Un proceso de software configurable, para satisfacer necesidades especficas de un proyecto. Una definicin comn del proceso que puede ser compartida por todo el equipo de desarrollo, ayudando a asegurar una comunicacin clara y sin ambigedades entre los miembros del equipo. Los desarrolladores no son los nicos que se ven beneficiados de este enfoque, ste brinda a los dems participantes del proyecto ventajas como: Ofrece a cada usuario, un filtrado personalizado de la definicin del proceso publicado, acorde con su rol dentro del proyecto. Facilitar al inversionista, el entendimiento de qu esperar respecto al esfuerzo de desarrollo,

proporcionndole un glosario de trminos y una enciclopedia de informacin para ayudarle a comunicar sus necesidades de manera efectiva dentro del equipo de desarrollo. Suministrarle al gerente o lder de proyecto, un proceso por medio del cual puede comunicarse efectivamente con su personal, administrar la planificacin y controlar el trabajo de estos respectivamente. Entregarle al ingeniero de procesos, una buena base de la arquitectura y abundante material a partir del cual puede construir sus propias definiciones del proyecto, permitindole configurar y extender esas bases como lo desee.

4. CARACTERISTICAS
Dirigido por casos de Uso Los casos de Uso para los sistemas son la base para el desarrollo del sistema entero, ya que permiten capturar los requerimientos funcionales del sistema, pero no solo eso, tambin guan su diseo, implementacin y prueba. Los Casos de Uso constituyen un elemento integrador y una gua del trabajo Permite establecer trazabilidad, identificar el origen y las diferentes etapas del proceso de desarrollo. 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 a travs del llamado modelo de Casos de Uso. Centrado en la Arquitectura En RUP el proceso se basa en disear tempranamente una arquitectura base ejecutable. La arquitectura de un sistema, es la organizacin o estructura de sus partes (componentes) ms relevantes dejando de lado los detalles, incluye los aspectos estticos y dinmicos del sistema. Mientras que una arquitectura ejecutable es una implementacin parcial del sistema, construida para demostrar cules sern las funcionalidades claves soportadas por el sistema, y lo ms importante, esta arquitectura exhibir las propiedades correctas en trminos de desempeo, rendimiento, capacidad, confiabilidad, escalabilidad entre otras. RUP establece refinamientos sucesivos de la arquitectura ejecutable, construida como un prototipo evolutivo. La arquitectura debe ser: flexible, fcil de modificar, fcil de comprender y debe promover la reutilizacin de componentes. RUP apoya el desarrollo basado en componentes, tanto nuevos como preexistentes. 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 Iterativo e Incremental La estrategia que se propone en RUP es tener un proceso iterativo e incremental en donde el trabajo se divide en partes ms pequeas o mini proyectos. Permitiendo que el equilibrio entre Casos de Uso y arquitectura se vaya logrando durante cada mini proyecto, as durante todo el proceso de desarrollo. Cada paso por el ciclo de vida produce una versin del producto que incrementalmente se va refinando en las iteraciones de las diferentes fases. Si llegando el final del ciclo final de RUP, el producto no cumple los objetivos planteados, se puede realizar un ciclo ms para refinar, examinar los riesgos, reajustar los objetivos, corregir y agregar funcionalidades que lleven el software a cumplir con las expectativas Iterativo e Incremental porque se tiene un mejor manejo de los riesgos y un refinamiento ms efectivo del producto final.

5. ELEMENTOS BSICOS DE RUP


Con RUP, un proceso de desarrollo es representado usando un conjunto de elementos de modelado, tales como: roles, actividades, artefactos y flujos de trabajo (workflows), entre otros. Un rol expresa quin (individuo o grupo) hace un trabajo (el quin), Una actividad describe cmo es hecho el trabajo (el cmo) Un artefacto captura el trabajo realizado (el qu) Los flujos de trabajo (el cundo). Roles Son los personajes encargados de la realizacin de las actividades definidas dentro de los flujos de trabajo de cada una de las disciplinas del RUP, estos actores se dividen en varias categoras: Analistas, Desarrolladores, Probadores, Encargados, otros actores. A continuacin se presenta una lista de actores de acorde a las categoras mencionadas con anterioridad:

Analistas: - Analista del Proceso del Negocio. - Diseador del Negocio. - Revisor del Modelo del Negocio. - Revisor de Requerimientos. - Analista del Sistema. - Especificador de Casos de Uso. - Diseador de Interfaz del Usuario. Desarrolladores: - Arquitecto. - Revisor de la Arquitectura. - Diseador de Cpsulas. - Revisor del Cdigo y Revisor del Diseo. - Diseador de la Base de Datos. - Diseador. - Implementador y un Integrador. Probadores Profesionales: - Diseador de Pruebas. - Probador. Encargados - Encargado de Control del Cambio. - Encargado de la Configuracin. - Encargado del Despliegue. - Ingeniero de Procesos. - Encargado de Proyecto. - Revisor de Proyecto. Otros - Cualquier trabajador. - Artista Grfico. - Stakeholder. - Administrador del Sistema.

- Escritor tcnico. - Especialista de Herramientas. Analistas: Agrupa los roles que estn principalmente involucrados en la captura de

requerimientos (investigan). Por ejemplo analista de procesos de negocios. Gerentes: Agrupa los roles principalmente involucrados en la direccin y configuracin de los procesos de ingeniera. Por ejemplo, gerente de proyecto, gerente de publicacin (deployment). Desarrolladores: Agrupa a los roles principalmente involucrados en el diseo e implementacin del software. Algunos de los roles de esta categora son el arquitecto de software, el diseador, el integrador, etc. Probadores: Agrupa los roles que dirigen las pruebas para habilidades especficas a medir. Ejemplos: probador, analista de pruebas, etc. Produccin y Soporte: Agrupa los roles para dar soporte al proceso de desarrollo del software. Ejemplos: escritor tcnico, especialista de herramientas, administrador de sistema, etc. Roles Adicionales: Agrupa los roles que no se ajustan en ninguno de los grupos anteriores. Actividades Una actividad es una unidad de trabajo que se asigna a un rol, la cual se requiere sea ejecutada por el individuo asociado a ese rol. Cada actividad es asignada a un rol especfico. Una actividad generalmente toma unas pocas horas o das en ser completada, usualmente involucra una persona. La actividad tiene un claro propsito, usualmente expresado en trminos de crear o actualizar algn artefacto, tal como un modelo, un componente o un plan. Pasos Las actividades estn fraccionadas en pasos y estos agrupados en tres categoras: Pasos de Anlisis. Pasos de Ejecucin. Pasos de Revisin. No todos los pasos son necesariamente ejecutados cada vez que una actividad es invocada, as los pasos pueden ser expresados en forma de flujos alternativos. Artefactos Los artefactos son el resultado parcial o final que es producido y usado por los

actores durante el proyecto. Son las entradas y salidas de las actividades, realizadas por los actores, los cuales utilizan y van produciendo estos artefactos para tener guas. Un artefacto puede ser un documento, un modelo o un elemento de modelo. Conjuntos de artefactos Se tiene un conjunto de artefactos definidos en cada una de las disciplinas y utilizadas dentro de ellas por lo actores para la realizacin de las mismas, a continuacin se definen cada una de estas categoras o grupos de artefactos dentro de las disciplinas del RUP: a) Modelado del negocio Los artefactos del modelado del negocio capturan y presentan el contexto del

negocio del sistema. Los artefactos del modelado del negocio sirven como entrada y como referencia para los requisitos del sistema. b) Requerimientos Los artefactos de requerimientos del sistema capturan y presentan la informacin usada en definir las capacidades requeridas del sistema. c) Anlisis y diseo del sistema Los artefactos para el anlisis y del diseo capturan y presenta la informacin

relacionada con la solucin a los problemas se presentaron en los requisitos fijados. d) Implementacin Los artefactos para la implementacin capturan y presentan la realizacin de la solucin presentada en el anlisis y diseo del sistema. e) Pruebas Los artefactos desarrollados como productos de las actividades de prueba y de la evaluacin son agrupadas por el actor responsable, con el cual se lleva un conjunto de documentos de informacin sobre las pruebas realizadas y las metodologas de pruebas aplicadas. f) Despliegue Los artefactos del despliegue capturan y presentan la informacin relacionada con la transitividad del sistema, presentada en la implementacin en el ambiente de la produccin. g) Administracin del proyecto

El conjunto de artefactos de la administracin del proyecto capturan los artefactos asociados con el proyecto, el planeamiento y a la ejecucin del proceso. h) Administracin de cambios y configuracin Los artefactos de la configuracin y administracin del cambio capturan y presentan la informacin relacionada con la disciplina de configuracin y administracin del cambio. i) Entorno o ambiente El conjunto de artefactos del ambiente presentan los artefactos que se utilizan como direccin a travs del desarrollo del sistema para asegurar la consistencia de todos los artefactos producidos. Disciplinas Una disciplina es una coleccin de actividades relacionadas a un rea de inters principal, dentro de todo el proyecto; por ejemplo, la administracin de los requerimientos. La agrupacin de actividades en disciplinas se hace principalmente para aadir un entendimiento del proyecto desde la perspectiva del enfoque tradicional en cascada. Por ejemplo, es ms comn realizar ciertas actividades de la administracin de requerimientos en coordinacin con las actividades de anlisis y diseo. Separando estas actividades en disciplinas, se hace ms fcil comprender las actividades pero ms difcil fijarlas en el cronograma del proyecto. El flujo de trabajo de una disciplina es una secuencia semi-ordenada de actividades, la cual es ejecutada para alcanzar un resultado particular, por ejemplo, para la disciplina asociada a los requerimientos que lleva como objetivo establecer un acuerdo con los clientes, sobre qu debe hacer el sistema. La coleccin de actividades llevadas a cabo debera ser: Capturar un vocabulario comn, un glosario. Desarrollar un plan para la administracin de los requerimientos. Desarrollar la visin. Determinar los requerimientos de los usurarios e inversionistas. Administrar las dependencias. Estructurar el modelo de casos de uso.

Flujos de Trabajo (Workflows) Un flujo de trabajo es una secuencia de actividades que producen un resultado de valor observable. Una de las grandes dificultades de describir un proceso de software, es que hay muchas formas de organizar el conjunto de actividades dentro de un flujo de trabajo. No siempre es posible representar flujos de trabajo. En RUP se utilizan flujos de trabajo detallados y disciplinas para organizar el proceso de software.

Flujos de Trabajo Detallados En las reuniones de un equipo de proyecto se trabajan en paralelo algunas actividades, mientras se hace esto, se observa ms de un artefacto. Un flujo de trabajo detallado, da una visin ms clara de ese trabajo en paralelo. Esto significa que hay varios diagramas de flujo de trabajo detallado para una disciplina. Es complicado el mostrar los artefactos de entrada y salida para todas las actividades de una disciplina en un diagrama. El diagrama de flujo de trabajo detallado, permite mostrar las actividades y los artefactos juntos, para una parte del flujo de trabajo.

6. ESTRUCTURA DE RUP
Un proceso de ingeniera de software es un conjunto parcialmente ordenado de tareas, pasos y operaciones que se llevan a cabo para alcanzar un objetivo: Producir un producto de software de alta calidad. Para alcanzar dicho objetivo en RUP, un proceso de software est organizado o estructurado en dos dimensiones, una dinmica y una esttica. En el grfico se puede observar como vara el nfasis de cada disciplina en un cierto plazo en el tiempo, y durante cada una de las fases. Por ejemplo, en iteraciones tempranas, se pasa ms tiempo en requerimientos, y en las ltimas iteraciones se pasa ms tiempo en poner en prctica la realizacin del proyecto en s.

Figura N 1: Estructuras RUP (Fuente: Kruchten, 1996).

El proceso tiene dos estructuras o dimensiones: Estructura Dinmica: La dimensin horizontal representa la estructura dinmica o el tiempo del proceso. Muestra cmo el proceso es expresado en trminos de ciclos, fases, iteraciones e hitos que evolucionan sobre el ciclo de vida de un proyecto. Estructura Esttica: La dimensin vertical expresa la estructura esttica del proyecto. Describe cmo los elementos del proceso, actividades, componentes, disciplinas, artefactos roles son lgicamente agrupados dentro de las disciplinas del proceso (o flujos de trabajo bsicos). Cada fase contiene una o ms iteraciones, las cuales se enfocan en producir los entregables tcnicos necesarios para conseguir los objetivos de la fase. Habr tantas iteraciones como sean necesarias para cumplir a cabalidad los objetivos de la fase. El nmero de iteraciones a realizar por cada fase, depende de ciertos factores asociados al tipo desarrollo, a la fase y la iteracin en s. Por ejemplo, como se muestra en la Figura N1 , se tienen dos iteraciones en la fase de elaboracin #1 y #2, esto puede variar a ms iteraciones o menos, segn algunos criterios que se explicarn ms adelante.

Si los objetivos de la fase no pueden ser alcanzados con las iteraciones planeadas, otra iteracin deber ser agregada a la fase, lo cual retrasar el proyecto. Para evitar esto, se debe asegurar que cada iteracin se enfoque en los objetivos que deben lograse en esa fase. Cada fase a su vez, tiene un hito (punto de decisin) que proporciona un punto de transicin bien definido de una fase a la siguiente fase. Cada hito est enfocado en un entregable especfico, por ejemplo los objetivos del software a desarrollar. Cada fase e iteracin involucra la ejecucin, una o ms de las disciplinas esenciales del desarrollo (requerimientos, anlisis, diseo e implementacin). Cada iteracin sucesiva se construye sobre el resultado del trabajo de interacciones previas para propiciar la evolucin y refinamiento del sistema hasta que el producto final este terminado. Es as como por ejemplo en la Figura1 se observa que en la fase de inicio hay una cantidad de trabajo asociado a las disciplinas, de modelado del negocio y requerimientos, pero en la fase de elaboracin esa carga de trabajo disminuye, ya que se refinar el resultado obtenido de aplicar esas disciplinas en la fase de inicio. En las primeras iteraciones se har nfasis en los requerimientos, anlisis y el diseo, mientras que en las ltimas iteraciones se har nfasis en la implementacin y prueba. Cada fase tiene un conjunto de objetivos y productos bien definidos, como implementaciones parciales del trabajo final.

7. FASES DEL CICLO DE VIDA DE RUP


Un desarrollo RUP se da a travs de cuatro fases: Inicio, Elaboracin, Construccin y Transicin. Este ciclo de fases finaliza con una versin completa del producto de software. Qu se hace durante cada una de las diferentes fases de RUP?, Qu se trata de alcanzar en cada fase?, Qu artefactos son producidos?, Qu actividades son ejecutadas? En la siguiente seccin se explicar el sentido dinmico de un proyecto RUP. Antes, es necesario aclarar algunas cosas sobre los hitos, flujos de trabajo y artefactos que ayudan a entender el dinamismo de este enfoque.

1. Importancia de los Hitos El propsito de las fases de RUP no es clasificar las actividades por tipo: anlisis, codificacin, etc. El propsito de una fase es ejecutar cualquier actividad requerida, lo suficiente para resolver los objetivos de esa fase. Es decir, hasta que los hitos que la delimitan se hayan alcanzado.

Figura N 2: Hitos de las Diferentes Fases de RUP.

2. Flujos de Trabajo y Artefactos Dinmicos. En RUP no hay un flujo de trabajo fijo o un sistema predefinido de las actividades que se deben ejecutar en cada fase. ste ofrece una gama de posibilidades, pero el contexto del proyecto determinar lo que se utilizar realmente durante una fase especfica para alcanzar sus objetivos. De un ciclo de desarrollo a otro, como de un proyecto a otro, el contexto ser diferente, los riesgos sern diferentes como tambin los artefactos de inicio, el tamao del proyecto, su duracin y el nmero de partes implicadas. Todos jugarn un papel dictaminando qu debe ser ejecutado realmente y qu artefactos deben ser producidos o ser revisados. El peor escenario posible se presenta cuando el equipo de trabajo trata de ejecutar todo RUP, desarrollando ciegamente todos los posibles artefactos y ejecutando todas las actividades planteadas por el enfoque RUP, olvidndose de adaptar RUP para satisfacer el contexto especfico. De esta forma, el equipo ejecuta un proyecto con una alta carga de trabajo, se debe racionar RUP para que est acorde con el proyecto, evitando as ejecutar trabajo innecesario. Por otro lado, mientras que el proyecto es desarrollado y se entiende ms sobre los objetivos, mientras se descubren dificultades y se introducen cambios externos, los artefactos tienen que ser revisados, actualizados y corregidos. Por lo

tanto, las actividades que se han ejecutado, tienen que ser ejecutadas nuevamente y los artefactos tienden a cambiar y no permanecer constantes de una fase a otra, de una iteracin a otra. Por ejemplo, los requisitos se construyen gradualmente en el inicio y la elaboracin, adems deben estar completos para el final de la fase de la elaboracin. La arquitectura ser diseada o seleccionada gradualmente y debera ser bastante estable para el final de la fase de la elaboracin. Pero estos artefactos no son intocables. Se puede tener que alterar la visin, modificar los requerimientos o cambiar el diseo arquitectnico en las ltimas fases. ste enfoque, es absolutamente simple: asegurar que se tienen claros los objetivos para cada una de las cuatro fases e imaginarse lo que significan estos objetivos concretamente para su situacin. Esto es lo que se busca alcanzar en la primera fase del ciclo de vida de RUP. 3. Fase de Inicio Entender lo que se desea alcanzar en una fase, ayudar a aplicar el enfoque RUP a sus proyectos con ms eficacia. Se seleccionar y realizarn solamente las actividades que contribuyan a alcanzar los objetivos de un proyecto particular. La meta ms importante de la fase de inicio, es el alcanzar consenso entre todos los inversionistas y afectados por el desarrollo del proyecto, de los objetivos del ciclo de vida del proyecto.

3.1 Objetivos de la Fase La fase de inicio es la primera de las cuatro fases del ciclo de vida de RUP. La idea de esta fase es realmente entender el alcance del proyecto y los objetivos, obtener suficiente informacin para confirmar qu se debera hacer para proceder con el proyecto o tal vez concluir qu no se debera hacer. La fase de inicio tiene cinco objetivos bsicos, que son:

1. Entender qu se va construir Determinar la visin, el alcance del sistema y los lmites de ste, es decir, qu est dentro del sistema y qu est afuera. Establecer el alcance del proyecto de

software y las condiciones que lo limitan, incluyendo una visin operacional, criterio de aceptacin, adems de qu est previsto hacer en el producto y qu no. La visin debera estar completa y estable al final de la fase de inicio, pero se puede continuar refinando a travs del proyecto. Es importante que la visin sea pblica, compartida y constantemente revisada de modo que nadie pueda decir que no la entenda o no la conoca. Para asegurar un entendimiento comn de lo que se quiere construir se necesita: Producir un documento de la visin. Proporcionar una buena descripcin del alcance del sistema sin entrar mucho en detalles. Esta descripcin requiere dos actividades bsicas: o Identificar los usuarios tpicos del sistema (actores). o Identificar y describir cmo cada actor interactuar con el sistema. Las descripciones de las interacciones tpicas con el sistema son llamadas casos de uso. Detallar los actores y casos de uso claves.

2. Identificar la Funcionalidad Clave del Sistema Este es el segundo objetivo de la fase de inicio y se debera trabajar en l mientras se identifican los casos de uso. Esto es importante para decidir cules casos de uso son los ms esenciales o significativos a nivel de la arquitectura, para asegurar que se est dedicando ms tiempo a los casos de uso crticos. 3. Identificar por lo menos una arquitectura candidata Puesto que la meta de la fase de inicio es determinar si tiene sentido continuar con el proyecto, es necesario cerciorarse de que haya por lo menos una arquitectura candidata que permitir construir el sistema con una mnima cantidad de riesgos (o una cantidad manejable) y un costo razonable.

4. Comprender los costos, cronogramas y riesgos asociados con el proyecto Entender lo que se va a construir es clave, pero determinar cmo construirlo y cunto cuesta, es crucial. Para determinar si se debera continuar con un proyecto se necesita comprender Cunto costar el proyecto? La mayora de costos estn

relacionados a Qu recursos se necesitarn? Cunto tiempo tomar terminar el proyecto? Combinando todo este conocimiento con el entendimiento de la funcionalidad requerida y el valor de la misma para los usuarios, se puede construir un caso de negocios para el proyecto. Durante la fase de elaboracin se enfrentar la gran mayora de los riesgos relacionados con la tecnologa y la arquitectura que se identificaron durante la fase de inicio.

5. Decidir qu proceso seguir y qu herramientas usar Es importante que el equipo de trabajo comparta un punto de vista comn de cmo ser construido el software; es decir, cul ser el proceso de software a seguir. Se debera racionalizar el proceso, para minimizar la carga de trabajo innecesario y asegurar que el proceso de software trate las necesidades especficas del proyecto. En proyectos pequeos, se pueden tomar decisiones precisas sobre cul proceso de desarrollo de software seguir, pero proyectos grandes pueden necesitar ms tiempo para considerar qu opcin de proceso seleccionar. La idea es plantear un proceso de software y una herramienta de desarrollo y trabajar en ella en la primera iteracin. Desplegar el proceso y la herramienta en la segunda iteracin, adems de obtener una retroalimentacin inmediata sobre qu trabaja y qu no lo hace. Basndose en la retroalimentacin, se actualiza el proceso y el ambiente de desarrollo, se extiende a la siguiente iteracin y se mantiene iterando hasta que se est satisfecho con el ambiente. Una vez que se ha seleccionado un proceso, se puede elegir qu herramientas utilizar.

3.2 Las Iteraciones y la Fase de Inicio La mayora de proyectos tienen una iteracin en la fase de inicio, no obstante, algunos proyectos pueden necesitar ms de una iteracin para cumplir los objetivos. Entre las razones para tener varias iteraciones, se encuentran: El proyecto es muy grande y es difcil para el equipo de desarrollo captar el alcance del proyecto. El sistema no tiene precedentes y es difcil establecer claramente lo que debe hacer.

Hay muchos inversionistas y las relaciones con stos son complejas, por ejemplo, las negociaciones del contrato. Para determinar cunto dura y qu se quiere de una iteracin, se establece un plan de iteracin, el cual es el detalle de las tareas a realizar durante una iteracin especfica. Un plan de iteracin se desarrolla en cuatro pasos: 1. Determinar qu se intenta o se quiere lograr en la iteracin. 2. Definir un criterio de evaluacin para determinar cundo la iteracin ha concluido. 3. Definir qu se necesita hacer y sobre qu artefactos (Actividades de la iteracin). 4. Asignar los recursos (personas, herramientas, etc.) para ejecutar las actividades. La Figura 3 muestra las actividades que deberan llevarse a cabo durante la fase de inicio para alcanzar los objetivos antes mencionados, adems de algunos de los artefactos producto de esta fase.

Figura N 3 : Actividades y Artefactos de la Fase de Inicio.

Productos Documento de visin general (requerimientos generales del proyecto, caractersticas principales, restricciones), Modelo inicial de casos de uso (10% a 20 % listos), Glosario, Caso de negocio (Contexto, criterios de xito y pronstico financiero), Identificacin inicial de riesgos, Plan de proyecto, Uno o ms prototipos.

3.3 Hito: Objetivos del Ciclo de Vida Al final de la fase de inicio est el primer y principal hito del proyecto, llamado hito de los objetivos del ciclo de vida. En este punto, se examinan los objetivos del ciclo de vida del proyecto. El proyecto debera abortarse o reconsiderarse si no logra

alcanzar estos objetivos. Si el proyecto est condenado a fracasar, es mejor realizar esto al principio del ciclo de vida y no luego. El hito de los objetivos del ciclo de vida evala bsicamente la viabilidad del proyecto. Observe que el orden de los objetivos no indica prioridad, tampoco que se traten sin un orden especfico. Por el contrario, se tratan todos los objetivos en paralelo. Una revisin del hito del objetivo del ciclo de vida incluye los siguientes criterios de evaluacin: El consenso tanto de los inversionistas como del equipo de proyecto, en la definicin del alcance, estimacin inicial del costo y cronograma del proyecto. Un acuerdo en que ha sido capturado el conjunto correcto de requerimientos y que existe un entendimiento comn de estos. Un acuerdo en que los riesgos iniciales, han sido identificados y existe una estrategia de mitigacin de riesgos, para cada uno.

Ejemplo Para comprender mejor los objetivos, actividades y artefactos de la fase de inicio, se plantea el siguiente escenario: Se desea disear un sistema computarizado para automatizar el

funcionamiento de la cadena de clubes de video Global Videos, en conversaciones con los gerentes de la cadena, se ha obtenido la siguiente informacin preliminar sobre lo que se desea que haga el sistema: El sistema debe llevar el control de afiliacin y desafiliacin de clientes. Por polticas de empresa, no se permite la afiliacin de personas menores de edad. Adems, para alquilar y/o reservar una pelcula es necesario estar afiliado. El sistema debe soportar funciones bsicas como alquilar, reservar, devolver y comprar pelculas. Adems, debe soportar la afiliacin y reservacin por medio del sitio Web de la empresa, as como tambin gestionar los pagos con tarjeta de crdito. Se desea que un cliente pueda devolver la pelcula por medio de un buzn de devolucin, el cual automticamente realizar el registro (se descontar del

depsito del cliente los das de mora, si es el caso). Tambin debe permitir a los clientes consultar las pelculas disponibles por medio de terminales remotos instalados en la tienda. La duracin de la reservacin es de 24 horas, al cumplirse el lapso, la reservacin debe ser cancelada automticamente y la pelcula estar disponible en la existencia. El alquiler de las pelculas tiene una duracin de 2 das hbiles, los das adicionales son cobrados como das de mora. El sistema debe llevar el inventario de las pelculas de video. La empresa ya cuenta con un sistema contable automatizado y se requiere que el sistema a desarrollar se comunique con el mismo. Asuma que forma parte del equipo de desarrollo de la empresa, encargada de este desarrollo. En principio si se asume que es un sistema sin precedentes, que adicionalmente, necesita integrarse con otro sistema de la empresa, con la banca en lnea. Esto implica que necesitar ms de una iteracin para alcanzar los objetivos de la fase de inicio. Segn lo antes discutido, uno de los principales artefactos a obtener de fase de inicio es la visin, la cual ayuda a establecer los objetivos del ciclo de vida. Para el escenario propuesto, un borrador inicial de la visin despus de una iteracin podra verse como sigue:

Definicin del Problema. La empresa Global Videos, actualmente maneja de forma manual el registro de sus servicios de venta, reserva y alquiler de pelculas de video, as como tambin la transferencia de informacin a otros departamentos de la empresa. Lo que afecta a: Los clientes, quienes exigen un servicio ms rpido, eficiente y flexible. La empresa, que se ve limitada en su proceso de expansin y capacidad de respuesta a las demandas de los clientes. El sistema de inventario, que no cuenta con informacin actualizada de la cantidad de pelculas disponibles para la venta o alquiler. Los empleados, a quienes se les dificulta monitorizar el estado de los servicios, como reserva y

alquiler. El impacto generado por el estado actual, se traduce en un lento y costoso proceso para el manejo de la informacin, junto a la insatisfaccin de los clientes y empleados. Una solucin sera mejorar el flujo de informacin de los servicios prestados, de manera de lograr un mayor grado de satisfaccin, tanto en clientes como en empleados, posibilitando una mayor capacidad para captar ms clientes.

Enfoque del Producto. Se requiere un sistema que automatice los servicios de venta, alquiler y reserva de pelculas. Adems de permitir la transferencia eficiente de informacin veraz al sistema de inventario. El sistema en cuestin debe proporcionar flexibilidad en los servicios de compra, reservacin y alquiler de pelculas al poder ejecutar dichos servicios va Web, as como tambin de una forma ms automtica dentro del local. Otro producto de la fase de inicio es la identificacin de las funcionalidades del sistema y los usuarios que hacen uso de las funcionalidades y cmo hacen uso de las mismas. Debido al alcance del curso, el ejemplo se limitar a identificar las funcionalidades y los usuarios. El diagrama utilizado para representar las funcionalidades del sistema, los usuarios y cmo estos interactan con el sistema (diagrama de casos de uso), ser diseado en un curso posterior por medio de un lenguaje de modelado especial. Principales usuarios involucrados (actores): Clientes y personal de Global Videos. Banco de la empresa. Sistema de inventario.

Descripcin de los usuarios Nombre Empleado Representa Persona encargada de prestar los servicios de la tienda Actividades Registrar ventas, alquileres, reservas, devolucin, as

como gestionar clientes Cliente Persona que hace uso de los servicios de la tienda incluye a los afiliados como a los no Consumidor principal de los servicios prestados

afiliados

Funcionalidades del sistema (Casos de Uso). Afiliar y desafilar clientes. Reserva, alquiler, venta de pelculas. Gestionar el pago con tarjeta de crdito. Devolver de forma automtica las pelculas, mediante un buzn mecnico. Actualizar de manera automtica del inventario.

En posteriores iteraciones, es posible identificar ms actores, as como tambin otras funcionalidades, esto slo representa un punto de partida. Sin embargo, con este boceto inicial, se tienen respuestas a algunas de las interrogantes planteadas, para obtener el primer objetivo de esta fase: entender qu se va construir. Otra cosa a hacer en este punto, es definir una arquitectura candidata. Para el escenario planteado se podra proponer una arquitectura que divida el trabajo del sistema en cuatro capas, como:

Capa de Interfaz de Usuario: En esta capa estarn todos los componentes relacionados con el diseo, captura de datos, validacin de datos e inicio de sesin. Capa de Controlador de Interfaz: En esta capa se encuentran todos los componentes que toman decisiones sobre el flujo de eventos, dependiendo de las solicitudes de

los usuarios del sistema (llmese solicitud a cualquier tarea que se le pide al sistema ejecutar de manera automtica o no, desde consultas hasta actualizar el inventario), aqu estn los componentes que determinan qu otros componentes atendern una solicitud especfica. Por ejemplo, pagar con tarjeta de crdito o actualizar inventario.

Capa de Lgica de Negocios: Se encuentran todas las entidades (clases) que fueron definidas para implementar las funcionalidades (comportamiento) del sistema, segn: requerimientos, alcance del sistema y polticas de la empresa.

Capa de Acceso a Datos: Aqu se encuentran los componentes dedicados a establecer la conexin con las bases de datos asociadas al sistema. Estos componentes son responsables de establecer los privilegios de los usuarios que intentan acceder a la informacin de la BD. Se encuentran tambin en esta capa, las BD definidas para el sistema.

Una representacin grfica para lo anterior se muestra en la Figura N 4:

Figura N 4: Arquitectura Candidata del Ejemplo

Algunos de los riesgos que podran identificarse a primera vista en este desarrollo son:

El software interno de los terminales remotos de la tienda y el software del buzn, no son compatibles con el sistema a desarrollar. La red para intercambio de informacin entre el banco y la tienda es inestable. El costo asociado a la compra e instalacin del buzn y los terminales es muy alto. La seguridad y estabilidad en el intercambio de informacin entre sucursales. Esta es una lista inicial de riesgos, conforme se avance hacia el producto final pueden identificarse ms riesgos. Esto representa una pequea parte de toda la informacin a obtener de esta fase, luego de sus respectivas iteraciones. Toda esta informacin es agrupada en el documento de visin, tambin se deben registrar en este las fechas de cada una de las modificaciones realizadas en las diferentes iteraciones. En las subsiguientes fases se refinar esta informacin y se generar ms. En la fase de inicio se obtienen muchos detalles esenciales como lo son: la visin, arquitectura candidata, la identificacin de los usuarios tpicos, etc. Pero stos, slo son bocetos, los cuales sern refinados y algunos de ellos validados en la siguiente fase: La fase de elaboracin. 4. Fase de elaboracin La meta de la fase de elaboracin

es definir y establecer la fase de la

arquitectura del sistema, brindando as una base estable para la mayor parte del esfuerzo de diseo e implementacin en la fase de construccin. Esta meta general se traduce en cuatro objetivos importantes, cada uno trata un rea importante del riesgo. Se manejan riesgos asociados con los requerimientos y con la arquitectura. Tambin se manejan los riesgos asociados con los costos, cronogramas y finalmente se necesita manejar los relacionados al proceso y al

ambiente de desarrollo. Manejar estos riesgos asegura un mnimo de riesgos y problemas cuando se pase a la fase de construccin.

Objetivo de la Fase Los cuatros objetivos de la fase son: Obtener un entendimiento ms detallado de los requerimientos.

Durante la fase de elaboracin, se desea tener un buen entendimiento de la gran mayora de los requerimientos, ya que estos fueron descritos brevemente

durante la fase de inicio. Esto permite crear un plan ms detallado. Finalmente, ganar un entendimiento ms amplio de los requerimientos ms crticos, para validar que la arquitectura cubra todas las bases, algo que solo puede alcanzarse construyendo una implementacin parcial de estos requerimientos. Disear, implementar, validar la arquitectura base. La funcionalidad del sistema no estar completa, pero la mayora de las interfaces entre los bloques de construccin son elaboradas durante la fase de

elaboracin, para poder compilar y probar la arquitectura. A esto se le denomina Arquitectura Ejecutable hasta el punto que se puede (y debe) conducir una carga inicial de datos y ejecutar pruebas sobre la arquitectura. Mitigar los riesgos significativos, producir un cronograma ms exacto y estimar lo costo. Durante esta fase, se manejan los riesgos significativos. La mayora sern manejados como el resultado detallado de los requerimientos y el diseo,

implementacin y prueba de la arquitectura. Al final de esta fase, se tendr informacin ms exacta, que permitir actualizar el cronograma, plan de proyecto y la estimacin de costo. Refinar el caso de desarrollo y configurar el ambiente de desarrollo. Se refina el proceso definido en la fase de inicio, para reflejar lo aprendido en las iteraciones previas. En esta fase, se establece un ambiente de soporte. Se define que herramienta de desarrollo sern necesaria y qu otras tendrn que ser y configura el ambiente establecido, el

actualizadas o descartadas. Se instala conjunto de todas las herramientas

seleccionadas, repositorios, entorno de

desarrollo, servidores y herramienta graficas entre otros. Algunas de las actividades ejecutadas en esta fase se muestran en la siguiente figura:

Figura N 5: Actividades y Artefactos de la Fase de Elaboracin.

Iteraciones de la fase de elaboracin. Si se tiene que construir un sistema con la misma tecnologa que se est usando en el proyecto actual, entonces se puede alcanzar este objetivo con una simple iteracin porque hay una cantidad limitada de riesgo que dirigir. Se pueden usar soluciones del pasado y as progresar rpidamente. Pero si hay inexperiencia en el dominio de la aplicacin, si el sistema es muy complejo o si se est usando nueva tecnologa, entonces se necesitarn dos o tres iteraciones, para obtener la arquitectura correcta y mitigar los riesgos, otros factores que determinarn si se requieren mltiples iteraciones son: Desarrollar un sistema distribuido. Muchas persona involucradas en el proyecto (stakeholders). La necesidad de cumplir con regulacin de seguridad y otros externos. estndares

Hitos: Arquitectura del ciclo de vida. En este punto se examina en detalle el alcance y los objetivos del sistema, la seleccin de la arquitectura y la resolucin de la mayora de los riesgos. Si el

proyecto falla en encontrar este hito, debe ser abortado o por lo menos seriamente reconsiderado. La revisin del hito del ciclo de vida de la arquitectura incluye evaluar criterios como: Son estables la visin y los requerimientos del producto? Es estable la arquitectura? Se tiene una prueba de los prototipos ejecutables, que demuestre que la mayora de elementos de riesgos han sido manejados y resueltos? Son planes de iteracin para la construccin lo suficientemente detallados y fiables para permitir iniciar el trabajo? Estn de acuerdo con la visin actual todos los datos involucrados en el proyecto, tal como se defini en el documento de la visin? Son aceptables los gastos actuales planeados? Hasta este punto se han implementado parte del sistema para verificar que se est en el camino correcto. Ahora, se procede a complementar las funcionalidades del sistema para obtener una versin completa del mismo. 5. Fase de construccin La fase de construccin de recursos versus los gastos

se enfoca de forma detallada en el diseo,

implementacin y prueba hasta lograr un sistema completo, con una alta calidad a un costo efectivo. La meta de esta fase, es resolver los requerimientos restantes y completar el desarrollo del sistema sobre la arquitectura base. A esta altura del desarrollo muchos casos de usos no han sido implementados del todo, solo parcialmente o lo suficiente para probar algunas hiptesis y mitigar riesgos. Segn se implemente ms y ms funcionalidad, se refinarn los requerimientos para asegurar que la funcionalidad correcta ser entregada, buscando un balance entre calidad, alcance, tiempo y el refinar caractersticas. Por eso, est fase es tpicamente la que ms tiempo consume.

Objetivos de la Fase Los objetivos que se desarrollan en la fase de construccin son:

Minimizar los costo de desarrollo por medio de la optimizacin de recursos, evita el trabajo innecesario. Alcanzar cierto grado de paralelismo entre equipos. Este paralelismo puede acelerar el desarrollo de actividades significativas, pero tambin puede incrementar la complejidad de la administracin de recursos y la sincronizacin del flujo de trabajo. Desarrollar iterativa e incrementalmente un producto completo que est listo para la transicin a la comunidad de usuario. Para asegurar el progreso continuo y xito de la fase, pueden tenerse en cuenta algunos aspectos como: Crear un equipo con una misin. Fijar metas claras y alcanzables para los desarrolladores. Hacer demostraciones y pruebas continuas del cdigo, medir el progreso principalmente observando que el cdigo es compilado y probado. Forzar la integracin continua, ejecutar frecuentemente construcciones (de todo el programa o cdigo) asegurando pruebas de integracin de forma frecuente. Completar el anlisis, diseo, desarrollo y prueba, de toda la funcionalidad requerida. Crear versiones tiles, alpha, beta u otras pruebas de liberacin del producto.

Figura N 6: Actividades y Artefactos de la Fase de Construccin

Iteracin de la fase El nmero de iteraciones necesarias para la fase de construccin, varia de un proyecto a otro pero en la mayora de los casos, tiene ms iteraciones que otras fases (de tres o cuatro). La necesidad de una iteracin adicional de la fase de construccin, puede ser determinada al identificar cules componente necesitan colaborar entre s para

proveer la funcionalidad de los casos de uso identificados. Estos componentes deben ser implementados y probados en cada iteracin, hasta que todo el cdigo pueda ser probado como una unidad, esto ofrece un mejor entendimiento del tiempo requerido para implementar los casos de uso, basndose en los recursos

disponibles y el alcance del trabajo. En cada iteracin se necesita un plan de integracin, que especifique cules capacidades se deberan probar en cada construccin y cuales componentes

necesitan integrarse para producir la funcionalidad requerida.

Hito: Capacidad operacional La fase de construccin termina con el hito de la capacidad operacional inicial, usado para determinar cundo el producto est listo para ser publicado en una prueba beta del ambiente, que pueda responder preguntas como: Es el producto publicado lo suficientemente estable para ser liberado a la comunidad de usuario? estn lista todas las personas involucradas en el proyecto para la transicin a la comunidad de usuario? Son aceptables los gastos actuales de recursos versus los gastos planeados? Una vez obtenida una versin funcional del producto, se sigue a la fase que determinar, si la transicin de dicha versin, es hacia otro ciclo de desarrollo o est dirigida a los usuarios finales del producto.

6. Fase de transicin Esta fase se enfoca en asegurar que el software est listo para los usuarios finales. En la fase de transicin, puede extenderse algunas iteraciones, incluyendo las pruebas del producto dentro de la preparacin para su publicacin y el hacer los ajustes menores basados en la retroalimentacin de los usuarios debera enfocarse principalmente en la entonacin, configuracin, instalacin y resultados de reutilizacin. La fase de transicin en el enfoque de RUP, difiere del desarrollo tradicional, principalmente porque se entra a esta fase con una versin del sistema estable, integrada y probada.

Objetivo de la fase de transicin Al final de la fase de transicin los objetivos del ciclo de vida deben haber sido alcanzados y el proyecto debera estar en posicin de ser cerrado. El fin del actual ciclo de vida puede coincidir con el inicio de otro ciclo de vida, sobre el mismo producto, dirigindose a la prxima generacin o versin del producto. Los principales objetivos de esta fase incluyen: Una prueba beta, para validar el nuevo sistema contra las expectativas del nuevo usuario y la operacin en paralelo con los sistemas heredados que el sistema que reemplazar. Entrenar a los usuarios y a las personas encargadas de mantener el sistema, para alcanzar la adopcin exitosa del mismo. Distribucin del producto, que implica aspectos tales como, el

empaquetamiento y produccin comercial del software, fuerza de ventas, publicidad, distribucin, actividades que ayudan a un lanzamiento exitoso del producto (ingeniera de publicacin). Alcanzar un consenso con todas las personas involucradas en el proyecto, en el que la base para la publicacin est completa y es consistente con el criterio de evaluacin de la visin. En la siguiente se presentan algunas actividades desempeadas para

alcanzar los objetivos de esta fase, junto algunos de los artefactos trabajados

durante la fase de transicin. Es importante recordar que muchos artefactos persisten entre las fases, siendo objetos de refinamientos, tal es el caso de la visin, la lista de riesgo, la suite de pruebas para el producto final; entre otros.

Figura N 7: Actividades y Artefactos de la Fase de Transicin.

La fase de transicin y las iteraciones En la fase de transicin el nmero de iteraciones, puede variar de algo muy directo a algo extremadamente complejo, dependiendo del producto. Por ejemplo, una nueva versin de un producto de escritorio, ya existente puede ser muy simple requiriendo simplemente la correccin de algunos errores (bugs) menores, que se pueden realizar una iteracin. Sin embargo, se necesitan ms iteraciones si se van a agregar caractersticas adicionales al producto y se va integrar a otros sistemas. Las actividades ejecutadas en las iteraciones de transicin dependen de las metas que se quieran alcanzar. La mayora de proyectos tienen una iteracin en la fase de transicin.

Transicin y ciclo de desarrollo. Un ciclo de desarrollo, es un paso a travs de las cuatro fases: inicio, elaboracin, construccin y transicin. Al final de la fase de transicin se ha

complementado un ciclo de desarrollo. Cada ciclo de desarrollo produce una generacin de software. A menos que el proyecto sea cancelado, est evolucionar dentro de la siguiente generacin (secuencia de fases), pero con nfasis diferentes segn las nuevas metas de proyecto requeridas. Estas sub-secuencias son

llamadas ciclo de evolucin. Dos ciclos de desarrollo pueden solaparse, esto se da cuando la fase de inicio del siguiente ciclo de desarrollo, se inicia durante la fase de transicin del actual ciclo de desarrollo, se tiene la libertad de decidir si solapar o no dos ciclos de desarrollo, adems de establecer el tamao de dicho solapamiento. El tamao del solapamiento, lo dar el momento de la fase de transicin actual, en el cual se decida comenzar el siguiente ciclo de desarrollo. Se debe tomar en cuenta que esto agrega una cantidad considerable de complejidad del proceso, lo que requiere un grado de madurez en la organizacin de procesos de desarrollos, administracin de procesos. con una avanzada configuracin de

Figura N 8: Solapamiento de los Ciclos de Desarrollo

Hito Versin del Producto El hito que marca el final de la fase de transicin es el hito de la versin del producto (product release), donde se decide si los objetivos de los proyectos fueron alcanzados y s es necesario comenzar otro ciclo de desarrollo. En ste punto, inicia un proceso de mantenimiento, operacin y soporte. Esto puede involucrar el

comienzo de un nuevo ciclo de desarrollo, para obtener una versin adicional de mantenimiento y resolver algunos problemas encontrados. Llegado la fase de transicin, se deberan responder las siguientes preguntas: Estn los usuarios satisfechos?

Los recursos gastados actualmente versus los gastos planeados son aceptables? Si las respuesta es no, debera hacerse la pregunta siguiente: Qu acciones pueden tomarse en un futuro para manejar este resultado?

8. QUIENES DEBEN USAR EL RUP


RUP es la metodologa indicada para el desarrollo y publicacin de proyecto de software crticos dentro de una organizacin. Esta metodologa fue desarrollada pensando en dos tipos de usuarios: 1. Desarrolladores de Software, que trabajan como parte de un equipo de desarrollo de software. 2. Personas que practican la ingeniera de procesos, especficamente los

gerentes e ingenieros de procesos de software. Los desarrolladores de software pueden encontrar en RUP una gua, sobre qu es lo requerido en su rol (o de ellos como desarrolladores) en la definicin de roles. Esta gua tambin proporciona el cmo, cada unos de estos roles colaboran entre si, en trminos de trabajos detallado que es requerido para establecer el flujo de trabajo dentro de una iteracin. Los desarrolladores pueden encontrar la orientacin, ayuda sobre definiciones, configuracin e implementacin de ingeniera de procesos.

9. CUANDO USAR RUP


RUP puede ser utilizado desde el principio de un proyecto de software y puede continuar usndose en los subsecuentes ciclos de desarrollo de software despus que la fase inicial ha finalizado. Sin embargo, la manera en la cual se use RUP, necesite ser transformada para ajustarse a las necesidades. Existen algunas consideraciones que modifican el cundo y cmo se utilizarn las diferentes parte de RUP, estas son: El ciclo de vida del proyecto (nmero de iteracin, longitud de cada fase, el largo del proyecto) Los objetivos del negocio del proyecto, visin, alcances y riesgo.

El tamao del esfuerzo para el desarrollo del software.

10. GUA DE HERRAMIENTAS


A. Relational Administrator

Esta herramienta centraliza la gestin de un proyecto de Administrador, y gestiona la asociacin de los almacenes de datos de Rational con los usuarios y los grupos de Rational Test. Descripcin Principal El Administrador de Rational de IBM centraliza la gestin de un proyecto de Rational Administrator, y gestiona la asociacin de los almacenes de datos de Rational con los usuarios y los grupos de Rational Test. Utilice Rational Administrator para crear un proyecto, conectar a un proyecto, crear un almacn de datos de prueba, crear una integracin entre productos de prueba y Rational RequisitePro, crear una base de datos de Rational ClearQuest integrada y convertir versiones anteriores del depsito en un proyecto nuevo. B. Rational Application Develope

Rational Application Developer es un entorno de desarrollo integrado para la creacin, prueba y despliegue de aplicaciones J2EE, servicios web y Portal. Ofrece un conjunto global de herramientas para promocionar el desarrollo acelerado de aplicaciones e incrementar la productividad de los desarrolladores. Descripcin Principal La aplicacin IBM Rational Application Developer es un entorno de desarrollo integrado global, con soporte completo para el modelo de programacin de J2EE que incluye desarrollo de web, Javatm, servicios web y EJB, que acelera el desarrollo de aplicaciones. Con el desarrollo de Portal integrado, la edicin visual de UML, el anlisis del cdigo y las herramientas automatizadas de prueba y despliegue, Rational Application Developer contiene todo lo que necesitan los desarrolladores para ser productivos y para asegurarse de que el cdigo est bien diseado, es

escalable y est listo para la produccin. El control de versiones incorporadas y las herramientas del equipo permiten a los desarrolladores trabajar en proyectos complejos o en grandes equipos para coordinar la creacin de versiones y proteger los activos de los equipos. C. Rational ClearCase

Esta familia de productos ofrece una solucin de gestin de la configuracin. Descripcin Principal Gestin de cambios y configuracin Instrucciones de la Herramienta:

Establecimiento del modelo de implementacin utilizando Rational ClearCase Establecimiento del modelo de implementacin con UCM utilizando Rational ClearCase

Creacin de varios sitios utilizando Rational ClearCase Enlace de la gestin de la configuracin y la gestin de solicitudes de cambio utilizando Rational ClearQuest y Rational ClearCase

Adicin de elementos al control de origen utilizando Rational ClearCase Actualizacin del rea de trabajo del proyecto utilizando Rational ClearCase Entrega del trabajo utilizando Rational ClearCase Utilizacin de conjuntos de cambios de UCM con Rational ClearCase Creacin de un espacio de trabajo de compilacin e integracin utilizando Rational ClearCase

Creacin de un espacio de trabajo de desarrollo utilizando Rational ClearCase Creacin de lneas base utilizando Rational ClearCase Promocin de lneas base de proyectos utilizando Rational ClearCase

Comparacin de lneas base utilizando Rational ClearCase Establecimiento de polticas utilizando Rational ClearCase Extraccin e incorporacin de elementos de configuracin utilizando Rational ClearCase Establecimiento del modelo de implementacin utilizando Rational ClearCase

En esta gua de la herramienta se describe cmo establecer el directorio de modelo de implementacin utilizando Rational ClearCase. Establecimiento del modelo de implementacin con UCM utilizando Rational ClearCase En esta gua de la herramienta se describe cmo establecer un entorno de gestin de la configuracin con UCM (Gestin unificada de cambios. Creacin de varios sitios utilizando Rational ClearCase En esta gua de la herramienta se describen las ventajas que ofrece el uso del producto Rational ClearCase MultiSite. Enlace de la gestin de la configuracin y la gestin de solicitudes de cambio utilizando Rational ClearQuest y Rational ClearCase. En esta gua de la herramienta se describe cmo permitir la utilizacin de Rational ClearQuest con proyectos UCM (Gestin unificada de cambios). Adicin de elementos al control de origen utilizando Rational ClearCase. En esta gua de la herramienta se describe cmo aadir elementos al control de origen utilizando Rational ClearCase. Actualizacin del rea de trabajo del proyecto utilizando Rational ClearCase. En esta gua de la herramienta se describe cmo actualizar reas de trabajo de desarrollo con trabajo que se ha integrado, probado y aprobado para uso general con Rational ClearCase.

Entrega del trabajo utilizando Rational ClearCase. En esta gua de la herramienta se describe cmo entregar cambios con Rational ClearCase utilizando la operacin de entrega de UCM (Gestin unificada de cambios). Utilizacin de conjuntos de cambios de UCM con Rational ClearCase. En esta gua de la herramienta se describe cmo utilizar conjuntos de cambios con actividades UCM (Gestin unificada de cambios) para crear y registrar cambios. Creacin de un espacio de trabajo de compilacin e integracin utilizando Rational ClearCase. En esta gua de la herramienta se describe cmo crear un espacio de trabajo de compilacin e integracin utilizando Rational ClearCase.

Creacin de un espacio de trabajo de desarrollo utilizando Rational ClearCase En esta gua de la herramienta se describe cmo crear un espacio de trabajo privado utilizando Rational ClearCase para el trabajo individual. Creacin de lneas base utilizando Rational ClearCase. En esta gua de la herramienta se describe cmo asegurarse de que los activos del proyecto estn protegidos y se pueden recrear, segn sea necesario, a travs de prcticas de creacin de lneas base adecuadas. Promocin de lneas base de proyectos utilizando Rational ClearCase. En esta gua de la herramienta se describe cmo asignar niveles de promocin a lneas base utilizando UCM (Gestin unificada de cambios) de Rational ClearCase. Comparacin de lneas base utilizando Rational ClearCase. En esta gua de la herramienta se describe cmo comparar dos lneas base de un componente UCM con el navegador del rbol de componentes de Rational ClearCase.

Establecimiento de polticas utilizando Rational ClearCase. En esta gua de la herramienta se describe cmo establecer polticas de proyecto con UCM (Gestin unificada de cambios) de Rational ClearCase. Extraccin e incorporacin de elementos de configuracin utilizando Rational ClearCase. En esta gua de la herramienta se describe cmo crear una nueva versin de un elemento de configuracin (extraer) y cmo convertir la nueva versin del elemento de configuracin en permanente en la base de datos de gestin de la configuracin (incorporar). D. Rational ClearQuest.

Esta herramienta es un sistema de gestin de las solicitudes de cambios y de seguimiento de defectos. Instrucciones de la Herramienta

Informe de tendencias de defectos y estado utilizando Rational ClearQuest. Creacin de varios sitios utilizando Rational ClearQuest. Informe del estado de trabajo y revisin utilizando Rational ClearQuest. Cambio de estados de una solicitud de cambio utilizando Rational ClearQuest. Establecer un proceso de solicitudes de cambio utilizando Rational ClearQuest.

Definicin de notificaciones de cambio y revisin utilizando Rational ClearQuest.

Visualizacin del historial de un defecto utilizando Rational ClearQuest. Envo de solicitudes de cambio utilizando Rational ClearQuest. Cmo trabajar con consultas utilizando Rational ClearQuest.

Cmo trabajar con grficos utilizando Rational ClearQuest. Informe de tendencias de defectos y estado utilizando Rational ClearQuest.

En esta gua de la herramienta se describe cmo crear un grfico de Rational ClearQuest para ver tendencias de defectos y generar un informe de estado de defectos. Creacin de varios sitios utilizando Rational ClearQuest. En esta gua de la herramienta se describen las ventajas que ofrece el uso del producto Rational ClearQuest MultiSite. Informe del estado de trabajo y revisin utilizando Rational ClearQuest. El objetivo de esta gua de la herramienta es explicar cmo utilizar Rational ClearQuest para revisar el estado del trabajo. Cambio de estados de una solicitud de cambio utilizando Rational ClearQuest. En esta gua de la herramienta se describe cmo cambiar el estado de una solicitud de cambio utilizando Rational ClearQuest. Establecer un proceso de solicitudes de cambio utilizando Rational ClearQuest. Este mentor de herramienta describe cmo utilizar Rational ClearQuest para establecer un proceso de solicitud de cambio. Definicin de notificaciones de cambio y revisin utilizando Rational ClearQuest. En esta gua de la herramienta se explica cmo establecer Rational ClearQuest para notificar a los usuarios o grupos de usuarios cuando cambia el estado de una solicitud de cambio. Visualizacin del historial de un defecto utilizando Rational ClearQuest. En esta gua de la herramienta se describe cmo el administrador de Rational ClearQuest puede establecer el formulario de defectos de ClearQuest para incluir

control de historial. Envo de solicitudes de cambio utilizando Rational ClearQuest. En esta gua de la herramienta se describe cmo enviar una solicitud de cambio o defecto utilizando Rational ClearQuest. Elementos Relacionados:

Actualizar solicitud de cambio. Establecer el proceso de control de cambios. Confirmar las CR duplicadas o rechazadas. Enviar una solicitud de cambio. Analizar las anomalas en la prueba. Determinar resultados de prueba. Actualizar solicitud de cambio.

En esta tarea se define quin puede realizar cambios en una solicitud de cambio y cmo hacerlo.

Objetivo Un administrador de CCB designado o el propietario asignado de una solicitud de cambio puede realizar actualizaciones en el formulario de CR para indicar su estado actual as como cualquier otra informacin pertinente. Establecer el proceso de control de cambios. En esta tarea se describe cmo crear un proceso de control de cambios.

Objetivo El objetivo de disponer de procesos de control de cambios estandarizados y documentados es el de garantizar que los cambios se han realizado en un proyecto de forma coherente y que se ha informado a los interesados del estado del producto, de los cambios efectuados en el mismo y del impacto de esos cambios en el coste y

la planificacin. Confirmar las CR duplicadas o rechazadas. En esta tarea se describe cmo verificar que se debe rechazar una CR o etiquetar como duplicada. Objetivo Se debe asignar un administrador del CCB designado para confirmar la sospecha de que una solicitud de cambio est duplicada o no es vlida. Enviar una solicitud de cambio. En esta tarea se describe cmo crear una solicitud de cambio. Objetivo Esta tarea registra un cambio solicitado. Las solicitudes de cambio pueden incluir solicitudes de nuevas caractersticas, mejoras, correcciones, requisitos modificados, etc. Cualquier rol puede enviar una solicitud de cambio como parte de una tarea durante el ciclo vital del proyecto. Analizar las anomalas en la prueba. Esta tarea tiene como objeto localizar, aislar y diagnosticar anomalas de la prueba y documentarlas de forma eficaz. Objetivo

Investigar los detalles del registro de prueba y analizar las anomalas que se han producido durante la implementacin y ejecucin de la prueba.

Corregir las anomalas producidas como consecuencia de los errores en el procedimiento de prueba.

Registrar de forma apropiada los resultados importantes. Determinar resultados de prueba.

En esta tarea se describe cmo registrar de forma precisa los resultados de la prueba y qu tipo de seguimiento es necesario.

Objetivos

Realizar evaluaciones continuas del resumen de la calidad percibida del producto.

Identificar y capturar los resultados detallados de la prueba. Proponer las acciones correctivas adecuadas para resolver anomalas en la calidad. Cmo trabajar con consultas utilizando Rational ClearQuest.

En esta gua de la herramienta se describe cmo utilizar consultas para recuperar registros de una base de datos de ClearQuest utilizando Rational ClearQuest. Cmo trabajar con grficos utilizando Rational ClearQuest. En esta gua de la herramienta se describe cmo crear y utilizar grficos para analizar los resultados de una consulta utilizando Rational ClearQuest.

E. Rational Method Composer.

Rational Method Composer es la herramienta de autora de mtodo de ltima generacin de IBM Rational para la autora, gestin y publicacin en web de la gua del mtodo. Instrucciones de la Herramienta

Creacin de una configuracin del mtodo utilizando Rational Method Composer.

Creacin de un plug-in de mtodo utilizando Rational Method Composer. Desarrollo de procesos utilizando Rational Method Composer. Desarrollo de contenido del mtodo utilizando Rational Method Composer. Navegacin por el contenido del mtodo utilizando Rational Method Composer.

Exportacin de procesos a una herramienta de planificacin utilizando Rational Method Composer.

Publicacin de una configuracin del mtodo utilizando Rational Method Composer. Creacin de una configuracin del mtodo utilizando Rational Method Composer.

En esta gua de la herramienta se describe cmo crear una configuracin del mtodo utilizando Rational Method Composer. Elementos Relacionados:

Preparar directrices para el proyecto. Preparar plantillas para el proyecto. Personalizar el proceso de desarrollo para el proyecto. Preparar directrices para el proyecto:

En esta tarea se describe cmo preparar directrices especficas del proyecto. Objetivos:

Recopilar directrices existentes o desarrollar directrices nuevas que utilizar el proyecto.

Hacer que las directrices existentes sean accesibles a los miembros del proyecto cuando se necesiten.

Trabajar con expertos en el tema para actualizar estas directrices en funcin de los comentarios facilitados por los consumidores. Preparar plantillas para el proyecto

En esta tarea se describe cmo preparar plantillas especficas del proyecto Objetivos:

Recopilar plantillas existentes o desarrollar plantillas nuevas que utilizar el proyecto.

Preparar las plantillas que se utilizarn en el proyecto creando parcialmente instancias de las mismas con la informacin especfica del proyecto.

Hacer que las plantillas existentes sean accesibles a los miembros del proyecto cuando se necesiten.

Trabajar con productores de artefactos para incorporar sugerencias de mejora. Personalizar el proceso de desarrollo para el proyecto.

En esta tarea es donde se personaliza un proceso de desarrollo para cumplir las necesidades especficas del proyecto. Objetivos:

Adaptar el tamao del proceso de desarrollo de software segn las necesidades especficas del proyecto.

Proporcionar una orientacin relevante del proceso para que los miembros del proyecto puedan realizar su trabajo de forma eficaz y con una calidad aceptable.

Proporcionar una descripcin del proceso relevante y accesible para los miembros del proyecto. Creacin de un plug-in de mtodo utilizando Rational Method Composer.

En esta gua de la herramienta se describe cmo crear un plug-in de mtodo utilizando Rational Method Composer. Elementos Relacionados

Preparar directrices para el proyecto. Preparar plantillas para el proyecto. Personalizar el proceso de desarrollo para el proyecto. Preparar directrices para el proyecto.

En esta tarea se describe cmo preparar directrices especficas del proyecto.

Objetivos:

Recopilar directrices existentes o desarrollar directrices nuevas que utilizar el proyecto.

Hacer que las directrices existentes sean accesibles a los miembros del proyecto cuando se necesiten.

Trabajar con expertos en el tema para actualizar estas directrices en funcin de los comentarios facilitados por los consumidores. Preparar plantillas para el proyecto.

En esta tarea se describe cmo preparar plantillas especficas del proyecto. Objetivos:

Recopilar plantillas existentes o desarrollar plantillas nuevas que utilizar el proyecto.

Preparar las plantillas que se utilizarn en el proyecto creando parcialmente instancias de las mismas con la informacin especfica del proyecto.

Hacer que las plantillas existentes sean accesibles a los miembros del proyecto cuando se necesiten.

Trabajar con productores de artefactos para incorporar sugerencias de mejora. Personalizar el proceso de desarrollo para el proyecto.

En esta tarea es donde se personaliza un proceso de desarrollo para cumplir las necesidades especficas del proyecto. Objetivos:

Adaptar el tamao del proceso de desarrollo de software segn las necesidades especficas del proyecto.

Proporcionar una orientacin relevante del proceso para que los miembros del proyecto puedan realizar su trabajo de forma eficaz y con una calidad aceptable.

Proporcionar una descripcin del proceso relevante y accesible para los miembros del proyecto. Desarrollo de procesos utilizando Rational Method Composer.

En esta gua de la herramienta se describe cmo desarrollar procesos utilizando Rational Method Composer, donde un proceso puede ser un Patrn de posibilidad o un Proceso de entrega. Desarrollo de contenido del mtodo utilizando Rational Method Composer. En esta gua de la herramienta se describe cmo desarrollar elementos de contenido del mtodo como, por ejemplo, roles, tareas, productos de trabajo y guas. En esta gua de la herramienta se describe cmo crear nuevo contenido del mtodo, adaptar contenido del mtodo existente y reemplazar contenido del mtodo existente. Navegacin por el contenido del mtodo utilizando Rational Method Composer. En esta gua de la herramienta se describe cmo navegar por el contenido del mtodo utilizando Rational Method Composer. Elementos Relacionados

Preparar directrices para el proyecto. Preparar plantillas para el proyecto. Personalizar el proceso de desarrollo para el proyecto. Preparar directrices para el proyecto.

En esta tarea se describe cmo preparar directrices especficas del proyecto. Objetivos:

Recopilar directrices existentes o desarrollar directrices nuevas que utilizar el proyecto.

Hacer que las directrices existentes sean accesibles a los miembros del proyecto cuando se necesiten.

Trabajar con expertos en el tema para actualizar estas directrices en funcin de los comentarios facilitados por los consumidores. Preparar plantillas para el proyecto.

En esta tarea se describe cmo preparar plantillas especficas del proyecto. Objetivos:

Recopilar plantillas existentes o desarrollar plantillas nuevas que utilizar el proyecto.

Preparar las plantillas que se utilizarn en el proyecto creando parcialmente instancias de las mismas con la informacin especfica del proyecto.

Hacer que las plantillas existentes sean accesibles a los miembros del proyecto cuando se necesiten.

Trabajar con productores de artefactos para incorporar sugerencias de mejora. Personalizar el proceso de desarrollo para el proyecto.

En esta tarea es donde se personaliza un proceso de desarrollo para cumplir las necesidades especficas del proyecto. Objetivos:

Adaptar el tamao del proceso de desarrollo de software segn las necesidades especficas del proyecto.

Proporcionar una orientacin relevante del proceso para que los miembros del proyecto puedan realizar su trabajo de forma eficaz y con una calidad aceptable.

Proporcionar una descripcin del proceso relevante y accesible para los miembros del proyecto. Exportacin de procesos a una herramienta de planificacin utilizando Rational Method Composer.

En esta gua de la herramienta se describe cmo exportar un proceso a una herramienta de planificacin utilizando Rational Method Composer.

Elementos Relacionados:

Planificar fases e iteraciones. Desarrollar el plan de iteracin. Personalizar el proceso de desarrollo para el proyecto. Planificar fases e iteraciones.

En esta tarea se describe cmo planificar las fases e iteraciones del proyecto: cules son los objetivos, cul es la duracin, cuntas iteraciones se realizan, etc. Objetivos:

Calcular el mbito, el esfuerzo y el coste total del proyecto. Desarrollar un plan sin detallar para el proyecto, centrado en los objetivos principales y los entregables claves del ciclo vital del producto.

Definir un conjunto de iteraciones dentro de las fases del proyecto e identificar los objetivos de cada una de estas iteraciones.

Desarrollar la planificacin y el presupuesto del proyecto. Desarrollar un plan de recursos para el proyecto. Definir las tareas para la terminacin ordenada del proyecto. Desarrollar el plan de iteracin.

En esta tarea se describe cmo componer un plan de iteracin mediante la definicin de un mbito, criterios de evaluacin y actividades, y la asignacin de responsabilidades a la iteracin. Objetivos:

Una estructura de desglose de trabajo detallada de la tarea y las asignaciones de responsabilidad.

Objetivos y entregables dentro de la iteracin. Criterios de evaluacin de la iteracin.

Personalizar el proceso de desarrollo para el proyecto. En esta tarea es donde se personaliza un proceso de desarrollo para cumplir las necesidades especficas del proyecto. Objetivos:

Adaptar el tamao del proceso de desarrollo de software segn las necesidades especficas del proyecto.

Proporcionar una orientacin relevante del proceso para que los miembros del proyecto puedan realizar su trabajo de forma eficaz y con una calidad aceptable.

Proporcionar una descripcin del proceso relevante y accesible para los miembros del proyecto. Publicacin de una configuracin del mtodo utilizando Rational Method Composer.

En esta gua de la herramienta se describe cmo publicar una configuracin del mtodo como un sitio web utilizando Rational Method Composer.

F. Rational Project Console. La herramienta IBM(R) Rational(R) ProjectConsole(TM) ofrece funciones de mtrica, portal e informes web. Instrucciones de la Herramienta:

Examinar artefactos de proyectos utilizando Rational ProjectConsole. Adicin de plantillas de Rational Unified Process al rbol de navegacin de ProjectConsole.

Visualizacin de artefactos relacionados con objetos especficos de un diagrama utilizando Rational ProjectConsole. Examinar artefactos de proyectos utilizando Rational ProjectConsole.

En esta gua de la herramienta se describe cmo navegar en Rational

ProjectConsole utilizando productos de trabajo de ejemplo. Adicin de plantillas de Rational Unified Process al rbol de navegacin de ProjectConsole. En esta gua de la herramienta se describe cmo aadir plantillas de Rational Unified Process al rbol de navegacin de ProjectConsole. Visualizacin de artefactos relacionados con objetos especficos de un diagrama utilizando Rational ProjectConsole. En esta gua de la herramienta se describe cmo utilizar Rational ProjectConsole para navegar a artefactos concretos de un diagrama que muestra Rational ProjectConsole. G. Rational PurifyPlus Esta herramienta es una herramienta avanzada de diagnstico y depuracin de cdigo. Instrucciones de la Herramienta:

Anlisis del rendimiento de tiempo de ejecucin utilizando las herramientas de Rational PurifyPlus (Windows y UNIX).

Ejecucin de conjuntos de aplicaciones de prueba utilizando las herramientas de Rational PurifyPlus (Windows y UNIX). Anlisis del rendimiento de tiempo de ejecucin utilizando las herramientas de Rational PurifyPlus (Windows y UNIX).

En esta gua de la herramienta se describe la utilizacin de las herramientas de Rational PurifyPlus para conseguir cdigo libre de fugas y errores de memoria, adems de permitir la utilizacin eficaz de la memoria y facilitar un rendimiento ptimo. Ejecucin de conjuntos de aplicaciones de prueba utilizando las herramientas de Rational PurifyPlus (Windows y UNIX). En esta gua de la herramienta se describe la utilizacin de las herramientas de

Rational PurifyPlus en conjuntos de aplicaciones de prueba para detectar fugas y errores de memoria potencialmente dainos a fin de garantizar que las pruebas alcanzan un nivel de cobertura de cdigo aceptable y para llamar la atencin sobre los problemas de rendimiento. Elementos Relacionados:

Ejecutar pruebas de desarrollador. Ejecutar el conjunto de aplicaciones de prueba. Ejecutar pruebas de desarrollador.

En esta tarea se describe cmo ejecutar y evaluar un conjunto de pruebas diseadas para validar que el componente funciona correctamente antes de que se realicen ms pruebas formales en el componente. Objetivos:

Verificar la especificacin de una unidad. Verificar la estructura interna de una unidad. Ejecutar el conjunto de aplicaciones de prueba.

En esta tarea se describe cmo ejecutar las colecciones de pruebas necesarias para evaluar la calidad del producto y cmo capturar resultados de las pruebas que faciliten una valoracin continua del producto.

H. Rational QualityArchitect Esta herramienta es una potente ampliacin de las pruebas del sistema a Rational Rose. QualityArchitect mejora la robustez y la previsibilidad del software al validar la calidad del software en una etapa temprana del ciclo vital, en lugar de retrasarlo a la fase de prueba del sistema. Instrucciones de la herramienta

Implementacin de una prueba de componentes automatizada utilizando Rational QualityArchitect.

Implementacin de una prueba de componentes automatizada utilizando Rational QualityArchitect. En esta gua de la herramienta se proporciona una visin general de las tareas de prueba de unidad que se realizan con Rational QualityArchitect. Elementos Relacionados:

Implementar la prueba de desarrollador. Ejecutar pruebas de desarrollador. Implementar la prueba de desarrollador.

En esta tarea se describe cmo crear un conjunto de pruebas para comprobar que el componente funciona correctamente antes de que se realicen ms pruebas formales en l. Objetivos:

Implementar una o varias pruebas que permitan la validacin de los componentes de software individuales mediante la ejecucin fsica.

Desarrollar pruebas que se puedan ejecutar conjuntamente con otras pruebas como parte de una infraestructura de prueba mayor. Ejecutar pruebas de desarrollador.

En esta tarea se describe cmo ejecutar y evaluar un conjunto de pruebas diseadas para validar que el componente funciona correctamente antes de que se realicen ms pruebas formales en el componente. Objetivos:

Verificar la especificacin de una unidad. Verificar la estructura interna de una unidad.

I. Rational RequisitePro Esta herramienta ayuda a los equipos a organizar, priorizar, realizar seguimientos y controlar los cambios de requisitos de un sistema o aplicacin.

Instrucciones de la Herramienta:

Detalle de un guin de uso utilizando Rational RequisitePro. Gestin de dependencias utilizando Rational RequisitePro. Deduccin de solicitudes de los interesados utilizando Rational RequisitePro. Revisiones de requisitos utilizando Rational RequisitePro. Captura de un vocabulario comn utilizando Rational RequisitePro. Desarrollo de una visin utilizando Rational RequisitePro. Establecimiento de Rational RequisitePro para un proyecto. Adicin de plantillas al proyecto de Rational RequisitePro. Creacin de una lnea base de un proyecto de Rational RequisitePro. Archivado de requisitos utilizando Rational RequisitePro. Visualizacin del historial de requisitos utilizando Rational RequisitePro. Detailing a Business Use Case Using Rational RequisitePro. Identify Business Goals Using Rational RequisitePro. Creacin de un modelo de servicio-objetivo mediante RequisitePro. Detalle de un guin de uso utilizando Rational RequisitePro.

Este maestro herramienta describe cmo utilizar Rational RequisitePro para describir un caso de uso del sistema en detalle. Elementos Relacionados:

Detallar un guin de uso. Gestin de dependencias utilizando Rational RequisitePro.

En esta gua de la herramienta se describe cmo utilizar Rational RequisitePro para gestionar dependencias utilizando atributos de requisitos y rastreabilidad.

Deduccin de solicitudes de los interesados utilizando Rational RequisitePro. En esta gua de la herramienta se describe cmo utilizar Rational RequisitePro para deducir las solicitudes de los interesados. Revisiones de requisitos utilizando Rational RequisitePro. En esta gua de la herramienta se describe cmo utilizar Rational RequisitePro para facilitar revisiones de requisitos. Captura de un vocabulario comn utilizando Rational RequisitePro. En esta gua de la herramienta se describe cmo crear un vocabulario comn utilizando Rational RequisitePro. Desarrollo de una visin utilizando Rational RequisitePro. En esta gua de la herramienta se describe cmo utilizar Rational RequisitePro para documentar una visin del proyecto. El documento Visin es una sentencia general de los requisitos centrales del proyecto y proporciona la base contractual para los requisitos tcnicos. Establecimiento de Rational RequisitePro para un proyecto. En esta gua de la herramienta se describe cmo establecer Rational RequisitePro para un proyecto. Adicin de plantillas al proyecto de Rational RequisitePro. En esta gua de la herramienta se describe cmo utilizar documentos de Microsoft Word como plantillas para documentos en los proyectos de Rational RequisitePro. En RequisitePro, se hace referencia a las plantillas como "esquematizaciones" de documentos. Creacin de una lnea base de un proyecto de Rational RequisitePro. En esta gua de la herramienta se describe cmo crear una lnea base de requisitos utilizando Rational Administrator y Rational ClearCase. Archivado de requisitos utilizando Rational RequisitePro. En esta gua de la herramienta se describe cmo archivar requisitos utilizando

mandatos de archivado de Rational RequisitePro. Visualizacin del historial de requisitos utilizando Rational RequisitePro. En esta gua de la herramienta se explica cmo ver el historial de un requisito en Rational RequisitePro. Detailing a Business Use Case Using Rational RequisitePro. Esto es herramienta describe cmo utilizar Rational RequisitePro (R) para describir un caso de uso de negocio en detalle. Identify Business Goals Using Rational RequisitePro. Esto es una herramienta describe cmo utilizar Rational RequisitePro para registrar los resultados de la bsqueda de los objetivos de negocio. Creacin de un modelo de servicio-objetivo mediante RequisitePro. Este mentor de la herramienta muestra cmo se puede utilizar Rational RequisitePro para desarrollar un modelo de servicio-objetivo. J. Rational Robot Esta herramienta le permite crear, modificar y ejecutar pruebas funcionales automatizadas en sus aplicaciones. Instrucciones de la Herramienta

Implementacin de scripts de prueba utilizando Rational Robot. Ejecucin de conjuntos de aplicaciones de prueba utilizando Rational Robot. Creacin de un script de prueba de rendimiento automatizada utilizando Rational Robot.

Establecimiento del entorno de prueba en Rational Robot. Implementacin de scripts de prueba utilizando Rational Robot.

En esta gua de la herramienta se describe cmo utilizar Rational Robot para registrar o programar scripts de prueba, y cmo ampliarlos posteriormente editando los scripts de prueba.

Ejecucin de conjuntos de aplicaciones de prueba utilizando Rational Robot. En esta gua de la herramienta se describe cmo utilizar Rational Robot para ejecutar conjuntos de aplicaciones de prueba (reproduciendo uno o ms scripts de prueba) y para analizar los resultados de la ejecucin de la prueba. Creacin de un script de prueba de rendimiento automatizada utilizando Rational Robot. En esta gua de la herramienta se describe cmo utilizar Rational Robot para registrar un script de prueba de rendimiento automatizada para probar el rendimiento. Establecimiento del entorno de prueba en Rational Robot. En esta gua de la herramienta se describe cmo utilizar Rational Robot para establecer el entorno de prueba. Esta herramienta es una herramienta de desarrollo y modelado de componentes grficos basada en UML. Esta herramienta es una herramienta de desarrollo y modelado de componentes grficos basada en UML. Instruccin de la Herramienta:

Publicacin de modelos de Rational Rose basados en web utilizando el publicador de web.

Bsqueda de actores y guiones de uso utilizando Rational Rose. Detalle de un guin de uso utilizando Rational Rose. Estructuracin del modelo de guin de uso utilizando Rational Rose. Documentacin de la vista de proceso utilizando Rational Rose. Documentacin del modelo de despliegue utilizando Rational Rose. Diseo y modelado de bases de datos utilizando Rational Rose Data Modeler.

Captura de los resultados del anlisis de guin de uso utilizando Rational Rose.

Creacin de ejecuciones de guiones de uso utilizando Rational Rose. Gestin de clases utilizando Rational Rose. Gestin de diagramas de colaboracin utilizando Rational Rose. Gestin de diagramas de secuencia utilizando Rational Rose. Ingeniera inversa de cdigo utilizando Rational Rose. Gestin del modelo de diseo utilizando Rational Rose. Gestin de subsistemas utilizando Rational Rose. Gestin de interfaces utilizando Rational Rose. Generacin de elementos a partir de un modelo utilizando Rational Rose. Estructuracin del modelo de implementacin utilizando Rational Rose. Establecimiento de Rational Rose para un proyecto. Acceso a Rational ClearCase desde Rational Rose. Comparacin y fusin de modelos de Rational Rose utilizando el integrador de modelos.

Detailing Business Workers and Entities Using Rational Rose. Finding Business Workers and Entities Using Rational Rose. Detailing a Business Use Case Using Rational Rose. Finding Business Actors and Use Cases Using Rational Rose. Identify Business Goals Using Rational Rose. Structuring the Business Use-Case Model Using Rational Rose.

Modelado del diseo de una aplicacin J2EE en Rational Rose. Publicacin de modelos de Rational Rose basados en web utilizando el publicador de web.

En esta gua de la herramienta se describe cmo utilizar Rational Rose Web Publisher para crear una versin basada en web (HTML) de un modelo de Rose para que la visualicen los dems utilizando un navegador como, por ejemplo, Microsoft Internet Explorer o Netscape Navigator. Bsqueda de actores y guiones de uso utilizando Rational Rose. En esta gua de la herramienta se describe cmo utilizar Rational Rose para registrar los resultados de la bsqueda de actores y guiones de uso. Detalle de un guin de uso utilizando Rational Rose. En esta gua de la herramienta se describe cmo representar diagramas de actividad de un guin de uso en Rational Rose. Estructuracin del modelo de guin de uso utilizando Rational Rose. En esta gua de la herramienta se describe cmo utilizar Rational Rose para documentar relaciones entre actores y entre guiones de uso Documentacin de la vista de proceso utilizando Rational Rose. En esta gua de la herramienta se describe cmo representar la vista de proceso y los productos de trabajo relacionados en Rational Rose. Documentacin del modelo de despliegue utilizando Rational Rose. En esta gua de la herramienta se describe cmo representar el modelo de despliegue y artefactos relacionados en Rational Rose. Diseo y modelado de bases de datos utilizando Rational Rose Data Modeler. En esta gua de la herramienta se describe la creacin de un modelo de datos con Rational Rose Data Modeler. Tambin se proporciona informacin sobre la generacin de un nuevo esquema de base de datos o DDL a partir del modelo de datos de Rose y cmo revertir la ingeniera de una base de datos para crear un

modelo de datos. Captura de los resultados del anlisis de guin de uso utilizando Rational Rose. En esta gua de la herramienta se describe cmo representar los resultados del anlisis de guin de uso en Rational Rose. Creacin de ejecuciones de guiones de uso utilizando Rational Rose. En esta gua de la herramienta se describe cmo representar ejecuciones de guiones de uso en Rational Rose. Gestin de clases utilizando Rational Rose. En esta gua de la herramienta se describe cmo representar clases en Rational Rose. Gestin de diagramas de colaboracin utilizando Rational Rose. En esta gua de la herramienta se describe se describe cmo utilizar Rational Rose para crear diagramas de colaboracin en los que se muestren las interacciones entre objetos. Gestin de diagramas de secuencia utilizando Rational Rose. En esta gua de la herramienta se describe se describe cmo utilizar Rational Rose para crear diagramas de colaboracin en los que se muestren las interacciones entre objetos. Ingeniera inversa de cdigo utilizando Rational Rose. En esta gua de la herramienta se describe la capacidad de efectuar la ingeniera inversa de varios tipos de elementos con Rational Rose en un modelo de Rose. Gestin del modelo de diseo utilizando Rational Rose. En esta gua de la herramienta se describe cmo representar el modelo de diseo y los artefactos relacionados en Rational Rose junto con la plantilla de modelo de RUP, que se proporciona con Rose.

Gestin de subsistemas utilizando Rational Rose. En esta gua de la herramienta se describe cmo representar subsistemas de diseo y Productos de trabajo relacionados en Rational Rose. Gestin de interfaces utilizando Rational Rose. En esta gua de la herramienta se describe cmo utilizar Rational Rose para gestionar interfaces. Generacin de elementos a partir de un modelo utilizando Rational Rose. En esta gua de la herramienta se describe la posibilidad de Rational Rose de generar elementos de origen a partir de un modelo de Rose, permitiendo que los implementadores creen y actualicen origen basado en el diseo documentado en Rose. Estructuracin del modelo de implementacin utilizando Rational Rose. En esta gua de la herramienta se describe cmo crear y estructurar los elementos de modelo, que representan el modelo de implementacin de un sistema, utilizando Rational Rose. Establecimiento de Rational Rose para un proyecto. En esta gua de la herramienta se describe cmo establecer Rational Rose para un proyecto. Acceso a Rational ClearCase desde Rational Rose. En esta gua de la herramienta se describe cmo utilizar el complemento de Rational Rose ClearCase para acceder a Rational ClearCase a fin de gestionar cambios en archivos de modelo Rose y sus archivos de cdigo fuente generados. Comparacin y fusin de modelos de Rational Rose utilizando el integrador de modelos. En esta gua de la herramienta se describe cmo utilizar el integrador de modelos de Rational Rose para comparar y fusionar modelos. Detailing Business Workers and Entities Using Rational Rose. Este maestro herramienta describe los pasos para la descripcin de un caso de uso

comercial utilizando diagramas de actividad en Rational Rose. Finding Business Workers and Entities Using Rational Rose. Este maestro herramienta describe cmo utilizar Rational Rose para registrar los resultados de la bsqueda de los actores empresariales y casos de uso del negocio.

Identify Business Goals Using Rational Rose. Este maestro herramienta describe cmo utilizar Rational Rose para registrar los resultados de la bsqueda de los objetivos de negocio. Structuring the Business Use-Case Model Using Rational Rose. Este maestro herramienta describe cmo utilizar Rational Rose (R) para documentar las relaciones entre los actores empresariales y entre los casos de uso del negocio. Modelado del diseo de una aplicacin J2EE en Rational Rose. En esta directriz de herramientas se describe la forma en que utilizar Rational Rose para modelar el diseo de una aplicacin J2EE. K. Rational Rose RealTime Esta herramienta es una herramienta de desarrollo y modelado de componentes grficos basada en UML. Adems incluye funciones de ejecucin de modelos, generacin de cdigo y constructos de diseo en tiempo real. L. Rational SoDA Esta herramienta ofrece la generacin automtica de documentacin de software. M. Rational Software Architect Rational Software Architect es un entorno de desarrollo integrado para el modelado, creacin, prueba y despliegue de aplicaciones software. N. Rational Suite AnalystStudio La herramienta IBM Rational Suite AnalystStudio(R) facilita la recopilacin, gestin y modelado de solicitudes de mejora, requisitos y guiones de uso en una solucin integrada y global.

O. Rational Systems Developer Rational Systems Developer es una herramienta basada en UML controlada por modelo para el desarrollo de productos de software y de sistemas. P. Rational Test RealTime Esta herramienta es, en el fondo, una herramienta de prueba de nivel de cdigo. Ofrece al desarrollador un conjunto completo de herramientas para la creacin, ejecucin y elaboracin de informes de funcin, mtodo y procedimiento (pruebas centradas para lenguajes C, C++, Ada y Java). Q. Rational TestFactory La herramienta IBM(R) Rational(R) TestFactory(R) genera automticamente scripts de prueba globales. R. Rational TestManager Esta herramienta es la base de las herramientas de prueba de Rational, que controla y gestiona todas las actividades de prueba. S. Rational Unified Process Rational Unified Process es una plataforma del proceso de desarrollo de software flexible. T. Rational XDE Developer Esta herramienta es una herramienta de desarrollo y modelado de componentes grficos que combina el diseo y desarrollo en un entorno estrechamente integrado. Este nico entorno evita la necesidad de tener que pasar de una herramienta a otra fuera de ese entorno.

CONCLUSIN
Se puede concluir que, el RUP, como herramienta colaboradora en el desarrollo de software, aumenta la visin de desarrollo del mismo, es decir, el RUP es una herramienta que permite prever los cambios que un software pueda tener de acuerdo a los requerimientos y avance social que se tenga, brindando objetivos ms amplios y visin de requerimientos global. Visto desde su punto ms simple, el RUP es aquel mtodo que da cabida al cambio en las etapas del desarrollo de software, no siguiendo al pie de la letra los requerimientos, sino, por el contrario, mostrando otros campos que mejoren y optimicen el desarrollo del mismo.

GLOSARIO
Actividad: 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. Artefacto: Es un documento o un elemento modelo que es producido, modificado o utilizado por un proceso de desarrollo del software, su propsito es definir un rea de responsabilidad y est sujeto a un control de versiones. Un artefacto puede contener otros documentos. Los ejemplos de artefactos incluyen modelos, archivos fuente, ficheros ejecutables binarios, entre otros. Los artefactos son la parte tangible de un proyecto. Caso de Uso: Es una tcnica para la captura de requisitos potenciales de un nuevo sistema o una actualizacin de software. Capability Maturity Model Integration (CMMI): Es un modelo para la mejora o evaluacin de los procesos de desarrollo y mantenimiento de sistemas y productos de software. Este modelo es utilizado para dirigir la mejora de procesos a travs de proyectos, reas o de toda la Organizacin. El CMMI es un modelo de calidad del software que clasifica las empresas en niveles de madurez. Estos niveles sirven para conocer la madurez de los procesos que se realizan para producir software. 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. Hito: Es una tarea de duracin cero que simboliza el haber conseguido un logro importante en el proyecto. Los hitos son una forma de conocer el avance del proyecto sin estar familiarizado con el proyecto y constituyen un trabajo de duracin cero porque simbolizan un logro, un punto, un momento en el proyecto. Iteracin: Es la repeticin de una serie de instrucciones en un programa de computadora. Puede usarse tanto como un trmino genrico (como sinnimo de repeticin) as como para describir una forma especfica de repeticin con un estado mutable. Requerimiento: Es una unidad de trabajo cuya resolucin puede ser planificada en el tiempo, puede ser satisfecha a travs de una gran variedad de capacidades y

funciones de software. Rol: Es una definicin abstracta de un grupo de responsabilidades que deben llevarse a cabo para satisfacer las actividades de los procesos, describiendo cmo un individuo deber participar dentro del contexto de un proyecto. UML: Es un lenguaje grfico para visualizar, especificar, construir y documentar un sistema.

BIBLIOGRAFA
Kruchten, P., The Rational Unified Process: An Introduction, 2000 Addison Wesley. Kruchten, P. Architectural BlueprintsThe 4+1 View Model of Software Architecture. IEEE Software 12 (6), November 1995, pp. 42-50. Marcos, E. (2005). Investigacin en Ingeniera del Software vs. Desarrollo Software, Grupo KYBELE, Universidad Rey Juan Carlos. (2013, 03). IBM Ingeniera Del Software. BuenasTareas.com. Recuperado 03, 2013, de http://www.buenastareas.com/ensayos/Ibm-Ingenier%C3%ADa-DelSoftware/7655807.html

S-ar putea să vă placă și