UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

21
UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez

Transcript of UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Page 1: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

UMLANÁLISIS Y DISEÑO DE SISTEMAS II

Lic. Elisa Arizaca Ramirez

Page 2: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

¿Qué es UML?

UML = Unified Modeling LanguageLenguaje Unificado para la Construcción de Modelos

Un lenguaje de propósito general para el modelado orientado a objetos

UML combina notaciones provenientes desde: Modelado Orientado a Objetos Modelado de Datos Modelado de Componentes Modelado de Flujos de Trabajo

Page 3: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Situación de Partida

Diversos métodos y técnicas OO, con muchos aspectos en común pero utilizando distintas notaciones

Inconvenientes para el aprendizaje, aplicación, construcción y uso de herramientas, etc.

Pugna entre distintos enfoques

Establecer una notación estándar

Page 4: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Historia de UML

Comenzó como el “Método Unificado”, con la participación de Grady Booch y Jim Rumbaugh. Se presentó en el OOPSLA’95 (Object-Oriented Programming, Systems,

Languages, and Applications)

El mismo año se unió Ivar Jacobson. Los “Tres Amigos” son socios en la compañía Rational Software. Herramienta CASE Rational Rose

Page 5: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Historia de UML

Nov ‘97 UML aprobado por el OMG

1998

1999

2000

UML 1.2

UML 1.3

UML 1.4

2001 UML 2.0

Revisiones menores

Page 6: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Participantes en UML 1.0

Rational Software (Grady Booch, Jim Rumbaugh e Ivar Jacobson)

Digital Equipment Hewlett-Packard i-Logix (David Harel) IBM ICON Computing

(Desmond D’Souza) Intellicorp and James

Martin & co. (James Odell)

MCI Systemhouse Microsoft ObjecTime Oracle Corp. Platinium Technology Sterling Software Taskon Texas Instruments Unisys

Page 7: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

UML “reúne” enfoques OO

UML

Rumbaugh

Jacobson

Meyer

Harel

Wirfs-BrockFusion

Embly

Gamma et. al.

Shlaer-Mellor

Martin Odell

Booch

Pre - y Post - condiciones

Diagramas de Estado

Diseño orientado aResponsabildades, 90

Coleman Descripción de operaciones,Numeración de mensajes, 94

Clases Singleton(de semifallo)

Estructura, patrones, notas

Ciclos de vida de Objetos

OOSE, Ingenieria de Software Orientado a Objetos, 92

95

94

OMT, Tecnología de Modelado de objetos, 91

Page 8: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Inconvenientes en UML

Definición del proceso de desarrollo usando UML. UML no es una metodología

Falta integración con respecto de otras técnicas tales como patrones de diseño, interfaces de usuario, documentación, etc.

“Monopolio de conceptos, técnicas y métodos en torno a UML”

Page 9: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Perspectivas de UML

UML será el lenguaje de modelado orientado a objetos estándar predominante los próximos años

Razones: Participación de metodólogos influyentes Participación de importantes empresas Aceptación del OMG como notación estándar

Page 10: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Modelos y Diagramas

Un modelo captura una vista de un

sistema del mundo real. Es una abstracción

del sistema, considerando un cierto

propósito. Así, el modelo describe

completamente aquellos aspectos del

sistema que son relevantes al propósito del

modelo, y a un apropiado nivel de detalle.

Page 11: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Modelos y Diagramas

Diagrama: una representación gráfica de

una colección de elementos de modelado.

Sistema del

Mundo real

Avión militar Avión comercial

Avión de carga Avión de pasajeros

Motor Vendedor de billetes

Avión

1..4

1

1..4

1

Piloto

Reserva

n

1

n

1

Línea aérea

Vuelon1 n1

1..2

n

1..2

nn1 n1

1

n

1

n{ disjunta, completa }

{ disjunta, completa }

Diagramas(Herramientas de representación)

Page 12: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Modelos y Diagramas Un proceso de desarrollo de software debe

ofrecer un conjunto de modelos que permitan expresar el producto desde cada una de las perspectivas de interés

El código fuente del sistema es el modelo más detallado del sistema (y además es ejecutable). Sin embargo, se requieren otros modelos ...

Page 13: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Diagramas de UML

Diagrama de Casos de Uso Diagrama de Clases Diagrama de Objetos Diagramas de Comportamiento

Diagrama de Estados Diagrama de Actividad Diagramas de Interacción

Diagrama de Secuencia Diagrama de Colaboración

Diagramas de implementación Diagrama de Componentes Diagrama de Despliegue

Page 14: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

... Diagramas de UMLLos diagramas expresan gráficamente partes de un modelo

Use CaseDiagramsUse Case

DiagramsDiagramas de Casos de Uso

ScenarioDiagramsScenario

DiagramsDiagramas deColaboración

StateDiagramsState

DiagramsDiagramas deComponentes

ComponentDiagramsComponent

DiagramsDiagramas deDistribución

StateDiagramsState

DiagramsDiagramas de Objetos

ScenarioDiagramsScenario

DiagramsDiagramas deEstados

Use CaseDiagramsUse Case

DiagramsDiagramas deSecuencia

StateDiagramsState

DiagramsDiagramas deClases

Diagramas deActividad

Modelo

INTERACCIÓN

IMPLEMENTACIÓN

COMPORTAMIENTO

Page 15: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Resumen

UML define una notación que se expresa como diagramas, sirven para representar modelos/subsistemas o partes de ellos

El 80 por ciento de la mayoría de los problemas pueden modelarse usando alrededor del 20 por ciento de UML-- Grady Booch

II. Breve Tour por UML

Page 16: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

“...Los conceptos básicos de la OO se conocen desde hace dos décadas, pero su aceptación todavía no está tan extendida como los beneficios que esta tecnología puede sugerir”

“...La mayoría de los usuarios de la OO no utilizan los conceptos de la OO de forma purista, como inicialmente se pretendía. Esta práctica ha sido promovida por muchas herramientas y lenguajes que intentan utilizar los conceptos en diversos grados”

Problemas en OO

III. El Paradigma Orientado a Objeto

Page 17: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Un objeto puro contiene datos y operaciones que operan sobre los datos, pero ...

… Problemas en OO

DATOS

OPERACIONESOBJETO

Page 18: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Podemos distinguir dos tipos de objetos degenerados:

Un objeto sin datos (que sería lo mismo que una biblioteca de funciones).

… Problemas en OO

DATOS

OPERACIONES

OBJETOBIBLIOTECA

DE FUNCIONES

BJET

Page 19: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Un objeto sin “operaciones”, con sólo operaciones del tipo crear, recuperar, actualizar y borrar (que se correspondería con las estructuras de datos tradicionales).

… Problemas en OO

DATOS

OPERACIONES

OBJETOESTRUCTURA

DE DATOS TRADICIONALOPERACIONES:

•CREAR

•RECUPERAR

•ACTUALIZAR

•BORRAR

BJET

Page 20: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Un sistema construido con objetos degenerados no es un sistema verdaderamente orientado a objetos

… Problemas en OO

BJETBJET

BJETBJET

BJET

SISTEMA OO

“Las aplicaciones de gestión están constituidas mayoritariamente por objetos degenerados”

Page 21: UML ANÁLISIS Y DISEÑO DE SISTEMAS II Lic. Elisa Arizaca Ramirez.

Un sistema construido con objetos NO degenerados es un sistema verdaderamente orientado a objetos

… Problemas en OO

SISTEMA OO

OBJETO

OBJETO

OBJETO

OBJETO