Anda di halaman 1dari 48

MODELADO

Guillermo Londoo A.

MODELO DE ENTIDADES

Entidad
La naturaleza es muy compleja y el hombre se ha visto en la necesidad de acudir a
diferentes mecanismos para manejarla y entenderla. Tanto los objetos como los fenmenos
naturales se encuentran mezclados, no existen fenmenos qumicos, fsicos, biolgicos,
sociales, etc. de forma separada, es el hombre quien en su afn de conocimiento los ha
clasificado y estudiado de manera independiente. El mecanismo de abstraccin que permite
la tipificacin y clasificacin, tanto de los objetos como de los fenmenos, se utiliza
ampliamente en todas las reas del conocimiento, y en el caso de un sistema de informacin
complejo tambin necesitamos de este mecanismo.
En un sistema de informacin tenemos objetos a diferentes niveles.
1. Presentacin: Interfaz compuesta por objetos que responden a solicitudes del medio en
el que se encuentra inmerso el sistema y permiten que los actores externos interacten
con el mismo. Hace parte del modelo de eventos externos.
2. Dominio del problema: Compuesto por objetos que representan entidades del dominio
del problema, y que satisfacen completamente los requerimientos de la aplicacin. Hace
parte del modelo de entidades.
3. Objetos de Control: Objetos que coordinan el trabajo de otros objetos y controlan la
secuencia de eventos en la interaccin entre un actor externo y el sistema.

MODELADO

Guillermo Londoo A.

4. Objetos de servicio: Objetos que no pertenecen a la presentacin ni al dominio del


problema, pero que proveen servicios tales como acceso a una base de datos, o a un
sistema legado, o a un servicio web, etc. Son actores externos.
5. Almacenamiento: Mecanismo para dar persistencia a la informacin tal como una base
de datos relacional, archivos XML, colecciones en memoria, etc. Son actores externos.
En este captulo nuestro principal inters est centrado en la segunda categora; es decir, en
la identificacin de los objetos que constituyen el dominio del problema y que dan origen a
la descomposicin del mismo en entidades. La descomposicin del problema en entidades
es la esencia del anlisis de sistemas de informacin, y el esfuerzo invertido en la
elaboracin de este modelo es altamente recompensado en el diseo y la implementacin.
El modelo de entidades representa las clases de objetos del mundo real, que hacen parte del
dominio del problema. Este modelo contiene entidades con sus propiedades, dependencias
entre sus propiedades, y relaciones entre las entidades.
En un determinado contexto tenemos objetos de la realidad identificables, nicos, con
estructura, restricciones y asociaciones. Si tratamos con cada objeto individual, el volumen
de informacin y el grado de complejidad del sistema puede ser muy alto, esto hace que
acudamos a la abstraccin como mecanismo de clasificacin. Este mecanismo consiste en
el hecho de concentrarse en las similitudes e ignorar las diferencias; por ejemplo, un
sistema de informacin de una biblioteca tiene un gran volumen de objetos identificables y
nicos como Juan Prez, Pablo Muoz, el libro llamado Bases de Datos, el hecho de que
Juan Prez prest el libro de Bases de Datos, una multa aplicada a Juan Prez por no
devolver a tiempo el libro de Bases de Datos, etc. Podemos definir la entidad documento
como cualquier objeto de la biblioteca que se pueda reservar o prestar y que sea un libro, o
la memoria de un congreso, o una lectura, o un caso. Objetos como el libro de Bases de
Datos satisface esta condicin clasificndose en esta entidad.
Una entidad puede representar informacin de objetos tangibles como Juan Prez, o
intangibles como un prstamo o una multa. Adems, los objetos no forman conjuntos por s
mismos, son las personas las que construyen formas abstractas llamadas entidades
(conceptos) para formar conjuntos de objetos.
Entidad es un conjunto compartido de proposiciones generales que se aplica a los objetos,
es un patrn mental con el que tomamos conciencia y razonamos acerca de un conjunto de
objetos. Cuando utilizamos una entidad, nos servimos de pruebas que determinan si sta se
aplica o no a ciertos objetos, y aqullos que pasan esas pruebas se convierten en instancias
de la entidad. De esta forma, los objetos se pueden percibir de muchas maneras de acuerdo
a nuestras pruebas conceptuales. Este conjunto de pruebas es la definicin de la entidad y el
conjunto de objetos a los cuales se aplica es su dominio. Adems, toda entidad tiene un
smbolo o nombre que denota o hace referencia de manera nica a sus objetos, y es
particularmente til cuando queremos comunicarnos sin hacer referencia a definiciones.
Los smbolos son simplemente un medio prctico de identificar las entidades. Por ejemplo,
NOMBRE (Smbolo):
Usuario
DEFINICIN (Intensidad): Estudiante, profesor o empleado de la universidad Icesi
2

MODELADO

Guillermo Londoo A.

habilitado para hacer prstamos y reservas en la biblioteca de la universidad.


DOMINIO (Extensin): En un semestre dado, todos los estudiantes matriculados y
todos los profesores y empleados activos.
Aunque podemos formar entidades para las que no existen instancias, en la conciencia de
las personas no puede haber objetos sin entidades aplicables. En otras palabras, cierto
objeto existe para ciertas personas, ya que cuentan con la estructura conceptual necesaria
para percibirlo; sin embargo, es posible que el mismo objeto no exista para otras personas,
puesto que est fuera de su marco conceptual.
El analista debe conocer el nombre, la definicin y el dominio de todas las entidades del
sistema. Una entidad sin definicin no es una entidad, es una idea ambigua que genera
ruido en el entendimiento y modelado; por tanto, la tarea de los analistas de sistemas de
informacin no es modelar la realidad, sino la forma en que los usuarios comprenden y
procesan la realidad, a travs de las entidades que adquieren. El analista identifica el
conjunto de entidades compartidas por los usuarios, que subyace en los procesos del
sistema y constituyen la base de su lenguaje de comunicacin. La construccin del modelo
de entidades es el corazn del anlisis.

Clasificacin De Las Entidades


Estamos interesados en entidades que representan ideas compartidas por los usuarios y que
se aplican a determinados objetos de significado dentro del sistema. Por tanto, una entidad
debe tener un nombre, una definicin o conjunto de reglas que deben cumplir los objetos
para aplicarle a la entidad, y un dominio de instancias. Una entidad puede ser:
Fuerte: Son aquellas que se aplican a objetos cuya existencia es independiente de la
existencia de las dems; es decir, tienen vida propia y no nacen de asociaciones entre
otras entidades, ni son dependientes de otra entidad, Por ejemplo, usuario y documento
en una biblioteca. Las entidades fuertes tienen la capacidad de identificarse a travs de
sus propiedades.
Atributiva: Su existencia depende de la existencia de otra entidad. No se identifica a
travs de sus propiedades; por ejemplo, tem de un prstamo.
Asociativa: Nace de una asociacin reflexiva, binaria o ene aria entre entidades y
depende de la existencia de stas; por ejemplo, prstamo y reserva. Generalmente no
tiene la capacidad de identificarse a travs de sus propiedades.

Restricciones Sobre Las Entidades


Toda entidad debe cumplir con los siguientes requisitos:
1. Exclusividad de ocurrencias. Las entidades deben ser mutuamente excluyentes en sus
instancias.
3

MODELADO

Guillermo Londoo A.

2. Exclusividad de propiedades. Las entidades deben ser mutuamente excluyentes en sus


propiedades.

Propiedad
Una instancia de una entidad representa un objeto o un hecho de la realidad, con un estado
que abarca todas las propiedades normalmente estticas, ms los valores normalmente
dinmicos, de cada una de sus propiedades. Por ejemplo, una propiedad esttica de un libro
es su estado, lo que significa que es una caracterstica esencial. Por el contrario, el valor del
estado en el que se encuentra en un momento dado, representa el valor dinmico de esa
propiedad, el cual es afectado por operaciones de prstamo, devolucin etc. que se ejecuten
sobre l.
Una propiedad es una caracterstica inherente o distintiva, un rasgo o cualidad que hace que
un objeto sea ese objeto y no otro. Toda propiedad caracteriza un objeto identificndolo,
calificndolo, cuantificndolo, o declarando su estado. Las propiedades pueden ser
escalares o complejas. Toda propiedad escalar debe tener un nombre, una definicin y un
dominio de valores simples (numrico, alfanumrico, fecha, lgico, etc.) que pueden tomar
los objetos en esa propiedad. Por ejemplo, la propiedad plan de la entidad estudiante Icesi,
se define como el plan de estudios de pregrado o postgrado al cual pertenece el estudiante.
Su dominio de valores est constituido por todos los planes de pregrado y postgrado de la
Universidad Icesi.
Una propiedad compleja est compuesta de propiedades escalares y/o propiedades
complejas. Por ejemplo, la propiedad telfono puede estar compuesta de la propiedades
escalares cdigo del pas, cdigo de la ciudad y nmero del telfono.
Para representar grficamente una entidad utilizamos un rectngulo con tres
compartimientos, uno para el nombre, otro para las propiedades escalares o complejas y
otro para las propiedades de navegacin.

MODELADO

Guillermo Londoo A.

Restricciones sobre las propiedades


Toda propiedad escalar debe cumplir con las siguientes condiciones:
1. Simple. Toma valores de tipo simple (nmeros, cadenas de caracteres, fechas, lgicos,
etc.). En un modelo conceptual las propiedades deben ser valores simples y no deben
usarse para relacionar entidades.
2. Sin identidad. Los valores simples no tienen identidad, por ejemplo no se puede
distinguir entre dos instancias del nmero entero 5. Por el contrario, s se puede
distinguir entre dos instancias de la entidad Persona cuyos nombres sean Pedro Prez,
porque ambos objetos pueden representar diferentes individuos con el mismo nombre.
Los valores son intemporales, inmutables y no instanciables; mientras que los objetos
existen en el tiempo, son modificables, tienen estado, se pueden crear, destruir y
compartir. El hecho de que todo objeto tenga un estado implica que toma cierta cantidad
de espacio, ya sea en el mundo fsico o en la memoria del computador.
3. Exclusividad y Privacidad. Deben ser privadas y exclusivas de una entidad.
4. No calculables. No modelar propiedades calculables o derivables en las entidades.
5. Dominio. Toda propiedad debe tener asociado un conjunto de valores permitido.
6. Restricciones de la entidad. En un entidad, si una propiedad y depende de un
propiedad x se debe cumplir que dos objetos de la entidad que tengan los mismos
valores de x, deben tener tambin los mismos valores de y. Por ejemplo, en la entidad
estudiante si el telfono depende de la direccin, dos objetos de la entidad estudiante que
tengan el mismo valor de direccin deben tener el mismo nmero telefnico.

