Está en la página 1de 37

I.

Introduccin: UML

Qu es UML?
UML = Unified Modeling Language
Un lenguaje de propsito general para el
modelado orientado a objetos
Documento OMG Unified Modeling Language
Specification
UML combina notaciones provenientes desde:
Modelado Orientado a Objetos
Modelado de Datos
Modelado de Componentes
Modelado de Flujos de Trabajo (Workflows)

1
www.dsic.upv.es/~uml
UML
UML (Unified Modeling Language) es un lenguaje que
permite modelar, construir y documentar los elementos
que forman un sistema software orientado a objetos.

Uno de los objetivos principales de la creacin de UML


era posibilitar el intercambio de modelos entre las
distintas herramientas CASE orientadas a objetos del
mercado. Para ello era necesario definir una notacin y
semntica comn.

Proyecta las diferentes vistas de un sistema.

2
www.dsic.upv.es/~uml 2
Vistas
Use Case State
Diagrama
Diagrams de State
Use Case Diagrams
Diagrama
Use Case
Diagrams
Casos de Uso Diagrams de
Diagrama
Diagrams de Clases
Estados State
State
Diagrams
Diagrama
Diagrams de
Objeto
Esttica
Scenario Actividad
Scenario
Diagrams
Diagrama
Diagrams de Component
Actividad Component
Diagrams
Diagramas Diagramade
Diagrams
Componentes
Implementacin
Interaccin
Scenario
Scenario
Diagrams Component
Diagrama
Diagrams de Component
Diagrama de Diagrams
Secuencia Diagramade
Diagrams
Colaboracin Despliegue

3
www.dsic.upv.es/~uml 3
I. Introduccin: UML

Historia de UML
Comenz como el Mtodo Unificado, con la
participacin de Grady Booch y Jim Rumbaugh.
Se present en el OOPSLA95
El mismo ao se uni Ivar Jacobson. Los Tres
Amigos son socios en la compaa Rational
Software. Herramienta CASE Rational Rose

4
www.dsic.upv.es/~uml
I. Introduccin: UML

Aspectos Novedosos
Definicin semi-formal del Metamodelo de UML
Mecanismos de Extensin en UML:
Stereotypes
Constraints
Tagged Values
Permiten adaptar los elementos de modelado,
asignndoles una semntica particular

5
www.dsic.upv.es/~uml
I. Introduccin: UML

Inconvenientes en UML
Definicin del proceso de desarrollo usando
UML. UML no es una metodologa
Falta integracin con respecto de otras tcnicas
tales como patrones de diseo, interfaces de
usuario, documentacin, etc.
Ejemplos aislados
Monopolio de conceptos, tcnicas y mtodos
en torno a UML

6
www.dsic.upv.es/~uml
I. Introduccin: UML

Perspectivas de UML
UML ser el lenguaje de modelado orientado a
objetos estndar predominante los prximos aos
Razones:
Participacin de metodlogos influyentes
Participacin de importantes empresas
Aceptacin del OMG como notacin estndar
Evidencias:
Herramientas que proveen la notacin UML
Edicin de libros
Congresos, cursos, camisetas, etc.

7
www.dsic.upv.es/~uml
Breve Tour por UML

8
www.dsic.upv.es/~uml
II. Breve Tour por UML

Modelos y Diagramas
Un modelo captura una vista de un sistema del mundo
real. Es una abstraccin de dicho sistema, considerando
un cierto propsito. As, el modelo describe
completamente aquellos aspectos del sistema que son
relevantes al propsito del modelo, y a un apropiado nivel
de detalle.

Diagrama: una representacin grfica de una coleccin


de elementos de modelado, a menudo dibujada como un
grafo con vrtices conectados por arcos

OMG UML 1.4 Specification


9
www.dsic.upv.es/~uml
... 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 inters

El cdigo fuente del sistema es el modelo ms detallado del


sistema (y adems es ejecutable). Sin embargo, se requieren
otros modelos ...

Cada modelo es completo desde su punto de vista del sistema,


sin embargo, existen relaciones de trazabilidad entre los
diferentes modelos
10
www.dsic.upv.es/~uml
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 Interaccin
Diagrama de Secuencia
Diagrama de Colaboracin
Diagramas de implementacin
Diagrama de Componentes
Diagrama de Despliegue
11
www.dsic.upv.es/~uml
II. Breve Tour por UML

