Vous êtes sur la page 1sur 51

Sistemas de Informacin II

Introduccin al Proceso Unificado de


Desarrollo de Software

Autor: Ing. Silverio Bonilla

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Concepto de Mtodo

 James Rumbaugh et al.


Una metodologa de ingeniera del software es un proceso para
producir software de forma organizada, empleando una coleccin
de tcnicas y convenciones de notacin predefinidas
 Mario Piattini et al.
Conjunto de procedimientos, tcnicas, herramientas y un soporte
documental que ayuda a los desarrolladores a realizar nuevo
software
Autor: Ing. Silverio Bonilla

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Concepto de Mtodo

 El desarrollo de un sistema se puede explicar tambin como:


Una secuencia de modelados que ayuda a construir, a partir de la
realidad, uno o varios modelos, derivados unos de otros, con el
objetivo de lograr un modelo final o sistema.
 Y entonces:
Un mtodo es una gua que define las reglas de paso de un
modelo a otro para evolucionar progresivamente hasta el modelo
final.
Autor: Ing. Silverio Bonilla

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Qu es un proceso de desarrollo de SW?
 Define Quin debe hacer Qu, Cundo y Cmo
debe hacerlo
Requisitos nuevos
o modificados Proceso de Desarrollo
de Software

Sistema nuevo
o modificado

 o existe un proceso de software universal. Las


caractersticas de cada proyecto (equipo de
desarrollo, recursos, etc.) exigen que el proceso sea
configurable
Autor: Ing. Silverio Bonilla
4

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Qu es RUP?
 UML no es una metodologa de diseo y que es
bastante independiente del proceso de desarrollo, lo que
significa que se puede utilizar con diferentes procesos
de ingeniera del software.
 Para poder aplicar UML con garanta de conseguir un
modelo de objetos de calidad, es necesaria una
metodologa completa, coherente y asequible.
 Esto es lo que hicieron los tres amigos de Rational
Corp. , James Rumbaugh, Gardy Booch e Ivar
Jacobson: Disear una metodologa que ensea a
utilizar correctamente UML en el proceso de modelado
de sistemas, denominada Proceso Unificado de
Ing. Silverio Bonilla
5
Rational (Rational Autor:
Unified
process)

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
 Las actividades de desarrollo del RUP estn dirigidas
por los Casos de Uso:
El Proceso Unificado pone un gran nfasis en la
construccin de sistemas basada en una amplia
comprensin de cmo se utilizar el sistema que se
entregue
Las nociones de los casos de uso y los escenarios se
utilizan para guiar el flujo de procesos desde la
captura de los requisitos hasta las pruebas, y para
proporcionar caminos que se pueden reproducir
Autor: Ing. Silverio Bonilla
6
durante el desarrollo
del sistema

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
 Las actividades de desarrollo del RUP estn dirigidas
por los Casos de Uso:
Es un proceso dirigido por los casos de uso
Capturar, definir y
validar los casos de uso

Requisitos
Anlisis & Diseo
Implementacin

Casos de Uso
integran el
trabajo

Pruebas
Autor: Ing. Silverio Bonilla

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

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
 Las actividades de desarrollo del RUP estn dirigidas
por los Casos de Uso:
Es un proceso dirigido por los casos de uso
trace
Caso de Uso

trace
Modelo de Anlisis

Modelo de Diseo

trace

trace

Pruebas
Unitarias
Pruebas Funcionales
Autor: Ing. Silverio Bonilla

X
Caso de Prueba

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
El RUP es un proceso Iterativo-Incremental:
 Un enfoque iterativo propone una comprensin
incremental del problema a travs de refinamientos
sucesivos y un crecimiento incremental de una solucin
efectiva a travs de varias versiones
 Como parte del enfoque iterativo se encuentra la
flexibilidad para acomodarse a nuevos requisitos o a
cambios tcticos en los objetivos del negocio
 Permite que el proyecto identifique y resuelva los
riesgos ms bien pronto que tarde.
Autor: Ing. Silverio Bonilla

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
El RUP es un proceso Iterativo-Incremental:
 Se basa en la ampliacin y el refinamiento del sistema
 Una serie de desarrollos cortos (mini proyectos de 2 a 6
semanas, cada iteracin reproduce el ciclo de vida a
menor escala)
 No slo se mejora sino que el sistema tambin crece:
