IBM Rational Rose

Release Notes

Version 7.0.0.1
Windows
GI11-6303-01

Before using this information, be sure to read the general information under Appendix. Notices.

Contents

Tables
About this document
Who should read this document
Related information
About this release
Obtaining the latest release notes
Installing this release
Rational Rose v7.0 Enhancements
Rational Rose v2003.06 Enhancements
Announcements and changes
Installing IBM Rational Rose
Restrictions and guidelines
Status of change requests
Known problems
Problems that affect globalized versions
Problems fixed in this release
Contacting IBM Customer Support for Rational software products
Downloading the IBM Support Assistant
Appendix. Notices

Tables

  1. CORBA valuetype inheritance and supporting interfaces
  2. .NET Managed Extension for C++ keywords supported during reverse engineering
  3. Rose Version Control Get Latest options and results
  4. Server, system and software requirements and recommendations
  5. Rational Rose Enterprise Installation behavior in relation to the Rose Data Modeler & Rose Web Modeler Add-Ins
  6. Rose Data Modeler Installation behavior in relation to the Rose Data Modeler & Rose Web Modeler Add-In's
  7. Java to Oracle Data Model Type Mapping
  8. Problems fixed in v7.0.0.1 of IBM Rational Rose

About this document

This edition replaces 2003.06.00.

Copyright International Business Machines Corporation 1995, 2006. All rights reserved. US Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM(R) Corp.

This document provides information about installing and using IBM Rational Rose, including system and software requirements; new features and enhancements; current known issues and defects fixed.

Who should read this document

This document provides information intended for these users:

Related information

Documentation for IBM Rational is available on-line at http://www.ibm.com/software/rational/support/documentation/.

Rose Documentation

The goal of all Rose technical documentation is to provide the most appropriate and usable product information possible so that our users can benefit fully from all of the features of Rose and its Add-Ins. To that end, Rose and its Add-Ins provide a complete, integrated online Help system, along with a set of supplemental manuals.

Rational Rose printed documentation has not been updated for this release. Please note that you can still order the previous version of printed documentation, most of which remains valid for this release.

Online and Printed Documentation

To print the complete online Help for Rational Rose or any of its Add-Ins, you can easily do so from the Contents tab of the Help system:

  1. On the Rational Rose Help menu, click Contents and Index.
  2. On the Contents tab, click the help book that contains the help you want to print. (For example, to choose the entire help for Rational Rose, click the Rational Rose help book; to choose the entire help for Rose J, click the book called Rose J.).
  3. Click Print.

All of the Help topics contained in the selected book (including those that are contained in sub-books of the selected Help book) will print in the order in which they appear in the table of contents.

Of course, you can still print single topics whenever you need to do so. In addition to the Release Notes, the following manuals constitute the printed documentation available for Rose and its Add-Ins:

Product documentation is available on the IBM Publications Center, where you can download documents or purchase printed copies. To find documentation:

  1. Search www.ibm.com for IBM Publications Center.
  2. At the IBM Publications Center, select a country.
  3. Click Search for Publications.
  4. Enter either the document title or publication number in the appropriate search field.
    1. To search for a document by its title, enter the title in the Search on field.
    2. To search for a document by its publication (GI11-6303-01) number, enter the number in the Publication number field.

Product documentation at the IBM Publications Center also includes the following:

About this release

This section describes new features and other changes introduced in Rational Rose Version 7.0.

Obtaining the latest release notes

You can download the most current edition of this document from the IBM Publications Center, as follows:

  1. Search www.ibm.com for IBM Publications Center.
  2. At the IBM Publications Center, select a country.
  3. Click Search for Publications.
  4. Enter the publication number (GI11-6303-01) in the Publication number field.

Installing this release

For instructions on installing Rational Rose, see the IBM Rational Rose Installation Guide. To obtain this document, see Rose Documentation.

Rational Rose v7.0 Enhancements

Core Rose Enhancements

New REI function GetRealizeRelations() available which will return the collection of realize relationships for a Use Case

A new method has been added to the Use Case class. This method retrieves the collection of realize relations belonging to a Use Case. It returns a RealizeRelationCollection. The syntax for using this method is

Set theRealizeRelsColl = theUseCase.GetRealizeRelations ( )

where

theRealizeRelsColl As RealizeRelationCollection > Returns the collection of realize relations belonging to the UseCase

theUseCase As UseCase > Usecase from which the collection is being retrieved

Enhanced handling of text labels

Label names attached to dependency, generalization, realize relationships and label names of DecisionBox, Start and End states and for vertical and horizontal synchronizations may now be moved and re-sized.

Rose J Enhancement

Limited support for Sun JDK 1.5

Note:
The Java 1.5 construct, Annotations, is currently not supported during forward or reverse engineering.

Enumerations

Enumerations in Rose are provided with modeling, forward engineering and reverse engineering capabilities. An Enumeration Specification is provided for Enumerations in parallel to Class Specification for a Class.

The Enumeration Specification can be opened by

Creation of an Enumeration in Rose:

An enumeration in Rose is a Class with stereotype set to Enum.

Creation of Enumeration literals:

The Enumeration Specification includes a page called Enumeration Code. This page is used to create Enumeration literals / constants.

Forward Engineering and Reverse Engineering of Enumerations:

The code for the modeled enumeration can be generated using the Rose J code generator. It generates the complete, syntactically correct code. In addition, existing code containing enumerations can be reverse engineered to a rose model.

Code Sample:

public enum Month {
January(31),
February(28),
March(31),
April(30),
May(31),
June(30),
July(31),
August(31),
September(30),
October(31),
November(30),
December(31);
private final int days;

Month(int days) {
this.days = days;
}

public static void main(String[] args) {

for(Month month : Month.values( ))
{
System.out.println(month+":"+month.days);
}
}}

For-Each Loop

For each loop can be used in the method body and enum body.

Code Sample:

for(Month month : Month.values( ))
{
System.out.println(month+":"+month.days);
}

Static Import

Static imports will be recognized during reverse engineering.

Note:
These imports will not be preserved in the rose model for further usage.

Code Sample:

import static java.lang.Math.*;
import static java.lang.Math.PI;

AutoBoxing / UnBoxing

Autoboxing and Unboxing code statements can occur inside the method body and enum body.

Code Sample:

int i = 10;
Integer val = i; //Autoboxing
i=val+i; //Unboxing

Generics

Generics are supported during reverse engineering in Rose.

Code Sample:

import java.util.*;
class GenericsExample<T>
{
<T> GenericsExample( T argIn )
public<E> void genericMethod( E argIn0, T argIn1 ) {}
public List<T> getList()
{
return new ArrayList<T>();
}
}

T and E are type parameters. When reverse engineering, a nested class of stereotype is created, entitled Generics. Type arguments in type are ignored i.e., List<String> is considered as List.

Variable Arguments

Variable Arguments or VarArgs will be recognized during reverse engineering. The VarArgs are stored in the reverse engineered Rose Model as single dimensional arrays.

For Example the method specification for the VarArgs method:

static void trial(int y,int x)
{
System.out.println("documentation for varargs in java 1.5");
}

In this method specification the variable argument int x will be converted to the single dimensional array int[] x in the model.

Rose Data Modeler Enhancements

Maintaining pretty print formatting

If SQL source text for a view is changed (blanks are removed and any pretty printing formatting is removed) after making changes.

Enhancement enabled to save pretty print format, during automatic Create View statement generation, if the value of the following registry key is set to Yes:

HKEY_CURRENT_USER\Software\Rational Software\Rose\AddIns\Data Modeler\Custom Settings\SaveViewPrettyPrintFormat

Ability to forward engineer entire database instead of one schema at a time

A new forward engineering option is available in the Forward Engineering Wizard > Choose Options dialog Generate > Constraints from other schema. If this is checked, and if the schema is forward engineered, the alter table statement for the foreign key will be generated.

Note:
If a database is forward engineered, this option is ignored.

This is for models with relationships spanning two different schemas. Previously, you would be unable to generate the alter table statements for the foreign keys corresponding to these relationships when forward engineering a schema. Only if the database was forward engineered would these statements be seen in the DDL.

Rational Rose v2003.06 Enhancements

Core Rose Enhancements

Performance enhancement when loading large models

Note:
By default this option is turned-off (UseMoreMemoryForHighPeformance = No).

The following new registry entry is necessary to activate the fix to enhance model loading performance:

HKEY_CURRENT_USER\SOFTWARE\Rational Software\Rose\Rose "UseMoreMemoryForHighPeformance" = "Yes" HKEY_CURRENT_MACHINE\SOFTWARE\Rational Software\Rose\Rose "UseMoreMemoryForHighPeformance" = "Yes"

