In Dimensions CM, you use projects or streams to organize development work. You identify the product's design parts to relate items and requests to a specific product part.
Dimensions CM uses projects and streams to organize different areas of development.
The files for a particular development strand are stored in Dimensions CM as items under version control.
Each project/stream has a folder structure in which these items are organized. The folder structure may differ from one project/stream to another. When a structural change is made to the project/stream folder, the change affects only that project/stream.
You can configure your database to use only streams, only projects, or both streams and projects.
Projects and streams work in different ways, and the Dimensions CM functions for projects and streams are different.
The following table explains the differences between projects and streams.
Dimensions CM projects are better suited to more traditional software development methodologies and non-software uses such as documentation and hardware assets:
Projects can be related in a hierarchical structure together with other parent and child projects.
For details, see About projects.
Streams are designed for carrying out small amounts of change and integrating them with the main body of code before starting on a new set of changes:
Note: A stream is configured in the process model as a project of type "STREAM".
For details, see About streams.
When a milestone is reached, you can freeze the project/stream contents and preserve the item versions in the project/stream by creating a tip baseline.
When a project is created from a baseline, the original hierarchical structure is restored. You can begin a new phase of development by creating a new project from a baseline.
For details, see Baseline categories.
Dimensions CM supports optimistic locking that enables you to check in a file without checking it out first.
Dimensions CM maintains metadata in the client working location to record the changes that have occurred in relation to the database.
To enforce security, you can use CM (Change Management) rules and specify that a user requires a request to update an item in the database.
Design parts and roles
You use design parts to organize items into logical groups associated with specific parts of a product.
Within different product parts, you may want to restrict the ability to perform certain actions and changes only to certain team members. Subdividing the product into design parts enables you to assign the roles for specific tasks and components to different individuals.
For an overview of design parts, see About design parts.