Configuration Management
Since we have a lot of expiriance in implementing
configuration managemtn tools such as
SYNERGY cm, ClearCase some RTC and other, we
would like to share some of the insights on the
Why, How and What.
|
Configuration Management (CM) is a methodology allowing software companies and software teams to control their source code changes, developing documents, manage software changes and control components and product during the life of a system.
- The configuration management include the following:
- Revision control.
- Baselines (a periodical snapshot of the system)
- Track changes.
- Traceability of a controlled object.
- Build management.
A software organization can benefit from deploying a Configuration Management tools in many areas: CM can save time and money during a development process. Once you implemented a configuration management tool the ROI and time saving is very clear.
The ways that CM can achieve the above is by:
- Improving development processes and lifecycles.
- Accelerate release development cycles.
- Maximize productivity - regardless of team size or location of team members.
- Minimize overhead through automation and the use of repeatable best practices.
The first step of implementing a Configuration Management is to analyze the way the software organization work.
- How many developer teams the organization have.
- How much products and software code the organization have.
- What type of development tools and languages the organization use (e.g. Java using eclips, or C# using .NET etc…)
- Is there dependencies between the organization’s teams and products.
The second step is to select a Configuration Management tool that fits your need. The third step is to implement and work with the Configuration Management tool (This should be an organization commitment and effort) The leading methodology of Configuration Management market today is Task Based CM:
The idea behind a Task Based CM is that all the activates in the system are associated with a Task. Whether if it’s a checkout of a source code or sharing work with other developers or sharing source code between release.
The benefits of a Task Base CM are:
- Less change documentation
- Eliminate incomplete changes that break builds
- Less progress reporting
- See other developers’ changes early
- Set aside other developers’ changes that interfere with your work
- Tightly couple fixes with bugs so they remain fixed
- Have visibility and context for your work and others’ work
|