Skip to Main Content
To improve software quality, you must first understand your software. If you do not understand your code base, your odds of updating it without breaking something are poor. Often, a fundamental misunderstanding of software configuration management (SCM) as it applies to real-world application development is at fault. Branching is integral to version management, software build correctness, and release management. Good decisions about when and why to branch can make it much easier for developers and release engineers to coordinate software product changes. The right branching strategy makes it easier to deliver the right code, re-create past releases, and-if necessary roll back to a previous release. The authors consider how adopting the right SCM branching model facilitates rapid development, increases overall product quality and process efficiency, reduces the incidence of software failures, and improves organizational performance.