Concepto: Personalización de RUP
En esta guía se describe el proceso global para la personalización de Rational Unified Process (RUP), su objetivo es proporcionar instrucciones adecuadas y personalizadas para desarrollar software.
Relaciones
Descripción principal

Introducción

La infraestructura de Rational Unified Process (RUP) sirve como guía en un conjunto completo de principios de ingeniería de software. Esta guía es aplicable a proyectos de diferentes tamaños y complejidad, así como a diferentes entornos y dominios de desarrollo. Esto significa que ningún proyecto ni empresa podrá utilizar todo el producto RUP. Probablemente, la aplicación de todo el producto RUP tendría como resultado un entorno de proyecto ineficaz, en el que los equipos tendrían dificultades para centrarse en las tareas importantes y encontrar el conjunto de información adecuado. Por ello, se recomienda que RUP se personalice para proporcionar instrucciones adecuadas y personalizadas para desarrollar software. Esta guía proporciona un resumen de alto nivel del concepto de personalización de RUP.

La personalización del proceso puede realizarse en dos niveles:

  • En el nivel organizativo, en el que los ingenieros de proceso modifican, mejoran o configuran un proceso común que se va a utilizar en toda la empresa. La personalización del nivel de empresa tiene en cuenta aspectos como el dominio de la aplicación, las prácticas de reutilización y las tecnologías principales que controla la empresa. Una empresa puede tener más de un proceso global, cada uno adaptado a un tipo diferente de desarrollo. En algunos casos, la configuración clásica predefinida de RUP sirve como proceso para toda la empresa. 
  • En el nivel de proyecto, en el que los ingenieros de proceso modifican, mejoran o configuran un proceso común que se va a utilizar en un proyecto específico. Cuando existe un proceso para toda la empresa, la personalización en el nivel de proyecto es donde se perfecciona más el proceso para toda la empresa para un proyecto determinado. En este nivel se tiene en cuenta el tamaño del proyecto, la reutilización de activos de la empresa, el tipo de ciclo vital de desarrollo ("desarrollo partiendo de cero" frente a la evolución), etc.

No importa para qué nivel de la empresa se está personalizando el proceso, el enfoque global para la personalización de RUP es el mismo (aunque las preocupaciones son distintas). El enfoque global para la personalización de un proceso consiste en:

  1. Identificar el ámbito del esfuerzo de personalización. Identifique el contenido del método que debe añadirse o perfeccionarse en RUP. Identifique los activos de método existentes que pueden incluirse. Por ejemplo, las directrices, plantillas o ejemplos específicos del proyecto o de la empresa, etc. Seleccione los procesos, roles, tareas, productos de trabajo, guía, etc. que desee personalizar. Si desea más información sobre el ámbito del esfuerzo de personalización, consulte Directriz: Personalización de RUP.
  2. Seleccionar el nivel de personalización que debe realizarse. Se dan distintos niveles en los que RUP se puede personalizar, cada uno de ellos con su "coste" y "beneficio" asociado. Para obtener información sobre los distintos niveles de personalización, consulte la sección niveles de personalización.
  3. Personalizar el proceso. Personalice las partes identificadas de RUP utilizando el nivel de personalización seleccionado.
    Con independencia del nivel de personalización que elija, la personalización de RUP suele implicar tres pasos clave (aunque algunos pasos son opcionales dependiendo del nivel de personalización):
    1. Desarrollar los elementos del método. Esto incluye el desarrollo de contenidos nuevos y el perfeccionamiento de los contenidos existentes.
    2. Configurar el contenido del método. Esto incluye decidir qué contenido incluir y qué contenido excluir, así como proporcionar las vistas adecuadas de ese contenido (por ejemplo, vistas basadas en roles o en dominios específicos). La configuración del contenido del método consiste en conseguir el tamaño adecuado del proceso para que satisfaga las necesidades de una empresa específica o un proyecto individual.
    3. Desarrollar el proceso de configuración.  Esto incluye la selección de un tipo de ciclo vital de desarrollo (por ejemplo, de cascada frente a iterativo) y la definición de un proceso que se ajusta para que satisfaga las necesidades exactas de la empresa o del proyecto. El proceso resultante sirve como entrada directa a la planificación del proyecto.    
    4. Hacer disponible el proceso. Esto incluye publicar la configuración (y su proceso) como un sitio web del proceso, o exportar el proceso a una herramienta de planificación de proyectos.