Proceso iterativo e incremental
 El resultado de cada iteracin es un sistema ejecutable
(aunque sea incompleto y no est listo para su
instalacin)
Autor: Ing. Silverio Bonilla
10

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
El RUP es un proceso Iterativo-Incremental:
 Un sistema instalable requiere varias iteraciones
 Es una evolucin de prototipos ejecutables
 Los objetivos de una iteracin se establecen en funcin
de la evaluacin de las iteraciones precedentes

Autor: Ing. Silverio Bonilla

11

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
El RUP es un proceso Iterativo-Incremental:
Enfoque
Secuencial
Incremento 1

Enfoque
Iterativo e
Incremental

Incremento 2
Incremento 3
Autor: Ing. Silverio Bonilla

12

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
El RUP es un proceso Centrado en la Arquitectura:
 Arquitectura de un sistema es la organizacin o estructura
de sus partes ms relevantes
 La arquitectura describe los elementos fundamentales del
sistema:
Subsistemas,
Dependencias,
Interfaces,
Colaboraciones, Nodos ...
 Un arquitectura ejecutable es una implementacin parcial
del sistema, construida para demostrar algunas funciones
y propiedades
 RUP establece refinamientos sucesivos de una
arquitectura ejecutable,
construida como un prototipo
Autor: Ing. Silverio Bonilla
13
evolutivo

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
El RUP es un proceso Centrado en la Arquitectura:
 El proceso se centra en establecer al principio una
arquitectura software que gua el desarrollo del sistema:
Se facilita el desarrollo en paralelo
Se minimiza la repeticin de trabajos
Se incrementa la probabilidad de reutilizacin de componentes y el mantenimiento posterior del sistema

 Este diseo arquitectnico sirve como una slida base


sobre la cual se puede planificar y manejar el desarrollo
de software basado en componentes.
Autor: Ing. Silverio Bonilla

14

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Caractersticas del RUP
 El Proceso Unificado soporta las tcnicas orientadas a
objetos.
 Los modelos del Proceso Unificado se basan en los
conceptos de objeto y clase y las relaciones entre ellos, y
utilizan UML como la notacin comn.
 El Proceso Unificado es un proceso configurable.
Aunque un nico proceso no es adecuado para todas las
organizaciones de desarrollo de software, el Proceso
Unificado es adaptable y puede configurarse para cubrir
las necesidades de proyectos que van desde pequeos
equipos de desarrolloAutor:
deIng.
software
hasta grandes empresas
Silverio Bonilla
15
de desarrollo

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Proceso de Dos Dimensiones
 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.
Autor: Ing. Silverio Bonilla

16

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Ciclos y Fases
 RUP divide el proceso de desarrollo en ciclos, teniendo
un producto al final de cada ciclo.
 Cada ciclo se divide en cuatro Fases:
 Inicio (inception),
 Elaboracin,
 Construccin,
 Transicin.

 Cada fase concluye con un hito bien definido donde


deben tomarse ciertas decisiones.
Autor: Ing. Silverio Bonilla

17

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujos de Trabajos y Fases del RUP

Autor: Ing. Silverio Bonilla

18

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
 En esta estructura matricial se puede deducir que:
 Los resultados de los flujos de trabajo de proceso son los
MODELOS
 La conjuncin de tiempo (fases) y esfuerzos (flujos de trabajo)
da lugar a las iteraciones
 La conjuncin de resultados (modelos) y esfuerzos (flujos de
trabajo) da lugar a los tipos de modelos
 La conjuncin de tiempo (fases) y resultados (modelos) da lugar
a las versiones
 Se puede representar esta estructura conceptual mediante una
figura tridimensional donde:
Eje X: Fases indica tiempo
Eje Y: Flujos de trabajo indica esfuerzos
Ing. Silverio Bonilla
Eje Z: Modelos indicaAutor:
resultados

19

Sistemas de Informacin II
Introduccin al Proceso unificado RUP

Autor: Ing. Silverio Bonilla

20

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Las iteraciones son distintas en el ciclo de vida

Autor: Ing. Silverio Bonilla

21

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Fase Inicio
 Se establece la oportunidad y alcance el proyecto.
 Se identifica todas las entidades externas con las que se
