Vous êtes sur la page 1sur 30

Rational Unified Process (RUP)

RUP es un proceso de ingenier ingeniera de software que proporciona una forma disciplinada de asignar tareas y responsabilidades en una organizaci organizacin de desarrollo. Tiene como objetivo asegurar la producci produccin de software de calidad dentro de plazos y presupuestos predecibles. RUP es un producto desarrollado y mantenido por Rational Software, actualizado constantemente para tener en cuenta las mejores pr prctica de acuerdo con la experiencia. Aumenta la productividad de los desarrolladores mediante acceso a: base de conocimiento, plantillas y herramientas. Se centra en la producci produccin y mantenimiento de modelos del sistema m ms que en producir documentos. RUP es un proceso configurable

Proceso Unificado de Rational


RUP: Rational Unified Process

Ms. Ms. Ing Carlos Castillo Diestra, Dr(c) Dr(c)

Pgina 1

Rational Unified Process (RUP)


Provee: Lineamientos, Lineamientos, templates para herramientas, herramientas, que gu guan una implementaci implementacin efectiva de las 6 Mejores Practicas
Administrar Requerimientos

El Ciclo de Vida del Software


Dos perspectivas
Perspectiva a nivel Administracin
Aspectos: financieros, estratgicos, comerciales, humanos ...

Base de Conocimiento Conocimiento:


. Soportada en la Web . Bsquedas . HiperHiper-Vnculos

Perspectiva a nivel Tcnico


Aspectos: calidad, ingeneria, diseo ...

Perspectiva de Administracin
Desarrollar Iterativamente Verificar Calidad Modelizar Visualmente Arquitecturas Basadas en Componentes

Gente

Controlar Cambios

Procesos Herramientas

Perspectiva Tcnica

Pgina 2

El Ciclo de Vida del Software - Etapas


Concepcin
La idea. La visin del producto y su objeto de negocio

El Ciclo de Vida del Software - Etapas


La Evolucin

Elaboracin
Planeamiento de actividades. Recursos. Cualidades. Arquitectura

Construccin
Construccin del producto. Evolucin de la visin, Arquitectura, Planes

Transicin
Liberacin del producto a la comunidad de usuarios

Evolucin
Siguientes versiones

Concepcin
Tiempo

Elaboracin

Construccin

Transicin

Evolucin

Pgina 3

El Ciclo de Vida del Software - Perspectivas


Dos Perspectivas

La Historia del Rational Unified Process (RUP)

Pgina 4

RUP - Principales Beneficios


Provee lineamientos para un desarrollo eficiente de software de calidad Captura-Presenta las mejores prcticas aprender de la experiencia anterior disponer de un mentor en su desktop extencin del material de capacitacin Promueve una visin y una cultura Comn Guias sobre cmo utilizar herramientas Reduce Riesgos e incrementa la Predictibilidad

RUP - Beneficios y Cualidades


Tomar el ltimo feedback Captura de requerimientos de usuario Mitigar los mayores riesgos temprano Integrado con herramientas de desarrollo

Controlado Basado en e Iterativo Casos de Uso Mejorar la calidad Personalizar el proceso

ArquitecturaAumentar el reuso Centralizada Configurable

Usa Unified Modeling Language

Pgina 5

La Modelizacin Visual Define la Arquitectura

RUP y Unified Modeling Language (UML)

User Interface (Visual Basic, Java)

Business Logic (C++, Java)

Rational Unified Process (RUP) y UML desarrollados en armon armona por Rational Contribuciones de los lderes de la industria: industria:
Database Server (C++ & SQL)

Microsoft
Modele independiente del lenguaje de implementacin

Oracle Texas Instruments MCI SystemHouse

HP IBM

Standard through OMG

Pgina 6

Un lenguaje de modelizacin, no es suficiente

IV. Proceso de Desarrollo de SW basado en UML

Caractersticas Esenciales de RUP

Proceso Conducido por los Casos de Uso Proceso Iterativo e Incremental Proceso Centrado en la Arquitectura

Desarrollo Basado En Equipos

Lenguaje de Modelado

Unified Process

Pgina 7

Proceso Conducido por Casos de Uso


Proceso Conducido por Casos de Uso
Capturar, definir y validar los casos de uso
Casos de Uso integran el trabajo

Requisitos Anlisis & Diseo Implementacin Pruebas

Realizar los casos de uso Verificar que se satisfacen los casos de uso

Pgina 8

IV. Proceso de Desarrollo de SW basado en UML

