erwin manual

67
AllFusion Erwin Data Modeler Autores: Marco A. Guevara Injoque César R. Flores Nazario © Derechos Reservados 2002

Upload: maria-boffil

Post on 13-Feb-2016

282 views

Category:

Documents


2 download

DESCRIPTION

asdadasadsasdasdadadadasdasd

TRANSCRIPT

Page 1: Erwin Manual

AllFusion ErwinData Modeler

Autores:Marco A. Guevara InjoqueCésar R. Flores Nazario© Derechos Reservados 2002

Page 2: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario2

Conceptos Básicos deModelamientoLógico

• Introducción

Page 3: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario3

Definición de DatoEs la representación de un mensaje. Debe ser OBJETIVO

Definición de InformaciónSon los datos procesados. Debe ser SUBJETIVO

Dato + Proceso = Información

Información = Significado percibido al recibir un mensaje

Base de DatosConjunto de datos organizados de tal manera, que pueda extraerse información y quepueda ser compartida. Entre los usuarios debe existir un consenso en lo que representanlos datos (la información a obtener)

Definición de ModeloRepresentación grafica de la realidad que son clarificados a través de texto explicativo.Ejemplo: Una representación a escala de una casa, Una representación de un automóvil,etc.

Definición de Modelo de DatosEstructuras de datos y reglas de negocio que representan los requerimientos de unsistema.

Page 4: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario4

Tipos de Modelo de DatosLos modelos de datos pueden ser:

• Lógico: Orientado a la empresa, Definiciones y Reglas de Negocio• Físico: Restringido por el DBMS• Dimensional: DataWarehousing, Diseño de DataMart

EntidadUna persona, lugar, evento o concepto acerca del cual el negocio necesita guardar datos.

AtributoPropiedad de una entidad que almacenara datos

Llave Primaria (PK)Un atributo (Llave simple) o conjunto de atributos (Llave compuesta) que identificanúnicamente una instancia (fila o registro) de una entidad. En ERwin la llave primariaesta posicionada sobre la línea en una entidad.

Llave Alterna (AK)Un atributo (Llave simple) o conjunto de atributos (Llave compuesta) que identificanúnicamente una instancia (fila o registro) de una entidad, pero que NO ES ESCOGIDAcomo llave primaria. En ERwin, se muestra por el diagrama (AKx,y) donde xrepresenta un numero entero incrementado para cada llave alterna en una entidad; yrepresenta el orden del atributo llave.

Entrada Inversa (IE)Se utilizan cuando uno o mas atributos son usados frecuentemente para acceder a una omas instancias (filas o registros) de las entidades. EN ERwin son mostrados endiagramas (IEx,y) después de cada atributo de la entrada inversa. donde x representaun numero entero incrementado para cada llave alterna en una entidad; y representael orden del atributo llave.

RelaciónUn enlace lógico entre dos entidades que representa una regla de negocio o unarestricción.

Llave Foránea (FK)Una llave foránea es una llave primaria de una entidad padre (Fuerte) que esAGREGADA a la entidad hijo (Débil) a través de su relación.

Page 5: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario5

Relación IdentificadaLa llave primaria de la entidad padre es migrada a través de la RELACION paraFORMAR parte de la llave primaria de la entidad hijo.

Relación Obligatoria No-IdentificadaLa llave primaria de la entidad padre es migrada como un atributo no llave (no formaparte de la llave primaria de la entidad hijo) de la entidad hijo. La FK necesariamentetiene que tener un valor real de la PK.

Relación No-Obligatoria No-IdentificadaLa llave primaria de la entidad padre es migrada como un atributo no llave (no formaparte de la llave primaria de la entidad hijo) de la entidad hijo. La opcianalidad en ellado del padre indica que la FK en la entidad hijo puede existir sin la información de laPK de la entidad padre.

Relación Muchos a MuchosLa llave primaria de la entidad padre no es migrada como llave foránea. Cada fraserepresenta la regla desde la perspectiva

• Padre a Hijo• Hijo a Padre

Rol de ERwin en el Modelamiento de DatosERwin es una herramienta de base de datos que le ayuda a diseñar, generar y manteneraplicaciones de base de datos de calidad y alto rendimiento. Desde un modelo lógico desus requerimientos de información y reglas del negocio que definen su base de datos,hasta un modelo físico, optimizado por las características específicas de su base de datosde destino, ERwin le permite visualizar la estructura adecuada, los elementos clave y undiseño optimizado de su base de datos.ERwin genera tablas automáticamente y miles de líneas de stored procedures y códigotrigger para las principales bases de datos. Su tecnología "complete-compare" permite eldesarrollo interactivo, de manera que su modelo está siempre sincronizado con su basede datos. A través de la integración con los ambientes de desarrollo líderes en laindustria, ERwin también acelera la creación de aplicaciones data-centric.

