You are on page 1of 13

Modelado de Datos

Modelado de Datos

Poniéndonos en Contexto

La semana pasada discutimos elementos fundamentales tanto


de sistemas de información como de base de datos. En este pequeño
recurso nos ocuparemos del modelado de datos.
En este orden de ideas los desarrolladores de sistemas de
información, son de la opinión que el Modelado de Datos es la parte
más importante del proceso de desarrollo, dicha opinión está
sustentada básicamente por lo siguiente:
 Las características de los datos (hechos y reglas) capturadas
en la fase de modelaje son esenciales para el diseño y
aseguran la integridad de la Base de Datos.
 Los Datos (y no los procesos) son los aspectos más
complejos de la mayoría de los Sistemas de Información. En
este sentido, la riqueza de los datos soporta cualquier tipo de
proceso.
 Los Datos tienden a ser más estables que los procesos que lo
usan.

Proceso de Diseño
Desde una concepción académica se puede definir al proceso de
diseño como el proceso mediante el cual se define y se determina la
estructura tanto física, como lógica de una o más bases de datos, con
el objeto de satisfacer las necesidades de información de los distintos
usuarios de las aplicaciones de una organización.

Gerencia virtual 2
Modelado de Datos

La siguiente figura expone las distintas fases de diseño

En este punto, en nuestro curso nos ocuparemos del diseño


conceptual y (parte) de la implementación física. Bajo estas
consideraciones, la diapositiva siguiente resume el modelo tanto lógico
como físico.

Gerencia virtual 3
Modelado de Datos

Objetivos del Diseño de la Base de Datos


Básicamente se diseña una base de datos para lo siguiente:
 Satisfacer los requisitos de información, tanto de los
usuarios como las aplicaciones.
 Proporcionar una estructura de datos que sea natural y
fácil de entender.
 Soportar tanto los requisitos de procesamiento y
objetivos de rendimiento, tales como tiempo de
respuestas, tiempo de procesamiento, espacio de
almacenamiento, entre otros.
 Facilitar un esquema flexible de base de datos que sea
adaptable a los cambios de requisitos de la base de
datos una vez implementada la misma.

Gerencia virtual 4
Modelado de Datos

Modelaje de Datos
Proceso de Abstracción mediante el cual se determinan aquellos
objetos y sus propiedades, que son centrales y relevantes en la
representación conceptual de la parcela del mundo real en estudio.
En este orden de ideas, el resultado del proceso, permite tener al
menos el Modelo Conceptual y las Vistas Externas relativas al
problema en estudio.
Por su parte, el Modelo de Datos puede ser definido como el
conjunto de conceptos, reglas y restricciones que permiten construir
una representación genérica de los objetos relevantes comprendidos
en la parcela del mundo real en estudio (Universo del Discurso).
En este curso usaremos el Modelo de Entidad Relación, el cual
es ampliamente empleado para el diseño de base de datos
relacionales. De una manera muy simplificada, se compone de lo
siguiente

Bajo estas consideraciones, a objeto de seguir avanzando,


veamos la siguiente diapositiva, la cual explica los dos primeros
elementos.

Gerencia virtual 5
Modelado de Datos

De acuerdo a la figura anterior, lo que se define en nuestro


modelo son las entidades y las distintas propiedades que la
conforman. La siguiente figura, muestra la definición de la entidad
Alumno con sus diferentes atributos.

De igual manera, la siguiente figura muestra un ejemplo de


instancias de dicha entidad.

Gerencia virtual 6
Modelado de Datos

Tal como se aprecia en la figura anterior, una instancia es


básicamente un registro de una tabla de una base de datos. Del
mismo modo, se aprecia en el ejemplo el código de la carrera el cual
proviene de otra entidad. Para ahondar en ello, explicamos el último
elemento: la relación.

Otro aspecto importante a destacar dentro del modelo de entidad


relación es la Cardinalidad, las cuales obedecen a las distintas
restricciones en las Actividades de los negocios que necesitan
reflejarse en la base de datos y en sus aplicaciones. En este sentido,

Gerencia virtual 7
Modelado de Datos

en un modelo de entidad relación las reglas de negocios se traducen


en relaciones entre entidades de la siguiente manera:
• Uno o Uno.
• Uno a Muchos
• Muchos a muchos (conceptualmente, en un modelo de
entidad relación no deben reflejarse este tipo de
relaciones)
Existen diversas notaciones para representar la cardinalidad en
un modelo entidad relación. En este curso, se pueden emplear
cualquiera de estas.

Para “leer” un modelo de entidad relación se procede de la


siguiente manera.

Gerencia virtual 8
Modelado de Datos

Antes de proceder a explicar un ejemplo completo, veamos un