... Diagramas de UML


Los diagramas expresan grficamente partes de un modelo
State
State
Use Case Diagramas de
Diagrams
Use Case Diagrams State
Use Case Diagramas de
Diagrams Clases State
Use Case Diagrams Diagramas de
Diagrams
Diagramas de
Diagrams Casos de Uso Diagrams
Diagrams Objetos
Secuencia

Scenario State
Scenario State
Diagramas de
Diagrams Diagramas de
Diagrams
Diagrams Diagrams
Colaboracin Modelo Componentes

Scenario Component
Scenario Component
Diagramas
Diagrams de
Diagramas de
Diagrams Diagrams
Diagrams Distribucin
Estados Diagramas de
Actividad
12
www.dsic.upv.es/~uml
II. Breve Tour por UML

Organizacin de Modelos
4+1 vistas de Kruchten (1995)

Vista de
Vista Lgica Realizacin
Vista de los
Casos de Uso

Vista de Vista de
Procesos Distribucin

Este enfoque sigue el browser de Rational Rose


13
www.dsic.upv.es/~uml
II. Breve Tour por UML

... Organizacin de Modelos

Propuesta de Rational Unified Process (RUP)


M. de Casos de Uso del Negocio (Business Use-Case Model)
M. de Objetos del Negocio (Business Object Model)
M. de Casos de Uso (Use-Case Model)
M. de Anlisis (Analysis Model)
M. de Diseo (Design Model)
M. de Despliegue (Deployment Model)
M. de Datos (Data Model)
M. de Implementacin (Implementation Model)
M. de Pruebas (Test Model)

14
www.dsic.upv.es/~uml
II. Breve Tour por UML

Paquetes en UML
Los paquetes ofrecen un mecanismo general para
la organizacin de los modelos/subsistemas
agrupando elementos de modelado

Se representan grficamente como:

Nombre de
paquete

15
www.dsic.upv.es/~uml
II. Breve Tour por UML

Paquetes en UML
Cada paquete corresponde a un submodelo
(subsistema) del modelo (sistema)

Un paquete puede contener otros paquetes, sin


lmite de anidamiento pero cada elemento
pertenece a (est definido en) slo un paquete

Una clase de un paquete puede aparecer en


otro paquete por la importacin a travs de una
relacin de dependencia entre paquetes

16
www.dsic.upv.es/~uml
II. Breve Tour por UML

Paquetes en UML
Todas las clases no son
necesariamente visibles desde el
exterior del paquete, es decir,
un paquete encapsula a la vez
que agrupa

El operador :: permite
designar una clase definida en
un contexto distinto del actual

Prctica 1

17
www.dsic.upv.es/~uml
II. Breve Tour por UML

Paquetes en UML

Prctica 1

18
www.dsic.upv.es/~uml
II. Breve Tour por UML

Diagrama de Casos de Uso

Casos de Uso es una tcnica para capturar


informacin de cmo un sistema o negocio
trabaja, o de cmo se desea que trabaje

No pertenece estrictamente al enfoque


orientado a objeto, es una tcnica para captura
de requisitos

19
www.dsic.upv.es/~uml
II. Breve Tour por UML

Ejemplos

Verificar Situacin del Cliente


Supervisor

Preparar Catlogo
Administrativo Sistema
Inventario

Tipos de Venta

20
www.dsic.upv.es/~uml
II. Breve Tour por UML

Ejemplos
En el paquete tipos de venta:

Venta Normal

Venta en Rebajas
Vendedor

Venta en Ofertas

21
www.dsic.upv.es/~uml
II. Breve Tour por UML

Ejemplos

Solicitar Prstamo
Cliente

[Tarjeta Caducada]

<<extend>>

Solicitar Nueva Tarjeta

22
www.dsic.upv.es/~uml
II. Breve Tour por UML

Ejemplos

<<include>>
Reintegro Cuenta Corriente

Cliente Verificar Operacin

<<include>>

Reintegro Cuenta de Crdito

Prctica 2

23
www.dsic.upv.es/~uml
II. Breve Tour por UML

Diagrama de Secuencia

:WInPrstamos :Socio :Video :Prstamo


: Encargado

prestar(video, socio)
verificar situacin socio

verificar situacin video

registrar prstamo

entregar recibo

