Sei sulla pagina 1di 64

UML

Wilson Pelez Hernndez

LAS CLASES
DIAGRAMAS DE
CLASES

Contenido

Introduccin
Qu es una clase
Metamodelo de una clase
Representacin de una clase
Ejemplos representacin
Utilidad de la presentacin
Atributos
Operaciones
Otras caractersticas
Clases y requisitos

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

Contenido

Diagramas de clase
Elementos de un diagrama de clases
Perspectivas de los diagramas de clases
Tipos de diagramas
Cardinalidad
Asociacin
Agragacin
Composicin
Diferencia entre agregacin y composicin
Dependencia

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

Contenido

Herencia
Especificacin mltiple
Sntesis de notacin
Clases parametrizadas
Ejemplos
Valores Enumerados
Tcnica comn de modelado
Lecturas recomendadas

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

Introduccin

Son los bloques de construccin mas importantes


de cualquier sistema orientado a objetos
Se utilizan para capturar el vocabulario del
sistema que se esta desarrollando.
Muchos lenguajes de programacin soportan
directamente el concepto de clases

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

Qu es una Clase?

Una clase es una abstraccin de las cosas que


forman parte de un sistema.
Representa un conjunto de entidades que tienen
propiedades comunes.
Define la estructura y comportamiento de una
coleccin de objetos

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

Qu es una Clase?

Una Clase representa a un tipo de objetos que


comparten:

Las mismas propiedades (Atributos)

El mismo comportamiento (Mtodos)

Las mismas responsabilidades

Las mismas relaciones con


(asociaciones y agregaciones)

otros

objetos

La misma semntica dentro del sistema

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

Metamodelo de una clase

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

Representacin de una
clase en UML

En UML la clase est representada por un


rectngulo con tres divisiones internas, son los
elementos fundamentales del diagrama.
Cada clase debe tener un nombre que la distinga
de las dems.
El nombre debe ser un sustantivo en singular

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

10

Representacin de una
clase en UML

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

11

Representacin de una
clase en UML

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

12

Ejemplo representacin
Clases

Cliente
UML Clases Objetos
Diagramas

Java::awt::Rectangule
Wilson Pelez Hernndez

13

Utilidad de la
representacion de clase

Muestran los atributos y operaciones de una


clase y las restricciones a que se ven sujetos,
segn las forma en que se conecten los objetos.
Ilustra los requerimientos funcionales del sistema
(los servicios que proporcionar a los usuarios
finales).

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

14

Atributos

Atributo: Representa una propiedad de una


entidad. Cada atributo de un objeto tiene un
valor que pertenece a un dominio de valores
determinado.
Las sintaxis de una atributo es:

Visibilidad <nombre>:
incial { propiedades}

tipo

valor

Donde visibilidad es uno de los siguientes:

+ pblico.
# protegido.
- privado.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

15

Operaciones

Operacin: El conjunto de operaciones que


describen el comportamiento de los objetos de
una clase.
La sintaxis de una operacin en UML es:
Visibilidad nombre (lista de parmetros): tipo
que retorna { propiedades}
En las operaciones se puede indicar si los
parmetros
son
de
entrada,
salida
o
entrada/salida.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

16

Otras Caractersticas

Alcance : Especfica si la caracterstica es una


instancia de clase o una instancia de objetos.
(Subraya la instancia de clase).
Elemento abstracto: No existe objetos tangible
( su nombre esta en CURSIVA o explicito
abstract)
Clase sin hijos (usa la palabra {leaf} )
Multiplicidad: Nmero de instancias que puede
tener una clase.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

17

Ejemplo
Cuenta
{root}
# Titular: String
# Nmero:Long { frozen}
- Saldo:Double = 0.0
- CantidadCuentas:Int= 0
+
+
+
+
+
+
+

Constructor
Titular() : String
Nmero(): Long
Saldo : Double
Consigne(Double valor):Double
Retire (Double valor): void
numeroCuentas :Int {leaf}

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

18

Clases y requisitos

Las clases de un modelo conceptual


representarn conceptos relevantes del dominio
del problema sobre los que el sistema debe
almacenar informacin, porque as se ha
especificado en uno o ms requisitos.
Toda clase de un modelo conceptual debe estar
trazada hacia aquellos requisitos que la
justifican, normalmente requisitos de
informacin, reglas del negocio.
Un requisito puede estar modelado por varias
clases, o una clase modelar varios requisitos a la
vez.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

