Instrucciones de la herramienta: Diseño y modelado de bases de datos utilizando Rational Rose Data Modeler
En esta guía de la herramienta se describe la creación de un modelo de datos con Rational Rose Data Modeler. También se proporciona información sobre la generación de un nuevo esquema de base de datos o DDL a partir del modelo de datos de Rose y cómo revertir la ingeniería de una base de datos para crear un modelo de datos.
Herramienta: Rational Rose
Relaciones
Elementos relacionados
Descripción principal

Visión general

Gracias a las características de Rational Rose Data Modeler, el diseñador de base de datos y el desarrollador de software pueden desarrollar la aplicación y el diseño de bases de datos utilizando la misma herramienta. Como desarrollador o diseñador de bases de datos, puede utilizar Rational Rose Data Modeler para modelar y diseñar bases de dados, y para integrar la aplicación y la base de datos.  

Rational Rose Data Modeler utiliza o crea tres tipos de modelos: un modelo de objeto, un modelo de datos y un modelo de almacenamiento de datos opcional. Un modelo de objeto representa clases, sus comportamientos y las relaciones entre clases. El modelo de "objeto" de Rational Rose Data Modeler corresponde, por lo general, al producto de trabajo modelo de diseño de RUP. El diagrama de clase de Rose representa una vista del modelo de objeto. Un modelo de datos representa la estructura de la base de datos tal como la implementa la empresa. El modelo de almacenamiento de datos opcional representa la estructura de almacenamiento físico de la base de datos. El "modelo de datos" y el "modelo de almacenamiento de datos" de Rational Rose Data Modeler corresponden, por lo general, al producto de trabajo modelo de datos de RUP.

Puede crear un modelo del diseño físico de la base de datos transformando las clases permanentes del modelo de objeto en tablas de un modelo de datos.  Las clases permanentes se deben haber asignado a un componente y encontrarse en el mismo paquete lógico. Otro modo de crear un modelo del diseño de la base de datos física consiste en revertir la ingeniería de un script DDL o esquema de base de datos existente.

Por medio de las opciones de transformación de Rose Data Modeler, puede integrar diseños de bases de datos y aplicaciones. Las opciones de transformación correlacionan elementos contenidos en un modelo de objeto para crear un modelo de datos, o bien, transformar elementos de un modelo de datos para crear un modelo de objeto. Para crear el modelo de objeto, debe comprender los conceptos OOAD (diseño y análisis orientado a objetos) y UML (Lenguaje unificado de modelado). La creación de un modelo de datos requiere la comprensión del diseño de bases de datos relacionales. Rose Data Modeler utiliza terminología de base de datos y estereotipos UML para representar elementos de base de datos.
 

Pasos de la herramienta

  1. Desarrollar el modelo de datos lógico (opcional)
  2. Desarrollar el diseño de la base de datos física
  3. Revisar los resultados

Además de los pasos descritos más arriba, en esta guía de la herramienta también se proporciona información sobre los temas adicionales siguientes, relacionados con la compilación y la gestión del modelo de datos en Rational Rose.

Consulte la sección  icono de publicación de ayuda iniciación a de los temas de la ayuda en línea de Rose Data Modeler para obtener una visión general sobre cómo diseñar y modelar bases de datos utilizando Rational Rose Data Modeler. 

1. Desarrollar el modelo de datos lógico (opcional)

Es posible que algunos proyectos requieran la creación de un modelo "lógico" idealizado del diseño de la base de datos que capture una vista independiente de la aplicación de las entidades de datos lógicas clave y sus relaciones.  Este modelo de datos lógico se puede considerar como un tipo de modelo de "análisis" similar al Producto de trabajo: Modelo de análisis opcional que se puede utilizar en el desarrollo del diseño de la aplicación.  Se debe tener en cuenta que el modelo de datos lógico está incluido en el Producto de trabajo: Modelo de datos, y que no se considera como un producto de trabajo de RUP separado.  

El modelo de datos lógico se puede crear utilizando las características de Rational Rose Data Modeler para compilar un nuevo modelo de datos utilizando diagramas de modelo de datos. En Rational Rose Data Modeler, el modelo de datos lógico se engloba en un paquete de esquemas separado en la vista lógica de Rational Rose. Para obtener información sobre la compilación de un modelo de datos, consulte los temas de la ayuda en línea siguientes:

  • icono de publicación de ayuda Compilación de un modelo de datos
  • icono de publicación de ayuda Creación de un esquema
  • icono de publicación de ayuda Cómo trabajar con diagramas de modelo de datos.

