25
Diseño de bases de datos Modelado de bases de datos Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software 1 Universidad Abierta y a Distancia de México Programa de la asignatura Diseño de Base de Datos Clave 150920519 Unidad 2. Modelado de bases de datos

Unidad 2 Modelado de Bases de Datos

Embed Size (px)

Citation preview

Page 1: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

1

Universidad Abierta y a Distancia de México

Programa de la asignatura

Diseño de Base de Datos

Clave

150920519

Unidad 2.

Modelado de bases de datos

Page 2: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

2

Índice

UNIDAD 2. Modelado de bases de datos ................................................................................. 3

Presentación de la unidad ........................................................................................................... 3

Propósito ........................................................................................................................................ 3

Competencia específica .............................................................................................................. 3

2.1. Modelos de datos ................................................................................................................. 3

2.1.1. Modelo Entidad - Relación ............................................................................................... 4

Actividad 1. Diagrama Entidad – Relación ............................................................................... 8

2.1.2. Modelo Jerárquico ............................................................................................................. 9

2.1.3. Modelo de red .................................................................................................................. 11

Actividad 2. Modelo Jerárquico y de Red ............................................................................... 13

2.1.4. Relacional ......................................................................................................................... 14

2.1.5. Relacional Extendido ...................................................................................................... 19

2.1.6. Orientado a objetos ......................................................................................................... 20

Actividad3. Modelo relacional, relacional extendido y orientado a objetos ....................... 22

Autoevaluación ........................................................................................................................... 22

Evidencia de aprendizaje. Caso a diagramar ........................................................................ 23

Autoreflexiones ........................................................................................................................... 24

Cierre de la unidad ..................................................................................................................... 24

Para saber más ........................................................................................................................... 24

Fuentes de consulta ................................................................................................................... 25

Page 3: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

3

UNIDAD 2. Modelado de bases de datos

Presentación de la unidad

En la unidad anterior trabajaste con los conceptos básicos necesarios para la

administración de una base de datos, tales como un administrador de base de datos

(DBA) y qué es el sistema manejador de base de datos (DBMS), además de las

características y las funciones que debe tener dicho manejadores.

En esta unidad, para dar continuidad a lo anterior, conocerás la utilidad de los diferentes

modelos de bases de datos que de forma general son la estructura o formato de una base

de datos descrita en un lenguaje formal por medio de diagramas.

Cada uno de los diagramas de bases es necesario para lograr una estructura de base de

datos íntegra, que pueda ser utilizada para diferentes transacciones fiables para el

usuario. De cada modelo comprenderás las características, cómo se obtienen y cómo se

aplican. Por ello te invitamos a que inicies esta segunda unidad de Modelado de base de

datos y recuerda que cualquier duda que tengas sobre algún termino o tema, coméntalo

con tu Facilitador(a), quien con gusto te orientará.

Propósito

El propósito de esta unidad es que de acuerdo a un texto proporcionado se lleguen a

obtener los diagramas de bases de datos basados en los diferentes modelos, para que en

etapas posteriores poder tengas el conocimiento para llegar a codificar dichos diagramas

y con todo esto lograr una eficaz base de datos para el usuario.

Competencia específica

Diagramar modelos de bases de datos para definir las estructuras de bases de datos a

través de la selección de un modelo que se adapte a la información de un caso específico.

2.1. Modelos de datos

Un modelo de datos está enfocado a transformar una base de datos, la cual corresponde

a la descripción de una situación de la vida real; para ello se consideran los tipos de

datos que existen en dicha estructura y la manera en la que están relacionados entre

ellos; además se toman en cuenta sus restricciones de integridad, las cuales son la forma

en la que se cumplen para que reflejen correctamente lo que desean.

Page 4: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

4

Un modelo de datos unifica y organiza la manera de representar la información de un

problema dado. En los siguientes subtemas se presentarán los modelos que puedes

utilizar para representar diagramas.

2.1.1. Modelo Entidad - Relación

El modelo entidad – Relación se representa por la sigla E-R, en donde de manera gráfica

se expresan las entidades, los atributos y las relaciones.

Entendemos por entidad a los objetos que existen y son parte del problema a representar

y contienen características particulares. A continuación observa y comprende las

definiciones de los elementos que conforman el modelo E-R:

