Вы находитесь на странице: 1из 27

SESIÓN 01:

Triángulo de Desarrollo de
software: UML, PUDS y
Rational Rose
Prof. Mg. José Antonio Ogosi A.

1
Agenda
• Triángulo de Desarrollo de software.
• Metodologías de desarrollo de software.
– Ciclos de vida del software.
– El Proceso Unificado de Desarrollo PUD.
• Herramienta Visual Rational Rose.

2
El Triángulo de Desarrollo de Software
Concepción Elaboración Construcción Transición

Iteraciones Iter. Iter. Iter. Iter. Iter. Iter. Iter.


prelim #1 #2 #n #n+1 #n+2 #m #m+1

Metodología de
desarrollo de
software: PUD

Herramienta
Notación Visual

3
METODOLOGÍA DE
DE DESARROLLO DE
SOFTWARE

• Existen varias Metodologías de Desarrollo


de software o ciclos de vida del software.
• Existen estándares mundiales como el ISO
12207-1.

4
Descripción del Ciclo de vida del
Software según la norma ISO 12207-1
• Las actividades a realizar durante el ciclo de vida
del software se agrupan en cinco procesos
principales, ocho procesos de soporte y cuatro
procesos de la organización, así como un proceso
especial que permite adaptar el ciclo de vida a
cada proyecto concreto.
• A destacar que la norma no recomienda ningún
modelo concreto de ciclo de vida, ni de gestión del
software, ni detalla cómo realizar ninguna de las
actividades.
5
Ciclo de vida del Software
(ISO 12207-1)
PROCESOS PRINCIPALES PROCESOS DE SOPORTE
DOCUMENTACIÓN
ADQUISICIÓN GESTIÓN DE CONFIGURACIÓN
ASEGURAMIENTO DE CALIDAD
SUMINISTRO
VERIFICACIÓN
VALIDACIÓN
EXPLOTACIÓN REVISIÓN CONJUNTA
DESARROLLO
AUDITORÍA
MANTENIMIENTO
RESOLUCIÓN DE PROBLEMAS

PROCESOS DE LA ORGANIZACIÓN
GESTIÓN INFRAESTRUCTURA

MEJORA FORMACIÓN 6
Ciclos de Vida del Software
 Ciclos de Vida Clásicos:
 Modelo en Cascada (Waterfall).

 Modelo Incremental.

 Modelo en Espiral.

 Ciclos de Vida Orientados a Objetos:


 Modelo de Agrupamiento (Cluster).

 Modelo Fuente.

 Modelo Remolino.

 Modelo del Proceso Unificado de Desarrollo de software PUD

 Otros
 La programación extrema o eXtreme
7
 Scrum aplicado al desarrollo de software.
PROCESO UNIFICADO
DE DESARROLLO PUD
Concepción Elaboración Construcción Transición

Iteraciones Iter. Iter. Iter. Iter. Iter. Iter. Iter.


prelim #1 #2 #n #n+1 #n+2 #m #m+1

8
Metodología de desarrollo PUD

Concepción Elaboración Construcción Transición

Iteración ... Iteración ........ Iteración Iteración …… Iteración ……….


Preliminar Arquitectura Desarrollo Desarrollo Transición

HITO HITO HITO HITO HITO HITO HITO HITO

9
Metodología de desarrollo

Fases
Procesos Generales Concepción Elaboración Construcción Transición

Modelo de Negocio

Requerimientos

Análisis

Diseño

Implementación

Certificación

Entrega

Procesos de Soporte
Control de cambios
Gestión del Proyecto

Entorno

Iteraciones Iter. Iter. Iter. Iter. Iter. Iter. Iter.


prelim #1 #2 #n #n+1 #n+2 #m #m+1

Iteraciones 10
Vistas de un modelo
“Un modelo es una descripción completa de un sistema desde una perspectiva concreta”

Vista Diagrama de Casos de Uso


lógica
Diagrama de Clases

Diagrama de Objetos
Vista de
Diagrama de Secuencia
implementación
Vista de Diagrama de Colaboración
requerimientos
Vista de Diagrama de Estado
despliegue Diagrama de Actividad

Diagrama de Componentes
Vista de
Diagrama de Despliegue
procesos
11
Herramientas de la Metodología

Requerimientos Análisis Diseño Implementación Certificación

Modelo Modelo Modelo Modelo Modelo Modelo


Casos de Uso Análisis Diseño de Componentes de Despliegue de Certificación

Diagr. de Diagr. de Diagr. de Diagr. de Diagr. de Diagr. de Diagr. de Diagr. de


Casos de Uso Actividad Secuencia Colaboración Clases/Objetos Estados Componentes Despliegue

12
NOTACION:
Lenguaje Unificado de Modelamiento

13
El Lenguaje Unificado de Modelado

Definición:

El UML es un lenguaje gráfico para la especificación,


visualización, construcción y documentación de modelos
orientados a objetos que representan sistemas intensivos
en software.

= Unified Modeling Language

UML no es un método sino un lenguaje de


modelamiento.
14
UML toma lo mejor de varios métodos

Rumbaugh
Booch Jacobson

Odell
Clasificación Meyer
Pre y Post condiciones