El desarrollo de un modelo de datos lógico idealizado es opcional basado en necesidades de proyecto específicas. En los proyectos se puede elegir el desarrollo del modelo de datos utilizando las posibilidades de transformación de objetos en tablas de Rational Rose Data Modeler, en lugar de compilar el modelo de modo independiente.  

2. Desarrollar el diseño de la base de datos física

El diseño de la base de datos física son los diseños de tabla detallados de la base de datos que se crean utilizando diagramas de modelo de datos en la vista lógica.  El diseño de la base de datos física se puede representar como un "Modelo de datos físico", que también incluye elementos de modelo para las vistas de base de datos, los índices, las restricciones, los procedimientos almacenados y otros elementos que se describen en el tema de la ayuda en línea icono de publicación de ayuda Elementos de modelo de datos. Este modelo de datos físico no se considera como un producto de trabajo separado, sino que forma parte del Producto de trabajo: Modelo de datos, y puede estar contenido en uno o más paquetes de esquemas en la vista lógica de Rational Rose. 

Los elementos de modelo de diseño de la base de datos física inicial se pueden crear, inicialmente, utilizando uno de los procedimientos siguientes:

  • Utilizar las características de transformación de objetos en tablas de Rational Rose Data Modeler para crear un conjunto de tablas inicial.
  • Ingeniería inversa de un script DDL o esquema de base de datos existente (consulte el apartado icono de publicación de ayuda Ingeniería inversa de un archivo DDL o base de datos)
  • Desarrollar un modelo de datos físico inicial a través de la evolución del diseño de la base de datos lógica contenido en un modelo de datos lógico.

En los pasos restantes de esta guía de la herramienta se trata la propuesta de iniciar el diseño de la base de datos física utilizando el proceso de transformación de objetos en tablas. Consulte el tema de la ayuda en línea icono de publicación de ayuda Transformación de un modelo de objeto en un modelo de datos para obtener información sobre los requisitos para la utilización de la característica de transformación de objetos en tablas.

Crear dominios

Cree dominios para implementar tipos de datos definidos por el usuario que se puedan utilizar a través del modelo de datos para imponer estándares de diseño de base de datos. Consulte el tema de la ayuda en línea siguiente, icono de publicación de ayuda Cómo trabajar con dominios, donde se proporciona una visión general sobre lo que son los dominios y cómo se utilizan. Cuando se crea un paquete de esquemas en el modelo de datos por primera vez, Rational Rose Data Modeler también crea un paquete Tipos de datos globales en la vista lógica que se utiliza para almacenar dominios y paquetes de dominios. Para obtener más detalles sobre la creación de dominios, consulte los temas de la ayuda en línea de Rational Rose Data Modeler que tratan sobre:

  • icono de publicación de ayuda Dominios
  • icono de publicación de ayuda Creación de un paquete de dominio
  • icono de publicación de ayuda Creación de un dominio

Crear elementos de diseño de la base de datos física inicial

Gracias a Rational Rose Data Modeler, puede transformar clases y sus relaciones en el modelo de objeto para crear tablas y relaciones de modelo de datos en el modelo de datos. Consulte el tema de la ayuda en línea de Rational Rose Data Modeler que trata sobre icono de publicación de ayuda Transformación de la correlación de elementos de modelo de objeto, para obtener una descripción detallada sobre cómo transformar elementos de modelo de objeto en elementos de modelo de datos.

 Antes de transformar un modelo de objeto en un modelo de datos:

  • Establezca el estado de las clases en permanente.
  • Asigne clases a un componente que utilice los lenguajes Java, Visual Basic o Analysis.
  • Agrupe las clases en el mismo paquete lógico.

Los pasos de transformación específicos se describen en el tema de la ayuda en línea de Rational Rose Data Modeler que trata sobre icono de publicación de ayuda transformación de un modelo de objeto en un modelo de datos. Los elementos de modelo de objeto se transforman en elementos de modelo de datos utilizando correlaciones de tipo de datos específicos del DBMS seleccionado. Una vez que se ha completado la transformación, se pueden crear diagramas de modelo de datos para empezar a trabajar en el desarrollo del diseño de la base de datos física detallada. Para obtener más información, consulte el apartado icono de publicación de ayuda Creación del diagramas de modelo de datos.

