Vous êtes sur la page 1sur 24

Diagrama de Clases Entidad

• Uno de los mas importantes entre los diagramas


UML
• Define la estructura del sistema y dirige al
Análisis y Diseño
• Captura la estructura estática de las relaciones
del sistema

Copyright © 2007, Cibertec. Todos los derechos reservados


Diagrama de Clases Entidad

Pedido
Mesa -numPedido
*
-numMesa Mozo
-numMesa *
-CodigoMozo -CodigoMozo
-descripcion
1 * -Condicion -NombreMozo
+Consulta() -ApellidoMozo
CLASES +Registra Pedido()

RELACIONES
1..*
Platos
ItemPedido -CodItem
-numPedido -Descripcion
-CodItem -precio
-Precio 1..* 1 -Saldo
-Cantidad +Consulta Item()
+Actualiza Saldo()

Representa la estructura estática en términos de clases y relaciones.


Copyright © 2007, Cibertec. Todos los derechos reservados
Relación de Clases

 Es el camino para la comunicación entre objetos

 Tipos importantes de relaciones:

 Asociación
 Herencia
 Agregación / Composición

Copyright © 2007, Cibertec. Todos los derechos reservados


Relación de Asociación

 Conexión bidireccional entre clases.


 Línea que conecta las clases.
Platos
Pedido
-CodItem
-numPedido -Descripcion
-numMesa -precio
-CodigoMozo -Saldo
-Condicion

ItemPedido
-numPedido
-CodItem
-Precio
-Cantidad

Copyright © 2007, Cibertec. Todos los derechos reservados


Relación de Herencia

Persona
-direccion
-telefono

Natural juridica
-nombre -razonSocial
-fechaNac -fechaConst

Clasificación entre un elemento mas general a uno mas específico.

Copyright © 2007, Cibertec. Todos los derechos reservados


