|
Software Configuration Management
Software Configuration Management, SCM, are the practices and procedures for administering source code, producing software development builds, controlling change, and managing software configurations. Specifically, Software Configuration Management ensures the integrity, reliability and reproducibility of developing software products from conception to release.
SCM Responsibilities
A very good description from "Software Configuration Management A Roadmap": SCM is the control of the evolution of complex systems.
SCM Services
Source Code Administration Source Code is the intellectual property of any organization. Understanding and properly protecting this valuable asset is SCM's highest priority.
Software Builds Software building, otherwise known as integration, is the process of taking all source code files that make up an application and compiling it into build artifacts such as binaries or executables. SCM ensures that this building process adheres to the following best practices:
Change Control The ability to apply proper controls to the software development process to ensure only appropriate and approved changes are being added to the application.
Configuration Management Managing the build and runtime environment for an application to ensure the integrity of the application.
History In the 1980s, the first source control systems were built by companies in house. They were exclusively for file control. As the these systems matured and more features and controls were required, the first commercial products were being developed and sold in the 1990s. By 1998, the SCM tool market was over one billion dollars annually. By the late 1990s, the first fully functioning SCM tools that included source control, change control, build management and defect tracking were being developed and sold. Now, the SCM market is over $10 Billion annually. The tools are evolving at a rapid rate. They include many development processes such as Agile, CMMI and Iterative methodologies. Many experts consider SCM to be one of the very few Software Engineering successes.
Purpose of this Site This site is to be a central repository for the collection of best practices, processes, methodologies and tools that surround SCM. The purpose of this site may be impossible to accomplish, but the attempt will be made.
Future SCM
SCM Tools have evolved from simple checkin and checkout tools to fully encompassing ALM products. In addition to source code control, these tools now encapsulate change control, software builds, project management, item/defect tracking, and fully automated testing capabilities. What direction will SCM take in the future?
|
Take our SCM Salary Survey
This is a collection salaries of SCM Professionals of different backgrounds, education, experiences and locations Please add your information to the collection
|
|
|
|
||
|
|
||