La parte del proyecto que decida personalizar, así como el nivel de personalización que decida llevar a cabo, dependen de ciertos factores. Estos factores se describen en la Directriz: Discriminadores del proceso. También es una buena idea familiarizarse con RUP, tanto por su contenido como por su soporte para personalización. Para obtener más información, consulte Introducción a RUP.

La personalización de un proceso no es más que una parte de la implementación de un proceso para un proyecto. Una vez que el proceso se ha personalizado, el gestor de proyectos crea sus instancias y lo ejecuta para el proyecto concreto. Un proceso para el que se han creado instancias es un proyecto, iteración o plan de actividades que puede llevarse a cabo (incluye las actividades y productos de trabajo para un proyecto). Esta creación de instancias se lleva a cabo como parte de la planificación del proyecto. Si desea más información sobre la planificación de proyectos, consulte la Tarea: Planificar las fases e iteraciones y la Tarea: Desarrollar el plan de iteración.  

En el resto de esta guía se describen los diferentes niveles de personalización disponibles para RUP, seguidos de la descripción de algunos casos comunes de ejemplo de personalización que reflejan los distintos niveles de personalización.   

Si desea más información sobre la personalización de RUP, consulte lo siguiente:


Niveles de personalización

A continuación se muestran los niveles de personalización que están disponibles actualmente para RUP, listados del más sencillo al más complejo, donde cada nivel incluye el nivel precedente:  

Nivel 1 Describe el proceso personalizado en un documento externo que hace referencia a un proceso subyacente, así como a cualquiera de los activos de método personalizados.

Este nivel es beneficioso si el proceso que debe personalizar no puede modificarse por alguna razón (por ejemplo, que esté muy controlado de cara a las auditorías) o si no tiene acceso al Rational Method Composer. La personalización a este nivel sólo afecta a la presentación del sitio web, no a su contenido subyacente.

Nivel 2 Personaliza un sitio web de procesos existente mediante Mi RUP y documentos externos.

Este nivel se ha concebido para que lo usen las personas en una copia personal del sitio web del proceso, y no suele ser el enfoque adecuado para la personalización del proceso de una empresa o proyecto completo. Sin embargo, la personalización puede ser una buena opción intermedia en los casos en los que desee llevar a cabo pequeñas mejoras en la presentación del sitio web y no tenga acceso a Rational Method Composer. La personalización a este nivel sólo afecta a la presentación del sitio web, no a su contenido subyacente.

Nivel 3

Configura un sitio web del proceso a partir de contenidos del método existente utilizando Rational Method Composer.

A veces, este nivel recibe el nombre de desarrollo de la configuración del método

Nivel 4

Añade una Guía a la infraestructura de método existente utilizando el Rational Method Composer.

A veces, este nivel recibe el nombre de desarrollo de plug-in de método "fino". Los plug-ins finos sólo añaden guía (por ejemplo, conceptos, directrices, plantillas, ejemplos, guías de herramientas). Los plug-ins finos son un mecanismo que pueden utilizar las empresas para empaquetar los activos organizativos, como plantillas, directrices, ejemplos del producto de trabajo y otros activos reutilizables para el consumo en el proyecto individual. La creación de plug-ins finos tiene un coste muy bajo; como tal, es muy aplicable a cualquier empresa grande y, normalmente, se puede justificar en el presupuesto de un solo proyecto. Además, la creación de plug-ins finos no afecta a los procesos (patrones de posibilidad y procesos de entrega) que se incluyen en una configuración, por lo que no hay que añadir/perfeccionar ni roles, ni tareas ni productos de trabajo. 

Nivel 5

Desarrolla un nuevo proceso de entrega (lo ideal es que se base en patrones de posibilidad existentes) utilizando el Rational Method Composer.

A veces, este nivel recibe el nombre de desarrollo del proceso de entrega

Nivel 6

Amplia la infraestructura de método existente con nuevo contenido del método (por ejemplo, tareas, productos de trabajo, roles) mediante el Rational Method Composer.

A veces, este nivel recibe el nombre de desarrollo de plug-in "estructural". Un plug-in estructural es un plug-in que amplía RUP añadiendo o perfeccionando roles, tareasproductos de trabajo

