Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador...

27
Cátedra de Base de Datos Facultad de Ciencias Exactas y Tecnología Universidad Nacional de Tucumán Ciclo Lectivo 2018

Transcript of Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador...

Page 1: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Cátedrade BasedeDatosFacultaddeCienciasExactasyTecnología

UniversidadNacionaldeTucumán

CicloLectivo2018

Page 2: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Unidad 2: Visión general del proceso de Diseño. Modelo Entidad - Relación.

Definición. Características. Elementos: Entidades, atributos, identificadores y

relaciones. Entidades débiles y fuertes. Construcción del Modelo de datos.

ProgramaAnalíticodelaMateria

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 3: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

“The Entity-Relationalship Model – Towards a Unified view of data” (ACM Transactions of Database Systems, Enero de 1976, pp 9-36).

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 4: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de

Abstracción, sin tener que considerar el hardware ni a los Usuarios. Se centra en un plano

Infologico.

Es un Modelo que se apoya en dos conceptos: Entidad y Relación, entendiéndose por

Entidad a “una cosa que se puede identificar claramente” y a la Relación como “una

vinculación entre entidades”.

Modelo Entidad- Relación. Características

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 5: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Definición

“Una Entidad es algo que puede identificar en el ambiente de trabajo de los usuarios”

Ejemplo:

EMPLEADO = ‘Maria de los Ángeles Rivero”

PRODUCTO = A123Z654

La entidades de determinado tipo se agrupan en clases de entidades. Así la clase de entidad

EMPLEADO es un conjunto de todas las entidades EMPLEADOS, y deben ser

nomenclados en letras mayúsculas y por lo general en singular.

ENTIDADES

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 6: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Es importante Por lo general existen muchos muchas instancias de entidad dentro de una

clase de entidad. Por ejemplo dentro de la clase CLIENTE, existen muchas instancias, una

para cada cliente representado en la Base de Datos.

Entidades – Clases e instancias de Entidades

12345Fabrica AJAXCalle Moreno 123AlderetesTUC4005Carlos López424-1899

67890Fabrica PACARACalle Lavalle 971LasteniaTUC4111Cesar Castro434-1922

Dos instancias de CLIENTE

CLIENTEEsta Entidad Contiene:

NumerodeClienteNombredelClienteDireccionCiudadProvinciaCodigoPostalNombredelContactoNumeroTelefonico

12345Fabrica AJAXCalle Moreno 123AlderetesTUC4005Carlos López424-1899

67890Fabrica PACARACalle Lavalle 971LasteniaTUC4111Cesar Castro434-1922

Dos instancias de CLIENTE

CLIENTEEsta Entidad Contiene:

NumerodeClienteNombredelClienteDireccionCiudadProvinciaCodigoPostalNombredelContactoNumeroTelefonico

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Definicion de Clase de Entidad “Una Classe de entidad es un

conjunto de entidades y se

describe mediante la

estructura de las entidades en

esa clase”

Definicion de Instancia de Entidad“Una Instancia de entidad es

la representacion de una

entidades en particular”

Page 7: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Identificadores

Definición:

“Las instancias de entidad tienen Identificadores, los cuales son atributos que nombran o

identifican las instancias de una entidad de manera univoca”.

Ejemplo:

Dominio Valores

EMPLEADO à Juan, Diego, Ulises, Carlos

COLOR à Rojo, Azul, Amarillo

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 8: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Relaciones

Definición:

“Una relación es la asociación entre las clases de entidad, y las instancias de

relaciones son asociaciones entre instancias de entidad”.

Ejemplo:

VEND-PEDIDO es una relación entre VENDEDOR y PEDIDO

PADRES es una relación entre MADRE y PADRE, e HIJO.

Una clase de relación puede involucrar muchas clases de entidades. El numero de

clases que está en la relación es el Grado de la misma.

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 9: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

GradodelasRelaciones

Relación de Grado 2

VENDEDOR

PEDIDO

VEND-PEDIDO

VENDEDOR

PEDIDO

VEND-PEDIDO

MADRE

HIJO

PADRES

PADREMADRE

HIJO

PADRES

PADRE

Relación de Grado 3 Relación de Grado N

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Las relaciones son generalmente binarias, dado que asocian a dos entidades. Puede involucrar

muchas clases de entidades. El numero de clases que está en la relación es el Grado de la misma.

Page 10: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Tipos de Relaciones Binarias

Las relaciones binarias poseen instancias a ambos lados de la misma, la cual puede ser

tipificada de la siguiente manera:

(1 : 1) o (Uno a Uno), en donde una instancia de entidad de un tipo se relaciona con una

instancia de una sola entidad de otro tipo. Por ejemplo la relación ASIGNACION_AUTO

asocia a un único EMPLEADO con un único AUTO.

AUTO

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 11: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Tipos de Relaciones Binarias

(1:N)o(UnoaMuchos),endondeunainstanciadeentidaddeuntiposerelaciona

con otras instancias de una sola entidad de otro tipo. Por ejemplo en la relación

DORM_OCUPANTEuna sola instanciadeDORMITORIOrelacionaamuchas instancias

deESTUDIANTE.

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 12: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

TIPOSDERELACIONESBINARIAS

(N :M)o(MuchosaMuchos),endonde las instanciadeunaentidadserelacionan

con las instancias de otra entidad. Por ejemplo en la relación ESTUDIANTE_CLUB

variasinstanciasdeESTUDIANTEserelacionanconmuchasinstanciasdeCLUB.

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 13: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

TIPOSDERELACIONESBINARIAS.

Cuando el nombre de la relación se coloca dentro del rombo, es necesario que la

cardinalidad de la relación se documente de forma grafica, utilizando para ello las

“patas de gallo” en el extremo de la línea de relación, y que simbolizan “muchas”

instanciasdeeseladodelamisma.

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 14: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

TIPOSDERELACIONESBINARIAS.CARDINALIDAD

LaCardinalidadMínimadeunarelaciónesunaestrategiahastaahoranoabordada,

mediante lacualesposibledeclararrangosdevaloresadmitidosaambos ladosde la

relación.

Para esto utilizaremos dos símbolos sobre la línea de relación, y en donde el ovalo

implicara que el mínimo de relaciones será de 0, y una línea interceptando la de

relación,lacualindicaraqueelmínimoderelacionesseráde1.

AsivemosqueunESTUDIANTEtieneunaCardinalidadmínimade1yunamáximade

1.EncambioCLUBtieneunaCardinalidadmínimade0yunamáximadeN.

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 15: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

ATRIBUTOSDEUNARELACION

Enalgunasrelacioneslosatributossegraficancomoóvalosconectadosalasentidades

a las que describen, los cuales contienen los nombres de los atributos de la relación

nomencladosconmayúsculasyminúsculas.

Cuandolasentidadestienenmuchosatributossevuelvecomplejalagrafica,porloque

enesascircunstanciassepuedeenumerarlosmismosenformadetablaseparadosdel

modelo.

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 16: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Entidades Débiles

Definición:

“ElmodeloEntidadRelacióndefineuntipoespecialdeEntidaddenominadaDébil,lacual

nopuedeexistirenlaBasedeDatosamenosquetambiénexistaotradenominada

EntidadFuerte,alacualledebesuexistencia”.

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 17: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

RELACIONESTIPOROL

Eselpapelofunciónquedesempeñaunatipodeentidadenunainterrelacióntipo.Losroles

suelenserimplícitos(nosiempreseespecificanenelERD),peropuedenserútildistinguirlos

sisenecesitaaclararelsignificadodeunainterrelación.

Un caso típico en que se necesita precisar el rol de cada tipo de entidad participante es

cuando existe una interrelación reflexiva (un tipo de entidad asociado consigomismo);

Ejemplo:eltipodeinterrelaciónforma_pareja,enelcualparticipan(opcionalmente)dos

instanciaseltipodeentidadpersona;cada elemento del conjunto de interrelaciones

forma_parejaesdeltipop{p1,p2}siendopiinstanciasdetipopersona.Cadapersona,si

estácasada,tendráunrolpi(enestecasoesposo-1oesposo-2oconvencionalmentemarido

y/omujer).

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 18: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Relaciones de Tipo Rol

Debe distinguirse entre grado de la interrelación (en este caso 1:1 que indica el

máximo de ocurrencias o instancias que pueden entrar en correspondencia) y

cardinalidaddelrol(0:1enamboscasos).Elcardinalidaddelrolsedefinemediante

elrango(min:MAX),entendiéndoseelmínimodeinstanciasdeeserolyelmáximo.en

dichainterrelación.

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 19: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Ejercitación

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 20: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Ejemplo completo Entidad-Relación

