HERRAMIENTAS CASE PARA MODELAMIENTO DE DATOS

Post on 30-Jan-2016

112 views 2 download

description

HERRAMIENTAS CASE PARA MODELAMIENTO DE DATOS. OBJETIVOS. Crear y manejar modelos de datos conceptuales Generar y administrar modelos de datos físicos Implementar detalles, tales como triggers, procedimientos y vistas Manipular la reingeniería Sincronizar modelos y la base de datos - PowerPoint PPT Presentation

Transcript of HERRAMIENTAS CASE PARA MODELAMIENTO DE DATOS

HERRAMIENTAS CASE PARA MODELAMIENTO DE DATOS

OBJETIVOS

• Crear y manejar modelos de datos conceptuales• Generar y administrar modelos de datos físicos• Implementar detalles, tales como triggers,

procedimientos y vistas• Manipular la reingeniería• Sincronizar modelos y la base de datos• Trabajar en grupo con modelos de datos compartidos• Aprender técnicas de administración de estos modelos

Herramienta PowerDesigner

Modelamiento de datos con CDM, PDM y OOM

• Tres tipos de modelos para modelamiento de datos– Conceptual

• En la ingeniería tradicional se inicia con el nivel conceptual• Describe relaciones conceptuales entre tipos de información• Independiente del DBMS

– Físico• Especifica la implementación física de la base de datos• Es dependiente del DBMS usado• Incluye características de rendimiento y usabilidad

– Orientado a Objetos• Usa diagramas UML para definir la estructura funcional de una aplicación• Los Objetos son bloques de construcción de la ingeniería de software• Cada objeto o clase tiene identidad y comportamiento

Modelado de los Procesos del Negocio

• BPM (Business Process Modeling) PowerDesigner lo soporta• Un BPM es un modelo conceptual desde el punto de vista de

la lógica y los procesos de los negocios• Es una representación visual de los negocios, incluyendo la

interacción entre los procesos, flujos, mensajes y recursos. • El BPM se usa para análisis de los procesos de los negocios

Generación del Modelo

OOMModelo Orientado

a objetos

CDMModelo Conceptual

PDMModelo físico

DBMS

Script SQL

ODBC

Ingeniería

Re-Ingeniería

- Estructura de la Aplicación- Lógica de los negocios

- Estructura de los datos- Reglas del negocio

- Definición del esquema- Desnormalización- Optimización (Indexado)- Creación de la base de dtos

- Código Java (Fuente, Bytecode, JAR)-Código PowerBuilder-Archivo XML

­Archivos fuente Java­Objetos no visuales PowerBuilder ­Java Bean información de clases­Objetos XML­Genera objeto: C#, C++, Visual Basic, IDL-CORBA

Crear CDM con Diagramas Entidad Relación

OOMModelo Orientado

a objetos

CDMModelo Conceptual

PDMModelo físico

DBMS

Script SQL

ODBC

Ingeniería

Re-Ingeniería

- Estructura de la Aplicación- Lógica de los negocios

- Estructura de los datos- Reglas del negocio

- Definición del esquema- Desnormalización- Optimización (Indexado)- Creación de la base de dtos

- Código Java (Fuente, Bytecode, JAR)-Código PowerBuilder-Archivo XML

­Archivos fuente Java­Objetos no visuales PowerBuilder ­Java Bean información de clases­Objetos XML­Genera objeto: C#, C++, Visual Basic, IDL-CORBA

Generar un PDM a partir de un CDM

OOMModelo Orientado

a objetos

CDMModelo Conceptual

PDMModelo físico

DBMS

Script SQL

ODBC

Ingeniería

Re-Ingeniería

- Estructura de la Aplicación- Lógica de los negocios

- Estructura de los datos- Reglas del negocio

- Definición del esquema- Desnormalización- Optimización (Indexado)- Creación de la base de dtos

- Código Java (Fuente, Bytecode, JAR)-Código PowerBuilder-Archivo XML

­Archivos fuente Java­Objetos no visuales PowerBuilder ­Java Bean información de clases­Objetos XML­Genera objeto: C#, C++, Visual Basic, IDL-CORBA

PDM por Reingeniería

OOMModelo Orientado

a objetos

CDMModelo Conceptual

PDMModelo físico