Puede modificar tablas o crear otras tablas y relaciones en el modelo de datos. Para obtener más información sobre la creación de tablas y relaciones, consulte los temas siguientes:

  • icono de publicación de ayuda Tablas y icono de publicación de ayuda Creación de tablas
  • icono de publicación de ayuda Columnas y icono de publicación de ayuda Creación de una columna
  • icono de publicación de ayuda Relaciones y icono de publicación de ayuda Creación de relaciones

Definir tablas de referencia

Cree tablas de referencia según sea necesario para gestionar los elementos de datos estáticos de la base de datos. Consulte la lista de temas sobre las tablas y las relaciones que se indican en el paso anterior de esta guía de la herramienta para obtener información sobre la creación de tablas y relaciones.

Crear restricciones de clave principal y clave exclusiva

Defina las restricciones de clave principal y clave exclusiva para identificar filas de información en una tabla. Para obtener información sobre cómo crear y utilizar restricciones de clave principal y clave exclusiva, consulte los temas de la ayuda en línea de Rose Data Modeler que tratan sobre:

  • icono de publicación de ayuda Restricciones de clave
  • icono de publicación de ayuda Creación de una restricción de clave
  • icono de publicación de ayuda Creación de claves (principales y exclusivas)

Definir datos y reglas de imposición de integridad referencial

Defina reglas de integridad referencial para garantizar que las actualizaciones de base de datos se gestionan correctamente.  Rational Rose Data Modeler admite desencadenantes DRI (integridad referencial declarativa) y RI (integridad referencial generada por el sistema). Para obtener más información, consulte los temas de la ayuda en línea siguientes:

  • icono de publicación de ayuda Integridad referencial
  • icono de publicación de ayuda Definición de la integridad referencial

Aplique restricciones de comprobación para reforzar las reglas empresariales en el modelo de datos. Rational Rose Data Modeler permite asignar restricciones de comprobación a una columna, dominio o tabla. Para obtener más información sobre la creación y utilización de restricciones de comprobación, consulte los temas de la ayuda en línea siguientes:

  • icono de publicación de ayuda Restricciones de comprobación
  • icono de publicación de ayuda Creación de restricciones de comprobación
  • icono de publicación de ayuda Aplicación de reglas empresariales

Las restricciones de clave externa son otro aspecto importante de la imposición de la integridad referencial y de datos. Las restricciones de clave externa son obtienen creando una relación entre tablas. Cuando se crea una relación, la clave principal de la tabla padre migra a la tabla hijo como clave externa. Para obtener más información sobre la creación de restricciones de clave externa, consulte los temas de la ayuda en línea que tratan sobre icono de publicación de ayuda restricciones de clave y icono de publicación de ayuda migración de claves.

Desnormalizar el diseño de base de datos para optimizar el rendimiento

A veces, para mejorar el rendimiento es posible que sea más adecuado almacenar en la misma tabla los objetos que se recuperan juntos. Esta técnica se denomina desnormalización. Para representarlo en el modelo de datos, combine las columnas exclusivas de ambas tablas en una y elimine la segunda tabla. Para obtener más información sobre la desnormalización y la optimización, consulte los temas de la ayuda en línea de Rational Rose Data Modeler que tratan sobre:

  • icono de publicación de ayuda Desnormalización del modelo de datos
  • icono de publicación de ayuda Optimización del modelo de datos

Optimizar el acceso a los datos

Una técnica de optimización adicional consiste en utilizar el indexado de columnas para acceder a los datos de las tablas de modo más eficaz. Para obtener más información sobré la creación de índices en el modelo de datos, consulte los temas siguientes:

  • icono de publicación de ayuda Índices
  • icono de publicación de ayuda Creación de un índice
  • icono de publicación de ayuda Optimización del modelo de datos

Además, se pueden definir vistas para mejorar el acceso a los datos. Las vistas se pueden utilizar para crear una tabla virtual que conste de columnas de una o más tablas y otras vistas a las que la aplicación acceda con frecuencia. Puede obtener información detallada sobre la creación de vistas y relaciones entre vistas y tablas en el modelo en los temas de la ayuda en línea de Rational Rose Data Modeler que tratan sobre:

  • icono de publicación de ayuda Vistas y icono de publicación de ayuda Creación de vistas
  • icono de publicación de ayuda Cómo trabajar con vistas
  • icono de publicación de ayuda Dependencias  y icono de publicación de ayuda Cómo trabajar con dependencias de vistas

Definir características de almacenamiento

