Está en la página 1de 32

TEMA 4.

Proceso Unificado de
Desarrollo de Software RUP
Ing. Marisol Ingrid Muriel Almanza
I. Introducción: Modelado de SW

Construcción de una casa para “fido”

Puede hacerlo una sola persona


Requiere:
Modelado mínimo
Proceso simple
Herramientas simples
I. Introducción: Modelado de SWI

Construcción de una casa

Construida eficientemente y en un tiempo


razonable por un equipo
Requiere:
Modelado
Proceso bien definido
Herramientas más sofisticadas
I. Introducción: Modelado de SI

Construcción de un rascacielos
I. Introducción: Modelado de SWI

Claves en Desarrollo de SI

Notación

Herramientas Proceso
Ingeniería de Software

Definición según Fritz Bauer [PRE93] :

“ El establecimiento y uso de principios de


ingeniería robustos, orientados a obtener
software económico que sea fiable y funcione de
manera eficiente sobre máquinas reales.”
Ingeniería de Software

PRINCIPIOS Y METODOS ROBUSTOS

• METODOS

• HERRAMIENTAS

• LINEAMIENTOS
Enfoques al problema del
análisis y diseño de sistemas

• Enfoque estructurado:

Orientado a flujos de datos y funciones.

•Enfoque orientado a objetos:


Orientado a conceptos u objetos y
relaciones entre estos.
Rational Unified Process

RUP es una propuesta de proceso para el


desarrollo de software orientado a objeto
que utiliza UML para describir un sistema

¿UML?

Rational Software Corporation, 1998


Unified Modeling Language
UML

Booch, Rational Software


Rumbaugh Corporation.
Jacobson (1995)
Las Bases de UML

JAMES Object Modelling Technique 1991


RUMBAUGH (OMT)

GRADY Object Oriented Design with


BOOCH Applications 1991

IVAR Object Oriented Software


JACOBSON Engineering: A Use Case Driven
Approach 1992 (OOSE)
UML no es un método

El UML es un lenguaje que permite la modelación


de sistemas con tecnología orientada a objetos

Aprobado como estándar por OMG en


noviembre de 1997
Modelos Gráficos del UML

 Casos de Uso y Diagramas de Casos de Uso

Casos de uso
Diagrama de casos de uso
Modelos Gráficos del UML

 Diagramas de estructura estática


 Diagrama de clases
 Diagrama de Objetos
Modelos Gráficos del UML
 Diagramas del comportamiento
Diagramas de Transición de estado
Diagramas de Actividad
Diagramas de Secuencia
Diagrama de Colaboración

Diagrama de Secuencia Diagrama de Colaboración


Modelos Gráficos del UML

 Diagramas de implementación
 Diagramas de componentes
 Diagramas de instalación/Distribución
(Despliegue)

Diagrama de componentes
II. Breve Tour por UML

Diagramas de UML
Los diagramas expresan gráficamente partes de un modelo

State
State
Diagrams
Use Case Diagramas
Diagrams de
Use Case
Diagrams Clases State
Use Case Diagramas
Diagrams de State
Diagrams
Diagramas
Use Case
Diagrams
Diagramas Casos de Uso Diagrams de
Diagrams de Objetos
Secuencia

Scenario State
Scenario
Diagrams State
Diagrams
Diagramas
Diagrams de Diagramas
Diagrams de
Colaboración Modelo Componentes

Scenario Component
Scenario Component
Diagrams
Diagramas
Diagrams
Diagramas
Diagrams de Diagrams de
Estados Distribución
Diagramas de
Actividad
Proceso de desarrollo de software
¿Qué es?
Es el conjunto de actividades necesarias para
transformar los requisitos de un usuario en un
sistema de software.

Requisitos Sistema
del usuario Proceso de
software
desarrollo de
software
IV. Proceso de Desarrollo de SW basado en UML

Dos Dimensiones
IV. Proceso de Desarrollo de SW basado en UML

Fases e Hitos (Milestones)

Inicio Elaboración Construcción Transición

Objetivos Arquitectura Capacidad Liberación


(Visión) Operacional del Producto
Inicial

tiempo
IV. Proceso de Desarrollo de SW basado en UML

Elementos en RUP
Artefactos
 Resultado parcial o final que es producido y usado
durante el proyecto. Son las entradas y salidas de
las actividades
 Un artefacto puede ser un documento, un modelo o
un elemento de modelo
IV. Proceso de Desarrollo de SW basado en UML

Características Esenciales de
RUP

▷ Proceso Dirigido por los Casos de Uso


▷ Proceso Iterativo e Incremental
▷ Proceso Centrado en la Arquitectura
IV. Proceso de Desarrollo de SW basado en UML

Proceso dirigido por los Casos de Uso

Capturar, definir y
Requisitos
validar los casos de uso

Análisis & Diseño Casos de Uso


Realizar los
integran el
casos de uso
Implementación trabajo

Verificar que se
Pruebas satisfacen los casos
de uso
IV. Proceso de Desarrollo de SW basado en UML

Proceso dirigido por los Casos de Uso

«trace» «trace»

Caso de Uso Realización de Análisis Realización de Diseño

«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]
IV. Proceso de Desarrollo de SW basado en UML

Proceso Iterativo e
Incremental
 El ciclo de vida iterativo se basa en la
evolución de prototipos ejecutables que se
muestran a los usuarios y clientes
 En el ciclo de vida iterativo a cada
iteración se reproduce el ciclo de vida en
cascada a menor escala
 Los objetivos de una iteración se
establecen en función de la evaluación de
las iteraciones precedentes
IV. Proceso de Desarrollo de SW basado en UML

Proceso Iterativo e Incremental


 Las actividades se encadenan en una
mini-cascada con un alcance limitado por
los objetivos de la iteración

Análisis

Diseño

Codific.
n veces Pruebas e
Integración
IV. Proceso de Desarrollo de SW basado en UML

Proceso Iterativo e Incremental

Enfoque
Cascada

Enfoque
Iterativo e
Incremental
IV. Proceso de Desarrollo de SW basado en UML

Proceso Iterativo e Incremental


Grado de Finalización de Artefactos
Beneficios de la iteración

• Reduce el coste del riesgo al coste de un solo


incremento.

• Menos riesgo de no sacar el producto al mercado


en fecha.

• Acelera el ritmo de desarrollo.

• Las necesidades del usuario y correspondientes


requisitos no pueden definirse completamente al
principio. Se requieren iteraciones sucesivas.
Centrado en la arquitectura

En la construcción,
vista de:
A) Estructura.
B) Calefacción.
C) Plomería.
D) Electricidad.

Estáticos
Aspectos
Dinámicos
IV. Proceso de Desarrollo de SW basado en UML

Proceso Centrado en la Arquitectura


▷ Arquitectura de un sistema es la organización o
estructura de sus partes más relevantes
▷ Un arquitectura ejecutable es una implementación
parcial del sistema, construida para demostrar algunas
funciones y propiedades

▷ RUP establece refinamientos sucesivos de una


arquitectura ejecutable, construida como un prototipo
evolutivo

Inception Elaboration Construction Transition

Architecture
GRACIAS POR SU
ATENCION

También podría gustarte