Beneficios de ERwin• Asegura consistencia, reuso, e integración de los datos del proyecto al

proporcionar el bosquejo que las IT necesitan para entender, analizar ycomunicar la estructura de la base de datos.

• Mejora la productividad entre los desarrolladores cuando los diseños de la basede datos son divididos, compartidos, y reutilizados.

Page 6: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario6

• El ambiente gráfico facilita la visualización de la estructura completa, loselementos claves y el diseño optimizado de la base de datos.

• Le ahorra tiempo al acelerar la creación de bases de datos de alta calidad,transaccionales de alto rendimiento y para data warehouse.

• Mantiene los recursos y mejora la precisión al sincronizar el modelo y la base dedatos.

Para el presente manual seguiremos haciendo uso del caso de estudio que se planteo enel manual de Modelamiento de Procesos.

Page 7: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario7

Herramientas deNavegación deERwin 3.52

• Caja de Herramientas• La Barra de Herramientas• El Editor de Diagramas• Ventana Principal de ERwin

Page 8: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario8

La Barra de Herramientas de ERwin

Barra de Herramientas Lógica IDEF1X

Barra de Herramientas Lógica IE

NuevoModelo

AbrirModelo

GuardarModelo

ImprimirModelo

ExaminarReportes

Vista deTabla

Vista deAtributos

Vista deDefinición

DisminuirZoom

AumentarZoom

NoMagnificar

FitModel

Área deSelección

IngenieríaReversa

ExportarModelo

Servidorde Datos

HerramientaModelMart

Área deNegocios

Tipo deModelo

AgregarEntidadAgregar

Categoría

AgregarTexto

Herramienta demanipulaciónde Atributos

RelaciónIdentificada

Relación NoIdentificada

RelaciónMuchos a Muchos

Siempre seleccione laflecha para regresar almodo Mouse despuésde manipular objetos

AgregarEntidad

AgregarCategoría

AgregarTexto

Herramienta demanipulaciónde Atributos

RelaciónIdentificada

Relación NoIdentificada

RelaciónMuchos a Muchos

Siempre seleccione laflecha para regresar almodo Mouse despuésde manipular objetos

Page 9: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario9

El Editor de DiagramaPara crear un Modelo en ERwin utilice el Editor de Diagrama. Para ello realizar lossiguientes pasos:

1. Desde el menú Edit, elegir Diagram...

2. Ingrese Nombre y Autor3. Seleccione el Servidor de Base de Datos (Target Server)4. Clic en OK para retornar al modelo

Page 10: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario10

Ventana Principal de ERwin

Barra de Herramientas

Menú PrincipalBarra de Tareas

Barra de Texto

Área de Visualización

Page 11: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario11

Creando Entidades yAtributos

• Construyendo Entidades• El Editor en Pantalla• Creando Atributos

Page 12: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario12

Tipos de Entidades en ERwinEn ERwin el modelo lógico puede contener dos tipos de entidades: independiente ydependiente. Una entidad independiente es una entidad que puede identificarse sindeterminar su relación con otra entidad. Cada entidad tiene llave propia, se representacomo una caja con rincones cuadrados. Una entidad dependiente es una entidad quepara identificarse requiere de su relación a otra entidad o entidades. Se representa comouna caja con rincones redondeados.

Entidad Independiente Entidad Dependiente

Construyendo y Nombrando EntidadesPara crear una entidad realizar lo siguiente:

1. Seleccione Entidadde la Caja deHerramientas

2. Cambia el Cursor3. Clic en el fondo del

diagrama4. Tipee el nombre de la

entidad5. Finalmente

seleccione la flecha

Page 13: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario13

Nota: ERwin establece un nombre por defecto para la Entidad así como paracualquier objeto construido.

El Editor de EntidadesUtilice el editor de entidades para ingresar/editar, definiciones de entidades y sus notas,para explorar definiciones, cambiar el nombre a la entidad o para asignar propiedadesdefinidas por el usuario UPD. Para ello realizar lo siguiente

1. Clic derecho en unaEntidad para mostrarel menú contextual

2. Escoja Entity Editor

1. Ingrese la Definiciónen el tab Definition

2. Seleccione el ComboBox en la partesuperior de laventana de dialogopara elegir otraentidad a ser editada

3. Finalmente clic enOK

Page 14: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario14

