Integration stream vs integration view in ClearCase

Integration is a term used by convention to designate the first root stream of an UCM project.
Each UCM project has one root stream (and potentially many sub-streams).
The idea is that you will use your integration view as the destination view for deliver coming from sub-streams, effectively “integrated” the work done on said sub-streams on that integration view.

Integration Stream
(Froml Stream hierarchy)

Any sub-stream is called by convention a “development” Stream, in that it represents the “configuration” (ie what you need to work) for your current “development effort“.

A Stream is a configuration.
An UCM view is a ClearCase view with a config spec done automatically for you following the configuration of the Stream (instead of writing those selection rules manually).

The integration view is a view with the Integration Stream as reference.
A Development view is a view with a development Stream as reference.

The main idea behind this hierarchy of streams is to visualize your merge workflow (ie: once you have finished a work on a branch ‘B‘, where do you need to merge said work?)

merge workflow

  • merge from a sub-stream to a parent stream: deliver
  • merge from a parent stream to an immediate child stream: rebase

Leave a Comment