Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1 INTRODUCCIÓN
Uno de los pilares de cualquier organización o empresa es la información que necesita para su
funcionamiento; asimismo, una de sus ocupaciones básicas es el tratamiento de dicha información
que, ya sea de forma manual o automática, tiene como objetivo proporcionar la información
correcta en el momento y lugar adecuado a las personas autorizadas con un coste mínimo. La
importancia que la información tiene en el contexto de las organizaciones conduce a introducir el
concepto de sistema de información.
Un sistema de información (SI) es un conjunto de elementos ordenadamente relacionados entre sí
de acuerdo a ciertas reglas, que aportan a la organización a la que sirven la información necesaria
para el cumplimiento de sus fines.
Se dice que un SI está informatizado si está soportado por un ordenador. Dado que este es el caso
que interesa en esta asignatura, a partir de este punto con la expresión “sistema de información”
siempre se hará referencia a un “sistema de información informatizado”.
Como funciones fundamentales de un SI se pueden destacar la recogida, procesamiento y
almacenamiento de datos, facilitando además la recuperación, elaboración y presentación de los
mismos. Para realizar satisfactoriamente estas funciones un SI consta de cinco grandes
componentes:
Contenido: los datos, su descripción y los programas que los manipulan.
Equipo físico (hardware): formado por la unidad central de proceso y los equipos
periféricos (discos, terminales, impresoras, redes, etc.).
Equipo lógico (software): compuesto por los programas, documentación, lenguajes de
programación, etc. que deben gestionar los datos (creación, consulta, recuperación y
mantenimiento) así como controlar las comunicaciones y dar soporte a tratamientos
específicos.
Administrador: equipo de personas encargado de asegurar la calidad de los datos
almacenados y de permitir su uso correcto y permanente. También debe controlar la
disponibilidad, la confidencialidad y la integridad de los datos.
Usuarios: personas que acceden al sistema de información.
De todos estos elementos, los datos constituyen la parte esencial del sistema, y son los que
justifican su existencia. Para organizar y gestionar estos datos en el computador, se han
desarrollado técnicas cuya evolución ha estado determinada, principalmente, por el desarrollo de
la tecnología de los computadores, así como por los nuevos requisitos y necesidades planteadas
por los usuarios.
En la actualidad, las técnicas de bases de datos representan la tecnología informática disponible
para la organización y gestión de grandes volúmenes de datos en un computador. Se puede
afirmar que el núcleo de todo sistema de información actual es una base de datos, y que el diseño
y creación de ésta constituyen una etapa importante en la construcción del sistema.
Una “base de datos (BD) es una colección estructurada de datos”; en esta colección, los datos
deben estar organizados de forma que reflejen fielmente los objetos, las relaciones y las
restricciones existentes en la parcela del mundo real representada por la base de datos
(propiedades estáticas); asimismo, y para que esta representación sea fiable, la base de datos
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 1
Bases de datos
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 2
Bases de datos
Fase 1: Análisis
Investigación: esta actividad tiene como objetivo “descubrir” el conjunto de requisitos de
información por una parte, y de proceso por otra, que la organización necesita para cumplir sus
fines. (Técnicas heurísticas).
Fase 2: Diseño
Diseño conceptual (o modelado conceptual): esta actividad tiene como objetivo obtener una
representación de la realidad que capture las propiedades estáticas y dinámicas de la misma
necesarias para satisfacer los requisitos recogidos en la actividad anterior. En este proceso se debe
aprehender y conceptualizar el mundo exterior transformándolo en un conjunto de ideas y
definiciones que supongan una imagen fiel del comportamiento del mundo real. El resultado de
este diseño es el esquema conceptual (representación de las propiedades estáticas) y un conjunto
de esquemas de transacciones (representación de la parte dinámica). (Técnicas heurísticas).
Diseño lógico: esta actividad tiene como objetivo la traducción del esquema conceptual obtenido
en la fase anterior en términos del modelo de datos en que se base el sistema de gestión de bases
de datos que se vaya a utilizar, dando lugar por una parte a un esquema lógico y por otra a un
conjunto de transacciones que expresan, a este nivel, respectivamente la estática y la dinámica.
(Técnicas procedimentales).
Diseño físico: teniendo en cuenta detalles de representación física de los datos, y atendiendo a
criterios de eficiencia se eligen estructuras de almacenamiento y caminos de acceso específicos
para que las aplicaciones que acceden a la información contenida en los ficheros de la base de
datos tengan un buen rendimiento. El resultado de esta tarea es el esquema físico. (Técnicas
heurísticas).
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 3
Bases de datos
Fase 3: Implantación
Esta fase supone la incorporación del SI diseñado a la organización con la puesta en marcha de la
base de datos y de las aplicaciones desarrolladas.
Nota: En algunos textos se considera que el diseño lógico consta de dos partes, en primer lugar el
diseño lógico estándar en el que se utilizan las estructuras del modelo de datos elegido y el diseño
lógico específico en el que, el resultado del diseño estándar es ajustado al sistema de gestión de
bases de datos comercial que se haya elegido. Cuanto más fiel sea este sistema al modelo de datos
en que se basa, menor será el trabajo a realizar en el diseño específico.
Tanto en el diseño conceptual como en el diseño lógico es necesario utilizar un modelo de datos
para representar la parcela del mundo real que se quiere modelar. En el apartado siguiente se
realiza una introducción a este concepto.
Diseño conceptual con el Modelo Entidad Relación. Este modelo es un modelo de datos
semántico definido por Peter Pin-Shan Chen
Diseño físico de una base de datos relacional. Se estudiará cómo mejorar el rendimiento
de una base de datos relacional.
EJEMPLO
Un centro universitario quiere diseñar una base de datos para gestionar la docencia de sus
asignaturas. Concretamente se quiere almacenar la siguiente información:
Profesor:
- código interno, nombre y dirección
- departamento al que pertenece
- asignaturas que imparte
- número total de horas de docencia que tiene asignadas.
Asignatura:
- código de la asignatura y nombre,
- número total de horas en el plan de estudios
- departamento al que está adscrita.
Departamento:
- nombre, director y teléfono.
En el análisis de la realidad se ha detectado las siguientes restricciones de integridad:
Un profesor debe estar adscrito a un único departamento.
Una asignatura debe estar adscrita a un único departamento.
No puede haber dos departamentos con el mismo nombre.
No puede haber dos profesores con el mismo código.
No puede haber dos asignaturas con el mismo código.
El total de horas que se imparten de una asignatura no puede ser superior a las horas que tiene cada
asignatura.
Un profesor no puede impartir más de 12 horas en una asignatura.
Una asignatura no puede tener más de 24 horas.
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 4
Bases de datos
Restricción: el total de horas que se imparten en una asignatura no puede ser superior a las horas
que tiene cada asignatura.
Profesor
Nombre_atributo Descripción Dominio
Código código interno d_codp
Nombre nombre d_nomp
Dirección dirección d_dir
Total_horas suma de horas d_horast
Departamento
Nombre_atributo Descripción Dominio
Nom_dep nombre d_nomd
Director director d_director
Teléfono teléfono d_tel
Asignatura
Nombre_atributo Descripción Dominio
Código código asignatura d_coda
Nombre nombre d_noma
Horas nº de horas en PE d_horas
Docencia
Nombre_atributo Descripción Dominio
Horas nº de horas impartidas d_horasd
Dominios
d_nomd: tira(20), d_nomp: tira(40),
d_codp: tira(4), d_noma: tira(35),
d_coda: tira(5), d_tel: tira(10),
d_horasd: 1..12, d_dir: tira(30),
d_director: tira(40), d_horas: 1..24,
d_horast entero
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 5
Bases de datos
DISEÑO LÓGICO
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 6
Bases de datos
DISEÑO FÍSICO
Profesor:
Fichero indizado por código; Índice sobre nombre
Asignatura:
Fichero indizado por código; Índice sobre nombre
Departamento:
Fichero secuencial; Índice sobre nombre
Docencia:
Fichero indizado por coda; Índice sobre codp
Los modelos de datos conceptuales son las herramientas que se utilizan para realizar este
diseño. En este tema se presenta uno de estos modelos, el Modelo Entidad-Relación, así como
una metodología de diseño con él. La versión que se presenta del Modelo Entidad-Relación, ER a
partir de ahora, es una de las muchas propuestas que se han hecho sobre el modelo original de
Peter Pin-Shan Chen [Chen76], extendido con nuevas características. Hay que destacar que
algunas de las extensiones que se pueden encontrar de este modelo incluyen un lenguaje para la
representación de las propiedades dinámicas, sin embargo, en este tema estas propiedades
serán tratadas de manera informal posponiendo su especificación a la fase de diseño lógico.
2 MODELO ENTIDAD-RELACIÓN
El modelo ER permite representar, en lo que se llama diagrama ER, las estructuras que constituyen
el contenido del sistema de información junto con restricciones de distintos tipos que limitan las
ocurrencias válidas de las mismas. Para ello hace uso, fundamentalmente, de tres conceptos:
entidad, atributo y relación. Además, para aumentar la capacidad expresiva del modelo también se
contempla la definición de objetos compuestos mediante la agregación de entidades y la
definición de objetos especializados (o generalizados). Todos estos conceptos se presentan a
continuación con detalle.
2.1 Entidad
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 7
Bases de datos
Así pues, los componentes básicos de un sistema de información son los objetos o entidades de los
que se quiere almacenar información; todos los objetos que son de la misma clase se representan
con un tipo de entidad, aunque, por simplicidad, en adelante se hará referencia a él como entidad
utilizando la expresión ocurrencia de entidad para hacer referencia a un objeto concreto de ese
tipo.
Con una entidad se representará cualquier persona, concepto, suceso o evento (en definitiva
cualquier “cosa”) sobre el que se quiera almacenar información.
2.2 Relación
Los objetos de un sistema de información se asocian unos con otros, siendo también de interés
modelar estas conexiones; para ello se utilizarán los tipos de relaciones o por simplicidad
relaciones. Con las relaciones se representan las posibles asociaciones existentes entre los objetos
del sistema de información. Cada ocurrencia de una relación asocia una ocurrencia de cada uno de
los objetos relacionados.
En el modelo ER una relación se representa con un rombo nominado unido por un arco a cada una
de las entidades que representan a los objetos asociados. Según el número de entidades
asociadas, se habla de relaciones binarias, ternarias, etc. Si una entidad participa más de una vez
en una relación se dice que ésta es reflexiva.
Los siguientes diagramas representan algunas relaciones posibles.
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 8
Bases de datos
Los arcos que unen las entidades a la relación siempre pueden ser nominados indicando el papel
que la entidad juega en la relación. En el caso de las relaciones reflexivas deben ser nominados
necesariamente.
2.3 Atributo
Los atributos permiten representar las propiedades de los objetos del sistema de información así
como de las asociaciones entre ellos.
En el modelo ER los atributos se representan con elipses nominadas unidas por un arco a la
entidad o relación a la que describen.
Los atributos pueden clasificarse según varios criterios. Desde el punto de vista de su estructura
los atributos pueden ser de dos tipos:
Compuesto o estructurado: los valores se componen de otros valores (que pueden ser de
cualquier tipo). Este caso se representa uniendo con arcos las elipses de los atributos con
las elipses de los atributos que lo componen.
Según el número máximo de valores que puede tomar el atributo para cada ocurrencia de entidad
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 9
Bases de datos
Para dar mayor capacidad expresiva al modelo ER, la definición de entidades y relaciones puede
enriquecerse con la inclusión de algunas restricciones que limitan el conjunto de ocurrencias
válidas. Estas restricciones se pueden definir sobre atributos, sobre entidades y sobre relaciones.
Restricciones de dominio
Estas restricciones limitan el conjunto de valores que puede tomar un atributo. Para ello se
definen dominios como tipos de datos que se asocian a cada atributo. En el caso de los atributos
derivados se debe incluir cómo se calculan.
dom_nombre: Cadena(50)
Nombre: dom_nombre
Edad: A partir de la fecha de nacimiento y de la fecha actual, calcular los años del
alumno.
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 10
Bases de datos
Esta restricción se define sobre aquellos atributos que necesariamente deben tener un valor para
cada ocurrencia de la entidad o de la relación que describen. Se representa con un círculo pequeño
sobre el extremo del arco que se une a la elipse e indica que ese atributo deberá tomar siempre
valor para cada ocurrencia de la entidad o relación que cualifica.
En el caso en que un atributo compuesto tenga restricción de valor no nulo, al menos alguno de
sus componentes debe tener la misma restricción.
Estas restricciones limitan el conjunto de ocurrencias posibles de una entidad. Se distinguen las de
unicidad y las de identificación.
Restricción de unicidad
Representa el hecho de que las distintas ocurrencias de una entidad deben tomar valores distintos
para el atributo (o conjunto de atributos) sobre los que se define esta restricción. Se representa
subrayando los atributos con una línea discontinua. En el caso de que haya varios conjuntos de
atributos con restricción de unicidad, se añade un subíndice a la línea del subrayado.
Restricción de identificación
Esta restricción exige que cada ocurrencia de una entidad se identifique unívocamente de forma
que se pueda diferenciar del resto de ocurrencias del mismo tipo. Esta identificación se puede
conseguir de tres formas:
Restricción de unicidad
Al igual que en el caso de las entidades, esta restricción representa el hecho de que las distintas
ocurrencias de una relación deben tomar valores distintos para el atributo (o conjunto de
atributos) sobre los que se define esta restricción. También se representa subrayando los atributos
con una línea discontinua. En el caso de que haya varios conjuntos de atributos con restricción de
unicidad, se añade un subíndice a la línea del subrayado.
Restricciones de cardinalidad
Estas restricciones limitan el número mínimo y máximo de ocurrencias de una relación en las que
puede participar una ocurrencia de entidad. Por simplicidad se estudiará primero el caso de las
relaciones binarias, para generalizarlo luego a relaciones de orden superior.
Sea la relación binaria R definida entre las entidades A y B. El conjunto de ocurrencias posibles de
la relación es un conjunto, llamado también R. Las cardinalidades de A y B en la relación R se
expresan por R(A(minA, maxA), B(minB, maxB)), que significa que:
Cada ocurrencia de A se relaciona a través de R con n ocurrencias de B tal que minA <= n
<=maxA.
Cada ocurrencia de B se relaciona a través de R con n ocurrencias de A tal que minB <= n
<=maxB. Los valores más significativos de la cardinalidad máxima de una relación son:
o maxA = 1 ,significa que cada ocurrencia de A sólo puede aparecer en una ocurrencia
de R.
o maxA = n (n > 1) , significa que cada ocurrencia de A puede aparecer como máximo
en n ocurrencias de R (n indica que no existe un límite máximo; se puede instanciar
a una constante entera, en cuyo caso representa un máximo limitado).
Habitualmente esta cardinalidad máxima se usa para calificar las relaciones, utilizándose la
notación siguiente: maxA:maxB obteniéndose como casos más frecuentes las expresiones 1:1
(leída uno a uno), 1:M (leída uno a muchos) y M:M (leída muchos a muchos).
Restricción de identificación
Cada ocurrencia de una relación debe poder distinguirse de las demás, pero en una relación no se
definen identificadores; esto último se debe a que no es necesario, ya que no puede haber dos
ocurrencias de una relación en las que participen exactamente las mismas ocurrencias de las
entidades implicadas y, por lo tanto, cada ocurrencia de relación se puede distinguir de las demás
por medio del valor de los identificadores de las ocurrencias de entidades que la constituyen.
Según la cardinalidad de las relaciones harán falta, para identificar una ocurrencia de relación,
todos o sólo algunos de los identificadores de las ocurrencias de entidades que la constituyen.
En el diagrama mostrado en el Ejemplo anterior, para distinguir una ocurrencia de
la relación Matricula basta con referirse al Num_exp del Alumno, puesto que cada
alumno sólo puede aparecer una vez en la relación, y en el diagrama del Ejemplo
15, cada ocurrencia de la relación Docencia estará perfectamente identificada por
los atributos Num de Grupo y Cod de Asignatura.
Una entidad sufre restricción de dependencia de identificación cuando no puede identificarse con
sus propios atributos de manera que sus ocurrencias son distinguibles gracias a su relación con
otras entidades. A este tipo de entidades se les denomina entidades débiles. Esta restricción
implica siempre una restricción de existencia.
Esta restricción de dependencia de identificación se representa utilizando una línea doble para la
entidad débil y para la relación o relaciones de las que depende para su identificación, así como
para el arco que las une.
En el esquema siguiente se muestra el patrón de una entidad débil en el caso de que se identifique
con una sola relación; en la figura hay dos cardinalidades (las de A) que no se han especificado
(indicado mediante un interrogante) ya que cualquier valor es posible.
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 13
Bases de datos
Caso 1: R(A(?, n), B(1,1)). En este caso, dado que una ocurrencia de A se puede relacionar con
muchas ocurrencias de B, es necesaria la existencia de un atributo “semiidentificador” de B (b0)
que ayude a distinguir entre todas las ocurrencias de B que se relacionan con la misma
ocurrencia de A.
Está_en(País(O,n), Ciudad(1,1))
La entidad Ciudad es débil ya que en la organización (información geográfica mundial) que se está
modelando puede haber varias ciudades con el mismo nombre aunque evidentemente siempre en
distintos países; entonces ¿cómo se distingue una ciudad de otra?. En primer lugar por el país al
que pertenecen y en un mismo país por el atributo nom_ciu necesario en este caso ya que en un
país puede haber muchas ciudades.
Caso 2: R(A(?, 1), B(1,1)). En este caso, dado que una ocurrencia de A como mucho se relaciona
con una de B, no es necesaria la existencia de un atributo “semiidentificador” ya que en realidad
cada ocurrencia de B se identifica gracias a la ocurrencia de A con la que se relaciona. (
Este caso no es muy frecuente por lo que el ejemplo requiere cierta explicación:
“Una organización tiene informatizados los expedientes jurídicos de todos los
pleitos en los que está involucrada; de cada pleito, entre otras informaciones, se
conoce el número de pleito y el resultado de la sentencia que puede ser favorable
o desfavorable. En caso de ser desfavorable se puede presentar como mucho un
recurso ante el mismo órgano jurisdiccional; cada recurso se identifica por el
número de pleito al que atañe y entre otros atributos interesa saber en qué fecha
se realiza”
Recurrir(Pleito(0,1), Recurso(1,1))
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 14
Bases de datos
Resumiendo, las entidades débiles son aquéllas para las que no existe un identificador como se ha
definido antes, sino que para distinguir entre sus ocurrencias es necesario utilizar una (o más de
una) de sus relaciones siendo en ocasiones necesario la existencia de un atributo (o conjunto de
atributos) llamado semiidentificador. Es decir, los tipos de entidades débiles tienen restricción de
identificación respecto a una o más relaciones con otras entidades; para poder identificar cada
ocurrencia de una entidad débil hacen falta los identificadores de dichas entidades.
En el caso de que la entidad se identifique gracias a varias relaciones con otras entidades, las
cardinalidades máximas de todas estas entidades deben ser n siendo necesario un
semiidentificador en la entidad débil (piénsese que si hay alguna relación con una entidad con
cardinalidad máxima igual a 1, esa relación bastaría para identificar a la entidad débil incluso sin
semiidentificador).
Supónganse que se quiere almacenar información sobre las notas que han
obtenido los alumnos en distintas asignaturas teniendo en cuenta que un alumno
se puede presentar varias veces a una asignatura, pero en fechas distintas, y que
los exámenes no están codificados.
Hay que tener en cuenta que, dada la diversidad y complejidad de los sistemas de información que
se van a considerar, a menudo para representar la realidad no serán suficientes las restricciones
presentadas en los apartados anteriores lo que obligará a completar el diagrama con un conjunto
de restricciones de integridad explícitas que se expresarán lo más claramente posible en lenguaje
natural en un anexo al diagrama (que también debe incluir la definición de los dominios).
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 15
Bases de datos
Para completar la realidad expresada en el diagrama anterior se debe incluir el siguiente anexo.
ANEXO:
Restricciones de dominios: Definición de dominios:
Estudios: dom_estudios dom_estudios: ('COU', 'FP', 'otros') Dni: dom_dni dom_dni: tira
(10)
… …
Curso: dom_curso dom_curso: 1..3
Restricciones de integridad:
Todo alumno con estudios de COU debe estar matriculado en un curso completo (1º, 2º ó 3º).
Cuando la relación que vincula dos o más entidades tiene a su vez características de entidad, de
manera que se relaciona como tal con otras entidades, se aplica el concepto de agregación. Este
mecanismo sirve para expresar que las ocurrencias de la relación agregada se comportan también
como entidades. Para ello, se engloba el símbolo de la relación con un rectángulo, lo que denota
que esa relación es un objeto agregado.
En el contexto de un centro docente en el que se quiere saber cada alumno a qué
grupo acude para estudiar las distintas asignaturas:
Las entidades agregadas nunca son débiles ni tienen identificador ya que heredan la identificación
de la relación que las define. Sin embargo sí que pueden tener atributos con restricción de
unicidad o valor no nulo. También pueden sufrir restricciones de existencia.
2.6 Generalización/Especialización
Cuando se detecta que entre distintas entidades definidas en el esquema existe una relación de
inclusión (esto es, que todas las ocurrencias de una entidad son a su vez ocurrencia de otra más
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 16
Bases de datos
La especialización de una entidad en varias subclases puede ser total (T) con lo que todas sus
ocurrencias deben participar en alguna subclase, o parcial (P) en caso contrario. También tendrá la
propiedad de ser solapada (S) si una ocurrencia de la entidad puede pertenecer a distintas
subclases a la vez, o disjunta (D) en caso contrario.
La especialización se representa uniendo todas las entidades especializadas según un criterio con
la entidad general a través de un círculo en el que se indicará las propiedades de la Generalización/
Especialización.
En el caso de que sólo haya una subclase, se une a la entidad general con un arco, y no hace falta
el círculo; la justificación es que al haber una sola entidad especializada la participación de las
ocurrencias de la entidad general en ella será necesariamente parcial (pues si fuera total la entidad
general y la especializada serían idénticas), y no se pueden aplicar los conceptos de disjunta o
solapada ya que hacen referencia a más de una subclase.
En el siguiente diagrama ER se expresa que los empleados de una empresa
pueden especializarse según tres criterios: según el cuerpo al que pertenece,
según sea o no gerente y según el tipo de contrato que tiene.
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 17
Bases de datos
Para obtener un diagrama adecuado y fiable a partir del análisis de la realidad y de los
requerimientos de la organización hay que realizar las siguientes actividades:
Identificar generalizaciones/especializaciones,
Identificar agregaciones, y
Estas actividades se realizan de forma iterativa hasta conseguir definir un diagrama ER lo más fiel
posible a la realidad y en el cual el conjunto de restricciones de integridad explícitas incluidas en el
anexo al diagrama sea lo más pequeño posible. A continuación se comentan todas ellas.
Por cada tipo de objeto de la realidad, una vez concretada la información descriptiva que se desea
almacenar, se definirá una entidad en el diagrama. Una entidad viene definida por un conjunto de
atributos que representan la información que se desea conocer de cada tipo de objeto. Para cada
atributo se debe:
Incluir un pequeño círculo en el arco que lo une a la entidad en el caso de que el atributo
tenga restricción de valor no nulo.
De entre estos atributos, si es posible, se destacarán los atributos del identificador; si no existe
identificador, la entidad debe ser considerada débil y habrá que decidir, cuando se estudien las
relaciones, sobre cuál o cuáles se apoya para identificarse.
COMENTARIOS:
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 18
Bases de datos
No hay que pensar en que antes de avanzar en el diseño hay que definir un conjunto de entidades
que sea fijo, sino que éste puede cambiar a medida que se tomen ciertas decisiones de diseño. Por
ejemplo es posible que algunos atributos inicialmente considerados desaparezcan luego y se
conviertan en entidades como se ilustra en el Ejemplo
Sea una entidad con dos atributos entre los que se detecta una dependencia, ya
que el atributo provincia representa en qué provincia nació el jefe del proyecto:
La especialización es el proceso por el que se clasifica una clase de objetos en subclases más
especializadas. La generalización es el proceso inverso por el que se generalizan varias clases para
obtener una abstracta de más alto nivel que incluya los objetos de todas estas clases. La
especialización es un refinamiento conceptual mientras que la generalización es una síntesis
conceptual.
Se pueden distinguir tres procesos mentales que pueden conducir a definir una
generalización/especialización.
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 19
Bases de datos
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 20
Bases de datos
Como se puede observar en los ejemplos, en cualquiera de estos casos se ha definido una
generalización/especialización de manera que los atributos identificadores y los descriptores que
son comunes a todas las entidades estén en la entidad general, quedándose los atributos
específicos y las relaciones específicas en cada una de las entidades especializadas.
Hay que darse cuenta de que la generalización/especialización no debe definirse por los nombres
que puedan tener los atributos sino cuando realmente exista entre los objetos la relación de
subclase que implica este concepto. Por otra parte, una generalización/especialización en la que
las entidades especializadas no tienen propiedades distintivas (atributos o relaciones) no resulta
muy útil pudiéndose representar la misma información y de forma más sencilla con un atributo
discriminador en la entidad general
Supóngase que interesa saber si los libros de una biblioteca están escritos en
español o en otros idiomas. Un diseño como el siguiente:
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 21
Bases de datos
Por último, para terminar con este apartado, no hay que olvidar indicar qué tipo de
generalización/ especialización se está definiendo, especificando si es total o parcial y disjunta o
solapada.
COMENTARIOS:
Una vez definido un conjunto inicial de entidades que, como ya se ha comentado, podrá ser
reconsiderado a lo largo del todo el diseño, hay que estudiar las relaciones (o vínculos) existentes
entre ellas, ya que raramente existirán entidades sin conexiones con otras. Para definir una
relación hay que especificar:
Entidades implicadas,
1) Las cardinalidades máximas y mínimas que se puedan expresar se indicarán con las etiquetas
1 y n (las máximas) y con la definición de restricciones de existencia (las mínimas). Ante la duda
se recomienda elegir las cardinalidades menos restrictivas (0 para la mínima y n para la máxima).
2) Las relaciones redundantes deben ser eliminadas. Dos o más relaciones se consideran
redundantes si representan el mismo concepto; sin embargo, hay que darse cuenta de que entre
las mismas entidades se pueden definir más de una relación siempre que tengan significados
diferentes.
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 22
Bases de datos
Sin embargo, pueden existir dos relaciones definidas sobre las mismas entidades pero con
significados completamente distintos:
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 23
Bases de datos
Si en este sistema de información se debe cumplir que los profesores sólo son responsables de
asignaturas de su departamento, entonces el departamento al que pertenece un profesor puede
derivarse a través del departamento al que está adscrita la asignatura de la que es responsable
pero como puede darse el caso de que no sea responsable de ninguna asignatura no se puede
eliminar. La misma reflexión puede hacerse respecto a la relación adscrita. Así pues, dado que
pese a existir cierta redundancia no es posible eliminar ninguna relación sin perder por ello
información, este diagrama necesita una restricción de integridad que controle la restricción: “los
profesores sólo son responsables de asignaturas de su departamento”.
No hay que pensar sin embargo, que siempre que hay un ciclo entre entidades
existe una de- pendencia transitiva como se ilustra en el Ejemplo.
En este caso, pese a existir un ciclo de las mismas características que en el Ejemplo
anterior no existe redundancia ya que una persona no tiene por que haber nacido
en la misma provincia en la que está la ciudad en la que trabaja.
4) Hay que ser cuidadoso al elegir relaciones de grado mayor que dos.
Sea la siguiente relación ternaria entre las entidades Alumno, Asignatura y
Profesor que representa la información referente a la impartición de asignaturas
a alumnos por los profesores:
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 24
Bases de datos
Si se elige este diseño sólo se podrá saber quién imparte cada asignatura cuando haya alumnos
matriculados, no antes; tampoco se podrá saber a qué asignaturas va a asistir un alumno hasta
que no se sepa quién va a impartir las clases.
COMENTARIOS:
5) Sea una relación R entre las entidades E1,…, En. Supóngase que se quiere tener constancia de
que las mismas ocurrencias de E1,…, En, se relacionan más de una vez a través de la misma
relación. Para contemplar esta situación se puede optar por una de las dos soluciones que se
comentan:
Introducir una nueva entidad relacionada con las anteriores (esta entidad será débil), o
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 25
Bases de datos
Hay que darse cuenta de que las dos soluciones no son equivalentes ya que en el último caso el
mismo médico puede visitar en la misma fecha al mismo paciente más de una vez. La elección de
una u otra solución depende del problema concreto. En el Ejemplo 33 la segunda solución parece
menos restrictiva y sencilla aunque hay otros casos en los que la más natural es la primera.
6) Si se ha definido una entidad con un identificador compuesto por varios atributos y éstos a su
vez son identificadores de otras entidades, entonces la entidad original está enmascarando una
relación entre estas últimas.
Sean las tres entidades que se muestran:
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 26
Bases de datos
7) Si se ha definido una entidad con un atributo que es el identificador de otra entidad, este
atributo debe eliminarse definiéndose entonces una relación entre ambas entidades.
En el siguiente diagrama se han definido dos entidades una de las cuales tiene
entre sus atributos el atributo identificador de la otra con la intención de
representar a qué departamento pertenece un profesor
COMENTARIOS:
8) Especificar el papel que cada entidad juega en una relación cuando alguna entidad participa
más de una vez en la relación. El caso más sencillo se presenta en las relaciones binarias en las
que las dos entidades relacionadas son la misma. En el Ejemplo 36, se muestran algunas
relaciones de este tipo especificando el papel.
1) Relación de prerrequisitos en el conjunto de las asignaturas de una carrera:
“una asignatura puede ser prerrequisito de muchas asignaturas y tener también a
muchas asignaturas como prerrequisito”.
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 27
Bases de datos
3) Relación entre los ríos por el hecho de que unos son afluentes de otros: “un río
puede ser afluente de otro pero a su vez muchos ríos pueden afluir a él”
En general, hay que ser cuidadosos con las relaciones reflexivas ya que normalmente exigen que se
especifiquen ciertas propiedades que no quedan contempladas en la definición de la relación. Por
ejemplo, las tres relaciones representadas en el Ejemplo son antisimétricas y antirreflexivas(las
ocurrencias de la entidad no se pueden relacionar consigo mismas), propiedades que no se
expresan en el diagrama.
Por último, también hay que tener cuidado con la definición de restricciones de existencia en este
tipo de relaciones ya que son muy infrecuentes (¿tiene sentido pensar que todos los ríos son
afluentes de otro río o que todos los ríos tienen al menos un afluente?).
Como ya debe saberse, una entidad sufre restricción de dependencia de identificación cuando no
puede identificarse con sus propios atributos de manera que sus ocurrencias son distinguibles
gracias a su relación con otras entidades. Cuando en el diagrama ER aparezcan entidades de este
tipo, hay que especificar con qué relaciones se identifica (pueden ser una o más de una) utilizando
atributos semiidentificadores cuando sea necesario.
Cuando se necesite establecer una relación en la que participen ocurrencias de una relación R, hay
que especificar una agregación sobre R para que pueda comportarse como una entidad.
Como ya se ha comentado anteriormente, para terminar con el diseño, todas aquellas propiedades
de la realidad que no hayan quedado expresadas en el diagrama ER deben incluirse en el anexo.
Dado que no se ha especificado ningún lenguaje formal para su representación, hay que intentar
que la frase o frases que definan estas restricciones no sean ambiguas.
ASES FORMACIÓN
CICLOS FORMATIVOS DE GRADO SUPERIOR Página 28