Finalmente la entidad quedara definida tal como se muestra en la figura:

El Editor en PantallaEl editor en pantalla permite crear en forma rápida el nombre de la entidad, atributos, yllaves. Para ello realizar lo siguiente:

4. Seleccione una Entidad.5. Presione TAB para pasar al

área de los atributos llaves yescriba el nombre de losatributos

6. TAB para pasar al área delos atributos no-llave yescriba el nombre de estos

Haga clic aquí paravisualizar definicionesde entidades

Page 15: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario15

Nota:1. Si la llave primaria es compuesta use la tecla ENTER para escribir atributos

adicionales en esta área2. Utilizar la tecla ENTER para incluir mas atributos

El Editor de AtributosEl editor es utilizado construir y editar llaves primarias y atributos no-llave, explorarentidades, definir atributos, asignar dominios y crear llaves alternas y entradas inversas.Para ingresar al editor de atributos realizar lo siguiente:

1. Clic derecho en una entidad2. Elija la opción Attribute Editor3. Finalmente ERwin le mostrara la siguiente ventana

1. Seleccione el CheckBox“Primary Key” en el tabGeneral para designar que unatributo es parte de la llaveprimaria

2. Seleccione el CheckBox“Logical Only” para indicarque un atributo seleccionadono aparezca como unacolumna en el modelo fisico

3. Seleccione el CheckBox“Required” para indicar queun atributo debe tener un valor

Page 16: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario16

Para el caso en estudio las entidades a crear son las siguientes:PRODUCTOCLIENTEPERSONALUSUARIOPROFORMANOTA DE PEDIDOFACTURABOLETA

El modelo quedara tal como se muestra en la siguiente figura:

Haga clic aquí paravisualizar atributos

Page 17: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario17

Creando Llaves• Llaves Primaria• Llaves Alternas• Llaves Inversas

Page 18: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario18

Creando Llaves Primaria (PK)Por definición un Llave Primaria es aquella que identifica de manera única una fila de laentidad. Esta debe cumplir ciertos requisitos:

1. No cambia con el tiempo2. No acepta valores NULL3. No acepta valores repetidos

En ERwin para crear una Llave Primaria realizar lo siguiente:1. Clic derecho sobre la entidad2. Seleccione Key Group...

3. Posteriormente ERwin le mostrara la siguiente ventana:

Page 19: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario19

4. En la zona de Available Attributes seleccione el atributo CODIGO DEPERSONAL

5. Posteriormente haga clic en el botón para elegir el atributo como PK6. En el cuadro combinado que tiene como titulo Entity elija otra entidad y

seleccione el atributo que usted ha elegido como Llave Primaria7. Repita el paso 58. Finalmente Clic en OK

Otra forma de crear Llaves Primarias es haciendo uso de la herramienta demanipulación de atributos de la barra de trabajo de ERwin de la siguiente manera:

1. Clic en la caja de herramienta que tiene como titulo manipulación de atributos2. Haga clic en el atributo CODIGO DE PERSONAL, arrástrelo y ubíquelo por

encima de la línea y suelte.3. Automáticamente ERwin creara la Llave Primaria.4. Realizar los mismos pasos para las demás entidades.

Para el caso en estudio las lleves primaria del modelo serán las que se muestran acontinuación:

Page 20: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario20

Creando Llaves Alternas (AK)Una llave alterna (AK) es un atributo o grupos de atributos que no fueron elegidos comoLlaves Primarias. En ERwin para crear una Llave Alterna realizar lo siguiente:

1. Clic derecho sobre la entidad2. Seleccione Key Group...3. ERwin le mostrara la siguiente ventana

Entidades del Modelo consus Llaves Primarias (PK)

1. Haga clic en elbotón NEW

2. ERwin lemostrara lasiguienteventana

Page 21: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario21

1. Seleccione Key Groupy escriba AK

2. Un nombre por defectoes creado pero puedeser modificado.

3. Finalmente clic en OK

4. Luegoseleccione losatributos quevan a serincluidosdentro de lallave.

5. Clic en laflecha derechapara incluiratributos

6. Finalmenteclic en OK

Page 22: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario22

Creando Llaves Inversas (IE)Para crear Llaves Inversa o Entrada Inversa repita los mismos pasos que siguió paracrear una Llave Alterna. En la ventana New Key Group elija el botón que tiene comotitulo Inversion Entry (no-unique). Tal como se muestra en la figura:

Finalmente Seleccione los atributos que van a ser incluidos dentro de la llave y haga clicen la flecha derecha para incluirlos. El modelo quedara tal como se muestra en la figura:

