Sei sulla pagina 1di 28

TALLER DE MODELAMIENTO DE SOFTWARE

Introduccin a las Bases de Datos


Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
1
SEPARATA N 1
Sistema de administracin de base de datos
DBMS por sus siglas en ingls (DataBase Management System).Software que administra el acceso a los
datos, permitiendo su almacenamiento, consulta y actualizacin.
Tiene la capacidad de responder a mltiples usuarios accediendo en forma concurrente a los datos.
Provee facilidades para la administracin del conjunto como toma de respaldos, recuperacin. El DBMS
permite tener los datos de toda la organizacin (incluida la informacin de sus principales entidades) de
forma integrada, de manera que estos se encuentren disponibles a consultas o actualizaciones de
transacciones realizadas por el personal de la empresa, clientes de la misma, a travs de aplicaciones de
un sistema de informacin o directamente a travs de un lenguaje que sea "comprendido" por el DBMS.
Este lenguaje, en el caso de bases de datos relacionales (RDBMS) es el SQL, que se ver ms adelante.
El lenguaje no slo debe permitir la comunicacin para acceder los datos sino para definirlos.
Actualmente los software RDBMS se encuentran en diversas plataformas, aunque son desarrollados para
arquitecturas tanto mainframe como cliente/servidor (tema tocado ms adelante) corriendo en el "back-
end" (host o servidor) usando la infraestructura de red disponible para la comunicacin con los usuarios.










Caractersticas y Funciones relacionadas de los DBMSs Escalabilidad
Capacidad de mejorar con el incremento de recursos invertidos (generalmente los recursos pueden
medirse en dinero). Un DBMS debe permitir inversin de recursos a medida que se requiera mayores y/o
mejores servicios de la base de datos. Esta situacin generalmente se presenta para un mejor
aprovechamiento de los sistemas de informacin, por crecimiento del negocio/organizacin, u otros
factores.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
2
Rendimiento
Caracterstica de realizar las tareas involucradas como de recuperacin de datos, actualizacin, respuesta
a la concurrencia de muchos usuarios, etc. de una manera eficiente. Sin embargo el rendimiento de un
DBMS depende de otros factores como la plataforma donde corre.










Portabilidad
Caracterstica de permitir transportar de una manera transparente - o fcil - un producto de una
plataforma a otra.
En el caso de los DBMS, no slo es la consideracin de portabilidad del producto (el
software mismo) sino los datos que la base de datos administra.
Universalidad
Se refiere a los mltiples tipos de datos que puede manejar un DBMS, los que actualmente se denominan
datos multimedia.
Disponibilidad (permanente e ininterrumpida)
Actualmente es uno de los factores cruciales, pues el servicio de base de datos apoya a las aplicaciones
crticas de la operativa de los negocios.
Escalabilidad Horizontal
Capacidad de incrementar la cantidad de usuarios de la base de datos o la cantidad de estaciones con
conexin a la base de datos.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
3
Una de las diferencias entre los gestores de base de datos para microcomputadora y DBMS para
servidores es precisamente la capacidad de los segundos para escalar horizontalmente.
Generalmente el costo de licencia de un DBMS est relacionado con la cantidad de usuarios concurrentes.
Es as que si bien un producto particular puede proveer esta facilidad, existir un costo asociado.
Una caracterstica que est relacionada con la escalabilidad es la "apertura" o caracterstica de sistema
abierto que posea el DBMS : cunto "middleware" es necesario para la conectividad entre cliente y
servidor (o host) y si es necesario tener corriendo una versin "RUN-TIME" siempre en el front-end.
Si la aplicacin y la base de datos son instaladas en una misma computadora se dice que es un "cliente
local".
En caso que la aplicacin se instale en otro equipo diferente al del servidor de base de datos, se dice que
es un "cliente remoto".
Escalabilidad Vertical
Capacidad para incrementar el tamao y/o la potencia del servidor y as obtener mejoras con un mismo
producto.
Responsabilidades del Departamento de Sistemas
Reconocida la importancia de la informacin en las organizaciones, existen cargos y funciones dentro del
departamento de sistemas que persiguen el objetivo de garantizar el correcto manejo y control de este
recurso (los datos). El administrador de datos (DA) es la persona que conoce los datos de la organizacin,
las necesidades de informacin y su uso, de manera que es un apoyo a nivel gerencial para la direccin
de la organizaci n. El DA es quien sabe qu datos comunes son usados por diferentes reas de la
organizacin, aunque en ocasiones un mismo dato tenga varias denominaciones.
Decide qu datos merecen pertenecer a la base de datos de la organizacin y cules otros pueden
mantenerse como "departamentales". Entonces debe mantener un constante contacto con los usuarios
finales de la informacin, tanto para mantenerse actualizado en nuevas necesidades y requerimientos,
como para mantenerlos actualizados sobre nuevas aplicaciones y facilidades de informacin
desarrolladas. El DA tambin establece las polticas para la administracin de los datos una vez
almacenados y las coordina con el Administrador de la base de datos. Si bien el DA no es necesariamente
un tcnico especialista en bases de datos, debe por lo menos conocer las posibilidades y alternativas
tecnolgicas para el caso. El Administrador de la base de datos (DBA) si es un profesional en informtica
que tiene la responsabilidad de aplicar la tecnologa disponible para la implementacin y mantenimiento
de la base de datos de la organizacin. Define y crea las estructuras de datos. Se responsabiliza por la
integridad y respaldo de la informacin, definiendo los procedimientos correspondientes y haciendo uso
de las facilidades que para tal efecto le proporciona el software DBMS.
El DBA es quien garantiza el adecuado nivel de funcionamiento (a veces llamado "nivel de servicio") as
como la disponibilidad de los datos en el cronograma y horario establecido para la operativa del ne
gocio/empresa/institucin.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
4









