diagrama de clases entidad

24
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

Upload: eddy-faustor

Post on 06-Jun-2015

44.181 views

Category:

Documents


3 download

DESCRIPTION

Diagrama de Clases Entidad. CIBERTEC

TRANSCRIPT

Page 1: Diagrama de Clases Entidad

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

Page 2: Diagrama de Clases Entidad

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

Page 3: 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

Page 4: Diagrama de Clases Entidad

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

Page 5: Diagrama de Clases Entidad

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

Page 6: Diagrama de Clases Entidad

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)

Page 7: Diagrama de Clases Entidad

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

Page 8: Diagrama de Clases Entidad

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.

Page 9: Diagrama de Clases Entidad

Copyright © 2007, Cibertec. Todos los derechos reservados

Ejemplo

Computadora

Monitor CPU Teclado RatónParlante

DiscoDuro RAM UnidadCD TarjetaVideo TarjetaSonido Botón Bola

Page 10: Diagrama de Clases Entidad

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.

Page 11: Diagrama de Clases Entidad

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.

Page 12: Diagrama de Clases Entidad

Copyright © 2007, Cibertec. Todos los derechos reservados

Automovil

Carroceria Motor

1

1

1

1

Relación de Agregación

Page 13: Diagrama de Clases Entidad

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

Page 14: Diagrama de Clases Entidad

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

Page 15: Diagrama de Clases Entidad

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

Page 16: Diagrama de Clases Entidad

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.

Page 17: Diagrama de Clases Entidad

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)

Page 18: Diagrama de Clases Entidad

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

Page 19: Diagrama de Clases Entidad

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

Page 20: Diagrama de Clases Entidad

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

Page 21: Diagrama de Clases Entidad

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

Page 22: Diagrama de Clases Entidad

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

Page 23: Diagrama de Clases Entidad

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

Page 24: Diagrama de Clases Entidad

Copyright © 2007, Cibertec. Todos los derechos reservados

Laboratorio:

Desarrolle el Modelo conceptual del Caso del Restaurante