background image
<< the Rational Unified Process (RUP) | Rational Rose RealTime >>
Modeling Data
<< the Rational Unified Process (RUP) | Rational Rose RealTime >>
Continuing Work with the Sequence Diagram
101
When you start changing code, your model may become out of date. It is tedious to
manually update the model whenever the code changes. It is also undesirable to
create a model that immediately becomes obsolete. Rose helps you keep the code and
the model consistent through a process called reverse engineering, where Rose
automatically updates the model from changes in the code. To reverse engineer after
updating source code, you would click Tools > Java / J2EE > Reverse Engineer.
As you can see from the Tools menu, Rose supports several languages in addition to
Java. These languages include ANSI C++ and Visual Basic.
Note:
Rose Enterprise Edition and Rose Professional Data Modeler Edition can
generate code, update code, and update models. For database schemas, both editions
can generate code from a Rose visual model and update a Rose model from source
code through a process called round-trip engineering. However, Rose Professional
Data Modeler Edition only supports round-trip engineering to and from DDL scripts
and database schemas not for other languages such as Java and Visual C++.
Modeling Data
You can use Rose to model relational databases. Rose Professional Data Modeler
Edition is a database modeling and design tool that uses UML. It helps you:
s
Support most specific database functions such as creating tables, columns,
indexes, relationships, keys (primary and foreign), stored procedures, and views.
s
Create column constraints, and both DRI (Declarative Referential Integrity) and RI
triggers.
s
Create custom triggers and their generated trigger code.
Benefits
The benefits of using Rose Professional Data Modeler are:
s
All your business, application, and data models are written in UML, the same
industry-standard language promoting consistency, traceability, and ease of
communication.
s
Both forward and reverse engineering of relational databases are supported,
facilitating the process of keeping database implementations and models
consistent.