Modelo RUP

Es un proceso de ingeniería de software, que hace una propuesta orientada por disciplinas para lograr las tareas y responsabilidades de una organización que desarrolla software, su meta principal es asegurar la producción de software de alta calidad que cumpla con las necesidades de los usuarios, con una planeación y presupuesto predecible.
Provee un entorno de proceso de desarrollo configurable, basado en estándares, permite tener claro y accesible el proceso de desarrollo que se sigue, Permite ser configurado a las necesidades de la organización y del proyecto.
Sus principales características son:
·         Conceptualmente amplio y diverso
·         Enfoque orientado a objetos
·         En evolución continua
·         Adaptable
·         Repetible
·         Permite mediciones
·         Estimación de costos y tiempo, nivel de avance, etc.


Eje horizontal: representa el tiempo y muestra los aspectos del ciclo de vida del proceso. Es el aspecto dinámico del proceso a través de las fases, iteraciones y productos intermedios.

Eje vertical: representa las disciplinas que agrupan actividades por su naturaleza. Aspecto estático del proceso a través de componentes, disciplinas, actividades, flujos de trabajo, artefactos y roles.





RUP se descompone en 4 FASES secuenciales:
Inicio (Inception), Elaboración, Construcción y Transición.

Al terminar cada fase se realiza una evaluación para determinar si se ha cumplido o no con los objetivos de la misma.
Inicio (Inception):
El objetivo general de esta fase es establecer un acuerdo entre todos los interesados acerca de los objetivos del proyecto, se asegura de identificar los riesgos relacionados con el negocio y requerimientos.
Para proyectos de mejora de software existente, esta fase es más breve y se centra en asegurar la viabilidad de desarrollar el proyecto.
Elaboración:
El objetivo en esta fase es establecer la arquitectura base del sistema para proveer bases estables para el esfuerzo de diseño e implementación en la siguiente fase, la arquitectura debe abarcar todas las consideraciones de mayor importancia de los requerimientos y una evaluación del riesgo.
Construcción:
El objetivo de la fase de construcción es clarificar los requerimientos faltantes y completar el desarrollo del sistema basados en la arquitectura base, es un proceso de manufactura, en el cual el énfasis se torna hacia la administración de recursos y control de la operaciones para optimizar costos, tiempo y calidad.
Transición:
Esta fase se enfoca en asegurar que el software esté disponible para sus usuarios, se puede subdividir en varias iteraciones, además incluye pruebas del producto para poder hacer el entregable del mismo, así como realizar ajuste menores de acuerdo a ajuste menores propuestos por el usuario.
En este punto, la retroalimentación de los usuarios se centra en depurar el producto, configuraciones, instalación y aspectos sobre utilización.

Disciplinas:
Una disciplina es una colección de actividades relacionadas con un área de atención dentro de todo el proyecto. El grupo de actividades que se encuentran dentro de una disciplina principalmente son una ayuda para entender el proyecto desde la perspectiva clásica de cascada.
Es una secuencia parcialmente ordenada de actividades que son realizadas para lograr un resultado particular, representado en un conjunto de artefactos.

Modelado de Negocios
Los propósitos que tiene el Modelo de Negocios son:
·         Entender los problemas que la organización desea solucionar e identificar mejoras potenciales.
·         Medir el impacto del cambio organizacional.
·         Asegurar que clientes, usuarios finales, desarrolladores y los otros participantes tengan un entendimiento compartido del problema.
·         Entender como el sistema a ser desarrollado entra dentro de la organización.

Requerimientos:

·         Establecer y mantener un acuerdo con los clientes y los otros interesados acerca de que debe hacer el sistema.
·         Proveer a los desarrolladores del sistema de un mejor entendimiento de los requerimientos del sistema.
·         Definir los límites (o delimitar) del sistema.
·         Proveer un base para la planeación de los contenidos técnicos de las iteraciones.
·         Proveer una base para la estimación de costo y tiempo necesarios para desarrollar el sistema.
·         Definir una interfaz de usuario para el sistema, enfocada en las necesidades y objetivos del usuario.
Análisis y Diseño:
·         Transformar los requerimientos a diseños del sistema.
·         Desarrollar  una arquitectura robusta para el sistema.
·         Adaptar el diseño para hacerlo corresponder con el ambiente de implementación y ajustarla para un desempeño esperado.
Implementación:
Definir la organización del código, en términos de la implementación de los subsistemas organizados en capas. Implementar el diseño de elementos en términos de los elementos (archivos fuente, binarios, ejecutables y otros).
Pruebas:
Actúa como un proveedor de servicios a las otras disciplinas en muchos aspectos. Se enfoca principalmente en la evaluación y aseguramiento de la calidad del producto, desarrollado a través de las siguientes prácticas:
·         Encontrar fallas de calidad en el software y documentarlas.
·         Recomendar sobre la calidad percibida en el software.
·         Validar y probar las suposiciones hechas durante el diseño y la especificación de requerimientos de forma concreta.
·         Validar que el software trabaja como fue diseñado.
·         Validar que los requerimientos son implementados apropiadamente.
Transición:
Esta disciplina describe las actividades asociadas con el aseguramiento de la entrega y disponibilidad del producto de software hacia el usuario final.
Administración y Configuración del Cambio:
Consiste en controlar los cambios y mantener la integridad de los productos que incluye el proyecto.
Incluye:
·         Identificar los elementos configurables.
·         Restringir los cambios en los elementos configurables.
·         Auditar los cambios hechos a estos elementos.
·         Definir y mantener las configuraciones de estos elementos.
Administración de Proyectos:
·         Proveer un marco de trabajo para administrar los proyectos intensivos de software.
·         Proveer guías prácticas para la planeación, soporte, ejecución y monitoreo de proyectos.
·         Proveer un marco de trabajo para la administración del riesgo.

Disciplinas:
Workflow
Detalles del workflow
Actividades
Artefactos
Guías de aplicación

















Roles:
Definen el comportamiento y responsabilidades de individuos o grupos de individuos.
Un individuo puede jugar más de un rol.
Conjuntos de actividades realizadas.
Responsabilidad sobre artefactos.
Actividades:
Una actividad es algo que un rol hace y que provee un resultado de interés en el contexto del proyecto.
Son utilizadas para detallar los workflows.
Toman artefactos como entrada y producen artefactos (o nuevas versiones) como salida.


Artefactos:
Unidades de información creadas, producidas, cambiadas o utilizadas en el proceso de desarrollo.





















RUP puede utilizarse
·         En proyectos de nuevos productos de software
·         En ciclos de desarrollo subsecuentes
Consideraciones que alteran cuándo y cómo usar partes de RUP
El ciclo de vida del proyecto
·         Los objetivos del negocio, la visión, el alcance y los riesgos
·         El tamaño del esfuerzo de desarrollo
Conclusiones:
Es un modelo de proceso de desarrollo de software.
El objetivo es asegurar el desarrollo de productos de software de alta calidad que satisfagan los requerimientos en tiempo y presupuesto predecible.

Comentarios

Publicar un comentario