Dependencia Entre Propiedades


Sea E una entidad con un conjunto de propiedades A = (a1, a2, a3, , an) y sean x y y
subconjuntos de A:
Decimos que x implica y (x y) si para dos objetos cualesquiera de E, que tengan
iguales valores en todos las propiedades del conjunto x, tambin deben ser iguales los
valores de todas los propiedades del conjunto y.
Una dependencia entre propiedades es una restriccin sobre una entidad y no sobre un
objeto particular de la entidad. No es posible afirmar el cumplimiento de una dependencia
observando objetos en un instante de tiempo. Una dependencia es una restriccin inherente
a la entidad impuesta por los usuarios del sistema, y todos sus objetos deben cumplirla en
todo instante de tiempo.

MODELADO

Guillermo Londoo A.

Ejemplo: La entidad ProveedorArt representa los artculos que pueden suministrar los
proveedores, la propiedad precio depende tanto del artculo como del proveedor.

CdProv Nombre, Telfono


CdArt Descripcin
CdProv, CdArt Precio

Las primeras dos dependencias establecen que para cada proveedor existe un slo nombre y
un slo telfono y para cada artculo una sola descripcin. La tercera dependencia establece
que el precio de un artculo depende no slo del artculo sino tambin de quin lo provee.
La primera dependencia no significa que no puedan existir homnimos, esta restriccin la
impone la dependencia inversa no expresada en este caso.
Cualquier conjunto de instancias de esta entidad debe cumplir con las restricciones
establecidas por las dependencias:
ProveedorArt
CdigoProveedor
P50
P32
P50
P32
P38

Nombre
Juan
Pedro
Juan
Pedro
Pedro

Telfono
5576581
3349631
5576581
3349631
3349631

CdigoArtculo Descripcin
A10
Tuerca
A20
Tornillo
A20
Tornillo
A10
Tuerca
A49
Atornillador

precio
20
30
32
18
45

Dos instancias con el mismo valor de cdigo de proveedor deben tener los mismos valores
en nombre y telfono. Dos instancias con el mismo valor en cdigo de artculo deben tener
los mismos valores en descripcin. Dos instancias con los mismos valores en cdigo de
proveedor y cdigo de artculo deben tener el mismo valor en precio.
Ejemplo 4.2: Puesto que las dependencias son restricciones impuestas a una entidad, no es
posible encontrarlas analizando sus instancias en un instante de tiempo. Pero en el caso de
una entidad E con propiedades a, b, c, d y el siguiente conjunto completo y constante de
instancias que no cambian con el tiempo, ni se crean ni se eliminan instancias, es posible
determinar sus dependencias a partir de sus ocurrencias inmodificables:
E
6

MODELADO

Guillermo Londoo A.

a
a1
a1
a2
a2
a3

b
b1
b2
b2
b3
b3

c
c1
c1
c2
c2
c2

d
d1
d1
d2
d2
d2

En la entidad E:
1. Las dos primeras ocurrencias tienen el mismo valor en a pero no en b, al valor a1 le
corresponden los valores b1 y b2; por tanto, la propiedad a no implica a la propiedad b.
Todas las ocurrencias de E que tienen el mismo valor en la propiedad a tambin
coinciden en el valor de c y d, en consecuencia (a c) y (a d). Tambin se cumplen
las dependencias (c d) y (d c).
2. Para todas las parejas de valores de las propiedades a y b, a cada una de ellas le
corresponde un nico valor de la propiedad c; por tanto, (ab c). Pero para todas las
parejas de valores de b y c no existe un nico valor de a, a la pareja (b3, c2) le
corresponden los valores a2 y a3; por tanto, b y c no implican a a. Otras dependencias
con dos propiedades como implicantes son:
(ab d), (ac d), (ad c), (bc d), (bd c).
3. Las dependencias con ternas de propiedades como implicantes son:
(abc d), (abd c).
4. La propiedad a implica a las propiedades c y d y a la unin de los dos (a cd). Se
puede remplazar una dependencia (x b1b2.....bn) por el conjunto de dependencias
(x b1; x b2;.. x bn)
O viceversa, podemos remplazar el conjunto de dependencias
(x b1; x b2;..... x bn) por la dependencia (x b1b2.....bn).
5. Toda propiedad se implica a s mismo (a a), (b b), etc. y todo conjunto de
propiedades se implica a s mismo y a cualquier subconjunto de l, (abc abc),
(abc ab), (abc a). Esto es equivalente a decir que si dos ocurrencias concuerdan en
los valores abc evidentemente concuerdan en cualquier subconjunto de ellos. Estas
dependencias se conocen como dependencias triviales.
6. Si (a d), entonces a unido a cualquier otra propiedad tambin implica a d, (ab d).
7. Existe transitividad: si (a c) y (c d) (a d). Para dos ocurrencias cualesquiera
(a, cy, dz) y (a, cu, dv) de E con igual valor en a, puesto que (a c) entonces deben tener
7

MODELADO

Guillermo Londoo A.

el mismo valor en c, cy = cu. De igual manera, puesto que (c d) y las dos ocurrencias
tienen el mismo valor de c entonces deben coincidir en el valor de d, dz = dv. Por tanto,
cualquier par de ocurrencias que cumplan con las dependencias (a c) y (c d),
cumplen con la dependencia (a d).
8. Una dependencia asigna a cada valor de las propiedades implicantes un slo valor (o
ninguno) de las propiedades implicadas. Por ejemplo, la dependencia abc d al valor
a1b1c1 le asigna el nico valor d1, pero el valor d1 no se calcula o deriva de a 1b1c1
mediante una expresin matemtica, la dependencia slo nos permite afirmar que dos
ocurrencias que tengan el mismo valor en las propiedades abc, tambin tendrn el
mismo valor en el propiedad d.
9. Existen reglas generales que permiten derivar dependencias. Una entidad tiene
dependencias no derivables impuestas por los usuarios, y dependencias derivables
mediante reglas, a partir de las no derivables.
Ejercicios: Encuentre las dependencias no triviales entre las propiedades de los siguientes
contextos:
1.

La entidad ProveedorArt tiene las siguientes propiedades: cdProv, Nombre, Telfono,


cdArt, Descripcin, tiempoEntrega y Precio. De cada proveedor tenemos un solo
telfono y de cada artculo una sola descripcin. Los proveedores nos suministran
mltiples artculos y un artculo puede ser suministrado por varios proveedores, pero a
diferente precio. Es ms, un mismo proveedor me puede suministrar un mismo artculo a
diferente precio y tiempo de entrega. Por ejemplo, el proveedor Pedro puede suministrar
el artculo A a $ 50 y tiempo de entrega 1 da, o el mismo proveedor Pedro me puede
suministrar el mismo artculo A a $ 30 pero me lo entrega en 5 das. Encuentre las
dependencias entre las propiedades de la entidad ProveedorArt.

2. En un nacimiento en una fecha (f) participan mdicos gineclogos (g), enfermeras (e),
una madre (m) y uno o varios bebes (b). Encuentre el conjunto de dependencias entre
las propiedades de la entidad nacimiento, si participa:
1. un solo gineclogo, un solo beb y puede o no haber una enfermera. Si nacen
mellizos, trillizos, etc., cada uno se considera un nacimiento diferente
2. un solo gineclogo, un solo bebe y una o varias enfermeras
3. un solo bebe, uno o ms gineclogos y una o varias enfermeras
g, e, m: cdula
b: NUIP (Nmero nico de identificacin Personal)
f: da, mes, ao, hora, minutos, segundos
3.

La oficina de correos nacionales subdivide en zonas cada municipio de todos los


departamentos de todo el pas, y a cada zona le asigna un cdigo postal. Estos cdigos
son nicos pero dentro del departamento. Las direcciones pueden repetirse en varios
municipios, puesto que podemos tener la misma calle 10 No. 10-10 en el municipio de
Cali, de Medelln, etc. Pueden existir departamentos que tengan municipios con el
8

MODELADO

Guillermo Londoo A.

mismo nombre y obviamente un departamento tiene muchos municipios; pero no existen


dos departamentos con el mismo nombre, ni dos municipios con el mismo nombre en el
mismo departamento. La entidad DireccinPostal de una persona con propiedades
cdula (c), nombre (n), direccin (dr nmero de la calle y de la vivienda), municipio (m
nombre del municipio), departamento (dp nombre del departamento) y cdigo postal (cp
valor numrico), tiene una sola direccin postal para cada persona, encuentre las
dependencias entre sus propiedades.
4.

Una aplicacin Java est compuesta de paquetes (p), clases (c) y objetos en una
determinada posicin de memoria (o). Las clases tienen variables estticas tipo valor
(vev), variables estticas tipo referencia (ver), variables de instancia tipo valor (viv) y
variables de instancia tipo referencia (vir). Las clases tambin contienen mtodos (m),
cada uno con un conjunto de parmetros (cp), variables locales que tambin pueden ser
de tipo valor (vlv) o referencia (vlr), y un tipo de retorno que puede ser un tipo simple
(t), o una clase. p, c, vev, ver, viv, vir, m, vlv, vlr, t son los nombres correspondientes.
a. No pueden existir dos clases con el mismo nombre en el mismo paquete.
b. Los objetos tienen identidad travs de su posicin en memoria, mientras que los
valores no tienen identidad.
c. El estado de un objeto est representado nicamente por los valores de sus variables
de instancia.
d. No pueden existir dos variables con el mismo nombre en una misma clase, ni en un
mismo bloque (nb nmero secuencial en cada mtodo) de cdigo independiente (no
anidado) en un mtodo.
e. Toda variable tipo valor es de un solo tipo simple.
f. Toda variable de tipo valor guarda un solo valor (v).
g. Toda variable tipo referencia apunta a un solo objeto.
h. Todo objeto pertenece a una sola clase.

5. En una biblioteca se lleva el registro de los prstamos que se han hecho desde el
comienzo del semestre hasta la fecha actual. Cuando un usuario hace un prstamo
puede llevar hasta cinco libros y esto constituye un slo prstamo con:
A. un cdigo (cp) nico por prstamo
B. tambin se registra el cdigo del usuario (cu) nico para cada usuario
C. la fecha del prstamo (fp) y una o hasta cinco lneas cada una de las cuales tiene:
a. un nmero de lnea (nl) para cada tem consecutivo dentro de cada prstamo
b. cdigo de barras del libro (cb) nico para cada ejemplar
c. nmero de indexacin (ni) consecutivo que se coloca a los libros a medida
que se compran, pero igual para todos los ejemplares de un mismo libro
d. ttulo del libro (tl), pueden existir varios libros con el mismo ttulo
e. nmero de ejemplar (ne), consecutivo para los ejemplares de un libro
f. categora (reserva, general, referencia) del libro (cl)
g. y opcionalmente fecha en la que realmente lo devuelve (fd).
h. La devolucin de cada libro puede generar una multa, y en ese caso se
registra:
el nmero de liquidacin nico por multa (nlm)
9

