lunes, 29 de octubre de 2012

METODOLOGÍA RUP




METODOLOGÍA 

RUP (Proceso Unificado de Rational)

RUP es un proceso para el desarrollo de un proyecto de software que define claramente quien, cómo, cuándo y qué debe hacerse en el proyecto, con 3características esenciales, está dirigido por los Casos de Uso que orientan el proyecto a la importancia para el usuario y lo que este quiere , está centrado en la arquitectura que Relaciona la toma de decisiones que indican cómo tiene que ser construido el sistema y en qué orden, y es iterativo e incremental dividiéndose el proyecto en mini proyectos donde los casos de uso y la arquitectura cumplen sus objetivos de manera más depurada.
También se conoce por este nombre al software desarrollado por Racional, hoy propiedad de IBM, el cual incluye información entrelazada de diversos artefactos y descripciones de las diversas actividades. Está incluido en el Rational MethodComposer (RMC), que permite la personalización de acuerdo a necesidades.
 Originalmente se diseñó un proceso genérico y de dominio público, el Proceso Unificado, y una especificación más detallada, el Rational Unified Process, que luego se vendiera como producto independiente.

Este maneja 6 principios clave:

1. Adaptación del proceso
El proceso deberá adaptarse a las características propias de la organización. El tamaño del mismo, así como las regulaciones que lo condicionen, influirán en su diseño específico. También se deberá tener en cuenta el alcance del proyecto.
2. Balancear prioridades
Los requerimientos de los diversos inversores pueden ser diferentes, contradictorios o disputarse recursos limitados. Debe encontrarse un balance que satisfaga los deseos de todos.
3. Colaboración entre equipos
El desarrollo de software no lo hace una única persona sino múltiples equipos. Debe haber una comunicación fluida para coordinar requerimientos, desarrollo, evaluaciones, planes, resultados, etc.
4. Demostrar valor iterativamente
Los proyectos se entregan, aunque sea de un modo interno, en etapas iteradas. En cada iteración se analiza la opinión de los inversores, la estabilidad y calidad del producto, y se refina la dirección del proyecto así como también los riesgos involucrados.
5. Elevar el nivel de abstracción
Este principio dominante motiva el uso de conceptos reutilizables tales como patrón del software, lenguajes 4GL o esquemas (frameworks) por nombrar algunos. Éstos se pueden acompañar por las representaciones visuales de la arquitectura, por ejemplo con UML.
6. Enfocarse en la calidad
El control de calidad no debe realizarse al final de cada iteración, sino en todos los aspectos de la producción.

CICLO DE VIDA DE RUP

RUP divide el proceso en 4 fases, dentro de las cuales se realizan varias iteraciones en número variable según el proyecto y en las que se hace un mayor o menor hincapié en los distintas actividades.

FASE DE INICIO

Durante la fase de inicio se define el modelo del negocio y el alcance del proyecto. Se identifican todos los actores y Casos de Uso, y se diseñan los Casos de Uso más esenciales (aproximadamente el 20% del modelo completo). Se desarrolla, un plan de negocio para determinar qué recursos deben ser asignados al proyecto.

Los objetivos de esta fase son:

•Establecer el ámbito del proyecto y sus límites.
•Encontrar los Casos de Uso críticos del sistema, los escenarios básicos que definen la funcionalidad.
•Mostrar al menos una arquitectura candidata para los escenarios principales.

•Estimar el coste en recursos y tiempo de todo el proyecto.Estimar los riesgos, las fuentes de incertidumbre.


Los resultados de la fase de inicio deben ser:

•Un documento de visión: Una visión general de los requerimientos del proyecto, características clave y restricciones principales.

•Modelo inicial de Casos de Uso (10-20% completado).

•Un glosario inicial: Terminología clave del dominio.

•El caso de negocio.

•Lista de riesgos y plan de contingencia.

•Plan del proyecto, mostrando fases e iteraciones.

•Modelo de negocio, si es necesario Prototipos exploratorios para probar conceptos o la arquitectura candidata.

Al terminar la fase de inicio se deben comprobar los criterios de evaluación para continuar:

•Todos los interesados en el proyecto coinciden en la definición del ámbitodel sistema y las estimaciones de agenda.

•Entendimiento de los requisitos, como evidencia de la fidelidad de losCasos de Uso principales.

•Las estimaciones de tiempo, coste y riesgo son creíbles.

•Comprensión total de cualquier prototipo de la arquitectura desarrollado.

•Los gastos hasta el momento se asemejan a los planeados.


FASE DE ELABORACION

El propósito de la fase de elaboración es analizar el dominio del problema, establecer los cimientos de la arquitectura, desarrollar el plan del proyecto y eliminar los mayores riesgos. En esta fase se construye un prototipo de la arquitectura, que debe evolucionar en iteraciones sucesivas hasta convertirse en el sistema final. Este prototipo debe contener los Casos de Uso críticos identificados en la fase de inicio. También debe demostrarse que se han evitado los riesgos más graves.