La creación de plug-ins estructurales tiende a ser más intensiva con los recursos que la creación de plug-ins finos porque cuando añade un rol, tarea o producto de trabajo, puede necesitar añadir elementos de contenido del método adicionales, así como crear o perfeccionar procesos (patrones de posibilidad y procesos de entrega) para que incluyan los nuevos elementos de contenido del método. Por ejemplo, si fuera a añadir un nuevo producto de trabajo, es posible que deba añadir un nuevo rol para que se responsabilice del producto de trabajo, así como añadir una tarea para producir el nuevo producto de trabajo. A continuación, deberá añadir la nueva tarea a un proceso existente (o posiblemente crear un nuevo proceso).

Los plug-ins estructurales suelen desarrollarse en empresas con procesos maduros que se centran en la utilización de la sinergia de procesos entre proyectos, sobre todo cuando se desarrollan varios proyectos en el mismo dominio y tecnología, o en entornos de desarrollo similares. Normalmente, para un solo proyecto no se emprende la tarea de crear un plug-in estructural para RUP, a no ser que el proyecto sea lo suficientemente grande como para justificar el coste del desarrollo del plug-in en el presupuesto del proyecto. Un plug-in estructural es parecido a cualquier activo reutilizable en el sentido de que es aconsejable asumir el coste de hacerlo reutilizable a no ser que se le encuentre una aplicación potencial fuera del ámbito del proyecto.

En resumen, la creación de nuevos roles, tareas, etc. en un plug-in reutilizable no es trivial, y suele ser preferible hacer que esa personalización sea mínima al principio, centrándose en añadir guía (nivel 4) y sólo añadiendo elementos que "faltan" en un proceso de entrega (nivel 5), en lugar de intentar refactorizar, sustituir o renombrar las tareas, roles y productos de trabajo de RUP. Sin embargo, añadir nuevas tareas o actividades aisladas a un proceso de entrega a varios patrones de posibilidad nuevos es un riesgo bastante bajo.


Se recomienda la personalización de RUP utilizando el Rational Method Composer (RMC). Utilizando RMC, el sitio web del proceso resultante tiene exactamente la misma funcionalidad y el mismo aspecto que el sitio web clásico de RUP. Asimismo, si se utiliza RMC, se pueden crear varias instancias de un proceso de entrega exportándolo desde RMC y, a continuación, importándolo a una herramienta de gestión de proyectos (como Rational Portfolio Manager) en la que los productos de trabajo se pueden identificar, se pueden asignar recursos a los roles, etc.  Si desea más información sobre la exportación de procesos de entrega, consulte Guía de la herramienta: Exportar procesos a una herramienta utilizando Rational Method Composer.

Es también recomendable invertir un poco de tiempo estudiando los plug-ins existentes antes de comenzar un proyecto de plug-in, para evitar "reinventar la rueda". La publicación developerWorks:IBM Sponsored RUP Plug-Ins contiene una lista completa de plug-ins disponibles que pueden descargarse e incluirse en la configuración de RUP.

Personalización de casos de ejemplo

En esta sección se describe un conjunto común de casos de ejemplo para la personalización de RUP. Cada uno de estos casos de ejemplo describe cómo llevar a cabo los pasos clave para la personalización utilizando un nivel de personalización distinto.

Los casos de ejemplo son los siguientes:

Cada uno de estos casos de ejemplo se trata a continuación.


Personalizar RUP utilizando un documento externo

Cuando personaliza RUP utilizando un documento externo, los principales pasos de la personalización se llevan a cabo como se indica a continuación:

  1. Desarrolle los elementos de método (como las plantillas, directrices y ejemplos) utilizando las herramientas que soporten el desarrollo del contenido.
  2. Configure el contenido del método.
  3. Desarrolle el proceso para la configuración mediante el desarrollo de un documento (o una serie de documentos) que describa qué contenido de RUP debe incluirse en el proceso personalizado, cómo se ajustan los elementos de método desarrollados en el paso anterior y su ubicación en el ciclo vital general del proceso. El documento puede ser un documento de texto, una hoja de cálculo, un sitio web, etc. Desarrolle tantos documentos como sea necesario para disponer de suficientes vistas sobre los distintos aspectos del proceso.
  4. Para que el proceso esté disponible, sólo debe hacer que el documento externo y el contenido de referencia estén disponibles para los usuarios finales. Con este caso de ejemplo, no hay nada adicional que publicar y no hay nada que pueda exportarse.

Por ejemplo, puede crear una serie de páginas HTML que describan el proceso para el que se han de crear instancias. Estas páginas web pueden hacerse accesibles desde el sitio web de la empresa o del proyecto y podrían utilizarse para proporcionar los puntos iniciales de entrada para el sitio web de RUP subyacente (es decir, las páginas HTML enlazan con el sitio web de RUP para obtener los detalles).