MODELADO

Guillermo Londoo A.

y la fecha de cancelacin de la multa (fcm).


Las fechas son en formato da, mes, ao, hora, minutos, segundos, miliseg.
6. Necesitamos ponerle un cdigo de articulo (c) a todos los artculos de todas las revistas
(r) que tenemos en la biblioteca. Cada revista tiene una publicacin semanal, mensual o
bimensual, y a cada publicacin la llamamos un ejemplar de la revista. Cada ejemplar
tiene un nmero (n), consecutivo nico por revista; es decir, la revista AA tiene los
ejemplares 1, 2, 3., la revista BB tambin tiene los ejemplares 1, 2, 3., etc. Todos
los artculos tienen un solo ttulo (t), y su publicacin empieza en una pgina de inicio
(p) del ejemplar de la revista.
a. El cdigo del artculo (c) es un consecutivo que reinicia para cada ejemplar de cada
revista, y se lo asignamos a cada ttulo (t) de artculo del ejemplar
b. No existen dos artculos con el mismo ttulo (t), ni dos revistas con el mismo
nombre (r).
c. Dos artculos nunca empiezan en la misma pgina (p) de un ejemplar de una revista.
Obviamente, todo artculo tiene una sola pgina de inicio.
d. Un artculo puede estar publicado en varias revistas, pero una revista nunca publica
varias veces el mismo artculo.
e. Las pginas de los ejemplares se numeran consecutivamente de 1 en adelante.
Ejemplar 1
N=1

Ejemplar 2
N=2

7.

REVISTA AA
P=3
T=T1 C=1
P=10
T=T2 C=2
P=15
T=T6 C=3
.
....
...
P=5
T=T4 C=1
P=12
T=T8 C=2
P=19
T=T7 C=3
.
....
...

Ejemplar 1
N=1

Ejemplar 2
N=2

REVISTA BB
P=4
T=T10 C=1
P=7
T=T1
C=2
P=14
T=T6
C=3
.
..
...
P=2
T=T2
C=1
P=13
T=T7
C=2
P=15
T=T9
C=3
.
..
...

Cada semestre (se) los departamentos (dp) de las facultades de la universidad Icesi programan los grupos
(g) de sus materias (cm, nm). Estos grupos estn a cargo de los profesores (p) del departamento y sus
clases se dictan en los salones (sa) de la universidad. Un curso puede tener una o varias clases a la semana
en un da (di), hora de inicio de la clase (i) y hora de terminacin de la clase (f) y este horario es el mismo
durante todo el semestre; es decir, no cambia de una semana a otra. En estos grupos se matriculan
estudiantes (ce, ne) y tienen al menos tres parciales (np, cp) en cada curso. Cada propiedad significa:
se: ao y # semestre
cm: cdigo de la materia
sa: nmero saln-edificio
ce: cdigo del estudiante
cp: calificacin del parcial

dp: cdigo del dpto.


nm: nombre de la materia
di: nombre da semana
ne: nombre del estudiante

g: nmero del grupo,


p: nombre del profesor
i, f: hora en formato militar
np: nmero del parcial

Existen las siguientes restricciones:


a.
b.
c.

No existen dos departamentos ni dos estudiantes con el mismo cdigo, ni dos profesores con los
mismos nombres y apellidos.
El cdigo de la materia es nico pero dentro del departamento.
Un estudiante tiene un solo nombre.
10

MODELADO
d.
e.
f.
g.
h.
i.
j.

Guillermo Londoo A.

Una materia tiene un solo nombre y pertenece a un solo departamento.


Un curso es dictado por un solo profesor.
En un momento dado en un saln slo hay un curso de una materia dada.
En un momento dado una persona slo puede estar en un saln.
En un semestre un estudiante se matricula en un solo curso de una materia.
Un curso no recibe ms de una clase al da de una materia dada.
Un parcial tiene una sola calificacin.

8. El programa de un determinado congreso se lleva a cabo en una sola semana e incluye


las siguientes especificaciones:
a. Cdigo de la conferencia (c)
b. Nombre de la conferencia (n) que al igual que el cdigo es nico pero es ms
aclaratorio del contenido de la conferencia a la que identifica.
c. Da en que tiene lugar la conferencia (d). Una conferencia se da una sola vez
durante el congreso, en un slo da.
d. Hora en la que empieza la conferencia (i).
e. Hora en la que finaliza la conferencia (f). Todas las conferencias tienen una
duracin de una hora.
f. El presentador (p) de la conferencia es nico por conferencia, aunque una misma
persona puede actuar como presentadora en conferencias diferentes. Un presentador
solo puede estar en una conferencia a la vez.
g. Sala en la que se celebra la conferencia (s) nica por conferencia, aunque en una
misma sala se pueden dar otras conferencias. En una sala solo se dicta una
conferencia a la vez.
h. Expositor o conferencista (e) nico por conferencia, aunque una misma persona
puede ser expositor en varias conferencias diferentes, pero solo en una a la vez.
9. En el Departamento de TICs de la universidad ICESI trabajan profesores (p) y
monitores (mo), con los grupos (g) de las materias de algoritmos (ma). Para cada grupo
se programan varios talleres en las salas de cmputos (s) de la universidad. Cada taller
se realiza en una fecha (f) y empieza a una hora especfica (h). Suponga solo un
semestre.
p y mo: cdula de las personas,
s: # de la sala de cmputo,

g: consecutivo/materia,
f: da, mes, ao,

ma: cdigo nico,


h: hora militar.

La entidad Taller (pmogmasfh) tiene las siguientes restricciones:


a. Un taller lo realiza un solo grupo, pero un grupo realiza varios talleres.
b. En cada taller participa slo un profesor y un monitor.
c. Cada taller se realiza en una sola sala de cmputo, pero en una sala de cmputo se
realizan varios talleres en el da.
d. Un profesor puede hacer varios talleres en la misma fecha, pero nunca con el mismo
monitor.
e. Un grupo slo puede tener un taller en el da.
f. En un momento dado en una sala de cmputo se lleva a cabo un solo taller.
g. En un momento dado una persona slo puede estar en una sala de cmputo.
11

MODELADO

Guillermo Londoo A.

10. El ftbol profesional colombiano tiene un torneo (to) cada ao, el torneo del 2002, el
torneo del 2003, etc. En los torneos participan equipos (eq) de las principales ciudades
del pas. Los equipos tienen jugadores (ju), unos en calidad de prstamo y otros
propios. Suponga que las propiedades hacen referencia a cdigos y que stos son
nicos.
a. Muchos jugadores cambian de equipo al final del torneo, son vendidos o
transferidos, pero durante el torneo tienen que quedarse jugando en el mismo equipo
todo el ao, en una determinada modalidad (mo: prstamo o propio), y no pueden
cambiar de modalidad durante el torneo.
b. En un partido en una fecha (f: da, mes, ao), un equipo juega de local (eql) y el
otro de visitante (eqv), y la taquilla (ta) del partido es solo para el equipo local.
c. Un equipo puede jugar ms de un partido en una fecha, pero no con el mismo
contrincante.
d. Un partido se juega en un solo estadio (es) aunque en un estadio se pueden jugar
varios partidos, an en una misma fecha.
e. Un jugador ocupa solo una posicin de juego (po) en un partido, pero puede ocupar
otra posicin en un partido diferente.
f. Un jugador puede jugar ms de un partido por da.
g. Un rbitro (ar) desempea un solo rol (ro: central, juez de lnea 1, juez de lnea 2 o
cuarto rbitro), en un partido y un partido es pitado por cuatro rbitros, cada uno
desempeando un solo rol.
h. Un rbitro puede pitar varios partidos en un da.

Reglas De Inferencia
Existe un conjunto completo de reglas que permiten encontrar las dependencias derivables
de una entidad, generadas por un conjunto de dependencias dado. Estas reglas son vlidas
porque no generan dependencias incorrectas y conforman un conjunto completo, ya que
permiten deducir todas las dependencias derivables de la entidad. Sea una entidad E con un
conjunto de propiedades A = (a1, a2, a3,., an) y un conjunto de dependencias D = (d1, d2,
d3,.dn). Sean x, y, m, n y z subconjuntos de A.
Las tres reglas bsicas son:
1. Reflexividad.
Si y x (x y).
Todo conjunto de propiedades se implica a s mismo y a cualquier subconjunto de l.
2. Aumentatividad. Si (x y) (z x) (z y).
Adicionar propiedades al implicante no altera la dependencia.
3. Transitividad.

Si (x y) (y z) (x z).

Estas tres reglas bsicas dan origen a la regla de proyectividad:


12

MODELADO

4. Proyectividad.

Guillermo Londoo A.

Si (x y) (z y) (x z)

Si x implica y entonces x implica a cualquier subconjunto de y.


Si (x abc) (x a), (x b), (x c), (x ab), (x bc), (x ac)
Las cuatro reglas anteriores dan origen a la regla de aditividad:
5. Aditividad.

Si (x y) (m n) (x m) (y n)

Las cinco reglas anteriores dan origen a la seudotransitividad:


6. Seudotransitividad. Si (x y) (ym z) (xm z)
Ejemplo: Sea E(tuvxyz) con D = (t u; t v; vx y; vx z; u y), demostrar
que las siguientes dependencias se pueden derivar a partir de D, utilizando las reglas de
inferencia.
(t y)
: (t u) (u y) (t y) por transitividad.
(vx yz) : (vx y) (vx z) (vx yz) por aditividad.
(tx z)
: (t v) por reflexividad (x x) por aditividad (tx vx).
Ahora (tx vx) (vx z) (tx z) por transitividad.
Otra forma: (t v) (vx z) (tx z) por seudotransitividad
Ejercicios
1) Derive las reglas 4, 5 y 6.
2) Sea E(abcde) con D = (a b; e d; d e) demostrar que ac abcde.
1) Sea E(abcdefg) con D = (abc deg; ab cf; cd ef; eg ac)
Demuestre que (ab d) y que (bcdg a).

Cierre De Un Conjunto De Propiedades


Nuestro principal inters est en encontrar para una entidad aquellas propiedades
implicadas por un conjunto dado de propiedades x. Para hallarlas, necesitamos el conjunto
completo de dependencias que se puedan generar, aplicando en forma exhaustiva las reglas
de inferencia; pero esta labor es larga y difcil. Por fortuna, existe un enfoque ms corto y
eficiente calculando el cierre de x, llamado x+. El cierre de x es el conjunto de todas las
propiedades implicadas por x (x a1a2), con respecto a un conjunto de dependencias D.
Si conocemos el cierre de x, conocemos todas las dependencias x z que tienen a x
como implicante y z x+. Es decir, la dependencia x z se cumple s y slo s z x+.