Al crear un modelo de almacenamiento de datos modela el almacenamiento físico de los datos. Un modelo de almacenamiento de datos consta de una base de datos que contiene uno o más espacios de tablas. Este "modelo de almacenamiento de datos" se considera parte del modelo de datos físico, que se incluye en el Producto de trabajo: Modelo de datos en RUP, y no es producto de trabajo separado. El modelo de almacenamiento de datos está contenido en la Vista de componentes del Modelo de Rose global.

Un espacio de tablas es el elemento de almacenamiento lógico que almacena los datos de las tablas. Puede asignar una o más tablas al espacio de tablas y distribuir datos de tablas a través de uno o más contenedores. Un contenedor es un dispositivo de almacenamiento físico como, por ejemplo, un disco, archivo o directorio. Cada contenedor está segmentado en extensiones o páginas y se mide en kilobytes. Para obtener más información sobre las bases de datos y los espacios de tablas, consulte la lista de temas de los apartados de la ayuda en línea de Rose Data Modeler que tratan sobre:

  • icono de publicación de ayuda Modelado del almacenamiento de datos
  • icono de publicación de ayuda Compilación de un modelo de almacenamiento de datos

Estos apartados también incluyen temas en los que se facilita información sobre la definición de elementos de modelo de almacenamiento de datos que son específicos de los DBMS (sistemas de gestión de bases de datos) para los que Rational Rose Data Modeler ofrece soporte.

Diseño de procedimientos almacenados para distribuir el comportamiento de clase a la base de datos

Defina procedimientos almacenados según sea necesario para dar soporte al almacenamiento y la recuperación eficaz de información de la base de datos. Examine las operaciones de las clases de diseño que se han utilizado para crear las tablas iniciales para procedimientos almacenados candidatos. Los procedimientos almacenados se pueden implementar como procedimientos o funciones. Para obtener más información sobre cómo crear procedimientos almacenados en el modelo de datos, consulte los temas de la ayuda en línea de Rational Rose Data Modeler que tratan sobre:

  • icono de publicación de ayuda Procedimientos almacenados
  • icono de publicación de ayuda Creación de procedimientos almacenados
  • icono de publicación de ayuda Cómo trabajar con procedimientos almacenados

Además, puede definir desencadenantes según se requiera para controlar y gestionar las modificaciones efectuadas en la información de las tablas. Para obtener más información sobre la creación de desencadenantes en el modelo de datos, consulte los temas de la ayuda en línea siguientes:

  • icono de publicación de ayuda Desencadenantes personalizados
  • icono de publicación de ayuda Creación de desencadenantes personalizados
  • icono de publicación de ayuda Cómo trabajar con desencadenantes personalizados

3. Revisar los resultados

Revise los resultados del diseño de la base de datos del modelo de datos de modo que haya coherencia con el diseño de aplicación del modelo de diseño y con la estructura global de la arquitectura de la aplicación. Consulte el apartado Lista de comprobación: Modelo de datos para algunos elementos específicos que revisar.

Temas adicionales

En este apartado de la guía de la herramienta se describen algunos elementos adicionales relacionados con la ingeniería directa e inversa y el mantenimiento del modelo de datos y la base de datos.

Ingeniería directa del modelo de datos

Una vez que se ha desarrollado suficientemente el diseño de la base de datos detallada (incluido el diseño del almacenamiento de datos) en el modelo de datos, se puede utilizar el asistente para ingeniería directa de Rose Data Modeler para generar un esquema de base de datos o DDL del diagrama del modelo de datos. El asistente para ingeniería directa lee el esquema del modelo de datos y genera un script DDL para el DBMS que se ha especificado en el asistente. En el asistente, puede elegir que se ejecute el script DDL para generar un esquema de base de datos.

En el asistente para ingeniería directa, puede seleccionar opciones para generar:

  • Tablas
  • Índices
  • Desencadenantes
  • Procedimientos almacenados
  • Vistas
  • Espacios de tablas
  • Nombres completos. Se utilizan como prefijo del nombre de esquema para los nombres de tablas.
  • Identificadores entrecomillados para tablas, columnas y esquemas que se necesitan para la localización utilizando DBCS (conjuntos de códigos de doble byte).
  • Sentencias drop de SQL para sobrescribir comentarios, elementos de base de datos o scripts DDL existentes