Una entidad es un objeto que existe y tiene características propias; se consideran

como las partes principales del problema dado. Por ejemplo el cliente representa

una entidad, tal como lo muestra la siguiente imagen:

Representación entidad clientes

Un atributo es el nombre que se le asigna a las características de las entidades,

siendo sus propiedades descriptivas. Por ejemplo en un cliente sus atributos son:

nombre, edad, sexo, dirección. Los atributos se representan con elipses, tal y como se

observa en la siguiente imagen:

Representación entidad clientes con sus atributos.

Clientes

Nombre

Clientes

Edad

Sexo

Dirección

Page 5: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

5

Al enlace que une a las entidades se le conoce como relación, que es la

asociación entre dos entidades, y se representa mediante flechas y rombos, como

en la siguiente imagen:

Relación entre dos entidades. Un cliente compra productos.

Ahora presta atención al ejercicio 1 como ejemplo de este tipo de modelo:

Ejercicio 1

Hacer el diagrama entidad - relación para una entidad llamada Profesor, con los

siguientes atributos: no. empleado, nombre, sexo, profesión, que imparte clase a muchos

Alumnos con atributos: matricula, nombre.

Observa cómo quedaría lo que se solicitó en las instrucciones:

Nombre

Clientes

Edad Sexo

Dirección Descripción

Productos

Precio

Compra

Page 6: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

6

Solución al ejercicio 1.

Las Reglas para este modelo serian:

- No debe existir más de un identificador principal, si existieran, estos serian

alternativos.

- La entidad en general, debe tener mínimo un atributo denominado identificador o

clave primaria.

Existen también Normas para los diagramas E-R, que son:

- Emplear nombres para las entidades, y verbos en las relaciones.

- En las relaciones, siempre usar líneas rectas, sin cruzarlas.

- En cada entidad interviene una relación con una determinada cardinalidad (tipos

de relaciones), de las cuales existen cuatro posibles:

1:1 Uno a Uno: una entidad se relaciona únicamente con una entidad y viceversa.

Ejemplo: en la relación libro - ISBN, cada libro tiene una única ISBN, y cada ISBN

corresponde a un único libro.

1:N Uno a Varios: una entidad se relaciona con muchas de la otra entidad. Ejemplo: en la

relación cliente – coche, un cliente puede comprar muchos coches, pero un coche

pertenece a un único dueño.

No. empleado

Profesor

Nombre

Sexo Profesión

Matricula

Alumnos

Nombre

Imparte

clases

Page 7: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

7

N:1 Varios a Uno: varios de la primera entidad se relacionan con uno de la segunda

entidad. Ejemplo: en la relación Empleado-área de trabajo, un empleado puede trabajar

en varias áreas de trabajo.

N:M Varios a Varios: muchos de la primera entidad se pueden relacionar con muchos de

la segunda entidad. Por ejemplo, la relación Empleado – empresas, donde muchos

empleados trabajan en una empresa y un empleado puede trabajar en varias empresas.

Ejercicio 2

Ahora observa el ejercicio 2, que es un ejemplo para realizar, en base a las reglas, el

modelo E-R:

A la clínica “La sanación” le interesa una base de datos para llevar el control de sus

pacientes y doctores. De los pacientes se guarda su código, nombre, fecha de nacimiento;

de los doctores se guarda su no. Empleado, nombre, teléfono y especialidad. Se interesa

guardar de los ingresos el código de ingreso, fecha de ingreso y habitación. Un doctor

puede atender varios ingresos, pero cada ingreso solo puede ser atendido por un doctor;

un paciente puede realizar varios ingresos.

Observa cómo quedaría lo que se solicitó en las instrucciones:

Solución al ejercicio 2.

Doctor

Nombre Teléfono

Especialidad

Paciente

Nombre Código

Fecha de nacimiento

Ingresos

Código de

ingreso fecha

Habitación

No. empleado

Atiende Realiza

Page 8: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

8

Ahora veamos otra situación: cuando hablamos de una relación varios a varios (muchos

a muchos) puede llevar atributos propios, por ejemplo: un cliente puede rentar muchas

películas y una película puede ser rentada por un cliente en diferentes momentos.

Relación muchos a muchos

Para concluir el tema podemos decir que el modelo entidad relación es conveniente que