último concepto, las relaciones recursivas, las cuales son empleadas
con cierta frecuencia.

El ejemplo anterior muestra una entidad empleado, la cual se


relaciona con ella misma a fin de determinar tanto el jefe de un
empleado, así como también los subordinados de cada jefe. Un
elemento de importancia a destacar acá es que la relación es no

Gerencia virtual 9
Modelado de Datos

obligatoria por ambos lados (de allí la presencia del “0”), ya que el
presidente de una compañía no es subordinado de nadie (la relación
subordinado), y del mismo modo, existen empleados que no tienen
personal a su cargo (la relación supervisa)

Un ejemplo …
No existe mejor manera de reforzar lo explicado sino es
mediante un pequeño ejemplo. Pues bien, vamos a ello.
En un Decanato de una universidad se imparten diversas
carreras, las cuales poseen en sus pensum de estudio diversas
materias. Al inicio de un lapso académico (denominado semestre), se
aperturan secciones de las diferentes asignaturas para cada una de
las carreras.
Los alumnos pueden o no cursar un semestre, para ello, se
inscriben en las secciones en un semestre determinado. En este
sentido, es de hacer notar que como norma del decanato, un alumno
no puede estar inscrito en más de una carrera.
Por otro lado, al inicio de cada semestre, las secciones son
asignadas a los docentes, quienes pertenecen a un Departamento. En
este sentido, una sección de determinada asignatura es asignada a un
único docente quién es responsable de la evaluación de los alumnos
de dicha sección.

Gerencia virtual 10
Modelado de Datos

Resolviéndolo
Más allá de mostrar la respuesta a un enunciado, lo importante
acá es aplicar dentro del modelo los conceptos vistos hasta ahora. En
otras palabras, se debe diseñar un modelo adaptable a cambios, que
posee un adecuado nivel de abstracción e independencia de datos.
En este sentido, mostraremos una aproximación a lo que sería el
modelado del ejemplo y luego discutiremos el mismo.

De la simple lectura se aprecia una error, el cual está claramente


marcado, ¿por qué?, sencillo, existe una relación entre muchos a
muchos entre alumno y sección, lo cual tal como se explicó en la
teoría, no debe hacerse. En este sentido, un alumno está en varias
secciones y una sección tiene varios alumnos, lo cual
conceptualmente es correcto, pero, no debe reflejarse de esa manera
en un modelo de datos. La razón técnica de ello la veremos en los
siguientes recursos.

Gerencia virtual 11
Modelado de Datos

¿Cómo resolver este problema?, la solución es muy sencilla,


crear una entidad entre alumno y sección (denominada entidad
asociativa) y asignar la cardinalidad de muchos a ella. Esto, digamos
es algo que se realiza de manera directa y natural, y por “norma” no
escrita, a dicha entidad, se le coloca el nombre de cada una de la
entidad que se asocia, separada por un guión. En nuestro caso, la
entidad sería Alumno-Sección.
Por lo general, no recomiendo hacer ello, a menos que no haya
manera. La razón de ello es muy sencilla. Por lo general, la entidad
que se crea tiene “un nombre propio” el cual se deriva del mismo
modelo en sí.
En nuestro caso, estamos creando una entidad asociativa entre
alumno y sección para “romper” la relación de muchos a muchos; pero
en sí ¿Qué significa esa entidad asociativa más allá del romper una
relación que no se debe hacer?. Simple: un alumno se inscribe en
una o más secciones, y, una sección tiene más de un alumno inscrito.
En concordancia, la entidad en cuestión es Inscrito, la cual contiene
precisamente la información de los alumnos inscritos en determinada
sección. Gráficamente sería

Con ello resolvemos el “error” del modelo. Ahora bien ¿está listo
nuestro modelo?. Para responder a esta pregunta debemos ir mucho
más allá del formalismo académico de responder a un enunciado; por

Gerencia virtual 12
Modelado de Datos

el contrario, deberíamos ver si cumple con los preceptos de


abstracción. Veamos ¿un docente y un alumno no son personas que
tienen varios atributos en común?, obviamente que sí, en base a ello
¿cumple con el nivel de abstracción?.
De igual manera, más allá de un mero tecnicismo veamos la
razón de ello. Se puede dar el caso que un alumno que se gradúe
pase a formar parte de la planta de docentes ¿debería volver a cargar
sus datos básicos?. De igual manera, ¿no existen materias comunes
entre las diferentes carreras, como por ejemplo las elementales?,
¿Cómo queda nuestro modelo entonces?. Por otro lado, ¿en que
entidad se almacena la información de las calificaciones de los
alumnos?. ¿está creada o hace falta crearla?.
Con base a ello, su tarea es mejorar este modelo a objeto de
responder las inquietudes anteriormente nombradas.

Gerencia virtual 13