338 Chapter 10 Practical Database Design Methodology and Use of UML Diagrams
10.4.2 Rational Rose Data Modeler
Rational Rose Data Modeler is a visual modeling tool for designing databases.
Because it is UML-based, it provides a common tool and language to bridge the
communication gap between database designers and application developers. This
makes it possible for database designers, developers, and analysts to work together,
capture and share business requirements, and track them as they change through-
out the process. Also, by allowing the designers to model and design all specifica-
tions on the same platform using the same notation, it improves the design process
and reduces the risk of errors.
The process modeling capabilities in Rational Rose allow the modeling of the
behavior of database applications as we saw in the short example above, in the form
of use cases (Figure 10.8), sequence diagrams (Figure 10.12), and statechart dia-
grams (Figure 10.11). There is the additional machinery of collaboration diagrams
to show interactions between objects and activity diagrams to model the flow of
control, which we did not show in our example. The eventual goal is to generate the
database specification and application code as much as possible. The Rose Data
Modeler can also capture triggers, stored procedures, and other modeling concepts
explicitly in the diagram rather than representing them with hidden tagged values
behind the scenes (see Chapter 26 which discusses active databases and triggers).
The Rose Data Modeler also provides the capability to forward engineer a database
in terms of constantly changing requirements and reverse engineer an existing
implemented database into its conceptual design.
10.4.3 Data Modeling Using Rational Rose Data Modeler
There are many tools and options available in Rose Data Modeler for data modeling.
Reverse Engineering. Reverse engineering of a database allows the user to create
a conceptual data model based on an existing database schema specified in a DDL
file. We can use the reverse engineering wizard in Rational Rose Data Modeler for
this purpose. The reverse engineering wizard basically reads the schema in the data-
base or DDL file and recreates it as a data model. While doing so, it also includes the
names of all quoted identifier entities.
Forward Engineering and DDL Generation. We can also create a data model
directly from scratch in Rose. Having created the data model,
9
we can also use it to
generate the DDL for a specific DBMS. There is a forward engineering wizard in the
Rose Data Modeler that reads the schema in the data model or reads both the
schema in the data model and the tablespaces in the data storage model and gener-
ates the appropriate DDL code in a DDL file. The wizard also provides the option of
generating a database by executing the generated DDL file.
9
The term data model used by Rational Rose Data Modeler corresponds to our notion of an application
model or conceptual schema.