trata (actores) y se define la interaccin a un alto nivel de
abstraccin:
identificar todos los casos de uso,
describir algunos en detalle.

 La oportunidad del negocio incluye:


criterios de xito,
identificacin de riesgos,
estimacin de recursos necesarios,
Autor: Ing. Silverio Bonilla
plan de las fases incluyendo
hitos.

22

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Productos de la Fase Inicio
 Un documento de visin  Caso de negocio
general
 contexto,
 requerimientos
generales
del proyecto,
 caractersticas principales,
 restricciones.

 criterios de xito,
 pronstico financiero.

 Identificacin inicial de
riesgos.
 Modelo inicial de casos de  Plan de proyecto.
uso (10% a 20 % listos).
 Uno o ms prototipos.
 Glosario.
Autor: Ing. Silverio Bonilla

23

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Hitos
Objetivos del
Ciclo de Vida

Concepcin

Elaboracin

Construccin

Transicin

 Las partes interesadas deben acordar el alcance y la


estimacin de tiempo y costo.
 Comprensin de los requerimientos plasmados en casos
de uso.
Autor: Ing. Silverio Bonilla

24

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Fase de Elaboracin
 Objetivos:
 analizar el dominio del problema,
 establecer una arquitectura base slida,
 desarrollar un plan de proyecto,
 eliminar los elementos de mayor riesgo para el desarrollo
exitoso del proyecto.

 Visin de una milla de amplitud y una pulgada de


profundidad porque las decisiones de arquitectura
requieren una visin global del sistema.
Autor: Ing. Silverio Bonilla

25

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Productos de la Fase de Elaboracin
 Es la parte ms crtica del
proceso:
 al final toda la ingeniera
dura est hecha,
 se puede decidir si vale la
pena seguir adelante.

 Ya hay menos riesgos y se


puede planificar el resto
del proyecto con menos
incertidumbre.
 Se
construye
una
arquitectura ejecutable que
contemple

 A partir de aqu la
arquitectura, los
 los casos de uso crticos,
requerimientos y los
 los riesgos identificados.
planes de desarrollo son
Autor: Ing. Silverio Bonilla
26
estables.

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Productos Concretos de la Fase de Elaboracin
 Modelo de casos de uso
(80% completo) con
descripciones detalladas.
 Otros requerimientos no
funcionales o no asociados
a casos de uso.
 Descripcin de la
Arquitectura del Software.

 Un prototipo ejecutable de
la arquitectura.
 Lista revisada de riesgos y
del caso de negocio.
 Plan de desarrollo para el
resto del proyecto.
 Un manual de usuario
preliminar.

Autor: Ing. Silverio Bonilla

27

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Hitos
Arquitectura de
Ciclo de Vida

Concepcin

Elaboracin

Construccin

Transicin

 Condiciones de xito de la elaboracin:


 es estable la visin del producto?
 es estable la arquitectura?
 las pruebas de ejecucin convencen de que los riesgos han sido
abordados y resueltos?
 es el plan del proyecto algo realista?
Ing. Silverio
Bonilla
28
 estn de acuerdo conAutor:
el plan
todas
las personas involucradas?

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Fase de Construccin
 En esta fase todas las componentes restantes se
desarrollan e incorporan al producto.
 Todo es probado en profundidad.
 El nfasis est en la produccin eficiente y no ya en la
creacin intelectual.
 Puede hacerse construccin en paralelo, pero esto exige
una planificacin detallada y una arquitectura muy
estable.
Autor: Ing. Silverio Bonilla

29

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Productos de la Fase de Construccin
 El producto de software integrado y corriendo en la
plataforma adecuada.
 Manuales de usuario.
 Una descripcin del release actual.

Autor: Ing. Silverio Bonilla

30

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Hitos
Capacidad
Operacional

Concepcin

Elaboracin

Construccin

Transicin

 Se obtiene un producto beta que debe decidirse si puede


ponerse en ejecucin sin mayores riesgos.
 Condiciones de xito:
 el producto est maduro y estable para instalarlo en el
ambiente del cliente?
 estn los interesados listos para recibirlo?
Autor: Ing. Silverio Bonilla

31

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Fase de Transicin
 El objetivo es traspasar el software desarrollado a la
comunidad de usuarios.
 Una vez instalado surgirn nuevos elementos que