DBMS

Script SQL

ODBC

Ingeniería

Re-Ingeniería

- Estructura de la Aplicación- Lógica de los negocios

- Estructura de los datos- Reglas del negocio

- Definición del esquema- Desnormalización- Optimización (Indexado)- Creación de la base de dtos

- Código Java (Fuente, Bytecode, JAR)-Código PowerBuilder-Archivo XML

­Archivos fuente Java­Objetos no visuales PowerBuilder ­Java Bean información de clases­Objetos XML­Genera objeto: C#, C++, Visual Basic, IDL-CORBA

Generar Diagrama de clases a partir de un PDM

OOMModelo Orientado

a objetos

CDMModelo Conceptual

PDMModelo físico

DBMS

Script SQL

ODBC

Ingeniería

Re-Ingeniería

- Estructura de la Aplicación- Lógica de los negocios

- Estructura de los datos- Reglas del negocio

- Definición del esquema- Desnormalización- Optimización (Indexado)- Creación de la base de dtos

- Código Java (Fuente, Bytecode, JAR)-Código PowerBuilder-Archivo XML

­Archivos fuente Java­Objetos no visuales PowerBuilder ­Java Bean información de clases­Objetos XML­Genera objeto: C#, C++, Visual Basic, IDL-CORBA

Modelo OO: Generar/Importar lógica de negocios

OOMModelo Orientado

a objetos

CDMModelo Conceptual

PDMModelo físico

DBMS

Script SQL

ODBC

Ingeniería

Re-Ingeniería

- Estructura de la Aplicación- Lógica de los negocios

- Estructura de los datos- Reglas del negocio

- Definición del esquema- Desnormalización- Optimización (Indexado)- Creación de la base de dtos

- Código Java (Fuente, Bytecode, JAR)-Código PowerBuilder-Archivo XML

­Archivos fuente Java­Objetos no visuales PowerBuilder ­Java Bean información de clases­Objetos XML­Genera objeto: C#, C++, Visual Basic, IDL-CORBA

Desarrollo Iterativo

Modelamiento iterativo de Datos

Generar PDMMás

RevisionesMás

Mejoras

Más Mejoras

Mejorar PDMGenerar PDM

Generar PDM Crear CDM

Crear CDM

Sincronización de Modelos

Object-Oriented Model(OOM)

Conceptual Data Model (CDM)

Physical Data Model(PDM)

Database Management System

(DBMS)

Database SQL Script

- Application Structure- Business Logic

- Java Code (Source, Bytecode, JAR)-PowerBuilder Code-XML File

ODBC

- Data Structures- Business Rules

- Schema Definition- Denormalization- Optimization (Indexing)- Database Creation

Forward Engineering

Reverse Engineering

­Java source files­PowerBuilder non-visual objects­Java Bean info classes­XML Objects­Generic obj: C#, C++, Visual Basic, IDL-CORBA

Workspace de PowerDesigner

• Define un espacio de trabajo que se necesita para ejecutar las tareas de modelamiento usando PowerDesigner

• Está ubicado en el computador del usuario, se puede grabar todo el ambiente como como una organización jerárquica de carpetas y modelos

• La estructura de carpetas y la ubicación de la información está disponible en el disco cada vez que se inicia una sesión

• Puede incluir archivos PowerDesigner, tales como modelos conceptuales (CDM) o archivos externos

• Se pueden tener varios workspace

Interfaz PowerDesigner

Barras de herramientas• Hay barras de herramientas predefinidas• Se pueden crear nuevas barras de herramientas

– Se pueden ajustar para tener en el menú las opciones más usadas• Pueden ser fijas o flotantes

Vista del explorador

• Herramienta para manejar las relaciones jerárquicas que existen entre los modelos y sus objetos– La raíz del árbol es el Workspace– Los folderes son niveles opcionales– Modelo es la unidad básica de diseño– Cada modelo tiene una o más vistas

gráficas denominadas diagramas

Carpetas

• Contenedor opcional que ayuda a organizar de forma jerárquica el workspace

• Una carpeta puede contener otras carpetas o modelos

Explorador de Objetos

• Lista los objetos asociados con el modelo

• Dando clic derecho se pueden ejecutar acciones sobre un objeto o sobre un tipo de objeto