Los objetivos de esta fase son:

•Definir, validar y cimentar la arquitectura.

•Completar la visión.

•Crear un plan fiable para la fase de construcción. Este plan puede evolucionar en sucesivas iteraciones. Debe incluir los costes si procede.

•Demostrar que la arquitectura propuesta soportará la visión con un coste razonable y en un tiempo razonable.

Al terminar deben obtenerse los siguientes resultados:

•Un modelo de Casos de Uso completa al menos hasta el 80%: todos los casos y actores identificados, la mayoría de los casos desarrollados.

•Requisitos adicionales que capturan los requisitos no funcionales y cualquier requisito no asociado con un Caso de Uso específico.

•Descripción de la arquitectura software.

•Un prototipo ejecutable de la arquitectura.

•Lista de riesgos y caso de negocio revisados.

•Plan de desarrollo para el proyecto.

•Un caso de desarrollo actualizado que especifica el proceso a seguir.

•Un manual de usuario preliminar (opcional).En esta fase se debe tratar de abarcar todo el proyecto con la profundidad mínima. Sólo se profundiza en los puntos críticos de la arquitectura o riesgos importantes. En la fase de elaboración se actualizan todos los productos de la fase de inicio. Los criterios de evaluación de esta fase son los siguientes:

•La visión del producto es estable.

•La arquitectura es estable.

•Se ha demostrado mediante la ejecución del prototipo que el principal ese
Lamentos de riesgo han sido abordados y resueltos.


•El plan para la fase de construcción es detallado y preciso. Las estimaciones son creíbles.

•Todos los interesados coinciden en que la visión actual será alcanzada si se siguen los planes actuales en el contexto de la arquitectura actual.

•Los gastos hasta ahora son aceptables, comparados con los previstos.

FASE DE CONSTRUCCIÓN

La finalidad principal de esta fase es alcanzar la capacidad operacional del producto de forma incrementa a través de las sucesivas iteraciones. Durante estafase todos los componentes, características y requisitos deben ser implementados, integrados y probados en su totalidad, obteniendo una versión aceptable del producto.

Los objetivos concretos según [KRU00] incluyen:

•Minimizar los costes de desarrollo mediante la optimización de recursos y evitando el tener que rehacer un trabajo o incluso desecharlo.

•Conseguir una calidad adecuada tan rápido como sea práctico.

•Conseguir versiones funcionales (alfa, beta, y otras versiones de prueba)tan rápido como sea práctico.

Los resultados de la fase de construcción deben ser [RSC98]: 

•Modelos Completos (Casos de Uso, Análisis, Diseño, Despliegue e Implementación)

•Arquitectura íntegra (mantenida y mínimamente actualizada)

•Riesgos Presentados Mitigados

•Plan del Proyecto para la fase de Transición.

•Manual Inicial de Usuario (con suficiente detalle)

•Prototipo Operacional – beta

•Caso del Negocio Actualizando.

Los criterios de evaluación de esta fase son los siguientes:

•El producto es estable y maduro como para ser entregado a la comunidad de usuario para ser probado.

•Todos los usuarios expertos están listos para la transición en la comunidad de usuarios.

•Son aceptables los gastos actuales versus los gastos planeados.

FASE DE TRANSICIÓN

La finalidad de la fase de transición es poner el producto en manos de los usuarios finales, para lo que se requiere desarrollar nuevas versiones actualizadas del producto, completar la documentación, entrenar al usuario en el manejo del producto, y en general tareas relacionadas con el ajuste, configuración, instalación y facilidad de uso del producto.

Algunas de las cosas que puede incluir esta fase:

•Prueba de la versión Beta para validar el nuevo sistema frente a las expectativas de los usuarios

•Funcionamiento paralelo con los sistemas legados que están siendo sustituidos por nuestro proyecto.

•Conversión de las bases de datos operacionales.

•Entrenamiento de los usuarios y técnicos de mantenimiento.

•Traspaso del producto a los equipos de marketing, distribución y venta.Los principales objetivos de esta fase son:

•Conseguir que el usuario se valga por si mismo.

•Un producto final que cumpla los requisitos esperados, que funcione ysatisfaga suficientemente al usuario.

Los resultados de la fase de transición son:

•Prototipo Operacional

•Documentos Legales

•Caso del Negocio Completo

•Línea de Base del Producto completa y corregida que incluye todos los modelos del sistema.

•Descripción de la Arquitectura completa y corregida

•Las iteraciones de esta fase irán dirigidas normalmente a conseguir una nueva versión.

Los criterios de evaluación de esta fase son los siguientes:

•El usuario se encuentra satisfecho.

•Son aceptables los gastos actuales versus los gastos planificados




No hay comentarios:

Publicar un comentario