se realice antes de realizar la base de datos, ya que es el fundamento para obtener los

atributos necesarios para cada entidad y las relaciones adecuadas entre cada atributo.

Actividad 1. Diagrama Entidad – Relación

Con el fin de corroborar de forma adecuada los conocimientos previos que consisten en

cómo pasar de una oración aun diagrama entidad relación, a continuación realiza lo

indicado en las siguientes instrucciones:

1. Lee y analiza el siguiente caso:

Caso. Se desea realizar una base de datos para un biblioteca donde se guarda

información de los libros como ISBN, título, autor; de cada libro existen ejemplares de

los que se guarda el número de ejemplar y su clave propia, también se guarda el

control de los usuarios que se llevan los ejemplares; de los usuarios interesa saber su

código, nombre y dirección, además de guardar la fecha de préstamo y devolución

cuando sacan el ejemplar.

2. Identifica las entidades, atributos y relaciones del caso.

3. Realiza en un archivo de texto el diagrama del caso según corresponda,

tomando en cuenta las características del modelo E-R

4. Guarda y envía en un archivo la actividad con el nombre DBD_U2_A1_XXYZ,

sustituye las XX por las dos primeras letras de tu primer nombre, la Y por la

inicial de tu primer apellido y la Z por la inicial de tu segundo apellido.

Cliente

e

Clave Nombre

Películas

Clave Nombre

Renta

Fecha de

renta Fecha de

devolución

Page 9: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

9

5. Envía el archivo a tu Facilitador(a) para recibir retroalimentación.

2.1.2. Modelo Jerárquico

Después de haber practicado el primer modelo, continúa con el modelo jerárquico, el cual

es la representación mediante la forma de árbol invertido, en la que el primer nivel o

superior está dado por una única entidad.

Los niveles en los diagramas van unidos mediante líneas que representan las relaciones,

las entidades reciben el nombre de segmentos, mientras que los atributos se llaman

campos.

Es momento de conocer las características de la estructura jerárquica del modelo, una de

las cuales consiste en que los modelos están formados por segmentos, los cuales reciben

diferentes denominaciones, y se muestran a continuación:

Page 10: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

10

1) Segmento padre: es aquél que tiene descendientes, todos ellos localizados en el

mismo nivel.

Representación del modelo jerárquico segmento padre.

2) Segmento hijo: es aquél que depende de un segmento de nivel superior. Todos los

hijos de un mismo padre están en el mismo nivel del árbol.

Representación del modelo jerárquico segmento hijo.

3) Segmento raíz: el segmento raíz de una base de datos jerárquica es el padre que no

tiene padre, es decir, siempre es único y ocupa el nivel superior del árbol.

Representación del modelo jerárquico segmento raíz.

Segmento padre

Segmento hijo

Page 11: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

11

Ahora observa el ejercicio 3, el cual te demostrará una solicitud del modelo jerárquico:

Una empresa con sucursales centraliza sus compras, para lo cual utiliza una base de

datos jerárquica en donde en el segmento raíz se almacenan los datos de los

proveedores como su nombre y clave.; en el segundo nivel hay tres segmentos: en el

primero se guardan los datos de la dirección como son calle, número, ciudad; en el

segundo se almacenan los datos de los productos, y en último se guardan las ofertas y

promociones; en el tercer nivel se encuentran las áreas de distribución, y dependen del

segmento de los productos.

El resultado de lo solicitado es el siguiente:

Solución al ejercicio 3.

La implementación del modelo jerárquico es fundamental debido a que hace posible

ordenar adecuadamente la ubicación de cada una de las entidades y los atributos de

cada una de ellas.

2.1.3. Modelo de red

Lo primero que debes saber de este modelo es que fue una adaptación al modelo

jerárquico, que consiste en evitarla redundancia de datos; las entidades se representan

por medio de nodos y de igual manera un nodo padre puede tener varios nodos hijos,

pero en este modelo se permite que un mismo nodo tenga varios nodos padres, lo cual no

está permitido en el jerárquico.

Es importante mencionar que el modelo de red permite representar las relaciones N:M.

Promocion

es

Dirección

Datos proveedores

Productos

Áreas de distribución

Page 12: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

12

Algunas de las características o bases del modelo de red son las siguientes:

El registro, el cual representa a un nodo de la red.

