This tool mentor assists in migrating and establishing a RUP2002 plug-in in the RUP2003 toolset.
The sequence of steps outlined here of migrating a RUP2002 plug-in's process model and content library is crucial, and is irreversible. It is advised that backup copies are created of the input Rose process model and content library before commencing with these steps.
This tool mentor relates to the following RUP information:
The following steps are performed in this tool mentor:
In this step, the migration utility installed together with RUP Modeler is enabled. The migration utility is provided as an Add-in to Rational XDE (XDE) and is enabled just like any other add-in.
Start XDE. Select Window --> Preferences to bring up the Preferences dialog box. In the tree on the lefthand side, select Rational XDE-->Add-Ins. Press the Add-In Manager button to bring up the list of Add-ins. The Add-ins are grouped by Packages. Select the XDE package to display a list of available Add-ins for the XDE product.
Select RUP Modeler Migrator in the list.
Confirm the activation of the Add-in by pressing OK. Close the dialog box.
In this step, the Rose process model is imported into XDE workspace and its technical migration into an XDE model is performed.
NOTE: If your Rose process model kept its process model package in a separately controlled unit, which is persisted in a .cat file, this unit must be uncontrolled before proceeding with this step. This is done using Rose, selecting Units --> uncontrol unit on the process model package.
Start XDE and create a new project, give it the same name as the plug-in being migrated. Select Basic modeling project as type of project.
Import the <plugin_name>.mdl file into the new project. In the selection dialog, select File system and browse to the file. This brings the model file into XDE's Navigator pane, showing as <plugin_name>.mdl. (If XDE's Navigator is not showing in your workspace, please refer to XDE's on-line documentation on 'Perspectives' and 'Views' on how to enable it)
Open the model to make it visible in XDE's Model Explorer. (If XDE's Model Explorer is not showing in your workspace, please refer to XDE's on-line documentation on 'Perspectives' and 'Views' on how to enable it)
Select the model in Model Explorer (select the outermost package showing something like "(projectname) <plugin_name>*")
Select File --> Save <plugin_name>.mdl As ... and enter <plugin_name>.mdx in the file selection dialog. (Make sure that you specify the '.mdx' file extension) Designate the directory for the project, as established by XDE. (In Navigator, us right-click properties to determine at which location the project is stored) Alternatively, selecting Close of the project in the Model Explorer will prompt to save the project, with this location as default)
This step re-establishes the associations from the plug-in process model to the RUP process model. (The same steps apply to migration of plug-in process models that extends other plug-in process models)
Open the RUP (XDE) process model in XDE's Model Explorer.
Open the plug-in's XDE model in XDE's Model Explorer (and other base process if this plug-in extends another plug-in)
In the plug-in's overview diagram (or in some other diagram, which one is not important) create a dependency from the plug-in process model's package and the RUP's (or other base) process model, now residing in its separate XDE model. NOTE: Any existing dependency to RUP process model shall be removed, since this newly established dependency replaces that one.
In the plug-in's overview diagram (or in some other diagram, which one is not important) create a dependency from the plug-in process model's package and the RUP2003's (or other base) process model, now residing in its separate XDE model.
NOTE: Any existing dependency to the old RUP process model shall be removed.
In this step, the content library files are updated to contain the new meta-data format recognized by the RUP2003 toolset.
Copy the plug-in content library to its inteded RUP2003 location. (Make sure to keep a copy of the RUP2002 source content library as backup)In Model Explorer select the plug-in's <<process model>> package.
On the plug-in process model, select Associate Content Library from its context menu and enter the location of the content library in its file selection dialog.
In the (right-click) context menu, select RUP Modeler --> Migrate Content Library. (If Migrate Content Library is not showing, the RUP Modeler Migrator utility addin is not enabled. Please refer to step 1 above on how to enable it) This traverses through all files in associated to the elements in the designated process model and updates their meta-data information.
This step migrates the model information in the plug-in process model to RUP2003 standard.
Update stereotypes in the plug-in process model by selecting RUP Modeler --> Update stereotypes in this model from its context menu. This updates existing stereotypes to their new format.
Delete all occurences of <<tree node>> stereotypes. (Note: remove only the stereotype designation of those packages, not the packages themselves): Select a <<tree node>> package and delete the entry in its Stereotype field in the Properties view.
Save the plug-in process model.
This step migrates the file associations manifested as external file links in the plug-in process model into a layout and erases them from the process model.
Note that this operation is irreversible, so keep a backup copy of the model file until you have verified that the created layout absorbed all file associations correctly.
If not already done, associate the RUP process model to its content library by using Associate Content Library from its context menu. (and any intermediate base process model, if the process model being migrated extends another plug-in process model), to their respective content libraries)
On the process model being migrated, select RUP Modeler --> Migrate File Associations into new Layout from its context menu. This starts the creation of the new layout, which takes a few moments to complete.
When completed, RUP Organizer is opened on the newly created layout. and the migrated result can be inspected using its layout browsing features.
CAUTION: The migration utility erases all successfully migrated file associations from the process model. Only save the process model at this point after inspecting that the result layout is complete and correct.
Inspect the created layout to see that it was established correctly. Disregard any imperfections of the organization of the layout -it will be easily re-organized using the functions of RUP Organizer once you have completed the migration steps.
Inspect the process model to verify that all file associations were correctly migrated. Folders and suppressed file assocations are not processed, so these still remain in the model.
If your plug-in still contains file associations that you would haev expected to be migrated, you have two options: quit from the current migration effort but do not save the process model nor the layout. Start over again and corrent the problem that caused files to not migrate, if you have located to problem; or, if a small number of remaining files, you can establish those in the layout manually using the functions of RUP Organizer.
When you are satisifed with the migrated result:
In RUP Organizer, select the Save pushbutton, or select File --> Layout --> Save. This saves the layout in its predetermined location inside its content library.
Save the plug-in process model.
The RUP2003 process model format is different than its predecessor. In particular, RUP2003 uses a RUP Modeler profile to specifiy its stereotypes and added properties. A similar but different set of stereotypes designates the various process model elements, and RUP modeler manifests modeling constructs using 'tagged value sets' (TVS) associated to the different model elements.
On the plug-in process model, select Populate TVS values in RUP Modeler profile to migrate the process model to utilizing the profile.
Once the XDE process model has been established in its new format, and its layout has been established in the content library, the work to adapt the plug-in's process model to the re-factored RUP process model can commence. In doing this you should consider the following:
Neither the migrated process model nor the created layout carry any information about process components. Process components are vital in process models, and they are also required, at least at the process model's first level of decomposition, for a process model to be considered valid. Unfortunately there is no automation support to migrate a component model into the new process model format.
Using the components you had in the RUP2002 Component Model as guidance, establish the same or similar component structure in the <<rupProcessModel>> package. Use the features of RUP Organizer to re-synchronize the layout with updates of the process model as this work proceeds.
TBD