lab 2: editing a rhapsody model in rmm - ibm · 2019-11-11 · lab 2: editing a rhapsody model in...
Post on 13-Mar-2020
3 Views
Preview:
TRANSCRIPT
© Copyright IBM Corp. 2018 2 - 1
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
Lab 2: Editing a Rhapsody Model in RMM
Objectives
After completing this lab, you will be able to:
► Create an RTC repository workspace and local sandbox
► Load a Rhapsody model from RMM into your local sandbox
► Modify the model, link a work item to the change set and deliver the change set to a stream
Scenario
In general, when teams are working in parallel, there are two approaches:
Optimistic: Teams work concurrently on the model in their own workspaces, without explicitly locking resources.
Whilst this is the most flexible solution, when changes are delivered, there is the potential for conflict if two or more
teams have modified the same artifact – in which case a merge is required.
Pessimistic: Before editing a part of the model, the team locks that model element – preventing other teams from
modifying it. Whilst this is a simpler solution (a merge is never* required) – it is also less flexible than the
optimistic model. Making sure that the model is configured at the lowest level of granularity (‘everything is a unit”)
helps mitigate this.
*When an element is locked in Rhapsody – the integration places a lock on that same element in the team stream. If
another team tries to lock that same element – RTC will check it and declare that it is already locked. However, if
the other team decided to edit the file without locking it (terribly bad practice if the decision has been made to work
pessimistically) then there is a chance of a conflict. RTC is not checking that stream in real time so there is a small
chance that another team could modify a locked element before their RTC client has realized the element is locked.
In this case, a merge would be required.
Rational Team Concert may be configured to ‘auto-lock’ elements by declaring specific file types to be
automatically read-only. In that case engineers must unlock units before working on them. This is outside the scope
of this workshop however.
In this Lab, you will start by setting up the Rational Team Concert client to connect to the RMM repository on the
Jazz Team Server as Pete. You will create a repository workspace and a local sandbox for Pete. You will then load a
model from RMM into Pete’s sandbox. You will then try out the pessimistic approach by locking a model element
as Pete and seeing the results as Dan. You will not make any changes to the locked element however since the
delivery of changes is the same whether you are working optimistically or pessimistically – the only real difference
is the potential for a conflict.
You will then create a new task in CCM for the sample user Pete to modify the model. From here on you will work
optimistically. You will work as Pete, modifying the model and associating the changes with the task created earlier.
You will publish Pete’s changes back to the team Stream. Finally, you will switch to Dan’s workspace and accept
Pete’s changes – updating Dan’s version of the model. Note that in this lab there is no conflict – conflict resolution
will be handled in Lab 4.
Pete’s Activity:
Rhapsody Model Manager Tech Jam
2 - 2 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
Task 1: Create a Repository Workspace for Pete
In this task, you will configure Pete’s workspace (the workspace folder has already been created for you but you will
import the preferences you created earlier in Dan’s workspace). You will start by creating a new repository
connection to the architecture management area on Jazz. You will then connect to the Sample Models project and
create a new repository workspace on the server for Pete. That repository workspace will flow into the default
stream in RMM (‘Sample Models Stream’). You will then load the only component in that stream (Sample Models
Default Component) into your local workspace (that is your sandbox).
1. Open Pete’s Workspace:
a. Switch to the Rhapsody client
b. From the Rhapsody menu, select File Close
c. Switch to the RTC Client
d. From the menu, select File Switch Workspace C:\Workspaces\pete
TIP: Rational Team Concert will close and reload. The list of workspaces that appear in the switch menu can be
configured in RTC preferences (Window Preferences) then General Startup and Shutdown
Workspaces
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 3
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
2. Create a Repository Connection:
a. Close the Welcome page if it appears
b. In the sidebar, click the Create a Repository Connection link:
c. In the URI field, type https://ibmjazz:9443/am
d. In the Name field, type RMM
e. In the User ID field, type pete
f. In the Password field, type pete
g. Click Finish
h. In any Repository Connection Certificate Problems dialogs (there may be several – or none), select
Accept this certificate permanently and click OK:
Rhapsody Model Manager Tech Jam
2 - 4 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
i. If a Secure Storage dialog appears, click No:
3. Connect to the Sample Models Project Area:
a. Right-click the pete@RMM repository connection and select Manage Connected Project Areas:
b. Select Sample Models:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 5
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
c. Click Finish
4. Create a Repository Workspace:
a. Expand the Sample Models project area:
b. Expand the Source Control section
c. Expand the All Streams section
d. Right-click the Sample Models Stream and select New Repository Workspace:
e. In the Repository Workspace Name field, add Pete to the end of the current text:
Rhapsody Model Manager Tech Jam
2 - 6 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
f. Click Next
g. Select Use current repository:
h. Click Next
i. In the Read Access Permission window, select Project Area:
TIP: Setting the visibility to Project Area will allow another user to change their flow target to this workspace –
effectively allowing collaboration between users without / before publishing those changes into a stream.
j. Click Next
k. In the Components to Add window, select the Sample Models Default Component:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 7
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
l. Click Finish
m. In the Load Repository Workspace window, select Browse the components to select the folders to be
loaded:
n. Click Next
o. In the Repository folders to load window, select Sample Models Default Component:
TIP: Make sure this has a tick in it - not a solid fill. If this box is not ticked then a folder will not be created for
the component and your sandbox will be out of sync with the team. This is easily corrected however by
unloading the repository and then reloading it.
p. Expand the Advanced Options section
q. Select Load component files into sandbox subfolder
r. Select Load the selected folders but do not create Eclipse projects:
Rhapsody Model Manager Tech Jam
2 - 8 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
s. Click Finish
t. If you receive a confirmation dialog, click OK:
5. Confirm Folder Creation:
a. Open Windows Explorer and navigate to C:\Workspaces\pete
b. Confirm that on the filesystem Pete’s workspace folder contains new folders - one for the stream and
another for the component – and the SysML Handset Rhapsody project is also present
6. Import Preferences:
a. Switch back to the RTC client
b. From the menu, select File Import
c. In the filter box, type pref
d. Select the General Preferences entry in the tree:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 9
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
e. Click Next
f. Click Browse:
g. In the left-hand panel, select Desktop
h. Select the RMMPrefs.epf file as shown below:
i. Click Open
j. Click Finish:
Rhapsody Model Manager Tech Jam
2 - 10 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
Task 2: Work Pessimistically by Locking a Unit
In this task, you will lock a Unit in the Rhapsody model as Pete and then switch to playing the role of Dan to
observe the changes. Note that in this task you will not actually make any changes since the process of delivering
those changes is the same whether you are working optimistically or pessimistically. The only real difference is that
in optimistic mode there is a chance of a conflict.
1. Lock a Unit:
a. Switch to the Rhapsody client
b. From the menu, select File Open
c. Navigate to C:\Workspaces\pete\Sample Models Stream Workspace Pete\Sample Models Default
Component\SysMLHandset and double-click the SysMLHandset.rpyx file
d. In the Rhapsody browser, expand Packages
e. Right-click the Analysis package and select Rational Team Concert Lock:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 11
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
f. Note that the Analysis package now has a blue lock icon indicating that it is locked by ‘you’:
2. Switch to Dan:
a. From the Rhapsody menu, select File Close
b. Switch to the RTC Client
c. From the menu, select File Switch Workspace C:\Workspaces\dan
TIP: Rational Team Concert will close and reload.
d. Switch back to the Rhapsody client
e. From the menu, select File Open
f. Navigate to C:\Workspaces\dan\Sample Models Stream Workspace Dan\Sample Models Default
Component\SysMLHandset and double-click the SysMLHandset.rpyx file
g. In the browser, expand Packages
h. Note that the Analysis package has an orange lock symbol indicating the unit is locked by someone else:
Rhapsody Model Manager Tech Jam
2 - 12 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
TIP: If you open the model before RTC is loaded then it may not immediately see the change. You can wait until
it refreshes of course – or you can right click the project and select Rational Team Concert Refresh RTC
Status
3. Find Out Who Has Locked the Element:
a. Right-click the Analysis package and select Rational Team Concert Locate in Repository Files:
b. RTC comes to the foreground and highlights the unit in the Repository Files tab:
4. Locate a locked file by browsing:
TIP: In daily use, we would expect Pete to deliver his changes and unlock the units – however it is possible to
force-unlock a unit if you are an Administrator (useful if Pete goes on vacation leaving locked elements
behind !) This may be done in the RTC client or in RMM – this step demonstrates how to force-unlock
using the RMM web client.
b. Open a web browser and navigate to the AM area by entering the following URL or by using the
bookmark: https://ibmjazz:9443/am/web
c. Open the Sample Models project
d. In the menu bar, click Source Control Streams:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 13
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
e. Click Sample Models Stream:
f. Click Sample Models Default Component:
g. Select the Repository Files tab:
h. Click the SysMLHandset folder:
Rhapsody Model Manager Tech Jam
2 - 14 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
i. Click the SysMLHandset_rpy folder:
j. Note that the Analysis.sbsx file has a lock symbol (and the hover says its locked by Pete)
5. Locate a locked file by search:
a. From the menu, select Source Control Advanced Search:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 15
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
b. In the Search For field, select Locks
c. In the Search By field, type Pete into the Owner field (and select Pete when his name pops up)
d. Click Search
e. Click the Analysis.sbsx file
f. In the toolbar on the right, click the unlock ( ) button:
Rhapsody Model Manager Tech Jam
2 - 16 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
g. Click OK:
TIP: Units may be unlocked by the current owner – or by an Administrator.
6. Refresh RTC:
a. Switch back to RTC
b. Note that the element still appears locked in the Repository files:
c. Click the Refresh button:
d. Note the unit is no longer locked:
7. Observe status in Rhapsody:
a. Switch back to Rhapsody
b. Note the Analysis package is now once again unlocked and in-sync:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 17
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
Task 3: Connect to the Planning Project
In this task, you will add an additional connection in the RTC Client to the planning area such that you can see any
work items assigned to you (as Pete). You will then run a query to see Pete’s work items and configure the My
Work tab to show the same. Finally, you will accept the work items assigned to you and set one as the current work
item.
1. Switch to Pete’s Workspace:
a. From the menu select File Close
b. Switch to the RTC Client
c. From the menu, select File Switch Workspace C:/Workspaces/pete
2. Observe My Work:
a. Click the My Work tab in the sidebar:
b. Note that it shows no work
TIP: This is because the client can only see the Sample Models AM project – it cannot yet see the RMM
Planning CCM project
3. Create a Repository Connection for CCM:
a. Click the Team Artifacts tab in the sidebar:
Rhapsody Model Manager Tech Jam
2 - 18 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
b. Right-click the Repository Connections category and select New Jazz Repository Connection:
c. In the URI field, type https://ibmjazz:9443/ccm
d. In the Name field, type CCM
e. In the User ID field, type pete
f. In the Password field, type pete
g. Click Finish
4. Connect to the RMM Planning Project Area:
a. Right-click the pete@CCM repository connection and select Manage Connected Project Areas:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 19
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
b. Select RMM Planning:
c. Click Finish
5. Run Work Items Query:
a. Click the Work Items tab at the bottom of the user interface
b. Click Open assigned to me (RMM Planning):
Rhapsody Model Manager Tech Jam
2 - 20 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
c. Note the work items:
6. Configure My Work View:
a. Click the My Work tab in the sidebar:
b. Click Select a Project Area:
c. Select RMM Planning:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 21
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
d. Click OK
e. Note the new work items in the Inbox:
7. Accept Work:
a. Click accept all work:
b. Click the Future Work tab at the bottom of the panel to expand it
c. Note that the work items have move into the Future Work section:
Rhapsody Model Manager Tech Jam
2 - 22 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
8. Set the Current Work Item:
a. Right-click the Add Data Connection Use Case work item and select Set as Current Work Item:
b. The current work item is indicated with a blue arrow in the Work Items panel:
TIP: RTC will now associate any changes you make with this work item automatically.
Task 4: Open and Modify a Rhapsody Model
In this task, you will open the SysML Handset model from Pete’s workspace – the model that was pulled into Pete’s
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 23
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
workspace in the previous Task. Note that unlike Design Manager – you do not have to worry about logging into or
out of the Jazz Team Server from the Rhapsody client, instead you can simply open the model from the appropriate
workspace and let the RTC Client handle the connection. You will then edit the model – implementing the changes
required by the Current Work Item. Lastly you will deliver the changes back to the team Stream.
1. Open a Rhapsody Model:
a. Switch back to the Rhapsody client
b. From the menu, select File Open
c. Navigate to C:/Workspaces/pete/Sample Models Stream Workspace Pete/Sample Models Default
Component/SysMLHandset/
d. Double-click the SysMLHandset.rpyx file:
e. Note that the model is under RMM control and is currently in-sync:
2. Disable Auto-Deliver:
a. Right-click the root of the project browser and select Features
b. Select the Properties tab
c. Set the UnitAutomaticOperationOnSave property to CheckIn:
Rhapsody Model Manager Tech Jam
2 - 24 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
d. Click OK
e. Save the model
f. Note that the project root is now part of an outgoing changeset:
g. Right-click the root of the browser and select Features.
h. Select the Properties tab
i. Note that the property AssociateWorkItemOnCheckIn is set to CurrentWorkItem:
3. Observe the changeset:
a. Right-click the root of the browser and select Rational Team Concert Locate in Pending Changes
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 25
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
b. Note that the new changeset has been added automatically associated with the current work item:
TIP: Changesets may also be associated with a work item through the RTC menu – or from the Rhapsody
browser (right-click any changed unit and select Rational Team Concert Associate Change Request:
TIP:
TIP: Using this menu adds an association between the changeset (that is all changed units) and the work item. If
the changeset already has an association – it will now have more than one association.
4. Implement the Work Item:
a. Switch back to the Rhapsody client
b. Expand the browser tree to SysMLHandset Packages Analysis Use Case Diagrams
c. Double-click the Functional Overview diagram to open it:
Rhapsody Model Manager Tech Jam
2 - 26 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
d. Add a new Use Case Make Data Connection and add an Association to the Network Actor as shown
below:
e. In the Browser, expand the Use Cases category and note that the new Use Case has an icon indicating a
new file:
TIP: This is because the properties in this project have been set such that any new elements become units (that is
new files). In RMM having all elements become units is best practice as the RTC integration allows a much
finer level of control and works well with the concept of fined grained components. Note that currently the
other Use Cases are not units – changes to those will be reflected in the parent unit (you will see this later)
f. From the menu, select FileSave
g. Note that the changed elements are indicated with the outgoing change icon:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 27
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
h. Switch to the RTC client
i. Note that the new changes have been added to the current change set:
j. Note there are changed files and a new one for the new Use Case:
5. Deliver the Changes:
a. Right-click the outgoing change set and select Deliver
Task 5: Deliver Changes from Rhapsody
In this task you will see how you can work on the model in Rhapsody – associating work items and delivering
changes without the need to switch to the Eclipse client. You will first remove the ‘current’ work item assignment.
Rhapsody Model Manager Tech Jam
2 - 28 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
1. Remove the Current Work Item Assignment:
a. Select the Work Items tab
b. Note that the Add Data Connection Use Case is still the current work item:
c. Right-click the Add Data Connection Use Case and select Remove as Current Work:
2. Add an Actor:
a. Switch to the Rhapsody client
b. On the Use Case Diagram, add a new Actor – named Operator and connect it to the Make Data
Connection Use Case as shown below:
c. Save the model
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 29
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
3. Associate the changes with a work item:
a. In the Browser, note the changed units:
b. Right-click the Analysis package and select Rational Team Concert Associate Change Request:
Rhapsody Model Manager Tech Jam
2 - 30 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
TIP: You can right-click on any changed unit – the menu option will associate all changed units with the change
request.
c. If you receive a security warning, click Yes:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 31
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
d. Login as pete/pete:
e. In the Search field, type use
f. Select the Add Data Connection Use Case task as shown below:
Rhapsody Model Manager Tech Jam
2 - 32 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
g. Click OK
4. Deliver the Changes:
a. Right-click the Analysis package and select Rational Team Concert Deliver
b. Note that the model is back in sync
Task 6: Accept Pete’s Changes into Dan’s Workspace
In this task, you will switch to Dan’s workspace and accept the changes made by Pete to the Rhapsody SysML
Handset model. Note that in this simple case there are no conflicts since Dan has not done any more work on the
model in the meantime. Later you will see how conflicts may be resolved when Dan continues to work and changes
the same elements as Pete.
1. Switch to Dan’s Workspace:
a. From the menu, select File Close
b. Switch back to RTC
c. In RTC, select File Switch Workspace C:\Workspaces\dan
TIP: RTC closes and re-opens
d. Select the Pending Changes tab
e. Expand the tree and note that there is are Incoming change sets:
Lab 2: Editing a Rhapsody Model in RMM
© Copyright IBM Corp. 2018 2 - 33
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
2. Open Dan’s Rhapsody Model:
a. In Rhapsody, select File Open
b. Browse to C:/Workspaces/dan/Sample Models Stream Workspace Dan/Sample Models Default
Component/SysMLHandset
c. Double-click the SysMLHandset.rpyx file
d. Expand the Packages category in the browser and note that changed elements are indicated with an
incoming change icon:
TIP: New elements do not appear directly – instead this is shown as a change to the owner of the new element.
This is of course also true for changed elements that are not themselves units (that is files)
3. Accept the changes:
a. Switch back to the RTC client
b. Right-click the Incoming folder and select Accept:
Rhapsody Model Manager Tech Jam
2 - 34 © Copyright IBM Corp. 2018
Course materials may not be reproduced in whole or in part without the prior written permission of IBM.
c. Switch back to the Rhapsody client
d. Rhapsody indicates when units have changed – click Yes to All:
e. Note that the browser is once again back in sync:
top related