Área de trabajo• Muestra la ventana donde se trabaja el diagrama• También se usa para trabajar con los Editores• Dando clic derecho se pueden usar menús contextuales

Ventana para las salidas

• Muestra cómo se van adelantando los procesos en ejecución

• Muestra mensajes que envían las tareas, tales como el chequeo del modelo, generación de bases de datos, etc.

Lista de Resultados

• Muestra en pestañas separadas el resultado de las búsquedas de un objeto u operaciones de chequeo de modelos

• Dando clic derecho sobre un mensaje muestra un menú contextual, para ver detalles, tales como detalles de los errores

La Paleta

• Barra de herramientas especializada para trabajo gráfico

• Cada tipo de modelo tiene asociada una paleta diferente– Herramientas para selección y

acercamiento– Herramientas para gráficos– Herramientas para creación de objetos

Ambiente para el modelado

• Modelos de Objetos– Algunos tienen una representación gráfica– Propiedades

Lista de Objetos• Listas de objetos, usando diferentes métodos• Listas de herramientas• Listas Arregladas/Filtradas

Herramientas para listas

• Listas Arregladas/Filtradas

Hojas de propiedades• Presentan las propiedades de los objetos• Se pueden activar utilizando diferentes métodos

Hojas de propiedades ajustables

• Se pueden escoger las pestañas que se desean ver– Estándar, todas, o las pestañas seleccionadas

Pestañas de las hojas de propiedades

• General – Identifica el objeto (por ejemplo: nombre, código)• Rules – Reglas del negocio para el objeto• Notes – Para hacer descripciones y anotaciones• Version Info – Origen del objeto• Dependencies – Items dependientes• Extended Dependencies – Dependencias definidas por el

usuario

Pestaña General de Propiedades

• La pestaña General contiene al menos:– Nombre– Código– Comentarios

Convenciones para Nombres

• Escoger una convención efectiva para Nombres y Códigos

• Nombres – Seleccionar términos estándares utilizados en el mundo real

• Códigos – breves, significativos y consistentes con el DBMS

• Comentarios – útiles para describir o detallar los objetos

Pestaña Notes

• Description – Da información detallada • Parte permanente de la documentación

• Annotation – Notas de trabajo o recordatorio• Temporal

Editor RTF

• Define fuentes, características de los parágrafos y espaciado de las pestañas

• Edita las notas usando un editor externo

• Inserta contenido de texto o archivo RTF

Problema de la Reutilización y Actualización

• Objetos compartidos están desincronizados en diferentes modelos

• Cambios en objetos reutilizados y heredados en múltiples modelos

Solución: Shortcuts

• Objetos compartidos entre varios modelos• PowerDesigner hace sincronización automática

EL MODELO CONCEPTUAL

Crear un modelo conceptual de datos

• Para crear un CDM– Primero hacer el diseño– Los expertos en el problema deben trabajar con los

modeladores de datos para crear la mejor representación lógica del problema

• Crear el modelo CDM– Crear un modelo nuevo cuando se parte de cero– Crearlo a partir de una base de datos existente haciendo re-

ingeniería– Generar un CDM a partir de un OOM

Propiedades del modelo conceptual

Propiedades del modelo conceptual

• General tab– Name– Code – Comment– Author– Version– Default Diagram

• Rules tab– Business rules attached to

the model

• Notes tab– Description– Annotation

• Dependencies– Dependent items

• Extended Dependencies– Links between CDM objects

• Version Info– Creation user– Creation date– Last modification user– Last modification date

Preferencias y opciones de PowerDesigner

• Para borrado, navegación, arrastre y bitácora de salida

• En cajas de diálogo• En el editor de texto• Fuentes por default• Repositorio

Opciones de Dialog

• Modos de operación– Auto commit– Nombre a código

• Lista de Objetos– Filas con auto inserción– Uso de nombres por

default

• Open property sheet mode• Property sheets tab presentation

Preferencias para ver el Modelo

• Formato para nombre y código– Nombre dividido– Truncamiento– Ajuste de palabras

• Formato general para ver gráficos– Despliegue de textos

• Formato para ver símbolos– Tamaño del símbolo– Color de primer plano– Color de fondo– Color de los textos– Fuente

