Proceso+Unificado

Los autores sugieren la necesidad de un proceso de SW “guiado x los casos de uso, de Arq. céntrica, iterativo e incremental”. El PU intenta reunir las mejores características de modelos de procesos de SW, siendo su propia característica implementar muchos de los principios de la metodología ágil de SW. (Ej: comunicación con el cliente para entender su respectivo punto de vista o caso de uso)

El resultado de combinar las mejores características de c/uno de sus respectivos modelos **(casos de uso de** __**Jacobson**__  **creador además de las tarjetas de requerimientos, diagrama de clases de** __**Booch**__  **y el modelado de objetos de** __**Rumbaugh**__ **)**  derivó en la creación del __UML (Unificated Model Languaje)__ , herramienta muy útil para el desarrollo de SW orientado a objeto, convirtiéndose en Standard en 1997.

El UML proporciona la tecnología pero no el Framework para guiar en la aplicación de la tecnología. Esté FW fue provisto por el Proceso Unificado de los autores para la utilización del UML.

__**FASES DEL PU**__

La __**fase de inicio**__  del PU abarca la __comunicación__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> con el cliente (identificación de <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; text-decoration: none; vertical-align: baseline;">**requisitos** <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;">) y las actividades de <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; vertical-align: baseline;">__planeacion__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> (para una próxima iteración e incremento). Esos requisitos se obtienen a través de un conjunto preliminar de <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; text-decoration: none; vertical-align: baseline;">**casos de uso** <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> q describen características y funciones para cada clase de usuario. C/ caso de uso enumera una secuencia de acciones a realizar por un actor (persona, maquina, otro sistema) en la interacción con el sistema. Esto ayuda a identificar el ámbito del proyecto y su correspondiente <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; vertical-align: baseline;">__planeacion__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> q definirá recursos, riesgos, prepresupuesto, etc. y q establecerá una base para las futuras fases.

La <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; vertical-align: baseline;">__**fase de elaboración**__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> abarca actividades de <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; vertical-align: baseline;">__modelado del modelo genérico del proceso__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> y también incluye comunicación con el cliente. Se refina y expande los casos de uso. Se incluyen 5 modelos diferentes:
 * <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"><span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;">Modelo de caso de uso;
 * <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"><span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;">Modelo de análisis;
 * <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"><span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;">Modelo de diseño;
 * <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"><span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;">Modelo de implementación;
 * <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"><span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;">Modelo de despliegue.

<span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> Se crea un sistema ejecutable primitivo para demostrar la viabilidad de la arquitectura pero sin las características y funciones necesarias para el uso del sistema. Al final de la fase se revisa de manera exhaustiva el plan para controlar la coherencia del ámbito, riesgos y datos del sistema. Cualquier modificación del plan se hace en este momento.

La <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; vertical-align: baseline;">__**fase de construcción**__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> del PU es <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; vertical-align: baseline;">__idéntica al proceso genérico__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;">. Todas las características y funciones necesarias y requeridas del incremento del SW se <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; vertical-align: baseline;">__implementan en código fuente__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;">. Los casos de uso obtenidos se utilizan para <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; vertical-align: baseline;">__diseñar un conjunto de pruebas__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> q se ejecutaran en cada modulo q se iran <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; text-decoration: none; vertical-align: baseline;">**integrando** <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> (ensamblaje de componentes y pruebas de integración).

La <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; vertical-align: baseline;">__**fase de transición**__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> es un nexo entre la etapa de construcción y la etapa de despliegue del proceso genérico. El SW se entrega al usuario final para realizar pruebas beta y la <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; text-decoration: none; vertical-align: baseline;">**retroalimentación** <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> reportara defectos y cambios necesarios. El equipo de desarrollo crea información de soporte para la utilización de la aplicación (Ej. manual de usuario, de instalación, de ayuda, etc.)

La <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; vertical-align: baseline;">__**fase de producción**__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> es la denominada etapa de despliegue en el proceso genérico. En esta fase se monitorea el uso del SW, se implementa infraestructura (soporte para el ambiente operativo) y se evalúan los informes de defectos y los requerimientos de cambios.

Las 5 fases del PU no suceden en una secuencia, sino mas bien en una concurrencia por etapas. Se distribuye un flujo de trabajo (conjunto de tareas identificables y subsecuentes productos de trabajo) a lo largo del proyecto. Dependiendo del proyecto, se debe adaptar el proceso (tareas y productos de trabajo) mas conveniente de acuerdo a las necesidades del proyecto.

<span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; text-decoration: none; vertical-align: baseline;">**Productos de trabajo del PU**

<span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;">Estos se concretan en c/una de las 4 fases técnicas. En <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; vertical-align: baseline;">__fase de inicio__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> se genera el <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; text-decoration: none; vertical-align: baseline;">**modelo de caso de uso** <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> q recolecta requisitos del usuario y define los riesgos en los escenarios planteados x el usuario para c/actor. Contiene plantillas estandarizadas q contiene funciones y características del SW, flujo e eventos y condiciones exteriores para la interacción. En esta fase se completa entre un 10% y un 20% de los casos de uso.

En <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; vertical-align: baseline;">__fase de elaboración__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> se desarrolla el <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; text-decoration: none; vertical-align: baseline;">**modelo de análisis** <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> conteniendo una colección de clases. Luego esta colección se refina en un <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; text-decoration: none; vertical-align: baseline;">**modelo de diseño** <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> q identifica clases de diseño, subsistemas y sus correspondientes interfases y vinculaciones.

En <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; vertical-align: baseline;">__fase de construcción__ <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> se produce un <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; text-decoration: none; vertical-align: baseline;">**modelo de implementación** <span style="background-color: transparent; color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"> q traduce las clases de diseño en componentes de SW q ejecutaran el sistema y un modelo de despliegue q convierte estos componentes. Además un modelo de prueba testea q los casos de uso se reflejen en el sistema.

En la fase de transición se generan los reportes de errores de las pruebas beta indicada x los usuarios finales (retroalimentación) que produce nuevos requerimientos. Hay un incremento del SW.