Page 23: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario23

El Modelo para el caso en estudio la entidad personal quedara tal como se muestra en lafigura:

Entidad Personal con unaLlave Alterna (AK1.1) y conuna Entrada Inversa (IE1.1)definidas

Page 24: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario24

Creando Relaciones• Relación Identificada• Relación no Identificada• Relación Muchos a Muchos

Page 25: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario25

Creando RelacionesERwin define tres tipos de relaciones:

1. Relación Identificada2. Relación no Identificada3. Relación Muchos a Muchos

Para todos los casos la construcción de las relaciones es tal como se detalla acontinuación:

1. Seleccione el tipo de relación de la caja de herramienta2. Seleccione la entidad Padre3. Seleccione la entidad hijo4. Seleccione la flecha de la caja de herramienta para desactivar la relación

Para el ejemplo las relaciones quedaran establecidas de acuerdo a la siguiente figura:

Nota: Las relaciones están sin editarse dentro del modelo, a continuación pasaremosa hablar sobre la edición de la relaciones.

Page 26: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario26

Editando la RelacionesPara editar una relación realizar lo siguiente:

1. Haga doble clic sobre la relación2. ERwin le mostrara la siguiente ventana:

Para el presente modelo edite las siguientes relaciones de acuerdo a la tabla que semuestra a continuación:

Entidades Relacionadas No Null CardinalidadPersonal-Usuario X Zero-unoCliente-Proforma SI XPro forma-Pedido SI Zero-unoPedido-Boleta SI Zero-unoPedido-Factura SI Zero-unoUsuario-Cliente SI XUsuario-Producto SI XUsuario-Proforma SI XUsuario-Pedido SI XUsuario-Boleta SI XUsuario-Factura SI X

Finalmente el modelo se visualizara tal como se muestra en la figura:

Utilizar el TABGeneral para:1. Ingresar frases a

la relación2. Cambiar

Cardinalidad3. Cambiar el tipo

de relación4. Marcar la

relación comosolamente Lógica

Page 27: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario27

Creando Frase-Verbo a las RelacionesUna frase verbo permite describir la relación entre dos entidades, para ello realizar losiguiente:

1. Doble clic sobre la relación2. En el TAB General ingrese a la zona que tiene como titulo Parent-to-Child y

escriba el verbo para la relación3. Finalmente clic en OK

Page 28: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario28

Si aplicamos esta opción a todas nuestra relaciones dentro del modelo estas sevisualizaran tal como se muestra en la figura:

Nota: El modelo lógico debe tener todas sus entidades totalmente relacionadas, nopuede existir ninguna entidad acéfala ya que dejaría de ser un modelo Entidad-Relación

Page 29: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario29

Creando Áreas deNegocio y StoredDisplay

Page 30: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario30

Áreas de Negocio (Subject Área)Permiten trabajar con un subconjunto de entidades mientras se mantiene la integridad detodo el modelo. Para crear una Área de Negocio realizar lo siguiente:

1. Haga clic en el icono de la barra de herramienta de ERwin2. También desde el menú Edit elija Subject Área3. ERwin le mostrara la siguiente ventana

4. Luego haga clic en el TAB Members y ERwin le mostrara la siguiente ventana

1. Haga Clic enNew

2. En la opcionName ingreseun nombrepara el área denegocio.

3. Clic en OK

1. Mueva las entidadesque se incluirándentro del área denegocio

2. Incluya entidadesrelacionadas a unaentidad utilizando losdos últimos botones

3. Seleccione un grupode entidadescombinando CTRLy/o SHIFT

Page 31: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario31

Para visualizar realizar lo siguiente:1. seleccione la opcion área de negocio y despliegue el botón de flecha hacia abajo2. Seleccione el nombre del área de negocio que fue creado3. Finalmente ERwin le mostrara lo siguiente:

Creando Stored DisplayPermiten crear Tabs en la parte inferior de la ventana principal de ERwin. Para ellorealizar lo siguiente:

1. Desde el Menú Edit seleccione Stored Display...2. ERwin le mostrara la siguiente ventana

Área de Negociocreada con susrespectivas entidades

1. Seleccione Rename2. Ingrese el nuevo

nombre3. Clic en OK4. Para crear mas

Stored Display clicen el botón New

Page 32: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario32

Finalmente el modelo se visualizara tal como se aprecia en la siguiente figura:

1. Clic en cada TABs paraseleccionar el nivelapropiado devisualización y reordenarel modelo

2. El ordenamiento y losniveles de visualizaciónpermanecenalmacenados

Stored Display creados enERwin a nivel de entidades