El elemento, el cual es un campo de datos que se deriva del nodo.

El agregado de datos, que define los nombres o conjuntos de nombres de los

campos.

Para comprender mejor la estructura del modelo de red y cómo se grafica, se presentan

los siguientes ejercicios.

Ejercicio 4: Las instrucciones son las siguientes

Se tienen casas, personas y ciudades; una persona solo puede vivir en una casa, y la

casa solo puede estar en una ciudad; una persona puede ser dueña de varias casas.

Una persona puede ser padre de familia de otra persona.

Solución al ejercicio 4: representación del modelo de red.

Otra forma de representar el modelo de red es remplazando los círculos por cuadros que

contienen los atributos. Tal como se muestra en el siguiente ejemplo, en cual tiene como

entidades a curso, profesor y alumno; el curso cuenta con clave, título y descripción, tal

curso se oferta de tres maneras: centro, sitio, forma. Para poder acceder al curso se tiene

como Requisito: claveC, título. El curso se ofrece por un Profesor (Idprofesor,

Nombreprof) y es tomado por alumnos (Matricula, Nombrealumn). Ahora observa cómo

quedaría:

Persona

Ciudad Casa

Vive Es dueña de

Esta

Es padre de

Page 13: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

13

Segunda forma de representar el modelo de red.

Para finalizar, podemos generalizar que el modelo jerárquico es parecido a un árbol, en el

que cada rama es un registro padre que contiene hojas o registros hijos, los cuales

pueden ser varios; sin embargo, el modelo de red puede tener varios registros padres

ligados a los registros hijos, lo que forma la estructura tipo red y lo diferencia del modelo

jerárquico.

Actividad 2. Modelo Jerárquico y de Red

Ahora que ya aprendiste lo más importante de un modelo jerárquico y red podrás crear

bases de datos, con soluciones pertinentes.

Propósito: Distinguir los modelos y herramientas conceptuales para crear bases de datos.

A continuación se muestra un párrafo que te definirá un problema, el cual debes analizar

correctamente para que en base a lo que comprendas, logres realizar los diagramas tanto

jerárquico como de red, y discutir tus resultados en el foro. Lee con atención las

instrucciones que en seguida se muestran:

1. Lee y comprende el texto siguiente: “Considerar una base de datos llamada

Capacitación, teniendo como segmento raíz donde se almacena el nombre del

curso, el objetivo y la duración de éste; en el segundo nivel hay tres segmentos:

uno se llama Instructores, que guarda los datos de los instructores, otro

segmento se llama Ubicación, que guarda el lugar donde se impartirá el curso

ClaveC Titulo Descripción

ClaveC Titulo Centro Sitio Forma

IDprofeNombreprof

Matricula Nombrealumn

CURSO

REQUISITO OFERTA

PROFESOR

ALUMNO

Page 14: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

14

como salón, edificio, etc., y el tercer segmento se llama Material y guarda la lista

de materiales necesarios para cada curso.”

2. Identifica sus entidades, atributos y relaciones

3. Realiza el diagrama jerárquico.

4. Del texto siguiente: “Una agencia vendedora de automóviles guarda registro de

los mismos considerando su matrícula, modelo y color; un automóvil puede ser

vendido a un solo cliente, pero un cliente puede comprar varios autos; de los

clientes se guarda su RFC y su nombre.”

5. Identifica sus entidades, atributos y relaciones.

6. Realiza el diagrama de red.

7. Ingresa al foro y participa.

8. Comparte tus resultados acerca de qué entidades y atributos encontraste para

cada caso y cómo se relacionan.

9. Contribuye con algún comentario por lo menos a dos de tus compañeros(as).

10. Con base en las aportaciones de tus compañeros(as), elabora tus conclusiones y

deja tu evidencia en el foro.

2.1.4. Relacional

El modelo relacional es una de los más difundidos y utilizados, debido a que ofrece

sistemas más simples y eficaces para la representación y manipulación de los datos; a

continuación se define el modelo y cómo se representa.

“Una base de datos relacional consiste en un conjunto de tablas, a cada una de las

cuales se le asigna un nombre exclusivo. Cada tabla tiene una estructura parecida a la

presentada donde se representaron las bases de datos E-R mediante tablas. Cada fila de