Shlaer-Mellor
Ciclo de vida de objetos
Harel
Máquinas de estado
Gamma et. al.
Marcos de trabajo,
patrones, notas
Embly Wirfs-Brock
Singleton clases Responsabilidades
Fusion
Descripción de operaciones,
numeración de mensajes

15
Características del UML
- Proporciona a los desarrolladores un lenguaje de
modelamiento ampliamente aceptado y listo para usar.
- Integra las mejores prácticas del desarrollo de software.
- Permite la intercambio de modelos entre las diferentes
herramientas de software.
- Es independiente del lenguaje de programación y de
métodos y procesos particulares de desarrollo de software.
- Proporciona sus propios mecanismos de extensión
- Agrupa los conceptos de orientación a objetos definiendo
su significado.

16
Por qué aprender UML
-Porque UML es el lenguaje de modelado de objetos
estándar dominante.
-Porque es apoyado por metodólogos y empresas
importantes en Tecnologías de Información.
-Porque cuenta con la aprobación de la OMG como
notación estándar.
-Porque todas las herramientas modernas proporcionan
soporte para UML.
-Porque nos facilita el aprendizaje del enfoque orientado
a objetos pues basta con aprender este estándar y no
perdernos en toda la jungla de métodos y notaciones
existentes.
17
Breve historia del UML
- Los lenguajes de modelado
orientados al objeto
comenzaron a aparecer a
mediados de la década de '70.

- El número de lenguajes que


modelaban objetos aumentó
de menos de 10 a más de 50
durante el período entre 1989-
1994.

- Muchos de los que utilizaban estos lenguajes no


encontraban satisfacción completa en ninguno de ellos,
esto motivó la llamada "Guerra de los Métodos".
18
. . . Breve historia del UML

. . . La “Guerra de los Métodos”

Existían muchos métodos y cada uno tenía


un lenguaje de modelado propio.

Esto dificultó el aprendizaje, aplicación,


construcción, uso de herramientas, etc.

Pugna entre los distintos gurús que


defendían sus propios métodos y
simbologías.

Se observa la necesidad de una notación


estándar.
19
. . . Breve historia del UML

El desarrollo del UML comenzó en finales de


1994 en que Grady Booch y Jim Rumbaugh
de Rational Software Corporation,
comenzaron su trabajo sobre la unificación de
los métodos de Booch y de OMT (Object
Modeling Technique).

A finales de 1995, Ivar Jacobson y su


compañía de Objectory se unieron a
Rational y combinaron sus métodos.

Booch, Rumbaugh, y Jacobson, definieron el UML 0,9


y 0,91 en junio y octubre de 1996.
20
Modelando con UML

Use Case
Use Case State
Diagramas de
Diagrams State
Diagrams Diagramas de
Diagrams
Component Casos de Uso Diagrams
Component
Diagramas Clases State
Diagrams de
Diagrams State
Despliegue Diagramas de
Diagrams
Diagrams
Objetos

State Use Case


State Use Case
Diagramas de
Diagrams Diagramas de
Diagrams
Diagrams Diagrams
Componentes Modelo Secuencia

Scenario
Scenario Scenario
Diagramas de Scenario Diagramas de
Diagrams
Diagramas de
Diagrams Diagrams
Actividad Diagrams Colaboración
Estados

21
HERRAMIENTA

VISUAL:

Rational Rose 22
LAS CUATRO VISTAS DE LA
ARQUITECTURA EN ROSE
• En el explorador tenemos cuatro carpetas que
representan cuatro vistas de la arquitectura del
sistema.
• Cada vista muestra una proyección de la arquitectura
y usa un conjunto de diagramas.
• Cada vista se puede estructurar en paquetes, de
manera que el diagrama Main suele estar formado
por paquetes y sus relaciones.
• Las vistas de Rose son las siguientes:

23
1. La Vista de Casos de Uso
(Use Case View)
• Que es la vista en la que se presenta el
comportamiento deseado del sistema: en
ella se encontrarán los modelos
relacionados con la captura de requisitos.
Según el proceso que hemos visto en
clase, en esta vista se ubicarían el modelo
del negocio, el modelo conceptual, el
modelo de casos de uso del sistema y los
diagramas de secuencia del sistema.
24
2. La Vista Lógica
(Logical View)
• En la que encontraríamos los modelos que
muestran el vocabulario y la funcionalidad
(estructura y comportamiento) del sistema, a
través de un conjunto de colaboraciones que
realizan los casos de uso de la vista de casos de
uso (colaboraciones que se modelan mediante
diagramas de clases y diagramas de
interacción: secuencia y colaboración).

25
3. La Vista de Componentes
(Component View)
• En la que se representa la implementación del
sistema mediante componentes, la organización
modular del software. Esta vista está relacionada
con la gestión de la configuración del software.
Los paquetes en esta vista se organizan en niveles.
Un componente está relacionado con un archivo
de software y un lenguaje de programación. Las
clases de la vista lógica se asignarían a los
componentes de la vista de componentes.
26
4. La Vista de Despliegue
(Deployment View)

• En la que se modela la distribución o


despliegue de los componentes a los nodos
de procesamiento del sistema. Muestra la
topología, distribución e instalación del
sistema.

27