Empleado
-Codigo
-Apellidos
-Nombres
-FechaIng
-Sueldo
+CrearEmpleado()
+ActSueldoBasico()
La clase vendedor tendrá:
• 5 atributos heredados (Codigo, Apellidos,
Nombres, FechaInf, Sueldo
Vendedor
-Codigo • 1 atributo propio (Comision)
-Apellidos
-Nombres
-FechaIng • 2 operaciones heredadas (CrearEmpleado y
-Sueldo
-Comision ActSueldoBasico)
+CrearEmpleado()
+ActSueldoBasico()

Copyright © 2007, Cibertec. Todos los derechos reservados


Ejemplo

Factura Cliente Pais


noFactura : Integer realiza codCliente : Integer reside codPais : Integer
fecha : Date = DATE() direccion : String Descripcion : String
igv : Double = 18.00 1..n 1 telefono : Long 0..n 1
descuento : Currency = 0

PersonaNatural PersonaJuridica
está compuesta
nombre : String razonSocial : String
dni : String ruc : String

1..n
DetalleFactura Producto
está asociada codProducto : Integer
noItem : Integer
cantidad : Integer = 0 descripcion : String
descuento : Double
0..n 1 um : String
pu : Currency = 0.00
presentacion : String

Copyright © 2007, Cibertec. Todos los derechos reservados


Relación de Agregación

• Son relaciones que implican en su significado que una


clase “contiene a” otras clases independientes.
• Cuando deja de existir la clase agregada no tiene por
qué dejar de existir el resto de las clases de la
agregación.
• El tiempo de vida de la clase agregada no define el
tiempo de vida del resto de las clases.
• Se representa a través de un rombo transparente en el
extremo de la clase agregada.

Copyright © 2007, Cibertec. Todos los derechos reservados


Ejemplo

Computadora

Monitor CPU Parlante Teclado Ratón

DiscoDuro RAM UnidadCD TarjetaVideo TarjetaSonido Botón Bola

Copyright © 2007, Cibertec. Todos los derechos reservados


Relación de Composición

• Son relaciones que impliquen en su significado que una


“está compuesta por” otras clases dependientes.
• Cuando deja de existir la clase compuesta deja de existir
el resto de las clases de la composición.
• El tiempo de vida de la clase compuesta define el tiempo
de vida del resto de las clases.
• Es un tipo muy especial de agregación en la que la
relación tienen mucha más fuerza.
• Se representa a través de un rombo relleno en el
extremo de la clase compuesta.

Copyright © 2007, Cibertec. Todos los derechos reservados


Relación de Composición

• Representa un objeto compuesto por otros


objetos.

Auto -Tiene un Motor

1 1

Copyright © 2007, Cibertec. Todos los derechos reservados


Relación de Agregación

Automovil

1
1

1
1

Carroceria Motor

Copyright © 2007, Cibertec. Todos los derechos reservados


Herencia vs. Agregación

Diferencias:

 La herencia representa una relación “es un” o


“tipo de”

 La agregación representa una relación “tiene


un”

Copyright © 2007, Cibertec. Todos los derechos reservados


Herencia vs. Agregación

Abstracciones más generales.


Padre
ve hiculo +hijos

0..*

+Padre 0..2 pueden tener

vehiculo terrestre vehiculo a éreo

camion coche avion helicoptero

Copyright © 2007, Cibertec. Todos los derechos reservados


Ejemplo
"Juan Pérez es Profesor de Matemáticas en la Universidad de San Martín de Porres. Nacio
en Arequipa, pero actual mente vive en la Calle San Pedro No.232, del distrito de Surquillo."

nació en DepartamentoGeográfico

Universidad

Facultad EscuelaProfesional Provincia

se dicta en
Distrito
DepartamentoAcademico

Curso

Persona
trabaja en
dicta

Profesor
reside en
Copyright © 2007, Cibertec. Todos los derechos reservados
Modelo Conce ptual

• Su propósito principal es mostrarnos las “Reglas del


Negocio”, se pretende lograr entender la perspectiva
del Cliente, Usuario o Patrocinador.
• Es la etapa más importante del ADOO.

Copyright © 2007, Cibertec. Todos los derechos reservados


Modelo Conc eptu al

• Es un mecanismo que guía a través de la etapa de


“Escuchar”, ayudando a entender cada parte del
Sistema que se está diseñando y para integrar
apropiadamente todas sus funciones; este proceso
ayuda a organizar la información.

• Podemos empezar haciendo una lista de clases


candidatas a partir de la especificación preliminar.
(clases relevantes)

Copyright © 2007, Cibertec. Todos los derechos reservados


Clases Relevantes

• Una vez que tenemos la lista hay que revisarlas


eliminando las incorrectas con los siguientes
criterios:
– Clases redundantes.
– Clases irrelevantes
– Clases demasiado generales
– Roles

Copyright © 2007, Cibertec. Todos los derechos reservados


Not ac ión UML:
Jef feson D ance C lu b

Empresa Cliente Leccion

Dia
Club Estudiante LeccionDeBaile

EstudianteDeBaile LeccionDeBailePrivado Baile


ClubDeBaile

InstructorTP LecciondeBaileEnGrupo
Instructor

Maestro InstructorTC Persona Participante

Copyright © 2007, Cibertec. Todos los derechos reservados


Not ación U ML:
Jef feson Da nce Clu b

Empresa Cliente Leccion


Dia

Club Estudiante LeccionDeBaile

ClubDeBaile EstudianteDeBaile LeccionDeBailePrivado

Baile
Instructor InstructorTP LecciondeBaileEnGrupo

InstructorTC Persona

Maestro Participante

Copyright © 2007, Cibertec. Todos los derechos reservados


Jefferson Dance Club

Leccion

Em pres a
LeccionDeBaile

Persona
Club

LeccionDeBailePrivado LecciondeBaileEnGrupo

ClubDeBaile
Empleado Cliente

Edif icio
Baile
Administrador Instructor

Am bient e

InstructorTP InstructorTC
Aula Auditorio

Copyright © 2007, Cibertec. Todos los derechos reservados


Identificar las reglas del Negocio

Persona asiste Baile


Empresa
Leccion

se registra en se dicta en
Club Empleado Cliente LeccionDeBaile

trabaja en enseña

ClubDeBaile
LeccionDeBailePrivado LecciondeBaileEnGrupo
Administrador Instructor

Edificio

InstructorTP InstructorTC

Ambiente

Aula Auditorio
Copyright © 2007, Cibertec. Todos los derechos reservados
Consejos prácticos para un
Modelamiento de Objetos

• No lanzarse a dibujar clases y asociaciones sin sentido


• Elaborar un modelo simple
• Los nombres de objetos, asociaciones, atributos y
operaciones deben ser significativos
• Tratar de usar asociaciones binarias
• Utilizar los elementos necesarios
• Documentar el modelo
• Evitar las jerarquías de composición o generalización de
muchos niveles

Copyright © 2007, Cibertec. Todos los derechos reservados


Laboratorio:
Desarrolle el Modelo conceptual del
Caso del Restaurante

Copyright © 2007, Cibertec. Todos los derechos reservados