Essentials of Rational ClearCase


Objectives:

To make the participants proficient in Essentials of Rational Clear Case

Course duration:

2 days

Course outline:

Day 1

Module 0: About This Course

Overview: Orient students to the training facility, introduce course content and logistics, and provide a list of resources.

Module 1: Getting Started

Goal: Set up a ClearCase workspace, which includes creating a view, starting a view, and mounting a VOB.

Overview: This module introduces the typical developer workflow, which serves as the organizing principle for Day one content. The module teaches students how to set up a ClearCase workspace, which includes creating a dynamic view, starting a view, and mounting a VOB. Finally, it discusses how to access ClearCase Help.

Exercises: Tool-based exercise at end of module to create and start view, and to mount a VOB.

Module 2: Working with Files Under Source Control

Goal: To checkout/checkin files, and to teach them what it means to develop in parallel with other team members (branching).

Overview: This module teaches students to work with files under source control in ClearCase. It focuses on working with ClearCase in a parallel development environment. It discusses the checkout/checkin paradigm, reserved and unreserved checkouts, branching, version-extended pathnames, and the –mkbranch rule.

Exercises: Tool-based exercise at the end of module to edit a config spec to create private branches, check out, edit, and check in files. Also create a view-private file that they will add to source control in a later lab.

Module 3: Merging to and from the Integration Workspace

Goal: To merge their work to and from the integration (project) workspace.

Overview: This module explains how ClearCase merges element versions. It discusses the ClearCase merge algebra and the different types of ClearCase merges. The module shows merges using the Version Tree Browser and the Merge Manager. It introduces the Diff Merge tool.

Exercises: Tool-based exercise at the end of the module to merge using the Version Tree Browser and the Merge Manager; use the Diff Merge tool to resolve merge conflicts.

Module 4: Working with Elements and Views

Goal: To perform a range of less-common developer tasks related to elements and views.

Overview: This module is a collection of tasks that do not fit in the common developer workflow, but yet are tasks developers will need to execute occasionally. It discusses tasks related to elements including adding files to source control, comparing element versions, renaming and moving elements, and viewing element histories. It discusses tasks related to views including finding checkouts, canceling checkouts, using versionextended pathnames, and removing views.

Exercises: Tool-based exercise at end of module that completes a number of tasks.

Module 5: Working with Snapshot Views

Goal: To work in snapshot views connected and disconnected from the network.

Overview: This module discusses creating and working in a snapshot view. Its main workflow assumes disconnected work. It points out the differences between dynamic and snapshot views. It discusses the tasks unique to working in snapshot views including creating load rules, updating a view, and hijacking files.

Exercises: Tool-based exercise at end of module to create and work in a snapshot view.

Day 2

Module 6: Configuring Workspaces

Goal: How config specs work and how to write them.

Overview: This module discusses how config specs select element versions. It explains config spec rules syntax. It discusses techniques to automate config specs including the include rule and setcs.

Exercises: Paper-based exercises within the module on writing config spec rules and config specs. Tool-based exercise at the end of the module on editing a config spec.

Module 7: Integrating Parallel Development

Goal: About commonly used branch types and how to perform advanced merges.

Overview: This module discusses branching as a technique to manage parallel development. It covers commonly used branch types. It explains how multiple level – mkbranch rules in the config spec can create cascading branches and thus consistently implement a project's branching strategy. It discusses subtractive and selective merges, and ends with a discussion of comparing/merging non-ClearCase files.

Exercises: Paper-based exercise in the module to write a config spec to create cascading branches. Tool-based exercise at the end of the module to view branch types, perform a selective merge, and compare/merge non-ClearCase files.

Module 8: Applying ClearCase Metadata

Goal: To apply various ClearCase metadata.

Overview: This module teaches students about ClearCase metadata. It discusses the different kinds of metadata, and provides examples of when it is appropriate to use each. The module teaches students to apply label, attribute, and hyperlink instances.

Exercises: Tool-based exercise at the end of the module to apply a label, an attribute, and a hyperlink.

Module 9: Creating Reports

Goal: To create reports on ClearCase elements and operations.

Overview: This module introduces students to ClearCase reporting capabilities using cleartool commands: annotate, describe, lshistory, and find. It also discusses the command formatting option, -fmt. The Windows version of the course discusses creating reports using the Report Builder and Report Viewer.

Exercises: Tool-based exercise at the end of the module to create ClearCase reports.

Module 10: Managing Builds in ClearCase

Goal: Build using ClearCase build utilities.

Overview: This module introduces ClearCase build utilities, clearmake and omake, and discusses the advantages of using them to build software. It explains ClearCase build auditing and build avoidance capabilities. It explains derived objects, configuration records, and the wink in process.

Exercises: Tool-based exercise at the end of module to build using ClearCase build utilities, view and compare configuration records, and add a derived object to source control.


Wintrac Inc.
16523 SW McGwire Ct.
Beaverton OR 97007
© Wintrac, Inc. All rights reserved.                                                                               Site Map   |   Terms of Use   |   Privacy Policy