Los tres niveles de la arquitectura de datos










El nivel Externo
Tambin llamado nivel de visin o "subesquemas" (segn J.Martin) es el nivel ms cercano al usuario final,
o sea es la forma cmo estos perciben los datos.
Generalmente a un usuario le interesa slo una parte de toda la base de datos y no le
interesa los aspectos "tcnicos" deseando slo indicar QUE datos son los que requiere.
El nivel Conceptual
Tambin llamado "Esquema" (J.Martin) describe la totalidad de los datos de la base de datos.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
5

En este nivel interesa CUALES son los datos necesarios, as como las relaciones entre estos.
Este nivel es visible a usuarios profesionales de S.I., desarrolladores y - por supuesto - al DA.
El nivel Interno
Tambin llamado nivel fsico, describe CMO son almacenados los datos en la base de datos.
Una parte de este nivel debe ser visible al DBA y totalmente visible a quienes
desarrollan software del tipo DBMSs.
En este nivel es importante el conocimiento (visibilidad) del ambiente operativo donde
correr el software DBMS.
Independencia de datos
Es la capacidad de modificar la definicin de un nivel sin afectar la de los niveles superiores.










Independencia fsica de los datos
Un DBMS proporciona independencia fsica de los datos pues los usuarios de la base de datos y las
aplicaciones no dependen de la estructura fsica de la base de datos almacenada (C.J.Date)
Independencia Lgica de datos
Un DBMS proporciona independencia lgica de los datos si los usuarios de la base de datos y las
aplicaciones no dependen de la estructura lgica de la base de datos, la que puede presentar dos
aspectos:
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
6

1.- Crecimiento
Como expansin de los datos referidos a informacin que ya exista o nuevos datos
referidos a informacin que no se almacenaba en la base de datos
2.- Reestructuracin
En algunas ocasiones es necesario modificar la estructura lgica de la base de datos, para efectos de - por
ejemplo - disponibilidad. Estos casos no deben afectar a los usuarios de la base de datos.
Modelos de datos
Vehculo para describir la realidad (Batini/Ceri/Navathe).
Coleccin de herramientas conceptuales para describir datos, relaciones entre estos, semntica
asociada y restricciones de consistencia (Korth/Silberschatz).
Un modelo de datos es la representacin de informacin relevante a una realidad (una organizacin por
ejemplo) para que pueda ser manejada por otras personas, diferentes a quienes confeccionaron el
modelo.
Para disear y planificar bases de datos, el modelo Entidad-Relacin es el que ha tenido mayor xito en la
industria de la ingeniera de software.
Ms an, la mayora de herramientas que apoyan la ingeniera de software y el
desarrollo de sistemas de informacin (CASEs) han adoptado algn "sabor" del modelo Entidad-
Relacin original (Peter Chen).
Los modelos para diseo/planificacin permite describir los niveles conceptual (de esquema) y externo
(de subesquema).
Los modelos para implementar software de administracin de base de datos, deben permitir cubrir todos
los niveles de la arquitectura de datos.
Hasta hace algn tiempo, todava tenan cierta vigencia los modelos jerrquicos y "de red" para DBMS sin
embargo actualmente es indiscutible la total vigencia de los RDBMS (relacionales) para ambientes
transaccionales.
Los modelos de datos para DBMS
Se describen mediante : 1.- Una estructura
Cmo son diferenciados los datos, as como agrupados de manera que reflejen significado
(informacin).

TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
7
2.- Un conjunto de Operaciones
Las operaciones deben permitir manejar tanto los datos individuales como las
estructuras (agrupaciones de datos).
3.- Definiciones de integridad
Reglas y/o lmites para la existencia y los valores de los datos, que hagan a estos vlidos y coherentes para
el significado en conjunto.










Cliente/Servidor
Es la actual arquitectura para sistemas con bases de datos. Cliente/Servidor : distribucin de aplicaciones
y/o datos en una red de computadoras.
Cliente/Servidor, conocido por sus siglas C/S, tambin es sinnimo de computacin abierta que permite
utilizacin de hardware y software variado, sin dependencia de un slo proveedor.
Tipos de Servidores
Servidor de Archivos
El cliente (tpicamente una PC) requiere archivos a travs de la red. Se requiere mucho intercambio de
mensajes. De utilidad para repositorios de diferentes tipos de archivos como documentos, imgenes, etc.
Servidor de base de datos (DBMS)
El cliente enva requerimientos en SQL, la consulta u operacin asociada es ejecutada por el software
(DBMS) que corre en el servidor devolviendo los resultados y/o cdigo de error correspondientes. Es en
el mismo equipo servidor donde se encuentran almacenados los datos.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
8
Monitor de transacciones
El cliente invoca procedimientos (mdulos) almacenados en el servidor, que se
componen de varias sentencias SQL, todas las cuales sern exitosas o fracasarn como una sola unidad
(transaccin).
Esta funcionalidad (de procedimientos almacenados) es provista por productos DBMS
modernos (como por ejemplo el DB2 de IBM) sin embargo para la funcin del control minucioso de
transacciones en ambientes fuertemente concurrentes (sistemas OLTP), existe software especializado
denominado monitores de transacciones.
Groupware
Este tipo de servidores manejan informacin semi- estructurada como texto, imgenes,
correo, boletines y el flujo de trabajos ("workflow"). Lotus Notes es el lder mundial en este tipo de
software.
Servidor de Objetos
Las aplicaciones son escritas como un conjunto de objetos que se comunican.
Los objetos del cliente se comunican con los del servidor a travs de "ORBs" (Object
Request Brokers)
Servidor Web
Los clientes se comunican a travs del protocolo HTTP para que el servidor provea los requerimientos
correspondientes (un documento HTML por ejemplo).










TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
9
Tipos de aplicaciones
Las aplicaciones cliente/servidor tambin pueden ser clasificadas (diferenciadas) de acuerdo a cmo es
distribuido el proceso entre el cliente y el servidor.
El cliente ligero ( o servidor pesado) distribuye ms funciones en el lado del servidor. Bajo este esquema
se trata de minimizar el trfico entre cliente y servidor (trfico en la red) creando niveles ms abstractos
de servicios.
El cliente pesado (o servidor ligero) distribuye ms funciones en el lado del cliente.
En los casos de servidores de archivos o servidores de bases de datos sin uso de procedimientos
almacenados, el "trabajo" de la aplicacin es concentrado en el cliente ("front-end"), donde no slo se
realizarn las funciones de interaccin y presentacin (interfaz al usuario) sino el procesamiento de los
datos que son extrados del servidor).








Modelos de Distribucin Cliente/Servidor
No existe una regla para dividir una aplicacin, sin embargo es razonable situar las funciones y datos ms
cerca posible para la operativa de la organizacin.
Esto sin embargo tiene su contra, pues es mejor el enfoque centralizado, desde el punto de vista de la
administracin de los datos.
Sin bien puede haber una amplia gama de combinaciones para distribuir la lgica de una aplicacin, puede
simplificarse la explicacin a tres:
Presentacin distribuida
La lgica de presentacin de los datos es remota respecto a la (lgica) de negocio y datos.
En su forma ms simple la lgica de presentacin es slo la interfaz al usuario que
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
10
accede a procedimientos transaccionales ya existentes en el servidor. La lgica de presentacin puede ir
"engordando" con funciones de consistencia de datos, iniciacin de lgica de negocio, etc.
Funciones Distribuidas
Modelo que proporciona gran flexibilidad y permite un control sobre dnde situar las funciones en la red.
Un proceso cliente invoca a otro proceso en el servidor (en el mismo equipo u otro remoto), este servidor
(de aplicaciones) puede invocar a su vez los servicios de otro servidor, hasta llegar al proceso de los datos
requeridos y su evolucin a la cadena de clientes que fuera formndose.
Datos Distribuidos
Slo los resultados son devueltos al proceso cliente que invoc al servidor de base de datos.
Los servidores de bases de datos son la base fundamental de los sistemas de soporte a decisiones que
requieren preguntas no planificadas e informes flexibles.










Aplicaciones distribuidas en tres niveles (versus 2 niveles)
Esta distribucin se basa prcticamente en el mismo concepto de divisin de la aplicacin - ya visto en
tipos de aplicaciones.
Al existir bsicamente tres tipos de lgica en una aplicacin (de presentacin, de negocio y de datos),
estas pueden ser distribuidas en mnimo 2 (para hablar de cliente/servidor) o ms computadoras.
Al tener ms de 2 equipos dnde distribuir los procesos de negocio, pueden existir servidores de
aplicacin o de transacciones que ejecuten funciones accesibles por muchos procesos cliente con distintas
formas posibles de interaccin con el usuario. Los servidores de aplicacin se desarrollan como funciones
"encapsuladas", reutilizables, con una funcin e interfaz exactamente definidas.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
11
Algunos DBMSs, al ofrecer procedimientos almacenados que sirven para desarrollar lgica de negocio en
el servidor, afirman que esto es funcionalmente equivalente a una arquitectura de tres niveles, sin
embargo esto no es tan cierto pues todos los desarrollos estn ligados al software DBMS.
Cliente/servidor de tres niveles, ms conocido por 3-tier ha sido usado en muchos contextos:
Primero se us para describir la particin fsica de una aplicacin a travs de PCs (tier-1), servidores
departamentales (tier-2) y servidor principal o host (tier-3).
Luego se us para describir el particionamiento entre la PC (tier-1), la base de datos local en la misma
estacin PC (tier-2) y la base de datos empresarial (tier-3).
Actualmente cuando se habla de C/S 3-tier se hace referencia a la PC (tier-1) el servidor de aplicaciones
(tier-2) y el servidor de base de datos (tier-3).









