Software Configuration Management – Basics ITIL
The concept of software configuration management can be very hard to understand, unless you received a well guided introduction to it. However, many new comers will simply be placed in front a computer running an open source data CM package. The prerequisite for working with such software in CM is ‘grade A’ knowledge of C++, Java, and the basic working knowledge of Linux. This can be initially overwhelming and induce a black stare.
Configuration management literally means managing change or managing information for change. So if two users are trying to access the same Word doc in a local network they will usually be unable to edit the doc at the same time. This is because the network cannot accommodate two sets of changes at once. Without any configuration management system there is the potential for two users to open the document, do separate work then for the last one to save to overwrite the work already done. The CMS is there to avoid these types of errors.
The example is a very basic one and with CMS both users can check out their copy of the file, while the system keeps a record of every version saved and merges the changes to the document. The Word doc example is not where CMS is most important as the real value of CMS is in software development. If you have scores of software developers working on the same source code files then a software configuration management system is essential.
SCM systems work on the basis of a central database of all files. Users can check out the files, make alterations and then check them back in again, and then the files are available to all users again. The system can check changes against the original file and update them keeping an archive of each generation. Every SCM will have concurrent management and versioning.
Concurrent management is a feature that allows multiple changes from different users a2nd tfhen merges the changes. Dependent on the system configuration the SCM system will either process the changes itself, minimize the users, or it will notify the user to do so manually.
Versioning is the feature that stores archive copies of every file in the database so that users can open previous versions of a file. They also can track the history of files to establish who checked what files out and when. Synchronization is the process of a user submitting their file to the database so that the SCM system can update the file.
fW3lJ0 Excellent article, I will take note. Many thanks for the story!