Tool Mentor:
Designing and Modeling Databases Using Rational Rose Data Modeler
Purpose
This tool mentor describes creating a data model with Rational Rose Data Modeler and generating a new
DDL or database schema from the Rose data model.
Related Rational Unified Process information: Activity:
Database Design.
Overview
Rose Data Modeler features allow the database designer and the software developer
to communicate requirements using the same tool. As a database designer or developer, you can use Rose Data Modeler to model and design databases, and to integrate your application and
database.
You can model and design a database using an object model transformed to a data
model or by reverse engineering an existing database schema or DDL script to create a data model. Using Rose Data Modeler transformation options, you can integrate application and database designs. Transformation options map elements contained in an object model to create a data model, or transform elements in a data model to create an object model.
You must understand object-oriented analysis and design (OOAD) concepts and the Unified Modeling Language (UML) to create the object model. Creating a data model requires understanding relational database design. Rose
Data Modeler uses database terminology and UML stereotypes to represent database elements.
Rose Data Modeler uses or creates three model typesan object model, a data
model, and an optional data storage model. An object model represents classes, their behaviors, and the relationships between
classes. The
Rose class diagram represents a view of the object model. A data model represents the structure of the database as implemented by the enterprise. The
optional data storage model represents the physical storage structure of the
database.
Using a Rose class diagram created by a software developer, you can create a Rose data model diagram. In your Rose class diagram, you model
the classes required to integrate your application with the database. Only persistent classes transform from the object model to a Rose data model. The persistent classes must be assigned to a component and be located in the same logical package.
Tool Steps
There are three ways you can begin to model a database using Rose Data Modeler:
- Reverse engineer a DDL script or
database schema
- Transform an object model to a data
model diagram
- Build a data model
From your data model diagram, use Rose Data Modeler’s Forward Engineering Wizard to generate and execute a DDL script to create a database schema.
Use the Rose Data Modeler Reverse Engineering Wizard to generate a data model. You
can reverse engineer a DDL script or database schema for a DBMS supported by Rose Data Modeler. Rose Data Modeler supports ANSI SQL 92 standard databases or the following
DBMSes:
- DB2 DBMS versions MVS and UDB
- Oracle DBMS
- SQL Server DBMS
- Sybase Adaptive Server
The Reverse Engineering Wizard reads the database schema or DDL file and creates a data model diagram that includes the names of all quoted identifier entities. Depending on the DBMS, Rose Data Modeler Reverse Engineering Wizard
models tables, relationships between tables, stored procedures, indexes, and triggers in the data model diagram.
In the data model diagram, add tables, define relationships, indexes, and
domains, and apply third normal form to the elements. Then transform the data model to an object model or forward engineer the data model to generate a DDL script or database schema.
Using Rose Data Modeler, you can transform an object model to create a Rose data model. Before transforming an object model to a data model diagram:
- Set the state of classes to persistent.
- Assign classes to a component that uses the languages Java, Visual Basic, or Analysis.
- Group the classes in the same logical package.
Object model elements transform to the Rose data model elements using data type mappings specific to the selected DBMS. When the transformation is complete, begin working in the Rose data model diagram. In the data model diagram, capture changes required in the database schema needed to integrate with a software application. From the data model diagram, use the Forward Engineering Wizard to generate a DDL file or database schema.
You build a data model using Rose Data Modeler. First, you model a schema. To model a schema, create a database for a Rose Data Modeler supported DBMS. Creating a database enables DBMS
connectivity and Rose Data Modeler’s forward engineering features and compare/synchronization functions.
Next, create a schema and assign it to the database. Create a data model diagram to model your schema. When creating a data model in Rose Data Modeler, you must create a data model
diagram, rather than a Rose class diagram, to graphically depict tables and their relationships in a data model.
Add tables to the schema in the data model diagram. You can create a data model by defining tables, columns, keys (primary and unique), constraints, and indexes, and establishing relationships between tables. For each table, create columns, assign data types supported by the DBMS, declare a primary key, and apply constraints. Establish relationships between tables in the schema. In Rose Data
Modeler you can also create custom triggers, domains, and stored procedures. After completing the data model diagram, use the Data Modeler Forward Engineering Wizard to generate a DDL script or database schema.
You model the physical storage of your data by creating a data storage
model. A data storage model consists of a database that contains one or more
tablespaces. A tablespace is a logical storage element that stores your table
data. You can assign one or more tables to your tablespace and evenly
distribute your table data across one or more containers. A container is a
physical storage device, such as a disk, file, or directory. Each container is
segmented into extents or pages and measured in kilobytes.
When you create a data storage model you first create a database. Then you
create a tablespace. As part of creating a tablespace you can assign it one or
more containers and one or more tables. When you create a tablespace, a
dependency relationship is automatically created between the database and
tablespace.
Use the Rose Data Modeler Forward Engineering Wizard to generate a DDL or database schema from your data model diagram. The Forward Engineering Wizard reads the schema in the data model and generates
a DDL script for the DBMS you specified in the wizard. In the wizard, you can
choose to execute the DDL script to generate a database schema.
In the Forward Engineering Wizard, you select options to generate:
- Tables
- Indexes
- Triggers
- Stored Procedures
- Views
- Tablespaces
- Fully qualified names to prefix the schema name to table names
- Quoted identifiers for tables, columns, and schemas required for
localization using double-byte code set (DBCS)
- SQL drop statements to overwrite existing DDL scripts, database elements,
or comments
For details, see the Rose Data Modeler online Help.
Copyright
© 1987 - 2001 Rational Software Corporation
|