Page 33: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario33

Opciones de VisualizaciónEstas opciones permiten visualizar de distinta manera el modelo ERwin. Para ellodistinguimos las siguientes opciones de visualización:

1. Nivel de Entidad2. Nivel de Atributo3. Nivel de Llave Primaria4. Nivel de Definición5. Nivel de Iconos

Stored Display creados enERwin a nivel de Llaves (PK)

Page 34: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario34

Nivel de EntidadPara ello, en la barra de herramientas de ERwin seleccione el botón

Nivel de AtributoPara ello, en la barra de herramientas de ERwin seleccione el botón

Nivel de Llave PrimariaPara ello, en la ventana de fondo haga clic derecho y elija la opcion Display Level,posteriormente elija la opcion Primary Key

Page 35: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario35

Creando AtributosIndependientes

Page 36: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario36

Creando Atributos IndependientesEn ERwin, un dominio es un objeto independiente que se utiliza para asignarrápidamente las propiedades a un atributo o la columna. Una vez que se haya definido eldominio, se pueden emplear en ambos modelos: lógico y físico. Entre sus ventajastenemos:

• Promueve la consistencia• Reduce el tiempo en el desarrollo y la conservación (si cambia el dominio,

todas columnas asociadas con el dominio se cambian también)• Apoyo a las propiedades definidas por el usuario• Define los atributos y las columnas

Los tipos de dominio que se pueden crear en ERwin son:• String Cadena• Number Numero• DateTime FechaHora• Blob General

Para crear un Dominio realizar los siguientes pasos:1. En el examinador de Atributos independientes haga clic en cualquier tipo de

dominio por ejemplo String

Haga doble clic sobre cualquiertipo de dominio

Page 37: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario37

2. ERwin le mostrara la siguiente ventana:

3. Finalmente el dominio se visualizara en el Diccionario de Dominios

Haga clic en elbotón New paracrear un nuevoDominio.

Dominio creado detipo cadena

Page 38: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario38

Por otro lado desde el Examinador de Atributos también se pueden crear Dominios paraello realizamos lo siguiente:

Finalmente el explorador de atributos se visualizara tal como se muestra en la siguientefigura:

Copiar los atributosexistentes alexplorador de atributosindependientes paraser utilizados comoestándar

Utilizar CRTL + clic paraseleccionar todos losatributos en la entidad yluego arrastrelo alexaminador de atributos

Dominios creados por la copia de losatributos de la entidad personal

Page 39: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario39

Utilizando Atributos IndependientesLos atributos independientes pueden utilizarse para asignar atributos existentes en eldominio en el Editor de Atributos. Cuando la herencia esta configurada correctamente,cualquier cambio hecho al dominio afectara automáticamente a los atributos referidosdentro de las entidades.

1. Crear una Entidad2. Haga clic en la herramienta de

manipulación de atributos de lacaja de ERwin

3. Seleccione un atributoindependiente del examinador deatributos

4. Arrástrelo y colóquelo en la zonade atributos de la Entidad

Page 40: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario40

Refinando el Modelode Datos

• Unificación• Rolenames• Relaciones Recursivas• Resolución Muchos a Muchos

Page 41: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario41

UnificaciónCuando un atributo es migrado como una llave foránea dentro de una entidad en la queeste ya existe, los dos son unificados dentro de un solo atributo. Esto se deriva de unaregla IDEF en la cual si un objeto tiene el mismo nombre entonces es la misma cosa.Para demostrar este ejemplo en el modelo que se muestra, vamos a crear una entidad yen ella vamos a incluir un atributo con el mismo nombre de la llave primaria de laentidad padre y luego procederemos a establecer la relación.

Al establecer la relación ERwin le mostrara la siguiente ventana:

Finalmente haga clic en OK para establecer la relación.

Entidad creada con un atributollamado código de cliente.

Este cuadro de dialogomuestra las siguientesopciones:1. Reemplazar el

atributo2. Renombrar el

atributo3. Crear un nuevo

nombre a la llaveforánea.

Page 42: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario42

Rolenamed Foreign KeyEs un atributo cuyo nombre ha sido cambiado en la llave foránea para mostrar su rol.Para ilustrar el ejemplo veamos el caso de una tienda que vende y alquila herramientasal mismo tiempo, a su vez esta tienda pertenece a una división dentro del negocio.Según lo planteado el grafico se muestra tal como se aprecia.

Para ello realizamos lo siguiente:1. Haga doble clic en la relación2. Elija el TAB Rolename3. En el cuadro de texto escriba el nombre para cada llave para cambiar el rol

