Components represent a collection of versioned artifacts within a project area. For example, instead of working with all the artifacts from the project in one stream (for example, that represents a physical piece called a Handheld Meter Reader), you can use a component to represent a smaller collection of artifacts (for example, to represent a smaller physical piece such as a Sensor in the handheld meter reader).

You can split a project into multiple pieces called components. Each component is like a building block that represents a physical or logical part of your project. Components make it easier to reuse and work with parts of a project. After you plan and create components, organize project artifacts into them based on your project needs, instead of working with all the artifacts in one collection (configuration).

Before version 6.0.3, the project area was the top-level container for artifacts. You couldn’t split a project into smaller pieces. Each configuration (stream or baseline) in the project contained one version of each artifact in the project. If you wanted smaller collections of project artifacts, you had to create projects to correspond with each grouping, which had much administrative overhead.

Starting in version 6.0.3, the ability to split a project into finer-grained components gives you these benefits:
  • It’s easier to create versions and variants of a product or system by reusing its parts.

    You can quickly respond to market demands or changing regulations in different geographies.

  • Teams can work independently on different components on different schedules.

For each IBM Engineering Lifecycle Management (ELM) application, carefully plan which components to create, to ensure flexibility in assembling products and their variants. If you don’t plan, you will encounter problems when you assemble the components into global configuration hierarchies that represent products and their variants.

See the related topics for details, benefits of using components, and examples.