Preferencias para ver el modelo

• Tamaño Default

• Estilo de línea• Llenado• Color de

sombras• Fuente• Alineamiento

de textos

Reglas del negocio

• Describir en lenguaje natural cómo opera el negocio• Complementar el modelo gráfico con información que

no se puede representar fácilmente de modo gráfico• Guiar y documentar la creación del modelo

Tipos de reglas del negocio

• Constraint – Restricción. Factor que limita la operación factible del negocio

• Definition – Expresa propiedades inherentes del objeto

• Fact – Expresa certeza o existencia• Formula – Cálculo usado para producir valores• Requirement – Especificación funcional en el

sistema de información• Validation – Restricción sobre un valor

Reglas del negocio

• Proceso iterativo• Definir reglas a nivel conceptual• Definir reglas a nivel físico

Definir reglas del negocio

• Pasos– Crear y describir en el CDM – Aplicar a uno o más modelos de objetos en el CDM o en el

PDM– Asociar una expresión en el PDM

Aplicar reglas del negocio a objetos

• Objetos CDM– Dominio– Relación– Ítem de datos– Cadena de herencia– Entidad

• Objetos PDM– Dominio– Referencia– Tabla– Índice– Columna– Vista

Definir entidades

• Entidad– Objeto distinguible con propiedades– En las reglas del negocio se identifican porque definen

objetos para el problema del mundo real

• Crear entidades:– Usando la herramienta para construir entidades– Adicionando la entidad a la lista de entidades– Dando doble clic en el nodo entidad del explorador y

seleccionar la opción New en el menú contextual

Propiedades de Entidad

• Propiedades generales:– Nombre– Código– Comentarios– Generar flags

– Estimated number of occurrences

Propiedades adicionales de Entidad

• Attributes – Atributos: piezas elementales de información asociadas a la entidad

• Identifiers – Identificadortes: uno o más atributos que identifican de manera inequívoca cada ocurrencia de la entidad

• Notes – Notas: descripción y notas• Rules – Reglas del negocio asociadas a la entidad• Dependencies – Dependencias: relaciones y asociaciones

Definir Atributos de la Entidad

• Atributos de la entidad: son sencillamente datos elementales asociados con una entidad

• Típicamente identificada en las reglas del negocio

ISBN Book

ISBN

Propiedades de los Atributos de la Entidad

• Nombre• Código• Tipo de datos• Dominio• Parámetros de chequeo• Notas• Reglas

• Obligatorio• identificador primario• Indicador de despliegue

Datos elementales

• Unidad más pequeña de información en un modelo de datos

• Se asocian con los atributos de una entidad• Típicamente identificados en las reglas del negocio que

definen objetos• Se pueden crear explícita o implícitamente

Propiedades de los datos elementales

• Los mismos que los atributos de la entidad, excepto:– Pestaña Dependencies que muestra los atributos

que están usando los datos elementales

Tipos de datos e implementación

• En el modelamiento conceptual no es necesario concentrarse en los detalles de la implementación

• Se toman los tipos de datos estándar• En la generación del PDM los tipos de datos utilizados

en el modelo conceptual se convierten a los tipos de datos que acepte la base de datos para el cual se está generando

Parámetros de chequeo

• Especifica los valores que se aceptan para un dominio, datos elementales y atributos de las entidades– Chequeos estándar– Chequeos adicionales– Reglas

Propiedades estándar de los parámetros

• Mínimo• Máximo• Default• Unidad• Formato

• Minúsculas• Mayúsculas• No modificable• Lista de valores• Rótulo

Dominio

• Nombre de un conjunto de valores o un rango de valores de los cuales una o más entidades o datos elementales toman sus valores

Modificar un Dominio

• Para poder aplicar cambios a los datos y atributos asociados con el dominio

• Precaución: Tener en cuenta que si se modifica un dominio y no se aplican los cambios a los datos y atributos existentes, se introduce una inconsistencia en el modelo de datos

Definir relaciones

• Relación: asociación entre entidades• Definida con propiedades:

– Nombre, Código, Comentarios– Rol– Cardinalidad– Obligatoriedad– Dependencia

• Generalmente definidas por las reglas del negocio

Menú del objeto Relación

• Dar clic derecho en la línea de relación