24
www.dsic.upv.es/~uml
II. Breve Tour por UML

Diagrama de Colaboracin
:Socio

:Video

2: verificar situacin socio

1: prestar(video, socio) 3: verificar situacin video


:WInPrstamos

5: entregar recibo
: Encargado 4: registrar prstamo

:Prstamo

Prctica 3

25
www.dsic.upv.es/~uml
II. Breve Tour por UML

Diagrama de Clases
El Diagrama de Clases es el diagrama principal para el
anlisis y diseo
Un diagrama de clases presenta las clases del sistema
con sus relaciones estructurales y de herencia
La definicin de clase incluye definiciones para
atributos y operaciones
El modelo de casos de uso aporta informacin para
establecer las clases, objetos, atributos y operaciones

26
www.dsic.upv.es/~uml
II. Breve Tour por UML

Ejemplos (Clase y Visibilidad)

27
www.dsic.upv.es/~uml
II. Breve Tour por UML

Ejemplos (Asociacin)

dirige director
Departamento Profesor
0..1 1

28
www.dsic.upv.es/~uml
II. Breve Tour por UML

Ejemplos (Clase Asociacin)

empleador trabajadores
Empresa Empleado
* 1..*

Cargo
superior
nombre
sueldo 0..1

subordinado 1..*

29
www.dsic.upv.es/~uml
II. Breve Tour por UML

Ejemplos (Generalizacin)

Trabajador

{ disjunta, completa }

Directivo Administrativo Obrero

30
www.dsic.upv.es/~uml
II. Breve Tour por UML

Ejemplos
Motor Piloto Vendedor de billetes

1..4 1..2 1

1 n
n
1 n 1 n
Avin Vuelo Reserva

n
{ disjunta, completa }

Avin militar Avin comercial Lnea area

{ disjunta, completa }

Prcticas 4-8
Avin de carga Avin de pasajeros

31
www.dsic.upv.es/~uml
II. Breve Tour por UML

Diagrama de Estados

alta baja

nmero_prstamos = 0
sin prstamos

Socio
nmero : int
nombre : char[50]
nmero_prestamos : int = 0
prestar devolver[ nmero_prstamos = 1 ]
alta()
baja()
prestar(cdigo_libro : int, fecha : date)
devolver(cdigo_libro : int, fecha : date) nmero_prstamos > 0

con prstamos

prestar

devolver[ nmero_prstamos > 1 ]

32
www.dsic.upv.es/~uml
II. Breve Tour por UML

Diagrama de Actividad
[no hay caf] [no zumo]
Buscar Bebida
[hay caf [hay zumo]

Poner caf en filtro Aadir agua al depsito Coger taza

Poner filtro en mquina Coger zumo

Encender mquina
/ cafetera.On
Caf en preparacin

indicador de fin
Servir caf
Beber

33
www.dsic.upv.es/~uml
II. Breve Tour por UML

Otro Ejemplo (con swim lines)


Pasajero Vendedor Airline

Solicitar pasaje
Verificar
existencia vuelo

Dar detalles vuelo

Informar alternativas
y precios
Seleccionar vuelo

Solicitar pago Reservar plazas

Confirmar
Pagar pasaje plaza reservada

Emitir billete
Prctica 9

34
www.dsic.upv.es/~uml
II. Breve Tour por UML

Diagrama Componentes
Control y Anlisis
Interf az de Terminal
Comment
Comment

Gestin de Cuentas Acceso a BD


Rutinas de Coneccion
Comment Comment
Comment

35
www.dsic.upv.es/~uml
II. Breve Tour por UML

Diagrama de Despliegue
Servidor Central Control y Anlisis

Acceso a BD Comment

Comment

Rutinas de Coneccion
Comment

T erminal de Consulta
Interfaz de Terminal
Rutinas de Coneccion
Comment Comment

Punto de Venta
Rutinas de Coneccion
Comment

Gestin de Cuentas Interfaz de Terminal

Comment Comment

Prctica 10

36
www.dsic.upv.es/~uml
II. Breve Tour por UML

Resumen

UML define una notacin que se expresa


como diagramas sirven para representar
modelos/subsistemas o partes de ellos

El 80 por ciento de la mayora de los


problemas pueden modelarse usando
alrededor del 20 por ciento de UML-- Grady
Booch

37
www.dsic.upv.es/~uml

También podría gustarte