Componentes de la arquitectura cliente/servidor EL CLIENTE
En el cliente corre la parte de la aplicacin correspondiente. Lo hace en el sistema operativo, que a su vez
provee la interfaz usuario (U.I.) hace ya buen tiempo grfica (GUI) u orientada a objetos (OOUI) y puede
acceder diferentes servicios distribuidos. Para acceder a servicios distribuidos lo hace a travs del
componente middleware, quien maneja los servicios que no son locales.
En el cliente tambin corre un componente del middleware de administracin de sistemas distribuidos
(DSM)
EL SERVIDOR
El componente de aplicacin en el servidor generalmente corre sobre un software para la
correspondiente plataforma (del servidor) : un DBMS con SQL, un monitor de transacciones, groupware,
servidores de objetos y el Web.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
12
Depende del S.O. para "interfazar" con el componente middleware que hace los requerimientos de
servicios. Tambin corre un componente del DSM.
EL MIDDLEWARE
El componente middleware corre tanto en el cliente como en el servidor. Se puede clasificar en tres
categoras de middleware :
1.- El software (o mejor dicho los protocolos) de transporte.
Provee comunicacin a travs de WANs y LANs y por supuesto la necesaria combinacin
LAN/WAN/LAN.
Estos protocolos vienen como drivers en los sistemas operativos modernos, los que
proveen interfaces muy bien definidas entre componentes de manera de llegar desde las aplicaciones
hasta los adaptadores de red.
2.- El sistema operativo de red
Aunque el trmino "de red" ya prcticamente qued en el pasado, pues los sistemas
operativos ofrecen la funcionalidad correspondiente, son las funciones "de red" las que principalmente
son usadas en un ambiente cliente servidor :
Servicios de directorio, comparticin de recursos, seguridad, etc.
Facilidades para internet/intranet son proporcionadas tambin por los sistemas operativos.
3.- Servicios especficos
Tambin deben correr en ambos lados, cliente y servidor, de manera de proveer la
funcionalidad necesaria como por ejemplo acceso y recuperacin de datos de una base de datos, correo
electrnico, brokers de objetos y otros.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
13

TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
14
SEPARATA N 2
TEORA DE RELACIONES MODELO ENTIDAD-RELACIN

Definiciones
Conjunto
Aunque en general un conjunto puede agrupar objetos de diversos tipos, para los casos de
estudio se tendr en cuenta que un conjunto agrupa objetos del mismo tipo.
Subconjunto
Conjunto formado por ningn, algn o todos los elementos de un conjunto.
Cardinalidad
Cantidad de elementos de un conjunto
Producto Cartesiano
En caso de ser dos los conjuntos a "multiplicarse" cada elemento de este conjunto resultado
es un "par ordenado" que tiene como primer elemento a uno que pertenece al primer conjunto
y como segundo a uno del segundo.














Relacin
Una relacin entre dos o ms conjuntos es un subconjunto del producto cartesiano entre
estos. Matemticamente una relacin es "fija" o constante a menos que se indique lo contrario
: una vez definida, no vara.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
15
Como se ver ms adelante, esta es una de las diferencias con el modelo relacional: una
relacin de datos si es variable y podr crecer tanto en cardinalidad (extensin) como en
grado (cantidad de datos relacionados).












El aspecto semntico:
Generalmente existe un criterio para la definicin de este subconjunto "relacin" y es
precisamente este criterio el que debe dar el nombre a la relacin.
El nombre de la relacin hace referencia a un elemento del primer conjunto teniendo
entonces la relacin, una "direccin".

Grado de una relacin
Es la cantidad de conjuntos que intervienen en el producto cartesiano de donde se toma el
subconjunto relacin.

Tupla
Cada elemento del conjunto relacin:
Un par ordenado si el grado es 2.
Una terna ordenada si el grado es 3.
Etc.

Entre dos conjuntos puede existir ms de una relacin.
Efectivamente, incluso dejando de lado el aspecto semntico (de significado), bastar
referirse a la definicin de relacin:
Al ser la relacin un subconjunto, y al existir toda una gama de posibilidades para definir
un subconjunto a partir de un conjunto, existirn tantas posibles relaciones como
subconjuntos puedan definirse.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
16
Desde un punto de vista semntico:
No existe limitacin para el criterio de eleccin del subconjunto del producto
cartesiano, ms que el de la definicin de la relacin misma, por lo tanto cada elemento del
primer conjunto puede repetirse en ms de un par ordenado. Esto es, que puede relacionarse
con ms de un elemento del segundo conjunto.

Y viceversa (por el mismo motivo).












Relacin Inversa













Una relacin inversa a otra es el mismo conjunto de grupos de la relacin, pero con sus
elementos invertidos. Desde un punto de vista semntico es la misma relacin pero haciendo
referencia primero a los elementos del segundo conj unto. Entonces es simplemente un
cambio de "direccin".
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
17

El nombre de la relacin inversa har referencia a un elemento del segundo conjunto.
Cardinalidades de una Relacin Cardinalidad mnima de una
relacin
Sean dos conjuntos A y B.
La cardinalidad mnima de R(A,B) es la mnima cantidad de tuplas (interrelaciones)
que cada elemento de A puede tener con elementos de B

Cardinalidad mxima de una relacin
Sean dos conjuntos A y B.
La cardinalidad mxima de R(A,B) es la mxima cantidad de tuplas (interrelaciones)
que cada elemento de A puede tener con elementos de B

En el caso que la relacin sea descrita explcitamente es fcil determinar las
cardinalidades mnima y mxima.

En caso que los conjuntos a relacionarse sean expresados en forma genrica, las
cardinalidades deben obtenerse de la semntica asociada a la relacin.