Notación para las relaciones

• La relaciones expresan una amplia variedad de información acerca de las entidades. Los detalles se representan con la siguiente nomenclatura:

Roles

• Roles– Describen

explícitamente la relación

– Uno en cada dirección– Verbo o frase con un

verbo

Rol dominante

• Define una relación tipo padre-hijo• La entidad dominante es el padre

Cardinalidad

• Mapeo numérico• Expresado como una

relación entre dos entidades– Uno-a-uno– Uno-a-muchos– Muchos-a-uno– Muchos-a-muchos

• Definida en ambas direcciones

Obligatoriedad de la Existencia

• Indica cuándo una relación es obligatoria u opcional

• Definida en ambas direcciones

Dependencia

• Una entidad en una relación depende de la otra para su identificación

Orden 1

Orden 2

Orden 2

Orden 1

Bodega Bogotá

Bodega Tunja

Bodega Cali

??

Dependencia

• Una bodega puede tener una o más órdenes

• Cada orden debe provenir de una y solo una bodega

• Cada orden se identifica por un número y el identificador de la bodega

Continúa …Continúa …

Dependencia• Un triángulo señala el sentido de la entidad dependiente

Dependiente uno-a-uno

Dependiente uno-a-muchos

Relación obligatoria

Relaciones uno-a-muchos

• Una instancia de la primera entidad puede corresponder a más de una instancia de la segunda entidad

Relaciones recursivas

• Un empleado puede supervisar a cero o más empleados

• Un empleado debe ser supervisado por uno y solo un empleado

Metodología Merise

• Use Asociaciones y Asociaciones encadenadas en cambio de relaciones

• PowerBuilder acepta diagramas que utilizan la metodología Entidad Relación, Merise o Mezclada

Opciones del modelo CDM

Opciones del modelo CDM

• Notación• Datos elementales – Código único – Acepta reutilización• Relación• Dominio/Atributo no-divergente• Nombre de tipo de datos• Tipo de datos por default

Definir cadenas de herencia

• La herencia define un caso especial de una entidad más general

• La entidad general es el supertipo o padre• Un caso especial de entidad es la subtipo o hija• Las entidades hijas heredan, en su totalidad o en parte,

los atributos de la entidad padre

Símbolo para cadenas de herencia

Cadena mutuamente exclusiva

• Solamente una hija puede existir para una ocurrencia del padre

• Solamente para propósitos de documentación

General y específico

Continúa …Continúa …

General y específico

Continúa …Continúa …

General y específico

Definir una cadena de herencia

• Mutuamente exclusiva• Modo de generación• Nombre, código, tipo de datos• Atributo específico• Descripción, anotación, reglas del negocio• Entidad hija

Modo de generación

• Define la implementación física de la cadena• Generar el padre

– Especificando atributo para cadena mutuamente exclusiva• Generar hijos• Generar padre / Generar hijos

Definiciones para el modelo extendido

• Permite extender el modelo de PowerDesigner• Conjunto de atributos extendidos, estereotipos y

parámetros de generación• Organizado en categorías correspondientes a objetos• Almacenados como archivos .XEM

Tipos de definiciones del modelo extendido

• Genérico – Una librería de atributos extendidos, estereotipos y

parámetros de generación– El archivo se almacena en un área central y puede ser

referenciado por múltiples modelos• Específico

– Embebido en el modelo – Definiciones del objeto y parámetros de generación para un

solo modelo

Crear la definición de un modelo genérico extendido

• Tools … Resources … Extended Model Definition• Seleccionar el tipo de modelo• Colocar nombre a la definición y grabarlo

Propiedades de la definición del modelo extendido

Importar una definición genérica de un modelo extendido

• Model … Extended Model Definitions• Use Import an Extended Model Definition

Ejemplo de un atributo extendido

Chequear el modelo conceptual

• Incluye una inspección de todos los datos elementales, entidades y herencias indicadas en el modelo

• Determina la validez del CDM– En cualquier momento durante la creación del CDM– Activado automáticamente cuando se genera el PDM

Tipos de chequeo

• Unicidad del nombre de los objetos

• Las entidades deben tener atributos

• Relaciones asociadas a un atributo