Se debe asegurar de que se ha establecido la conectividad de base de datos adecuada para permitir que el proceso de ingeniería directa funcione. Para obtener más información sobre la ingeniería directa, consulte los temas de la ayuda en línea de Rational Rose Data Modeler que tratan sobre:

  • icono de publicación de ayuda Ingeniería directa de una base de datos o DDL (información del proceso de ingeniería directa)
  • icono de publicación de ayuda Ingeniería directa de una base de datos o DDL (pasos específicos para ejecutar el asistente para ingeniería directa)

Consulte la lista de temas de DBMS (sistema de gestión de bases de datos) que se indican en la sección icono de publicación de ayuda Referencia de la ayuda en línea de Rational Rose Data Modeler para obtener información específica sobre la correlación de tipos de datos, las conexiones de base de datos y otros temas relacionados con la ingeniería directa del modelo de datos a un DBMS destino específico. 

Mantener el modelo de datos

Después de aplicar la ingeniería a un modelo de datos para crear una base de datos, puede utilizar el asistente para la comparación y la sincronización de Rational Rose Data Modeler para mantener la coherencia del modelo de datos con la base de datos implementada.  

Al sincronizar el modelo de datos con una base de datos implementada, debe asegurarse de que se ha establecido la conectividad de base de datos adecuada para permitir que el proceso de comparación y sincronización funcione. Para obtener más información sobre la comparación y sincronización del modelo de datos, consulte los temas de la ayuda en línea de Rational Rose Data Modeler que tratan sobre:

  • icono de publicación de ayuda Comparación y sincronización del modelo de datos  (información del proceso de comparación y sincronización)
  • icono de publicación de ayuda Comparación de un esquema de base de datos o archivo DDL con una base de datos o archivo DDL (pasos específicos para ejecutar el asistente para la comparación y la sincronización)

Consulte la lista de temas de DBMS (sistema de gestión de bases de datos) que se indican en la sección icono de publicación de ayuda Referencia de la ayuda en línea de Rational Rose Data Modeler para obtener información específica sobre la correlación de tipos de datos, las conexiones de base de datos y otros temas relacionados con la comparación y sincronización del modelo de datos con un DBMS destino específico. 

Consulte también el tema de la ayuda en línea de Rational Rose Data Modeler que trata sobre icono de publicación de ayuda modificación de modelos de datos para obtener información sobre reglas específicas para realizar modificaciones en los elementos del modelo de datos.

Ingeniería inversa del modelo de datos de un esquema de base de datos o script DDL

Utilice el asistente para ingeniería inversa de Rational Rose Data Modeler para generar un modelo de datos de un archivo DDL o esquema de base de datos.  El asistente para ingeniería inversa lee el archivo DDL o esquema de base de datos y crea un diagrama de modelo de datos que incluye los nombres de todas las entidades de identificador que están entre comillas. Dependiendo del DBMS, el asistente para ingeniería inversa de Rose Data Modeler modela tablas, relaciones entre tablas, procedimientos almacenados, índices y desencadenantes en el diagrama de modelo de datos.

Se debe asegurar de que ha establecido la conectividad de base de datos adecuada para permitir que el proceso de ingeniería inversa funcione. Para obtener más información sobre la ingeniería inversa, consulte los temas de la ayuda en línea de Rational Rose Data Modeler que tratan sobre:

  • icono de publicación de ayuda Ingeniería inversa de una base de datos o DDL (información del proceso de ingeniería inversa)
  • icono de publicación de ayuda Ingeniería inversa de una base de datos o archivo DDL (pasos específicos para ejecutar el asistente para ingeniería inversa)

Consulte la lista de temas de DBMS (sistema de gestión de bases de datos) de la sección icono de publicación de ayuda Referencia de la ayuda en línea de Rational Rose Data Modeler para obtener información específica sobre la correlación de tipos de datos, las conexiones de base de datos y otros temas relacionados con la ingeniería inversa del modelo de datos de un DBMS específico. 

Después de revertir la ingeniería de la base de datos o DDL, si lo desea, puede transformar las tablas del modelo de datos generado a partir del proceso de ingeniería inversa en clases del modelo de objeto (diseño). Para obtener más información sobre el proceso de transformación de tablas en objetos, consulte los temas siguientes:

  • icono de publicación de ayuda Transformación de un modelo de datos en un modelo de objeto (información del proceso de transformación)
  • icono de publicación de ayuda Transformación de un modelo de datos en un modelo de objeto (paso específicos para realizar la transformación)
  • icono de publicación de ayuda Transformación de la correlación de elementos del modelo de datos (correlación de elementos del modelo de datos en elementos del modelo de objeto)