Configuration management

The unidirectional references of SystemWeaver mean that every Item always includes a closed set of other Items. This means that any Item has the property of defining a configuration of other items. The identification mechanism and versioning of SystemWeaver means that the configuration can be used as formally released configurations, such as baselines, satisfying all requirements of formal CM standards like ISO 10007 (Quality management systems – Guidelines for configuration management).

The figure below illustrates the configuration concept of SystemWeaver.

CM.png
In CM concepts that utilize name binding the establishment of integrity of a configuration must be tested, i.e. built, executed and compared against reference data. An example is software configurations where a number of modules can be compiled and linked using file based CM tools, ‘make’ files etc. To be sure however that the “right” modules or versions were included in the build a number of steps must be taken: the compiler/linker must check that all interfaces match (name-resolution). Software testing must then be performed. A problem with this approach is of that testing can only prove the presence of faults – and not the absence. There is therefore always the risk that configuration mistakes remain undetected, e.g. that an untested module becomes part of a baseline. Another problem is that the entire set of building blocks must be in a stable development status whenever the build is done. Using the fine grained versioning of In SystemWeaver, the integrity of configurations can be assured at all times.