dentro de la entidad.

El grafico muestra la relación entre tienday herramientas, nótese que al realizar larelación la misma PKs concatenadasmigran a la entidad herramientas. Perocada relación tiene que cumplir su rolrespectivo dentro de la entidad hija (vendey alquila) , para ello utilizamos elRolenaming.

Cambie el rol paracada llave

Page 43: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario43

4. Finalmente el modelo se vera tal como se aprecia en la figura:

Creando una Relación RecursivaEs una relación que se establece entre una misma entidad. Para el presente ejemplovamos a crear una entidad llamada empleados y vamos a establecer la relación entre simisma, tal como se aprecia en la siguiente figura:

Al establecer la relación no sepuede apreciar la FK dentro dela entidad, para ello utilizarRolename para poder visualizarla FK dentro de la entidad

1. Clic derecho en la relación2. Elija Relationship Editor3. Ingrese una frase4. Asigne una Rolename a la

llave foránea5. Clic en OK para regresar al

modelo

Page 44: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario44

Finalmente la relación quedara tal como se aprecia en la siguiente figura:

Resolviendo Relaciones Muchos a MuchosPara resolver relaciones muchos a muchos se tienen que crear entidades asociativas.También podemos resolverlas utilizando la opción Many to Many que proporcionaERwin para dichas relaciones.

Para el ejemplo veamos la siguiente relación:

Un método alternativo para resolver dicha relación es la siguiente:1. Clic derecho en la relación Muchos a Muchos2. Elija la opción Resolve Many to Many3. Analice los resultados cuidadosamente

Aquí se puede apreciar la llaveforánea sobre la misma entidad

Page 45: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario45

4. Finalmente la relación quedara resuelta tal como se aprecia en la siguiente figura

Nivel de VisualizaciónPara ello, en la barra de herramientas de ERwin seleccione el botón

Nivel de IconosPara ello, en la ventana de fondo haga clic derecho y elija la opcion Display Level,posteriormente elija la opcion Icon.

Entidad agregada através de la relaciónMuchos a Muchos

Page 46: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario46

Refinando el Modelode Datos

• Generalización Jerárquica• Integridad Referencial

Page 47: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario47

Jeneralización JerárquicaSe define como un conjunto de entidades que comparten atributos comunes. Paracomprender la definición veamos un ejemplo:

Símbolos de las Relaciones

Padre Genérico (Supertipo).Contiene atributos y llavesgeneralizados

Categoría (Subtipo). Entidadque contiene llaves foráneasmigradas y atributosdistintivos.

Completa(Obligatorio)

Incompleta(Opcional)

Utilizar el símbolo decategoría completa dondetodos los subtipos sonmostrados. Cada instancia delSupertipo debe tener unainstancia en uno de lossubtipos.

Utilizar el símbolo deincompleta donde todos lossubtipos no son mostradosdebido a que ellos norequieran de atributosdistintivos. Cada instancia delSupertipo podría tener unainstancia en uno de lossubtipos.

Page 48: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario48

Para entender esta definición veamos un ejemplo:

Ejemplo de Categoría CompletaVemos el siguiente modelo donde la Regla de negocio indica que: Un vehículo debe serun CAMION o una EMBARCACION. No puede ser otra cosa mas. La grafica será talcomo se muestra en la figura:

Discriminador deCategoría

Tipo de vehículo

Page 49: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario49

Ejemplo de Categoría IncompletaVemos el siguiente modelo donde la Regla de negocio indica que: Un vehículoPODRIA ser un CAMION o una EMBARCACION. Podría ser también un AUTOpero no necesitamos registrar atributos distintivos de AUTOS por eso no lomodelamos. La grafica será tal como se muestra en la figura:

Crear una Generalización JerárquicaPara crear una Generalización Jerárquica realizar los siguientes pasos:

1. Seleccione el icono relación de categoría desde la caja de herramientas2. Seleccione la entidad Supertipo3. Seleccione la entidad subtipo (hijo)4. Repita los siguientes pasos para cada entidad subtipo adicional a ser conectada

a. Clic en el símbolo de relación de categoríab. Clic en la entidad subtipo

Discriminador deCategoría

Tipo de vehículo

Page 50: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario50

5. Finalmente clic derecho en el símbolo de categoría para cambiar eltipo(exclusiva o inclusivo)

Haga clic aquí, paraenlazar a la entidad

Luego clic derechoaquí, para editar la

subcategoría

Elija la opciónInclusiva en el grupo deopciones. Finalmenteclic en OK.

Page 51: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario51

