Está en la página 1de 5

academy.oracle.

com

Diseño de Base de Datos


8-1: Modelado de Datos Históricos
Actividades de Práctica
Objetivos
• Identificar la necesidad de un seguimiento de los datos que cambian a lo largo
del tiempo
• Crear modelos de ERD que incorporen elementos de “datos a lo largo del tiempo”
• Identificar el UID de una entidad que almacena datos históricos; explicar y justificar la
elección de UID
• Crear un modelo conceptual basado en un determinado caso
• Aplicar las reglas de los diagramas de relación de entidad para crear un ERD que
refleje las reglas de negocio
• Presentar e interpretar el modelo de datos para un público
• Redactar documentación escrita para acompañar la presentación oral y un ERD

Inténtelo/Resuélvalo
1. En el caso siguiente, ¿qué palabras o frases indican que debe realizar un seguimiento de
los datos que cambian a lo largo del tiempo?

Los actores de un teatro local firman contratos que especifican su cuota de pago y las
condiciones de trabajo. Estos contratos se renuevan anualmente. Cada año los contratos
pueden cambiar su redacción y cuotas de pago. Para resolver conflictos laborales, el
teatro a veces debe retroceder varios años para poder consultar las cláusulas del contrato
implantadas en una fecha concreta.

2. Con el caso que aparece a continuación, cree un modelo conceptual.

Una asociación de fútbol de Sevilla está renovando su estadio. Está incorporando


tribunas de lujo que se ofrecerán a compañías. Estas tribunas contienen números de
asientos distintos. A cada tribuna se le asigna un número de sección y un nivel. Las
tribunas se alquilan por año y los precios se establecen de forma individual según la
ubicación y el número de asientos de la tribuna. La asociación de fútbol necesita realizar
el seguimiento del nombre, la dirección, el teléfono y la persona de contacto de la
compañía. A veces las compañías también proporcionan un logotipo. Las compañías que
alquilan una tribuna tienen derecho a renovar el alquiler cada año, pero a menudo no lo

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y sus filiales. Todos los demás nombres pueden
ser marcas comerciales de sus respectivos propietarios.
2

hacen. Cuando se ofrece una tribuna en alquiler, la asociación se pone en contacto con
las compañías que las han alquilado anteriormente para ver si desean volver a alquilarlas.

3. Modifique el modelo de ER de la tienda de alquiler de películas para ajustarlo a los


siguientes requisitos adicionales:

“Necesitamos mantener un historial de todos nuestros alquileres. Cada vez que un


cliente alquila un DVD, nos gustaría registrar la fecha/hora de alquiler y la fecha/hora
de devolución. Todos nuestros DVD se deben entregar al día siguiente, por lo que no
es necesario registrar una fecha de devolución. El mantenimiento de un historial de
alquiler nos permitirá analizar el patrón de nuestros alquileres. Podremos determinar
cuántos DVD alquila cada cliente y el número de veces que un cliente ha devuelto un
DVD con retraso. También nos permitirá saber cuántas veces se ha utilizado un
determinado DVD y, por tanto, cuándo se debe retirar cada DVD. Además, nos
permitirá analizar cuáles son las películas preferidas de nuestros clientes.”

DVD una copia de PELÍCULA


# número # id
* formato * título
en o categoría

alquilada por

en

de

ACTOR PRINCIPAL

alquila

de
CLIENTE
# número de miembro
* apellido
* nombre
o dirección
o número de teléfono en