implicarn nuevos desarrollos (ciclos).
 Incluye:
 pruebas beta para validar el producto con las expectativas del
cliente,
 ejecucin paralela con sistemas antiguos,
 conversin de datos,
 entrenamiento de usuarios,
32
 distribuir el producto.Autor: Ing. Silverio Bonilla

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Hitos
Producto

Concepcin

Elaboracin

Construccin

Transicin

 Obtener autosuficiencia de parte de los usuarios.


 Concordancia en los logros del producto de parte de las
personas involucradas.
 Lograr el consenso cuanto antes para liberar el producto
al mercado.
Autor: Ing. Silverio Bonilla

33

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujo de Trabajo (Workflows)
Trabajador
Un trabajador define el comportamiento y las
responsabilidades de un individuo.
Es como un sombrero que la persona usa durante el
proyecto:
una persona puede tener varios sombreros,
es el rol que desempea en un momento dado.
Las responsabilidades:
hacer una serie de actividades,
ser el responsable Autor:
de una
serie
de artefactos.
Ing. Silverio
Bonilla
34

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujo de Trabajo (Workflows)
Actividades
 Una actividad es una unidad de
trabajo que se asigna a un
trabajador:
 crear o modificar un
artefacto.
 Una actividad lleva entre un
par de horas y un par de das,
involucra un solo trabajador y
un nmero pequeo de
artefactos.

 Las actividades se consideran


en
la
planificacin
y
evaluacin del progreso del
proyecto.
 Ejemplos:

 Planificar una iteracin Administrador de proyecto.


 Encontrar actores y casos de uso Analista.
 Revisar el diseo - Revisor de
diseo.
 Ejecutar pruebas de performance
Autor: Ing. Silverio Bonilla
35
- Ing. de pruebas de performance.

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujo de Trabajo (Workflows)
Asignacin de Actividades
Recurso

Trabajador

Actividad

Pablo

Diseador

Diseo de Objetos

Mara

Autor de Casos de Uso

Detallar un Caso de Uso

Jos

Diseador de Casos de Uso

Disear un Caso de Uso

Silvia

Revisor de Diseo

Rever el Diseo

Arquitecto

Anlisis de Arquitectura
Diseo de Arquitectura

Eduardo

Autor: Ing. Silverio Bonilla

36

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujo de Trabajo (Workflows)
Artefactos
 Ejemplos:
 Un modelo como el modelo
de casos de uso o el modelo
de diseo.
 Un elemento del modelo,
como una clase o un caso
de uso.
 Un documento tal como el
Caso del Negocio o la
Arquitectura del Software.
 Cdigo fuente.
Autor: Ing. Silverio Bonilla
37
 Cdigo ejecutable.

 Elemento de informacin
producido, modificado o usado
por el proceso.
 Son los productos tangibles del
proyecto.
 Son usados por los trabajadores
para realizar nuevas
actividades y son el resultado
de esas actividades.

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujos de Trabajo (Workflows)
 Una lista de actividades,
trabajadores y artefactos no
constituye un proceso.
 Un flujo de trabajo es una
secuencia de actividades que
produce un resultado valioso.
 No siempre es posible
representar flujos de trabajo.

Anlisis de
Arquitectura

Diseo de
Arquitectura

Describir
Concurrencia

Describir
Distribucin

Arquitecto
Anlisis de
Casos de Uso

Diseo de
Casos de Uso

Diseador de
Casos de Uso
Anlisis de
Objetos

Diseo de
Objetos

Diseador

Revisor de
Diseo

Autor: Ing. Silverio Bonilla

Revisar el
Anlisis

Revisar el
Diseo

Revisar la
Arquitectura

38

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujos de Trabajo Esenciales
Flujos de Trabajo
de Ingeniera

Flujos de Trabajo
de Apoyo
Autor: Ing. Silverio Bonilla

39

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujos de Trabajo (Workflows)
Modelamiento del egocio
 Existen habitualmente problemas de comunicacin entre
ingenieros de software e ingenieros de negocios.
 RUP proporciona un lenguaje y proceso comn para
ambos mbitos.
 Para el modelamiento del negocio se usan business use
cases y su objetivo es conocer el sistema actual o el
negocio.

Autor: Ing. Silverio Bonilla

40

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujo de Trabajo (Workflows)
Requerimientos
 Los desarrolladores y clientes
