Professional Documents
Culture Documents
Data Modeler
Autores:
Marco A. Guevara Injoque
Csar R. Flores Nazario
Derechos Reservados 2002
ERwin
Conceptos Bsicos de
Modelamiento
Lgico
Introduccin
ERwin
Definicin de Dato
Es la representacin de un mensaje. Debe ser OBJETIVO
Definicin de Informacin
Son los datos procesados. Debe ser SUBJETIVO
Dato
Proceso
Informacin
Base de Datos
Conjunto de datos organizados de tal manera, que pueda extraerse informacin y que
pueda ser compartida. Entre los usuarios debe existir un consenso en lo que representan
los datos (la informacin a obtener)
Definicin de Modelo
Representacin grafica de la realidad que son clarificados a travs de texto explicativo.
Ejemplo: Una representacin a escala de una casa, Una representacin de un automvil,
etc.
ERwin
Tipos de Modelo de Datos
Los modelos de datos pueden ser:
Lgico:
Orientado a la empresa, Definiciones y Reglas de Negocio
Fsico:
Restringido por el DBMS
Dimensional:
DataWarehousing, Diseo 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
Relacin
Un enlace lgico entre dos entidades que representa una regla de negocio o una
restriccin.
ERwin
Relacin Identificada
La llave primaria de la entidad padre es migrada a travs de la RELACION para
FORMAR parte de la llave primaria de la entidad hijo.
Beneficios de ERwin
ERwin
Para el presente manual seguiremos haciendo uso del caso de estudio que se planteo en
el manual de Modelamiento de Procesos.
ERwin
Herramientas de
Navegacin de
ERwin 3.52
Caja de Herramientas
La Barra de Herramientas
El Editor de Diagramas
Ventana Principal de ERwin
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
Seleccin
ModelMart
Imprimir
Modelo
Abrir
Modelo
Vista de
Fit
Servidor
Definicin
Model
de Datos
Vista de
Aumentar
Ingeniera
Tabla
Zoom
Reversa
Tipo de
Modelo
rea de
Negocios
Agregar
Texto
Agregar
Entidad
Agregar
Categora
Herramienta de
manipulacin
de Atributos
Relacin
Identificada
Relacin No
Identificada
Relacin
Muchos a Muchos
Agregar
Texto
Agregar
Categora
Herramienta de
manipulacin
de Atributos
Relacin
Identificada
Relacin No
Identificada
Relacin
Muchos a Muchos
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...
ERwin
Ventana Principal de ERwin
Barra de Tareas
Men Principal
Barra de Texto
Barra de Herramientas
rea de Visualizacin
10
ERwin
Creando Entidades y
Atributos
Construyendo Entidades
El Editor en Pantalla
Creando Atributos
11
ERwin
Tipos de Entidades en ERwin
En ERwin el modelo lgico puede contener dos tipos de entidades: independiente y
dependiente. Una entidad independiente es una entidad que puede identificarse sin
determinar su relacin 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 relacin a otra entidad o entidades. Se representa como
una caja con rincones redondeados.
Entidad Independiente
Entidad Dependiente
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
12
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. Ingrese la Definicin
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
13
ERwin
Finalmente la entidad quedara definida tal como se muestra en la figura:
El Editor en Pantalla
El editor en pantalla permite crear en forma rpida el nombre de la entidad, atributos, y
llaves. Para ello realizar lo siguiente:
14
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 opcin 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
15
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:
16
ERwin
Creando Llaves
Llaves Primaria
Llaves Alternas
Llaves Inversas
17
ERwin
Creando Llaves Primaria (PK)
Por definicin 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...
18
ERwin
4. En la zona de Available Attributes seleccione el atributo CODIGO DE
PERSONAL
5. Posteriormente haga clic en el botn
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
manipulacin de atributos de la barra de trabajo de ERwin de la siguiente manera:
19
ERwin
20
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
21
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 botn 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:
22
ERwin
El Modelo para el caso en estudio la entidad personal quedara tal como se muestra en la
figura:
23
ERwin
Creando Relaciones
Relacin Identificada
Relacin no Identificada
Relacin Muchos a Muchos
24
ERwin
Creando Relaciones
ERwin define tres tipos de relaciones:
1. Relacin Identificada
2. Relacin no Identificada
3. Relacin Muchos a Muchos
Para todos los casos la construccin de las relaciones es tal como se detalla a
continuacin:
1. Seleccione el tipo de relacin 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 relacin
Para el ejemplo las relaciones quedaran establecidas de acuerdo a la siguiente figura:
Nota: Las relaciones estn sin editarse dentro del modelo, a continuacin pasaremos
a hablar sobre la edicin de la relaciones.
Marco A. Guevara Injoque
25
ERwin
Editando la Relaciones
Para editar una relacin realizar lo siguiente:
1. Haga doble clic sobre la relacin
2. ERwin le mostrara la siguiente ventana:
Utilizar
el
TAB
General para:
1. Ingresar frases a
la relacin
2. Cambiar
Cardinalidad
3. Cambiar el tipo
de relacin
4. Marcar
la
relacin
como
solamente Lgica
Para el presente modelo edite las siguientes relaciones de acuerdo a la tabla que se
muestra a continuacin:
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
26
ERwin
27
ERwin
Si aplicamos esta opcin a todas nuestra relaciones dentro del modelo estas se
visualizaran tal como se muestra en la figura:
Nota: El modelo lgico debe tener todas sus entidades totalmente relacionadas, no
puede existir ninguna entidad acfala ya que dejara de ser un modelo EntidadRelacin
28
ERwin
Creando reas de
Negocio y Stored
Display
29
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. Tambin 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
30
ERwin
Para visualizar realizar lo siguiente:
1. seleccione la opcion rea de negocio y despliegue el botn 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
31
ERwin
1. Clic en cada TABs para
seleccionar
el
nivel
apropiado
de
visualizacin y reordenar
el modelo
2. El ordenamiento y los
niveles de visualizacin
permanecen
almacenados
32
ERwin
Opciones de Visualizacin
Estas opciones permiten visualizar de distinta manera el modelo ERwin. Para ello
distinguimos las siguientes opciones de visualizacin:
1. Nivel de Entidad
2. Nivel de Atributo
3. Nivel de Llave Primaria
4. Nivel de Definicin
5. Nivel de Iconos
33
ERwin
Nivel de Entidad
Para ello, en la barra de herramientas de ERwin seleccione el botn
Nivel de Atributo
Para ello, en la barra de herramientas de ERwin seleccione el botn
34
ERwin
Creando Atributos
Independientes
35
ERwin
Creando Atributos Independientes
En ERwin, un dominio es un objeto independiente que se utiliza para asignar
rpidamente las propiedades a un atributo o la columna. Una vez que se haya definido el
dominio, se pueden emplear en ambos modelos: lgico y fsico. Entre sus ventajas
tenemos:
Promueve la consistencia
Reduce el tiempo en el desarrollo y la conservacin (si cambia el dominio,
todas columnas asociadas con el dominio se cambian tambin)
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
36
ERwin
2. ERwin le mostrara la siguiente ventana:
Haga clic en el
botn New para
crear un nuevo
Dominio.
37
ERwin
Por otro lado desde el Examinador de Atributos tambin 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
38
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 automticamente a los atributos referidos
dentro de las entidades.
39
ERwin
Refinando el Modelo
de Datos
Unificacin
Rolenames
Relaciones Recursivas
Resolucin Muchos a Muchos
40
ERwin
Unificacin
Cuando un atributo es migrado como una llave fornea 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 relacin.
41
ERwin
Rolenamed Foreign Key
Es un atributo cuyo nombre ha sido cambiado en la llave fornea 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 divisin dentro del negocio.
Segn lo planteado el grafico se muestra tal como se aprecia.
El grafico muestra la relacin entre tienda
y herramientas, ntese que al realizar la
relacin la misma PKs concatenadas
migran a la entidad herramientas. Pero
cada relacin tiene que cumplir su rol
respectivo dentro de la entidad hija (vende
y alquila) , para ello utilizamos el
Rolenaming.
42
ERwin
4. Finalmente el modelo se vera tal como se aprecia en la figura:
1.
2.
3.
4.
43
ERwin
Finalmente la relacin quedara tal como se aprecia en la siguiente figura:
Aqu se puede apreciar la llave
fornea sobre la misma entidad
44
ERwin
4. Finalmente la relacin quedara resuelta tal como se aprecia en la siguiente figura
Entidad agregada a
travs de la relacin
Muchos a Muchos
Nivel de Visualizacin
Para ello, en la barra de herramientas de ERwin seleccione el botn
Nivel de Iconos
Para ello, en la ventana de fondo haga clic derecho y elija la opcion Display Level,
posteriormente elija la opcion Icon.
45
ERwin
Refinando el Modelo
de Datos
Generalizacin Jerrquica
Integridad Referencial
46
ERwin
Jeneralizacin Jerrquica
Se define como un conjunto de entidades que comparten atributos comunes. Para
comprender la definicin veamos un ejemplo:
Padre Genrico (Supertipo).
Contiene atributos y llaves
generalizados
Completa
(Obligatorio)
Incompleta
(Opcional)
Utilizar
el
smbolo
de
categora completa donde
todos los subtipos son
mostrados. Cada instancia del
Supertipo debe tener una
instancia en uno de los
subtipos.
Utilizar
el
smbolo
de
incompleta donde todos los
subtipos no son mostrados
debido a que ellos no
requieran
de
atributos
distintivos. Cada instancia del
Supertipo podra tener una
instancia en uno de los
subtipos.
47
ERwin
Para entender esta definicin veamos un ejemplo:
Discriminador de
Categora
Tipo de vehculo
48
ERwin
Ejemplo de Categora Incompleta
Vemos el siguiente modelo donde la Regla de negocio indica que: Un vehculo
PODRIA ser un CAMION o una EMBARCACION. Podra ser tambin 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
Categora
Tipo de vehculo
49
ERwin
5. Finalmente clic derecho en el smbolo de categora para cambiar el
tipo(exclusiva o inclusivo)
Elija la opcin
Inclusiva en el grupo de
opciones. Finalmente
clic en OK.
50
ERwin
Finalmente la subcategora se vera tal como se muestra en la siguiente figura:
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
Restriccin
Restriccin
Restriccin
Ninguna
Restriccin
No
Identificada
(Acepta
NULL)
Ninguna
Set Null
Set Null
Set Null
Ninguna
Set Null
51
No
Identificada
(No Acepta
NULL)
Ninguna
Restriccin
Restriccin
Restriccin
Ninguna
Restriccin
Subcategora
Ninguna
Restriccin
Restriccin
Cascada
Ninguna
Cascada
ERwin
Opciones de Integridad Referencial
Para cambiar las opciones de Integridad Referencial para un relacin especifica realizar
lo siguiente:
1. Clic derecho en la lnea de relacin
2. Elija la opcin 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
52
ERwin
Bases del
Modelamiento Fsico
53
ERwin
Representacin Fsica del Modelo de Datos
ERwin mantiene las representaciones Lgica y Fsica del modelo de datos. Soporta
caractersticas fsicas del servidor objetivo (Target Server). Sincroniza el modelo fsico
de datos con el catalogo del servidor objetivo.
Vista en el Modelo Lgico
Modelo Lgico
54
ERwin
Modelo Fsico
GENERALIZACION JERARQUICA
Modelo Lgico
Modelo Fsico
55
ERwin
Seleccionando el
Servidor de Datos
Reconfigurando nombres fsicos
Configurando valores por RI
Seleccin del Cliente
56
ERwin
Seleccionando el Servidor
Para elegir el servidor realizar los siguientes pasos:
1. Clic en el icono
desde la barra de herramientas
2. O tambin desde el men Server elija la opcin Target Server
3. ERwin le mostrara la siguiente ventana:
1. Seleccione el botn
radio correspondiente
al Servidor elegido
2. Si
se
aplica,
seleccione el numero
de la versin desde el
combobox
3. Seleccione la opcin
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
57
ERwin
Configurando los valores por defecto de RI
Para cambiar las opciones por defecto de la Integridad Referencial haga clic en el botn
RI DEFAULTS.Tal como se aprecia en la siguiente ventana:
La configuracin 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 opcin Target
Client ERwin le
mostrara la siguiente
ventana:
58
ERwin
ERwin le mostrara la
siguiente
ventana;
haga clic en Si
59
ERwin
Modelamiento Fsico
Asignando Propiedades a las
Columnas
Asignando Tipo de Datos
Creando Reglas de Validacin
Usando el Editor de Tablas
ndices
60
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
informacin
del
cliente
y
del
servidor incluyendo
tipo de dato y regla
de validacin.
En el TAB General
seleccione:
Un dominio
Configure
la
Llave Primaria
Configure
Physical Only
61
ERwin
Creando Reglas de Validacin (Validation Rule)
Es una expresin 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 informacin a ser almacenada. Permite que la aplicacin cliente valide
la informacin antes de hacer una llamada a la base de datos.
Para crear una regla de validacin en ERwin realizar los siguientes pasos:
1. Cambiar al Modelo fsico
2. Clic derecho en la tabla y elija la opcin Column Editor
3. ERwin le mostrara la siguiente ventana:
62
ERwin
1.
2.
3.
4.
63
ERwin
Posteriormente ERwin le mostrara nuevamente la ventana anterior con la regla de
validacin 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.
64
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 lgico. Estas propiedades estn relacionadas con aquellas especificadas para el
dominio lgico. Crear dominios para la informacin de uso comn.
Dominios creados en
el modelo Lgico
65
ERwin
Indices
Estructura asociada con una tabla para realizar la bsqueda ms fcil. Existe una
relacin entre el nmero de ndices y la performance en las actualizaciones.
La eleccin depende del negocio:
Son actualizaciones o consultas mas criticas
Cual es el volumen de la tabla
Cual voltil es la tabla
Creacin de ndices
Para crear ndices realizar los siguientes pasos:
1. Clic derecho en la tabla
2. Elija SQL Server Index
66
ERwin
En el TAB Comment
ingrese el propsito
del ndice, finalmente
clic en OK para
regresar al modelo
67