Personalizar RUP utilizando Mi RUP

Cuando personaliza RUP utilizando Mi RUP, los principales pasos de la personalización se llevan a cabo como se indica a continuación:

  1. Desarrolle los elementos de método utilizando cualquier herramienta que dé soporte al desarrollo de ese contenido (por ejemplo, procesadores de texto, hojas de cálculo, páginas HTML, etc.).
  2. Configure el contenido del método añadiendo los elementos de método desarrollados para las vistas de proceso del sitio web de RUP existentes, creando nuevas vistas de proceso o eliminando vistas de proceso existentes.  
  3. Desarrolle el proceso de configuración mediante el desarrollo de un documento que describe qué es el ciclo vital general del proceso, haciendo referencia al sitio web personalizado, según convenga. 
  4. Para que el proceso esté disponible, sólo debe hacer que el sitio web personalizado y el contenido de referencia estén disponibles para los usuarios finales. Con este caso de ejemplo, no hay nada adicional que publicar, ya que la personalización se lleva a cabo en el sitio web publicado, y no hay nada que pueda exportarse. 

Nota: este caso de ejemplo es muy similar al caso de ejemplo Personalizar RUP utilizando un documento externo, pero en este caso de ejemplo, los documentos externos son parte del sitio web publicado. 

Si desea más información sobre la personalización de un sitio web de RUP mediante Mi RUP, consulte Guía de la herramienta: Personalizar el sitio web de RUP mediante la vista de proceso personal o Mi RUP.


Personalizar RUP configurando contenido existente

Cuando utilice el Rational Method Composer (RMC) para configurar el contenido de método existente, los principales pasos de la personalización se llevan a cabo como se indica a continuación:

  1. Como está configurando el contenido existente, no es necesario desarrollar elementos de método.
  2. Para configurar el contenido del método, cree una configuración del método que incluya paquetes de contenido relevante de la infraestructura de RUP (y cualquier plug-in de método) y excluya los paquetes de contenido irrelevante y defina vistas de la configuración que den soporte a distintas perspectivas de los interesados. Lo ideal es que utilice una de las configuraciones predefinidas en RMC como punto de partida para la configuración. Para obtener más información sobre la creación de una configuración mediante RMC, consulte Guía de la herramienta: Crear una configuración del método utilizando Rational Method Composer.
  3. Como está configurando el contenido existente, no es necesario desarrollar procesos (puede utilizarse uno de los procesos de entrega ).  
  4. Para hacer disponible el proceso, publique la configuración para producir el sitio web de procesos o exportar el proceso de entrega a una herramienta de planificación de proyectos.  Para obtener más información, consulte la Guía de la herramienta: Publicar configuraciones del método utilizando Rational Method Composer y la Guía de la herramienta: Exportar procesos a una herramienta utilizando Rational Method Composer.

Personalizar RUP añadiendo instrucciones a elementos de método existentes

Cuando utilice el Rational Method Composer (RMC) para añadir una guía a los elementos de método existentes, los principales pasos de personalización se llevan a cabo como se indica a continuación:

  1. Cree un plug-in de método para que contenga la guía. El plug-in de método no sólo contendrá la guía, sino que también contendrá las asociaciones entre la guía y los elementos de método a los que dan soporte. Un plug-in que sólo contiene la guía se denomina plug-in "ligero". Para obtener más información sobre el trabajo con plug-ins, , consulte Guía de la herramienta: Crear un plug-in de método utilizando Rational Method Composer y Guía de la herramienta: Desarrollar contenido del método utilizando Rational Method Composer.
  2. Cree una configuración del método que contenga el plug-in de método creado en el paso anterior. Lo idea es utilizar una de las configuraciones de RMC predefinidas que contenga los elementos de método necesarios, como punto de partida. Perfeccione las vistas de configuración para que incluyan la nueva guía, según convenga. Para obtener más información sobre el trabajo con configuraciones, consulte Guía de la herramienta: Crear una configuración del método utilizando Rational Method Composer.
  3. Como sólo está añadiendo la guía a los elementos de método existentes, no es necesario desarrollar procesos (puede utilizarse uno de los procesos de entrega ).  
  4. Para hacer disponible el proceso, publique la configuración para producir el sitio web de procesos o exportar el proceso de entrega a una herramienta de planificación de proyectos.  Para obtener más información, consulte la Guía de la herramienta: Publicar configuraciones del método utilizando Rational Method Composer y la Guía de la herramienta: Exportar procesos a una herramienta utilizando Rational Method Composer.

