One More Attempt at CM History
There is an ambiguity on the term
Configuration Management (CM).
This used to be a concept in the OSI model of
ISO Network Management:
one of the 5 functional areas which built up one way to structure the
(Application Layer) Network Management applications.
But CM also links to a fully (well, let's discuss this below)
different context: SCM, the management of
Software Configurations.
Historically, there used to be a CM
before SCM, where the
"configurations" were neither "Network" nor "Software" configurations,
and this used to be somehow a prescriptive and bureaucratic process --
useful and generic, for sure, but largely a matter of discipline and
control.
Software brought up novelties in two respects --which is not widely
understood or recognized!--:
- a specific domain onto which to apply CM: software products, and their development, delivery, maintenance etc.
- toolsets, with universal leverage: you could manage whatever via their software representation.
So practically, CM became SCM --there was no old CM anymore-- so that
after a while, the term CM (in its generic, non Network- specific,
meaning) was free, and could be used again for what was in fact SCM.
Leading to more confusion.
Now, there are multiple variants of SCM --I tend to think at
generations such as with cellular telephony. And Network CM, having
developed from generic (pre- software) CM, with the inception of
software tools, is for historical and sociological reasons closer to
some variants than to others.
The concern for 'visualization' shows clearly a layered model, non
reflexive. It is directed to human actors, who are not themselves
meant as part of the system being managed. Or maybe they are supposed
to be managed as 'roles', but the visualization itself is geared
towards an 'outside' of the management system.
In my opinion,
ClearCase, at least in the
original usage tradition,
belongs to a more advanced 'variant' (a 'third generation'), with the
complexity being managed by other means than 'visualization'.
The key to the management in this 'generation' is dependencies -- SCM
management in
ClearCase is dependency management, and more precisely,
the management of
dependencies being audited -- recorded, and
automatically identified.
Of course, you may visualize the resulting dependency trees, and human
actors may take decisions based on their analysis of these
visualizations, but one might as well do other things, such as have
the system make automatic inferences -- and this does happen during
software builds for instance.
One striking note is that the "audited" dependency trees are
"upside-down" with respect to the the structure of the management
bases in traditional variants: the prototypical "managed object" (in
SCM speak: the
configuration item) is the
derived object, instead
of the 'source element'.
Only, software builds are conceptually just an example, even if they
happen to be for historical reasons, the only kind of application ever
produced, however primitive, which exploits this conceptual framework.
--
MarcGirod - 04 Aug 2005
Edit •
Attach •
Print version •
History: r2 < r1 •
Backlinks •
Raw View •
Raw edit •
More topic actions