A stream is a long-lived Rational® ClearCase® object. It is a member of a single UCM project and is a mechanism for creating and recording configurations. A stream identifies the exact set of versions currently available for you to view, modify, or build. To create new versions of elements in a component, you use a view; to keep track of the versions that you create, you use a stream.
UCM uses baselines and activities to describe a stream configuration. When you create a stream, its original configuration is the same as a baseline (that is, it contains a single version of each element in a component). When you modify a stream configuration, you assign the modifications to one or more activities. Hence, a stream configuration is a given baseline plus one or more activities.
Your view accesses versions of elements provided by a stream. The view that you use is said to be attached to the stream. Your view for your private work area is called a development view and the related stream is called a development stream.

The following actions modify the configuration of a stream:
A multiple-stream project includes the following kinds of streams:
A single-stream project does not allow development streams; your view is attached to the integration stream.
Projects always include a single integration stream, which is the project's main shared work area. In a multiple-stream project, many integration views can be attached to the project integration stream.

The project integration stream records the project baselines and you can use it to access to all versions of the project shared elements. It collects all the work that all team members deliver from their development streams.
In a single-stream project, there are no development streams, so many development views are attached to the integration stream. When you check in versions from your view, you modify the configuration of the integration stream. The latest versions in the stream are available to all project members.
Typically,
each multiple-stream project includes many development streams, one for each
developer on the project.
All development streams start from a baseline. As a private work area, your development stream evolves separately from other development streams as you add activities.
In the base UCM process, the integration stream is the only shared work area for the project. However, a multiple-stream project may have additional shared work areas for developers who work together on specific parts of the project. Using the UCM development stream hierarchy feature, the project can have multiple shared work areas.
A project manager can set up a stream hierarchy in which multiple development streams can have child streams. Each parent development stream supports a small team of developers which develops a specific feature. The parent development stream serves as the shared work area for the feature development. For more information about stream hierarchies, see the IBM Rational ClearCase Guide to Managing Software Projects.
When you join the project, you can create your development stream under a parent stream other than the integration stream (that is, under a feature-specific development stream).