Qu es un Desarrollo Iterativo e Incremental?


El desarrollo iterativo e incremental es el proceso de construir el sistema en pequeos pasos Beneficios Reduccin de riesgos basado en una respuesta temprana Mejor flexibilidad para acomodar requerimientos nuevos o modificados Incrementar la calidad del programa

Proceso Conducido por Casos de Uso


trace Caso de Uso trace Realizacin de Diseo

Realizacin de Anlisis

trace

trace Pruebas Unitarias Pruebas Funcionales

X
Caso de Prueba

[The Unified Software Development Process. I. Jacobson, G. Booch and J. Rumbaugh. Addison-Wesley, 1999]

Pgina 9

Proceso Iterativo e Incremental

IV. Proceso de Desarrollo de SW basado en UML

El Ciclo de Vida de un Programa


El ciclo de vida de un programa desencadena una secuencia de ciclos de desarrollo, en la cual el resultado de estos ciclos es la generacin de un producto (Ejecutable) Cada ciclo es una sucesin de fases

Inicio

El ciclo de vida iterativo se basa en la evolucin de prototipos ejecutables que se muestran a los usuarios y clientes En el ciclo de vida iterativo a cada iteracin se reproduce el ciclo de vida en cascada a menor escala Los objetivos de una iteracin se establecen en funcin de la evaluacin de las iteraciones precedentes

Inicio Elaboracin Construccin Transicin


Elaboracin tiempo Construccin Transicin

Pgina 10

Qu es una Iteracin?
Una iteracin es un ciclo de desarrollo que termina en la entrega de un subconjunto de productos finales Cada iteracin pasa por todos los aspectos de desarrollo del programa
Anlisis de Requerimientos Diseo e Implementacin Prueba Documentacin

Proceso de Planificacin de una Iteracin


Identificar y priorizar los riesgos del proyecto Seleccionar un nmero pequeo de escenarios que contengan los mayores riesgos Los escenarios seleccionados son usados por:
Los desarrolladores para identificar lo que ser implementado para la iteracin Los probadores para desarrollar el plan de pruebas y el procedimiento de prueba para la iteracin

Cada entrega iterativa es una pieza totalmente documentada del sistema final
Iteracin preliminar Iteracin arquitect. Iteracin arquitect. Iteracin desarrollo Iteracin desarrollo Iteracin desarrollo Iteracin de Iteracin de transicin transicin

Al final de la iteracin
Determinar qu riesgo ha sido reducido o eliminado Determinar si algn nuevo riesgo ha sido descubierto
Poner al da el plan para las iteraciones restantes

Pgina 11

IV. Proceso de Desarrollo de SW basado en UML

IV. Proceso de Desarrollo de SW basado en UML

Proceso Iterativo e Incremental Las actividades se encadenan en una miniminicascada con un alcance limitado por los objetivos de la iteraci iteracin
Anlisis Diseo Codific. n veces Pruebas e Integracin

Proceso Iterativo e Incremental Cada iteraci iteracin comprende:


Planificar la iteracin (estudio de riesgos) Anlisis de los Casos de Uso y escenarios Diseo de opciones arquitectnicas Codificacin y pruebas. La integracin del nuevo cdigo con el existente de iteraciones anteriores se hace gradualmente durante la construccin Evaluacin de la entrega ejecutable (evaluacin del prototipo en funcin de las pruebas y de los criterios definidos) Preparacin de la entrega (documentacin e instalacin del prototipo)

Pgina 12

IV. Proceso de Desarrollo de SW basado en UML

IV. Proceso de Desarrollo de SW basado en UML

Proceso Iterativo e Incremental


Enfoque Cascada

Proceso Iterativo e Incremental


Grado de Finalizacin de Artefactos

Enfoque Iterativo e Incremental

Pgina 13

Proceso Centrado en la Arquitectura


IV. Proceso de Desarrollo de SW basado en UML

Estructura RUP
Fases
Workflows de Proceso
Business Modeling Requirements Analysis & Design Implementation Test Deployment
Inception Elaboration Construction Transition

Arquitectura de un sistema es la organizaci organizacin o estructura de sus partes m ms relevantes Un arquitectura ejecutable es una implementaci implementacin parcial del sistema, construida para demostrar algunas funciones y propiedades RUP establece refinamientos sucesivos de una arquitectura ejecutable, construida como un prototipo evolutivo