Finalmente la subcategoría se vera tal como se muestra en la siguiente figura:

Integridad Referencial (RI)Se define como reglas que determinan lo que pasa cuando una fila de la entidad Padre oHijo es insertada, actualizada o eliminada. Evita la data huérfana y asegura que lasreglas de negocio se cumplan.ERwin asocia por defecto opciones RI para cada acción en una relación, basado en eltipo de relación, acción y rol de la entidad (padre/hijo). Estos valores por defecto estánbasados en el sentido de GENERALIDAD; ellos pueden ser sobrescritos para todo elmodelo o para una acción dada en una relación establecida.

ACCION TIPO DE RELACION

Identificada

NoIdentificada

(AceptaNULL)

NoIdentificada(No Acepta

NULL)

Subcategoría

Al Eliminar en el hijo Ninguna Ninguna Ninguna NingunaAl Insertar en el hijo Restricción Set Null Restricción RestricciónAl Actualizar en el hijo Restricción Set Null Restricción RestricciónAl Eliminar en el padre Restricción Set Null Restricción CascadaAl Insertar en el padre Ninguna Ninguna Ninguna NingunaAl Actualizar en el padre Restricción Set Null Restricción Cascada

Page 52: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario52

Opciones de Integridad ReferencialPara cambiar las opciones de Integridad Referencial para un relación especifica realizarlo siguiente:

1. Clic derecho en la línea de relación2. Elija la opción Relationship Editor…3. En el editor de relaciones seleccione el TAB RI Actions4. Seleccione las opciones de Integridad referencial desde el ComboBox5. Clic en OK para retornar al modelo

Cambie las opciones deIntegridad Referencialpara la relaciónestablecida. Finalmenteclic en OK.

Page 53: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario53

Bases delModelamiento Físico

Page 54: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario54

Representación Física del Modelo de DatosERwin mantiene las representaciones Lógica y Física del modelo de datos. Soportacaracterísticas físicas del servidor objetivo (Target Server). Sincroniza el modelo físicode datos con el catalogo del servidor objetivo.

Objetos Logical Only (Solo Lógicos)Entre estos objetos tenemos:

1. Las relaciones Muchos a muchos solamente se muestran en el modelo lógico2. Los símbolos de Generalización Jerárquica cambian en el modelo Físico3. Entidades, atributos individuales o relaciones podrían ser diseñadas como solo

lógicos.

RELACIONES MUCHOS A MUCHOS

Vista en el Modelo Lógico

Vista en el Modelo Físico

Modelo Lógico

Page 55: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario55

GENERALIZACION JERARQUICA

Objetos Physical Only (Solo Físicos)Entre estas tenemos:

1. Vistas son solo mostrados en el modelo físico2. Tablas columnas o relaciones también pueden ser designadas como físico.

Selección del ServidorERwin administra el modelo físico según el servidor de base de datos seleccionado. Lasopciones de columna están disponibles para el tipo de datos seleccionado. Laspropiedades de almacenamiento físico pueden ser asignadas para una base de datosespecífica. Las opciones de índice son especificadas para los servidores que lassoporten.

Selección del ClienteERwin soporta desarrollo de aplicaciones cliente tan bien como el diseño y construcciónde la base de datos. Edwin administra la parte del modelo basado en la herramientacliente seleccionada.

Modelo Físico

Modelo LógicoModelo Físico

Page 56: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario56

Seleccionando elServidor de Datos

• Reconfigurando nombres físicos• Configurando valores por RI• Selección del Cliente

Page 57: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario57

Seleccionando el ServidorPara elegir el servidor realizar los siguientes pasos:

1. Clic en el icono desde la barra de herramientas2. O también desde el menú Server elija la opción Target Server3. ERwin le mostrara la siguiente ventana:

Reconfigurando Nombres físicosConfigure los nombres físicos para el modelo haciendo clic en RESET NAMES. ERwinle mostrara la siguiente ventana:

1. Seleccione el botónradio correspondienteal Servidor elegido

2. Si se aplica,seleccione el numerode la versión desde elcombobox

3. Seleccione la opciónNULL para valoresno llaves para elmodelo

4. Seleccione el tipo dedatos por defecto

5. Configure el nombrepor defecto de lastablas

6. Configure el nombrepor defecto de losíndices

1. Configure laspropiedades del DBMS

2. Seleccione las opcionesa ser configuradas

3. Clic en OK pararegresar a la ventana deselección del servidor

Page 58: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario58

Configurando los valores por defecto de RI…Para cambiar las opciones por defecto de la Integridad Referencial haga clic en el botónRI DEFAULTS….Tal como se aprecia en la siguiente ventana:

