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.
MODELADO
Guillermo Londoo A.
MODELADO
Guillermo Londoo A.
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.
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.
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.
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.
MODELADO
Guillermo Londoo A.
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.
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
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.
g: consecutivo/materia,
f: da, mes, ao,
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).
MODELADO
4. Proyectividad.
Guillermo Londoo A.
Si (x y) (z y) (x z)
Si (x y) (m n) (x m) (y n)
13
MODELADO
Guillermo Londoo A.
14
MODELADO
Guillermo Londoo A.
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.
15
MODELADO
Guillermo Londoo A.
MODELADO
Guillermo Londoo A.
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)
MODELADO
Guillermo Londoo A.
2.
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.
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 }
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.
MODELADO
Guillermo Londoo A.
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:
23
MODELADO
Guillermo Londoo A.
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.
24
MODELADO
Guillermo Londoo A.
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.
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:
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.
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.
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:
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
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.
ENTIDAD INDEPENDIENTE
Mezcla de Informacin
31
MODELADO
Guillermo Londoo A.
MODELADO
Guillermo Londoo A.
C3 =
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
MODELADO
Guillermo Londoo A.
A1 A2 .. Am = A y A1 A2 .. Am =
D+ = D1+ D2+ .. Dm+ DA+
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).
MODELADO
Guillermo Londoo A.
x es opcional.
Ejemplo 1
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
Clasificador
Fuerte
Fuerte
Asociativa
CdigoA Descripcin
CodigoP, CdigoA Precio
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:
ProveedorArtculo
CdigoP Nombre
Telfono
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
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
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
Ejemplo 3
40
MODELADO
Guillermo Londoo A.
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
CdigoA Descripcin
CdigoC DescCal
Ejemplo 4
41
MODELADO
Guillermo Londoo A.
Clasificacin de dependencias
Propiedades
Dependencias
cp, n, t
ca, da
cc, dc
p
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)
42
Clasificador
Fuerte
Fuerte
Fuerte
Asociativa
Asociativa
MODELADO
Guillermo Londoo A.
CdigoA Descripcin
CdigoCalidad DescCal
Ejemplo 5
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
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)
I = (ae, at)
3.
I = (a, bc)
4.
A = (acdepqmt)
I = (ace, acmp)
5.
A = (bcffiftpa)
6.
A = (scicuodig)
I = (cudi, cisdi)
7.
A = (abcpfsfe)
I = (apfs, apfe)
8.
A = (abcd)
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.
48
c b).