Version Control
- Version Control
- the configuration management
task of managing multiple versions of
work products that may or may not also be
configuration items
As illustrated in the preceding figure, Version Control is part of the following inheritance hierarchy:
- Type: Abstract
- Superclass: Configuration Management Task
- Subclasses:
The typical responsibilities of Version Control are to:
- Ensure that the correct versions of the work products are
used.
- Ensure that all versions of all work products are stored
and retrievable.
Version control typically can begin when the following
preconditions hold:
- The
configuration management team is staffed.
- The configuration management team is adequately trained
in version control.
- Multiple versions of a work product exist.
Version control is typically complete when the following
postconditions hold:
- All work products are retired.
Version control typically involves the following teams and
roles performing the following steps in an iterative,
incremental, and parallel manner:
Version control typically can be performed using the
following techniques:
- A configuration management tool that supports version
control.
Version control typically results in the production of the
following work products:
- An identified version of a work product.
- Version control is at a finer granularity than
configuration control in that elements of a configuration
item may be under version control, although they are not
under configuration control.
- Just because the versions of a work product are
controlled dues not mean that the work product is a
configuration item that is also under configuration
control.
- All important work products should be version
controlled.
- Version control is a prerequisite of configuration
control.
- Different tools are often used to support version control
of different kinds of work products (e.g., source code
control, document control, requirements control).
- Work product producers can often use automated tools to
directly place versions of their work products under version
control. This is unlike configuration control, which is
performed by the configuration management team.