By setting the above registry key (UseMoreMemoryForHighPeformance) to Yes a 30% model loading performance can be achieved. Also, by setting this key to Yes, a large memory buffer is used for each symbol table, which will enhance performance, while reserving a large amount of memory for this purpose. This issue is more apparent in case of very large models (ranging several MB's). This registry entry does not need to be enabled for loading small models.

Important: If your system does not have enough memory (typically 1GB for 100 MB model), do not change the UseMoreMemoryForHighPeformance setting to Yes. If your system does not have enough memory and UseMoreMemoryForHighPeformance is set to Yes, the performance will deteriorate.

Sequence diagram improvements

Rose v2003.06.12 and higher includes significant enhancements to Sequence Diagrams, as described below

Improvement to sharing activity / state diagram elements

You now have the ability to create Transitions and Object Flows to read-only activities or states. This enhancement allows you to share activity states even though they reside in read-only controlled units. Browser representation is now available for Transition and Object Flows.

A new Relationship folder is now available under a state machine that holds the Transition and Object Flow items.

Transition is represented with a forward diagonal solid arrow whereas Object Flow is represented with a forward diagonal dotted arrow in the browser. It is now possible to rename and delete transition and object flow items from the Relationship folder. Once these actions are performed, the view on the activity diagrams will be updated accordingly. It is also possible to relocate the transition and object flow items from one state machine to another without affecting the corresponding view drawn in the activity diagrams.

State Transitions and Object Flows may also be created through REI or Rose Script, as before. The results will now be represented in both the diagram view and in the Relationships folder in the browser.

Double-clicking on the State Transitions and Object Flows in the browser will open the specification dialog which is the same dialog available in previous Rose releases and may be used in the same manner as before, i.e.:

Right-clicking on the State Transitions and Object Flows in the browser will present the following context menu options (options are synonymous with the Association browser item):

Additional Available Browser Actions:

Note:

Enhancement to "Force Save" functionality in Rose

When enhancements are included in a new petal file format for Rose, it is necessary to re-save previously created Rose models in the new Rose format. Previously, this could only be done through a registry setting named, Force Save. A new option is now available in the Tools > Options > General tab in order eliminate the need to modify the registry. To use this new option:

  1. Check the new Force Save option in the Tools > Options > General tab
  2. Save the model

Enhanced pattern content

Users will have the ability to utilize Rose J patterns, as before. In addition, users may now access pattern content for additional languages as described below. The user may apply a pattern through the context menu of a class or interface element defined in the tree browser or in the class diagram.

These patterns (based on "Design Patterns: Elements of Reusable Object-Oriented Software") are applied the same way you currently apply the Rose J patterns, i.e.:

The participant Observer will show that it is bound to an existing model element (asterisk missing on its line).

All the other participants will be bound by default with classes named by adding the starting class qualified name to the (indexed) participant name. The asterisk at the right end of the participant row shows visually that it is not bound to an existing element in the model. If applied with these default names, the application will add these new elements in the model.

Select an existing element in the model for the remaining two SimpleParticipants (Subject and Client). If the type of the selected element does not match with the one declared in the XML file, the application will display a warning message. You may select a new element with the right type or ignore the message.

Design Patterns Dialog Box Reference

The Design Patterns dialog box allows you to specify the participants for the selected design pattern. These are classes that will be added to your model, or classes that already exist in your model. The layout of the dialog box changes from design pattern to design pattern, displaying the participants of the selected design pattern only. The title of the dialog box matches the name of the design pattern you are applying.

Participants - The set of classes that make up this design pattern. Each class plays a role of a particular participant type. Each participant type labels a group of classes. Some groups contain only one class, others contain more. Initially, all groups contain names automatically generated by Rose. You can apply the design pattern using these names, and new classes with these names will be added to your model; or you can supply new ones. You can also substitute them with the names of classes that already exist in your model. If you do, Rose will not create new classes for you, but will use these classes instead.

Class Browser - Opens the Class Browser, from which you can select an existing class to use as a participant. This element appears when you double-click a participant class to edit its name. It is a gray button with three dots (an ellipsis).

Description - Displays design pattern information for the selected pattern. This includes an explanation of the kind of problem the design pattern solves, a brief overview of how it addresses the problem, descriptions of the participants that make up the design pattern, and a class diagram showing the pattern's structure.

Cancel - Discontinues the design pattern application process, and exits the Design Patterns dialog box.

The following elements appear in participant tables:

Add Participant Class - Adds a class to the selected participant table. It is a gray button with a small yellow star-burst in the top left corner of a square.

Remove Participant Class - Removes the selected class from the participant table. It is a gray button with a red X.

ActiveX support

Rose may now be used as a container for all loaded ActiveX controls.

How To Perform the Rose / ActiveX Registry Configuration (Example: Microsoft Office Spreadsheet 9.0)

For example: HKEY_CURRENT_USER\Software\Rational Software\Rose\ActiveX

For example, to use the Microsoft Excel Spreadsheet (with ProgramID = "OWC.Spreadsheet.9" ) you should have the following key:

HKEY_CURRENT_USER\Software\Rational Software\Rose\ActiveX\OWC.Spreadsheet.9

How to Load ActiveX Control in Rose (once Registry steps are completed)

Upon restarting Rose you may now load any ActiveX control, which appears in the View menu option. Each ActiveX control (which, has been registered as described in How To Perform the Rose / ActiveX Registry Configuration (Example: Microsoft Office Spreadsheet 9.0) will list it's own menu option, directly under the Editor menu option.

Whenever an ActiveX control is created and loaded, it appears in the menu and the associated menu item is checked.

ActiveX Window Options in Rose

The size and position of the ActiveX window are saved into the registry when closing the Rose application.

To Close the ActiveX Control in Rose

Once the ActiveX control is loaded in Rose, it continues to be loaded until explicitly closing it.

ActiveX Feature Overview

The ActiveX controls project was added to the Rose workspace. It is based on a SECMultiDoc Template which creates a document and a view at runtime. You can use Rose to load your COM object only if it is an ActiveX control.

A COM object is an ActiveX control if it exposes the following interfaces:

For each selected ActiveX, Rose creates the following:

Note:

Ability to quickly and easily change the default language via Rose main window

You may now change the default language, by right clicking on the bottom Rose window pane (which, currently displays the current default language). A context menu will appear, with all language options. Apply the new default language, by selecting one of the options presented in the context menu.

Rose ANSI C++ Enhancements

Ability to select comment style for ANSI C++ components

ANSI C++ comment styles are valid for all of the artifacts of a single component (i.e. the ANSI C++ comment style is a property of the component). The default style is C++. To select a comment style:

Your selection will become the default comment style for the component for which you generate code. All newly created documentation will appear in the selected comment style.

Note:
Reverse engineering code and then forward engineering after changes to a different comment style will cause your comments to change to the newly selected style.

Rose J Enhancements

Ability to generate @Exception vs @Throws tag

Rose J Add-In now supports the ability to select @Exception or @Throws tag in javadoc generation.

Radio buttons have been added to the Java Project Specification Style Page (see Tools > Java/J2EE > Project Specification > Style tab). The two new radio buttons are grouped under Throws/Exception tag. User selection will determine how javadoc exceptions are generated. For example:

The value of this selection is stored as a property in the model file. This property is only used during forward engineering (code generation).

Rose J model closure autoload feature

Previously, when attempting to perform code generation or reverse engineering while any controlled unit was unloaded, a dialog would be displayed, informing you that some units are unloaded and incorrect code might be generated. In Rose v2003.06.00 and earlier, it was not easily possible to determine which units required loading, in order to successfully perform code generation or reverse engineering

The Rose J Model Closure Autoload Feature automatically helps you determine the correct model closure necessary for successful forward and reverse engineering. Utilizing this feature, Rose will ensure the necessary units are loaded.

The following describes the steps necessary to utilize Rose J Model Closure Autoload.

Dual role EJB support enhancement

Prior to this release, the Enterprise JavaBean Wizard for Rose J did not allow a developer to define an EJB that offers both local and remote interfaces. According to the EJB 2.0 specification, it is possible to provide both a remote client view and a local client view for an enterprise bean. This enhancement will allow you to create a dual role EJB that offers both local and remote client views.

Following new enhancements are included:

  1. Create an EJB with both Local and Remote Client View A dual role EJB can be created by checking the checkboxes Component Name (for remote interface) and Local Name (for local interface) from the J2EE - EJB specification page.

  2. Remove a Client View from a Dual Role EJB You may open the J2EE - EJB specification page of a dual role EJB. If you uncheck the check-box of Component Name or Local Name, the corresponding client view will be removed.

  3. Add EJB methods to a Dual Role EJB New context menu items are added to the EJB class. Remote/Local EJB methods can be added to the Bean class and exported to its remote and local interfaces. A new operation stereotype, EJBRemoteLocalMethod, is created. When an EJB business method is exported to both Local and Remote interfaces, its stereotype is set to EJBRemoteLocalMethod.

  4. Remove an EJB methods from a Dual Role EJB An EJB method can be deleted from the Rose browser or class diagram. The corresponding EJB methods of the deleted method will also be removed from the EJB.

  5. Forward Engineering and Reverse Engineering a Dual Role EJB You may generate Java source files and deployment descriptors of a dual role EJB. You may also update Rose model from Java source files and deployment descriptor of a dual role EJB

Enhanced Rose J fundamental type support

You have been able to manage fundamental types with the Rose J project specification dialog by adding and removing types displayed on the Fundamental Types tab. To add a type, you would click on the new entry button and add an entry in Java fully qualified name format. To remove a type, you would select the type from the list and click the delete button. The resulting list of fundamental types would be stored in the registry of the your local machine. Some of the major limitations of this current Rose J Fundamental Type Support, include:

  1. Fundamental types were not shareable across teams or organization, i.e. there was no way to standardize/unify them.
  2. The user interface for adding and removing fundamental types could be enhanced.

In order to resolve the limitations listed above, the following enhancements have been added to improve Rose J Fundamental Type Support:

To Add / Remove a Fundamental Type

  1. Click on the target class either in the class diagram or in the browser
  2. Select the Java/J2EE >Fundamental type toggle.

To View Fundamental Type List

  1. Select the target class either in the class diagram or in the browser
  2. Select Java/J2EE >View fundamental type.

Rose J / CM integration

You may now place Rose J source code, XML files, EJB-JAR and WAR files into a Source Control System via the Rose J / CM Integration. You may also start the Source Control System Explorer from the Rose J Add-In.

Note:
The Rose J / CM Integration only supports those Source Code Control Providers which support standard SCC API's.

Rose J / CM Integration Setup

HKEY_LOCAL_MACHINE\SOFTWARE\SourceCodeControlProvider
\ProviderRegKey

This key would be set to the value of one of the providers listed in the

HKEY_LOCAL_MACHINE\SOFTWARE\SourceCodeControlProvider
\ProviderRegKey\InstalledSCCProviders

Setting (usually Rational ClearCase or Microsoft Visual SourceSafe), according to the SCC provider to be used.

To select a location where the generated code files will be stored, click on the Select Source Root Path for Source Control button. Select the root path from class path for the source code. You may also edit class path from this dialog box via the Edit Class Path button. The root path is saved as a rose Java property with Rose model. The root path can be a virtual path, defined by Virtual Path Map from Rose.

If using ClearCase, the Root Path must be in a VOB

Example - Using ClearCase as SCC Provider with Rose J / CM Integration

The following describes a basic use case scenario of the Rose J / SCC Integration when using ClearCase.

Verify the ProviderRegKey registry setting is appropriately set for ClearCase as the SCC provider. If necessary to change the registry setting, restart Rose.

From the ClearCase Explorer, verify you have a VOB available where you wish to put the Rose J files under source control. Set the Source Root Path for Source Control to a directory in your VOB (see instructions in Rose J / CM Integration Setup within the project specification settings).

13:58:02| Component C:\Documents\joan\temp\joanac_view\JoanaVOB\myDemo\PkA\JavaA.java - Starting code generation
13:58:06| Add file C:\Documents\joan\temp\joanac_view\JoanaVOB\myDemo\PkA\JavaA.java to SCC successfully.

To Confirm Rose J Integrated Source Control Actions Performed

To verify that a new directory has been created and placed under source code control correctly under the selected project root path, for the package PkA and the *.java file (JavaA.java) - start the ClearCase Explorer, by selecting Tools > Java/J2EE > Use Source Code Control Explorer.

You may do the following in Rose and note the required CM actions are correctly implemented in ClearCase:

Right Click on the JavaA class in the diagram or in the browser and you will see the following context menu options, under the Java/J2EE selection:

Support for CMR functionality

The new Rose J CMR functionality includes the following capabilities:

  1. Ability to add a CMR relation between Container Managed beans using the Rose Association Tool*. Validation is performed on the association and if the CMR is validated a CMR stereotype is added and the association configuration completes. Upon changing any CMR relationship, CMR validation will occur. If the CMR becomes invalid a warning will be issued.
  2. Rose J generates the XML code for the CMR relationship into the bean XML file.
  3. Rose J will reverse engineer any CMR relationship(s) from the bean XML file and configure the relationship(s) in Rose.
  4. Check and Repair functionality available for CMR relationships. Use Rose to attempt to repair a CMR association.
  5. Rose will continue to support loading of prior models which may contain invalid CMR's, without performing any change on the model. Rose will report any invalid CMR's.

    *To Draw Association on Diagram

EJB query and EJB abstract schema name enhancement

You are now allowed to set EJB Query and EJB Abstract Schema Name(s) from Rose. In previous versions of Rose, when forward engineering an EJB, you had to update the EJB Query or EJB Abstract Schema Name manually in an EJB Deployment Descriptor file. When reverse engineering an EJB Deployment Descriptor file, the information of EJB Query or EJB Abstract Schema Name could not be set into the Rose model.

With the enhancement, the Rose J Add-In provides you with the following capabilities:

  1. You may input/update EJB Query for EJB Find or Select method from EJB Query tab in Method Specification page.
  2. After you reverse engineer an EJB Deployment Descriptor file, the EJB Query of a Find or Select method will be set into the Rose Model. You will be able to read/update the EJB Query from Method Specification page.
  3. You may forward engineer an EJB and find out that EJB Query of a Find or Select method is written into the EJB Deployment Descriptor.
  4. You may input/update an EJB Abstract Schema Name from J2EE--EJB Specification page.
  5. After you reverse engineer the EJB Deployment Descriptor file, the EJB Abstract Schema Name is set into the Rose model. You will be able to read/update it from J2EE - EJB Specification page.
  6. An EJB Abstract Schema Name will be written into Deployment Descriptor when you forward engineer an EJB.

Rose Model Integrator Enhancements

Rose Model Integrator Filter enhancement

Selecting Rose Model Integrator Options > NewFiltering presents a new Model Integrator Filter Settings dialog. This dialog allows you to Ignore All of the GUI filter groups (including, properties) listed below, or you may select each GUI filter group individually (that you wish to ignore in the Model Integrator comparison or merge):

By checking any of the filter groups (listed above) or Ignore All, the Model Integrator will suppress all the differences associated with the selected filter groups among two or more contributors. For example, checking the Colors filter group will ignore the differences in the color related properties while performing a compare and/or merge.

Selecting (checking) Ignore All disables the individual selection of the filter groups as Ignore All will suppress the differences for all of the filter groups listed.

The Locations and Dimension filter groups allow you to enter the filter value in their respective edit box (positioned to the right of the Locations and Dimension filter check-boxes, respectively). If the value entered (in pixels) for the two contributors is less than or equal to the property value then that property will not be shown with a difference or a conflict. The other properties, Fonts, Colors and Visibility do not have associated filter values.

Selecting the Filter options and selecting OK will save the filter settings for future sessions.

After loading two or more contributors in the Rose Model Integrator and subsequently changing the filter settings a message box indicating You must reload contributors for this change to take effect will be displayed. In this case it will be necessary to open the Add contributor dialog again and click on Merge or Compare buttons depending on the operation being performed. This message will not appear if the filter options are selected before adding any contributors.

The Rose Model Integrator Add-In lets you compare model elements from up to seven contributor files, discover their differences, and merge them into the base model.

Model Integrator ability to log conflicts to a file

Overview

The Log Conflicts to file feature enables the user of the Model Integrator to generate a hardcopy of the elements in conflict when comparing a number of up to 7 models.

How To Create Conflict Output File from Model Integrator

  1. The user selects and loads contributors in the Model Integrator application.
  2. The user selects Compare.

    The model shows up in the Model Integrator with the first node with conflict selected and the property values for all the contributors displayed in the right section of the screen. To log the conflicted items (of the entire model) to a file, select File > Log conflicts. Note that this option is enabled ONLY if the application is in Compare mode.

  3. Once this option selected, you are prompted to enter the file name (in the Save As dialog box) where the items with conflicts (between contributors) should be logged, along with the values for each contributor.

Note:
The log file format may be text (*.log) or CSV (*.csv). The CSV format enables you to open the file with Excel, which will provide a comprehensive layout.

Description of Model Integrator Conflicts Log File Output

The log file provides the user with the following information:

Enhanced Model Integrator support for Rose Data Modeler

Rose Data Modeler persists constraints or index key column(s) as a Data Modeler specific property named KeyList in the model (.mdl) file. It is a comma-delimited list of Unique ID's. This has presented problems in Rose Model Integrator (MI) upon merging data models. The problem would surface when the user tries to generate the DDL for the data model. A Missing Primary Key from table warning was encountered although primary key is shown in the model. In some cases users would experience other problems, such as the table specification could not be opened. The merged data model was corrupt and could no longer to be used for further data modeling development.

An enhancement has been which allows you to effectively utilize the Rose Model Integrator on a Rose Data Model. You are able to use the Rose Model Integrator on the Rose Data Model as before, but the following enhancements will be available:

A dialog box will appear to indicate one of the contributing models was saved in a previous version of Rose and there may be errors with the resultant model.

  1. REI Operation class is enhanced with the following methods:

  2. Petal changes to support the changes mentioned above

    The following is added to be part of the operation object structure. The supplier of this dependency relation is an attribute object reference.

    (object Operation " PK_T_01"
    quid "3EEFA8A10270"
    visible_modules (list dependency_list (object
    Dependency_Relationship attributes (list Attribute_Set
    (object Attribute
    tool "Data Modeler"
    name "Order"
    value "1"))
    quid "3EEFB4850245"
    stereotype "PK"
    supplier "LogicalView::Schemas::S_0::Table1::COL_0"
    quidu "3EEFB4800180")
    stereotype "PK"
    concurrency "Sequential"
    opExportControl "Public" uid 0)

Rose CORBA Enhancements

New registry entry to prevent Rose CORBA from deleting old artifacts from the Logical View

When you Reverse Engineer CORBA IDL files, Rose CORBA deletes the old artifacts from the Logical View.

A new user level Registry entry is added:

HKEY_CURRENT_USER\SOFTWARE\Rational Software\Rose\Addins\CORBA

"OverWriteModule" = "No"

Rose CORBA will behave as follows during reverse engineering:

  1. When the registry entry OverWriteModule is missing or its value is not set to Yes (case insensitive) Rose CORBA does not delete the artifacts from the Logical View.
  2. When the registry entry OverWriteModule value is set to Yes (case insensitive) Rose CORBA deletes the artifacts from the Logical View, keeping the model latest as per the current IDL file only.

Support for "local" keyword in IDL generation and reverse engineering

Recent versions of CORBA support the local interface feature. Below is a description of how we now support this feature in the Rose CORBA Add-In.

You can now select an interface as a local interface by enabling the local flag provided in the CORBA interface class page dialog.

When code is generated for the interface, the local keyword will be generated before the interface definition. local interface inter { };

Similarly during reverse engineering, if we parse the above IDL (Interface Definition Language) file, local property flag of the interface inter will be enabled.

Support for "supports" keyword in IDL generation and reverse engineering

Recent versions of CORBA support a keyword known as supports. Below is a description of how we now support this feature in the Rose CORBA Add-In.

A CORBA valuetype can inherit from another valuetype and also can support interfaces. There are certain rules about valuetype inheritance and supporting interfaces.

The following table lists the allowable relationships:

Table 1. CORBA valuetype inheritance and supporting interfaces
May inherit from: Interface Abstract interface Valuetype Abstract Valuetype
Valuetype Supports single Supports multiple Single (may be truncatable) Multiple
Abstract Valuetype Supports single Supports multiple no Multiple

In Rose, the support relationship between a valuetype and an interface has been mapped as a realization relationship.

You can now create an inheritance between valuetypes by selecting the super valuetype classes from the list shown in the valuetype class page inherits from list. Now, this list shows only valid valuetypes.

For creating the supports relationship between a valuetype and an interface you will need to create a realization relation between valuetype and interface. You can achieve the same using the class diagram.

Enhancement to remove generated comments from IDL

During forward engineering, the generation of RoseIds in the generated IDL file can be controlled by using the new flag GenerateRoseID that is provided in the detail tab of the project specifications dialog.

When you disable the GenerateRoseID flag and try to generate the code the following warning message dialog will be displayed.

You may disable this dialog box by enabling the check box.

Enhancement to providing better control over IDL format and generation

You can now control the generation of comments during forward engineering. By disabling the Generate Comments option in the project specifications dialog, you can disable the generation of the comments when forward engineering.

Also, you may now control the generation of opening braces. By enabling the Brace On New Line option in the project specifications dialog, you may control the generation of the opening braces in new line.

In the indentation group box, you may select tabs or spaces to generate the code. The number of tabs or number of spaces can be specified in the Number to use text field.

The default value is 4.

Valid entries for the field Number to use can be between 1 and 40 (including these values). If you set the value less than or equal to 1 the value will be automatically set to 1. Similarly, if you set the value greater than or equal to 40 then the value will be automatically set to 40.

Updates to CORBA actions

The IBM Rational Rose CORBA add-in allows you to forward engineer Rose model elements into CORBA-compliant IDL code and reverse engineer CORBA IDL code into a Rose model.

In support of the CORBA 2.3 Specification, Rose CORBA implements the use of value types. Value types allow you to pass objects by value rather than by reference, which is particularly useful when an object's primary purpose is to encapsulate data, or when you want to explicitly make a copy of an object. Two CORBA stereotypes make use of this enhancement:

This Release includes modifications to the CORBA Add-In actions involving attribute types, operation return types, operation parameter types, and operation exception types in Round Trip Engineering.

Existing CORBA models will be converted (by this Release) to recognize and identify these changes, automatically during code generation when selected to be forward engineered, and during reverse engineering. There is now one more phase during code generation - the CORBA conversion process. You may notice performance degradation when performing code generation on an existing CORBA model, the first time after installation of this Release, due to this additional conversion phase.

Note:
If the type cannot be resolved in the model (i.e. the type cannot be found in the model OR if more than one type class of the same name is found in the model), the type would not be set and warning will be logged. The following would be the warning message format:

[Resolving corba type references: Start ]
WARNING: Class <fully qualified class name> - operation <operation name> - <item type> cannot be resolved - '<type string>' will be used.
WARNING: Class <fully qualified class name> - attribute <attribute name> - type cannot be resolved - '<type string>' will be used.
[Resolving corba type references: Finish ]

*<item type> could be parameter type, return type, or exception type.

If code generation is occurring on a read-only subunit OR read-only model, the conversion will NOT take place during code generation. Hence, the type would not be set. In this case you will need to make these units write-able for complete conversion.

IMPORTANT: Once the CORBA model is converted by Rose 2003 or greater (as described above), it is no longer compatible with previous versions of Rose. It is important, upon upgrading to Rose 2003, no users perform work on this model in a previous version of Rose as it can cause model corruption.

Ability to repeat reverse and forward engineering of CORBA IDL's

The Rose CORBA Add-In has been enhanced to allow repeated forward and reverse engineering of CORBA IDL's. It is important, however, that IDL files be reverse engineered in the decreasing order of dependency, for example the most dependent file should be reverse engineered first an the least dependent file should be reverse engineered last.

Rose VC++ Add-In enhancements

Automatic Source File Updates in the IDE

In earlier versions of Rose VC++ roundtrip engineering would write directly to the file system to update code files. If those files were open in the IDE at the time, you would see a dialog box indicating This file has been modified outside of the source editor. Do you want to reload it?, asking you if you would like to reload the file into the IDE.

In Rose v2003.06.10 or greater, if this feature is enabled, files that are already open in the IDE will be modified directly in the IDE, thus avoiding the reload dialogs.

In the case of Rational ClearCase managed files, there was also a problem in the interaction between the Visual C++ IDE and the ClearCase files that reside in the ClearCase link directories. Visual C++ never receives file change notification events from link directories. In this case you would not see the message, indicating the file would need to be reloaded.

In Rose v2003.06.10 or greater, if this feature is enabled, the files open in the IDE will automatically be updated during roundtrip engineering.

To Enable Rose VC++ Automatic Source File Updates in the IDE: Set the following registry key to 1.

To disable this feature, set the registry key to 0. By default, the value is 0.

HKEY_LOCAL_MACHINE\SOFTWARE\Rational Software\Rose\Addins\VC++\Custom Settings\Language Properties\ReloadFilesInIDE

Introduction of limited .NET 7.0 support for Visual C++ Add-In (NOTE: This is a Preliminary Feature)

The Rose Visual C++ Add-In may now access projects loaded in the Microsoft Visual Studio .NET IDE.

Note:
Rose Visual C++ Add-In does not support all of the .NET managed C++ code extensions to the C++ language, at this time. In addition, the Rose VC++ Add-In will not recognize the new # directives, added in .NET 7.0.

How To Access .NET 7.0 Projects in Rose

The Recent and Running tabs will show VC++ .NET projects, as well as VC 6.0 projects.

Ability to Update Code with Include changes after making changes to list of includes in External Map tab

Any modification in the list of includes, specified in the Include File / Filename list (in the External Map tab of the component specification), will be reflected in the code after the next code generation. In previous Rose releases, the list of includes specified in the External Map Tab was only generated one time and any modifications to the list were not reflected (updated) in the code.

This enhancement allows the user to modify any includes and after the next code generation the mapping classes-modified includes will be reflected in the code.

To access External Map tab (in the component specification dialog):

The External Map tab maps classes realized by this component to the include statements required to reference these classes by classes realized in other components.

If the External Map tab for a sample Component SupplierComp includes the following generated code:

#include "stdafx.h"
#include "WrongHeader.h"
#include "Client.h"

and a change is made to the include file name (from WrongHeader.h to RightHeader.h) in the External Map tab of the SupplierComp component.

Generated code will now include:

#include "stdafx.h"
#include "RightHeader.h"
#include "Client.h"

Note:
After every modification of the include list (in the External Map tab) the user is notified by a warning message to regenerate the code. The include modifications will be effective (in the code) only after the next code generation.

Upon selecting Yes, code will be generated and the include changes will be realized in the newly generated code.

Selecting No (i.e. delaying the code generation), at the next attempt to generate code, the user will be notified by a final warning message to generate code for the components affected by the changes in the External Map, otherwise changes will not be reflected in the code.

.NET Managed Extensions for C++ support in Rose VC++ Add-In

The Rose VC++ .NET support has been enhanced to include Managed Extensions for C++ Support for the Rose VC++ Add-In for reverse engineering purposes. The following new keywords have been added to the Managed Extensions in the Grammar file for Rose VC++. When necessary, they are interpreted and reflected in the model in order to be properly reverse engineered.

Table 2. .NET Managed Extension for C++ keywords supported during reverse engineering
Keyword Description
__abstract Declares a class that cannot be instantiated directly.
__box Creates a copy of a __value class on the common language runtime heap.
__delegate Declares a reference to a unique method (a function pointer) of a managed class.
__event Declares an event method of a managed class.
__finally Declares a finally block associated with a try block.
__gc Declares a gc type.
__identifier Enables the use of a C++ keyword as an identifier.
__interface Declares an interface.
__nogc Declares a native C++ class that is not garbage-collected.
__pin Prevents an object or embedded object of a managed class from being moved by the common language runtime during garbage collection.
__property Declares a property member for a managed class.
public, protected and private Determines the accessibility of specified types and methods outside of an assembly.
__sealed Prevents a __gc class from being a base class, or a method from being overridden by one in a derived class.
__try_cast Performs the specified cast or throws an exception if the cast fails.
__typeof Returns the System::Type of a given type.
__value Declares a value type.

Rose Data Modeler Enhancements

Limited support for Oracle 9i

Note:
The changes below involve the Oracle SQL parser.
  1. Support for foreign key relationships spanning schemas: Foreign key constraints on a table in a particular schema can now refer to columns belonging to tables defined in another schema.
  2. Support for Triggers, Stored Procedures, Functions, Packages and Package Bodies:

    Support for the items mentioned above have been enhanced with additional clauses. The following is a list of the added clauses (please refer the Oracle 9i Specification for additional information in relation to these clauses):


  3. Unreserved Keywords: Some keywords that were unreserved according to the Oracle specification have been made available in the Rose Data Modeler. Previously you were not able to use many of the unreserved keywords as per specification as identifiers. You may now use Unreserved Keywords as identifier names.
  4. Subprograms (Procedures and Functions), Packages and Package Bodies can be wrapped. This means we cannot see the implementation code for them. (Review the Oracle 9i Specification for more information). Support is now included to reverse engineer such wrapped bodies.
  5. Rose Data Modeler now utilizes information from Procedure(s) and Functions, which reference external libraries written in C/Java. The previous versions of Rose Data Modeler used to only reverse engineer the Procedure name and its Parameters. Rose Data Modeler will now reverse engineer and update all fields (Language, External Name, and Action Body) in the Procedure and Function specification sheet.

Known Oracle 9i Issues in Rose Data Modeler

  1. Views with nested tables and triggers on nested tables will be reverse engineered from the database. However, there is no support for these entities in the user interface or during forward engineering.
  2. Some keywords that are unreserved in the Oracle Specifications may be treated as reserved keywords by the Rose Data Modeler SQL parser. This can result in parser errors. A suggested workaround is to change the identifier in question. The following is a list of such keywords, which could present parser errors if used as identifiers:

    character, constraint, debug, dec, foreign, int, limit, nvarchar2, primary, references, returning, rowlabel, scope, some, temporary, the

  3. The Rose Data Modeler parses Stored Procedures, which references external libraries written in "C" and "Java". However, in the Rose Data Modeler, the name of the "C" function and Library Name is displayed in a single text field named External Name in the Stored Procedure specification. The syntax followed here is NAME proc_name LIBRARY lib_name. When modeling external stored procedures, follow this syntax when specifying the name of procedure and library. In case of Java it places the whole external procedure declaration in the Action Body of the specification.
  4. The Rose Data Modeler parses and ignores certain keywords during reverse engineering. As a result these details are not stored and displayed in the Rose model. When performing forward engineering on this type of model, you will not see those keywords in the generated DDL script file. For example, the Rose Data Modeler parses PARALLEL ENABLE keywords but this information is not stored in Rose model as it is ignored during reverse engineering.

SQL Name Support (Supports Name Shortening)

The Rose Data Modeler Add-In now supports Name Shortening in order to adhere to specific database requirements. The following specification pages have been enhanced to allow user to specify a SQL Name for DDL generation. The Name Shortening logic will be applied to this field. The Compare and Sync feature also compares the SQL name (if not blank) with the data-modeling element name in the selected database/DDL script.

The Name Shortening mechanism applies to the SQL Name if it is not blank, or to the actual name of the data-modeling element if SQL Name is blank. The new name shortening mechanism utilizes an algorithm to strip out vowels and to ensure uniqueness. Name shortening is accomplished via registry settings (prior to starting Rose). The following registry entries are set up automatically (using the default values for each supported database, as shown below) by the installer. To change these Registry settings

Any names generated in the DDL that are longer than 128 characters (based, on the above settings) will be automatically shortened during the forward engineering process. This feature, therefore ensures that all names generated in the DDL are valid in the database context of these strings.

Warnings you may encounter in Rose log if one or more of the following conditions exist:

  1. Name shortening applies and the SQL name is blank.

    Note:
    When the SQL name user input is correct, data modeler accepts it and you will not be notified when name shortening is applied.

  2. SQL name conflict occurs.

Note:
In any cases where name shortening is applied to the name/SQL name of the data-modeling element, the SQL name field in the model will not be updated in the model.

Data Model-Object model comparison wizard

Rose Data Modeler now supports comparison between the Data Model and its Transformed Object Model. The following differences between the object model and transformed data model will be displayed in the comparison report:

  1. Foreign Key changes in data model. [i.e. the parent / child of an transformed identifying / non-identifying relationship has been changed].
  2. Primary Key changes in Data Model [i.e. The addition / deletion of Primary Key Column(s)].
  3. Objects that have been deleted from object model but still exist in data model.
  4. Attributes in object model which are not in data model.
  5. Attribute data type changes in object model which are not in the corresponding column data type in data model.

The Data Model-Object Model Comparison Wizard allows you to save the differences (report) to a text file for future reference.

To Utilize the Data Model-Object Model Comparison Wizard:

  1. Right-click on the schema
  2. Select Data Modeler->Compare to Object Model
  3. Follow the online instructions to compare the selected data model with the transformed object model.

Note:
A valid comparison can only be performed only if the Data Model has a Transformed Object Model.

Transformation synchronization options (Synchronization between Data Model and Object Model during Transformation)

Rose Data Modeler now supports synchronization between Data Model and Object Model during Transformation. Any extra elements will be deleted if the Delete Extra Element In Destination option is selected during transformation. The Delete Extra Element In Destination option is provided in both Transform Data Model to Object Model specification and the Transform Object Model to Data Model specification.

Enhanced DDL elements generation order

Rose Data Modeler now generates DDL commands organized by table instead of by command types. Description below lists original (previous) order and new enhanced DDL elements generation order.

Original Generation Order

  1. Drop statements
  2. Create Database statements
  3. Create Tablespace statements
  4. Create Distinct Type statements
  5. Create Table
  6. Indexes
  7. Alter Table add Foreign Key
  8. Create View
  9. Create Stored Procedure
  10. Create Trigger
  11. Comment

Enhanced DDL Elements Generation Order

  1. Drop statements
  2. Create Database statement
  3. Create Tablespace statements
  4. Create Distinct Type statements
  5. Repeat until all Normal Tables are processed:
  6. Repeat until all Aux Tables and like Tables are Processed:
  7. Alter Table add Foreign Key
  8. Create View
  9. Create Stored Procedure
  10. Create Trigger
  11. Comment

Limited DDL round-trip engineering support for IBM DB2 OS390 version 7

Rose Data Modeler now supports DDL round-trip engineering for Database Type IBM DB2 OS390 version 7 on the following DDL statements:

  1. CREATE DATABASE statement (newly added)
  2. CREATE AUXILIARY TABLE statement (newly added)
  3. User-defined column data type definition in ALTER TABLE ADD <column definition> statement.
  4. ROWID data type
  5. The following keywords in CREATE TABLE statement:
  6. The following keywords in CREATE INDEX statement:
  7. The following keywords/constructs in CREATE TABLESPACE statement:

Enhanced constraint generation in DDL for IBM DB2 OS390

Unique constraints and Primary Key constraints are now generated as ALTER TABLE statements immediately after the CREATE INDEX statement rather than being generated together with CREATE TABLE statement. The ALTER TABLE statement construct will appear as:

ALTER TABLE <table name> ADD <constraint definition>

Constraint name generation is supported if v7 is selected in the DDL Forward Engineering wizard.

Rose Version Control Add-In Enhancements

"ShowAll" Registry setting available to enhance performance when selecting configuration management options from Rose

Upon selecting CM options within Rose, the Version Control Add-In queries and displays all the controlled files in the model for which the CM option applies. This can impact performance, as Rose queries all controlled units in the model.

In order to enhance performance and only perform the CM action on the selected unit, the following registry entry should be set to No before starting Rose:

HKEY_LOCAL_MACHINE\SOFTWARE\Rational Software\Rose\Addins\Version Control\Custom Settings\ShowAll

Setting ShowAll to No will only list the controlled file related to the selected model item. The CM action will only be applied to this controlled file.

By default ShowAll is set to Yes and will display all controlled files applicable to the CM option chosen.

Enhancement to the "Get Latest" option for Rose Version Control Add-In

The Get Latest option of the Rose Version Control Add-In will now allow you the ability to access all subunits of a loaded unit, even if the subunit (files) resides on another user's machine as described below.

Upon selecting the Version Control Get Latest option, a dialog will include a list of all (loaded and unloaded) controlled units. (Previously, only loaded controlled units would be listed.)

The following new options are available:

Note:
*The Prompt Individually check-box is visible only if the Apply Recursively check box is checked.

After selecting the appropriate check-boxes and selecting Get for the highlighted file:

Upon selection the Cancel button, the Get Latest action will terminate immediately.

Upon completion of the Get Latest command, all subunits accessed recursively will now also be included on your machine and will be loaded based on your selection to Load Unloaded Units. Refer to the chart below for each Get Latest option and corresponding result.

Table 3. Rose Version Control Get Latest options and results
Load Unloaded Units Apply Recursively Prompt Individually Result
Get Latest will be performed ONLY for the file you select. Only those loaded units that have been refreshed will be reloaded
X Get Latest will be performed ONLY for the files you select. ALL units for the refreshed files will be loaded.
X Get Latest will be performed for the files you select and their subunits, recursively. Only the loaded units which have been refreshed will be reloaded.
X X Get Latest will be performed for the files you select and their subunits, recursively. ALL units for the refreshed files will be loaded.
X X Get Latest will be performed for the files you select and their subunits, recursively. For every subunit, before Get Latest is performed, you will be prompted to decide whether or not the action should be performed. Only the loaded units, that have been refreshed, will be reloaded.
X X X Get Latest will be performed for the files you select and their subunits, recursively. For every subunit, before Get Latest is performed, you will be prompted to decide whether or not the action should be performed. ALL units for the refreshed files will be loaded.

Announcements and changes

This section contains announcements about important changes to IBM Rational Rose.

The following support has been added in this release:

The following support has been removed in this release:

For more information about hardware and software requirements, see System and software requirements.

Installing IBM Rational Rose

This chapter describes updates to the documentation that pertain to installing Rational Rose.

For full instructions on installing Rational Rose, see the IBM Rational Rose Installation Guide. To obtain this document, see Rose Documentation.

Server, system and software requirements

Table 1 provides the recommendations and requirements for operating Rational Rose in your environment. You can operate the software on computers that may not meet all the hardware recommendations. The recommendations in this table provide guidelines for good operating performance.

Table 4. Server, system and software requirements and recommendations
Item Requirements and recommendations
Server Requirements
License Server If you use floating licenses, you need to set up a server to administer the licenses. For more information, see Administering Licenses for Rational Software
Database Server

If you are using commercial databases with Rose Data Modeler, we recommend installing those databases on dedicated machines.

Additional System and Software Requirements
Operating Systems
  • Windows 2000 with Service Pack 4
  • Windows XP Professional with Service Pack 1 or Service Pack 2
Note:
Windows XP Home Edition is not supported in this release.
Hardware Requirements
  • Processor: 600 MHz
  • RAM: 512 MB
  • Available Disk: Typical Installation - 720 MB, Compact Installation 173 MB
Web Browsers Rose add-ins that use a Web browser (for example, Web Publisher) support most common browsers.

Note:
Because some IBM Rational products (including some Rational Rose Add-Ins) may require certain Microsoft Internet Explorer components, if the IBM Rational Setup program does not detect Internet Explorer 5.5 SP1 or SP2, or 6.0 SP1 on your system, you will be warned during the installation process - however, as this is only a warning, you may proceed with the remainder of the installation. Rational Rose is tested with one of the recommended versions of Internet Explorer installed. Attempting to install and run Rational Rose without Internet Explorer installed, may cause unpredictable results. You, however, are not required to use Internet Explorer as your browser.
Java(TM) Rational Rose J supports the following Java IDEs. Use the JDK appropriate for your IDE.

  • VisualCafe in Studio 4.0, 4.1 Standard, Professional, Enterprise, and Expert Editions
  • IBM VisualAge(R) for Java 3.5, 3.5.3, 4.0 Professional and Enterprise Editions
  • Forte for Java Community Edition 3.0
  • Forte for Java Enterprise Edition 3.0
  • Sun One Studio 3 and 4 Community and Enterprise Edition
  • JBuilder 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, JBuilderX (10) Enterprise, Professional and Foundation Editions

Note:
If the link for IBM VisualAge for Java 3.5.3 and/or IBM VisualAge for Java 4.0 does not get installed correctly, click on the Detect IDE button in the Code Generation tab of the Java Project Spec in Rose.
Microsoft .NET Framework Version 1.1 or Higher Required for the Rational Rose Data Modeler and Rational Rose Web Modeler Add-In's.
Rose Data Modeler Database Requirements
  • DB2 Universal Database(TM) 5.x, 6.x & 7.x
  • DB2(R) OS390 5.x & 6.x
  • SQL Server 6.x & 7.x
  • Oracle 7.x, and 8.x,
  • Sybase System 12.5
  • SQL Server 2000
  • To reverse engineer Oracle and DB2 databases using Rational RoseData Modeler, an RDMS client must be installed
  • The Microsoft .NET Framework (v.1.1 or higher) is required to install the Rose Data Modeler and Rose Web Modeler Add-ins. If you do not have the required .NET versions installed and choose to continue the installation, these Add-ins will not be installed and previously installed versions of these Add-Ins will be disabled. You can install these Add-Ins at any time after you install the .NET Framework by using the Change option of your Rose installation in the Add/Remove Programs in the Control Panel. (See Microsoft .NET v.1.1 or higher Required to Install Rose Data Modeler and Rose Web Modeler).
Rose VC++ Requires Microsoft Visual C++ 6.0 (Visual Studio 6.0) or Microsoft Visual C++ 8.0 (Visual Studio 8.0)
Rose Visual Basic Requires Microsoft Visual Basic 6.0 (Visual Studio 6.0)
Rose J Requires JDK 1.1.6 or higher
Monitor SVGA-compatible display (256 or more colors recommended) with resolution of at least 1024 X 768 pixels
Mouse/Pointing Device Any pointing device with at least two buttons
Automated License Key Requests Internet connection required for license requests
Dual Boot Systems Installation of IBMRational Rose on dual-boot systems is not supported
Archive Utility WinZip or equivalent
IBM Rational Documentation Adobe Acrobat Reader 4.x or higher to read online PDF files

Restrictions and guidelines

This section describes noteworthy restrictions and guidelines that affect the use of IBM Rational Rose. These are not considered defects because the behavior is not expected to change in a future release.

IMPORTANT NOTICE!! Microsoft Windows 2000 NTFS "Change Journal" defect can cause file system corruption during installation of Rational products

Under certain circumstances, file system corruption can result from installing Rational Version 2003 products on Windows 2000 to an NTFS partition that has enabled the Windows "Change Journal" (log). This corruption is caused by a defect in Windows 2000. Before you install any Rational Version 2003 product on a computer that is running Windows 2000:

  1. Disable all virus detection software
  2. Read IBM Support Technote 1135295. Go to http://www-1.ibm.com/support/us/search/index.html and search for "Rational Installer Change Journal."
  3. Read Microsoft Knowledge Base article 820888 at http://support.microsoft.com/default.aspx?scid=kb;[LN];820888. This article includes information about an update from Microsoft that fixes the defect.

Microsoft .NET Framework (v.1.1 or higher) Required to Install Rational Rose Data Modeler and Rational Rose Web Modeler Add-Ins

The Microsoft .NET Framework (v.1.1 or higher) is required to install the Rose Data Modeler and Rose Web Modeler Add-Ins. If you do not have the required .NET Framework version installed and choose to continue the installation, these Add-Ins will not be installed and previously installed versions of these add-Ins will be disabled. You can install these Add-Ins at any time after you install the .NET Framework by using the Change option of your Rose installation in the Add/Remove Programs in the Control Panel.

For additional information in relation to installing Microsoft .NET Framework, please refer to:

http://msdn.microsoft.com/netframework/technologyinfo/howtoget/default.aspx.

The following describes Rational Rose Enterprise Installation behavior in relation to the Rose Data Modeler and Rose Web Modeler Add-Ins.

Table 5. Rational Rose Enterprise Installation behavior in relation to the Rose Data Modeler & Rose Web Modeler Add-Ins
Microsoft .NET Framework Availability Installation Results User Action Required
New Installation
.NET Framework version 1.1 or higher is installed on the same machine on which installing Rose v2003.06.13 or higher. Rose Data Modeler & Rose Web Modeler install correctly. None
.NET Framework version 1.1 or higher is not installed on the same machine on which installing Rose v2003.06.13 or higher. General Install continues, however, the Rose Data Modeler & Rose Web Modeler Add-In's will not be installed. These Add-Ins may be installed at any time after you install the .NET Framework by accessing them from the Control Panel > Add or Remove Programs > Change button. (Also see RATLC00247844, below)
Upgrade Current Installation
.NET Framework version 1.1 or higher is installed on the same machine on which installing Rose v2003.06.13 or higher. New v2003.06.13 or higher Rose Data Modeler & Rose Web Modeler Add-Ins install correctly and the previous versions of these Add-Ins will no longer be available. None
.NET Framework version 1.1 or higher is not installed on the same machine on which installing Rose v2003.06.13 or higher. New v2003.06.13 or higher Rose Data Modeler & Rose Web Modeler Add-Ins do not get installed. Previous version of these Add-In's are also deactivated. These Add-Ins may be installed at any time after you install the .NET Framework by accessing them from the Control Panel > Add or Remove Programs > Change button. (Also, see RATLC00247844, below)

RATLC00247844: Installing Rational Rose products on machine which does not have .NET Framework version 1.1 or higher installed, warns that the Rose Data Modeler and Rose Web Modeler Add-Ins will not be installed although the installation incorrectly attempts to proceed with installing these Add-Ins. These Add-Ins will be listed in the Add-In Manager, however, you will be unable to activate them. These Add-Ins should be reinstalled (as described above in "User Action Required") after installing .NET Framework 1.1 or higher.

Table 6. Rose Data Modeler Installation behavior in relation to the Rose Data Modeler & Rose Web Modeler Add-In's
Microsoft .NET Framework Availability Installation Results User Action Required
New Installation
.NET Framework version 1.1 or higher is installed on the same machine on which installing Rose v2003.06.13 or higher. Rose Data Modeler & Rose Web Modeler install correctly. None
.NET Framework version 1.1 or higher is not installed on the same machine on which installing Rose v2003.06.13 or higher. Product Installation exits with error. Rose Data Modeler Edition may be installed at any time, after installing Microsoft .NET Framework version 1.1 or higher.
Upgrade Installation
.NET Framework version 1.1 or higher is installed on the same machine on which installing Rose v2003.06.13 or higher. New v2003.06.13 or higher Rose Data Modeler version is installed correctly and the previous version will no longer be available. None
.NET Framework version 1.1 or higher is not installed on the same machine on which installing Rose v2003.06.13 or higher. Product installation exits with error. Rose Data Modeler Edition may be installed at any time, after installing Microsoft .NET Framework version 1.1 or higher.

"MEM_BAD_POINTER" Error May Occur When Installing Rose on Windows XP SP2

This error may occur under the following conditions (#1 & #2 - English OS and #2 - Japanese OS):

  1. One or both of the boxes on the Languages tab of the Control Panel > Regional and Language Options is checked (supporting East Asian and complex script / right-to-left languages).
  2. Windows XP SP2 is installed.

When this problem exists, Rose will also display a MEM_BAD_POINTER error when exiting Rose.

The error may be ignored. The Installation and Rose session will run successfully.

Note:
Microsoft has provided a Hot Fix for this issue - Microsoft KB number :KB910466. It may be downloaded from: http://support.microsoft.com/?kbid=910466.

There are separate fixes for the language of the Operating System. Request the fix that applies in your case (i.e. English or Japanese).

Status of change requests

Known problems

This section describes known problems in this release of Rational Rose.

Known Core Rational Rose and Extensibility Defects

IC371412; RATLC00238431; Rose appends Virtual Path Map variable after drive letter if there are two equal folders on two drives.

IC37486; RATLC00211476; Printing Diagram: Saving own options as default.

Workaround: The registry entry SaveLayoutOptionUponExit is located:

HKEY_CURRENT_USER/Software/Rational Software/Rose

If the value of this entry is non-zero the File > Print...-> Layout option is saved when exiting Rose. Otherwise, the default option As In Diagram is utilized the next time Rose opens.

IC39308; RATLC00246083; The Online Help should indicate that only elements on class, use case, component and deployment diagrams trigger the following events:

Elements on state, activity, sequence, and collaboration diagrams do not trigger the above events.

Note:
OnDeletedElementEx is actually triggered for state, activity and sequence diagram elements.

IC39598; RATLC00449778; Loading a large model containing many controlled units when the Version Control Add-In is checked, causes all Add-Ins to become un-checked in the Add-In Manager.

Workaround: Write-enable the model properties and reload the model. All Add-Ins should then stay checked.

IC42102; RATLC0046006; The Rose command RemoveItemView() fails to remove sub-views or text ItemViews contrary to the online Help.

The following code demonstrates this limitation:
'=== begin code ===
Set theDiag = RoseApp.CurrentModel.GetSelectedDiagrams.GetAt(1)

Dim theViews As ItemViewCollection
Dim theView As RoseItemView

Set theViews = theDiag.ItemViews
For v% = 1 To theViews.Count
Set theView = theViews.GetAt(v%)
r = theDiag.RemoveItemView( theView )
Print "removestatus:", r
Next v%
'=== end code ===

After running a script containing the above instructions, only some ItemViews will be removed. Sub-views or association elements and stand-alone text elements will not be removed. The online Help indicates that RemoveItemView works on all diagram ItemViews without restriction.

IC43880; RATLC00464133; The events described in the REI may not launch consistently on similar actions.

The Rose elements, actions, and events that launch are detailed below.

Actor and Class

Use Case

Activity

IC47020; RATLC01095967; Forward engineering From/To DDL files using some text editors may not correctly handle accentuated characters.

Forward Engineering: Prior to v2003.06.13, the DDL file generated utilized the operating system default encoding. If the DDL file contained accentuated characters Wordpad was able to handle them correctly. After v2003.06.13, UTF8 encoding is used for generating the DDL. Wordpad is not able to handle UTF8 encoding and attempts to open this type of file as a windows default encoded file.

Reverse Engineering
: As Wordpad does not have an option of saving the file in UTF8 encoding, copying the text from Notepad, pasting it in Wordpad and saving the file results in a windows default encoded file. However, Rose expects a UTF8 encoded file for reverse engineering.

Note:

If the file has only simple characters, Wordpad can be used because Windows default encoding and UTF8 use a similar kind of encoding for simple characters.

If there are accentuated characters in the DDL file

  1. Use a text editor which can read or write UTF8 encoded files, for making any further modifications to the DDL file; or
  2. After making all the changes, resave the DDL file as a unicode (UTF16) file.

Then, all the accentuated characters will appear correctly in the model after reverse engineering.

PK30437; RATLC00996136; Upon adding a URL to the Files tab of a Class Dpecification, double-clicking the URL does not open the correct web page.

PQ95477; RATLC00730798; "MEM_BAD_POINTER" error may occur upon installation or exiting Rose.

See MEM_BAD_POINTER Error May Occur When Installing Rose on Windows XP SP2.

RATLC00017953; Rational Rose / Rational RequisitePro integration - Rose Save Event not raised when controlled package checked in before save.

This defect involves Rose models that use version control with Rational ClearCase and integrated use cases with RequisitePro. If you have unsaved changes within a controlled package and attempt to check in that package, ClearCase prompts you to save your changes. In this case, RequisitePro does not recognize the save operation. When you subsequently close the Rose model, RequisitePro removes all changes since your last recognized save operation. Therefore, use case information in Rose and RequisitePro may not be synchronized.

Workaround: Save the controlled package in Rose before checking it in to ClearCase.

RATLC00028780; Rose IDE link mechanism does not correctly link to (or, integrate with) VAJ 3.5.3. If encountering this problem, contact IBM Rational Technical Support and ask for Technical Note# 16907.

RATLC00039739; Print Preview does not work consistently for all diagram types..

RATLC00040814; Text within the brackets on messages is lost on all sequence diagrams upon clicking Apply after changing the Message Signature option.

RATLC00040964; Some custom stereotype icons added to previous versions of Rose do not display correctly.

Workaround: Open the icon file (.wmf) in a graphics application that supports .wmf files. Set the color palette to Transparency .

RATLC00040998; Errors may occur upon selecting Tools > Options > XML tab and right-clicking on item and selecting Help.

RATLC00042172; If a state or activity diagram contains a view of an element from another state or activity diagram/model, the Query > Expand command will not work for that element.

RATLC00042271; Deleting a package with a class attached to a read-only object in an activity diagram will cause Rose to crash.

RATLC00042313; It is not possible to delete an unloaded controlled unit from a model.

Workaround: To delete a unit from a model, first load that unit and then delete it.

RATLC00213677; Printed diagrams can differ from what is displayed on the screen.

For example, some longer operations may not print completely. If the text on the screen appears as:

provideWorkflowClosure(WorkItemClosureData) : void

the printout might only show:

provideWorkflowClosure(WorkItemClosureData) : v

RATLC00237076; Extended Help cannot be opened if RUP(R) is not installed.

This is correct behavior, however, this menu option should be grayed out in this circumstance.

RATLC00237425; Specific graphic card drivers may cause Rose to crash and/or hang the system upon Rose startup.

If this occurs, contact Rational Customer Support.

RATLC00238101; Rose may consume a significant amount of CPU (i.e. 99%), if a Merant PVCS version prior to 7.5.00 is installed.

Workaround: Disable the Version Control Add-In, or do not install the Version Control Add-In when installing Rose.

RATLC00239236; Cursor does not position correctly in the editor on DBC characters.

RATLC00239886; Repair Installer functionality may not completely repair Rose installed files.

RATLC00249208; Warning that the .NET Framework not installed appears when installing Rose Professional C++ Edition, if .NET Framework is not installed.

The warning should not appear, and may be ignored as the Rose Professional C++ Edition does not include the Add-Ins requiring the installation of .NET Framework (i.e. Rose Data Modeler, Rose Web Modeler).

RATLC00444954; A generalization and association may overlap each other, in diagram.

RATLC00445804; Print Preview does not clearly represent activity diagram.

rose00001575; When starting Rose, sometimes the introductory splash screen consumes the entire screen and you cannot perform other actions until Rose is loaded.

Workaround: Use the - noSplashScreen command line switch to control display of the splash screen. Use one of the following methods to set this switch:

  1. In Windows, click Start > Run.
  2. At the command prompt, enter rose.exe -noSplashScreen

Alternatively: Start Rose from an MSDOS command line prompt by entering start rose.exe -noSplashScreen

rose00011555; Problems with McAfee Virus Scan software

When some software is installed or launched, some virus scanners check each file, including .dll and .ini files, being read and loaded, as part of their normal process. However, this functionality can significantly increase the amount of time it takes for some software to load. This is a result of the interaction between the loading software's dynamic extensibility functionality and the virus checking mechanism used by the antivirus software.

This functionality of certain antivirus software could affect the performance of Rose and of the IBM Rational Installer.

Rose stores a significant amount of information in the default stereotype.ini file, as well as ini files used by different Rose Add-ins. Rose accesses keys in these ini files using the standard windows calls, which unfortunately open, search, and close the ini file every time we query for a key from a file. This means that McAfee scans the complete ini file every time we attempt to read a key, literally 100's of times for some of the files. This, in addition to the dll scanning that is exacerbated by the fact that Rose is comprised of many components, is the cause of the slowdown in Rose startup.

The best solution at this time is to disable scanning of ini files in McAfee. To do this follow these steps:

  1. Go to the system tray and double-click the Vshield icon.
  2. In the System Scan dialog box, click Properties.
  3. In the Properties dialog box, make sure that the Virus scanner is scanning for program files only.
  4. Click Extensions.
  5. In the Program File Extensions dialog box, find the .ini extension and click Delete.
  6. Click OK to close the Program File Extensions dialog box.
  7. In the Properties dialog box, click Apply to save the changes.

rose00011800; You may encounter an unresolved model warning if there is a view of an item on a diagram, but the underlying item is not loaded or could not be found in the current model.

Items and relations are correctly displayed and reported by the Check Model command as unresolved references when the view to the item is in a diagram that is in the current model but the item resides in an unloaded package (controlled unit). The reference becomes resolved and the unresolved indicator is removed when the unit containing the item is loaded. The unresolved model warning occurs occasionally during model loading if the model was created using a previous version of Rose and that version of Rose allowed an invalid model to be created. Some known cases are:

Circular Generalize/Realize Relationship Combinations (allowable in Rose 2000e but no longer valid). Note that if you attempt to create a circular generalize/realize relationship combination, you will get an error and the relationship will not be created. Circular generalize/realize relationship combinations that exist in model files created with earlier versions of Rose are detected upon model load and one of the relationships involved in the circularity is left unresolved.

You may delete the unresolved view and then add new ones as appropriate. Running Tools > Check Model will provide in a list of unresolved views in the Rose Log. If the relationship has no view on a diagram in the model, then an Unresolved Relation warning is placed in the Rose Log. The warning is also generated by Tools -> Check Model .

To correct the unresolved relations:

  1. Load the model into Rose.
  2. Check the Log file for Unresolved Relation warnings.
  3. Open the Class Specification for the client class and click the Relations tab.
  4. Note that the unresolved relation (generalize or realize) is the one with the class name in brackets in the name column.
  5. Determine which classes are involved in the circularity.
  6. Delete the undesired relationship using the Class Specifications Relations tab.

Shared Objects - Shared activity diagram objects (allowed in Rose 2000e, but no longer valid in this release). A shared object is an object that belongs to one state machine and has a view on an activity diagram belonging to another state machine. The drag and drop of the object is now disabled if the object does not belong to the same state machine as the diagram. In general, the unresolved object can be deleted from the diagram and a new object can be created on that diagram. The model does not lose integrity or validity because of this since an object is not actually a model element -- it does not define anything, and is only an instance of a class used for visualizing state or behavior.

Known Rational Rose ANSI C++ Defects

RATLC00041526; Return type for comparison operators is Bool, not int.

RATLC00047641; Non inline operation bodies get generated in header file after round trip engineering.

RATLC00049391; Incorrect source code generated for attributes/parameters whose type is pointer/reference of enumeration/struct/union.

RATLC00049794; Get by reference has return type of "<type>" & const.

RATLC00049796; No Include and Forward Class Declaration generated for association/generalization/dependency if the supplier class has CodeName.

RATLC00050181; Body file not synchronized during round trip engineering of template class.

RATLC00212654; Forward Declaration/#include statement are not updated during subsequent code generation.

RATLC00235187; All ANSI C++ classes and interfaces must be placed under the Logical View to correctly generate code.

RATLC00249158; Unable to assign initial value for attribute in ANSI C++.

An attribute should be initialized by creating a default constructor.

If attributes are initialized in the header files, you will be unable to compile the resulting code.

RATLC00368636; Rose ANSI C++ code generation does not generate class, enum and typedef in the correct order in the header file.

RATLC00600130; Friend class decl not removed from code during forward engineering.

RATLC01185668; Documentation may be incorrectly removed during round trip engienering of template class parameter.

Known Rational Rose C++ Defects

RATLC00039470; Unable to suppress the generation of an operation in a class.

RATLC00040969; To change the ROSE_CPP path map variable, you must first manually remove it's entry from the registry.

In the Windows Registry, this path map variable is located at two different locations:

RATLC00238885; Rose Analyzer may write associated files to the rose-home-dir, while in use.

RATLC00960901; Online help not available for Rose C++ property: GenerateCopyConstructorInitializer.

In Rose v2003.06.13, Rose C++ was changed to automatically generate copy constructors as indicated below. The new behavior did not generate correct code when doing things like deep copies in copy constructors. The original behavior is now the default. By default, GenerateCopyConstructorInitializer is set to No.

When the GenerateCopyConstructorInitializer is set to True, the copy constructor initializers are generated for the class for which this property was set to True.

Known Rational Rose Visual C++ Add-In Defects

RATLC00039535; Quick import in Model Assistant may not show all imported information until the window is closed and reopened.

RATLC00039545; Model Assistant should not show parameterized classes as override class.

RATLC00042021; If you generate code for a function named Test1() that is stereotyped as <<abstract>>, and has no return value, the code generated will be:

virtual Test1() = 0;

If you now add a return type in the model and generate code again, the new return type will not be generated in the code.

Workaround: Manually add the return type in the code. The Model Update tool can be used to update the model with the new return type.

When both the model and code have a non-null return type, the Code Update tool will correctly generate changes in the model's return type into the code.

RATLC00042024; If you generate code for a class that has an initial value for a non-static class attribute, the initialization code will be generated in the default constructor. However, if you rename that attribute and generate code, the old initializer will remain, and a new one for the renamed attribute will be added.

Workaround: Remove the old initializer.

RATLC00212699; Rose crash may occur on VC++ Update Code (only when model opened by double-clicking).

Workaround: Start Rose once and close it. You may now double-click on the model and it will load and may be utilized, correctly.

RATLC00232648; Rose VC++ appears to generate code from a nested class, but no code is generated.

RATLC00367855; Scope does not appear on nested classes during VC++ code generation.

Known Rational Rose Ada Defect

RATLC00041393; Rose / Ada generates no Set / Get for tasks.

Known Rational Rose / Rational ClearCase Integration Add-In Defects

rose00016647; If a user has selected the Rational Rose option of creating back up files but has not selected to create the back up files by copy, Rose may not detect when a newer version of a file has been made available from Rational ClearCase.

Workaround: To project against this, make sure that the Update by Copy option has been selected.

RATLC00241200; Operation "xmerge" unavailable for manager.

Workaround: If this error occurs, using regedit - go to the registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Rational Software\Rose\AddIns\Rose Model Integrator\Install Path

If it has the value:

"D:\Program File\Rational\Rose\modelint.exe"

Note that this value contain double quotes. Change it to:

D:\Program File\Rational\Rose\modelint.exe

Known Rational Rose CORBA Defects

RATLC00039757; Comments placed on the same line as a definition may cause CORBA reverse engineering to fail.

RATLC00041558; Unable to suppress full PATH in #include in CORBA-code.

RATLC00962922; Rose CORBA may not reverse engineer correctly if #include files have "." present in #include directory name.

For example, if there are two idl files a.idl and b.idl and there is an include statement in a.idl for including b.idl and if the directory path of b.idl contains a "." i.e.:"one.two" , then rose creates the directory "one.two" while reverse engineering the idl file b.idl but creates the directories "one" and "two" while reverse engineering the include statement related to b.idl in the file a.idl.

Known Rational Rose Data Modeler Defects

PK11424; RATLC01098044; All Schemas check-box does not appear on the From tab of the open specification of a view.

Online help incorrect in relation to the following two points:

PQ98289; RATLC00736543; All controlled units containing related schemas must be loaded when performing any Data Modeling operation that may modify a constraint

This restriction is due to the lack of context between the subunit that is not loaded and the model that is not loaded.

RATLC00237106; If the owner of tables in SQL 2000 is not dbo, the primary / foreign keys are not reverse engineered into Rose.

RATLC00246184; Rose may hang when attempting to delete a relationship after reverse engineering database from SQL Server 2000.

RATLC00248851; Parser errors can occur when different schemas are referenced in the DDL.

If the alter statement is just following the create statement of the table it is altering, no error occurs. The errors will only occur if there are other statements referring to another schema in between the alter and create statements. For Example, an error would occur on:

Create T0; // default schema
Create S1.T1;
Alter T0; // default schema

This should be rewritten to:

Create T0; // default schema
Alter T0; // default schema
Create S1.T1;

Operations on default schemas should be located in the same place. Once a new schema is defined there should be no additional operations on the default schema.

RATLC00249113; Forward engineering a view into a Sybase database will fail if "where" clause in the view statement ends with a quoted identifier. In this case the ending double quote identifier is not included in the view statement.

Workaround: Place parentheses around the "where" clause expression. For example:

create view v1 as select c.name from c where c.name = "foo";

will need to be rewritten as:

create view v1 as select c.name from c where (c.name = "foo");

RATLC00367758; Correct Oracle Object to Data Model Data Type Mapping should read as follows:

Table 7. Java to Oracle Data Model Type Mapping
Java Oracle
long NUMBER (20,0)
char CHAR(1)
int NUMBER (10,0)
short NUMBER (5,0)
double FLOAT
byte NUMBER (3,0)
float FLOAT
boolean NUMBER (1,0)
java.util.Date DATE
java.lang.String VARCHAR2 (255)

RATLC00373262; Change and Apply may cause incorrect SQL format.

RATLC00373752; Attempting to Reverse Engineer from Oracle (8 and/or 9) database, only one index per table is created in the model although the database includes multiple indexes assigned to each table.

RATLC00444561; Changing the parent constraint causes a new column to be generated.

RATLC00447653; Parser errors when reverse engineering DB2 7.x DDL script (unsupported keywords).

RATLC00960381; How to supply External name as well as library using Rose Data Modeler single edit box External Name.

The External Name field displays both the external C function name and the library (DLL) name in which this function is present.

External Name Syntax for C procedures and functions: NAME "name" LIBRARY libname

RATLC00960423; Attempting to create identifying relationships between two tables will not work correctly unless the impacted schemas are write-able as columns must be created.

RATLC00960639; Unable to model "PARALLEL ENABLE" keyword in Rose.

Known Rational Rose Model Integrator Defects

RATLC00743042; Rose Model Integrator may crash when merging models of different Rose versions.

Workaround:

  1. Obtain the latest versions from the integration and development streams and save them in the newest version of Rose being used.
  2. Manually merge these two models outside of ClearCase, using the Model Integrator.
  3. Check-out the latest version of the integration stream from ClearCase and replace it with the newly merged model.
  4. Rebase.

Important Rose Model Integrator Limitation

The Rose Model Integrator may not be able to validate correct merges if a model element is referenced by another model element. This may occur when you are manually correcting merge conflicts without consideration of the Rose Model Integrator automatic-merged dependencies. The Rose Model Integrator will display these issues as merge errors, preventing you from saving the merged model. In this case, you must manually resolve these selecting both the sides of the dependency.

A common situation where this limitation is encountered is when the node referenced by the supplier attribute from Dependency Relationship object (the column to which the constraint applies) is removed, but the Dependency Relationship object (the constraint) is removed. In this case, there are two choices: you must either resolve the supplier to a contributor that does not remove it or resolve the constraint to a contributor which removes the constraint.

Known Rational Rose J and J2EE Defects

rose00042883; Class association may be incorrectly deleted when reverse engineering using Rose J.

Workaround: If diagram small, drag and drop all associations from the browser to the class diagram.

rose00054342; VAJ 3.2 is no longer supported.

rose00056595; In VisualAge, persistence for a Container Managed EJB is recognized as Bean Managed.

RATLC00040971; Cannot Browse Source Code from C:\ (Root directory).

RATLC00211357; Carriage Return at the end of *.java file may produce a Parser Error.

RATLC00213636; Missing javadoc @param in the J2EE template (causes Warning in JBuilder).

RATLC00213654; JBuilder Integration: Relationships between the second EJB components may be lost after reverse engineering more than one EJB module.

RATLC00213731; JBuilder Integration: Message-Driven Bean related classes may not get updated in Rose.

RATLC00213772; xxxLocal.java file in JBuilder is not updated when renaming an EJB in Rose with autosync on.

RATLC00229104; Rose J / CM Integration: Help buttons may not work correctly.

RATLC00248528; If using editor other than internal editor (i.e. JBuilder X Editor), attempting to make changes while using auto-sync may not get updated correctly in Rose.

Workaround: Use Rose internal editor.

RATLC00248531; Code generation does not start correctly after creating a class on the Logical view / Main diagram.

Workaround: Double-click the class and code generation will start.

RATLC00248545; File delete warning not accurate and should not occur when attempting to delete unit from JBuilder for a file within a write-protected package.

RATLC00370940; Rose performance can be impacted when reverse engineering several classes with public final constants.

RATLC00371268; Parser error, when reverse engineering the following *.java code:

//--- http-Params
root.addContent(new Element("http-params")
//--- To .
addContent(new Element("To").setAttribute(new Attribute("value",this.from)))
//--- From .
addContent(new Element("From").setAttribute(new Attribute("value",this.to)))

RATLC00371334; Parser error may occur when reading *.java files stored on a UNIX/Linux share.

Possible misinterpretation of End-Of-Line terminator.

RATLC00444408; The following comments may cause a Rose J Parser Error.

Case 1:

public void no2() throws Exception, //comment causes parser error

ClassCastException {
}

Case 2:

public void no3() {


String s1 = "";
String s2
//comment causes parser error
= s1;
}

Known Rational Rose Type Library Defect

RATLC00042127; If you bring up the Import Type Library dialog box by clicking Tools > COM, and you switch to another application and then return to Rose, Rose appears to hang.

In this situation the active Import Type Library dialog box is actually behind the Rose application window.

Workaround: Minimize the other application(s) windows and press Alt+Tab until the Import Type Library dialog box becomes visible again.

Known Version Control Add-In Defect

RATLC00238101; Rose may consume a significant amount of CPU (i.e. 99%), if a Merant PVCS version prior to 7.5.00 is installed.

Workaround: Disable the Version Control Add-In, or do not install the Version Control Add-In when installing Rose.

Known Rational Rose Visual Basic Defect

RATLC00042647; Select project files in Visual Basic's Component Properties Window may not work correctly.

Known Rational Rose Web Modeler Defect

RATLC00238871; Modifications to a web page file may be lost if the updates are made within Rose after reverse engineering and then reverse engineering after making the changes.

Workaround: In this scenario, do not modify the file in Rose.

Known Rational Rose Web Publisher Defects

IC40588; RATLC00447639; Error: contents.cnt access is denied occurs when attempting to publish a model in which the package hierarchy is more than 15 levels deep.

Windows supports fully qualified file name path less than 256 characters. If the package hierarchy exceeds this limitation, it will not be possible to publish the model.

Workaround: Shorten the names or reduce depth of package hierarchy.

IC41457; RATLC00213284; Error occurs when Web Publishing a model which includes many sub-packages.

RATLC00039560; Web Publisher keeps two Internet Explorer windows open.

RATLC00021289; Documentation for objects in activity diagram are not Web Published.

RATLC00213691; Documentation field loses white space when Web Published.

RATLC00463809; Web pages with active content on the local machine will not display by default on Windows XP with SP2 applied with the default configuration.

Attempting to launch a web page with active content from your local workstation may produce a no page display but a message bar appears in the browser displaying the following message:

To help protect your security, Internet Explorer has restricted this file from showing active content that could access your computer. Click here for options....

Clicking the information bar causes a context menu to appear with the following options:

Allow Blocked Content.., What's the Risk?
Also displays Information Bar Help.
Clicking Allow Blocked Content... causes a dialog box titled Security Warning to appear with the message:

Allowing active content such as script and ActiveX controls can be useful, but active content might also harm your computer. Are you sure you want to let this file run active content? Yes. No.

Clicking Yes will display the content.

Problems that affect globalized versions

This section describes problems that affect globalized versions of Rational Rose.

PK16123; RATLC01104647; ja_JP: The following warning may occur when utilizing Rose C++ on Japanese Windows XP SP2, and may be ignored.

"Type <attribute type> is not a well-formed C++ type" occurs on Japanese Windows XP SP2

Workaround: Remove the space between char and [array], while specifying the type of the attribute.

PQ95477; RATLC00730798; ja_JP: "MEM_BAD_POINTER" error may occur upon Installation or exiting Rose.

See MEM_BAD_POINTER Error May Occur When Installing Rose on Windows XP SP2.

RATLC00039665; Korean: Korean character input; slow display for question marks.

If a class name contains a question mark (?), Rose takes longer than expected to display the class name.

Workaround: Turning auto-size off will help alleviate the delay.

RATLC00213460; ja_JP: Petal syntax error occurs when loading a Java model (French Char) in Japanese Rose.

Workaround: Switch system locale to French (or WindowsCPI 252) locale, even using Japanese UI -Rose should be able to handle petal.

RATLC00238854; Korean: Help About - Characters may not display properly in Contact Information window on Korean Windows. The paragraph should read:

Before contacting IBM Rational Software, please visit www.ibm.com/software/rational/support for detailed product and contact information.

RATLC00248121; Simplified Chinese: Text and bitmaps may be overlapped in Rose Data Modeler Forward Engineering dialog box.

RATLC00248122; Simplified Chinese: The Next button and left bitmap overlap final dialog box when using the Forward Engineering wizard.

RATLC00443765; ja_JP: Generated DDL script does not escape DBCS

  1. Create Japanese table/col/view names.
  2. Generate DDL.
  3. Japanese table, column, view names are not escaped. If table name is XXXX, it must be \"XXXX\" when DBCS characters are used in table, column, view or other DB object names.

Workaround: You must turn on "Quoted Identifier" option when using non-ASCII characters for object names.

Problems fixed in this release

This section lists the problems fixed in this release of Rational Rose.

Table 8. Problems fixed in v7.0.0.1 of IBM Rational Rose
Component Problem ID Description
Rose Ada PK21659; RATLC00963242 Rose Ada95 protected objects are declared as 'is separate'.
Rose Ada PK23728; RATLC00986011 Rose Ada may generate invalid syntax for Ada95 attributes.

Rose may not maintain the parentheses in the attribute specification.

Rose Ada RATLC01185354 Ability to generate constructors, destructors and copy constructors as "separate".

To make the Default Constructor separate for all classes, set the newly added property 'SeparateDefaultConstructor' to True (Default : False). To set the value of "SeparateDefaultConstructor":

  1. Select Tools > Options
  2. Select "Ada95" tab
  3. Select "Class" from the "Type:" drop down list
  4. Select "SeparateDefaultConstructor" under Model Properties. The default value is False. Set to True.

To make the Default Copy Constructor separate for all classes, set the newly added property 'SeparateCopyConstructor' to True (Default : False). To set the value of "SeparateCopyConstructor":

  1. Select Tools > Options
  2. Select "Ada95" tab
  3. Select "Class" from the "Type:" drop down list
  4. Select "SeparateCopyConstructor" under Model Properties. The default value is False. Set to True.

To make the Default Destructor separate for all classes, set the newly added property 'SeparateDestructor' to True (Default : False). To set the value of "SeparateDestructor":

  1. Select Tools > Options
  2. Select "Ada95" tab
  3. Select "Class" from the "Type:" drop down list
  4. Select "SeparateDestructor" under Model Properties. The default value is False. Set to True.
Rose ANSI C++ IC48533; RATLC00144253 ImplementationType value may only generated during reverse engineering, every other time.
Rose ANSI C++ IC50242; RATLC00994863 Adding an exception that is not in the model to an operation may block Rose ANSI C++ forward engineering.

Workaround: Choose an exception using the "Select Exception Class" window available by clicking on the "..." button in the Exception tab of the Operation Specification window.

Rose ANSI C++ PK20821; RATLC00144479 Zombie rose.exe process could remain upon exiting Rose after generating code for a class that had an attribute whose type was another class.

This issue occurred as not all COM references were freed.

Rose ANSI C++ PK23574; RATLC00486572 Multiline comments may be deleted from the header file after reverse engineering and then performing a code generation.

The start point to replace/modify the class comment was not correct if the header comment was a block comment. The header comment was ignored only if it was a line comment.

Now, the header comment will be ignored even if it is a block comment.

Rose ANSI C++ RATLC01184832 Rose may exit when attempting to reverse engineer ANSI C++ code.

This could occur due to buffer overflow because of a syntax error in parsing a non-inline destructor definition including template arguments.
Rose C++ IC49062; RATLC00144786 When the InclusionProtectionSymbol is set to AUTOGENERATE, the code that is generated in the header files in the #ifndef & #define statements is incorrect.

Request for fully qualified name for the "InclusionProtectionSymbol" property in Rose C++. The property contains only one attritbue name "AUTO GENERATE".

Now, one more boolean value property has been added. The new property name is "FullyQualifiedInclusionProtectionSymbol". The default value of this property is "False". If it's value is changed to "True" then the InclusionProtectionSymbol value in the header file will contain the fully qualified name of the header file.

For example:

For a class "NewClass" inside a pacakge "NewPacakge"

if FullyQualifiedInclusionProtectionSymbol = "True" then generated code would be:

# ifndef NewPacakge_NewClass_h 1

#define NewPacakge_NewClass

and

if FullyQualifiedInclusionProtectionSymbol = "False" then

# ifndef NewClass_h 1

#define NewClass

Rose C++ PK26617; RATLC490201 Rose may hang when double byte character comments and statements are added in the preserved region.

In this case, the status of generating code "Generating code..." does not end. [Cancel] in the "Code generating status" windows does not work. Rose must be closed from [File] > [Close] menu option or terminated from Task Manager.
Rose C++ PK32265; RATLC00497276 C++ templates used as function parameters may be generated twice during Rose C++ code generation.
Rose C++ RATLC0042340 The DataMemberVisability Property may not update properly upon opening an older Rose model.
Rose CORBA PK32143; RATLC00548563 Unable to reverse engineer CORBA IDL files with comments.

Rose CORBA would stop reverse engineering if a comment was encountered between the parentheses at the beginning of the operation and the first operand or if comments were encountered after the operand, if the operation return type was "factory".
Rose CORBA PK33098; RATLC00498528 When generating CORBA code in Rose, it generates the "typedef" definition in the wrong place.

By declaring the definition in the wrong place, the stub code can not be created from the IDL file. In addition, when using the "typedef" variable it uses the fully qualified name which is not necessary if it is declared correctly.
Rose Core IC47991; RATLC01103945 In some cases, Rose may have difficulty fixing all Duplicate ID's.

Contact Rational Customer Support if you encounter this problem. A tool (ReplaceQuidDlg.exe) which replaces the Duplicate ID's in specifically named files, is available.

Rose Core IC48755; RATLC00963120 Rose may crash upon deleting elements from Sequence Diagram.
Rose Core PK21071; RATLC00484060 Activities lose their reference if containing package is not loaded.

If there are two controlled packages with the same activity name and one of the packages has a reference to the activity of the other package in it's activity diagram, if only this package is loaded, then Rose tries to resolve the reference by name and not by ID and therefore refers to the local activity thereby loosing the original reference.

Now, activities do not lose their reference if the containing package is not loaded
Rose Core PK21352; RATLC00542985 Rose may crash when copying and pasting all elements from one Sequence Diagram to another.
Rose Core PK21654; RATLC00963239 Recreating a link between two objects in a Collaboration Diagram may cause Rose to crash.

This issue was caused as two diagrams were pointing to the same mechanism object.

Now, the links will point to the correct mechanism object when the model is opened in Rose
Rose Core PK22219; RATLC00144685 Problems when creating/modifying DECIMAL(x,y)

The type of an attribute when set to DECIMAL(4,5) is getting set as (4,5),which is not expected. This fix ensures that the type is correctly set to to DECIMAL(4,5)
Rose Core PK31142; RATLC00495540 Rose v7.0 may hang when opening a model saved with a previous version of Rose.

This problem is caused by coordinate and pctDist values that are set too high.

Rose will now check for an abnormal coordinate value, before positioning the label in the view. If a coordinate value has exceeded it's bound, it will be recalculated with reference to the associated segment, with pctDist set to 0.5 and height set to 60 (Default values). A warning will be displayed in the Rose log regarding this issue and you will need to explicitly Save, in order to preserve these changes.

Rose Core RATLC00482465 Duplicate ID message should not be repeated in the Rose log and should indicate specifically related *.cat file(s).

Rose will now output a warning to the log whenever a Duplicate ID is found. The warning will contain the fully qualified name and model/cat file names of the clashing objects.

Rose Core RATLC00962330 A warning message may appear indicating that .NET Framework 1.1 or higher is necessary to install Rose Data Modeler or Web Modeler components, even though .NET Framework 2.0 is already installed.
Rose Core RATLC01100355 Rose may delete all objects with the same name when deleting an object with thatname.

It also formats the object so that if the object has no name Rose names all the objects with no name the same.
Rose Core RATLC01185430 Perfomance enhancement when loading large models in Rose.

Model Loading performance enhanced by ~15% - ~40%.

Rose Core RATLC01186468 IBM JRE not included correctly in the following Rose products:

  • Rose Modeler Edition
  • Rose Professional VisualBasic Edition
  • Rose Professional Ada Edition
  • Rose Professional Data Modeler Edition
  • Rose Professional C++ Edition

Rose Pattern support requires the IBM JRE.

Rose Data Modeler IC48022; RATLC01104146 Primary and Foreign keys are not correctly reverse engineered into Rose from DDL script.
Rose Data Modeler PK22663; RATLC00144766 Identifying/Non-identifying relationship in Rose Data Modeler means the entire primary key must migrate from parent entities to child entities.

When deleting the foreign key from child entity the meaning of relationship is lost. The deletion of the foreign key from the browser is now disabled.

The correct way to remove the foreign key is to delete the corresponding primary key from the parent table. This will automatically delete the foreign key.

Rose Data Modeler RATLC00145533 Disabling the check-box "Generate Fully Qualified Type" causes the removal of the argument's documentation text in Rose
Rose Data Modeler RATLC01184649 Rose Data Modeler may not perform compare and sync correctly on Oracle stored procedures.
Rose Model Integrator PK27045; RATLC00145571 Rose Model Integrator may generate corrupt model files when attempting to merge two Sequence Diagrams if two mechanisms have the same name.
Rose Web Publisher PK21657; RATLC00963241 Rose Web Publisher output using expand "+" is not always viewable in model explorer.

Rose Web Publisher RATLC01186705 HTML models published using Rose Web Publisher in previous Rose versions (Rose 7.0 and earlier) may not display correctly when viewed in Internet Explorer 7 on Windows XP SP2. For example, significant flickering can occur.

To view these models correctly the following files need to be copied to the HTML model's directory:
  1. Copy install_dir\rosewp\files\root.html and install_dir\rosewp\files\frames.html to published model directory.
  2. Copy and rename install_dir\rosewp\files\root.html as published model root file to published model directory. install_dir represents the directory where Rose 7.0.0.1 has been installed. HTML models published with Rose 7.0.0.1 do not need this workaround and should display correctly.
Rose Web Publisher RATLC00145382 Links to elements that exist under an operation from a diagram in another package are not correct.

Contacting IBM Customer Support for Rational software products

If you have questions about installing, using, or maintaining this product, contact IBM Customer Support as follows:

The IBM software support Internet site provides you with self-help resources and electronic problem submission. The IBM Software Support Home page for Rational products can be found at http://www.ibm.com/software/rational/support/.

Voice Support is available to all current contract holders by dialing a telephone number in your country (where available). For specific country phone numbers, go to http://www.ibm.com/planetwide/.

Note:
When you contact IBM Customer Support, please be prepared to supply the following information:

Downloading the IBM Support Assistant

The IBM Support Assistant (ISA) is a locally installed serviceability workbench that makes it both easier and simpler to resolve software product problems. ISA is a free, stand-alone application that you download from IBM and install on any number of machines. It runs on AIX(R), (RedHat Enterprise Linux(R) AS), HP-UX, Solaris, and Windows platforms.

ISA includes these features:

For more information about ISA, including instructions for downloading and installing ISA and product plug-ins, go to the ISA Software Support page.

IBM Support Assistant: http://www.ibm.com/software/support/isa/

Appendix. Notices

This information was developed for products and services offered in various countries throughout the world. IBM may not offer the products, services, or features discussed in this document in every country. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service.

IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not grant you any license to these patents. You can send license inquiries, in writing, to:

IBM Director of Licensing 
IBM Corporation North Castle Drive 
Armonk, NY 10504-1785 
U.S.A.

For license inquiries regarding double-byte (DBCS) information, contact the IBM Intellectual Property Department in your country or send inquiries, in writing, to:

IBM World Trade Asia Corporation Licensing 
2-31 Roppongi 3-chome, Minato-ku 
Tokyo 106, Japan

The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you.

This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice.

Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product and use of those Web sites is at your own risk.

IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.

Licensees of this program who wish to have information about it for the purpose of enabling: (i) the exchange of information between independently created programs and other programs (including this one) and (ii) the mutual use of the information which has been exchanged, should contact:

IBM Corporation 
Department BCFB
20 Maguire Road
Lexington, MA 02421 
U.S.A. 

Such information may be available, subject to appropriate terms and conditions, including in some cases, payment of a fee.

The licensed program described in this document and all licensed material available for it are provided by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement or any equivalent agreement between us.

Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurement may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment.

Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.

USE OF SAMPLES CONTAINED IN THIS INFORMATION:

This information may contain sample application programs in source language, which illustrates programming techniques on various operating platforms.

Each copy or any portion of these sample programs or any derivative work, must include a copyright notice as follows:

(c) (your company name) (year). Portions of this code are derived from IBM Corp. Sample Programs. (c) Copyright IBM Corp. _enter the year or years_. All rights reserved.

ADDITIONAL NOTICES:

Additional legal notices may be included with the license agreement accompanying the licensed program described in this document.

TRADEMARKS:

AIX, ClearCase(R), ClearCase Attache(R), ClearCase MultiSite(R), ClearDDTS(R), ClearGuide(R), ClearQuest(R), DB2, DB2 Universal Database, DDTS(R), Domino(R), IBM, Lotus(R) Notes, MVS(TM), Notes, OS/390(R), Passport Advantage(R), ProjectConsole(TM) Purify(R), Rational, Rational Rose(R), Rational Suite(R), Rational Unified Process(R), RequisitePro(R), RUP, S/390(R), SoDA(R), SP1, SP2, Team Unifying Platform(TM), WebSphere(R), XDE(TM), and z/OS(R) are trademarks of International Business Machines Corporation in the United States, other countries, or both.

Java and all Java-based trademarks and logos are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.

UNIX(R) is a registered trademark of The Open Group in the United States and other countries.

Linux is a trademark of Linus Torvalds in the United States, other countries, or both.

Other company, product or service names may be trademarks or service marks of others.