Post on 06-Jun-2015
description
Copyright © 2007, Cibertec. Todos los derechos reservados
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
Representa la estructura estática en términos de clases y relaciones.
-numMesa-descripcion
Mesa
+Consulta()+Registra Pedido()
-numPedido-numMesa-CodigoMozo-Condicion
Pedido
-numPedido-CodItem-Precio-Cantidad
ItemPedido
+Consulta Item()+Actualiza Saldo()
-CodItem-Descripcion-precio-Saldo
Platos
1 *
1
1..*
1..* 1
-CodigoMozo-NombreMozo-ApellidoMozo
Mozo*
*
CLASES
RELACIONES
Diagrama de Clases Entidad
Copyright © 2007, Cibertec. Todos los derechos reservados
Es el camino para la comunicación entre objetos
Tipos importantes de relaciones:
Asociación Herencia Agregación / Composición
Relación de Clases
Copyright © 2007, Cibertec. Todos los derechos reservados
Conexión bidireccional entre clases.
Línea que conecta las clases.
-numPedido-numMesa-CodigoMozo-Condicion
Pedido
-numPedido-CodItem-Precio-Cantidad
ItemPedido
-CodItem-Descripcion-precio-Saldo
Platos
Relación de Asociación
Copyright © 2007, Cibertec. Todos los derechos reservados
Clasificación entre un elemento mas general a uno mas específico.
-direccion-telefono
Persona
-nombre-fechaNac
Natural
-razonSocial-fechaConst
juridica
Relación de Herencia
Copyright © 2007, Cibertec. Todos los derechos reservados
+CrearEmpleado()+ActSueldoBasico()
-Codigo-Apellidos-Nombres-FechaIng-Sueldo
Empleado
+CrearEmpleado()+ActSueldoBasico()
-Codigo-Apellidos-Nombres-FechaIng-Sueldo-Comision
Vendedor
La clase vendedor tendrá:
• 5 atributos heredados (Codigo, Apellidos, Nombres, FechaInf, Sueldo
• 1 atributo propio (Comision)
• 2 operaciones heredadas (CrearEmpleado y ActSueldoBasico)
Copyright © 2007, Cibertec. Todos los derechos reservados
Ejemplo
Factura
noFactura : Integerfecha : Date = DATE()igv : Double = 18.00descuento : Currency = 0
Cliente
codCliente : Integerdireccion : Stringtelefono : Long
Producto
codProducto : Integerdescripcion : Stringum : Stringpu : Currency = 0.00presentacion : String
DetalleFactura
noItem : Integercantidad : Integer = 0descuento : Double
Pais
codPais : IntegerDescripcion : String
PersonaNatural
nombre : Stringdni : String
PersonaJuridica
razonSocial : Stringruc : String
1..n1..n
realiza
1 0..n 1
reside
1..n
1
está compuesta
10..n
está asociada
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 Teclado RatónParlante
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
Auto Motor-Tiene un
1 1
Relación de Composición
• Representa un objeto compuesto por otros objetos.
Copyright © 2007, Cibertec. Todos los derechos reservados
Automovil
Carroceria Motor
1
1
1
1
Relación de Agregación
Copyright © 2007, Cibertec. Todos los derechos reservados
Diferencias:
La herencia representa una relación “es un” o “tipo de”
La agregación representa una relación “tiene un”
Herencia vs. Agregación
Copyright © 2007, Cibertec. Todos los derechos reservados
Abstracciones más generales.
vehiculo
vehiculo terrestre vehiculo aéreo
camion coche avion helicoptero
Padre
0..*
+hijos
+Padre pueden tener
0..*
0..2
Herencia vs. Agregación
Copyright © 2007, Cibertec. Todos los derechos reservados
"Juan Pérez es Profesor de Matemáticas en la Universidad de San Martín de Porres. Nacioen Arequipa, pero actual mente vive en la Calle San Pedro No.232, del distrito de Surquil lo."
Universidad
EscuelaProfesionalFacultad
Curso
se dicta en
DepartamentoAcademico
Profesor
dictatrabaja en
DepartamentoGeográficonació en
Provincia
Distrito
reside en
Persona
Ejemplo
Copyright © 2007, Cibertec. Todos los derechos reservados
Modelo Conceptual
• 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 Conceptual
• 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
Notación UML:Jeffeson Dance Club
Empresa
Club
ClubDeBaile
Persona
InstructorInstructorTP
InstructorTC
Estudiante
EstudianteDeBaile
Cliente
LeccionDeBaile
LeccionDeBailePrivado
LecciondeBaileEnGrupo
Maestro
Baile
Participante
Leccion
Dia
Copyright © 2007, Cibertec. Todos los derechos reservados
Empresa
Club
ClubDeBaile
Persona
Instructor InstructorTP
InstructorTC
Estudiante
EstudianteDeBaile
Cliente
LeccionDeBaile
LeccionDeBailePrivado
LecciondeBaileEnGrupoBaile
LeccionDia
Maestro Participante
Notación UML:Jeffeson Dance Club
Copyright © 2007, Cibertec. Todos los derechos reservados
Jefferson Dance Club
Empresa
Club
Aula Auditorio
Ambiente
Edif icio
ClubDeBaile
InstructorTP InstructorTC
Administrador
Persona
Cliente
Instructor
Empleado
LeccionDeBailePrivado LecciondeBaileEnGrupo
Leccion
LeccionDeBaile
Baile
Copyright © 2007, Cibertec. Todos los derechos reservados
Identificar las reglas del Negocio
Empresa
Club
InstructorTP InstructorTC
LeccionDeBailePrivado LecciondeBaileEnGrupo
Leccion
Administrador
BailePersona asiste
Aula Auditorio
Cliente
Instructor
LeccionDeBailese registra en
enseña
Ambiente
se dicta en
Edificio
ClubDeBaile
Empleado
trabaja en
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