Descripcióndel problema.Estamos encargadosdedesarrollarun sistemabasado enunaDBparaunaempresaquedeencargaderentarbarcos.PerolaempresaBOATCo.Noposeeningúnbarco,encargándosedetenerunacarteradebotesdediferentesdueñosparaluegoalquilarlosaterceros.BOATCo.Especializaenbarcosquepuedenserrentadosenbaseaunfindesemanaoperíodosmas largos (medido en semanas). El barcomas pequeño en cartera tiene 28 pies y el masgrande51pies.Cada barco está completamente equipado en el momento que lo retira el que lo renta. Loselementossonprovistosdeacuerdoalasiguienteespecificación:Propietario: •Todo lo fijo del barco: (radio, compás, indicadores de profundidad y otros instrumentos,heladera,estufas)•Nofijo:velas,líneas,anclas,salvavidas,yenlacabina:platos,cubiertos,elementosdecocina,camas,etcBOATCo:•Equipo consumible: cartas de navegación, comida, tablas de corrientes, cartas de tiempo,elementosdebañocomojabón,toallas,etc.

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 21: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Ejemplo completo Entidad-Relación Esnecesariomanteneruninventariodelequipamientodelbarco.La mayoría de los elementos fijos son fácilmente perdibles o destruidos o consumidos orobados. Los clientes son responsables de todo el equipamiento durante el período dealquiler.BOAT Co. desea mantener un registro seguro de todos sus clientes y de los alquileres, nosolamenteparamarketingsinotambiénparamantenerlosviajesrealizadosylosclientesquealquilaronbarcos.AlgunositinerariosycondicionesdelvientosonmaspeligrososqueotrosyparaBOATCo.esmuyimportanteconocerelgradodeexperienciadesusclientes.BOAT Co. no provee personal marinero, pero en casos especiales los clientes solicitan losserviciosdetripulación,porloquelaempresa.losmantieneenbaseaunsistemapart–time(tiempoparcial).Los barcos precisan mantenimiento y BOAT Co. está comprometido por contratos con losdueños de mantener los en perfectos condiciones de uso, manteniendo un registro deactividadesycostoconestafinalidad(limpiezademotores,cambiodeaceite,yreparacioneseventuales). En algunos casos, la reparación es necesaria durante un viaje: en este caso elcliente avisapor radio aBOATCo., quiendetermina el sitiomas apropiadoparahacer estareparación (info de cual es la falla, historia de reparaciones anteriores y lugares donderealizarla)

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 22: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Ejemplo completo Entidad-Relación

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 23: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Ejemplo completo Entidad-Relación

BARCO • Numero Barco • Nombre_Barco • Modelo • Tamaño

PROPIETARIO • Cuil_Prop • Nombre_Propietario • Domicilio • Numero_Telefono_Propíetario

EQUIPO • ID_Equipo • Nombre_Equip • Tipo_Equip • Precio • Propietario_Licencia

ARRENDAMIENTO • Numero_Barco • Fecha_Alqui • ID_Cliente • Periodo_Alquiler(dias) • Fecha_Entrega

TRIPULAC_PART_TIME • CUIL_Trip • Numero_Barco • Calificacion

REPARACION • Numero_Barco • Fecha_Reparacion • Tipo_Reparacion • Descripcion • Costo

CLIENTE • ID_Cliente • Nombre_Cliente • Domicilio_Cliente • Numero_Telefono_Clie

ITINERARIO_CLIMA • Numero_Barco • Fecha_Itinen • Origen • Destino • Condiciones_Clima

MANTENIMIENTO_ PROGRAMADO

• Numero_Barco • Fecha_Manten • Tipo_Manten • Descripcion • Facilidad(Instalación) • Costo

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 24: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Ejemplo completo Entidad-Relación. Construcción de un Diccionario de Datos

NOMBREDELAENTIDAD

NOMBREDELATRIBUTO

CLAVE/LLAVE

TIPODECLAVE

TIPODEDATOS

LONGITUD

DOMINIO

DESCRIPCION

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 25: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Bibliografía

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 26: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

TecnologíayDiseñodeBasesdeDatos/MarioPiattini,EsperanzaCalero,BelenVela/EditAlfaomega/2010Ed.

Pp95-125

Procesamientodebasesdedatos.fundamentos,diseñoeimplementación/DavidM.Kroenke.—(Tra.AnaElizabethGarcíaHernández.--Rev.Tca.JuanRaúlEsparzaMartínez).PearsonEducación.México/c.2003/8ª.Edic.

BibliográficasPrincipal

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS

Page 27: Cátedra de Base de Datos - Universidad Nacional de Tucumán · Este Modelo permite al diseñador concebir la Base de Datos a un nivel superior de Abstracción, sin tener que considerar

Sitio Web de la Cátedra http://catedras.facet.unt.edu.ar/bd

BasesdeDatos Mg.Ing.GustavoE.Juárez

BASES DE DATOS