ERwin - Wikispaces

Anuncio
AllFusion Erwin
Data Modeler
Autores:
Marco A. Guevara Injoque
César R. Flores Nazario
© Derechos Reservados 2002
ERwin
Conceptos Básicos de
Modelamiento
Lógico
• Introducción
Marco A. Guevara Injoque
2
Cesar R. Flores Nazario
ERwin
Definición de Dato
Es la representación de un mensaje. Debe ser OBJETIVO
Definición de Información
Son los datos procesados. Debe ser SUBJETIVO
Dato
+
Proceso
=
Información
Información = Significado percibido al recibir un mensaje
Base de Datos
Conjunto de datos organizados de tal manera, que pueda extraerse información y que
pueda ser compartida. Entre los usuarios debe existir un consenso en lo que representan
los datos (la información a obtener)
Definición de Modelo
Representació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 Datos
Estructuras de datos y reglas de negocio que representan los requerimientos de un
sistema.
Marco A. Guevara Injoque
3
Cesar R. Flores Nazario
ERwin
Tipos de Modelo de Datos
Los 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
Entidad
Una persona, lugar, evento o concepto acerca del cual el negocio necesita guardar datos.
Atributo
Propiedad 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 primaria
esta 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 ESCOGIDA
como llave primaria. En ERwin, se muestra por el diagrama (AKx,y) donde x
representa un numero entero incrementado para cada llave alterna en una entidad; y
representa el orden del atributo llave.
Entrada Inversa (IE)
Se utilizan cuando uno o mas atributos son usados frecuentemente para acceder a una o
mas instancias (filas o registros) de las entidades. EN ERwin son mostrados en
diagramas (IEx,y) después de cada atributo de la entrada inversa. donde x representa
un numero entero incrementado para cada llave alterna en una entidad; y representa
el orden del atributo llave.
Relación
Un enlace lógico entre dos entidades que representa una regla de negocio o una
restricción.
Llave Foránea (FK)
Una llave foránea es una llave primaria de una entidad padre (Fuerte) que es
AGREGADA a la entidad hijo (Débil) a través de su relación.
Marco A. Guevara Injoque
4
Cesar R. Flores Nazario
ERwin
Relación Identificada
La llave primaria de la entidad padre es migrada a través de la RELACION para
FORMAR parte de la llave primaria de la entidad hijo.
Relación Obligatoria No-Identificada
La llave primaria de la entidad padre es migrada como un atributo no llave (no forma
parte de la llave primaria de la entidad hijo) de la entidad hijo. La FK necesariamente
tiene que tener un valor real de la PK.
Relación No-Obligatoria No-Identificada
La llave primaria de la entidad padre es migrada como un atributo no llave (no forma
parte de la llave primaria de la entidad hijo) de la entidad hijo. La opcianalidad en el
lado del padre indica que la FK en la entidad hijo puede existir sin la información de la
PK de la entidad padre.
Relación Muchos a Muchos
La llave primaria de la entidad padre no es migrada como llave foránea. Cada frase
representa la regla desde la perspectiva
• Padre a Hijo
• Hijo a Padre
Rol de ERwin en el Modelamiento de Datos
ERwin es una herramienta de base de datos que le ayuda a diseñar, generar y mantener
aplicaciones de base de datos de calidad y alto rendimiento. Desde un modelo lógico de
sus 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 datos
de destino, ERwin le permite visualizar la estructura adecuada, los elementos clave y un
diseño optimizado de su base de datos.
ERwin genera tablas automáticamente y miles de líneas de stored procedures y código
trigger para las principales bases de datos. Su tecnología "complete-compare" permite el
desarrollo interactivo, de manera que su modelo está siempre sincronizado con su base
de datos. A través de la integración con los ambientes de desarrollo líderes en la
industria, 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 y
comunicar la estructura de la base de datos.
Mejora la productividad entre los desarrolladores cuando los diseños de la base
de datos son divididos, compartidos, y reutilizados.
Marco A. Guevara Injoque
5
Cesar R. Flores Nazario
ERwin
•
•
•
El ambiente gráfico facilita la visualización de la estructura completa, los
elementos 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 de
datos.
Para el presente manual seguiremos haciendo uso del caso de estudio que se planteo en
el manual de Modelamiento de Procesos.
Marco A. Guevara Injoque
6
Cesar R. Flores Nazario
ERwin
Herramientas de
Navegación de
ERwin 3.52
• Caja de Herramientas
• La Barra de Herramientas
• El Editor de Diagramas
• Ventana Principal de ERwin
Marco A. Guevara Injoque
7
Cesar R. Flores Nazario
ERwin
La Barra de Herramientas de ERwin
Guardar
Nuevo
Modelo
Modelo
Vista de
No
Exportar
Examinar
Disminuir
Área de
Herramienta
Atributos
Magnificar
Modelo
Reportes
Zoom
Selección
ModelMart
Imprimir
Modelo
Abrir
Modelo
Vista de
Fit
Servidor
Definición
Model
de Datos
Vista de
Aumentar
Ingeniería
Tabla
Zoom
Reversa
Tipo de
Modelo
Área de
Negocios
Barra de Herramientas Lógica IDEF1X
Siempre seleccione la
flecha para regresar al
modo Mouse después
de manipular objetos
Agregar
Texto
Agregar
Entidad
Agregar
Categoría
Herramienta de
manipulación
de Atributos
Relación
Identificada
Relación No
Identificada
Relación
Muchos a Muchos
Barra de Herramientas Lógica IE
Agregar
Entidad
Siempre seleccione la
flecha para regresar al
modo Mouse después
de manipular objetos
Agregar
Texto
Agregar
Categoría
Herramienta de
manipulación
de Atributos
Relación
Identificada
Relación No
Identificada
Relación
Muchos a Muchos
Marco A. Guevara Injoque
8
Cesar R. Flores Nazario
ERwin
El Editor de Diagrama
Para crear un Modelo en ERwin utilice el Editor de Diagrama. Para ello realizar los
siguientes pasos:
1. Desde el menú Edit, elegir Diagram...
2. Ingrese Nombre y Autor
3. Seleccione el Servidor de Base de Datos (Target Server)
4. Clic en OK para retornar al modelo
Marco A. Guevara Injoque
9
Cesar R. Flores Nazario
ERwin
Ventana Principal de ERwin
Barra de Tareas
Menú Principal
Barra de Texto
Barra de Herramientas
Área de Visualización
Marco A. Guevara Injoque
10
Cesar R. Flores Nazario
ERwin
Creando Entidades y
Atributos
• Construyendo Entidades
• El Editor en Pantalla
• Creando Atributos
Marco A. Guevara Injoque
11
Cesar R. Flores Nazario
ERwin
Tipos de Entidades en ERwin
En ERwin el modelo lógico puede contener dos tipos de entidades: independiente y
dependiente. Una entidad independiente es una entidad que puede identificarse sin
determinar su relación con otra entidad. Cada entidad tiene llave propia, se representa
como una caja con rincones cuadrados. Una entidad dependiente es una entidad que
para identificarse requiere de su relación a otra entidad o entidades. Se representa como
una caja con rincones redondeados.
Entidad Independiente
Entidad Dependiente
Construyendo y Nombrando Entidades
Para crear una entidad realizar lo siguiente:
1. Seleccione Entidad
de la Caja de
Herramientas
2. Cambia el Cursor
3. Clic en el fondo del
diagrama
4. Tipee el nombre de la
entidad
5. Finalmente
seleccione la flecha
Marco A. Guevara Injoque
12
Cesar R. Flores Nazario
ERwin
Nota: ERwin establece un nombre por defecto para la Entidad así como para
cualquier objeto construido.
El Editor de Entidades
Utilice 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 propiedades
definidas por el usuario UPD. Para ello realizar lo siguiente
1. Clic derecho en una
Entidad para mostrar
el menú contextual
2. Escoja Entity Editor
1. Ingrese la Definición
en el tab Definition
2. Seleccione el Combo
Box en la parte
superior
de
la
ventana de dialogo
para elegir otra
entidad a ser editada
3. Finalmente clic en
OK
Marco A. Guevara Injoque
13
Cesar R. Flores Nazario
ERwin
Finalmente la entidad quedara definida tal como se muestra en la figura:
Haga clic aquí para
visualizar definiciones
de entidades
El Editor en Pantalla
El editor en pantalla permite crear en forma rápida el nombre de la entidad, atributos, y
llaves. Para ello realizar lo siguiente:
4. Seleccione una Entidad.
5. Presione TAB para pasar al
área de los atributos llaves y
escriba el nombre de los
atributos
6. TAB para pasar al área de
los atributos no-llave y
escriba el nombre de estos
Marco A. Guevara Injoque
14
Cesar R. Flores Nazario
ERwin
Nota:
1. Si la llave primaria es compuesta use la tecla ENTER para escribir atributos
adicionales en esta área
2. Utilizar la tecla ENTER para incluir mas atributos
El Editor de Atributos
El editor es utilizado construir y editar llaves primarias y atributos no-llave, explorar
entidades, 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 entidad
2. Elija la opción Attribute Editor
3. Finalmente ERwin le mostrara la siguiente ventana
1. Seleccione
el
CheckBox
“Primary Key” en el tab
General para designar que un
atributo es parte de la llave
primaria
2. Seleccione
el
CheckBox
“Logical Only” para indicar
que un atributo seleccionado
no aparezca como una
columna en el modelo fisico
3. Seleccione
el
CheckBox
“Required” para indicar que
un atributo debe tener un valor
Marco A. Guevara Injoque
15
Cesar R. Flores Nazario
ERwin
Para el caso en estudio las entidades a crear son las siguientes:
PRODUCTO
CLIENTE
PERSONAL
USUARIO
PROFORMA
NOTA DE PEDIDO
FACTURA
BOLETA
El modelo quedara tal como se muestra en la siguiente figura:
Haga clic aquí para
visualizar atributos
Marco A. Guevara Injoque
16
Cesar R. Flores Nazario
ERwin
Creando Llaves
• Llaves Primaria
• Llaves Alternas
• Llaves Inversas
Marco A. Guevara Injoque
17
Cesar R. Flores Nazario
ERwin
Creando Llaves Primaria (PK)
Por definición un Llave Primaria es aquella que identifica de manera única una fila de la
entidad. Esta debe cumplir ciertos requisitos:
1. No cambia con el tiempo
2. No acepta valores NULL
3. No acepta valores repetidos
En ERwin para crear una Llave Primaria realizar lo siguiente:
1. Clic derecho sobre la entidad
2. Seleccione Key Group...
3. Posteriormente ERwin le mostrara la siguiente ventana:
Marco A. Guevara Injoque
18
Cesar R. Flores Nazario
ERwin
4. En la zona de Available Attributes seleccione el atributo CODIGO DE
PERSONAL
5. Posteriormente haga clic en el botón
para elegir el atributo como PK
6. En el cuadro combinado que tiene como titulo Entity elija otra entidad y
seleccione el atributo que usted ha elegido como Llave Primaria
7. Repita el paso 5
8. Finalmente Clic en OK
Otra forma de crear Llaves Primarias es haciendo uso de la herramienta de
manipulació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 atributos
2. 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 a
continuación:
Marco A. Guevara Injoque
19
Cesar R. Flores Nazario
ERwin
Entidades del Modelo con
sus Llaves Primarias (PK)
Creando Llaves Alternas (AK)
Una llave alterna (AK) es un atributo o grupos de atributos que no fueron elegidos como
Llaves Primarias. En ERwin para crear una Llave Alterna realizar lo siguiente:
1. Clic derecho sobre la entidad
2. Seleccione Key Group...
3. ERwin le mostrara la siguiente ventana
1. Haga clic en el
botón NEW
2. ERwin
le
mostrara
la
siguiente
ventana
Marco A. Guevara Injoque
20
Cesar R. Flores Nazario
ERwin
1. Seleccione Key Group
y escriba AK
2. Un nombre por defecto
es creado pero puede
ser modificado.
3. Finalmente clic en OK
4. Luego
seleccione los
atributos que
van a ser
incluidos
dentro de la
llave.
5. Clic en la
flecha derecha
para incluir
atributos
6. Finalmente
clic en OK
Marco A. Guevara Injoque
21
Cesar R. Flores Nazario
ERwin
Creando Llaves Inversas (IE)
Para crear Llaves Inversa o Entrada Inversa repita los mismos pasos que siguió para
crear una Llave Alterna. En la ventana New Key Group elija el botón que tiene como
titulo 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 clic
en la flecha derecha para incluirlos. El modelo quedara tal como se muestra en la figura:
Marco A. Guevara Injoque
22
Cesar R. Flores Nazario
ERwin
El Modelo para el caso en estudio la entidad personal quedara tal como se muestra en la
figura:
Entidad Personal con una
Llave Alterna (AK1.1) y con
una Entrada Inversa (IE1.1)
definidas
Marco A. Guevara Injoque
23
Cesar R. Flores Nazario
ERwin
Creando Relaciones
• Relación Identificada
• Relación no Identificada
• Relación Muchos a Muchos
Marco A. Guevara Injoque
24
Cesar R. Flores Nazario
ERwin
Creando Relaciones
ERwin define tres tipos de relaciones:
1. Relación Identificada
2. Relación no Identificada
3. Relación Muchos a Muchos
Para todos los casos la construcción de las relaciones es tal como se detalla a
continuación:
1. Seleccione el tipo de relación de la caja de herramienta
2. Seleccione la entidad Padre
3. Seleccione la entidad hijo
4. 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 pasaremos
a hablar sobre la edición de la relaciones.
Marco A. Guevara Injoque
25
Cesar R. Flores Nazario
ERwin
Editando la Relaciones
Para editar una relación realizar lo siguiente:
1. Haga doble clic sobre la relación
2. ERwin le mostrara la siguiente ventana:
Utilizar
el
TAB
General para:
1. Ingresar frases a
la relación
2. Cambiar
Cardinalidad
3. Cambiar el tipo
de relación
4. Marcar
la
relación
como
solamente Lógica
Para el presente modelo edite las siguientes relaciones de acuerdo a la tabla que se
muestra a continuación:
Entidades Relacionadas
Personal-Usuario
Cliente-Proforma
Pro forma-Pedido
Pedido-Boleta
Pedido-Factura
Usuario-Cliente
Usuario-Producto
Usuario-Proforma
Usuario-Pedido
Usuario-Boleta
Usuario-Factura
No Null
X
SI
SI
SI
SI
SI
SI
SI
SI
SI
SI
Cardinalidad
Zero-uno
X
Zero-uno
Zero-uno
Zero-uno
X
X
X
X
X
X
Finalmente el modelo se visualizara tal como se muestra en la figura:
Marco A. Guevara Injoque
26
Cesar R. Flores Nazario
ERwin
Creando Frase-Verbo a las Relaciones
Una frase verbo permite describir la relación entre dos entidades, para ello realizar lo
siguiente:
1. Doble clic sobre la relación
2. En el TAB General ingrese a la zona que tiene como titulo Parent-to-Child y
escriba el verbo para la relación
3. Finalmente clic en OK
Marco A. Guevara Injoque
27
Cesar R. Flores Nazario
ERwin
Si aplicamos esta opción a todas nuestra relaciones dentro del modelo estas se
visualizaran tal como se muestra en la figura:
Nota: El modelo lógico debe tener todas sus entidades totalmente relacionadas, no
puede existir ninguna entidad acéfala ya que dejaría de ser un modelo EntidadRelación
Marco A. Guevara Injoque
28
Cesar R. Flores Nazario
ERwin
Creando Áreas de
Negocio y Stored
Display
Marco A. Guevara Injoque
29
Cesar R. Flores Nazario
ERwin
Áreas de Negocio (Subject Área)
Permiten trabajar con un subconjunto de entidades mientras se mantiene la integridad de
todo el modelo. Para crear una Área de Negocio realizar lo siguiente:
1. Haga clic en el icono
de la barra de herramienta de ERwin
2. También desde el menú Edit elija Subject Área
3. ERwin le mostrara la siguiente ventana
1. Haga Clic en
New
2. En la opcion
Name ingrese
un
nombre
para el área de
negocio.
3. Clic en OK
4. Luego haga clic en el TAB Members y ERwin le mostrara la siguiente ventana
1. Mueva las entidades
que se incluirán
dentro del área de
negocio
2. Incluya
entidades
relacionadas a una
entidad utilizando los
dos últimos botones
3. Seleccione un grupo
de
entidades
combinando
CTRL
y/o SHIFT
Marco A. Guevara Injoque
30
Cesar R. Flores Nazario
ERwin
Para visualizar realizar lo siguiente:
1. seleccione la opcion área de negocio y despliegue el botón de flecha hacia abajo
2. Seleccione el nombre del área de negocio que fue creado
3. Finalmente ERwin le mostrara lo siguiente:
Área de Negocio
creada
con
sus
respectivas entidades
Creando Stored Display
Permiten crear Tabs en la parte inferior de la ventana principal de ERwin. Para ello
realizar lo siguiente:
1. Desde el Menú Edit seleccione Stored Display...
2. ERwin le mostrara la siguiente ventana
1. Seleccione Rename
2. Ingrese el nuevo
nombre
3. Clic en OK
4. Para crear mas
Stored Display clic
en el botón New
Marco A. Guevara Injoque
31
Cesar R. Flores Nazario
ERwin
1. Clic en cada TABs para
seleccionar
el
nivel
apropiado
de
visualización y reordenar
el modelo
2. El ordenamiento y los
niveles de visualización
permanecen
almacenados
Finalmente el modelo se visualizara tal como se aprecia en la siguiente figura:
Stored Display creados en
ERwin a nivel de entidades
Marco A. Guevara Injoque
32
Cesar R. Flores Nazario
ERwin
Stored Display creados en
ERwin a nivel de Llaves (PK)
Opciones de Visualización
Estas opciones permiten visualizar de distinta manera el modelo ERwin. Para ello
distinguimos las siguientes opciones de visualización:
1. Nivel de Entidad
2. Nivel de Atributo
3. Nivel de Llave Primaria
4. Nivel de Definición
5. Nivel de Iconos
Marco A. Guevara Injoque
33
Cesar R. Flores Nazario
ERwin
Nivel de Entidad
Para ello, en la barra de herramientas de ERwin seleccione el botón
Nivel de Atributo
Para ello, en la barra de herramientas de ERwin seleccione el botón
Nivel de Llave Primaria
Para ello, en la ventana de fondo haga clic derecho y elija la opcion Display Level,
posteriormente elija la opcion Primary Key
Marco A. Guevara Injoque
34
Cesar R. Flores Nazario
ERwin
Creando Atributos
Independientes
Marco A. Guevara Injoque
35
Cesar R. Flores Nazario
ERwin
Creando Atributos Independientes
En ERwin, un dominio es un objeto independiente que se utiliza para asignar
rápidamente las propiedades a un atributo o la columna. Una vez que se haya definido el
dominio, se pueden emplear en ambos modelos: lógico y físico. Entre sus ventajas
tenemos:
• 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 cualquier
tipo de dominio
Marco A. Guevara Injoque
36
Cesar R. Flores Nazario
ERwin
2. ERwin le mostrara la siguiente ventana:
Haga clic en el
botón New para
crear un nuevo
Dominio.
3. Finalmente el dominio se visualizara en el Diccionario de Dominios
Dominio creado de
tipo cadena
Marco A. Guevara Injoque
37
Cesar R. Flores Nazario
ERwin
Por otro lado desde el Examinador de Atributos también se pueden crear Dominios para
ello realizamos lo siguiente:
Utilizar CRTL + clic para
seleccionar
todos
los
atributos en la entidad y
luego
arrastrelo
al
examinador de atributos
Copiar los atributos
existentes
al
explorador de atributos
independientes
para
ser utilizados como
estándar
Finalmente el explorador de atributos se visualizara tal como se muestra en la siguiente
figura:
Dominios creados por la copia de los
atributos de la entidad personal
Marco A. Guevara Injoque
38
Cesar R. Flores Nazario
ERwin
Utilizando Atributos Independientes
Los atributos independientes pueden utilizarse para asignar atributos existentes en el
dominio en el Editor de Atributos. Cuando la herencia esta configurada correctamente,
cualquier cambio hecho al dominio afectara automáticamente a los atributos referidos
dentro de las entidades.
1. Crear una Entidad
2. Haga clic en la herramienta de
manipulación de atributos de la
caja de ERwin
3. Seleccione
un
atributo
independiente del examinador de
atributos
4. Arrástrelo y colóquelo en la zona
de atributos de la Entidad
Marco A. Guevara Injoque
39
Cesar R. Flores Nazario
ERwin
Refinando el Modelo
de Datos
• Unificación
• Rolenames
• Relaciones Recursivas
• Resolución Muchos a Muchos
Marco A. Guevara Injoque
40
Cesar R. Flores Nazario
ERwin
Unificación
Cuando un atributo es migrado como una llave foránea dentro de una entidad en la que
este ya existe, los dos son unificados dentro de un solo atributo. Esto se deriva de una
regla 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 y
en ella vamos a incluir un atributo con el mismo nombre de la llave primaria de la
entidad padre y luego procederemos a establecer la relación.
Entidad creada con un atributo
llamado código de cliente.
Al establecer la relación ERwin le mostrara la siguiente ventana:
Este cuadro de dialogo
muestra las siguientes
opciones:
1. Reemplazar
el
atributo
2. Renombrar
el
atributo
3. Crear un nuevo
nombre a la llave
foránea.
Finalmente haga clic en OK para establecer la relación.
Marco A. Guevara Injoque
41
Cesar R. Flores Nazario
ERwin
Rolenamed Foreign Key
Es 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 herramientas
al 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.
El grafico muestra la relación entre tienda
y herramientas, nótese que al realizar la
relación la misma PKs concatenadas
migran a la entidad herramientas. Pero
cada relación tiene que cumplir su rol
respectivo dentro de la entidad hija (vende
y alquila) , para ello utilizamos el
Rolenaming.
Para ello realizamos lo siguiente:
1. Haga doble clic en la relación
2. Elija el TAB Rolename
3. En el cuadro de texto escriba el nombre para cada llave para cambiar el rol
dentro de la entidad.
Cambie el rol para
cada llave
Marco A. Guevara Injoque
42
Cesar R. Flores Nazario
ERwin
4. Finalmente el modelo se vera tal como se aprecia en la figura:
Creando una Relación Recursiva
Es una relación que se establece entre una misma entidad. Para el presente ejemplo
vamos a crear una entidad llamada empleados y vamos a establecer la relación entre si
misma, tal como se aprecia en la siguiente figura:
Al establecer la relación no se
puede apreciar la FK dentro de
la entidad, para ello utilizar
Rolename para poder visualizar
la FK dentro de la entidad
1.
2.
3.
4.
Clic derecho en la relación
Elija Relationship Editor
Ingrese una frase
Asigne una Rolename a la
llave foránea
5. Clic en OK para regresar al
modelo
Marco A. Guevara Injoque
43
Cesar R. Flores Nazario
ERwin
Finalmente la relación quedara tal como se aprecia en la siguiente figura:
Aquí se puede apreciar la llave
foránea sobre la misma entidad
Resolviendo Relaciones Muchos a Muchos
Para resolver relaciones muchos a muchos se tienen que crear entidades asociativas.
También podemos resolverlas utilizando la opción Many to Many que proporciona
ERwin 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 Muchos
2. Elija la opción Resolve Many to Many
3. Analice los resultados cuidadosamente
Marco A. Guevara Injoque
44
Cesar R. Flores Nazario
ERwin
4. Finalmente la relación quedara resuelta tal como se aprecia en la siguiente figura
Entidad agregada a
través de la relación
Muchos a Muchos
Nivel de Visualización
Para ello, en la barra de herramientas de ERwin seleccione el botón
Nivel de Iconos
Para ello, en la ventana de fondo haga clic derecho y elija la opcion Display Level,
posteriormente elija la opcion Icon.
Marco A. Guevara Injoque
45
Cesar R. Flores Nazario
ERwin
Refinando el Modelo
de Datos
• Generalización Jerárquica
• Integridad Referencial
Marco A. Guevara Injoque
46
Cesar R. Flores Nazario
ERwin
Jeneralización Jerárquica
Se define como un conjunto de entidades que comparten atributos comunes. Para
comprender la definición veamos un ejemplo:
Padre Genérico (Supertipo).
Contiene atributos y llaves
generalizados
Categoría (Subtipo). Entidad
que contiene llaves foráneas
migradas
y
atributos
distintivos.
Símbolos de las Relaciones
Completa
(Obligatorio)
Incompleta
(Opcional)
Utilizar
el
símbolo
de
categoría completa donde
todos los subtipos son
mostrados. Cada instancia del
Supertipo debe tener una
instancia en uno de los
subtipos.
Utilizar
el
símbolo
de
incompleta donde todos los
subtipos no son mostrados
debido a que ellos no
requieran
de
atributos
distintivos. Cada instancia del
Supertipo podría tener una
instancia en uno de los
subtipos.
Marco A. Guevara Injoque
47
Cesar R. Flores Nazario
ERwin
Para entender esta definición veamos un ejemplo:
Ejemplo de Categoría Completa
Vemos el siguiente modelo donde la Regla de negocio indica que: Un vehículo debe ser
un CAMION o una EMBARCACION. No puede ser otra cosa mas. La grafica será tal
como se muestra en la figura:
Discriminador de
Categoría
Tipo de vehículo
Marco A. Guevara Injoque
48
Cesar R. Flores Nazario
ERwin
Ejemplo de Categoría Incompleta
Vemos el siguiente modelo donde la Regla de negocio indica que: Un vehículo
PODRIA ser un CAMION o una EMBARCACION. Podría ser también un AUTO
pero no necesitamos registrar atributos distintivos de AUTOS por eso no lo
modelamos. La grafica será tal como se muestra en la figura:
Discriminador de
Categoría
Tipo de vehículo
Crear una Generalización Jerárquica
Para crear una Generalización Jerárquica realizar los siguientes pasos:
1. Seleccione el icono relación de categoría desde la caja de herramientas
2. Seleccione la entidad Supertipo
3. 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ía
b. Clic en la entidad subtipo
Marco A. Guevara Injoque
49
Cesar R. Flores Nazario
ERwin
5. Finalmente clic derecho en el símbolo de categoría para cambiar el
tipo(exclusiva o inclusivo)
Haga clic aquí, para
enlazar a la entidad
Luego clic derecho
aquí, para editar la
subcategoría
Elija la opción
Inclusiva en el grupo de
opciones. Finalmente
clic en OK.
Marco A. Guevara Injoque
50
Cesar R. Flores Nazario
ERwin
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 o
Hijo es insertada, actualizada o eliminada. Evita la data huérfana y asegura que las
reglas de negocio se cumplan.
ERwin asocia por defecto opciones RI para cada acción en una relación, basado en el
tipo de relación, acción y rol de la entidad (padre/hijo). Estos valores por defecto están
basados en el sentido de GENERALIDAD; ellos pueden ser sobrescritos para todo el
modelo o para una acción dada en una relación establecida.
ACCION
TIPO DE RELACION
Identificada
Al Eliminar en el hijo
Al Insertar en el hijo
Al Actualizar en el hijo
Al Eliminar en el padre
Al Insertar en el padre
Al Actualizar en el padre
Ninguna
Restricción
Restricción
Restricción
Ninguna
Restricción
Marco A. Guevara Injoque
No
Identificada
(Acepta
NULL)
Ninguna
Set Null
Set Null
Set Null
Ninguna
Set Null
51
No
Identificada
(No Acepta
NULL)
Ninguna
Restricción
Restricción
Restricción
Ninguna
Restricción
Subcategoría
Ninguna
Restricción
Restricción
Cascada
Ninguna
Cascada
Cesar R. Flores Nazario
ERwin
Opciones de Integridad Referencial
Para cambiar las opciones de Integridad Referencial para un relación especifica realizar
lo siguiente:
1. Clic derecho en la línea de relación
2. Elija la opción Relationship Editor…
3. En el editor de relaciones seleccione el TAB RI Actions
4. Seleccione las opciones de Integridad referencial desde el ComboBox
5. Clic en OK para retornar al modelo
Cambie las opciones de
Integridad Referencial
para la relación
establecida. Finalmente
clic en OK.
Marco A. Guevara Injoque
52
Cesar R. Flores Nazario
ERwin
Bases del
Modelamiento Físico
Marco A. Guevara Injoque
53
Cesar R. Flores Nazario
ERwin
Representación Física del Modelo de Datos
ERwin mantiene las representaciones Lógica y Física del modelo de datos. Soporta
características físicas del servidor objetivo (Target Server). Sincroniza el modelo físico
de datos con el catalogo del servidor objetivo.
Vista en el Modelo Lógico
Vista en el Modelo Físico
Objetos Logical Only (Solo Lógicos)
Entre estos objetos tenemos:
1. Las relaciones Muchos a muchos solamente se muestran en el modelo lógico
2. Los símbolos de Generalización Jerárquica cambian en el modelo Físico
3. Entidades, atributos individuales o relaciones podrían ser diseñadas como solo
lógicos.
RELACIONES MUCHOS A MUCHOS
Modelo Lógico
Marco A. Guevara Injoque
54
Cesar R. Flores Nazario
ERwin
Modelo Físico
GENERALIZACION JERARQUICA
Modelo Lógico
Modelo Físico
Objetos Physical Only (Solo Físicos)
Entre estas tenemos:
1. Vistas son solo mostrados en el modelo físico
2. Tablas columnas o relaciones también pueden ser designadas como físico.
Selección del Servidor
ERwin administra el modelo físico según el servidor de base de datos seleccionado. Las
opciones de columna están disponibles para el tipo de datos seleccionado. Las
propiedades de almacenamiento físico pueden ser asignadas para una base de datos
específica. Las opciones de índice son especificadas para los servidores que las
soporten.
Selección del Cliente
ERwin soporta desarrollo de aplicaciones cliente tan bien como el diseño y construcción
de la base de datos. Edwin administra la parte del modelo basado en la herramienta
cliente seleccionada.
Marco A. Guevara Injoque
55
Cesar R. Flores Nazario
ERwin
Seleccionando el
Servidor de Datos
• Reconfigurando nombres físicos
• Configurando valores por RI
• Selección del Cliente
Marco A. Guevara Injoque
56
Cesar R. Flores Nazario
ERwin
Seleccionando el Servidor
Para elegir el servidor realizar los siguientes pasos:
1. Clic en el icono
desde la barra de herramientas
2. O también desde el menú Server elija la opción Target Server
3. ERwin le mostrara la siguiente ventana:
1. Seleccione el botón
radio correspondiente
al Servidor elegido
2. Si
se
aplica,
seleccione el numero
de la versión desde el
combobox
3. Seleccione la opción
NULL para valores
no llaves para el
modelo
4. Seleccione el tipo de
datos por defecto
5. Configure el nombre
por defecto de las
tablas
6. Configure el nombre
por defecto de los
índices
Reconfigurando Nombres físicos
Configure los nombres físicos para el modelo haciendo clic en RESET NAMES. ERwin
le mostrara la siguiente ventana:
1. Configure
las
propiedades del DBMS
2. Seleccione las opciones
a ser configuradas
3. Clic en OK para
regresar a la ventana de
selección del servidor
Marco A. Guevara Injoque
57
Cesar R. Flores Nazario
ERwin
Configurando los valores por defecto de RI…
Para cambiar las opciones por defecto de la Integridad Referencial haga clic en el botón
RI DEFAULTS….Tal como se aprecia en la siguiente ventana:
La configuración de
este cuadro de dialogo
afectan las opciones de
Integridad Referencial
asignadas al modelo.
Seleccionando el cliente
Para elegir al cliente realizar las siguientes acciones:
Desde el menú Client
elija la opción Target
Client… ERwin le
mostrara la siguiente
ventana:
Elija una de las
opciones
que
se
indican.
Finalmente
clic en OK..
Marco A. Guevara Injoque
58
Cesar R. Flores Nazario
ERwin
ERwin le mostrara la
siguiente
ventana;
haga clic en Si
Marco A. Guevara Injoque
59
Cesar R. Flores Nazario
ERwin
Modelamiento Físico
• Asignando Propiedades a las
Columnas
• Asignando Tipo de Datos
• Creando Reglas de Validación
• Usando el Editor de Tablas
• Índices
Marco A. Guevara Injoque
60
Cesar R. Flores Nazario
ERwin
Asignando Propiedades a Columnas
Para asignar propiedades a las columnas realizar lo siguiente:
1. Clic derecho sobre la tabla
2. Elija Column Editor…
En esta ventana
especifique
la
información
del
cliente
y
del
servidor incluyendo
tipo de dato y regla
de validación.
En el TAB General
seleccione:
• Un dominio
• Configure
la
Llave Primaria
• Configure
Physical Only
Asignando Tipo de Datos
Para asignar tipo de dato a las columnas realizar lo siguiente:
1. Clic derecho sobre la tabla
2. Elija Column Editor…
3. Elija el TAB que tiene como nombre el servidor de base de datos elegido
Elija el TAB DBMS
y seleccione:
• Tipo de dato
• Longitud si es
necesario
• Opción NULL
Marco A. Guevara Injoque
61
Cesar R. Flores Nazario
ERwin
Creando Reglas de Validación (Validation Rule)
Es una expresión que establece un rango de valores aceptables que pueden ser
almacenadas en una columna
Pueden ser ingresadas y mantenidas desde ERwin y permiten que el servidor de bases
de datos valide la información a ser almacenada. Permite que la aplicación cliente valide
la 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ísico
2. Clic derecho en la tabla y elija la opción Column Editor…
3. ERwin le mostrara la siguiente ventana:
1. Clic al costado del
ComboBox “VALID”
2. ERwin le mostrara la
siguiente ventana
Marco A. Guevara Injoque
62
Cesar R. Flores Nazario
ERwin
1.
2.
3.
4.
Clic en el botón NEW
Ingrese un nombre
Clic en OK
Luego haga clic en el
botón VALID VALUE
5. ERwin le mostrara la
siguiente ventana.
1. Escriba el nombre de la regla de
validación
2. Clic en OK
1. Clic en NEW
2. Ingrese un nombre
3. Ingrese un valor para
Display Value
4. Describa la definición
de la regla
5. Clic en OK
Marco A. Guevara Injoque
63
Cesar R. Flores Nazario
ERwin
Posteriormente ERwin le mostrara nuevamente la ventana anterior con la regla de
validación creada:
Clic en OK nuevamente para regresar al editor de columnas donde la regla será ligada a
la columna tal como se muestra en la figura.
Marco A. Guevara Injoque
64
Cesar R. Flores Nazario
ERwin
Dominio
Conjunto de propiedades de atributos/columnas definidas por el usuario. Utilizar los
dominios para:
• Ahorrar tiempo
• Evitar errores
• Estandarizar el Modelo
Todo lo que puede especificar para una columna con aquellas especificadas para el
dominio lógico. Estas propiedades están relacionadas con aquellas especificadas para el
dominio lógico. Crear dominios para la información de uso común.
Dominios creados en
el modelo Lógico
Asignando Tipo de Datos a un Dominio
Para asignar un tipo de datos a un dominio realizar lo siguiente:
1. Pasar al modelo Físico
2. En el examinador de dominios haga doble clic sobre uno de ellos
1. Elija el TAB
2. Elija el tipo
de dato
3. Repita
el
mismo paso
para
cada
dominio
Marco A. Guevara Injoque
65
Cesar R. Flores Nazario
ERwin
Indices
Estructura asociada con una tabla para realizar la búsqueda más fácil. Existe una
relació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 Índices
Para crear índices realizar los siguientes pasos:
1. Clic derecho en la tabla
2. 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 New
2. Marque o desmarque
el
checkbox
“UNIQUE”
3. Ingrese el nombre del
índice
4. clic en OK
5. Luego seleccione las
columnas que van a
formar
parte
del
índice.
Marco A. Guevara Injoque
66
Cesar R. Flores Nazario
ERwin
En el TAB Comment
ingrese el propósito
del índice, finalmente
clic en OK para
regresar al modelo
Marco A. Guevara Injoque
67
Cesar R. Flores Nazario
Descargar