Академический Документы
Профессиональный Документы
Культура Документы
SEMANA 2
BASE DE DATOS
[ BASE DE DATOS ]
CONTENIDO
Presentación …………………………………………………………... 3
1. DESARROLLO TEMÁTICO ………………………………………….... 3
• Diseño Conceptual de bases de datos …………………………. 3
• Mecanismos de Abstracción ……………………………………. 5
• Conceptos del modelo Entidad Relación Extendido MER+ …… 5
• Conclusiones ……………………………………………….…… 11
• 1.1. BIBLIOGRAFÍA ………………………………………….…… 11
2 [ POLITÉCNICO GANCOLOMBIANO EN ALIANZA CON WHITNEY INTERNATIONAL SYSTEM ]
PRESENTACIÓN
En esta unidad se examina el modelado de datos en el diseño de bases de datos. Para
ayudarle a comprender el proceso de modelado, las sesiones se basarán en estudios de casos
y el uso de diferentes herramientas software de modelado y construcción de sistemas de
bases de datos.
El enfoque de esta unidad está dirigido a los aspectos técnicos del diseño, se tiende a
enfatizar la visión del diseñador de los datos a través de los diferentes modelos de datos
como el modelo conceptual que representa una visión global de los datos.
A partir de esta unidad comienza a manifestarse la madurez profesional y calidad de la
experiencia en la construcción de bases de datos.
1. DESARROLLO TEMÁTICO
Para no tener una idea equivocada de la manera como una organización funciona, debemos
obtener una descripción precisa de la naturaleza de los datos y de los diversos usos que se le
da dentro de una organización, este es el Universo del Discurso. La comunicación entre
diseñadores, programadores y usuarios finales de bases de datos deberá ser tan libre de
ambigüedades como sea posible. El modelado de datos desempeña un papel crucial en la
comunicación: reduce las complejidades del mundo real que definen las entidades y las
relaciones entre ellas y las convierte en abstracciones más fáciles de entender.
El ciclo de vida de un sistema de bases de datos se caracteriza por las siguientes fases:
definición del sistema, diseño, implementación, carga y conversión de datos, conversión de
aplicaciones, prueba y validación, puesta en marcha, monitorización y mantenimiento.
El modelo de datos es una abstracción de la realidad relativamente simple de un ambiente
complejo de gestión de datos. Los modelos de datos son usados por los diseñadores para
comunicarse con los programadores y los usuarios finales. En la fase de diseño de bases de
datos encontramos tres niveles de abstracción: el diseño conceptual, el diseño lógico y el
diseño físico de la base de datos. A continuación se describen los diferentes niveles de
abstracción de los datos.
Diseño conceptual de bases de datos
El diseño conceptual parte de las especificaciones de requisitos de usuario y su resultado es
el esquema conceptual de la base de datos. Un esquema conceptual es una descripción de
alto nivel de la estructura de la base de datos, independientemente del sistema de gestión de
bases de datos que se vaya a utilizar para manipularla. Un modelo conceptual es un lenguaje
que se utiliza para describir esquemas conceptuales. El objetivo del diseño conceptual es
[ BASE DE DATOS ] 3
describir el contenido de información de la base de datos y no las estructuras de
almacenamiento que se necesitarán para manejar esta información.
El modelo entidad relación extendido entre entidades (ER+) utiliza diagramas ER para
representar la base de datos conceptual e ilustrar la estructura de la base de datos del
negocio modelado tal como la visualiza el usuario final. El Modelo entidad relación fue
introducido por Peter Chen en 1976. Su nivel de abstracción es alto, tiene un enfoque global y
es independiente del hardware y del software. El modelo ER+ (Entidad Relación Extendido)
es muy cercano a la realidad y lejano a la implementación. Los tres componentes principales
del modelo conceptual son las entidades, las relaciones y los atributos.
Como diseñadores de bases de datos debemos propender por la calidad de los esquemas
conceptuales, la cual se asegura definiendo un conjunto de propiedades que se deben
verificar durante y al final del desarrollo. Entre esas actividades de verificación, tenemos:
Verificación de esquema completo: un esquema es completo cuando representa todas las
características relevantes del problema. En este nivel, se debe:
• Controlar que todos los conceptos del problema estén representados en alguna parte
del esquema.
• Controlar que todos los requerimientos sean realizables con el esquema.
• Leer el resultado y compararlo con la descripción original.
Verificación de esquema correcto: hay dos tipos, sintáctica y semántica. La sintáctica habla de
la forma como se especifica el esquema con respecto al lenguaje usado para hacer la
especificación. La semántica habla de la forma como la especificación representa el
problema.
Un esquema es correcto sintácticamente cuando las distintas partes de éste están
construidas correctamente con respecto al lenguaje utilizado. Se debe verificar:
• Existencia de cardinalidades en cada relación o conectividad.
• Existencia de atributos determinantes en cada entidad. Si no existen, entonces
verificar que sea entidad débil con respecto a otra.
• Existencia de una y sólo una relación y todas las entidades que intervienen en la
misma dentro de cada agregación.
Un esquema es correcto semánticamente si cada elemento del problema se representa
utilizando estructuras adecuadas. Validar por cada concepto:
• ¿Atributos, entidades o relaciones?
• ¿Una sola categoría de entidades o más de una?
• ¿Una relación es binaria o múltiple?
4 [ POLITÉCNICO GANCOLOMBIANO EN ALIANZA CON WHITNEY INTERNATIONAL SYSTEM ]
• ¿Cuál es el mecanismo de determinación del conjunto de entidades?
• ¿Las cardinalidades y las totalidades tienen sentido?
Verificación de minimalidad del esquema: un esquema es minimal si cualquier elemento de la
realidad aparece sólo una vez en el modelo. Es importante verificar:
• Donde está representado en el esquema cada elemento de la realidad.
• A qué elemento de la realidad corresponde cada elemento del esquema.
• Controlar atributos calculados.
Verificación de expresividad del esquema: un esquema es expresivo si representa la realidad
en una forma natural que puede ser fácilmente comprensible usando sólo la semántica del
modelo.
Verificación de esquema explícito: un esquema es explícito si no utiliza más formalismos que
el diagrama ER.
Mecanismos de abstracción
En el proceso de elaboración del diseño conceptual se recurre a la abstracción. La
abstracción es el proceso mental que se aplica al seleccionar algunas características y
propiedades de un conjunto de objetos y excluir otras. Ejemplo: El estudiante.
Encontramos tres mecanismos de abstracción:
• Clasificación / Instanciación
• Agregación / Descomposición
• Generalización / Especialización
Clasificación / Instanciación: concepto que permite agrupar entidades que comparten
condiciones con características y pertenencia comunes a una clase.
Se usa para definir el concepto de clase de objetos de la realidad, caracterizados por
propiedades comunes. Obtener instancias u ocurrencias se conoce como instanciación.
Ejemplo: la bicicleta.
Agregación / Descomposición: concepto que permite definir una nueva clase a partir de un
conjunto de clases que representan sus partes componentes (ver figura 1.
Agregación/Descomposición). La agregación transforma una relación entre objetos en un
[ BASE DE DATOS ] 5
objeto mezclado de mayor nivel. Ejemplo: sean las clases rueda, pedal, manubrio, sillín,
cambio, marco, entre otras. A partir de estas puedo formar la clase bicicleta.
Bicicleta
Rueda Manubrio
Pedal Marco
Sillín Cambio
Figura 1. Agregación / Descomposicióni
Generalización / Especialización: concepto que define una relación de subconjuntos entre los
elementos de dos o más clases. La Generalización retorna una clase de objetos en un objeto
genérico (ver figura 2. Jerarquía de Generalización/Especialización).
Ejemplo: la clase vehículo, es una generalización de la clase bicicleta: todas las bicicletas son
vehículos y las bicicletas son una especialización de los vehículos.
Vehículo
Bicicleta
Bicicleta de carreras
Bicicleta de cross Bicicleta de turismo
Figura 2. Jerarquía de Generalización / Especializaciónii
Conceptos del Modelo Entidad Relación Extendido MER+
Entidad: representa un objeto que tiene vida propia en el sistema que se está modelando,
tanto tangible como intangibles. Ejemplo: cliente, producto, estudiante, detalle de factura.
Hay dos tipos de entidades: fuertes y débiles. Una entidad débil es una entidad cuya
existencia depende de la existencia de otra entidad, es decir, requiere de un identificador
externo para poder representarse en el mundo real.
Las entidades se representan gráficamente mediante rectángulos y su nombre aparece en el
interior. Un nombre de entidad sólo puede aparecer una vez en el esquema conceptual.
6 [ POLITÉCNICO GANCOLOMBIANO EN ALIANZA CON WHITNEY INTERNATIONAL SYSTEM ]
Conjunto de entidades: grupo (conjunto) de entidades del mismo tipo. Ejemplo: todos los
estudiantes de un curso, representan el conjunto de entidades estudiante.
Relación: asociación o vinculación entre dos o más entidades. Ejemplo: la relación comprar
entre las entidades cliente y producto. Generalmente representa acciones entre las
entidades.
Cada relación tiene un nombre que describe su función. Las relaciones se representan
gráficamente mediante rombos y su nombre aparece en el interior.
Las entidades que están involucradas en una determinada relación se denominan entidades
participantes. El número de participantes en una relación es lo que se denomina grado de la
relación. Por lo tanto, una relación en la que participan dos entidades es una relación binaria;
si son tres las entidades participantes, la relación es n‐aria.
Una relación recursiva es una relación donde la misma entidad participa más de una vez en la
relación con distintos papeles. El nombre de estos papeles es importante para determinar la
función de cada participación.
Conjunto de relaciones: son relaciones del mismo tipo.
Atributos: características o propiedades asociadas con el conjunto de entidades o relaciones
y que toman valor en una entidad en particular. Ejemplo: nombre, cédula, teléfono.
Los posibles valores puede tomar un atributo para un conjunto de entidades se denomina
dominio.
Los atributos se pueden clasificar en:
• Simples o atómicos: son aquellos que no contienen otros atributos.
• Compuestos: son los que incluyen otros atributos simples. Ejemplo: dirección. (Se
puede dividir en calle, número, ciudad)
• Monovalorados o univalorados: atributo que toma un solo valor, para una entidad en
particular.
• Multivalorados: atributo que para una misma entidad puede tomar muchos valores.
• Derivados o calculados: son aquellos atributos cuyos valores se pueden conseguir con
operaciones sobre valores de otros atributos.
• Nulos: son aquellos atributos para los cuales en algún momento no existe o no se
conoce su valor.
Identificador: un identificador de una entidad es un atributo o conjunto de atributos que
determina de modo único cada ocurrencia de esa entidad. Un identificador (llave primaria)
de una entidad debe cumplir dos condiciones:
[ BASE DE DATOS ] 7
• No pueden existir dos ocurrencias de la entidad con el mismo valor del identificador.
• Si se omite cualquier atributo del identificador, la condición anterior deja de cumplirse.
Toda entidad tiene al menos un identificador y puede tener varios identificadores
alternativos. Las relaciones no tienen identificadores.
Jerarquía de generalización: una entidad E es una generalización de un grupo de entidades E1,
E2,... En, si cada ocurrencia de cada una de esas entidades es también una ocurrencia de E.
Todas las propiedades de la entidad genérica E son heredadas por las subentidades.
Cada jerarquía es total o parcial, y exclusiva o superpuesta. Una jerarquía es total si
cada ocurrencia de la entidad genérica corresponde al menos con una ocurrencia de
alguna subentidad. Es parcial si existe alguna ocurrencia de la entidad genérica que no
corresponde con ninguna ocurrencia de ninguna subentidad. Una jerarquía es exclusiva
si cada ocurrencia de la entidad genérica corresponde, como mucho, con una
ocurrencia de una sola de las subentidades. Es superpuesta si existe alguna ocurrencia
de la entidad genérica que corresponde a ocurrencias de dos o más subentidades
diferentes.
Un subconjunto es un caso particular de generalización con una sola entidad como
subentidad. Un subconjunto siempre es una jerarquía parcial y exclusiva.
El modelo conceptual también incluye restricciones de tipos de relaciones y atributos que se
representan a través de notaciones de conectividad y cardinalidad. Una relación se puede
clasificar según su cardinalidad de la siguiente manera: 1:1, 1:M, M:M. La cardinalidad (1 o M)
representa el número especifico de mapeamientos u ocurrencias de entidad asociado con
una ocurrencia de la entidad relacionada. Las restricciones de tipos de relaciones y los
atributos se basan en reglas de negocio. A su vez, las reglas de negocio se derivan de
descripciones detalladas del ambiente de datos, transacciones y necesidades de información
de una empresa u organización.
Originalmente, el modelo entidad‐relación sólo incluía los conceptos de entidad, relación y
atributo (ver figura 3. Conceptos del Modelo Entidad Relación extendido). Más tarde, se
añadieron otros conceptos, como los atributos compuestos y las jerarquías de
generalización, en lo que se ha denominado modelo entidad‐relación extendido.
8 [ POLITÉCNICO GANCOLOMBIANO EN ALIANZA CON WHITNEY INTERNATIONAL SYSTEM ]
Figura 3. Conceptos del Modelo Entidad Relación Extendidoiii
Con el objeto de aplicar los conocimientos teóricos obtenidos hasta ahora, vamos a revisar el
siguiente caso de estudio:
La primera fase define el universo del discurso, que consiste en describir en lenguaje natural,
cómo se está comportando el negocio, cuáles son las reglas del negocio.
Universo del discurso: Control de salas en un hospital
En un hospital se tiene un registro de pacientes, un registro de personal y uno de salas con
funcionarios que trabajan allí y con pacientes internados en dichas salas.
Del personal nos interesa el número de empleado, el nombre, la dirección y el teléfono.
Sabemos que dos empleados no tienen el mismo número. De los pacientes nos interesa el
número de registro (le es asignado cuando ingresa) y el nombre mientras que de las salas nos
interesa el nombre y la cantidad de camas que tiene.
También se sabe que un empleado trabaja en una única sala y que en una sala trabajan varios
empleados. Lo mismo ocurre con los pacientes.
[ BASE DE DATOS ] 9
La segunda actividad o fase consiste en identificar los elementos y relaciones:
Identificación de entidades: pacientes, salas, personal
Identificación de las relaciones entre las entidades: los pacientes están internados en las salas y
el personal trabaja en las salas.
Identificación de los atributos:
Paciente: número de registro, nombre
Salas: nombre, cantidad de camas
Personal: número de funcionario, nombre, dirección, teléfono.
Identificación de las restricciones: Un empleado trabaja en una única sala y en una sala
trabajan varios empleados. Un paciente está internado en una sola sala pero en una sala hay
varios pacientes.
La fase final (ver figura 4. Modelo Conceptual Relacionado con Control de Salas en un
Hospital), consiste en realizar el diseño conceptual de la base de datos, a través del uso de la
notación correspondiente para plasmar modelos ER+:
Figura 4. Modelo Conceptual Relacionado con Control de Salas en un Hospitaliv
Cada uno de estos esquemas se compone de entidades, relaciones, atributos, dominios de
atributos e identificadores. El esquema conceptual también tendrá una documentación, que
10 [ POLITÉCNICO GANCOLOMBIANO EN ALIANZA CON WHITNEY INTERNATIONAL SYSTEM ]
se irá produciendo durante su desarrollo. Para resumir, las tareas a realizar en el diseño
conceptual son las siguientes:
• Identificar las entidades
• Identificar las relaciones
• Identificar los atributos y asociarlos a entidades y relaciones
• Determinar los dominios de los atributos
• Determinar los identificadores (llaves primarias)
• Determinar las jerarquías de generalización (si las hay)
• Dibujar el diagrama entidad‐relación
• Revisar el esquema conceptual definido con el usuario.
CONCLUSIONES
• El diseño conceptual permite el análisis de requerimientos, se puede realizar una
descripción de los campos de alto nivel de los datos a trabajar.
• Los diagramas ER+ son muy populares para realizar el diseño conceptual, estos son
expresivos, cercanos a la forma de pensar de las personas acerca de sus aplicaciones.
• Las construcciones básicas son: entidades, relaciones y atributos (de entidades y
relaciones).
• Algunas construcciones adicionales son: entidades débiles, jerarquías de
generalización / especialización, y de agregación.
1.1. BIBLIOGRAFÍA
• C.J. Date, Introducción a los Sistemas de Bases de Datos, 5. ª edición, Adison Wesley
Iberoamericana, 1993.
• Korth y A. Siulberschatz, Fundamentos de Bases de Datos, 4. ª edición, McGraw‐Hill,
Madrid, 2002.
• Elmasri, R. & Navathe, S.B. “Fundamentals Of Database Systems” Third Edition.
Addison‐ Wesley Pubs. 2000.
[ BASE DE DATOS ] 11
• Rob, Peter.; Coronel, Carlos. “Sistemas de Bases de Datos: diseño, implementación y
administración”, Quinta Edición, THOMSON, 2002.
i
Agregación/Descomposición, búsqueda sobre diseño conceptual de bases de datos. [Recurso en Internet]
http://eisc.univalle.edu.co/materias/BD/ClaseBD02_2Xpag.pdf. Último acceso: 10 de noviembre de 2010.
ii
Jerarquía de Generalización/Especialización, búsqueda sobre diseño conceptual de bases de datos. [Recurso
en Internet] http://eisc.univalle.edu.co/materias/BD/ClaseBD02_2Xpag.pdf. Último acceso: 10 de noviembre de
2010.
iii
Conceptos del Modelo Entidad Relación Extendido, consulta sobre modelo entidad relación extendido.
[Recurso en Internet] http://4.bp.blogspot.com/‐YjMcPy_jxzQ/TYkMlq4qvWI/AAAAAAAAAHw/H‐
Jlc8BkK6k/s1600/entidad.jpg. Último acceso: enero 15 de 2011.
iv
Modelo Conceptual Relacionado con Control de Salas en un Hospital, consulta sobre ejemplos de modelo
conceptual de bases de datos. [Recurso en Internet]
http://www.pedeciba.edu.uy/bioinformatica/sibdyw/Clase_5.pdf. Último acceso: 12 de enero de 2011.
12 [ POLITÉCNICO GANCOLOMBIANO EN ALIANZA CON WHITNEY INTERNATIONAL SYSTEM ]