la tabla representa una relación entre un conjunto de valores. Dado que cada tabla es un

conjunto de dichas relaciones, hay una fuerte correspondencia entre el concepto de tabla

y el concepto matemático de relación, del que toma su nombre el modelo de datos

relacional”. (Silberschatz&Korth, 2002: 53)

Sintetizando lo anterior: la base de datos relacional no es más que un conjunto de tablas

tomadas del modelo E-R, las cuales se forman tomando en cuenta el tipo de cardinalidad

que existe entre atributos, logrando una correspondencia entre valores de las diferentes

entidades del modelo.

Analiza el siguiente ejercicio y realiza el modelo relacional.

Ejercicio 5

Page 15: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

15

Se cuenta con la tabla llamada Jugador, dicha tabla cuenta con tres atributos que son: No.

Jugador, Nombre y Posición_de_juego. A continuación se representa el modelo

relacional y la entidad relación de dicha tabla.

Tabla Jugador

Solución al Ejercicio 5: modelo entidad-relación.

Es importante conocer que existen reglas para convertir de modelo Entidad-Relación a

Relacional, debido a que de esto depende lograr un buen modelo antes de crear la base

de datos, detectando los atributos que se relacionarán con cada entidad.

Considera los siguientes puntos para hacer la transformación de manera correcta:

1. Toda Entidad del modelo entidad-relación se transforma a tabla.

2. Toda Entidad del modelo entidad-relación debe tener una única clave y para

distinguirla se va a subrayar.

3. Verificar la cardinalidad, es decir, si dos entidades se relacionan 1:1, 1:N, N:1 o

N:M,deberás conceptuar las acciones descritas a continuación:

No.Jugador Nombre Posición_de_juego

Jugador

No. jugador Nombre

Posición_de_juego

Cuando ingresas nombres de campos en una

tabla, no debe de llevar espacios en blanco,

por lo que se le puede agregar un guion.

Page 16: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

16

a. Si es 1:1 (uno a uno), la clave de cualquiera de las entidades pasa a la otra

entidad.

b. Si es 1:N o N:1 (uno a muchos o muchos a uno), la clave de la entidad que

tiene la cardinalidad 1 pasa a la tabla de la entidad que tiene el muchos.

c. Si es N:M (muchos a muchos), se crea una nueva tabla con el nombre de

la relación y se deben poner las dos claves de ambas tablas, y también si

tiene atributos propios.

Lee con atención el ejercicio 6.1 y realiza el modelo E-R.

Ejercicio 6.1

Relación 1:1 (un cliente solo puede rentar una película y la película solo puede llegar a ser

rentada por un solo cliente). En base a la oración presentada, obtener el modelo E.R.

Solución al ejercicio 6.1.

Sobre la base del modelo entidad - relación, se puede observar que la tabla CLIENTE y

PELÍCULAS tienen una relación 1:1 llamada Renta, debido a esto al formar el modelo

relacional enviando cualquier clave primaria de una de las tablas a la otra, por tal motivo

puede quedar graficado como cualquiera de las siguientes imágenes:

clavepel

Cliente

Clave nombre

Películas

Titulo

Renta

Clave nombre Clavepel

TABLA CLIENTE

Clavepel Titulo

Descripción

TABLA PELICULAS

Clave nombre

TABLA CLIENTE

Clavepel Titulo clave

TABLA PELICULAS

Page 17: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

17

Representación en tabla del ejercicio 6.1.

Analiza el ejercicio 6.2 y realiza el modelo E-R.

Ejercicio 6.2

Relación 1:N (un cliente puede rentar muchas películas y una película solo puede ser

rentada por un único cliente). En base a la oración presentada, obtener el modelo E.R.

Solución al ejercicio 6.2.

En este caso se muestra una relación 1:N, donde la clave de 1 (CLIENTE) pasa a la de

muchos (PELICULA), para formar el modelo relacional.

Representación en tabla del ejercicio 6.2.

Clave nombre

Clavepel

TABLA CLIENTE

Clavepel Titulo clave

Descripción

TABLA PELICULAS

Cliente

clave nombre

Películas

Titulo

renta

Clavepel

Page 18: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

18

Ahora lee con atención el ejercicio 6 .3 y realiza el modelo E-R.

Ejercicio 6.3