Personalizar RUP definiendo un nuevo proceso de entrega

Cuando utilice el Rational Method Composer (RMC) para definir un nuevo proceso de entrega, los principales pasos de la personalización se llevan a cabo como se indica a continuación:

  1. Como está creando un nuevo proceso de entrega, debe crear un plug-in de método para que contenga el proceso de entrada. Para obtener más información, consulte Crear un plug-in de método utilizando Rational Method Composer.
  2. La configuración del proceso implica la creación de una configuración del método que incluya el plug-in creado en el paso anterior, además de los demás plug-ins que necesite (por ejemplo, plug-ins que contengan los elementos de método a los que hace referencia el proceso de entrega). Lo ideal es utilizar una configuración predefinida como punto de partida (específicamente, una configuración que contenga un proceso de entrega que se parezca al proceso de entrega que desea definir). Para obtener más información, consulte Guía de la herramienta: Crear una configuración del método utilizando Rational Method Composer.
  3. Para desarrollar el proceso de la configuración, cree un nuevo proceso de entrega, lo ideal es empezar a partir de un proceso de entrega existente o de un patrón de posibilidad existente.  Para obtener más información, consulte Guía de la herramienta: Desarrollar procesos utilizando Rational Method Composer.
    Mientras se desarrolla el proceso de entrega, si descubre que se necesita contenido del método adicional. siempre puede añadir ese contenido a un plug-in de método que después se podrá incluir en la configuración.  Para obtener más información, consulte Crear un plug-in de método utilizando Rational Method Composer y Guía de la herramienta: Desarrollar contenido del método utilizando Rational Method Composer.
  4. Para hacer disponible el proceso, publique la configuración para producir el sitio web de procesos o exportar el proceso de entrega a una herramienta de planificación de proyectos.  Para obtener más información, consulte la Guía de la herramienta: Publicar configuraciones del método utilizando Rational Method Composer y la Guía de la herramienta: Exportar procesos a una herramienta utilizando Rational Method Composer
     

Personalizar RUP añadiendo un nuevo elemento de modelo sin instrucciones

Cuando utilice el Rational Method Composer (RMC) para añadir un nuevo elemento de método que no es de guía (rol, tarea o producto de trabajo), los pasos clave para la personalización se llevan a cabo como se indica a continuación:

  1. Cree un plug-in de método para que contenga el nuevo elemento de método y cualquier otro elemento de método adicional. Por ejemplo, si está añadiendo un nuevo producto de trabajo, tal vez necesite añadir un rol que sea responsable del producto de trabajo, una tarea para crear el producto de trabajo, etc.  Para obtener más información, consulte Crear un plug-in de método utilizando Rational Method Composer.
  2. Configure el contenido del método mediante la creación de una configuración del método que incluya el plug-in creado en el paso anterior, además de los demás plug-ins que necesite (por ejemplo, plug-ins que contengan los elementos de método relacionados con el nuevo elemento de método). Para obtener más información, consulte Guía de la herramienta: Crear una configuración del método utilizando Rational Method Composer.
  3. Para desarrollar el proceso de la configuración, cree un nuevo proceso de entrega, lo ideal es empezar a partir de un proceso de entrega existente o de un patrón de posibilidad existente. Añada el nuevo elemento de método y cualquier elemento de método relacionado con el proceso de entrega.  Para obtener más información, consulte Guía de la herramienta: Desarrollar procesos utilizando Rational Method Composer.
  4. Para hacer disponible el proceso, publique la configuración para producir el sitio web de procesos o exportar el proceso de entrega a una herramienta de planificación de proyectos.  Para obtener más información, consulte la Guía de la herramienta: Publicar configuraciones del método utilizando Rational Method Composer y la Guía de la herramienta: Exportar procesos a una herramienta utilizando Rational Method Composer.

Utilizar un guión de desarrollo

Tal como se ha discutido anteriormente, una opción para personalizar RUP es proporcionar información personalizada en un documento externo que haga referencia al proceso subyacente.  El Guión de desarrollo es un ejemplo de este documento.  Para obtener más información sobre la utilización de un guión de desarrollo en el proceso de personalización, consulte Tarea: Desarrollar guión de desarrollo y las instrucciones asociadas.