------------------------------------------------------------ Telelogic Tau SDL Suite - CM Synergy Integration Telelogic AB 2001 ------------------------------------------------------------ Please set word wrap on in your text viewer. We strongly recommend reviewing this entire document for information not available in the user manuals. This document applies to Win95/98/NT/2000 and Unix integrations. All platform specific details of these integrations are noted below. Table of Contents ================= 1 Introduction 2 Installing the CM Synergy Dynamic Menu 3 CM Synergy Dynamic Menu Commands 4 Comparing and merging SDL diagram file versions using CM Synergy Appendix 1 Introduction ============== This README file explains how to install and use the CM Synergy integration for Telelogic Tau SDL suite. In this directory you will find the following files: README -- the file you are reading. cmsynergy.ini -- a dynamic menu to append to org-menus.ini The dynamic menu looks the same on both Win95/98/2000/NT and Unix. 2 Installing the CM Synergy Dynamic Menu ======================================= Please add the cmsynergy.ini to your org-menus.ini file. The SDL suite will search for the org-menus.ini first in the directory where the SDL suite was started, then in a directory pointed to by the HOME environment variable and finally in the directory in which the SDL suite was installed. If you do not already have a org-menus.ini file, the cmsynergy.ini file can serve as one. Just copy cmsynergy.ini to either your HOME directory or to where you have the SDL suite installed and rename it to "org-menus.ini". For more information on dynamic menus, please see "Defining Menus in the SDL Suite" in chapter1, "User Interface and Basic Operations", of the User's Manual. 3 CM Synergy Dynamic Menu Commands ======================================================= Theses are the preffered CCM menu commands, they emphasise Task Based CM and focus on the day-to-day work of a developer. 3.1 Refresh ~~~~~~~~~~~ Refreshes the Organizer Window. This updates the file permissions shown in the Organizer Window to match the current status of the files. No CM Synergy command is involved in this command. 3.2 Start CM Synergy ~~~~~~~~~~~~~~~~~~~~ Starts a CM Synergy client session. The CM Synergy start up dialog is used. 3.3 Create Task ~~~~~~~~~~~~~~~~ Brings up the CM Synergy Create Task dialog, that can be used to create a new task object. 3.4 Set Default Task ~~~~~~~~~~~~~~~~~~~~~ Brings up the CM Synergy Select Task dialog, that can be used to select the default task. 3.5 Update ~~~~~~~~~~ Brings up the CM Synergy reconfigure dialog for the selected directory. project reconfigures must be done using the CM Synergy client to select the required project. 3.6 Check Out Object ~~~~~~~~~~~~~~~~~~~~ Checks out the selected object file. The CM Synergy Check out dialog is used. 3.7 Check Out Control Unit file ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Check out the control unit file for the selected object. The CM Synergy Check out dialog is used. 3.8 Check Out Link file ~~~~~~~~~~~~~~~~~~~~~~~ Checks out the link file for the current SDL System. The CM Synergy Check out dialog is used. 3.9 Recursive Check Out ~~~~~~~~~~~~~~~~~~~~~~~ Checks out a tree (or subtree) of object files, starting at the selected object. If the SDL Suite System file icon is the selected object then all files in the Organizer Window are checked out. The CM Synergy Check Out dialog is used. 3.10 UnCheckout Object ~~~~~~~~~~~~~~~~~~~~~~ An "undo" operation for an accidental checkout, uses the CM Synergy "unuse, delete and replace" command. 3.11 Task Check In ~~~~~~~~~~~~~~~~~~ Checks in the default task and all objects associated with it. The CM Synergy Check in dialog is used. 3.12 Snapshot ~~~~~~~~~~~~~ Creates a checkpoint of the selected file (a private, read-only version). Personal checkpoints may be purged using the Collapse command. 3.13 Collapse ~~~~~~~~~~~~~ "Collapses" the object history to remove any personal checkpoint versions. 3.14 reconcile ~~~~~~~~~~~~~~~~ Checks the CM Synergy work-area for any changes that may have been made whilst CM Synergy was offline, you are propmted to accept, reject or merge any changes. The CM Synergy Reconcile dialog is used. 3.15 Display Session Messages ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Displays CM Synergy GUI session messages by popping up the CM Synergy Message View dialog. 3.16 Close GUI Session ~~~~~~~~~~~~~~~~~~~~~~ Ends the CM Synergy session. 3.17 Show Object History ~~~~~~~~~~~~~~~~~~~~~~~~ Brings up a CM Synergy History View window for the selected object. 3.18 Show Object Properties ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Pops up the CM Synergy Properties dialog for the selected object. 3.19 Show Link File History ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Brings up a CM Synergy History View window for the link file. 3.20 Create Nonexisting Object ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Creates a CM Synergy element for the current object. The CM Synergy Create Dialog is used. 3.21 Unuse Existing Object ~~~~~~~~~~~~~~~~~~~~~~~~~~ Unuses the selected object file. The CM Synergy Unuse Dialog is used. 4 Comparing and merging SDL diagram file versions using CM Synergy ==================================================================== By following the instructions below, you can set up CM Synergy to use SDL Suite for comparing and merging two SDL diagram file versions. 4.1 Preparing CM Synergy ~~~~~~~~~~~~~~~~~~~~~~~~~~ * Start CM Synergy. * Select role ccm_admin or type_developer * Bring up the Admin>Type Definition dialog to define an SDL file type. Enter the following values: Type Name: SDL Description: Binary file Super Type: binary Initial Status: working Require Task at: Verify Comment Existence on Promote / Check In: Off Allow Update during Model Install: Off Associate with a File in the File System: On Can be a Product File: Off Icon Color / Fil: binary.bmp File Suffix: .ssy Pop up the Type>Modify File Operations dialog, and enter the following values: (If necessary, replace sdt below with the command you use to start SDL Suite. If the sdt script is not in your PATH, you should specify a full path.) Type Name: SDL Description: Binary file Command Templates: Graphical User Interface: Edit: sdt %file1 View: sdt %file1 Compare: sdt -fg -grdiff %file1 %file2 Merge: sdt -fg -grdiff %file1 %file2 -mergeto %outfile Command line interface: Edit: sdt %file1 View: sdt %file1 Compare: sdt -fg -grdiff %file1 %file2 Merge: sdt -fg -grdiff %file1 %file2 -mergeto %outfile Print: Compare Attribute: source Click "OK" Click "Update Type" Now to define a project file type (*.sdt) enter the following values: Type Name: SDT Description: SDT project file Super Type: ascii Initial Status: working Require Task at: Verify Comment Existence on Promote / Check In: Off Allow Update during Model Install: Off Associate with a File in the File System: On Can be a Product File: Off Icon Color / Fil: ascii.bmp File Suffix: .sdt Pop up the Type>Modify File Operations dialog, and enter the following values: (If necessary, replace sdt below with the command you use to start SDL Suite. If the sdt script is not in your PATH, you should specify a full path.) Type Name: SDT Description: SDT project file Command Templates: Graphical User Interface: Edit: sdt %file1 View: sdt %file1 Compare: %FAIL Merge: %FAIL Command line interface: Edit: sdt %file1 View: sdt %file1 Compare: %FAIL Merge: %FAIL Print: Compare Attribute: source Click "OK" Click "Update Type" Close the dialog. (File>Close) Now we have set up CM Synergy for SDL system diagram and SDT project file. * To manage all SDL diagram types: - Select Tools>Migrate>Options>Set>Edit to open up the migrate rules file (migrate.rul) in a text editor. - After the entry for your new type which should look something like : MAP_FILE_TO_TYPE .*\.[Ss][Ss][Yy]$ SDL # Created automatically ... MAP_FILE_TO_TYPE .*\.[Ss][Dd][Tt]$ SDT # Created automatically ... add the following lines: MAP_FILE_TO_TYPE .*\.[Ss][Bb][Kk]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Pp][Rr]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Pp][Dd]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Uu][Nn]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Oo][Pp]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Ss][Tt]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Bb][Tt]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Ss][Uu]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Pp][Tt]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Vv][Tt]$ SDL MAP_FILE_TO_TYPE .*\.[Ss][Ss][Vv]$ SDL MAP_FILE_TO_TYPE .*\.[Mm][Ss][Cc]$ SDL and save the file. Be very careful with the syntax in this file as it is quite sensitive to syntax errors. Close the open dialogs. 4.2 Performing a compare or merge ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ After having prepared CM Synergy, you should be able to invoke a compare or merge operation of two SDL diagram file versions in the same way as compare or merge of two text file versions is invoked. Note that at the time of writing, there is a bug in CM Synergy that makes it impossible to simultaneously have different merge commands for different file types. For details, see the appendix last in this file. When comparing or merging SDL diagrams in this way, SDL Suite and an SDL editor is started. The SDL editor is loaded with the two diagram versions to compare and a compare or merge operation is invoked. When closing down the compare or merge operation in a normal way, all SDL Suite tools are closed down and you are back in CM Synergy. Appendix ~~~~~~~~ The following information was received from Continuus support Fri, 26 Nov 1999. (Note that even though Continuus support talks about both merge and compare, it was only merge that failed when we tried.) M8031 Type-specific merge/compare commands don't apply because of ccm.ini options Problem Description: Despite having a 'Compare' and 'Merge' field in the Type Definition - File Operations dialog, there is no way to specify a type specific compare or merge tool. Even by changing the text in these fields, the product will default to the contents of the 'compare_cmd' setting in ccm.ini. End Problem Description. The only way to specify a non-default merge command in the .ccm.ini file in a user's home directory under the options section. You would have to add something like: [options] merge_cmd= e.g. [options] merge_cmd=/usr/local/ccm45sp2/merge/bin/mergeahead %file1 %file1 %outfile You would need to stop all sessions before editing this file. This solution has the disadvantage that it is global (i.e. it will apply to all file types). One way of working with this is to have a special .ccm.ini eg mrgccm.ini for merging specific types and which you can specify on startup using the -f switch and using the CCM_INI_FILE environment variable (if you have installed Service Pack 2). e.g. ccm start -f ~/mrgccm.ini specifies a different .ini file. You must use a full path name for the alternative initialization file.