Ejemplo
P = {personas del mundo} C
= {ciudades del mundo}
card-mn R1(P,C) = 1 card-mx
R1(P,C) = 1













Relacin Recursiva. Una relacin se dice recursiva cuando el producto cartesiano de donde
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
18
se extrajo, fue realizado sobre el mismo conjunto. Dicho de otro modo, cuando se relacionan
elementos de un mismo conjunto
Ejemplo
R3 = "es padre de" se define del conjunto P al conjunto P.

Clasificacin
Es el proceso de definir o encontrar subconjuntos a partir de un conjunto genrico. Tipos de
clasificacin:













1. De acuerdo a la cobertura sobre el conjunto genrico

1.1 Clasificacin Total
Cada elemento del conjunto genrico corresponde al menos a un elemento de los
subconjuntos. Dicho de otro modo, si la cardinalidad mnima de la relacin entre el
conjunto genrico y sus subconjuntos es 1
1.2 Clasificacin Parcial
Existe algn elemento del conjunto genrico que no corresponde con ningn elemento de los
subconjuntos. Dicho de otro modo, si la cardinalidad mnima de la relacin
entre el conjunto genrico y sus subconjuntos es 0.

2. De acuerdo a la cobertura sobre los subconjuntos
2.1 Clasificacin Exclusiva
Cada elemento del conjunto genrico corresponde a lo ms a un elemento de algn
subconjunto. Dicho de otro modo, si la cardinalidad mxima de la relacin entre el conjunto
genrico y sus subconjuntos es 1.
2.2 Clasificacin Inclusiva o Superpuesta
Existe algn elemento del conjunto genrico que corresponde elemento de ms de un
subconjunto. Dicho de otro modo, si la cardinalidad mxima de la relacin entre el conjunto
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
19
genrico y sus subconjuntos es mayor que 1.

En el ejemplo se muestra - de una manera simplificada - el caso de un banco que ha
clasificado a las personas relacionadas con la organizacin en "clientes" y "empleados".

El Modelo Entidad-Relacin
En 1976 Peter Chen publica "The Entity-Relationship Model - toward a unified view of data".
Este modelo diferencia a los objetos, de quienes representamos datos, en entidades y
relacio nes, aadiendo semntica y sencillez grfica.
Para disear y planificar bases de datos, el modelo Entidad-Relacin es el que ha tenido
mayor xito en la industria de la ingeniera de software. La mayora de herramientas que
apoyan la ingeniera de software y el desarrollo de sistemas de informacin (CASEs) han
adoptado algn "sabor" este modelo.
ENTIDAD
Una entidad es una "cosa" u "objeto" del mundo real, con existencia independiente y
distinguible de los dems objetos. Cada entidad tiene un conjunto de propiedades y valores
que la identifican de forma unvoca. Esta puede ser tanto tangible (existencia fsica), ejemplo:
Un carro, como intangible (existencia conceptual), ejemplo: Un curso universitario. Una
entidad es un objeto concreto o abstracto existente y distinguible de otros. Se representa por
un rectngulo y se le nombra con un nombre en singular, que hace referencia a la instancia y
no al conjunto de entidades del mismo tipo.



ATRIBUTO
Dato (abstraccin) para identificar o describir una entidad. Se representa con un nombre (del
dato) dentro de una elipse unida o "conectada" por una lnea a la entidad
asociada.
Las propiedades que califican y le dan vida a la entidad se denominan atributos.
Ejemplo: la entidad persona se puede describir por las siguientes propiedades: cdula,
nombre, direccin, sexo, peso, altura, color, tipo de sangre, salario.

Cada entidad tendr un valor por cada uno de los atributos, que posteriormente ser
almacenado en la base de datos. El valor de cada atributo est enmarcado en un conjunto de
valores permitidos llamado Dominio. Ejemplo: el conjunto de valores permitidos (dominio)
para el atributo cdula pueden ser todos los enteros positivos.
Tipos de Atributos:
Simples: No divisible, es decir es un atributo atmico. Ejemplo: El atributo cdula, su
propiedad no tiene sentido dividirla, no tendr significado para la entidad, ya que la
concepcin de este es un nmero indivisible.

TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
20
Compuesto: Est conformado por un conjunto de partes que en el momento de
dividirlas pueden formar otros atributos sin perder el sentido bsico de la propiedad que
est calificando la entidad. Ejemplo: los atributos nombre, direccin pueden estar
conformados en su naturaleza funcional por varias partes. Si tomramos el atributo nombre
con un valor de: JUAN PEREZ CORREA, sin perder la propiedad del mismo, se podrn crear
otros dos atributos simples tales como: primer_apellido, segundo_apellido. As se tendr:
(nombre, JUAN), (primer_apellido, PEREZ), (segundo_apellido, CORREA).

Univaluados: (univalorados o monovaluados): Son atributos que en el transcurso del tiempo
slo toman un valor para una entidad en particular. Ejemplo: El atributo cdula, solo toma un
valor para una entidad persona en particular.

Multivaluados: (multivalorados): Son atributos que en el transcurso del tiempo pueden tener
un conjunto de valores para una entidad en particular. Ejemplo: El atributo grado acadmico
para el conjunto de entidades persona puede tomar diferentes valores desde 0 o primaria
o medio, entre otros. Tambin es caracterstico que este tipo de atributo maneje rangos de
valores. Ejemplo: el atributo sexo, puede tener un rango de valores [F,M] y tomar uno de
estos en algn instante en el tiempo para una entidad especfica.