Workflows de Soporte
Configuration Management Project Management Environment
Preliminary Iteration(s) Iter. #1 Iter. #2 Iter. #n Iter. Iter. #n+1 #n+2 Iter. #m Iter. #m+1

Inception

Elaboration

Construction

Transition

Architecture

Eje Horizontal : representa el tiempo, muestra aspectos dinmicos del proceso, se expresa como ciclos, fases, iteraciones e hitos. Eje Vertical : aspectos estticos del proceso, actividades, artefactos, trabajadores y flujo de trabajo.

Pgina 14

Qu es un Proceso?
Un Proceso define Quien est haciendo Que , Cuando y Como alcanzar un objetivo. En la Ingenera de Software el objetivo es construir un producto de software o actualizar uno existente.

Elementos Principales de Modelado


El RUP es representado con el uso de los cuatro principales elementos de modelado
Workers - el Quin Actividades - el Cmo Artifacts - el Qu

Requerimientos Nuevos o Cambios

Proceso de Ingeniera de Software

Sistema Nuevo o Actualizado

Workflows - el Cundo

Pgina 15

Workers
El trmino Worker define el comportamiento y responsabilidades de un individuo o un grupo de individuos trabajando juntos como equipo
Worker Responsable Artifact Lleva a cabo Activity

Activities
Es una unidad de trabajo de un Worker que
tiene un propsito claro es expresada normalmente en trminos de creacin o actualizacin de artifacts es asignada a un worker especfico

Fraccionadas en Steps. Los steps se categorizan en


Thinking Steps Performing Steps Reviewing Steps
Tiene Work Guideline Tool Mentor Tiene Steps Tiene

Activity

Pgina 16

Artifacts
Es una pieza de informacin que es producida, modificada o usada por un proceso
Worker Responsable Resultado + Modelo Tiene Artifact Input Tiene Tiene Activity

Set of Artifacts
Los Artifacts de RUP se agrupan en cinco categoras
Management Set Requirements set Design set Implementation set Deployment set

Report

Guideline

Template

Pgina 17

Workflows
Es una secuencia de actividades que produce un resultado de valor observable.
En terminos de UML un workflow puede ser expresado como un diagrama de secuencias, de colaboracin o de actividades RUP usa un diagrama de actividad para representar el workflow Core workflows Iteration workflows Workflows details

Workflows
El RUP organiza el conjunto de actividades usando

Work Guideline

Tiene Iteration Workflow

Tiene Tiene Workflow Detail Core Workflow

Tiene Tiene Tiene Introduccin Concepts Activity Overview Artifact Overview

Pgina 18

Core Workflows
Los core workflows representan una divisin de los workers y actividades en agrupaciones lgicas. Hay seis workflows de ingeniera de procesos:
Modelizacin del Negocio Requerimientos Anlisis y Diseo Implementacin Test Deployment

Iteration Workflows
Es otra forma de mostrar el proceso, describindolo desde la perspectiva de qu sucede en una iteracin tpica
Fases
Workflows de Proceso
Business Modeling Requirements Analysis & Design Implementation Test Deployment
Inception Elaboration Construction Transition

y tres workflows de apoyo:


Configuracin y Administracin de Cambios Administracin del Proyecto Ambiente

Workflows de Soporte
Configuration Mgmt Management Environment

Workflow de Iteracin

Preliminary Iteration(s)

Iter. #1

Iter. #2

Iter. #n

Iter. Iter. #n+1 #n+2

Iter. Iter. #m #m+1

Pgina 19

Workflows Detail
Es una descripcin de un core workflow a ms bajo nivel. RUP los usa para expresar
un grupo especfico de actividades que estn relacionadas, que son desarrolladas juntas o en un modelo cclico; actividades que son desarrolladas por un grupo de gente actividades que producen un resultado intermedio interesante

Core Workflows
Fases
Workflows de Proceso
Business Modeling Requirements Analysis & Design Implementation Test Deployment
Inception Elaboration Construction Transition

Workflows de Soporte
Configuration Management Project Management Environment
Preliminary Iteration(s) Iter. #1 Iter. #2 Iter. #n Iter. Iter. #n+1 #n+2 Iter. #m Iter. #m+1

Pgina 20

Workflow de Modelizacin del Negocio


Describe los procesos de una organizacin Usado cuando se identifican requerimientos Consiste de actores del negocio y casos de uso del negocio El resultado es un modelo de casos de uso del negocio Workflows Detail
Identificar Procesos de Negocio Refinar las Definiciones del Proceso de Negocio Modelizacin del Dominio Identificar Roles y Responsabilidades Refinar Roles y Responsabilidades