• Paquetes• Dominios y datos elementales• Entidades• identificador de entidad• Relaciones• Asociaciones• Herencias• Archivo del objeto

Nivel de severidad

• Conjunto para cada parámetro objeto• Un error termina el proceso de generación• Las advertencias se muestran pero el proceso de

generación continúa• Corrección automática para algunos errores

Fijar opciones para chequear el modelo

• Seleccionar todo/nada• Cambiar el nivel de

severidad• Fijar auto-corrección

Seleccionar los objetos a chequear

• Usar la selección gráfica

• Mover los ítems seleccionados hacia arriba/abajo

Ejecución del chequeo del modelo

• Mensajes en la ventana de salidas

• Resultados en la ventana de resultados

Uso de la ayuda en la ventana de resultados

• Dar clic derecho en una línea de la ventana de resultados y seleccionar la opción Help

Corrección de errores

• Opción de corrección en el menú contextual• Auto corrección

Rechequeo del modelo

• Para asegurar que los errores se han corregido y no se han introducido nuevos errores

• Opción de rechequeo en el menú contextual

Generación de un modelo físico

Modelo físico de datos

• Un PDM representa un modelo de datos en términos de detalles de implementación física– Características del DBMS escogido– Diseñar modificaciones para mejorar el rendimiento,

usabilidad y seguridad

Para crear un PDM

• Generar el PDM desde un CDM• Generar el PDM desde una base de datos o desde el

script de generación de la base de datos• Generar el PDM desde un OOM• Diseñar el PDM sin hacer modelamiento de datos a

nivel conceptual

Opciones de generación de un PDM

• Seleccionar el DBMS– Archivo XDB en

formato XML• Compartir vs copiar• Configurar opciones

del modelo

Opciones detalladas

• Chequear el modelo• Grabar la generación de dependencias• Convertir nombres a códigos• Opciones de referencia

– Restricción, Cascada, Fijar nulo, Fijar valor default• Opciones para convenciones de los nombre de índices

– Llave foránea Umbral – Número mínimo estimado de ocurrencias de una entidad necesarias para crear un índice en una llave foránea

Seleccionar objetos a generar del modelo

• Pestaña Selection• Incluir Sub-paquetes

Opciones del modelo PDM

Nombre de las plantillas

• Reutilizar plantillas para forzar restricciones en longitud, letras y tipo para nombres y código de objetos

• Típicamente usado para forzar el uso de nombres estándar en los diferentes modelos

Transformación de objetos CDM en objetos PDM

• Objeto CDM– Entidad– Atributo– Dato elemental– identificador– Ninguno– Relación– Ninguno– Ninguno– Ninguno– Ninguno

• Objeto PDM– Tabla– Columna– Ninguno– Llave primaria o foránea– Llave foránea– Referencia– Índice– Vista– Trigger– Procedimiento almacenado

Transformación de entidades en tablas

EntidadAtributoidentificador

TablaColumnaLlave primaria

Si se selecciona una entidad del modelo CDM para generación física, ella se convierte en una tabla en el modelo PDM

Transformación de relaciones en referencias PDM

• Regida por la cardinalidad y dependencia de la relación• Cardinalidad y opcionalidad indican el número máximo

y mínimo de filas hijas que puede tener una tabla• Por default, las referencias en PDM son uno-a-muchos• Propiedad obligatoria de una llave foránea indica que el

número de filas que pueden existir es de 1 o 0

Opciones de despliegue de referencias en el PDM

• Mostrar preferencias – Vista de objetos– Nombre o Código– Nombre de la restricción– Join– Integridad referencial– Cardinalidad– Implementación– Modo de despliegue

Transformación de relaciones uno-a-muchos

• Relaciones independientes uno-a-muchos– El identificador en el lado de

“uno” migra como llave foránea en el lado de “muchos”

– La llave foránea hace parte de la lave primaria de la entidad dependiente

– Tablas relacionadas por referencia

Dependencia uno-a-muchos

Transformación de relaciones muchos-a-muchos

• Los identificadores migran como llaves foráneas a la nueva tabla (asociada)

• Las llaves foráneas hacen parte de las llaves primarias de las tablas asociadas

• Tablas relacionadas por referencia

Relaciones muchos-a-muchos

Cambiar a entidad asistente

• Crea una entidad asociada basada en la definición de la relación