Nulos: Son atributos que en cualquier instante en el tiempo pueden tomar el valor nulo para
una entidad en particular.

Derivado: Son atributos cuyo valor depende de los valores de otros atributos o entidades.
Ejemplo: el atributo salario pude derivarse a partir del clculo de los siguientes valores:
PARAMETROS(salario_base, 5000), NOVEDADES(nro_horas_trabajadas, 240), el valor que
tendra el atributo en un instante en el tiempo ser: PERSONA(salario,1200000).

RELACIN
Instancia o elemento del conjunto relacin entre dos o ms conjuntos de entidades. Tupla.
Se representa por un rombo "conectado" a las entidades relacionadas.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
21

Notacin Genrica para cardinalidades mnimas y mximas en modelos Entidad- Relacin

En algunas ocasiones, para describir una realidad con un modelo, es suficiente referirse a
las cardinalidades mximas (el lmite de relaciones que puede tener un elemento de un
conjunto de entidades con elementos del otro conjunto de entidades.

La notacin Information Engineering:
Un crculo corresponde a una cardinalidad mnima CERO.
Una lnea transversal corresponde a una cardinalidad mnima y el algunas ocasiones
mxima de UNO.
Tres lneas concurrentes en un punto corresponden a cardinalidad mxima de ms
de uno o MUCHOS.
El nombre de la relacin suele colocarse en el sentido ("direccin de la relacin") uno a
muchos.













Notacin explcita para cardinalidades

Puede expresarse en forma explcita las cardinalidades, para casos que sean necesarias las
cantidades exactas de las mismas.

En la diapositiva:
m : cardinalidad mnima de R(A,B)
Con cuntas entidades del conjunto de entidades B puede relacionarse como mnimo una
entidad del conjunto de entidades A.
M : cardinalidad mxima de R(A,B)
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
22
Con cuntas entidades del conjunto de entidades B puede relacionarse como mximo una
entidad del conjunto de entidades A.













n : cardinalidad mnima de R-1 (B,A)
Con cuntas entidades del conjunto de entidades A puede relacionarse como mnimo
una entidad del conjunto de entidades B.

N : cardinalidad mxima de R-1 (B,A)
Con cuntas entidades del conjunto de entidades A puede relacionarse como mnimo una
entidad del conjunto de entidades B.

Dependencia Existencial
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
23

B depende existencialmente de A si para que exista cada entidad de B debe existir una
correspondiente entidad de A: la cardinalidad mnima de R-1 es 1. A la entidad de quien
depende otra se le denomina entidad "fuerte" o "padre" de la otra. A la entidad dependiente
se le denomina "dbil" o "hijo"

Las entidades dbiles tienen por lo menos un atributo que las asocie con la entidad de quien
depende. Este atributo ser uno que identifique a la entidad fuerte.

Clasificacin
Tal como se vio, la relacin de clasificacin (o viceversa, la generalizacin) es una relacin
de inclusin entre conjuntos. En este caso los conjuntos son conjuntos de entidades.Los
subconjuntos de entidades son llamados tambin CATEGORAS.
La notacin: ISA proviene del ingls "is a" que significa ES UN, por lo que la notacin hace
referencia a la relacin del conjunto de entidades categora al conjunto de entidades
genrico. Esto es, en el sentido de la generalizacin. Una entidad del conjunto de entidad
genrico puede ser una entidad de las categoras o ninguna en caso de una clasificacin parcial.















TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
24

Generalizacin
Muchas veces encontrar iguales atributos es indicativo de una generalizacin. Slo
indicativo, ms no necesariamente.

Agregacin
Mecanismo usado en un modelo Entidad-Relacin para permitir expresar relaciones entre
relaciones.

Al ser una relacin un conjunto, puede vrsele como una "Entidad Virtual" de manera que
pueda ser a su vez relacionada con otra u otras entidades.

La agregacin se representa agrupando grficamente mediante un rectngulo con lnea
discontinua a las entidades (rectngulos) relacionadas (por un rombo).













Grados de las relaciones

Tal como se vio el grado es la cantidad de conjuntos que se relacionan. A mayor grado,
mayor la dificultad de comprender la semntica asociada a la relacin. Adems existe siempre
la duda de si algo es una entidad o una relacin. Este es uno de los principales puntos
criticados al modelo E-R.
Una relacin de grado mayor a dos siempre se podr convertir en tres o ms relaciones binarias
(de grado 2).
Las relaciones binarias no slo son ms fciles de comprender sino que en estas pueden
apreciarse mejor las dependencias existenciales.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
25












ACTIVIDADES
Disee los siguientes diagramas entidad-relacin:
1. Obtener el diagrama E-R con las 3 entidades siguientes: Empleados (Nombre, Telefono, Salario)
Departamentos (Nombre, Localizacin) Jefes (Nombre) Trabaja-en (Empleados, Departamentos)
Dirige (Jefe, Departamento)

2. El supermercado King & Queen, ha decidido informatizar toda su gestin. La informacin
que se desea almacenar es la siguiente: El supermercado tiene un conjunto de proveedores, de
los cuales se desea almacenar su nombre, direccin y telfono. Cada proveedor sirve al
supermercado uno o varios artculos, y es posible que un mismo artculo sea servido por ms de
un proveedor. Por cada artculo deseamos saber el nombre, el precio, elnmero de artculo (que
es nico), y el precio alque lo sirve cada proveedor (no el precio de venta al pblico). Por otro
lado, el supermercado est organizado en distintos departamentos, cada uno de los cuales tiene
un director y una serie de empleados. Cada departamento es responsablede un rea de ventas
(textil, alimentacin,hogar, etc), y cada artculo slo puede ser vendido por un nico
departamento. El supermercado necesita por cada empleado la siguiente informacin: nombre,
direccin y telfono particular, salario y a qu departamentopertenece. Finalmente, el
supermercado tiene clientes que realizan pedidos. Por cada cliente se necesita su nombre,
direccin, telfono y el saldo. Cada pedido consiste en un nmero de pedido, fecha del pedido,
artculos pedidos y cantidad. Se pide disear la base de datos, mostrando su extructura mediante
un diagrama E-R. Nota: podra haber informacin incompleta. Es importante detectarlo y
resolverlo.

3. Una empresa dispone de una flota de coches para sus vendedores. A cada vendedor se le asigna
un coche, y cada coche slo se asigna a un vendedor. Los conjuntos de valores que deseamos
almacenar son los siguientes: #M, matrculas de los coches de la empresa, MO, modelos de estos
coches, #V, identificadores de vendedores, NV, nombres de los vendedores. Representar esta
descripcin en un diagrama yobtener el esquema de diseo.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
26
4. Una base de datos acadmica contiene informacin sobre un plan de perfeccionamiento del
personal dentro de una empresa. El plan consiste en una serie de Cursos de Perfeccionamiento.
Para cada curso, la base de datos contiene informacin detallada de todos los cursos que son
requisito para ese curso (es decir, el alumno debe tenerlos aprobados antes de poder
matricularse), y de todos las ofertas de ese curso. Normalmente cada curso tiene varias
ofertas, es decir, se ofrece la posibilidad de realizarlo en diferentes fechas y con diferentes
profesores (por ejemplo, Introduccin a las Bases de Datos puede realizarse del 15 al 23 de
Diciembre con el profesor Fernndez en el Aula 8, o del 14 al 24 de Enero con el profesor Garca
en el Aula 2, o del 1 al 10 de Abril con el profesor Fernndez en el Aula 2). La base de datos
contiene todos los detalles de todos los profesores y estudiantes de esa oferta. Finalmente
tambin contiene informacin acerca del nombre, NIF y puesto de los empleados dentro de
la empresa. Tanto los profesores como los estudiantes de los cursos son empleados de la compaa.

5. Se desea construir una base de datos para mantener informacin sobre los equipos y
partidos de una liga deportiva. Un equipo tiene cierto nmero de jugadores, y no todos
participan en cada partido. Se desea registrar en la base de datos por cada partido, los
jugadores de cada equipo que intervienen, posiciones en que juegan y los resultados de los
encuentros. Obtener el diseo ms adecuado, realizando todas las suposiciones que creas
necesarias. Elige tu deporte favorito (baloncesto, balonmano, football, ...).

6. Se trata de disear la base de datos de una agencia aeroespacial. En ella se pretende
almacenar toda la informacin referente a sus empleados (DNI, nombre completo, edad y
direccin) y los nombres y parentesco de los familiares que dependen de stos. Los empleados
pueden ser tcnicos, astronautas y cientficos. Los empleados participan en una serie de misiones
en un periodo determinado de tiempo, dato que es de inters recoger, pero como mximo, a
lo largo de su estancia en la agencia pueden participar en diez misiones. Puede haber
empleados que no participan en ninguna misin porque estn en periodo de prcticas. Cada
misin es propuesta por un cientfico en una fecha determinada. Estas misiones estn
desarrolladas con vistas alestudio de uno o varios planetas. La agencia dispone de una flota de naves
espacia les de distintos tipos que realizan vuelos entre dos fechas en cada una de las misiones.
Estas naves son manejadas en una fecha concreta por astronautas. Una vez finalizada una misin
se pretende almacenar sus conclusiones y la fecha de finalizacin. Disear a nivel conceptual
y de implementacin de datos esta base de datos especificando los modelos que se van utilizar.
Indicar todas las restricciones que no se puedan especificar en los modelos utilizados. Sealar
las suposiciones semnticas que sean imprescindibles.

7. Una base de datos para una pequea empresa debe contener informacin acerca de
clientes, artculos y pedidos. Se necesita almacenar los siguientes datos: Para cada cliente:
Nmero de cliente (nico) Direcciones de envo (varias por cliente) Saldo Lmite de crdito
(depende del cliente) Descuento Para cada artculo: Nmero de artculo (nico). Fbricas
que lo distribuyen. Existencias de ese artculo en cada fbrica. Descripcin del artculo. Para
cada pedido: Cada pedido tiene una cabecera y el cuerpo del pedido. La cabecera est formada
por el nmero de cliente, direccin de envo y fecha del pedido. El cuerpo del pedido son varias
lneas, en cada lnea se especifica el nmero del artculo pedido y la cantidad.
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



REA ACADMICA DE
COMPUTACIN E INFORMTICA
27
8. En la secretara de una universidad se desea gestionar la informacin acerca de los alumnos,
profesores, las asignaturas y las carreras ofertadas. Hay que tener en cuenta que:
(a) Un alumno puede estar matriculado en muchas asignaturas. (b) Cada asignatura pertenece a
una nica carrera, aunque puede haber asignaturas de distintas carreras con el mismo nombre.
(c) Una carrera tiene muchas asignaturas. (d) Cada asignatura puede estar impartida por uno o
ms profesores, pero como mximo tres. (e) Un profesor puede impartir como mximo 4
asignaturas distintas.

9. Jhon Anderson es un coleccionista aficionado de videos de todo tipo, entre los que se destacan
pelculas, musicales, educativos, etc. tanto en formato de cintas VHS y DVD. Posee en casa
ms de 800 videos coleccionados desde hace 20 aos. Jhon, necesita una base de datos para
administrar sus videos. Disee Ud. la base de datos adecuada para tal fin, considerando que Jhon
es muy estricto al etiquetar sus videos, ya que incluye el tipo de pelcula (comedia, drama, terror,
accin, etc), el ao que se rod la pelcula, as como los actores, directores y un breve comentario
del guin.

10. En una agencia matrimonial hay empleados que son administrativos y otros que son directores.
Solamente los directores pueden concertar citas entre hombres y mujeres, quedando constancia
de la fecha, el hombre, la mujer y el director que la promovi. Construir el modelo E/R con
los atributos adecuados indicando las claves en los siguientes casos:
a) Un mismo hombre con una misma mujer solo se pueden citar una vez
b) Un mismo hombre con una misma mujer se pueden citar ms de una vez
c) Puede haber citas que no las haya promovido ningn director.

