Japanese, Chinese, Korean, and some Scandinavian countries. Unless the software
product is for organizations such as the United Nations, 676 would be plenty. One may
consider, for example, using the two-position ISO 3166 code for officially representing
the countries.
n
Part 3—RRR: The three-position RRR part represents the release number of the soft-
ware. If we confine ourselves to just the numerical figures 0 through 9, then
RRR can
represent 103, or 1000, releases. Assuming the product takes on two releases per year,
a three-positional numerical part will allow us to be in business for 500 years.
n
Part 4—VVV: A three-positional versioning within each release, VVV is restarted for each
release. Again, assuming only a numerical figure of 0 through 9,
VVV would provide
us with 1000 versions within each release. The artifact that will need a large number
of versioning within a release is probably the code module. A code module may go
through 1 to 100 versions of changes prior to release during the first year of develop-
ment. Then, assuming a fairly error-prone or change-prone module, it may go through
another 50 versions of changes per year during the maintenance and support period.
This will allow for a program module life span of about 19 years, including the first
year of development. In today’s fast-paced technology world, a module life of 19 years
should be quite sufficient.
n
Part 5—TT: The two-positional type code describes the kind of artifact. It may be a
requirements document, high-level design diagrams, database tables, test scenarios,
test data, or source code. Here,
T may be alphabetical and thus have 26 combinations.
The two-positional code,
TT, provides us with 262, or 676 different types of artifacts.
This number of types of artifacts should be ample for even the most complex software
development and maintenance.
n
Part 6—FF: The format represents the form the artifact is represented. The artifact may
be in a document form, in the form of a spread sheet, in executable code form, or in
a jpeg image form.
F may be a numeric figure between 0 through 9. Thus FF provides
100 different types of forms the artifact may be in.
Note that more combinations may be represented if we differentiate uppercase and
lowercase letters. If necessary, pure numeric fields may also be changed to alphanumeric
for expansion, and, of course, the number of positions for each part may be expanded.
This six-part naming model may thus be used for a wide variety of software product
development and support. The naming model is the key to uniquely identifying the items
and to creating relationships among the items. In choosing tools, however, we need to
pay special attention to the naming conventions that the tool may prescribe onto an
organization. For example, compilers may require a special suffix or prefix for a source
code file of different programming languages.
In addition to the naming model, a separate item-attribute description file, some-
times called an attribute model, may also be created. This attribute model essentially
defines the characteristics associated with each of the artifacts, such as who the owner
of the artifact is or when it was first created. It facilitates a richer artifact identifica-
tion mechanism and may be included as a complementing companion to the naming
model.
11.3 Configuration Management Framework
237
91998_CH11_Tsui.indd 237 1/10/13 11:04:52 AM