Workflow de Modelizacin del Negocio

Pgina 21

Workflow de Requerimientos
Describe lo que el sistema debe hacer El resultado es un modelo de casos de uso Workflows Detail
Analizar el Problema Entender las Necesidades de Stakeholder Definir el Sistema Administrar el Alcance del Sistema Refinar la Definicin del Sistema Administrar Cambios de Requerimientos

Workflow de Requerimientos

Pgina 22

Workflow de Anlisis y Diseo


Muestran como se ver el sistema en la implementacin El modelo de casos de uso es la base para el diseo Workflows Detallados
Diseo Arquitectural Elaborar el Diseo

Workflow de Anlisis y Diseo

Pgina 23

Workflow de Implementacin
El modelo de implementacin describe el sistema ejecutable El modelo de diseo se usa como base para la implementacin Workflows Detallados
Estructurar el Modelo de Implementacin Planear la Integracin dentro de una Iteracin Implementar Clases dentro de una Iteracin Integrar cada Subsistema dentro de una Iteracin Integrar el Sistema dentro de una Iteracin

Workflow de Implementacin

Pgina 24

Workflow de Test
El modelo de test describe como se realizar la prueba del sistema Verificar la interaccin entre objetos, la integracin de todos los componentes del software, que todos los requerimientos se hallan implementado correctamente.

Workflow de Test
Workflows Detail
Planear y Disear la Prueba del sistema dentro de una Iteracin Planear y Disear la Prueba de Integracin Planear y Disear la Prueba de Performance Implementar la Prueba del Sistema en un Iteracin Implementar la Prueba de Integracin Implementar la Prueba de Performance Ejecutar la Prueba del Sistema en una Iteracin Ejecutar la Prueba de Integracin Ejecutar la Prueba de Performance Evaluar la Prueba del Sistema Evaluar la Prueba de Integracin Evaluar la Prueba de Performance

Pgina 25

Workflow de Test

Workflow de Desarrollo
Producir exitosamente releases del producto y entregar el software a sus usuarios finales Cubre actividades como
Producir releases externas del software Empaquetar software Distribuir software Instalar el software Suministrar ayuda y asistencia a los usuarios

En muchos casos incluye


Planificacin y conduccin de beta testing Migracin de software o datos existentes Aceptacin formal

Pgina 26

Workflow Administracin de Configuracin y Cambios Rastrear y Mantener la integridad de recursos de los proyectos como su evolucin en presencia de cambios. Ayuda a evitar
Problemas de actualizacin simultnea de componentes Notificacin limitada de cambios Mltiples versiones

Workflow Administracin de Configuracin y Cambios

Administrar desarrollo paralelo, realizado en distintos sitios y automatizacin del proceso de conformacin de builds.

Pgina 27

Workflow de Administracin del Proyecto


Provee una estructura para administrar los proyectos de software. Provee guas prcticas para planificar, proveer de personal, ejecutar y monitorear proyectos. Provee una estructura para administrar riesgos.

Workflow de Administracin del Proyecto

Pgina 28

Workflow de Ambiente
Provee a la organizacin de desarrollo de software el ambiente necesario (procesos y herramientas) para el soporte del equipo de desarrollo. Incluye
Configuracin del proceso Mejorar el proceso Seleccin y adquisicin de herramientas Apoyo del desarrollo Capacitacin

Modelos y Workflows
Cada workflow describe cmo crear y mantener un modelo en particular Business Modeling Requirements Workflow Analysis Design Workflow
Use-Case Model implemented by Design Model

Business Model

realized by

Implementation Workflow Test Workflow


Implementation Model

verified by

Test Model

Pgina 29

Elementos Adicionales del Proceso


Otros elementos agregados a las actividades o artifacts para hacer el proceso ms fcil de entender y usar. Guidelines: son reglas, recomendaciones y heursticas que
soportan actividades y steps

Framework de Proceso
RUP no es un Proceso Universal RUP constituye un framework de proceso. Workers, artifacts, activities, guidelines, concepts y mentors son los elementos que podemos agregar o reemplazar para incorporar o adaptar el proceso a las necesidades de la organizacin.

Templates: modelos o prototipos de artifacts. Tool mentors: proveen una gua adicional para mostrar como
desarrollar los Steps usando una herramienta de software especfica.

Concepts: algunos de los conceptos claves del proceso

Pgina 30

Vous aimerez peut-être aussi