Code Management System
The Code Management System (CMS) is a library system for software development and maintenance, part of DECset. Its features include:
- storing code and other related files in libraries
- controlling versions of code (generations)
- manipulating groups of objects as a unit
- manipulating versions of the entire system (classes)
- managing code reviews
- keeping track of history and storing comments
- merging changes made to different generations of the software
- additional security mechanisms
- providing notifications when an event occurs
Concepts
- A CMS library is a repository for CMS objects. It resides in a directory that has been initialized for use solely by CMS; your default directory cannot be a CMS library. The CREATE LIBRARY command creates CMS control files in the specified directory. A working library is chosen with the SET LIBRARY command; CMS$LIBRARY logical is defined to point to your current library. Once the library is created, it should only be accessed through CMS commands.
- A CMS element represents all versions of a particular file in a CMS library. An element cannot be a directory file.
- A CMS generation represents a specific version of an element. When an element is first created, CMS creates generation 1 of that element. When the element is later modified (reserved and replaced), CMS creates a new generation of that element.
- A CMS group is a set of elements that can be manipulated as a unit.
- A CMS class is a set of particular generations of elements. Typically generations of elements are combined into classes to represent progressive stages, or base levels, in the development of an entire system.
- A reservation is when an element is taken out for modification and then replaced with a new version.
- A reference copy directory is a directory that stores the copies of the latest main-line generation of selected library elements.