Relación N:M (un cliente puede rentar muchas películas y una película puede ser rentada

por muchos clientes en diferentes momentos). En base a la oración presentada, obtener

el modelo E.R.

Solución al ejercicio 6.3.

En este caso se muestra una relación N:M, donde, para crear relación entre tablas, se

crea una nueva entidad nombrada como la relación, en este caso Rentas, la cual contiene

los atributos clave de cada entidad, además de sus propios atributos, para una mejor

representación.

Representación en tablas del ejercicio 6.3.

Cada uno de los ejercicios presentados muestran casos con cardinalidad diferente,

además que se presentan los modelos E-R y relacional de cada caso, lo que te permite

clarificar las dudas que hayas tenido de los puntos presentados.

TABLA CLIENTE

Clave nombre

Clavepel

TABLA PELICULAS

Clavepel Titulo

clave Descripción TABLA RENTAS

Clavepel clave FechaderentaFechadedevolución

Renta Cliente

clave nombre

Películas

clave nombre

Fecha de

renta Fecha de

devolución

Page 19: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

19

Concluyendo con este subtema, se puede expresar que no sólo debemos conocer el

modelo entidad - relación para crear una correcta base de datos, sino que es de suma

importancia conocer y comprender las reglas que rigen al modelo relacional, debido a que

gracias a ellas podemos crear el “modelo relacional” que indica de forma clara cómo se

conformarán las verdaderas tablas de una base de datos,

2.1.5. Relacional Extendido

El modelo entidad - relación extendido incluye los conceptos ya vistos, tales como

entidad, atributo y relación; pero además incorpora los conceptos de subclase y

superclase, asociados con los conceptos de especialización y generalización.

Ahora profundizarás en los temas que más importan para la realización del modelo

relacional extendido, los cuales son: especialización y generalización.

El proceso de designación de subgrupos dentro de un conjunto de entidades se denomina

especialización”(Silberschatz&Korth, 2002: 53).)

La especialización se conforma por un grupo de entidades que a su vez puede contener

pequeños grupos de otras entidades, las cuales se pueden diferenciar de alguna manera

de este conjunto, debido a que no todas las entidades que pertenecen a un conjunto

tienen atributos compartidos.

Considérese el conjunto de entidades Persona, con atributos: nombre, dirección, teléfono.

A su vez esta persona también puede clasificarse como Estudiante o Profesor.

Cada una de estas nuevas entidades se puede identificar por un conjunto de atributos que

incluyen los atributos que contiene la entidad Persona.

Ejemplificando lo anterior: la entidad Estudiante puede contener atributos extras como

Matrícula, mientras que Profesor contiene atributos extras tales como IdProfesor y

carrera.

Según Silberschatz&Korth. (2002: 53) “generalización, es una relación contenedora que

existe entre el conjunto de entidades de nivel más alto y uno o más conjuntos de

entidades de nivel más bajo. Los conjuntos de entidades de nivel más alto y nivel más

bajo también se pueden llamar superclase y subclase, respectivamente.”

Tomando en cuenta el ejemplo previo en el que una entidad Persona puede ser

Estudiante o Profesor, se puede generalizar que la entidad Persona es la superclase y

Page 20: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

20

Estudiante y Profesor son las subclases, las cuales tienen similitud con algunos atributos

de su superclase.

A continuación se muestra la representación del modelo relacional extendido, en donde se

tiene como entidades a Empleados, almacenista, secretaria, vendedor. Empleado es una

superclase, que tiene como subclases a almacenista, secretaria, vendedor, cada uno de

ellos tiene o cuenta con sus propios atributos.

Ejemplificación del modelo relacional extendido.

2.1.6. Orientado a objetos

Para entender un poco más la definición de modelo orientado a objetos, es de suma

importancia mencionar que cada objeto de este modelo es una de las entidades que se

representan en el modelo E-R.

Cada objeto se comunica con otros objetos por medio de mensajes llamados parámetros,

los cuales se implementan por medio de métodos.

A continuación se define cada uno de éstos términos para generalizar el lenguaje:

• Variables: contiene los datos del objeto; las variables se corresponden con los atributos

del modelo E-R.

• Mensajes:a los que responde; cada mensaje puede no tener parámetros, o puede tener

uno o varios.

