Upload
phungkiet
View
214
Download
0
Embed Size (px)
Citation preview
FICHEROS Y BASES DE DATOS (E44)
3º INGENIERÍA EN INFORMÁTICA
Tema 12.
Diseño Conceptual
1.- Introducción.
2.- Abstracciones en el Diseño Conceptual.
3.- El Modelo Entidad/Relación.
4.- Metodología para el Diseño Conceptual.
5.- Ejemplos.
(Capítulos del 1 al 7 del Batini)
INTRODUCCIÓN
Definiciones Iniciales
- Un Modelo de Datos se conforma de una seriede conceptos que se utilizan para describir unconjunto de datos y sus operaciones.
- Los Modelos Conceptuales de Datos permitenrepresentar la realidad a un alto nivel deabstracción.
- Un Esquema es un conjunto estático derepresentaciones lingüísticas o gráficas, queson invariables en el tiempo, y que describenla estructura de los datos de interés.
- Cada Caso de un Esquema es una coleccióndinámica, que es variable en el tiempo, y quese ajusta a la estructura de datos que define elesquema.
- La evolución de la base de datos puedeestudiarse como la transición entre dos casos,mediante la aplicación de una operación demodificación.
Esquema
Reglas deEstructuración
Reglas deVerificación
Caso
Modelo
Estructura dela Realidad
Realidad enun Instante
2
INTRODUCCIÓN
Cualidades del Modelo Conceptual
- Expresividad. Cada modelo aporta diferentesestructuras de modelado, de modo que losmodelos más expresivos incorporan mayornúmero de conceptos.
- Simplicidad. Un modelo conceptual debe deser simple para que los usuarios y diseñadorespuedan entenderlo rápidamente.
- Minimalidad. Los objetos del modelo nopueden expresarse mediante otros conceptosdel propio modelo.
- Formalidad. Los esquemas resultantes debende ser formales, para los cual los conceptos delmodelo deben tener una interpretación única,precia y bien definida.
- Un modelo no puede expresar todas laspropiedades de la realidad por lo que se hacenecesario la utilización de aserciones que locomplementen.
- Para que el número de aserciones sea mínimoes necesario incluir nuevos conceptos, quecomplican el modelo.
- La idea es llegar a un punto de equilibrio entrela sencillez y la expresividad del modelo.
- Respecto a su representación gráfica,
- Compleción Gráfica. Todos los conceptostienen una representación gráfica.
- Facilidad de Lectura. Cada concepto serepresenta por un único símbolo.
3
ABSTRACCIONES DEL DISEÑO CONCEP.
Presentación
- La abstracción es un proceso mental que seaplica al seleccionar algunas características ypropiedades de un conjunto de objetos yexcluir otras no pertinentes.
- El concepto de una bicicleta puede versecomo un proceso de abstracción, en el que sehan excluido los detalles de su estructura.
- El siguiente dibujo es una representación deuna bicicleta, pero también se podría haberrepresentado mediante una descripción oral oescrita.
- En el diseño conceptual de bases de datos serealizan tres tipos de abstracciones, que soncompletamente independientes:
- Abstracción de Clasificación.
- Abstracción de Agregación.
- Abstracción de Generalización.
- Estas abstracciones ayudan al programadoren la tarea de entender, clasificar y modelarla realidad.
4
ABSTRACCIONES DEL DISEÑO CONCEP.
Abstracción de Clasificación
- El objetivo de esta abstracción es clasificar losobjetos de la realidad caracterizados porpropiedades comunes.
Enero Febrero Diciembre. . .
MES
- Cuando se piensa en los objetos de la clase, sehace referencia a sus características ypropiedades comunes
- Estas abstracciones se representan medianteun árbol, cuya raíz es la clase y las hojas son losmiembros de la clase.
- Cada rama del árbol hace referencia a laRelación de Pertenencia existente entre elobjeto y su clase.
- Las clasificaciones no son únicas, de modoque un mismo conjunto de objetos puede serclasificado de varios modos diferentes.
- Además, las clases resultantes no tienenporque coincidir, generándose particionesdiferentes para cada criterio de clasificación.
MESA SILLA MUEBLE NEGRO MUEBLE BLANCO
MesaNegra
MesaBlanca
SillaNegra
SillaBlanca
5
ABSTRACCIONES DEL DISEÑO CONCEP.
Abstracción de Agregación
- Mediante esta abstracción se definennuevas clases a partir del conjunto de clasesasociadas a las partes que la componen.
SE_IMPARTE
CURSO DIA AULA
- Se representan mediante un árbol de un nivelen el que todos los nodos son clases, siendo suraíz la nueva clase generada a partir de laagregación de las clases que son las hojas.
- Las clases-hoja Son Parte De la clase-raíz.
- Una misma clase puede participar en más deuna agregación.
USA POSEE
EDIFICIOPERSONA
- Se puede decir que mediante la clasificaciónse identifican tipos de atributos, y con laagregación se identifican tipos de entidades.
NOMBRE
Juan María Lucas
SEXO
Hombre Mujer
POSICION
Director Empleado
Clasific.
Agreg.
PERSONA
6
ABSTRACCIONES DEL DISEÑO CONCEP.
Abstracción de Generalización
- La abstracción de generalización permitedefinir una relación de subconjunto entre doso más clases.
PERSONA
HOMBRE MUJER
- Cada generalización se representa con unárbol de un nivel en el que todos los nodos sonnodos, siendo su raíz la clase genérica y lashojas son las clases subconjunto.
- Las ramas del árbol permiten expresar que unaclase-hoja Es Un Subconjunto de la clase-raíz.
- En una generalización, todas las abstraccionesdefinidas para la clase-raíz son heredadaspara las clases subconjunto.
- Pero esta condición no se cumple al revés, demodo que las clases-hoja pueden tenerabstracciones que no se asocien a la clase-raíz.
PERSONA
NOMBRE SEXO POSICION HOMBRE
SITUACION_MILITAR
7
ABSTRACCIONES DEL DISEÑO CONCEP.
Propiedades de la Agregación Binaria
- El número de clases-hoja que se asocian auna clase-raíz permite diferentes dos tipos deagregaciones las binarias y las n-arias.
- Las propiedades de ambas son equivalentes,aunque por la complejidad de las segundas seconsideran de modo separado.
- Una agregación binaria se puede representarmediante una correspondencia binaria,
- Los valores de cada clase-hoja aparecencomo los elementos de un conjunto.
- Los valores de la clase-raíz se representanmediante la conexión de los elementosagregados de cada uno de los conjuntos.
- En las siguientes figuras se representan lasagregaciones binarias USA y POSEE definidasanteriormente.
Agreg. Bin. USA
p1
p2
p3
e1
e2
e3
e4
Agreg. Bin. POSEE
e1
e2
e3
e4
p1
p2
p3
- De su análisis se puede concluir que,
- En un edificio viven varias personas.
- Una persona posee varios edificios.
- Un edificio pertenece a una única persona.
8
ABSTRACCIONES DEL DISEÑO CONCEP.
La Cardinalidad en una Agreg. Binaria
- Los comentarios anteriores se refieren a lacardinalidad existente entre las clases-hoja.
- Dada una agregación A y una de sus clasesasociadas Ci, se pueden definir dos tipos decardinalidades,
- Cardinalidad Mínima (card-mín). Menornúmero de correspondencias en las que loselementos de Ci pueden tomar parte.
- Cardinalidad Máxima (card-máx). Mayornúmero de correspondencias en las que loselementos de Ci pueden tomar parte.
- La cardinalidad mínima se asocia al conceptode necesidad de relación de modo que,
- Si card-mín (Ci, A) = 0 la participación de loselementos de Ci en A es opcional.
- Si card-mín (Ci, A) > 0 la participación de loselementos de Ci en A es obligatoria.
Los valores habituales son 0 y 1.
- Por su parte, la cardinalidad máxima se asociaal concepto de límite en la participación,
- Si card-máx (Ci, A) = n, la participación deun elemento de Ci en A es ilimitado oinfinito.
- En otro caso, el valor de card-máx (Ci, A)marca el límite de la participación de unelemento de Ci en A.
Los valores habituales son 1 y n.
9
ABSTRACCIONES DEL DISEÑO CONCEP.
La Cardinalidad en una Agreg. Binaria
- La cardinalidad de una clase-hoja en unaagregación es el par de números asociados ala cardinalidad mínima y máxima.
card Ci, A( ) = card − mín Ci, A( ) , card − máx Ci, A( )( )
- La relación existente entre las cardinalidadesmáximas de cada una de las clases que lacomponen, permite definir cuatro tipos deagregaciones binarias,
- Uno a Uno.
- Muchos a Uno.
- Uno a Muchos.
- Muchos a Muchos.
que se representan a continuación,
Uno a Uno Muchos a Uno
Muchos a MuchosUno a Muchos
10
ABSTRACCIONES DEL DISEÑO CONCEP.
Propiedades de la Agregación n-aria
- Las agregaciones n-arias comparten muchasde las características comentadas para lasagregaciones binarias.
- Su representación gráfica se basa en lasmismos fundamentos, aunque resulta máscompleja,
- Los valores de las clases-hoja aparecencomo elementos de conjuntos.
- Las conexiones conectan un elemento decada uno de los conjuntos.
Si el número de clases-hoja es suficientementeelevado, su representación es prácticamenteimposible.
- Las definiciones de cardinalidad son comunesa todos los tipos de agregaciones, y por tanto,
card Ci, A( ) = card − mín Ci, A( ) , card − máx Ci, A( )( )
- Debido a la gran cantidad de posibilidades,no se clasifican las agregaciones n-ariasmediante la utilización de sus cardinalidadesmáximas, a diferencia de las agregacionesbinarias.
11
ABSTRACCIONES DEL DISEÑO CONCEP.
Propiedades de la Generalización
- La definición de generalización permite definiruna clase que engloba un conjunto de clases,pero falta saber el modo en el que las clases-hoja se relacionan con la clase genérica.
- Las clases-hoja pueden definir de modocompleto o incompleto la clase genérica,
- Total. Los valores de la clase genéricapertenecen a alguna de las clases-hoja.
- Parcial. Algún valor de la clase genérica nopertenecen a ninguna clase-hoja.
- Las clases-hoja pueden compartir aspectos dela definición de la clase genérica,
- Exclusiva. Los valores de la clase genéricapertenecen a una sola clase-hoja.
- Superpuesta. Los valores de la clasegenérica pertenecen a varias clases-hoja.
PERSONA
Total y Exclusiva
PERSONA
HOM
BRE
EMPLEADO
Parcial y Superpuesta
JUGADOR
JUGADORDE TENIS
JUGADORDE FUTBOL
Total y Superpuesta
VEHICULO
BIC
ICLE
TA
CO
CH
E
Parcial y Exclusiva
MUJER
HOM
BRE
12
MODELO ENTIDAD/RELACIÓN
Comentarios Iniciales
- El modelo Entidad/Relación fue introducidopor Peter Chen en 1976.
- En 1988, el ANSI lo seleccionó como modeloestándar para los sistemas de diccionarios derecursos de información.
- Inicialmente el modelo entidad/relación seconstituía de los siguientes conceptos,
- Entidades. Representan clases de objetos dela realidad.
- Interrelaciones. Son agregaciones de dos omás entidades.
- Atributos. Propiedades básicas de lasentidades y las interrelaciones.
- Posteriormente se incluyeron otros conceptosen el modelo,
- Jerarquías de Generalización. Aplicación dela generalización a diferentes niveles.
- Subconjunto. Caso especial de jerarquía degeneralización.
- Atributos Compuestos. Formados por unconjunto de atributos con alguna afinidad.
- Identificadores. Grupo de atributos oentidades que permiten identificar de formaúnica los casos de una entidad.
13
MODELO ENTIDAD/RELACIÓN
Entidades
- Una entidad representa una clase de objetosde la realidad.
- Se representa mediante un rectángulo queincluye el nombre de la clase.
Interrelaciones
- Una interrelación define una agregación entrelas clases del modelo.
- Se representa mediante un rombo que incluyeel nombre de la agregación, y al cual seconectan las entidades asociadas a las clasesque forman la agregación.
- Según esto, pueden aparecer interrelacionesasociadas a dos o más entidades.
- El Anillo es un tipo de interrelación específicoque conecta una entidad consigo misma, porlo que también se califica como Recursiva.
- En estos casos, resulta necesario rotular las dosconexiones de la entidad con la interrelación,ya que tienen diferente interpretación.
- El concepto de cardinalidad, relacionado conlas agregaciones, también aparece en lasinterrelaciones.
- Por tanto, las conexiones se etiquetan con lacardinalidad asociada a cada entidad.
14
MODELO ENTIDAD/RELACIÓN
Ejemplos de Entidades e Interrelaciones
PERSONA CIUDADvive_en(1, 1) (0,n)
CURSO AULA
DIA
se_imparte(1, 3) (0, 40)
(0, n)
DIRECTOR_DE
SUBORDINADO_A
EMPLEADO dirige
(0, n)
(0, 1)
embarquePEDIDO(0, 1) (1, 1)
TARJ_EMBAR
15
MODELO ENTIDAD/RELACIÓN
Atributos
- Los atributos permiten caracterizar tanto lasentidades como las interrelaciones.
- Aparecen conectados a la interrelación oentidad a la que caracterizan.
- El concepto de cardinalidad también seasocia a los atributos.
- Por lo que respecta a la cardinalidad mínima,
- Si fuera igual a cero, el atributo en cuestiónadmite nulos. Así un caso puede no tener unvalor asociado en este atributo.
- En caso contrario, se deberían especificar unnúmero mínimo de valores del atributo paratodos los casos.
- La cardinalidad máxima,
- Si es igual a uno se dice que el atributo esMonovalente, es decir, en un caso elatributo sólo puede tener un valor asociado
- Cuando es mayor que 1, el atributo esPolivalente, y por tanto pueden aparecercasos que tengan varios valores del atributo.
- Cada atributo se asocia a un Dominio quedefine el conjunto de valores válidos delatributo.
16
MODELO ENTIDAD/RELACIÓN
Ejemplo de Atributos
(1, 1
)(0
,n)
(0, 1
)(0
,n)
CIU
DA
D
no
mb
re
altitu
dn
um
_ha
bit
viv
e_e
n
ca
mb
io_d
om
icilio
na
cid
a_e
n
fec
ha
_na
cim
PER
SON
A
no
mb
ren
um
_seg
_soc
pro
fesió
n
título
(0, n
)
17
MODELO ENTIDAD/RELACIÓN
Jerarquía de Generalización
- Si E es una generalización de las entidades E1,E2, . . . , En entonces los objetos de cada Ei sontambién objetos de E.
- Se representa mediante flechas que parten delas entidades Ei y llegan a la entidad E.
- Una misma entidad puede aparecer en variasgeneralizaciones, en alguna puede aparecercomo entidad genérica y en otras comoentidad subconjunto.
- Las generalizaciones se caracterizan por laspropiedades anteriormente comentadas,
- Pueden ser Totales o Parciales.
- Pueden ser Exclusivas o Superpuestas.
- Las propiedades de la entidad genérica sonheredadas por las entidades subconjunto, loque se traduce en que existe herencia deatributos, interrelaciones y generalizacionesentre la entidad E y las entidadessubconjunto.
- De este modo, se pueden definir jerarquías degeneralización estructuradas.
Subconjuntos
- Es un caso particular de generalización dondesólo aparece una entidad subconjunto.
- Por su definición, un subconjunto se asocia auna generalización parcial y exclusiva.
18
MODELO ENTIDAD/RELACIÓN
Ejemplo de Jerarquía de Generalización
PER
SON
A
HO
MB
RE
MU
JER
EM
PLE
AD
OD
IREC
TOR
SEC
RETA
RIA
DIR
EC
TOR
TE
CN
ICO
DIR
EC
TOR
AD
MIN
ISTR.
PR
OG
RA
M.
EM
PLE
AD
OD
E V
EN
TAS
EM
PLE
AD
OD
E P
UB
LIC.
(t, e)
(p, e
)
(t, s)(p
, s)
19
MODELO ENTIDAD/RELACIÓN
Ejemplo de Jerarquía de GeneralizaciónEstructurada
PERSONA
HOMBRE MUJER
nombredirección
direcciónapell_solt
nombrenombredirecciónsit_militar
PERSONA
HOMBRE MUJER nombrenombre
dirección
apell_solt (0,1)sit_militar (0, 1)
PERSONA
HOMBRE MUJER
nombredirección
apell_soltsit_militar
20
MODELO ENTIDAD/RELACIÓN
Atributos Compuestos
- Los atributos compuestos están definidos porgrupos de atributos afines.
- Se representan mediante un óvalo conectadoa la entidad o interrelación asociada, y al quese conectan los atributos que lo componen.
- La cardinalidad de los atributos compuestos sedefine de igual modo que en los atributossimples.
- La aplicación de la cardinalidad sobre losatributos compuestos permite un mayor gradode modelado.
- Si la cardinalidad se aplica sobre cada unode sus atributos se pierde la relación existenteentre ellos.
Ejemplo de Atributos Compuesto
calleciudadprovincia
paiscod_postal
DIRECC.PERSONA(1, n)
21
MODELO ENTIDAD/RELACIÓN
Identificadores
- Un identificador es un conjunto de atributos yentidades que permiten determinar de modoúnico los casos de una entidad.
- En la bibliografía también se denomina comoClave o Clave Candidata.
- La definición formal es la siguiente,
- Sea E una entidad y A1, A2, . . . , Anatributos monovalentes obligatorios.
- Sean E1, E2, . . . , Em las entidadesvinculadas a E mediante las interrelacionesbinarias obligatorias R1, R2, . . . , Rm.
entonces un posible identificador podría ser,
Ι = A1,L , An, E1,L , Em{ }
donde
n ≥ 0 , m ≥ 0 , n + m ≥ 1.
- El identificador siempre existe por que lacardinalidad mínima de sus componentes es 1.
- El valor del identificador en un caso concretoes el conjunto de valores de los atributos y delos identificadores de las entidades.
- Un identificador debe cumplir que,
- No puede aparecer dos casos en E quetengan el mismo valor del identificador.
- Si se omite algún atributo o entidad, lacondición anterior no se cumple.
22
MODELO ENTIDAD/RELACIÓN
Identificadores
- Una entidad puede tener varios conjuntos deatributos y entidades que identifiquen demodo único a sus componentes. es decir,pueden aparecer identificadores alternativos.
- Los identificadores se pueden clasificar a partirde diferentes criterios,
- Un identificador es Simple si la suma de n ym es igual a 1; si es mayor que 1 sedenomina Compuesto.
- Cuando m es igual a 0 el identificador esInterno, mientras que si n es igual a 0 sedenomina como Externo.
- Si n y m son mayores que 0, entonces se diceque el identificador es Mixto.
- Por sencillez, se prefiere los identificadoressimples a los compuestos, y por la misma razón,los internos a los externos mixtos.
- El manejo de identificadores externos mixtosdebe de realizarse de modo correcto paraevitar referencias circulares, es decir, que laentidad Ei aparezca en el identificador de laentidad Ej, y viceversa.
- Con este fin, en primer lugar se señalan losidentificadores de las entidades fuertes, lasque poseen identificadores internos.
- Posteriormente se señalan los identificadoresde las entidades débiles.
23
MODELO ENTIDAD/RELACIÓN
Ejemplos de Identificadores
PERSONA num_seg_social
PERSONA fecha_nacimnom_padre
nombre
ciudad_resididentif_de_persona
EMPLEADO
DEPARTAM.
trabaja_en
(1, 1)
(1,n)
num_empl_por_depart
CABECERAPEDIDO
PRODUCTO
de para
númerolínea
A
B
DETALLEPEDIDO
24
MODELO ENTIDAD/RELACIÓN
Ejemplo Completo
DIR
EC
TOR
(t, e)
(p, e
)
PER
SON
AD
IREC
C.
ca
llec
iud
ad
pro
vin
cia
pa
isc
od
_po
stal (0
, 1)
(1, n
)n
um
_seg
_soc
ial
pro
fesió
n
no
mb
re
título
(0, n
)
HO
MB
RE
sit_milita
r
SEC
RETA
RIA
sub
_título
EM
PLE
AD
O
nu
m_e
mp
l
MU
JER
ap
ell_so
lt
MILITA
R
ran
go
nú
m_ID
div
isión
25
MODELO ENTIDAD/RELACIÓN
Ejemplo Completo
Esquema : PERSONALEntidad : PERSONA
Atributos : nombre : texto ( 20 )num_seg_soc : texto ( 12 )profesión : texto ( 20 )(0, n) título : texto ( 20 )
Atributos compuestos : (1, n) DIRECC. decalle : texto ( 30 )ciudad : texto ( 20 )(0, 1) cod_postal : texto ( 5 )provincia : texto ( 2 )pais : texto ( 20 )
identificadores : num_seg_socEntidad : HOMBRE
Atributos : sit_militar : texto ( 20 )Entidad : MUJER
Atributos : apell_solt : texto ( 20 )Entidad : DIRECTOREntidad : SECRETARIA
Atributos : sub_título : enum [MECAN., ARCHIV]Entidad : EMPLEADO
Atributos : num_empl : enteroIdentificadores : num_empl
Entidad : MILITARAtributos : rango : texto ( 20 )
división : texto ( 10 )num_ID : entero
Identificadores : división, num_IDGeneralización : SEXO
Padre : PERSONAHijos : HOMBRE, MUJER
Generalización (p, e) : TIPO_TRABAJOPadre : PERSONAHijos : DIRECTOR, SECRETARIA, EMPLEADO
Subconjunto : MILITAR de PERSONA
26
MODELO ENTIDAD/RELACIÓN
Mecanismos de Abstracción
- A continuación, se describe cómo aparecenlas abstracciones descritas en este modelo.
- Los tres elementos básicos del modelo seforman como aplicación de una clasificación,
- Entidad. Clase de objetos con propiedadescomunes.
- Interrelación. Clase de hechos atómicos querelacionan entidades.
- Atributo. Clase de valores que se asocian apropiedades atómicas de una entidad.
- Aparecen tres tipos de agregaciones,
- Entidad. Agregación de atributos.
- Interrelación. Agregación de entidades yatributos.
- Atrib. Compuesto. Agregación de atributos.
- La generalización aparece en las jerarquías degeneralización y los subconjuntos, que sueleaplicarse a entidades, y en algún caso ainterrelaciones.
DIA AÑO
MES
fiesta(1, n) (1, n)
(1, n)oficial trimestral
(t, e)
27
METODOL. PARA EL DISEÑO CONCEP.
Planteamiento Inicial
- La creación de un esquema en el modeloentidad/relación es un proceso incrementalque se va refinando poco a poco.
- Este proceso se realiza más fluidamentemediante la utilización de transformacionesestructuradas.
- Existen una serie de Primitivas de Refinamientoque son transformaciones que se aplican a unesquema para llegar a un esquema final.
- Éstas se clasifican en Primitivas Ascendentes yPrimitivas Descendentes.
- La utilización de primitivas concretas permitendesarrollar varias estrategias de diseño,
- Estrategia Ascendente.
- Estrategia Descendente.
- Estrategia Centrífuga.
- Estrategia Mixta.
- Mediante las primitivas y las estrategias seconstruyen las Metodologías de Diseño, quedeben ser.
- Rigurosas. Se debe definir una estrategiaúnica para todas las decisiones del proceso.
- Flexibles. Puede ser aplicable en un amplioconjunto de situaciones y entornos.
28
METODOL. PARA EL DISEÑO CONCEP.
Primitivas del Diseño Conceptual
- El diseño de un esquema conceptual es elresultado de un análisis detallado de losrequerimientos del usuario.
- Normalmente se parte de un esquema inicialsobre el que se aplican un conjunto detransformaciones que llevan al esquema final.
- Este planteamiento es similar al desarrollo decualquier programa de aplicación.
- En el diseño de bases de datos aparecen unaserie de primitivas de refinamiento queayudan al diseñador en esta tarea.
- Aparecen una serie de características que soncomunes a todas las primitivas,
- Parten de un Esquema Inicial y generan unEsquema Resultante.
- Aparece una correspondencia entre losNombres de los Conceptos de los esquemasinicial y resultante.
- Los conceptos del esquema resultanteheredan las Conexiones Lógicas definidasentre los conceptos del esquema inicial.
- El tipo de transformaciones utilizadas influyendecisivamente en la calidad del esquemaresultante.
- Por esta razón, únicamente se describen lastransformaciones primitivas, que presentanuna estructura muy simple y que no es posibledescomponerlas en otras más simples.
29
METODOL. PARA EL DISEÑO CONCEP.
Ejemplo de Transformación
PERSONA LUGARvive_en
vive_enPERSONA CIUDAD
PROVINCIA
en
LUGAR
CIUDAD
PROVINCIA
en
30
METODOL. PARA EL DISEÑO CONCEP.
Primitivas Descendentes
- Estas primitivas se asocian al concepto derefinamiento de conceptos.
- Seguidamente se describen estas primitivas,presentando también un ejemplo sencillo, y sedeja para más adelante la descripción de suspropiedades más importantes.
- T1. Refina una entidad dando lugar a unainterrelación entre dos entidades.
- T2. Refina una entidad dando lugar a unajerarquía de generalización o un subconjunto.
- T3. Refina una entidad dando lugar a unconjunto de entidades independientes.
- T4. Refina una interrelación dando lugar a doso más interrelaciones entre las dos entidadesasociadas.
- T5. Refina una interrelación dando lugar a unaruta de entidades e interrelaciones.
- T6. Refina una entidad o interrelaciónmediante la inclusión de sus atributos.
- T7. Refina una entidad o interrelaciónmediante la inclusión de un atributoscompuesto.
- T8. Refina un atributo dando lugar a unatributo compuesto o un conjunto deatributos.
31
METODOL. PARA EL DISEÑO CONCEP.
Primitivas Descendentes
PROVINCIA
CIUDAD
enLUGAR
PERSONA
PERSONA
MUJERHOMBRE
OSCARNOBELPREMIO
CIUDAD
PERSONA
relaciona
PERSONA
CIUDAD
vive_ennacio_en
32
METODOL. PARA EL DISEÑO CONCEP.
Primitivas Descendentes
DEPART.
EMPLEADO
trab_en
DEPARTAM.
DIRECTOR
jefe_de
EMPLEADO
trab_con
sexoedad
nombre
PERSONAPERSONA
PERSONA
callenúmerociudadprovincia
cod_postal
DIRECC.PERSONA
diamesaño
FECHA
estado_de_salud
última_vacunación
fecha
datos_de_salud
33
METODOL. PARA EL DISEÑO CONCEP.
Primitivas Descendentes
- Las principales propiedades de las primitivasdescendentes son,
- El esquema inicial es un concepto único, yel esquema resultante se compone de unconjunto de conceptos.
- Los nombres se refinan dando lugar a nuevosnombres que se asocian a conceptos de unnivel de abstracción menor.
- Las conexiones lógicas se heredan por unúnico concepto del esquema resultante.
- Además de las primitivas descritas aparecenotras transformaciones más complejas quetambién puede considerarse descendentes.
- En algún caso, se deben respetar algunasrestricciones, como la cardinalidad de todaslas interrelaciones, las iniciales y las resultantes.
empl_enPERSONA PROYECTO(1,1) (1,n)
PERSONA PROYECTO
dirige
trab_en
(1,1) (1,1)
(1,1) (1,n)
34
METODOL. PARA EL DISEÑO CONCEP.
Primitivas Ascendentes
- Mediante la utilización de estas primitivas seintroducen conceptos y propiedades que nohabían sido considerados con anterioridad.
- También se utilizan para fusionar esquemas,con el objetivo de formar esquemas globales,lo que se denomina Integración de Esquemas.
- Seguidamente se enumeran estas primitivas, yposteriormente se muestra un ejemplo sencillode cada una.
- B1. Genera una nueva entidad asociada a unconcepto con propiedades específicas queno había sido considerado.
- B2. Genera una nueva interrelación entre dosentidades ya incluidas en el esquema anterior.
- B3. Se obtiene una nueva entidad como lageneralización de un conjunto de entidadesya definidas.
- B4. Obtiene las entidades e interrelaciones quecorresponden con un conjunto de atributos yadefinidos.
- B5. Crea un atributo compuesto que se asociaa una entidad o interrelación ya definida.
- La aplicación de la primitiva B3 requiere elcontrol sobre la herencia de las propiedades.
- Posteriormente se muestra un ejemplo sencillosobre esta circunstancia.
35
METODOL. PARA EL DISEÑO CONCEP.
Ejemplos de las Primitivas Ascendentes
PERSONA
LUGAR
PERSONA
LUGAR
PERSONA
vive_en
PERSONA
DIRECTOREMPLEADO
DIRECTOREMPLEADO
ciudadprovincia
LUGAR
PERSONA sexoedad
nombre
ciudadprovincia
sexoedad
nombre
callenúmerociudadprovincia
cod_postal
DIRECC.PERSONA
callenúmerociudadprovincia
cod_postal
PERSONA
36
METODOL. PARA EL DISEÑO CONCEP.
Ejemplo de Control de Herencia
COMPAÑIA
CIUDAD
trab_en
vive_enEMPLEADOnombreapellido
COMPAÑIA
CIUDAD
trab_en
vive_enEMPLEADOnombreapellido
PERSONA
COMPAÑIA
CIUDAD
trab_en
vive_en
EMPLEADO
PERSONAnombreapellido
37
METODOL. PARA EL DISEÑO CONCEP.
Propiedades de las Primitivas
- El conjunto de primitivas definido debe decumplir dos propiedades básicas,
- Compleción. Si cualquier esquema de basede datos puede construirse a partir de unesquema inicial vacío.
- Minimalidad. Cuando ninguna primitiva sepuede expresar mediante la combinaciónde las otras primitivas.
- El conjunto de primitivas ascendentescumplen ambas propiedades, pero lasdescendentes no cumplen ninguna de ellas.
- No es mínima porque la primitiva T5 se puedeobtener a partir de la primitiva T1.
- También aparece una duda razonable sobrela primitiva T4.
- Pero la primitiva T4 puede generar ciclos, adiferencia de T1.
- No es completa, porque los modelos en los queexiste una conectividad total entre lasentidades no pueden ser modelado con lasprimitivas descendentes.
- Por esta última razón, existe un tipo específicode esquemas que engloba a los esquemasque son Producibles en Forma Descendente.
38
METODOL. PARA EL DISEÑO CONCEP.
Ejemplo de Esquema no Producibleen Forma Descendente
en
PROVINCIA prot_porasal_por
CIUDAD cuart_gensitua_en
de EJERCITODIVISION
39
METODOL. PARA EL DISEÑO CONCEP.
Estrategias de Diseño
- En función del tipo de primitivas utilizada, sedefinen cuatro metodologías,
- Estrategia Descendente. Esta estrategia sóloutiliza las primitivas descendente.
- Estrategia Ascendente. Que define losesquemas mediante primitivas ascendentes.
- Estrategia Centrífuga. Caso particular de laestrategia ascendente.
- Estrategia Mixta. Utiliza tanto las primitivasdescendentes como las ascendente.
- Se muestra como aplicar cada una de ellas enel diseño del siguiente esquema final.
MUJER
apell_solt
HOMBRE
sit_militar
(1, 1) (1,n)
(1, 1) (1,n)
LUGARnombrehabitantes
nacida_en
num_años
vive_enPERSONA
edadestaturaapellido
nombre
PAIS_EXTR
continente
en
CIUD_NAC
PROVINCIAnombre
(1, 1)
(1, n)
40
METODOL. PARA EL DISEÑO CONCEP.
Estrategia Descendente
- Sólo se aplican primitivas de refinamiento, porlo que se van generando nuevos conceptoscon la aplicación de cada primitiva.
- El proceso finaliza cuando los requerimientos secompletan, pasando a través de diferentesniveles de abstracción.
- Cada vez se refina un único concepto, por loque el proceso iterativo es simple.
- Pero esta metodología sólo se puede aplicarcuando el diseñador puede abstraer toda lainformación contenida en los requerimientossobre los diferentes niveles de abstracción.
Primer plano de refinamiento
Plano de refinamiento
genérico
Plano de refinamiento
final
Dominio de aplicación
41
METODOL. PARA EL DISEÑO CONCEP.
Estrategia Descendente
DATOSDEMOGR.
DATOSLUGARES
relac_conDATOSPERSONA
MUJERHOMBRE
LUGAR
nacida_en
vive_enPERSONA
PAIS_EXTR LUG_NAC
42
METODOL. PARA EL DISEÑO CONCEP.
Estrategia Ascendente
- A partir de los conceptos elementales queaparecen en los requerimientos, se formanconceptos más complejos.
- También se podría haber diseñado cadaparte por separado y luego fundirlas.
- Resulta sencillo, ya que se obtienen versionesiniciales rápidamente, pero se debe verificar elcontrol de la herencia.
43
METODOL. PARA EL DISEÑO CONCEP.
Estrategia Ascendente
apell_solt
edad_mujerestatura_mujerapellido_mujernombre_mujer
sit_militar
edad_hombreestatura_hombreapellido_hombrenombre_hombre
nombre_ciud_nachabitantes_ciud_nac
continentenombre_pais_extrhabitantes_pais_extr
nombre_provincia
HOMBRE
edadestaturaapellido
nombresit_militar
MUJER
apell_solt
edadestaturaapellido
nombre
nombrehabitantesCIUD_NACPAIS_EXTR
continente
nombrehabitantes
PROVINCIAnombre
MUJER
apell_solt
HOMBRE
sit_militar
PERSONA
edadestatapell
nomb
edadestatapell
nomb
LUGAR
PAIS_EXTR
continente
CIUD_NACnombrehabit
nombrehabitPROVINCIAnombre
44
METODOL. PARA EL DISEÑO CONCEP.
Estrategia Centrífuga
- Se selecciona el concepto más importante, yluego se extiende el esquema como unamancha de aceite.
- El primer lugar se analizan los conceptos máspróximos al principal, y luego se navega hacialos conceptos más alejados.
- El refinamiento es disciplinado, pero en estecaso sólo aparece un nivel de abstracción.
45
METODOL. PARA EL DISEÑO CONCEP.
Estrategia Centrífuga
MU
JER
ap
ell_so
lt
HO
MB
RE
sit_milita
r
(1, 1
)(1
,n)
(1, 1
)(1
,n)
LUG
AR
no
mb
reh
ab
itan
tes
na
cid
a_e
n
nu
m_a
ño
s
viv
e_e
nP
ER
SON
A
ed
ad
esta
tura
ap
ellid
on
om
bre
PA
IS_EX
TR
co
ntin
en
te
en
CIU
D_N
AC
PR
OV
INC
IAn
om
bre
(1, 1
)
(1, n
)
46
METODOL. PARA EL DISEÑO CONCEP.
Estrategia Mixta
- Aprovecha las ventajas de las estrategiasascendente y descendente, particionando demodo controlado los requerimientos.
- Los subconjuntos de requerimientos se diseñande modo separado.
- También se define un Esquema Armazón, en elque se describe la relación existente entre lasdiferentes subconjuntos de requerimientos.
- Posteriormente, se integran los esquemas de lossubconjuntos de requerimientos en el esquemaarmazón.
47
METODOL. PARA EL DISEÑO CONCEP.
Estrategia Mixta
relac_conPERSONA LUGAR
MUJER
apell_solt
HOMBRE
sit_militar
PERSONA
edadestaturaapellido
nombre
LUGARnombrehabitantes
PAIS_EXTR
continente
en
CIUD_NAC
PROVINCIAnombre
(1, 1)
(1, n)
48
METODOL. PARA EL DISEÑO CONCEP.
Comparación de Estrategias
Estrategia Descripción Ventajas Desventajas
Descendente Los conceptos serefinan
progresiva-mente.
No hay efectossecundariosindeseables.
Requiere undiseñador hábil
con altacapacidad de
abstraccióndesde el
comienzo.
Ascendente Los conceptos seforman a partir
decomponenteselementales.
Decisioneslocales de
diseño sencillas.
Ninguna cargasobre el
diseñadorinicial.
Necesidad deuna
reestructuracióndespués de
aplicar cadaprimitiva
ascendente.
Centrífuga Los conceptos seconstruyen conun enfoque "de
mancha deaceite".
Facilidad paradescubrir nuevos
conceptoscercanos a los
anteriores.
Ninguna cargasobre el
diseñadorinicial.
La visión globaldel dominio deaplicación setiene sólo al
final.
Mixta Particióndescendente de
losrequerimientos;
integraciónascendente
usando elesquemaarmazón.
Enfoque de"divide y
vencerás".
Requieredecisiones
cruciales sobreel esquemaarmazón al
inicio delproceso de
diseño.
49
METODOL. PARA EL DISEÑO CONCEP.
Comparación de Estrategias
- Aparecen ciertas cuestiones que deben serresueltas.
- ¿La aplicación de cualquiera de las cuatroestrategias genera el mismo esquema?.
- Lógicamente no, e incluso puede sucederque la utilización de una misma estrategiagenere esquemas diferentes.
- ¿Cuando utilizar una estrategia?
- La estrategia descendente suele utilizarse enorganizaciones altamente organizadas.
- La estrategia ascendente se utiliza enorganizaciones informales, donde es sencilloincidir en el detalle y luego integrarlo todo.
- En principio resulta aconsejable utilizar laestrategia descendente siempre que seaposible, ya que es más estructurado.
- Una alternativa válida es utilizar la estrategiadescendente, y utilizar primitivas ascendentespara incluir algún concepto que no hubierasido considerado.
50
METODOL. PARA EL DISEÑO CONCEP.
Elección entre Conceptos
- Los objetos de la realidad puede modelarsede modo diferente, según cual sea el criterioaplicado.
- Entidad o Atributo Simple.
- Como entidad si en el diseño se puedenasociar varias características al objetoasociado, como atributos, interrelaciones,generalizaciones o subconjuntos.
- Como atributo si el objeto tiene unaestructura atómica simple.
- Generalización o Atributo.
- Como generalización si se espera quepueda aparecer alguna característicaconcreta sobre alguno de los subconjuntos.
- Como atributo en otro caso.
- Atributo Compuesto o Conjunto de AtributosSimples.
- Como atributo compuesto si se le asigna unnombre de modo natural, como ladirección.
- Como atributo en otro caso.
51
METODOL. PARA EL DISEÑO CONCEP.
Elección entre Conceptos
PERSONAedad
apellido
ciud_nac
CIUDAD
PERSONAedadapellido
en
MUJER
num_embar
HOMBRE
PERSONAedadapellido
PERSONA
sexoedadapellido
num_embar(0, 1)
callenúmerociudadprovincia
cod_postal
DIRECC.PERSONAPERSONA ciudadprovincia
número
cod_postal
calle
52
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Cualidades de un Esquema
- Compleción. Un esquema es completo sirepresenta las características pertinentes deldominio de la aplicación.
- El esquema es completo respecto a losrequerimientos si aparecen en él todos losrequerimientos del dominio.
- Los requerimientos están completos respectoal esquema si todos sus conceptos aparecenen los requerimientos.
- Corrección. Un esquema es correcto si usa conpropiedad los conceptos del modelo.
- Es sintácticamente correcto si los conceptosse definen con propiedad en el esquema.
- Es semánticamente correcto si utiliza losconceptos de acuerdo con su definición.
- Algunos errores semánticos son,
1 Usar un atributo en lugar de una entidad.
2 Olvidar una generalización.
3 Olvidar la propiedad de herencia en lasgeneralizaciones.
4 Usar una interrelación con un númeroerróneo de entidades.
5 Usar una entidad por una interrelación.
6 Olvidar algún identificador, sobre todoidentificadores compuestos externos.
7 No especificar alguna cardinalidad.
53
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Cualidades de un Esquema
- Minimalidad. Un esquema es mínimo si todoslos aspectos de los requerimientos aparecenuna sola vez.
- Es mínimo si no se puede borrar un conceptosin perder información.
- Se puede permitir alguna redundancia si sedocumenta suficientemente.
- Expresividad. Un esquema es expresivo si serepresentan los requerimientos de formanatural, y se puede entender con facilidad sinnecesidad de explicaciones.
- Legibilidad. El esquema es legible si cumple loscriterios estéticos siguientes,
- Trazarlos en hojas cuadriculadas para quelos gráficos sean semejantes y las conexionessean horizontales y verticales.
- Destacar las estructuras simétricas.
- Minimizar el número de cruces.
- Minimizar el número de esquinas a lo largode las conexiones.
- En jerarquías de generalización, la entidadpadre debe situarse sobre las entidades hijo.
54
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Ejemplos de Cualidades de un Esquema
EMPLEADO nombreedad
trabaja_en
PROYECTO códigodirectornum_empl
(1, n)
(1, n)
EMPLEADO nombreedad
trabaja_en
PROYECTO códigodirector
(1, n)
(1, n)
SEMINARIO
CURSOINSTRUCT
PROFESOR
ASISTENTE califica
enseña
oferta
oferta
enseña
INSTRUCT PROFESOR CURSO SEMINARIO
enseñaPERS_ENSEÑ OFERTAS
ASISTENTE califica
55
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Ejemplos de Cualidades de un Esquema
A_D
B_D
A
B
D
A_E
B_E
E
A_C
B_C
C
A B
A_E
B_E
E
A_C
B_C
C
A_D
B_D
D
56
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Cualidades de un Esquema
- Autoexplicación. Un esquema se explica a simismo cuando puede representar la mayoríade propiedades mediante el modeloconceptual, evitando otros formalismos.
- Extensibilidad. Un esquema es extensible si seadapta fácilmente a requerimientos variables,para lo cual puede descomponerse en partes.
- Normalidad. Un esquema está en una formanormal si cumple las características de laforma normal asociada.
Ejemplos de Cualidades de un Esquema
PROFESOR
ESTUDIANTE
consej
(2,2)
(0,n)
ESTUDIANTE
PROFESOR
doctmaestr
(0,n) (0,n)
(1,1)(1,1)
57
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Transformaciones de Esquemas
- Las Transformaciones de Esquemas se aplicansobre un esquema inicial y generan un nuevoesquema.
- Se pueden clasificar por el contenido deinformación de ambos esquemas.
- Dos esquemas son Equivalentes si cualquierconsulta definida sobre un esquema puedereformularse para aplicarse sobre el otroesquema, dando el mismo resultado.
- Un esquema contiene mayor informaciónque otro esquema si una consulta sobre elprimer esquema no tiene una consultaasociada en el segunda esquema, pero nose cumple al revés.
- Así, se clasifican las transformaciones como,
- Transf. que preservan la información.
- Transf. que no preservan la información.
- Transformaciones de aumento.
- Transformaciones de reducción.
- Transformaciones no comparables.
- Las transformaciones de reducción sólo seaplican cuando aparece informaciónredundante en el esquema.
58
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Ejemplo de Transf. de Esquemas
PERSONA
nombre
edadapellido
(0,1) sit_milsexo
nacio
(1,1)
(0,n)
CIUDADprovincianombre
MUJERHOMBRE
sit_militar
PERSONA
nombre
edadapellido
prov_nacciud_nac
59
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Transformaciones de Minimalidad
- Puede aparecer cierta redundancia en elesquema, porque ésta aparezca en losrequerimientos o se produzca al fundiresquemas en la estrategia ascendente.
- Ciclos de Interrelaciones. Cuando unainterrelación entre dos entidades posee elmismo contenido de información que una rutade interrelaciones.
- Existen ciertas reglas sintácticas que debende tenerse en cuenta, cómo la relaciónentre las cardinalidades de las diferentesinterrelaciones.
- También pueden aparecer diferentesRestricciones de Contención, de modo queuna relación se incluya dentro de otra.
- Atributos Derivados. Los valores del atributopuede calcularse mediante los valores de otrosatributos.
- Se pueden mantener, ya que mejoran laeficiencia de la base de datos.
- En ese caso es necesario especificar elalgoritmo que permite calcular sus valores.
- Subconjuntos Implícitos. La integración deesquemas puede producir la aparición desubconjuntos que puede producirse comosubconjuntos de otros ya definidos.
60
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Ejemplos de Transf. de Minimalidad
telef2ADMINIST
EMPLEADO
dirig_por
(1,1)
(1,n)
TELEFONO
telef1
(1,1)
(1,1)
(1,1)
(1,n)
ADMINIST
EMPLEADO
dirig_por
(1,1)
(1,n)
TELEFONO
telef
(1,1)
(1,1)
trab_enDIRECTOR
EMPLEADO
trab_con
(1,1)
(1,n)
DEPARTAM
controla
(1,n)
(1,1)
(1,1)
(1,n)
61
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Ejemplos de Transf. de Minimalidad
EMPLEADO nombreedad
trabaja_en
PROYECTO códigodirectornum_empl
(1, n)
(1, n)
EMPLEADO nombreedad
trabaja_en
PROYECTO códigodirector
(1, n)
(1, n)
ANALISTA
EXP_COMP
EMPLEADO
ANALISTA
EMPLEADO
ANALISTA
EXP_COMP
EMPLEADO
62
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Transformaciones de Expresividad yAutoexplicación
- Eliminación de Jerarquías de Generalización.Se produce cuando en el proceso de diseñose generen generalizaciones tales que lasentidades subconjuntos no posean ningunacaracterística específica.
- Eliminación de Entidades Colgantes. Unaentidad es colgante si posee uno o dosatributos y sólo posee una conexión con otraentidad, en cuyo caso se puede integrar losatributos de la entidad colgante sobre laentidad con la que se relaciona.
- Creación de Generalizaciones. Cuandoexisten dos entidades con propiedadescomunes que pertenecen a la misma jerarquíade generalización.
- Creación de Subconjuntos. Permite destacar elpapel de una entidad en una interrelación. Sesuele aplicar a entidades que tienencardinalidad mínima igual a cero en algunainterrelación, siempre y cuando el subconjuntoresultante tenga sentido dentro del esquema.
63
CÓMO MEJORAR LA CALIDAD DE UNESQUEMA
Ejemplo de Transf. de Expresividad yAutoexplicación
INSTRUCTPROFESOR
CUERP_DOC
EST_GRAD
CUERP_DOC nivel
edadapellidonombre
nº_seg_soc
PERSONA ciudad_nac
edadapellidonombre
nº_seg_soc
nacio_enPERSONA CIUDAD nombre(1,1) (1,n)
num_emplnombre
conduceEMPLEADO COCHE(0,1) (1,1)
añomatriculatipo
conduceCONDUCT COCHE(1,1) (1,1)
añomatriculatipo
num_emplnombre
EMPLEADO
64