13

MODELADO

Guillermo Londoo A.

El algoritmo para el clculo del cierre de un conjunto de propiedades x es el siguiente:


x+ = x
Mientras que (x+ cambie) haga
Para cada dependencia (y z) de D haga
Si ((y x+) (z x+)) (x+ = x+ z)
fin para
fin Mientras que.
En el primer paso, se introducen al cierre todas las propiedades de x por
reflexividad,
al comenzar el ciclo Mientras que se cumple (x x+),
si (y x+) (y z) podemos agregar z a x+ por transitividad,
o si (y x+) (x+ y) por reflexividad,
o si (x x+) (x+ y) (x y) por transitividad
o si (x y) (y z) (x z) por transitividad
o si (x x+) (x z) (x (x+ z)) por aditividad
o en consecuencia, cualquier propiedad que resulte del algoritmo estar en x+.
Ejemplo 4.4: Sea E(tuvxyz) con D = (t u; t v; vx y; vx z; u y) use el
algoritmo de cierre para mostrar que (tx)+ = (tuvxyz).
1. Haga el cierre (tx)+ = (tx).
2. Tome la primera dependencia t u y observe que t (tx)+ entonces incluimos a u en
(tx)+ = (txu).
3. Tome la segunda dependencia t v y puesto que t (tx)+ (tx)+ = (txuv).
4. La tercera y cuarta dependencia incluyen a yz, entonces (tx)+ = (tuvxyz).
5. Cualquier ciclo adicional sobre D no altera el cierre y finaliza el algoritmo.
Utilizando la entidad de cierre se puede probar que la dependencia tx yz es vlida, ya
que yz (tx)+. Este mecanismo de prueba es mucho ms simple que la utilizacin directa
de las reglas de inferencia.
Ejercicios
1) Sea E(tuvxyz) con D = (t u; t v; vx y; vx z; u y)
encuentre el cierre de t, z y vx.
2) Sea E(abcdefg) con D = (abc deg; ab cf; cd ef; eg ac)
Demuestre que (ab d) y que (bcdg a).
3) En la siguiente entidad ProveedorArt el precio depende tanto del artculo como del
proveedor:

14

MODELADO

Guillermo Londoo A.

CdProv Nombre, Telfono


CdArt Descripcin
CdProv, CdArt Precio

Demuestre que el cdigo del artculo no implica el precio.

Conjunto No Redundante De Dependencias


Un conjunto de dependencias D es redundante cuando posee propiedades o dependencias
redundantes:
Propiedad redundante. Un propiedad a x
dependencia (x y) si se cumple que (x - a) y.

se dice que es redundante en la

Dependencia redundante. Una dependencia d que pertenece a un conjunto de


dependencias D, se dice que es redundante si puede derivarse del conjunto de
dependencias (D - d), mediante la aplicacin de las reglas de inferencia.
El algoritmo que nos permite disminuir redundancias de un conjunto de dependencias D,
tiene los siguientes pasos:
1.

Utilice la regla de proyectividad para convertir toda dependencia cuyo implicado sea
compuesto (x a1a2.....an), en n dependencias (x a1; x a2;..... x an) cuyos
implicados sean simples.

2.

Elimine propiedades redundantes:


Para cada dependencia x a (con x compuesto) de D haga
Para cada propiedad b x
Si a (x - b)+
entonces reemplace (x a) por ((x-b) a) en D
fin si
fin para
fin para

15

MODELADO

Guillermo Londoo A.

3. Elimine dependencias redundantes:


Para cada dependencia d = x a de D haga
F=D-d
Si a x+F D = F.
fin si
fin para.
Parece lgico eliminar primero las dependencias redundantes y luego las propiedades
redundantes, pero el siguiente ejemplo muestra que el orden establecido en el algoritmo es
el correcto.
Ejemplo 4.5. Elimine propiedades y dependencias redundantes del conjunto:
D = (xy z; z y; x y)
Aplique el algoritmo de eliminacin de redundancias y encuentre el conjunto de
dependencias equivalente no redundante. A modo de ejemplo, aplicaremos el algoritmo
intercambiando los pasos dos y tres. Compare el conjunto de dependencias que obtuvo
aplicando el algoritmo en la forma correcta, con el conjunto de dependencias que encuentre
intercambiando los pasos dos y tres.
1. El lado derecho de todas las dependencias ya es simple.
3. Para la dependencia xy z F = (z y; x y) y (xy)+F = (xy).
Puesto que z (xy)+F esta dependencia no es redundante.
Para la dependencia z y, F = (xy z; x y) y (z)+F = (z).
Puesto que y (z)+F esta dependencia no es redundante.
Para la dependencia x y, F = (xy z; z y) y (x)+F = (x).
Puesto que y (x)+F esta dependencia no es redundante.
2. Para la dependencia xy z
Para el propiedad x, z y+ = y; por tanto, el propiedad x no es redundante.
Para el propiedad y, z x+ = (xyz); por tanto, el propiedad y es redundante.
El conjunto de dependencias obtenido D = (x z; z y; x y) tiene an la
dependencia redundante x y derivable por transitividad. Eliminar primero las
propiedades redundantes y luego las dependencias no elimina completamente las
redundancias. Ahora elimine primero las propiedades redundantes y luego las dependencias
redundantes.
2. Para la dependencia xy z
Para la propiedad x vemos que z y+ = y; por tanto, x no es redundante.
Para la propiedad y vemos que z x+ = (xyz); por tanto, y es redundante.
16

MODELADO

Guillermo Londoo A.

Reemplazamos xy z por x z en D = (x z; z y; x y).


3. Para la dependencia x z, F = (z y; x y) y (x)+F = (xy).
Puesto que z (x)+F esta dependencia no es redundante.
Para la dependencia z y, F = (x z; x y) y (z)+F = (z).
Puesto que y (z)+F esta dependencia no es redundante.
Para la dependencia x y, F = (x z; z y) y (x)+F = (xyz).
Puesto que y (x)+F esta dependencia es redundante.
Por tanto D = F = (x z; z y).
Eliminar primero las propiedades redundantes y luego dependencias conduce a obtener un
conjunto equivalente no redundante de dependencias.
Ejercicios: Encuentre un conjunto equivalente no redundante para las siguientes
dependencias:
D = (ab c; c a ; bc d; acd b; d eg; be c; cg bd; ce ag)
R/ D = (ab c; bc d; d eg; be c; cg b; c a; ce g)
1.

2) D = (cg b; ce g; ab c; c a; bc d; cd b; d eg; be c)
R/ D = (cg bd; ce ag; ab c; c a; bc d; acd b; d eg; be c)
3) D = (a bcdefghi; b defghi; bc adefghij; g hi)
R/ D = (a bc; b defg; bc aj; g hi)
4) D = (rnc pt; rnp tc; rt cnp)
R/ D = (rnc p; rnp t; rt cn)
5) D = (adis tmg; adfs tmg; adip s; adfp s; adie s; adfe s;
aetm g; atmgd i; aetmgd f)
R/ D = (adis tmg; adfs tmg; adip s; adfp s; adie s; adfe s;
aetm g; atmgd i; aetmgd f)
6) D = (pmf ag; sfh ag; pfh ag; mfh ag; agf pm; sfh pm;
pfh m; mfh p; pmf s; agf s; pfh s; mfh s; agf h)
R/ D = (pmf ag; sfh m; mfh p; agf s; pfh s; agf h)

Identificadores Externos de una Entidad Fuerte


Sea E una entidad fuerte con un conjunto de propiedades A = { a1, a2, a3,, an } y un
conjunto de dependencias D. Sea x A, decimos que x es un identificador de la entidad E,
basado en el estado de las instancias de E si:
17

MODELADO

Guillermo Londoo A.

1.- Todos los componentes de x son obligatorios.


2.- x a1, a2, a3,, an , es decir x+ = A
3.- No existe ningn subconjunto propio y x tal que y a1, a2, a3,, an.
Definimos un conjunto de propiedades x como nico, cuando no existen dos instancias
diferentes de la entidad con el mismo valor en x. La identidad es diferente a la unicidad, un
conjunto de propiedades puede ser nico y no ser un identificador de la entidad.
Para encontrar los identificadores de una entidad fuerte usamos el siguiente algoritmo:
1. Elimine redundancias del conjunto de dependencias.
Clasifique las propiedades que aparecen en las dependencias en tres grupos:

2.

g1 = {propiedades obligatorios que slo aparecen en el lado izquierdo de las


dependencias, o no aparecen en el conjunto D}
g2 = {propiedades que slo aparecen en el lado derecho de las dependencias}
g3 = {propiedades obligatorios que aparecen en ambos lados en las dependencias}
Las propiedades de g1 hacen parte de todos los identificadores candidatos, las de g2 no
hacen parte de ningn identificador y las de g3 pueden o no hacer parte de los
identificadores.
Si (g1+ = A)
el identificador es nico e igual a g1.
sino Para cada combinacin x de g1 con los elementos de g3
Si (x ningn identificador ya encontrado) (x+ = A)
entonces x es un identificador
fin para
fin si

3.

Ejemplo: Encontrar todos los identificadores de la entidad E que tiene como propiedades
obligatorios A = (abcde) y dependencias D = (ab c, ce d, ad b).
g2 =

1.-

g1 = (ae)

g3 = (cdb)

2.-

g1+ = (ae) A ; por tanto, debemos hacer todas las combinaciones entre g1 y los
elementos de g3:

(aec)+ = (aecdb) = A I1 = aec. No probar ninguna otra combinacin que contenga aec.
(aed)+ = (aedbc) = A I2 = aed. No probar ninguna otra combinacin que contenga aed.
(aeb)+ = (aebcd) = A I3 = aeb. No probar ninguna otra combinacin que contenga aeb.
Puesto que los elementos de g1 hacen parte de todos los identificadores candidatos, no
18

MODELADO

Guillermo Londoo A.

quedan ms combinaciones por probar. Los identificadores son: I1 , I2 , I3.