• Métodos, cada uno de los cuales es código que implementa un mensaje; el método

devuelve un valor como respuesta al mensaje.

Empleados

Clave Nombre

Almacenista Secretaria vendedor

Experiencia Velocidad de tecleo No. licencia

Especialización

Generalización

Page 21: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

21

Generalizando: dentro del modelo orientado a objetos, una variable es la representación

de cada atributo de una entidad, la cual puede contener métodos a los que se accede por

medio de un par de mensajes del objeto al que corresponde. Dicha variable se utiliza para

guardar el valor del atributo, sin embargo, el mensaje es utilizado para actualizar el valor

de dicha variable.

Por ejemplo, de una entidad llamada Profesor se tiene el atributo profesión, el cual se

puede representar mediante:

• Variable: profesión.

• Mensaje: obtener-profesión, cuya respuesta sea la profesión del profesor.

• Otro mensaje: establecer-profesión, que necesita un parámetro nueva-profesión, para

actualizar la profesión del profesor.

Cabe mencionar que este modelo se utiliza cuando se va a realizar la programación

necesaria para acceder a las base de datos, tomando en cuenta las entidades y atributos

de dicha base de datos a utilizar.

Analiza el ejercicio 7 y realiza el modelo orientado a objetos.

Ejercicio 7

Para ejemplificar de forma sencilla el modelo orientado a objetos, se tiene la entidad

Automóvil, la cual cuenta con una serie de atributos tales como marca, modelo y color.

Los mensajes o métodos que puede tener este objeto tomando en cuenta la entidad son:

frenar, acelerar y retroceder, todo depende de la instrucción que se le dé a la entidad

Automóvil al acceder a sus métodos.

Solución al ejercicio 7.

Automóvil

Marca

Modelo

Color

Frenar

Acelerar

Retroceder

Atributos

Métodos

Page 22: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

22

Actividad3. Modelo relacional, relacional extendido y orientado a

objetos

Para concluir la unidad es importante que analices los casos y elabores algunos de los

diagramas que se revisaron, tales como el diagrama relacional, relacional extendido y OO.

Propósito: Crear diagramas de bases de datos.

Instrucciones:

1. Del texto de la Actividad 2, donde obtuviste el modelo entidad - relación, ahora

obtén el diagrama relacional del siguiente caso:

“Considerar una base de datos llamada Capacitación, teniendo como segmento

raíz donde se almacena el nombre del curso, el objetivo y la duración de este, en

el segundo nivel hay tres segmentos: uno se llama Instructores, que guarda los

datos de los instructores; otro segmento se llama Ubicación, que guarda el lugar

donde se impartirá el curso, como salón, edificio, etc., y el tercer segmento se

llama Material y guarda la lista de materiales necesarios para cada curso.”

Realiza el diagrama relacional.

2. Sobre ese mismo ejercicio, modifícalo, agregando entidades de especialización

a la entidad que tú escojas y conviértelo a diagrama extendido; realiza el

segundo diagrama.

3. En ese mismo documento, y el mismo diagrama, escoge cualquier entidad y

represéntala en modelo orientado a objetos, inventa posibles métodos según la

entidad que elijas.

4. Realiza en un archivo de texto las indicaciones 1, 2, 3 y Guarda la actividad con

el nombre DBD_U2_A3_XXYZ, sustituye las XX por las dos primeras letras de

tu primer nombre, la Y por la inicial de tu primer apellido y la Z por la inicial de tu

segundo apellido.

5. Envía el archivo a tu Facilitador(a) para recibir retroalimentación

Autoevaluación

Para reforzar los conocimientos relacionados con los temas que se abordaron en esta

segunda unidad del curso, es necesario que resuelvas la actividad de autoevaluación.

Recuerda que es muy importante leer cuidadosamente los planteamientos indicados y

elegir la opción adecuada para cada uno.

Page 23: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

23

Evidencia de aprendizaje. Caso a diagramar

Para reforzar el aprendizaje acerca de los modelos más relevantes, en base a un caso

realizarás los modelos para representar gráficamente e identificar cómo se utilizan al

momento de realizar una base de datos, considerando que todo esto es el fundamento

para formar bases de datos funcionales e íntegros.

A continuación se muestran las instrucciones para que desarrolles tu evidencia de

