Release engineering: These tools offer the capability to migrate and install deliverables onto a production system. Other details include:
· Tools in this category typically live the release phase, but may get initiated in the development and test phase.
Considerations leading into the CM Tool Evaluation
Now that you have a good idea of the capabilities you are looking, the next steps are areas to consider prior to performing the evaluation of the candidate CM tools available on the market. These considerations focus on converting capabilities into requirements, applying context, and recognizing that you may need more than one tool to meet your needs.
Capabilities to Requirements
You should build a list of capabilities that you desire irrespective of whether you agree or disagree with the division of capability as laid out above. The important thing is that you identify the capabilities you need prior to actually performing an evaluation. The key is these capabilities form the starting point for requirements. You may drill down deep and sub-divide a capability into multiple requirements. For example, if you consider continuous build as a capability, you may break this down into: ability to support Ant; ability to tie the build process into a version control tool; and the ability to perform build on demand.
In addition to capabilities, it is important to apply the context in which you will be working. The context defines the playing field in which the CM capabilities will be utilized. In this case, it is important to understand how the CM capabilities must work within the context of the development methodology being used and the context on how distributed the development teams may be. Consider for a moment if the CM tool desired might be different if the team is using a phased approach (e.g., Waterfall) vs. an iterative approach (e.g.,