deben acordar qu es lo que el
sistema debe hacer:
 relevar requerimientos,
 documentar funcionalidad y
restricciones,
 documentar decisiones,
 identificar actores,
 identificar casos de uso

Imprimir Informe

Cliente

Operador

Reciclar

Administrar Depsito

 Los casos de uso describen la


funcionalidad.
 Los
requerimientos
no
funcionales se incluyen en una
especificacin complementaria.

Autor: Ing. Silverio Bonilla

41

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujo de Trabajo (Workflows)
Anlisis y Diseo
 Descripcin de cmo se
 Disear
y
validar
la
implementar el sistema: un
arquitectura es una tarea
plano.
esencial.
 Debe:
 El modelo de diseo consta de
 ejecutar las tareas y
 clases estructuradas en
funciones descritas en los
paquetes,
casos de uso,
 diseos de subsistemas con
 satisfacer todos los
interfaces
definidas
requerimientos,
(componentes),
 flexible a cambios.
 forma de colaboracin entre
las clases.
 El diseo se centra en la Autor:
nocin
Ing. Silverio Bonilla
42
de arquitectura.

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujos de Trabajo (Workflows)
Implementacin
 Propsito:
definir la organizacin del cdigo,
implementar clases y objetos en forma de componentes
(fuente, ejecutables, etc.),
probar las componentes desarrolladas,
integrar las componentes en un sistema ejecutable.

Autor: Ing. Silverio Bonilla

43

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujo de Trabajo (Workflows)
Pruebas
 Propsitos:
 RUP propone probar las
componentes
desde
el
 verificar la interaccin entre
principio:
los objetos,
 confiabilidad, funcionalidad
 verificar la integracin
y performance.
apropiada de componentes,
 Las pruebas de regresin son
 verificar que se satisfacen
importantes en desarrollos
los requerimientos,
iterativos.
 identificar los defectos y
 Rational tiene herramientas
corregirlos antes de la
para
automatizar
algunas
instalacin.
pruebas.
 RUP describe como planear
y
Autor: Ing. Silverio Bonilla
44
ejecutar estas pruebas.

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujo de Trabajo (Workflows)
Distribucin
 Producir un producto y
 A veces tambin incluye:
hacerlo llegar a sus
realizar pruebas beta,
usuarios finales.
migracin de datos,
 Incluye varias actividades:
aceptacin formal.
producir un release,
 La mayor parte de la
empaquetar el software,
distribucin ocurre durante
distribuir el software,
la transicin.
instalarlo,
 Este es uno de los flujos
de
trabajo
menos
asistir a los usuarios
Autor: Ing. Silverio Bonilla
45
documentados en RUP.

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Flujo de Trabajo (Workflows)
Elementos del RUP
Workflow, Workflow Detail , Workers, Actividades y Artefactos
Ejemplo
Workflow: Requirements

Workflow Detail:Analyse the Problem

Workers
Autor: Ing. Silverio
Bonilla

Artefactos
46
Actividades








Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Artefactos Modelos
Modelo del negocio: establece una abstraccin de la
organizacin
Modelo del dominio: establece el contexto del sistema
Modelo de casos de uso: establece los requisitos
funcionales del sistema
Modelo de anlisis: establece un diseo de las ideas
Modelo de diseo: establece el vocabulario del problema
y su solucin
Modelo del proceso (opcional): establece los
mecanismos de concurrencia y sincronizacin del sistema
Autor: Ing. Silverio Bonilla

47

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Artefactos Modelos
 Modelo de despliegue: establece la topologa hardware
sobre la cual se ejecutar el sistema
 Modelo de implementacin: establece las partes que se
utilizarn para ensamblar y hacer disponible el sistema
fsico
 Modelo de pruebas: establece las formas de validar y
verificar el sistema.

Autor: Ing. Silverio Bonilla

48

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Artefactos Modelos

Autor: Ing. Silverio Bonilla

49

Sistemas de Informacin II
Introduccin al Proceso unificado RUP
Modelos y flujos de trabajo del Proceso Unificado

Autor: Ing. Silverio Bonilla

50

Sistemas de Informacin II
Introduccin al Proceso unificado RUP

Modelos y
Diagramas
en RUP

Autor: Ing. Silverio Bonilla

51

Vous aimerez peut-être aussi