ACTOR
# código
(#) nombre
artístico
o nombre real
o fecha de
nacimiento
4. Lea el caso práctico de IOUG (grupo internacional de usuarios de Oracle) siguiente.
Como grupo, desarrolle un diagrama ER para este caso. Asegúrese de etiquetar cada
atributo con su opcionalidad. Cada grupo podrá disponer de 10 minutos para presentar su
solución en la siguiente sección. Se le pedirá que prepare cada uno de los siguientes
elementos:

• Explicación del problema: ¿por qué se ha dirigido a usted el IOUG? ¿Qué tipo de
ayuda necesitan?
• Descripción de la solución propuesta: ¿cómo puede ayudarles a solucionar su
problema? ¿Cuáles son sus recomendaciones?
• Requisitos de información de la organización/negocio claramente definidos: ¿qué
datos necesitan registrar y qué información necesitan obtener a partir de los datos?
• Reglas de negocio que se aplican a los requisitos de información de la
compañía/organización definidas como sentencias individuales: ¿qué reglas de
negocio puede formular partiendo del caso proporcionado?
• Suposiciones claramente definidas que se han tenido que considerar a la hora de
desarrollar la solución: ¿qué suposiciones ha tenido que hacer al desarrollar su
solución?
• Modelo de relación de entidades

CASO PRÁCTICO DE IOUG


Nuestro grupo regional de usuarios de Oracle ha crecido hasta abarcar a más
de 200 miembros. Somos una organización de voluntarios formada por
trabajadores profesionales y alumnos de escuelas secundarias, y nuestros
registros son un verdadero caos. Necesitamos un sistema de información que
nos ayude a realizar un seguimiento de nuestro negocio.
Claramente necesitamos automatizar nuestros registros de miembros. De cada
miembro, necesitamos guardar el nombre, el tratamiento, la dirección de correo
electrónico, el número de teléfono particular o de oficina, el tipo de miembro
(individual o corporativo), y saber si ha abonado sus cuotas (¿está “al día” en el
pago?). Cobramos las cuotas de forma anual, que vencen en el mes de enero.

También nos gustaría saber la compañía en la que trabaja o cuál es su escuela,


pero es difícil mantener esta información actualizada porque nuestros miembros
están siempre cambiando de compañía o de dirección o se gradúan en la
escuela. Intentamos realizar un seguimiento solo del empleador actual de cada
miembro. Nuestros miembros proceden de muchas compañías diferentes,
incluyendo Sony, EG&G y Storage Tech, así como de diferentes escuelas
secundarias. Algunos de nuestros miembros están desempleados. De cada
compañía, registramos su nombre, dirección y tipo de negocio. De cada
escuela secundaria, registramos el nombre de la escuela y la dirección.
Tenemos un juego estándar de códigos de tipos de negocios y escuelas
secundarias. Solo registramos la dirección principal de cada compañía.
Celebramos varios eventos a lo largo del año y nos gustaría realizar un
seguimiento de la información de cada evento. Algunos de los eventos anuales
son la Reunión de septiembre, la Reunión de noviembre, el Día anual de
formación en enero y nuestra Reunión de abril. También tenemos eventos
especiales cada año.

Por ejemplo, en mayo celebramos un día especial CASE (Computer Aided


Systems Engineering), en el que pudimos escuchar a Richard Barker,
procedente de Oracle en el Reino Unido. Celebramos nuestros eventos en
ubicaciones diferentes de la ciudad, como AT&T, Redrocks Community College
y Skyline University. Nos gustaría realizar un seguimiento de la fecha de cada
evento, la descripción opcional del evento, el número de asistentes, el lugar de
celebración, la cantidad de dinero que hemos gastado y los comentarios sobre
el evento. Todos los comentarios los tratamos como si fueran de remitentes
anónimos. Un juego de comentarios es una descripción con texto en formato
libre de cualquier longitud. Numeramos cada juego de comentarios y
normalmente recibimos varios juegos de comentarios para un evento.

También realizamos un seguimiento de los miembros que asisten a los distintos


eventos. Algunos de nuestros miembros son muy activos y otros asisten en
raras ocasiones o se contentan con recibir nuestro boletín.

También necesitamos realizar un seguimiento del tipo de plataforma de


computación que utilizan nuestros miembros. Utilizamos una única etiqueta de
identificación del sistema de tres dígitos para cada tipo de plataforma.
Por ejemplo, 001 corresponde a UNIX; 002 a RAC y HA; 003 a Oracle en
Windows; 020 a Oracle Spatial; 030 a Oracle y .NET; 050 a DBMS; y 080 a
Business Intelligence y las herramientas de generación de informes.

También queremos realizar un seguimiento de las áreas de aplicación en las


que está interesado cada miembro. Algunas áreas de aplicación de ejemplo son
contabilidad, recursos humanos, ocio, petróleo y gas, productos farmacéuticos
y sistemas sanitarios. Las aplicaciones deben de ser portátiles, por lo que no
necesitamos saber en qué plataformas se ejecutan.