Ejercicios: Encontrar los identificadores de las siguientes entidades, suponiendo que todos
las propiedades son obligatorios:
1. E(tuvxyz) con D = (t u; t v; vx y; vx z; u y)
2. E(xyz) con D = (x z; z y)
3. E(abcdeg) con D = (ab c; bc d; d e; d g; be c; cg b; c a; ce g)
4. E(abcdeg) con D = (cg d; ce g; ab c; c a; bc d; cd b; d e; d g; be c)
5. E(abcdefghij) con D = (a bc; b defg; bc aj; g hi)
R/ I = (a, bc)
6. E(abcdefg) con D = (abc deg; ab cf; cd ef; eg ac)
7. E(abcdef) con D = (ab cd; ac bef; df ae; be cd)
R/ I = (ab, ac, bdf, bef, cdf)
8. E(abcdefghk) con D = (ab cd; abe fg; ce hk; ah bfk)
9. En un nacimiento en una fecha (f) participan mdicos gineclogos (g), enfermeras (e),
una madre (m) y uno o varios bebes (b). Encuentre los identificadores del entidad
nacimiento, si participa:
1. un solo gineclogo, un solo beb y puede o no haber una enfermera. Si nacen
mellizos, trillizos, etc., cada uno se considera un nacimiento diferente.
R/ I = (b, mf, gf, ef)
2. un solo gineclogo, un solo bebe y una o varias enfermeras
3. un solo bebe, uno o ms gineclogos y una o varias enfermeras
f: ao, mes, da, hora, minuto, segundo
g, e, ma: cdula
NUIP (Nmero nico de identificacin Personal)

Relaciones Entre Entidades


Los objetos contribuyen al comportamiento de un sistema colaborando entre s a travs de
sus relaciones. Por lo tanto, al modelar no slo hay que identificar las entidades que
conforman el vocabulario del sistema, tambin hay que modelar cmo se relacionan estas
entidades entre s.
En el modelado orientado a objetos hay tres tipos de relaciones especialmente importantes:
asociaciones, que representan relaciones estructurales entre objetos, generalizacin, que
conecta entidades generales con sus especializaciones, y dependencia que representa
relaciones de uso entre objetos. Estos tres tipos de relaciones cubren la mayora de las
19

MODELADO

Guillermo Londoo A.

formas importantes en que colaboran los objetos. Como era de esperar, tambin se
corresponden con las formas que ofrecen los lenguajes de programacin orientada a objetos
para conectarlos.

Asociacin
Una asociacin es un conjunto de enlaces estructurales, con caractersticas especficas,
entre las ocurrencias de las entidades. Un enlace denota el camino por medio del cual un
objeto utiliza los servicios de otro, o a travs del cual un objeto puede comunicarse con
otro. Los enlaces de inters deben preservarse durante algn tiempo: puede tratarse de
milisegundos o aos segn el contexto; en otras palabras, deben existir enlaces entre
objetos que necesitan conocerse o recordarse durante algn tiempo. Sin asociaciones,
tenemos objetos aislados e incapacitados de trabajar juntos.
Para dos entidades A y B con instancias a 1...a5 y b1...b3 respectivamente y enlaces de inters
y significado de tipos X y Y entre sus ocurrencias:

a1
a2
a3
a4
a5

b1

b2

b3

Los enlaces, representados por parejas ordenadas de tipo X, son elementos del conjunto:
X = { (a1,b1), (a1,b3), (a5,b2) }
y los enlaces, representados por parejas ordenadas de tipo Y, son elementos del conjunto:
Y = {(a1,b1), (a2,b3), (a3,b2)}
Dos o ms entidades pueden tener cualquier nmero de asociaciones de diferente tipo.
Si pensamos en las entidades A y B como conjuntos:
A = a a A = { a1,a2,a3,a4,a5 }

B = b b B = { b1,b2,b3 }

El producto cartesiano entre A y B est definido como:


A x B = (a,b) a A b B = { (a1,b1),(a1,b2)(a5,b4),(a5,b5) }

20

MODELADO

Guillermo Londoo A.

Una asociacin es un subconjunto del producto cartesiano entre las ocurrencias de las
entidades que participan en ella. Para tres entidades A, B y C, con las mismas ocurrencias
anteriores para A y B, y con ocurrencias c1, c2, c3 para C, el producto cartesiano entre A, B
y C es:
A x B x C (a, b, c) a A b B c C = { (a1, b1, c1),(a5, b5, c3) }
Una asociacin ternaria entre las entidades A, B y C es un subconjunto de este producto
cartesiano. El grado de la asociacin est dado por el nmero de entidades que la
conforman.

Asociaciones Binarias
Las asociaciones ms frecuentes son las que se dan entre dos entidades; es decir, las
asociaciones binarias. Por ejemplo, la entidad Hombre conformada por los estudiantes
masculinos de este curso, y la entidad Mujer conformada por las estudiantes del curso,
pueden tener una asociacin de amistad mongama entre sus ocurrencias. El conjunto de
enlaces entre las ocurrencias de Hombre y Mujer conforman una asociacin binaria de tipo
amistad mongama, la cual seala que cada hombre es amigo de una y slo una mujer y
cada mujer es amiga de uno y slo un hombre.
Cada enlace de la asociacin es una pareja ordenada de referencias a objetos y el dominio
de la asociacin es el conjunto de enlaces. Un objeto dado puede aparecer ms de una vez
dentro del conjunto de enlaces, o ms de una vez dentro del mismo enlace en diferentes
posiciones, si la definicin de la asociacin lo permite. El nmero de veces que aparece la
referencia a un objeto en el conjunto de enlaces, debe ser compatible con la multiplicidad
de cada extremo de la relacin. Toda asociacin tiene dos direcciones y cada direccin tiene
dos caractersticas:
Rol que juega la entidad origen.
Multiplicidad.
MUJER
Estudiante femenina de
este curso.

HOMBRE
Estudiante masculino de
este curso.

Ivette
Sandra V.
Liliana
Juliana
Elizabeth
Martha
Sandra T.

Andrs
Fernando
Mao
Alex
Diego
Hctor
Felipe
Gustavo
JuanCarlos S.
Juan Carlos D.
21

MODELADO

Guillermo Londoo A.

Para la asociacin de amistad mongama en la direccin Mujer - Hombre:


Rol que juega la entidad origen: amiga de
Multiplicidad: 1..1
Y en la direccin Hombre - Mujer:
Rol que juega la entidad origen: amigo de
Multiplicidad: 0..1
La multiplicidad de un extremo relacin declara cuantos objetos pueden cumplir con el rol
definido para ese extremo relacin. La multiplicidad de la entidad destino limita el nmero
de estos objetos que pueden estar asociados con un objeto origen dado.
La cardinalidad mxima, en la direccin Mujer - Hombre, representa el nmero mximo de
instancias hombre que estn asociadas con cualquier instancia mujer, en este caso toma el
valor uno. Si una mujer cambia de amigo no queda memoria de su amistad anterior.
En la direccin Mujer - Hombre la asociacin se lee:
Cada mujer debe ser amiga de uno y slo un hombre
Y en la direccin Hombre - Mujer la asociacin se lee:
Cada hombre puede ser amigo de una y slo una mujer.
La multiplicidad se representa con las cardinalidades mnima y mxima separadas por dos
puntos.
cardinalidadMnima..cardinalidadMxima
La multiplicidad es una restriccin sobre el tamao de las cardinalidades, la cardinalidad
mnima puede ser cero o uno y la cardinalidad mxima puede ser uno o muchos. En el
modelo de entidades de Visual Studio, las multiplicidades pueden ser: cero o uno (0..1),
cero o muchos (*), mnimo uno mximo uno (1).
Una asociacin se representa grficamente con una lnea entre las entidades indicando la
multiplicidad de cada extremo de la asociacin al lado de la entidad destino. Los roles para
cada direccin se pueden colocar en la casilla propiedades de navegacin de cada entidad, o
en la hoja de propiedades de cada entidad. La representacin grfica de la asociacin
mongama uno a uno entre las entidades Hombre y Mujer es la siguiente:
22

MODELADO

Guillermo Londoo A.

Asociacin de amistad poligmica uno a muchos. Supongamos ahora que la poltica de


amistad entre hombres y mujeres es diferente, un hombre puede tener muchas amigas pero
una mujer debe tener slo un amigo.
MUJER
Estudiante femenina de
este curso

HOMBRE
Estudiante masculino de
este curso.

Ivette
Sandra V.
Liliana
Juliana
Elizabeth
Martha
Sandra T.

Andrs
Fernando
Mao
Alex
Diego
Hctor
Felipe
Gustavo
JuanCarlos S.
Juan Carlos D.

Su diagrama es el siguiente:

Cada mujer debe ser amiga de uno y slo un hombre.


Cada hombre puede ser amigo de una o ms mujeres.

23

MODELADO

Guillermo Londoo A.

Asociacin de amistad polindrica uno a muchos. Supongamos ahora que la poltica de


amistad entre hombres y mujeres es tal que cada mujer debe tener uno o ms amigos, pero
cada hombre slo puede tener una amiga.
MUJER
Estudiante femenina de
este curso.

HOMBRE
Estudiante masculino de
este curso.

Ivette
Sandra V.
Liliana
Juliana
Elizabeth
Martha
Sandra T.

Andrs
Fernando
Mao
Alex
Diego
Hctor
Felipe
Gustavo
JuanCarlos S.
Juan Carlos D.

Su diagrama de entidades correspondiente es:

Cada mujer puede ser amiga de uno o ms hombres


Cada hombre puede ser amigo de una y slo una mujer
Las asociaciones uno a uno y uno a muchos representan dependencias entre los
identificadores de las dos entidades:
Asociacin poligmica muchos a uno equivale a: IdM IdH.
Asociacin polindrica uno a muchos equivale a: IdH IdM.
Asociacin monogmica uno a uno equivale a las dos dependencias anteriores.

24

MODELADO

Guillermo Londoo A.

Asociacin de amistad muchos a muchos. Supongamos ahora que la poltica de amistad


entre hombres y mujeres es tal que cada mujer puede tener uno o ms amigos y cada
hombre puede tener una o ms amigas.
HOMBRE
Estudiante masculino de
este curso

MUJER
Estudiante femenina de
este curso

Ivette
Sandra V.
Liliana
Juliana
Elizabeth
Martha
Sandra T.

Andrs
Fernando
Mao
Alex
Diego
Hctor
Felipe
Gustavo
JuanCarlos S.
Juan Carlos D.

Su diagrama de entidades correspondiente es:

Cada mujer puede ser amiga de uno o ms hombres.


Cada hombre puede ser amigo de una o ms mujeres.

Entidad Dbil
Tomemos como ejemplo las entidades Banco y Cuenta y supongamos que no existe
ninguna regla para numerar las cuentas de los bancos, que evite que los nmeros de cuenta
se repitan en distintos bancos. Adems, la entidad Cuenta depende de la existencia de la
entidad Banco, lo que significa que no puede existir una Cuenta sin su Banco asociado. Si
se elimina una ocurrencia de Banco deben eliminarse todas las ocurrencias de Cuenta
asociadas a l. La entidad Banco es dominante y la entidad Cuenta es dependiente. Se dice
que una entidad dependiente es dbil si necesita del identificador de su entidad dominante
para poder identificarse.
Bancos
Cdigo Nombre
01
Repblica
02
Colombia