19

Definir las Clases


Operaciones

Atributos
UML Clases Objetos
Diagramas

Wilson Pelez Hernndez

20

Diagramas de Clases

Los diagramas de clases han llegado a ser


realmente la parte central dentro de los mtodos
orientados a objeto.
Un diagrama de clases sirve para visualizar las
relaciones entre las clases que involucran el
sistema.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

21

Diagramas de Clase

Nivel conceptual
Se cuenta con un diagrama que representa los
conceptos del dominio
Nivel de especificacin
Se conocen las interfaces del software. No se
pueden conocer las estructuras de datos de
las clases.
Nivel de implementacin
En este nivel se especifican las estructuras
que forman las clases especificadas en el nivel
anterior

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

22

Conceptos Diagrama de
Clases

Muestra de una manera esttica la estructura de


informacin del sistema y la visibilidad que tiene
cada una de las clases, dada por sus relaciones
con los dems en el modelo.

Contenido Bsico:

Clases (Atributos-Operaciones)

Relaciones (Dependencia-Asociacin- Generalizacin)

Contenido con mas detalles

Interfaces
Colaboraciones

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

23

Elementos de un diagrama
de Clases

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

24

Perspectivas

Hay tres perspectivas que se pueden usar en los


diagramas de clase:
Conceptual.
Obtendr un diagrama que
representa los conceptos del dominio bajo
estudio (Vocabulario)

Especificacin. Ahora vemos el software, pero


vemos las interfaces del software, no la
implementacin.
Implementacin. En esta
realmente tenemos clases
implementacin real.

UML Clases Objetos


Diagramas

vista, nosotros
y ponemos la

Wilson Pelez Hernndez

25

Tipos de Diagramas

Solo las relaciones (multiplicidad)

Solo un aspecto del sistema (subsistemas)

Herencia Composicin - Agregacin

Detallado
(Clases
atributos-operacionesRelaciones, multiplicidad, roles, notas)

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

26

Cardinalidad

En UML, la cardinalidad de las relaciones indica el


grado y nivel de dependencia, se anotan en cada
extremo de la relacin y stas pueden ser:
uno o muchos: 1..* (1..n)
0 o muchos: 0..* (0..n)
nmero fijo: m (m denota el nmero).

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

27

Cardinalidad

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

28

Asociacin

La relacin entre clases conocida como


Asociacin, permite ligar objetos que colaboran
entre si.
Cabe destacar que no es una relacin fuerte, es
decir, el tiempo de vida de un objeto no
depende del otro.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

29

Ejemplo asociaciones

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

30

Agregacin

Asociacin que representa una relacion TODO


PARTE
Se caracteriza por las siguientes propiedades:
Una parte puede pertenecer a varios
agregados
Una parte puede existir independientemente
del agregado
Una parte puede cambiar de agregado
La eliminacin del agregado NO implica la
eliminacin de las partes
Es una relacin transitiva y antisimtrica

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

31

Notacin agregacin

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

32

Composicin

Agregacin fuerete, donde se deben cumplir las


siguientes caracterizticas:

Una parte slo puede pertenecer a un


agregado a la vez
La eliminacin del agregado implica la
eliminacin de las partes. Agregacin en que
las partes nacen y mueren con el todo

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

33

Notacin Composicin

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

34

Ejemplo Diferencia
Agregacin - Composicin

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

35

Ejemplo agregacin composicin

Un almacn posee cuentas y clientes.


Cuando se destruye el objeto almacn, tambien
desaparecen los objetos cuentas asociados,
mientras los objetos clientes no.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

36

Dependencia

Representa un tipo de relacin muy particular,


en la que una clase es instanciada.
El uso ms particular de este tipo de relacin es
para denotar la dependencia que tiene una
clase de otra

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

37

Herencia:(Especializacin
/Generalizacin)

Indica que una subclase hereda los mtodos y


atributos especificados por una sper clase.
La subclase adems de poseer sus propios
mtodos y atributos, poseer las
caractersticas y atributos visibles de la sper
clase (public y protected).
A la herencia se le conoce como una relacion
ES-UN (ES UNA)

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

38

Ejemplo: Herencia
Especializacin / Generalizacin

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

39

Ejemplo: Herencia
Especializacin / Generalizacin

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

40

Clasificacin multiple

Un conjunto de objetos puede clasificarse por


