Change Control Considerations
The Problem
On a team project, multiple authors are simultaneously creating
multiple documents that undergo constant revisions for multiple
readers. How do we manage such a dynamic situation?
"Change control is the practice of proposing, evaluating,
approving, and controlling important changes made during the
project and ensuring all stakeholders are aware of the changes
that effect them in a timely manner."
The team's configuration management plan must specify what change
controls procedures are to be used for each document the team
produces.
The kind of procedures you need vary depending upon how many
changes a
document is expected to incur. Several factors should
be considered.
- Will changes to the document impact many people or only one
person?
-
Is the document created by a single person or multiple people?
-
Is the document updated on a regular basis or is it created once
and then
mostly static?
-
Does the document have a single author or multiple authors?
-
Will the document be updated by a single person or multiple
people?
-
Will multiple people be updating the document concurrently?
-
Do previous changes need to be tracked or is only the current
version of
any importance.
-
Does the document undergo modifications, or are the changes
primarily additions
of new material?
-
If previous changes need to be tracked, is a simple description
of the
change adequate or does the document content need to be
archived?
Change Control Spectrum
There is a spectrum of change control methods, from informal (for a
single developer) to very formal (for large organizations).
-
One person "authors" the document and only they make
changes. Others
must contact the author with update requests.
-
One person "owns" the document (either physically or by file
permissions
or other access controls) and others must obtain the document
from the
owner in order to update it.
-
"Bulletin Board" style where people contribute to an ongoing,
chronological
appending of messages.
-
Automated version control such as CVS, SourceSafe, StarTeam,
etc.
-
Formal Change Control via a Change Control Board. Consider
adopting
or revising McConnell's example
procedure. In CPE 206, the instructor requires that
at a minimum
the following three documents must be under Formal Change
Control:
-
Software Requirements Specification (SRS)
-
User Interface Prototype or User Manual
-
Software Architecture - specifically, the public interface for
all your
classes.
Document Version Stamps
-
Last Modifed Tag: a simple javascript that writes the
version change
date on the document. Here is the javascript code you
need:
<!-- Begin Last Modified Section -->
<script language="JavaScript" type="text/javascript">
dateMod=document.lastModified;
document.write(" Last modified on ");
document.write(dateMod);
</script>
<!-- End of Last Modified section -->
-
Document history: a revision table showing date, author,
and description
of change made to the document.
Document History
Date |
Author |
Description of Change |
1/10/2001 |
Joe Student |
Added section on "defect logs" |
1/07/2001 |
Suzy Student |
First Draft made public |
Author: Dr. J. Dalbey