25

Cuentas
Nmero
Saldo
176459821 1.000.000
769035657
545.000
176459821 1.000.000
487755190
157.000

MODELADO

Guillermo Londoo A.

Si cada banco tiene su propio sistema de numeracin de cuentas varias cuentas podran
tener el mismo nmero; ms an, dos cuentas pueden tener el mismo nmero y el mismo
saldo. La entidad Cuenta no puede identificarse a travs de sus propiedades, necesita del
identificador de su entidad dominante Banco. La dependencia
Cdigo, Nmero Saldo
Se cumple en la entidad Cuenta, el nmero de la cuenta no es suficiente para implicar el
saldo. El cdigo del banco y el nmero de la cuenta identifican una cuenta, y la relacin
entre banco y cuenta es una asociacin dependiente. En las asociaciones dependientes, el
identificador de la entidad fuerte aparece como parte del identificador de la entidad dbil.
La asociacin en la direccin entidad dbil - entidad fuerte, debe tener multiplicidad 1.

Es posible tener una entidad dbil cuya entidad dominante es a su vez una entidad dbil.
Por ejemplo, adicione la entidad Transaccin al modelo anterior. Si dentro de cada cuenta
se numeran consecutivamente sus transacciones pueden existir muchas transacciones con el
mismo consecutivo, valor y tipo. La dependencia para la entidad Transaccin es
Cdigo, Nmero, Consecutivo Valor, Tipo
La entidad Transaccin no logra identificarse a travs de sus propiedades, necesita del
identificador de cuenta Cdigo y Nmero. El identificador de transaccin est compuesto
por Cdigo, Nmero y Consecutivo. El nmero de la cuenta y el consecutivo no son
suficientes para implicar el valor y el tipo de transaccin, puesto que pueden existir varias
transacciones con el mismo nmero de cuenta y consecutivo.

26

MODELADO

Guillermo Londoo A.

Una entidad tambin puede ser dependiente de varias entidades fuertes. Por ejemplo, en el
caso de la asociacin de amistad muchos a muchos entre las entidades Hombre y Mujer,
podemos estar interesados en la fecha en la cual iniciaron su amistad y la fecha en la cual la
terminaron. Estas fechas no son propiedades de la entidad Hombre, ni de la entidad Mujer,
son propiedades de la asociacin entre las dos. Una asociacin con propiedades se debe
reemplazar por una entidad y asociaciones binarias con las entidades que conformaban la
asociacin. Colocamos entonces la entidad asociativa Amistad, en lugar de la asociacin
muchos a muchos entre las entidades Hombre y Mujer:

Cada mujer puede tener una o ms amistades


Cada amistad debe tener como amiga a una y slo una mujer
Cada amistad debe tener como amigo a uno y slo un hombre
Cada hombre puede tener una o ms amistades
Las ocurrencias de la entidad Amistad son objetos con referencias a mujer y hombre, donde
la mujer desempea el rol de amiga y el hombre el rol de amigo. El conjunto de ocurrencias
que tienen a Mara como amiga representa todas sus amistades. Esta entidad asociativa
dbil es completamente dependiente de las entidades fuertes Hombre y Mujer.
Encuentre las dependencias y los identificadores bajo las siguientes restricciones de
amistad entre un hombre y una mujer:
No existen dos amistades entre un hombre y una mujer. Un hombre y una mujer
solo pueden tener una amistad a lo largo de su vida, pero cada uno puede tener
varias amistades con otras personas distintas.
27

MODELADO

Guillermo Londoo A.

Un hombre o una mujer puede tener varias amistades, pero nunca empieza dos
amistades en la misma fecha (da, mes, ao).
Un hombre y una mujer pueden tener varias amistades, pero nunca empiezan dos
amistades en la misma fecha con la misma persona (da, mes, ao).

Asociacin Reflexiva
Los enlaces de una asociacin tambin pueden darse entre las instancias de la misma
entidad; en este caso, la asociacin se conoce con el nombre de reflexiva o auto asociacin.
Por ejemplo, supongamos una asociacin reflexiva de amistad muchos a muchos entre las
ocurrencias de la entidad Mujer: Su representacin en trminos de conjuntos y su diagrama
son los siguientes:

MUJER

Ivette
Sandra V.
Liliana
Juliana
Elizabeth
Martha
Sandra T.

Cada mujer puede ser amiga de una


o ms mujeres.

Las asociaciones reflexivas tambin pueden ser uno a muchos; por ejemplo, supongamos la
entidad Empleado con una asociacin reflexiva que describa quin es el jefe de quin.
Suponemos que todo empleado tiene un slo jefe, que existe un jefe que no depende de
nadie y existen empleados que no son jefes de nadie.

28

MODELADO

Guillermo Londoo A.

Cada empleado puede ser jefe


de uno o ms empleados.
Cada empleado puede tener como
jefe uno y slo un empleado.

La cardinalidad mnima en la direccin Jefe debe ser cero, puesto que existe al menos un
empleado que no tiene jefe. La cardinalidad mnima en la direccin JefeDe debe ser cero,
puesto que existen empleados que no son jefes de nadie. Este tipo de asociaciones
reflexivas uno a muchos es muy utilizado para representar jerarquas entre objetos.
Es posible tener asociaciones reflexivas uno a uno; por ejemplo, si algunos empleados
trabajan en parejas:

Cada empleado puede tener como


compaero a uno y slo un empleado.

Asociacin Enearia
En un sistema de registro acadmico tenemos entidades fuertes como: Estudiante, Materia,
Profesor y las siguientes asociaciones:
Cada estudiante ha aprobado una o ms materias y cada materia fue aprobada por uno o
ms estudiantes.
Cada profesor ha dictado una o ms materias y cada materia fue dictada por uno o ms
profesores.
Cada Estudiante ha aprobado con uno o ms profesores y cada profesor aprob a uno o
ms estudiantes.

29

MODELADO

Guillermo Londoo A.

Las asociaciones de este modelo representan las materias aprobadas por los estudiantes, los
estudiantes aprobados por los profesores y las materias dictadas por los profesores; pero a
partir de este modelo, no se puede saber quin fue el profesor que aprob a un estudiante en
una determinada materia, esta es una asociacin ternaria que involucra a ms de dos
entidades, y esa informacin no se puede encontrar a partir de asociaciones binarias.
Necesitamos una asociacin ternaria entre las entidades Materia, Estudiante y Profesor, la
cual representa el hecho de que un estudiante aprob una materia especfica, evaluado por
un determinado profesor. Desde el punto de vista de conjuntos podemos representar algunas
ocurrencias de la asociacin ternaria as:
Profesor

Estudiante
t2

Hugo
Paco

Mafalda
t1

Silvestre

Luis

Carlitos
t3

Matemtica Fsica Biologa

Materia
Donde t1, t2, y t3 corresponden a: Mafalda aprob Matemticas con el profesor Hugo,
Carlitos aprob Fsica con el profesor Luis y Silvestre aprob Biologa con el profesor
Paco. Cada enlace ternario est constituido por tres referencias a las entidades que
participan en la asociacin ternaria. Todas las ocurrencias de la asociacin ternaria,
correspondientes a un estudiante dado, conforman el conjunto de materias aprobadas por
dicho estudiante y el profesor que evalu cada una de ellas.
En una relacin ternaria, la multiplicidad indica con cuantas ocurrencias de una entidad
puede estar relacionado un conjunto de ocurrencias de los dems entidades. Por ejemplo, un
estudiante y un profesor pueden estar relacionados con mltiples ocurrencias de materia, un
profesor y una materia con mltiples estudiantes, un estudiante y una materia slo pueden
30

MODELADO

Guillermo Londoo A.

estar asociados con un profesor puesto que un estudiante aprueba una materia slo una vez,
esto implica la dependencia Cdigo, Nombre Cdula.
La calificacin que un estudiante obtuvo en una materia aprobada no es una propiedad del
estudiante ni de la materia ni mucho menos del profesor, esta es una propiedad de la
asociacin ternaria. Toda asociacin enearia se puede remplazar, sin prdida de
informacin, por una entidad asociativa y asociaciones binarias entre la entidad asociativa y
las entidades que conforman la asociacin enearia. Por ejemplo, reemplacemos la
asociacin ternaria por la entidad asociativa Materia Aprobada.

La entidad asociativa Materia Aprobada cumple con la dependencia Cdigo, Nombre


Cdula, Calificacin y su identificador es Cdigo y Nombre. Las asociaciones de la
entidad asociativa con los dems entidades se derivan de la asociacin ternaria.
Ejercicio.
Analice la asociacin ternaria anterior suponiendo que cada materia es dictada por
un nico profesor y esta asociacin no cambia con el tiempo.
Analice la asociacin ternaria materia matriculada

ENTIDAD INDEPENDIENTE
Mezcla de Informacin

31

MODELADO

Guillermo Londoo A.

El mecanismo de abstraccin que utilizamos para hacer la clasificacin de la informacin


tiene una alta componente subjetiva, que puede conducirnos a mezclar entidades en
nuestros modelos. La mezcla de entidades conduce a la redundancia, inconsistencia y a
problemas en la gestin (creacin, eliminacin y actualizacin) de la informacin.
Ejemplo: Analicemos la entidad ProveedorArticulo la cual claramente mezcla propiedades
de dos entidades diferentes. Las propiedades son obligatorias.

CdigoP Nombre, Telfono


CdigoA Descripcin
CdigoP, CdigoA Precio

Apliquemos el algoritmo de determinacin de identificadores para entidades fuertes:


1. a) Mediante proyectividad divida las dependencias con implicado compuesto, en
dependencias con implicado simple.
D = (CdigoP Nombre; CdigoP Telfono; CdigoA Descripcin;
CdigoP, CdigoA Precio)
b) Elimine propiedades redundantes.
Para la dependencia CdigoP, CdigoA Precio
Para el propiedad CdigoP: Precio CdigoA+ CdigoP no es redundante.
Para el propiedad CdigoA: Precio CdigoP+ CdigoA no es redundante.
c) Elimine dependencias redundantes.
Para la dependencia CdigoP Nombre :

F = (CdigoP Telfono; CdigoA Descripcin; CdigoP, CdigoA Precio)

Nombre (CdigoP)+F dependencia no redundante.


Para la dependencia CdigoP Telfono:

F = (CdigoP Nombre; CdigoA Descripcin; CdigoP, CdigoA Precio)

Telfono (CdigoP)+F dependencia no redundante.


Para la dependencia CdigoA Descripcin:
F = (CdigoP Nombre; CdigoP Telfono; CdigoP, CdigoA Precio)
Descripcin (CdigoA)+F dependencia no redundante.
Para la dependencia CdigoP, CdigoA Precio :
32