diferentes criterios y un mismo objeto puede
clasificarse como una especializacin de varias
clases.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

41

Sntesis notacin para


asociaciones

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

42

Restricciones sobre
asociaciones

Ordenacin:Indica que en el conjunto de objetos


asociados existe una relacin de orden y que
forman una secuencia ordenada.

Exclusividad:Indica que las instancias de la clase


deben participar en una sla asociacin ala vez.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

43

Restricciones sobre
asociaciones

Navegabilidad: Una flecha en el extremo de una


asociacin indica que solo es navegable en ese
sentido.
Por defecto una asociacin es navegable en
ambos sentidos.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

44

Clases parametrizadas

Clases genricas que reciben parametros.


Una clase parametrizada se denota con un
subcuadro en el extremo superior de la clase, en
donde se especifican los parmetros que deben
ser pasados.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

45

Ejemplo

Ejemplo

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

47

Ejemplo 2 : Subsistemas

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

48

Valores enumerados

Los valores enumerados permiten modelar tipos


de datos simples, que slo pueden tomar valores
dentro un rango o conjunto de datos.
Los atributos de las clases pueden tener como
tipo una enumeracin.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

49

Tcnica comn de modelado

Revise el enunciado del problema, casos de uso y


escenarios para identificar sustantivos.
Cree una lista de cantidatos. Incluya objetos
fsicos y conceptos.
Revise los sustantivos para ver si tienen
relevancia con el problema, as como para ver si
estn en contexto.
Elimine los sustantivos innecesarios.
Una vez obtenidas las clases candidatas vea
como se relacionan entre s (tipos de enlaces,
roles, multiplicidad). Defina relaciones avanzadas
como agregacin o herencia

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

50

Lecturas Recomendadas

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

51

LOS OBJETOS
DIAGRAMAS DE
OBJETOS

52

Contenido

Los Objetos
Instancia de una clase
Representacin UML de un objeto
Ejemplo
Diagramas de objetos
Ejemplos
Lecturas recomendadas
Bibliografa

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

53

Los objetos

Un objeto representa una identidad del mundo


real o inventada.
Es un concepto o una abstraccin, que dispone
de unos lmites bien definidos, y tiene una
significancia para el sistema que se pretende
modelar.
Un objetos es una instancia de clase
Los objetos tienen un estado y un ciclo de vida.
Primero debemos crear una clase antes de poder
crear objetos o ejemplares de esa clase

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

54

Objeto: instancia de clase

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

55

Representacin de un
Objeto en UML

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

56

Ejemplo objeto Libro


LIBRO
_titulo:

Cien Aos de Soledad

_autor:

Gabriel Garca M

_editorial:

Oveja Negra

_referencia:

C234g

_num ejemplar: 7
DarTitulo()

Los valores delos


atributos en un
momento dado
representan el
estado de un
objeto

DarAutor()

DarEditorial()
DarReferencia()
DarNumejemplar()
ActualizarReferencia()

Las operaciones son comunes a todos


los objetos LIBROS y no se duplican
UML Clases Objetos
Diagramas

Wilson Pelez Hernndez

57

Diagramas de objetos

Los diagramas de objetos modelan las instancias


de elementos contenidos en los diagramas de
clases.
Un diagrama de objetos muestra un conjunto de
objetos y sus relaciones en un momento
concreto.
Los diagramas de objetos se emplean para
modelar la vista de diseo esttica o la vista de
procesos esttica de un sistema al igual que se
hace con los diagramas de clases, pero desde la
perspectiva de instancias reales o prototpicas.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

58

Diagramas de objetos

Un diagrama de objetos representa una escena


esttica dentro de la historia representada por
un diagrama de interaccin.
Los diagramas de objetos se utilizan para
visualizar, especificar, construir y documentar la
existencia de ciertas instancias en el sistema,
junto a las relaciones entre ellas.

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

59

Ejemplo diagrama objetos

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

60

Ejemplo diagrama objetos

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

61

Lecturas Recomendadas

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

62

Bibliografia

El Lenguaje Unificado de Modelado UML G.


Booch- J. Rumbauhugh I Jacobson.
UML Distilled Martin Fowler Kendall Scott
www.vico.org,
http://www.creangel.com/uml/diagramas.php

UML Clases Objetos


Diagramas

Wilson Pelez Hernndez

63

Fin
UML Clases Objetos
Diagramas

Wilson Pelez Hernndez

64

Potrebbero piacerti anche