Está en la página 1de 41

Taller de Programacin Estructurada en Java

UML
(Unified Modeling Language)
Ingeniero en Computacin Jos Alfredo Cobin
Campos
josealfredocobian@gmail.com
Facultad de Ciencias

UML

UML es un lenguaje para

Visualizar
Especificar
Construir
Documentar

artefactos de sistemas intensivos de software

Lenguajes de modelado,
modelos y diagramas
Un lenguaje de modelado permite expresar los d
istintos modelos que se producen en el proceso d
e desarrollo.
Un modelo es una representacin abstracta de un
a especificacin, un diseo o un sistema desde u
n punto de vista particular.
Un diagrama es una representacin de (parte de)
un modelo de diseo
Un modelo se representa por uno o ms di

Lenguaje de Modelado UML 2.0


Elementos primitivos de modelado
(estticos,

dinmicos,

agrupamiento,

Relaciones

Dependencia
Asociacin
Generalizacin
Realizacin

Diagramas UML (13 diagramas)


Diagramas estticos
Diagramas de comportamiento

anotaciones)

RELACIONES

Dependencia
Una relacin semntica entre dos elementos, tal que
un cambio en una de ellos (el independiente) puede
afectar al otro (el dependiente).
A
B
B depende de A

RELACIONES

Asociacin
Es una relacin estructural que describe un
conjunto de links, siendo un link una conexin
entre objetos
0..1
*
empleador
empleado

RELACIONES

Generalizacin
Una relacin de generalizacin/especializacin
en la que el elemento especializado
(descendiente) se construye sobre la
especificacin del elemento generalizado
(ancestro)

RELACIONES

Realizacin
Es una relacin semntica en la que un
clasificador, tal como una interfaz o un caso de
uso, especifica un contrato que otro
clasificador, tal como una clase o una
colaboracin, garantiza llevar a cabo.

DIAGRAMAS UML

Diagramas estticos

Diagrama de clases
Diagrama de objetos
Diagrama de componentes
Diagrama de estructura compuesta
Diagrama de paquetes
Diagrama de despliegue

Diagrama de clases
Muestra un conjunto de
clases, interfaces,
colaboraciones y
sus relaciones

Diagrama de objetos

Muestra una instantne


a
de un conjunto de
objetos y sus relaciones

Diagrama de componentes
Muestra la organizacin y
dependencias entre un
conjunto de componentes, la
vista de implementacin de
un sistema.
Estn relacionados a diagramas
de clases en donde un
componente se corresponde
con una o ms clases,interfaces
o colaboraciones.

Diagrama de estructura compuesta


(Composite Structural Diagram)
Muestra la estructura
interna (incluyendo
partes y conectores) de
un clasificador o una
colaboracin estructurada.

Diagrama de paquetes
Muestra la
descomposicin del
modelo en unidades de
organizacin y sus
dependencias.

Diagrama de despliegue
Muestra los enlaces de
comunicacin fsica
entre elementos de
hardware y las relacion
es
entre mquinas fsicas y
procesos: qu se ejecut
a
y dnde

Diagramas UML

Diagramas de comportamiento
Diagramas de casos de uso
Diagrama de secuencia
Diagrama de colaboracin
Diagrama de estados
Diagrama de actividades
Diagrama cronolgico
Diagrama general de interacciones

Diagrama de casos de uso


Muestra un conjunto de casos de uso y actores
y sus
relaciones

Diagrama de secuencia
Es un diagrama de
interaccin que muestr
a los
objetos y actores que
participan en una
colaboracin poniendo
el
nfasis en el ordenamie
nto
en el tiempo de los
mensajes

Diagrama de colaboracin
Un diagrama de interac
cin
que pone el nfasis en l
a
organizacin estructura
l de
los objetos o roles que
envan y reciben mensa
jes.

Diagrama de estados
Muestra un autmata
que consiste de estados
,
transiciones, eventos y
actividades

Diagrama de actividades
Muestra la estructura d
e
un proceso u otro clcu
lo
como el flujo de control
y datos paso a paso en
el
clculo.

Diagrama cronolgico
(Timing Diagram)
Es un diagrama de
interaccin que muestr
a
tiempos a lo largo de
diferentes objetos o
roles, y no secuencias
relativas de mensajes

Diagrama de interacciones general


(Interaction Overview Diagram)
Es un hbrido de
diagramas de actividad
y de secuencia.

Diagramas estticos UML


Diagrama de clases

Diagrama de clases

Es el diagrama ms comn en modelos orientados


a
objetos.
Elementos de un diagrama de clases
Clases
Interfaz, clases abstractas, clases parametrizadas

Relaciones de dependencia, generalizacin y aso


ciacin
Colaboraciones

Diagrama de clases- Ejemplo

Diagrama de clase
Clases
Una clase es una descripcin de un conjunto de
objetos que comparten los mismos atributos,
operaciones, relaciones y semntica.

nombre
atributos
operaciones

Diagrama de clases Responsabilidades

Una responsabilidad es un contrato o Shipment


una
obligacin de una clase.
Responsabilities
--maintain the information
regarding products shipped
against an order
--track the status and location of
the shipped products

Diagrama de clases
Visibilidad
UML permite diferentes formas de acceso a
miembros de una clase:
+ Pblico
# Protegido
- Privado

Diagrama de clases
Relaciones
Las relaciones ms importantes entre clases son:
Dependencia
Generalizacin
Asociacin

Diagrama de clases
Asociaciones
Una asociacin es una relacin estructural que
especifica que objetos de una clase estn
conectados a objetos de otra
Tipos de asociaciones
Unaria
Binaria
N-aria

Diagrama de clases
Asociaciones

Multiplicidad
0..1

nombre
Trabaja-para
*

empleador
rol

empleado

Diagrama de clases
Asociaciones
Nombre
Rol
Cuando una clase participa en una asociacin,
tiene un rol especfico que juega en tal relacin.
Multiplicidad
Puede ser un rango de valores o un valor explcito:

Exactamente 1
Cero 0..1
Cero o ms
Uno o ms
Subrango

1
0..1
0..*
1..*
m..n

Diagrama de clases
Agregacin- Composicin
Relaciones es-parte-de, una clase representa al
todo
y otra a las partes.
Agregacin
Diamante blanco
Composicin
Diamante negro
En una composicin hay relacin entre los ciclos d
e
vida del todo y sus partes. La multiplicidad en
el

Diagrama de clases
Asociaciones

Diagrama de clases
Interfaz
Una interfaz es una coleccin de operaciones que
son usadas para especificar un servicio de una
clase
No especifican estructura ( no tiene atributos)
No tiene asociadas implementaciones con ningu
na de las operaciones
No necesita especificar todas las operaciones
Una clase podra incluir varias interfaces difere

Diagrama de clases
Interfaces

Diagrama de clases
Clases Abstractas
Pueden tener implementaciones definidas para
algunas de sus operaciones ( al menos una no
est definida)
Una clase abstracta en la que ninguna de las
operaciones tiene implementacin y no tiene
atributos es lo mismo que una interfaz.

Diagrama de clases
Clases Abstractas

Diagrama de clases
Clases parametrizadas

Las grficas fueron extradas de lo


s siguientes
textos:
Booch, G., Rumbaugh, J., Jacobson, I. The Unified Modeli
ng Language. User Guide. Addison Wesley. (2005)
Stevens, P. Pooley R. Utilizacin de UML en Ingeniera de
l software con objetos y componentes (2002)

También podría gustarte