MODELADO

Guillermo Londoo A.

F = (CdigoP, Nombre; CdigoP Telfono; CdigoA Descripcin)


Precio (CdigoP, CdigoA)+F dependencia no redundante.
2. g1 = (CdigoP, CdigoA)

g2 = (Nombre, Telfono, Descripcin, Precio)

C3 =

3. g1+ = (CdigoP, CdigoA)+ = (CdigoP, CdigoA, Nombre, Telfono, Descripcin,


Precio)

I = (CdigoP, CdigoA)
Todo conjunto de ocurrencias de esta entidad debe cumplir con las restricciones
establecidas por sus dependencias y su identificador:
ProveedorArtculo
CdigoP Nombre
p50
Juan
p32
Pedro
p50
Juan
p32
Pedro
p38
Pedro

Telfono
5576581
3349631
5576581
3349631
8841935

CdigoA Descripcin Precio


A10
tuerca
20
A20
tornillo
30
A20
tornillo
32
A10
tuerca
18
A49
atornillador
45

Los problemas que presenta esta entidad son los siguientes:


1. Redundancia. Duplicacin de la informacin de proveedores y artculos. El nombre y el
telfono del proveedor se repiten por cada ocurrencia del mismo, igual pasa con la
descripcin del artculo. Esta redundancia puede conducir a inconsistencia en la
informacin.
2. Anomalas de creacin. Puesto que el identificador est compuesto por el cdigo del
proveedor y el cdigo del artculo, no se puede crear un proveedor sin un artculo
asociado a l ni viceversa, ya que todas las componentes del identificador son
obligatorias. No podemos tener informacin de un proveedor hasta no saber qu
artculos puede suministrar, ni podemos guardar la informacin de un artculo hasta no
saber quin lo puede proveer.
3. Anomalas de actualizacin. Debido a la redundancia hay que actualizar en varias
partes la misma informacin. Inadvertidamente podemos por ejemplo, cambiar el
telfono de Juan en la primera ocurrencia pero no en las dems, lo que da lugar a
inconsistencias y a violacin de la dependencia CdigoP Telfono,
4. Anomalas de eliminacin. Borrar un proveedor implica borrar la informacin de un
artculo, si es el nico que lo provee, y viceversa. Al borrar la informacin del
atornillador no tenemos por qu perder la informacin del proveedor p38.
La entidad ProveedorArtculo presenta todos estos problemas debido a la mezcla de
entidades. Separar las entidades mezcladas no es una tarea fcil en un sistema complejo si
33

MODELADO

Guillermo Londoo A.

se hace de manera intuitiva, pero afortunadamente disponemos de las dependencias para la


construccin de un modelo sin entidades mezcladas. Las dependencias entre las
propiedades permiten:
1.
2.
3.
4.

Expresar formalmente restricciones sobre cada entidad.


Encontrar identificadores candidatos externos basados en las propiedades de la entidad.
Separar entidades que se encuentran mezcladas.
Disminuir redundancias en las ocurrencias de las entidades.

Al separar las entidades buscamos:


Disminuir la redundancia de informacin.
Disminuir los problemas de creacin, eliminacin y actualizacin de la informacin.
Implementar todas las dependencias entre propiedades a travs de la unicidad de los
identificadores.
Entidades independientes reutilizables.

Modelo de Entidades Equivalente


