Since today's languages are dissimilar and distinct from each other, they require different programmer skill levels, knowledge, and techniques. Because these attributes shape the developer's organization, SCM must take into account these variables to be successfully adapted and accommodated. The SDP, when correctly realized, is the sustaining document for software maintenance. It provides the framework for transition into the support phase of the software's lifecycle. Unfortunately, SCM tools are not stand-alone instruments or a substitute for lack of a comprehensive and defined SCM process.
Implementation is never that simple.
At this level, both consistency and effectiveness of processes is repeatable. To attempt to automate an immature SCM model, as defined by the CMM, will not solve an organization's SCM problems. In all likelihood, such attempts would only further amplify any process shortcomings and inadequacies. If the CMM level achieved is not Level 2, the SCM infrastructure may not be mature enough to effectively execute SCM tools. Ad hoc Level 1 organizations with a few key people can be effective, but they are the exceptions, not the rule.