11. Un centro comercial est organizado por departamentos, cuyos empleados puede ser jefes o
vendedores, cada uno de ellos perteneciente a un nico departamento. Cada departamento tiene
un nico jefe y un jefe lo es nicamente de un departamento. Cada departamento tiene sus
propios productos que son suministrados por distintos proveedores a un determinado precio.
Una venta la realiza un vendedor a un cliente en una fecha y puede incluir varios productos.

12. Se quiere gestionar informacin acerca de las personas que habitan y/o poseen viviendas en los
municipios. Cada persona slo puede habitar en una vivienda y estar empadronada en un
municipio, pero puede ser propietaria de varias viviendas. Puede ocurrir tambin que dos o ms
personas hayan comprado una misma vivienda. Tambin se necesita conocer las personas que
dependen de un cabeza de familia.

13. Se quiere gestionar el mundo cinematogrfico. En l hay una serie de estudios que producen una
serie de pelculas y que estn dirigidos por un nico director. Estos estudios cuentan con varios
equipos de produccin. Algunas pelculas son versiones de otra original. En estas pelculas actan
diferentes actores y actrices que se encarnan en diferentes personajes. Notar que un personaje
puede ser de diferentes pelculas. Notar tambin que hay personajes que no necesiten ser
interpretados por ningn actor, por ejemplo R2D2, N5 Un estudio puede producir dos tipos
diferentes de pelculas. Por un lado, pelculas de dibujos animados (cartoons) y por otro,
pelculas de accin. En los cartoons las voces las interpretan los actores y actrices y pueden
estar hechos por
TALLER DE MODELAMIENTO DE SOFTWARE
Introduccin a las Bases de Datos
Ing. CIP. Andrei Quispe Alderete



