Beruflich Dokumente
Kultur Dokumente
1
LAS CLASES –
DIAGRAMAS DE
CLASES
2
Contenido
Introducción
Qué es una clase
Metamodelo de una clase
Representación de una clase
Ejemplos representación
Utilidad de la presentación
Atributos
Operaciones
Otras características
Clases y requisitos
3
Contenido
Diagramas de clase
Elementos de un diagrama de clases
Perspectivas de los diagramas de clases
Tipos de diagramas
Cardinalidad
Asociación
Agragación
Composición
Diferencia entre agregación y composición
Dependencia
4
Contenido
Herencia
Especificación múltiple
Síntesis de notación
Clases parametrizadas
Ejemplos
Valores Enumerados
Técnica común de modelado
Lecturas recomendadas
5
Introducción
Son los bloques de construcción mas
importantes de cualquier sistema orientado a
objetos
6
Qué es una Clase?
Una clase es una abstracción de las cosas que
forman parte de un sistema.
7
Qué es una Clase?
8
Representación de una
clase en UML
9
Representación de una
clase en UML
10
Representación de una
clase en UML
11
Ejemplo representación
Clases
Cliente Java::awt::Rectangule
12
Utilidad de la
representacion de clase
Muestran los atributos y operaciones de una
clase y las restricciones a que se ven sujetos,
según las forma en que se conecten los objetos.
13
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>: tipo = valor
incial { propiedades}
Donde visibilidad es uno de los siguientes:
+ público.
# protegido.
- privado.
14
Operaciones
Operación: El conjunto de operaciones que
describen el comportamiento de los objetos de
una clase.
15
Otras Características
Alcance : Específica si la característica 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: Número de instancias que puede
tener una clase.
16
Ejemplo
Cuenta
{root}
# Titular: String
# Número:Long { frozen}
- Saldo:Double = 0.0
- CantidadCuentas:Int= 0
+ Constructor
+ Titular() : String
+ Número(): Long
+ Saldo : Double
+ Consigne(Double valor):Double
+ Retire (Double valor): void
+ numeroCuentas :Int {leaf}
17
Clases y requisitos
Las clases de un modelo conceptual
representarán conceptos relevantes del dominio
del problema sobre los que el sistema debe
almacenar información, porque así se ha
especificado en uno o más requisitos.
Toda clase de un modelo conceptual debe estar
trazada hacia aquellos requisitos que la
justifican, normalmente requisitos de
información, reglas del negocio.
Un requisito puede estar modelado por varias
clases, o una clase modelar varios requisitos a la
vez.
18
Definir las Clases
Operaciones
Atributos
19
Diagramas de Clases
Los diagramas de clases han llegado a ser
realmente la parte central dentro de los métodos
orientados a objeto.
20
Diagramas de Clase
Nivel conceptual
Se cuenta con un diagrama que representa los
21
Conceptos Diagrama de
Clases
Muestra de una manera estática la estructura de
información del sistema y la visibilidad que tiene
cada una de las clases, dada por sus relaciones
con los demás en el modelo.
Contenido Básico:
Clases (Atributos-Operaciones)
Relaciones (Dependencia-Asociación- Generalización)
22
Elementos de un diagrama
de Clases
23
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)
24
Tipos de Diagramas
Solo las relaciones (multiplicidad)
25
Cardinalidad
En UML, la cardinalidad de las relaciones indica
el grado y nivel de dependencia, se anotan en
cada extremo de la relación y éstas pueden ser:
uno o muchos: 1..* (1..n)
26
Cardinalidad
27
Asociación
La relación entre clases conocida como
Asociación, permite ligar objetos que colaboran
entre si.
Cabe destacar que no es una relación fuerte, es
decir, el tiempo de vida de un objeto no
depende del otro.
28
Ejemplo asociaciones
29
Agregación
Asociación 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
30
Notación agregación
31
Composición
Agregación “fuerete”, donde se deben cumplir las
siguientes caracterizticas:
32
Notación Composición
33
Ejemplo Diferencia
Agregación - Composición
34
Ejemplo agregación -
composición
Un almacén posee cuentas y clientes.
35
Dependencia
Representa un tipo de relación muy particular,
en la que una clase es instanciada.
El uso más particular de este tipo de relación
es para denotar la dependencia que tiene una
clase de otra
36
Herencia:(Especialización
/Generalización)
Indica que una subclase hereda los métodos y
atributos especificados por una súper clase.
37
Ejemplo: Herencia
Especialización / Generalización
38
Ejemplo: Herencia
Especialización / Generalización
39
Clasificación multiple
Un conjunto de objetos puede clasificarse por
diferentes criterios y un mismo objeto puede
clasificarse como una especialización de varias
clases.
40
Síntesis notación para
asociaciones
41
Restricciones sobre
asociaciones
Ordenación:Indica que en el conjunto de
objetos asociados existe una relación de orden y
que forman una secuencia ordenada.
42
Restricciones sobre
asociaciones
Navegabilidad: Una flecha en el extremo de una
asociación indica que solo es navegable en ese
sentido.
Por defecto una asociación es navegable en
ambos sentidos.
43
Clases parametrizadas
Clases “genéricas” que reciben parametros.
44
Ejemplo
Ejemplo
46
Ejemplo 2 : Subsistemas
47
Valores enumerados
Los valores enumerados permiten modelar tipos
de datos simples, que sólo pueden tomar valores
dentro un rango o conjunto de datos.
Los atributos de las clases pueden tener como
tipo una enumeración.
48
Técnica común de modelado
Revise el enunciado del problema, casos de uso
y escenarios para identificar sustantivos.
Cree una lista de cantidatos. Incluya objetos
físicos y conceptos.
Revise los sustantivos para ver si tienen
relevancia con el problema, así como para ver si
están 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 agregación o herencia
49
Lecturas Recomendadas
50
LOS OBJETOS –
DIAGRAMAS DE
OBJETOS
51
Contenido
Los Objetos
Instancia de una clase
Representación UML de un objeto
Ejemplo
Diagramas de objetos
Ejemplos
Lecturas recomendadas
Bibliografía
52
Los objetos
Un objeto representa una identidad del mundo
real o inventada.
Es un concepto o una abstracción, que dispone
de unos límites 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
53
Objeto: instancia de clase
54
Representación de un
Objeto en UML
55
Ejemplo objeto Libro
LIBRO
_titulo: Cien Años de Soledad
Los valores delos
_autor: Gabriel García M
atributos en un
_editorial: Oveja Negra
momento dado
_referencia: C234g representan el
_num ejemplar: 7 estado de un
DarTitulo() objeto
DarAutor()
DarEditorial()
DarReferencia()
DarNumejemplar()
ActualizarReferencia()
57
Diagramas de objetos
Un diagrama de objetos representa una escena
estática dentro de la historia representada por
un diagrama de interacción.
58
Ejemplo diagrama objetos
59
Ejemplo diagrama objetos
60
Lecturas Recomendadas
61
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
62
Fin
63