aprendizaje, lee con atención lo siguiente:

Instrucciones:

1.- Lee el siguiente caso:

“Se desea informatizar la gestión de una tienda informática. La tienda

dispone de una serie de productos que se pueden vender a los clientes. De

cada producto informático se desea guardar el código, descripción, precio y

número de existencias. De cada cliente se desea guardar el código,

nombre, apellidos, dirección y número de teléfono. Un cliente puede

comprar varios productos en la tienda y un mismo producto puede ser

comprado por varios clientes. Cada vez que se compre un artículo quedará

registrada la compra en la base de datos junto con la fecha en la que se ha

comprado el artículo. La tienda tiene contactos con varios proveedores,

que son los que suministran los productos. Un mismo producto puede ser

suministrado por varios proveedores. De cada proveedor se desea guardar

el código, nombre, apellidos, dirección, provincia y número de teléfono”.

1. Guarda en un documento de Word todos los modelos que realizarás en los

siguientes puntos.

2. Obtén del caso presentado las entidades y atributo de cada entidad.

3. Relaciona las entidades, usando un nombre en cada relación.

4. Asigna la cardinalidad correspondiente según indica el caso.

5. Realiza el modelo Entidad – Relación.

6. Una vez terminado el modelo E-R, realiza las tablas del modelo Relacional.

7. Con la información del caso, toma una entidad y realiza el modelo Orientado a

objetos.

8. Guarda la actividad con el nombre DBD_U2_EA_XXYZ, sustituye las XX por las

dos primeras letras de tu primer nombre, la Y por la inicial de tu primer apellido y la

Z por la inicial de tu segundo apellido.

9. Envía el archivo a tu Facilitador(a) para recibir retroalimentación

10. Consulta la escala de evaluación para conocer los parámetros de la actividad.

Page 24: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

24

Autoreflexiones

Además de enviar tu trabajo de la Evidencia de aprendizaje, es importante que ingreses

al foro Preguntas de Autoreflexión y consultes las preguntas que tu Facilitador(a)

presente.

A partir de ellas elabora tu Autorreflexión en un archivo de texto llamado

DBD_U2_ATR_XXYZ.

Posteriormente envía tu archivo mediante la herramienta Autorreflexiones.

Cierre de la unidad

Has concluido la segunda unidad del curso. A lo largo de esta se vieron conceptos

básicos sobre los diferentes modelos utilizados para la representación de diagramas, los

cuales ayudarán a lograr fiables bases de datos.

Cada uno de los modelos te ayudará a organizar y obtener mejores bases de datos y de

forma oportuna, identificarás si los campos o entidades que estás definiendo en una BD

son los correctos, y si los atributos que se presentan en cada entidad son los necesarios

para implementar una BD que pretendas desarrollar.

Un punto importante que debes tomar en cuenta son las relaciones que generas entre

entidades y sus atributos, debido a que si no están conectadas no lograrás hacer

funcionar adecuadamente la inserción, actualización o modificación de datos en tu BD.

Es aconsejable que revises nuevamente la unidad en caso de que los temas que se

acaban de mencionar no te sean familiares o no los recuerdes, de no ser este tu caso, ya

estás preparado(a) para seguir con la unidad tres, en donde continuarás con todo ello,

con el fin de obtener el prototipo final de una base de datos.

Para saber más

Si deseas conocer más sobre los modelos de bases de datos que existen, consulta la

siguiente dirección.

Complejo Tecnológico, Campus de Teatinos 29071 Málaga. (España), abril 2012

http://www.lcc.uma.es/~galvez/ftp/bdst/Tema2.pdf.

Índex del sitio: http://www.lcc.uma.es/

Page 25: Unidad 2 Modelado de Bases de Datos

Diseño de bases de datos Modelado de bases de datos

Ciencias Exactas, Ingenierías y Tecnología | Ingeniería en Desarrollo de Software

25

Fuentes de consulta

Date C.J. (2001) Introducción a los Sistemas de Bases de Datos, 7ma Edición, Ed.

Addisson Wesley Longman.

Silberschatz A. & H. F. (2002) Fundamentos de Bases de Datos, 4ta Edición, Ed. Mc

Graw Hill.

Ramez E.&Shamkant B. Sistemas de Bases de Datos, 2da Edición, Ed. Navathe