Relaciones recursivas (reflexivas)

• El identificador migra hacia su propia tabla como llave foránea• Renombrado para unicidad

Transformación de una cadena de herencia en tablas PDM

• Regida por:– La propiedad generar tabla de la entidad– Parámetro del modo de generación de la cadena de herencia

• Modos de generación:– Generar Padre– Generar Hijos– Generar Padre / Generar Hijos

Generar padre

• Produce una tabla que corresponde a la entidad padre que incluye:– Nombre de la entidad padre– Columnas correspondientes a los atributos de la entidad

padre– Columnas correspondientes a los atributos de todas las

entidades hijas– Referencias correspondientes a todas las relaciones

definidas tanto en el padre como en todas las entidades hijas

Cuándo seleccionar generar padre

• Se esperan accesos frecuentes a los datos del padre junto con todos o algunos tipos de hijos

• Se espera poca necesidad de acceso a datos para un simple tipo de hijo a la vez

– Es el acercamiento más común usado por los modeladores de datos

Modo generar padre

Especificar atributos

• Modo generar padre, solamente

• Distingue datos de entidades hijas mutuamente excluyentes

• Propiedades– Nombre, Código– Tipo de datos, longitud

Generar hijos

• Produce tablas correspondientes a las entidades hijas• La opción heredar todo produce tablas que incluyen:

– Columnas correspondientes a atributos hijos– Columnas correspondientes a todos los atributos del padre– Referencias correspondientes a las relaciones definidas

por la entidad padre y las entidades hijas• La opción heredar identificador produce tablas con

columnas correspondientes al identificador de la entidad padre solamente

Generar hijos – Heredar todo

Generar hijos – Identificador heredado

• Tablas correspondientes a las entidades hijas• Nombres de tablas correspondientes a los nombre de

las entidades hijas• Columnas correspondientes a los atributos hijos y al

identificador padre• Referencias correspondientes a las relaciones de las

hijas y las relaciones del padre

Generar hijos – Identificador heredado

Cuándo seleccionar el modo generar hijos

• Se esperan frecuentes accesos a los datos de un tipo de hija a la vez

Y• Hay poca necesidad de acceso a los datos del padre

jnto a todos o algunas de las hijas

Generar Padre/Hijos

• Genera tablas correspondientes a la entidad padre y cada una de las entidades hijas

• La tabla padre corresponde la entidad padre con el nombre del padre, los atributos del padre y las referencias del padre

• Las tablas hijas corresponden a las entidades hijas con los nombres de las hijas

• Las columnas de la tabla hija corresponden a los atributos de la hija y el identificador del padre (si se hereda el identificador) o los atributos del padre (si los hereda todos)

• Referencias de tablas hijas correspondientes a las relaciones hijas y las relaciones del padre (si las ereda todas)

Generar Padre/Hijos – Heredar todo

Generar Padre/Hijos – Identificador heredado

Cuándo usar ambos modos de generación

• Se espera acceso a los datos del padre igualmente frecuentes junto con todas o algunas de las hijas

• Se espera acceso a los datos del padre igualmente frecuentes con un tipo de hija a la vez

– Frecuentemente es el método menos utilizado

Modificar CDMs y PDMs

• Añade entidades y datos elementales para conseguir los requerimientos de información en el CDM

• Añade tablas y columnas en el PDM solamente para mejorar una implementación específica

• Da nombres significativos a los objetos a nivel conceptual para eliminar la necesidad de cambio de nombres a nivel físico

• Define la cardinalidad y existencia cierta a nivel conceptual tal que las referencias no se modifican a nivel físico

• Expresa las reglas del negocio y las descripciones en términos que son significativos tanto a nivel conceptual como físico para eliminar la necesidad de revisiones a nivel físico

Actualizar un PDM a partir de un CDM

• PowerDesigner crea un PDM default con los objetos trasladados del CDM modificado y luego los intercala con el PDM existente

• Internamente guarda un registro de la identidad de cada modelo y objeto– Capaz de hacer concordar objetos entre modelos, aún si los

nombres de los objetos han sido cambiados

Conservar modificaciones

• La ventana Merge Model permite escoger entre guardar o sobreescribir los cambios para cada objeto modificado

¿Preguntas?