10-12-2012, 12:36 PM
Software Configuration Management
scm.pdf (Size: 670 KB / Downloads: 102)
What Is Software Configuration Management?
Software configuration management (SCM) is the organization of the components of a software
system so that they fit together in a working order, never out of synch with each other.
Those who have studied the best way to manage the configuration of software parts have
more elegant responses.
Roger Pressman says that SCM is a “set of activities designed to control change by identifying
the work products that are likely to change, establishing relationships among them,
defining mechanisms for managing different versions of these work products, controlling the
changes imposed, and auditing and reporting on the changes made.”
We think that Pressman’s description is a better description because we often view SCM
as meaning software
change
management.
Wayne Babich describes SCM as “the art of identifying, organizing, and controlling modifications
to the software being built by a programming team. It maximizes productivity by
minimizing mistakes.”
The Software Engineering Institute says that it is necessary to establish and maintain the
integrity of the products of the software project throughout the software life cycle. Activities
necessary to accomplish this include identifying configuration items/units, systematically
controlling changes, and maintaining the integrity and the traceability of the configuration
throughout the software life cycle.
Why Is SCM Important?
Software project managers pay attention to the planning and execution of configuration
management, an integral task, because it facilitates the ability to communicate status of documents
and code as well as changes that have been made to them. High-quality released software
has been tested and used, making it a reusable asset and saving development costs. Reused components aren’t free, though—they require integration into new products, a difficult task
without knowing exactly what they are and where they are.
Who Is Involved in SCM?
Virtually everyone on a software project is affected by SCM. From the framers of the project
plan to the final tester, we rely on it to tell us how to find the object with the latest changes.
During development, when iterations are informal and frequent, little needs to be known
about a change except what it is, who did it, and where it is. In deployment and baselining,
changes must be prioritized, and the impact of a change upon all customers must be considered.
A change control board (CCB) is the governing body for modifications after implementation.
Relation to the 34 Competencies
Software configuration management falls within competency 8, selecting methods and tools,
a product development technique. Project managers’ application of sound software development
methods, techniques, and tools coupled with project management practices, determines
organizational success or failure. A critical method in this success is formalized configuration
management.