About Parallel Development Tasks

There are two basic models for parallel development: one uses projects, and the other uses branches. This section outlines work flows based on these methods.

NOTE  These are simple work flows intended to give you a sense of how Dimensions CM is commonly used. It does not explain all possible options and variations. Work flows in your organization will vary depending on your development practices, how the Dimensions CM process model is set up, role assignments, and many other factors.

Multiple Projects

If you are doing maintenance on a single product, you might start by branching off a maintenance project. You would work on it until you want to bring it back to main development, then merge the projects.

Multiple Projects and Named Branches

A more complex scenario involves doing a customer-specific release using multiple projects and named branches.

  1. Start by baselining the main line of development.

  2. Create a new project and named branch for the customer that consists only of items that will be changed for this customer, as well as any new items.

  3. Work on both the main line and the customer branch.

  4. Once the customer-specific changes are ready, baseline the customer and main line projects.

  5. To get a baseline you can build from, merge the customer and main line projects.

The following figure illustrates multiple projects with branching. There are three projects: MAIN, WINDOWS_XP, and MAINTENANCE. Notice that the revision 3 in the main branch is used to start the WINDOWS_XP branch in the WINDOWS_XP project, and revision 2 in the main branch is used to start the maintenance branch in the MAINTENANCE project.

Also notice that in the MAINTENANCE project, two separate sub-branches emanate from the maintenance branch, illustrating the important point that parallel development on the same file may occur within the same project and is not necessarily restricted to occur across different projects.

projects_and_branches.gif