Rational Rose can reverse engineer from IBM DB2, Oracle, Microsoft SQL Server, and Sybase Adaptive Server DBMSs. It represents the primary keys, foreign keys, indexes, triggers, and constraints as operations on the table object class. It derives relationships between tables, represented as associations, based on foreign key relationships. If the foreign key is part of the primary key of the second table, then the tool establishes an identifying association and an aggregation association. Otherwise, it uses a simple association.
All associations are navigable in both directions.
Each stored procedure is represented by its own container class. Database views are not reverse-engineered into Rational Rose. Next, the data model, which is really a model of the physical database design, is transformed into an object class model. Every table and column is transformed into an object class and attribute respectively. Rational Rose automatically maintains the mapping between the data model component and its object class model counterpart.