Seleccionando el clientePara elegir al cliente realizar las siguientes acciones:

La configuración deeste cuadro de dialogoafectan las opciones deIntegridad Referencialasignadas al modelo.

Desde el menú Clientelija la opción TargetClient… ERwin lemostrara la siguienteventana:

Elija una de lasopciones que seindican. Finalmenteclic en OK..

Page 59: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario59

ERwin le mostrara lasiguiente ventana;haga clic en Si

Page 60: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario60

Modelamiento Físico• Asignando Propiedades a las

Columnas• Asignando Tipo de Datos• Creando Reglas de Validación• Usando el Editor de Tablas• Índices

Page 61: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario61

Asignando Propiedades a ColumnasPara asignar propiedades a las columnas realizar lo siguiente:

1. Clic derecho sobre la tabla2. Elija Column Editor…

Asignando Tipo de DatosPara asignar tipo de dato a las columnas realizar lo siguiente:

1. Clic derecho sobre la tabla2. Elija Column Editor…3. Elija el TAB que tiene como nombre el servidor de base de datos elegido

En esta ventanaespecifique lainformación delcliente y delservidor incluyendotipo de dato y reglade validación.En el TAB Generalseleccione:• Un dominio• Configure la

Llave Primaria• Configure

Physical Only

Elija el TAB DBMSy seleccione:• Tipo de dato• Longitud si es

necesario• Opción NULL

Page 62: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario62

Creando Reglas de Validación (Validation Rule)Es una expresión que establece un rango de valores aceptables que pueden seralmacenadas en una columnaPueden ser ingresadas y mantenidas desde ERwin y permiten que el servidor de basesde datos valide la información a ser almacenada. Permite que la aplicación cliente validela información antes de hacer una llamada a la base de datos.Para crear una regla de validación en ERwin realizar los siguientes pasos:

1. Cambiar al Modelo físico2. Clic derecho en la tabla y elija la opción Column Editor…3. ERwin le mostrara la siguiente ventana:

1. Clic al costado delComboBox “VALID”

2. ERwin le mostrara lasiguiente ventana

Page 63: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario63

1. Clic en el botón NEW2. Ingrese un nombre3. Clic en OK4. Luego haga clic en el

botón VALID VALUE5. ERwin le mostrara la

siguiente ventana.

1. Clic en NEW2. Ingrese un nombre3. Ingrese un valor para

Display Value4. Describa la definición

de la regla5. Clic en OK

1. Escriba el nombre de la regla devalidación

2. Clic en OK

Page 64: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario64

Posteriormente ERwin le mostrara nuevamente la ventana anterior con la regla devalidación creada:

Clic en OK nuevamente para regresar al editor de columnas donde la regla será ligada ala columna tal como se muestra en la figura.

Page 65: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario65

DominioConjunto de propiedades de atributos/columnas definidas por el usuario. Utilizar losdominios para:

• Ahorrar tiempo• Evitar errores• Estandarizar el Modelo

Todo lo que puede especificar para una columna con aquellas especificadas para eldominio lógico. Estas propiedades están relacionadas con aquellas especificadas para eldominio lógico. Crear dominios para la información de uso común.

Asignando Tipo de Datos a un DominioPara asignar un tipo de datos a un dominio realizar lo siguiente:

1. Pasar al modelo Físico2. En el examinador de dominios haga doble clic sobre uno de ellos

Dominios creados enel modelo Lógico

1. Elija el TAB2. Elija el tipo

de dato3. Repita el

mismo pasopara cadadominio

Page 66: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario66

IndicesEstructura asociada con una tabla para realizar la búsqueda más fácil. Existe unarelación entre el número de índices y la performance en las actualizaciones.La elección depende del negocio:

• Son actualizaciones o consultas mas criticas• Cual es el volumen de la tabla• Cual volátil es la tabla

Creación de ÍndicesPara crear índices realizar los siguientes pasos:

1. Clic derecho en la tabla2. Elija SQL Server Index

3. ERwin mostrara el siguiente cuadro de dialogo:

Nótese que existe uníndice creado, como PK.Para crear un nuevoíndice:1. Clic en New2. Marque o desmarque

el checkbox“UNIQUE”

3. Ingrese el nombre delíndice

4. clic en OK5. Luego seleccione las

columnas que van aformar parte delíndice.

Page 67: Erwin Manual

EERRwwiinn

Marco A. Guevara Injoque Cesar R. Flores Nazario67

En el TAB Commentingrese el propósitodel índice, finalmenteclic en OK pararegresar al modelo