Approaching Parallel Development with Branch - Merge Strategies


merging his reporting changes with another person who is making reporting changes. This could effectively eliminate and certainly reduce merging within a project. When merging is reduced, so is the amount of time that it takes to resolve merging conflicts, rebuild (if appropriate) and retest. Moreover, this reduced time can lead to an earlier project release date, even if it is only a day or two.

The key to understand is that the goal should not be to eliminate parallel development, but to ensure it is minimized to the level of parallel development that is needed and most effective in improving productivity.

When approaching parallel development, it is important to be well educated in the needs of the development organization and the techniques and strategies of branching and merging. Getting the development group involved including the Product and Project Manager will lead to a better understanding within the project and across projects as it relates to parallel development. Many times, even within a project, let alone across projects, there is a lack of understanding of who is working on what and developers can easily clobber each other’s changes or important functionality can be missing from a release.

What may help your success is to approach parallel development with the goal of: understanding development needs; devising an appropriate branching and merging model; implementing a CM technology that supports the model, and working with Product and Project Manager to reduce the level of parallel development to what is effective for the project.


About the author

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.