64
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)

FICHEROS Y BASES DE DATOS (E44) 3º …aliaga/e44/Tema_12.pdf · - La evolución de la base de datos puede estudiarse como la transición entre dos casos, mediante la aplicación

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

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