Software configuration management |
: This article is about configuration management. For other uses of SCM see SCM (disambiguation). Software Configuration Management (SCM) is part of configuration management (CM).
Roger Pressman, in his book, Software Engineering: A Practitioner s Approach, says that software configuration management (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. In other words, SCM is a methodology to control and manage a software development project.
SCM concerns itself with answering the question: somebody did something, how can one reproduce it Most often the issue involves not reproducing it identically , but with controlled, incremental changes. Answering the question will thus become a matter of comparing different results and of analysing their differences. Traditional CM typically focussed on controlled creation of relatively simple products. Nowadays, SCMers face the challenge of dealing with relatively minor increments under their own control, in the context of a complex given system.
Note that the terminology, as well as its History of software configuration management, has given rise to controversy, and often varies.
Tool vendors as well as academics may find an interest in introducing variants for differentiation purposes, sometimes trying in this manner to re-acquire pre-established acronyms.
Examples of related concepts impacting on the acronyms include:
In particular, the former vendor, Atria (later Rational Software, now a part of International Business Machines), used SCM to stand for Software Configuration Management .
Goals
The goals of SCM are generally:
References
|
|