Entidad independiente: Sea E(A, D, I) una entidad fuerte en la que A es su conjunto de
propiedades, D su conjunto de dependencias no redundante, e I su conjunto de
identificadores. Decimos que E es una entidad independiente si D = {(x y) / x I .
Una entidad es independiente si el implicante de cada una de sus dependencias no derivable
es uno de sus identificadores.
El objetivo es disminuir la mezcla de entidades mediante la construccin de un modelo
mnimo equivalente de entidades independientes. Al separar entidades mezcladas
obtenemos un modelo con nuevas entidades y asociaciones, que debe ser equivalente al
modelo original pero sin redundancias ni anomalas para la gestin de informacin.
Sea E(A, D, I) una entidad en la que A es su conjunto de propiedades escalares, D su
conjunto de dependencias no redundante, e I su conjunto de identificadores. El modelo de
entidades equivalente a E es un conjunto mnimo de entidades independientes E1 (A1 , D1,
I1), E2 (A2, D2, I2),....,Em (Am, Dm, Im) y DA (conjunto de dependencias que representan las
asociaciones entre los entidades independientes). Este conjunto mnimo de entidades
independientes y asociaciones, debe cumplir con los siguientes principios de conservacin:
1. Conservacin de propiedades:
2. Conservacin de dependencias.

A1 A2 .. Am = A y A1 A2 .. Am =
D+ = D1+ D2+ .. Dm+ DA+

3. Conservacin de informacin. El modelo equivalente conserva la informacin si:

34

MODELADO

Guillermo Londoo A.

toda asociacin uno a muchos o uno a uno entre las entidades independientes,
representa una dependencia vlida de D+ entre los identificadores de dichas
entidades, y
alguno de los identificadores de I est contenido en alguno de los Ii.
Vamos a utilizar un mtodo de agrupamiento que nos permita construir un modelo mnimo
equivalente de entidades independientes, a partir de una entidad fuerte C(A, D, I).

Clasificacin de las dependencias


Sea E(A, D, I) una entidad no independiente en la que A es su conjunto de propiedades, D
su conjunto de dependencias no redundante, e I su conjunto de identificadores. Su modelo
mnimo equivalente de entidades independientes est compuesto por agrupaciones de sus
dependencias Gi (Ai, Di, Ii), donde Di = {(x y) D , e Ii su conjunto de identificadores
con respecto a Di.
Los pasos a seguir para encontrar el modelo mnimo equivalente de entidades
independientes son los siguientes:
Paso 1: Verifique que la entidad no es independiente.
Paso 2: Utilice la regla de proyectividad para convertir toda dependencia de D con
implicado compuesto (x a1a2.....an), en n dependencias (x a1, x a2, x
an) con implicado simple.
Paso 3: Clasifique las dependencias en grupos Gi(Ai, Di, Ii) que den origen a entidades
fuertes, atributivas, asociativas y asociaciones en el siguiente orden:
Entidades fuertes independientes: Grupos Gi(Ai, Di, Ii) tales que
Di = {(x a) D / x Ai , a Ai , x Ii
En el diagrama de dependencias identifique grupos que impiden que la entidad
sea independiente y cuyo implicado no es implicante. Estos grupos constituyen las
entidades fuertes.

Entidades atributivas independientes: Grupos Gi(Ai, Di, Ii) tales que


Di = {(sx a) D / x Ai , a Ai , s Ij

Entidades asociativas independientes: Grupos Gi(Ai, Di, Ii) tales que


Di = {(stzx a) D / x Ai , s Ij , t Ik ,, z In , a Ai
35

MODELADO

Guillermo Londoo A.

x es opcional.

Asociaciones: Grupos Gi(, Di, ) tales que


Di = {(stw z) D / s Ij , t Ik ,, w In , z Im

Paso 4: Verificar conservacin de informacin. Si ninguno de los identificadores de la


entidad E est incluido en los identificadores de los grupos, incluir una entidad con uno de
los identificadores que casi siempre es una entidad asociativa vaca, es decir sin
propiedades escalares, cuyo identificador sea uno de los identificadores de E.
Paso 5: Verificar conservacin de propiedades y dependencias. Si no hay conservacin,
convertir las propiedades necesarias en entidades, para lograr la conservacin de
propiedades y dependencias.
Paso 6: Construir el grfico del modelo mnimo equivalente de entidades independientes.
Paso 7: Verificar que todas las entidades del modelo equivalente sean independientes y que
todas las asociaciones uno a muchos y uno a uno representen dependencias vlidas.

Ejemplo 1

CdigoP Nombre, Telfono


CdigoA Descripcin
CdigoP, CdigoA Precio

PA(A, D, I) / A = (cp, n, t, ca, d, p) D = (cp n; cp t; ca d; cp, ca p)


I = ((cp, ca))
Esta entidad no es independiente, los problemas que presenta para la gestin de
informacin se deben a las tres primeras dependencias que generan redundancia y
anomalas, pues sus implicantes no son identificadores de la entidad. El diagrama de
dependencias se construye a partir del identificador de la entidad. Este diagrama muestra
que se pueden conformar entidades fuertes independientes con las tres primeras
dependencias que no permiten que la entidad sea independiente y sus implicados no son
implicantes en ninguna otra dependencia. La agrupacin de las propiedades cp, n y t
36

MODELADO

Guillermo Londoo A.

conforman una entidad fuerte independiente. Igual sucede con el grupo de propiedades ca,
d. En la cuarta dependencia se unen los identificadores de las dos entidades fuertes
encontradas para implicar a una propiedad del grupo, lo que corresponde a una entidad
asociativa.
n
t
d
p

cp
ca

Clasificacin de dependencias
Propiedade Dependencias Identificadores
s
cp, n, t
Cp
cp n; cp t
ca, d
Ca
ca d
p
(cp, ca)
cp, ca p

CdigoP Nombre, Telfono

Clasificador
Fuerte
Fuerte
Asociativa

CdigoA Descripcin
CodigoP, CdigoA Precio

La dependencia CdigoP Nombre, Telfono se conserva en la entidad Proveedor y hace


que su identificador sea CdigoP. La dependencia CdigoA Descripcin se conserva en
la entidad Artculo y hace que su identificador sea CdigoA. Por ltimo, la dependencia
CdigoP, CdigoA Precio se conserva en la entidad asociativa dbil ItemListaPrecio y
hace que su identificador sean las dos propiedades CdigoP y CdigoA. En la entidad
ItemListaPrecio la propiedad ProveedorCdigoP es una clave externa que hace referencia
al identificador CdigoP de la entidad Proveedor. Igualmente la propiedad
ArtculoCdigoA es una clave externa que hace referencia al identificador CdigoA de la
entidad Artculo.
Hasta ahora tenemos conservacin de propiedades y dependencias en la descomposicin,
pero qu pasa con la conservacin de informacin?
El identificador de la entidad ProveedorArticulo se encuentra en el modelo mnimo
equivalente.

37

MODELADO

Guillermo Londoo A.

La cardinalidad mnima cero no es derivable del modelo original, pero brinda mayor
flexibilidad al permitir crear un proveedor sin un artculo asociado, ni perder
informacin de un artculo al borrar un proveedor.
La cardinalidad mnima uno se deriva del modelo original, no puede existir un tem
de la lista de precios sin un proveedor asociado, puesto que el precio depende tanto
del artculo como del proveedor.
Las dos asociaciones representan dependencias triviales vlidas entre los
identificadores de sus entidades. Por reflexividad:
CdigoP, CdigoA CdigoP, CdigoA
y por proyectividad:

CdigoP, CdigoA CdigoP y

CdigoP, CdigoA CdigoA.


Para cada valor de CdigoP, CdigoA existe un slo valor de CdigoP, pero para
cada valor de CdigoP pueden existir muchos valores de CdigoP, CdigoA ya
que no existe la dependencia CdigoP CdigoA. Este es el origen de las
cardinalidades mximas.
Partimos de un modelo con una sola entidad fuerte no independiente, redundante, con
anomalas y sin hacer cumplir las dependencias a travs de la unicidad de su identificador.
Construimos su modelo mnimo equivalente con tres entidades independientes, dos
asociaciones, con menos redundancia, sin anomalas, con conservacin de dependencias,
propiedades, informacin y cumplimiento de todas las dependencias a travs de la unicidad
de los identificadores.
Entidad inicial no independiente:

CdigoP Nombre, Telfono


CdigoA Descripcin
CdigoP, CdigoA Precio
I = (CdigoP, CdigoA)

ProveedorArtculo
CdigoP Nombre

Telfono

CdigoA Descripcin Precio


38

MODELADO

p50
p32
p50
p32
p38

Guillermo Londoo A.

Juan
Pedro
Juan
Pedro
Pedro

5576581
3349631
5576581
3349631
8841935

A10
A20
A20
A10
A49

tuerca
tornillo
tornillo
tuerca
atornillador

20
30
32
18
45

Modelo mnimo equivalente de entidades independientes:

CdigoP Nombre, Telfono

Proveedores
cdigoP Nombre
p50
Juan
p32
Pedro
p38
Pedro

CdigoA Descripcin
CodigoP, CdigoA Precio

Telfono
5576581
3349631
3349631

ItemLista
Precio
Precio
20
30
32
18
45

Artculos
cdigoA Descripcin
A10
Tuerca
A20
Tornillo
A49
Atornillador

Ejemplo 2

CdigoP Nombre, Telfono


CdigoA Descripcin
CdigoP, CdigoA, TiempoEntrega Precio
CdigoP, CdigoA, Precio TiempoEntrega
I1= (CdigoP, CdigoA, Precio)
I2= (CdigoP, CdigoA, TiempoEntrega)

PA(A, D, I) / A = (cp, n, t, ca, d, p, te) D = (cp n; cp t; ca d; cp, ca, p te;


cp, ca, te p) I = ((cp, ca, p), (cp, ca, te))
39

MODELADO

Guillermo Londoo A.

cp
ca
p

cp

n
t
d
te

ca
te

n
t
d
p

Clasificacin de dependencias
Propiedade Dependencias Identificadores
s
cp, n, t
cp
cp n; cp t
ca, d
ca
ca d
p, te
(cp, ca, p)
cp, ca, p te;
(cp,
ca, te)
cp, ca, te p

Clasificador
Fuerte
Fuerte
Asociativa

CdigoA Descripcin

cdigoP Nombre, Telfono


CodigoP, CdigoA, Precio TiempoEntrega
CodigoP, CdigoA, TiempoEntrega Precio

Ejemplo 3

CdigoP Nombre, Telfono


CdigoA DescA
CdigoCalidad DescCalidad
CdigoP, CdigoA, CdigoCalidad Precio

40

MODELADO

Guillermo Londoo A.

PA(A, D, I) / A = (cp, n, t, ca, da, cc, dc, p) D = (cp n; cp t; ca da; cc dc;


cp, ca, cc p) I = ((cp, ca, cc))
n
t
da
dc
p

cp
ca
cc

Clasificacin de dependencias
Propiedades Dependencias Identificadores
cp, n, t
cp
cp n; cp t
ca, d
ca
ca d
cc, dc
cc
cc dc
P
(cp, ca, cc)
cp, ca, cc p

Clasificador
Fuerte
Fuerte
Fuerte
Asociativa

CodigoP, CdigoA, CdigoC Precio

CdigoA Descripcin

CdigoP Nombre, Telfono

CdigoC DescCal

Ejemplo 4

41

MODELADO

Guillermo Londoo A.

CdigoP Nombre, Telfono


CdigoA DescA
CdigoCalidad DescCalidad
CdigoA, CdigoCalidad Precio

PA(A, D, I) / A = (cp, n, t, ca, da, cc, dc, p) D = (cp n; cp t; ca da; cc dc;


ca, cc p) I = ((cp, ca, cc))
cp
ca
cc

Clasificacin de dependencias
Propiedades
Dependencias
cp, n, t
ca, da
cc, dc
p

CdigoP Nombre, Telfono

cp n; cp t
ca da
cc dc
ca, cc p

n
t
da
dc
p

Identificadore
s
cp
ca
cc
(ca, cc)
(cp, ca, cc)

CdigoA, CdigoC Precio

42

Clasificador
Fuerte
Fuerte
Fuerte
Asociativa
Asociativa

MODELADO

Guillermo Londoo A.

CdigoA Descripcin

CdigoCalidad DescCal

Ejemplo 5

CdigoP Nombre, Telfono, CdigoA


CdigoA Descripcin, Precio

PA(A, D, I) / A = (cp, n, t, ca, d, p) D = (cpn; cpt; cpca; cad; cap) I = (cp)


cp

n
t
ca

d
p

43

MODELADO

Guillermo Londoo A.

Clasificacin de dependencias
Propiedades Dependencias Identificadores
cp, n, t
cp
cp n; cp t
ca, d, p
ca
ca d; ca p

cp ca

Clasificador
Fuerte
Fuerte
Asociacin

CdigoP CdigoA

CdigoA Descripcin, Precio


CdigoP Nombre, Telfono

La dependencia CdigoP Nombre, Telfono se conserva en la entidad Proveedor y hace


que su identificador sea CdigoP. La dependencia CdigoA Descripcin, Precio se
conserva en el entidad Artculo y hace que su identificador sea CdigoA. Por ltimo, la
dependencia CdigoP CdigoA se conserva a travs de la relacin uno a muchos.
Partimos de un modelo con una sola entidad no independiente, redundante y con anomalas,
y construimos un modelo mnimo equivalente con dos entidades independientes, una
asociacin, menos redundancia, sin anomalas, y conservacin de propiedades,
dependencias e informacin.

Ejemplo 6
C(A, D, I) / A = (abcdeghp) D = (cp; ceg; hab; hac; hae; had) I = (ha)

h
a

Clasificacin de dependencias
Propiedades
Dependencias
cp
c p
habd
ha b; ha d

b
d
c
e

p
g

Identificadores
c
ha
44

Clasificador
Fuerte
Fuerte

MODELADO

Guillermo Londoo A.

eg

ce g
ha c; ha e

ce

Atributiva
Asociacin

ce c

ha ce

cp
ce g

ha bd

Ejemplo 7
C(A, D, I) / A = (adept) D = (ap; ad; ep; et; tpe) I = (ae, at)
d

p
t

Clasificacin de dependencias
Propiedades
Dependencias
ad
ad
et
pt e; e pt
p

ap

Identificadores
a
e, pt
p

ae

Clasificador
Fuerte
Fuerte
Fuerte
Asociacin
Asociativa

Para hacer cumplir la dependencia (a p) es necesario sacar a p como una entidad fuerte
independiente y crear la asociacin.

45

MODELADO

Guillermo Londoo A.

ad

pte; ept
ap

Ejercicios
Sea E(A, D, I) una entidad con propiedades obligatorias, encuentre su modelo mnimo
equivalente de entidades independientes mediante anlisis de sus dependencias.
1.

A = (abcdefgh)

D = (a bc; d gh; ad f; g e)

I = (ad)

2.

A = (abcdefgpt)

D = (a dp; e bt; p c; t f; tp eg)

I = (ae, at)

3.

A = (abcdefghij) D = (abc; bdefg; bcaj; ghi)

I = (a, bc)

4.

A = (acdepqmt)

D = (edpm; pme; qt; tq; cq; aq)

I = (ace, acmp)

5.

A = (bcffiftpa)

D = (cpf; fba; pbfift)

6.

A = (scicuodig)

D = (ciscu; cucis; cudio; sg)

I = (cudi, cisdi)

7.

A = (abcpfsfe)

D = (abc; afsfe; afefs)

I = (apfs, apfe)

8.

A = (abcd)

D = (ab; ba; acd)

I = (ac, bc)

9.

Para los siguientes ejercicios observe que las dependencias tienen redundancias. Las
propiedades FechaDev, NoLiquida, ValorMulta y FechaCancel son opcionales.

46

I = (cp)

MODELADO

Guillermo Londoo A.

Cdigo Fecha.
NoLiquida Cdigo, Fecha, NoLnea, FechaDev,
ValorMulta, FechaCancel, NoIndex, NoEjemplar,
CodBarras, Categora, das_prest, multa_da.
Cdigo, NoLnea Fecha, FechaDev, NoIndex,
NoEjemplar, NoLiquida
NoIndex Ttulo, Categora, DasPrstamo, MultaDa
CodBarras NoIndex, NoEjemplar, Categora, Ttulo,
DasPrstamo, MultaDa
NoIndex, NoEjemplar CodBarras, Ttulo, Categora,
DasPrstamo, MultaDa
Categora DasPrtamo, MultaDa

10.

Cdigo Ttulo
Ttulo Cdigo
Cdigo, Revista, Nmero Pgina
Ttulo, Revista, Nmero Pgina
Pgina, Revista, Nmero Cdigo, Ttulo

11. La oficina de correos nacionales ha subdividido todos los municipios de todos los
departamentos de todo el pas, y a cada divisin le ha asignado un cdigo postal. Estos
cdigos son nicos para cada municipio pero dentro de su departamento. Las
direcciones dentro de los municipios pueden repetirse, puesto que podemos tener la
misma calle 10 No. 10-10 en el municipio de Cali, de Medelln, etc. Pueden existir
departamentos que tengan municipios con el mismo nombre y obviamente un
departamento tiene mltiples municipios. Los cdigos postales nunca abarcan reas de
diferentes municipios. El siguiente entidad tiene una sola direccin postal para cada
persona, encuentre su modelo mnimo equivalente de entidade independientes.
DIRECCIN_POSTAL (Cdula, Nombre, direccin, municipio, depto, cd_postal)

47

MODELADO

Guillermo Londoo A.

12. Muestre que cualquier entidad fuerte que tenga slo dos propiedades es una entidad
independiente.
13.

Sea la entidad E con propiedades obligatorias A = (abc) y D = (ab c;


Encuentre su modelo mnimo equivalente de entidades independientes.

48

c b).

Anda mungkin juga menyukai