Pgina 28



REA ACADMICA DE
COMPUTACIN E INFORMTICA

ordenador o no. En las pelculas de accin se necesita saber solamente el nombre de los
materiales que se utilizan (armas, cuerdas, etc)

14. La panadera La Casa del Pan, fabrica diferentes productos. Estos incluyen pan blanco, pan
dulce, pasteles especiales y muchos otros artculos horneados. Se compran ingredientes tales
como harina, especies, leche, etc. a diversos proveedores. A veces un ingrediente es
comprado a un solo proveedor, pero por lo general es a muchos proveedores minoristas
independientes. La panadera tiene clientes comerciales, tales como escuelas y restaurantes,
que colocan pedidos regularmente de artculos de panadera. Cada artculo de panadera tiene
un especialista que supervisa la realizacin de las operacin de horneado e inspecciona el
producto terminado.

15. Mary Richards es una pintora y decoradora profesional de casas. Posee y opera una
pequea compaa compuesta por ella misma, otro pintor profesional y, cuando es
necesario, pintores contratados por medio tiempo. Mary, ha estado en el negocio a lo largo
de diez aos y se ha ganado una buena reputacin como pintora de gran calidad y que
trabaja por un precio razonable. Consigue una gran parte de sus trabajos con clientes que
ya la han contratado antes y por referencias personales. Adems, Mary obtiene algn
trabajo por medio de contratistas de edificios y diseos profesionales de interiores. Los
clientes recuerdan a Mary mucho mejor de lo que ella los recuerda a ellos. A decir verdad,
algunas veces ella se avergenza cuando un cliente llama y le dice: Hola Mary, soy Jonh
Maples, pintaste mi casa hace tres aos. Mary sabe que debera recordar al cliente y el
trabajo que realiz para l, pero como pinta ms de cincuenta casas por ao le cuesta
trabajo acordarse. Con el propsito de ayudar a su memoria y mantener una mejor
secuencia en sus registros de negocios, disee Ud. una base de datos que satisfaga los
requerimientos de Mary.

Potrebbero piacerti anche