Software configuration management for medium-size systems

  • W. Reck
  • H. Härtig
Session 4A: The Software Process (Technical Papers)
Part of the Lecture Notes in Computer Science book series (LNCS, volume 436)


Software configuration management for large real systems is an ugly task. For such systems large-scale software configuration management systems are necessary. Small systems don't need software configuration management except a way to backup. This paper describes a simple software configuration management system (called SCMB) for real medium-size systems.

SCMB obtains its simplicity from clearly separating revision control (i.e.maintaining sequences) from variant control (i.e. maintaining alternatives) and instrument elimination.

Center of SCMB is the variant control system VCS. VCS maintains variants and sets of variants using a context free grammar. The terminals and nonterminals of the grammar reemerge as names of variant subsystems of the hierarchally structured system.

Based on VCS, a common revision control system for modules, and a compiler, which is able to analyze the dependency structure of modules, the SCMB is used
  • •to check the variant consistency of the system.

  • •to generate configurations of the system according to a triple (revision, variant, instrumentation).

  • •to manage revisions of the system

This paper describes design, implementation, experiences and limitations of SCMB, which has been used for the development and maintenance of the BirliX operating system, consisting of 300 Modula-2 modules containing about 200000 lines of code.


software configuration management revisions variants instruments subsystem creation conditional compilation physical separation 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AM88]
    Andreas Lampen Axel Mahler. shape-a software configuration management tool. In International Workshop on Software Version and Configuration Control, pages 228–243, Grassau, January 1988.Google Scholar
  2. [Fel83]
    Stuart I. Feldman. MAKE — A Program for Maintaining Computer Programs. Proc. of the SIGPLAN 83 Symposium on Programming Language Issues in Software Systems, 18(6):1–13, June 1983.Google Scholar
  3. [HKK+90]
    H. Härtig, W. Kühnhauser, O. Kowalski, W. Lux, W. Reck, H. Streich, and G. Goos. The Architecture of the BIRLIX Operating System. In 11. ITG/GI Fachtagung Architektur von Rechensystemen, Munic, March 1990. VDE Verlag.Google Scholar
  4. [LS79]
    B. Lampson and E. Schmidt. Organizing Software in a Distributed Environment. Software — Practice and Experience, 9(3):255–265, March 1979.Google Scholar
  5. [MW86]
    Keith Marzullo and Douglas Wiebe. Jasmine: A Software System Modelling Facility. Communications of the ACM, 22(1):121–130, December 1986.Google Scholar
  6. [Tic85]
    Walter F. Tichy. RCS — A System for Version Control. Software — Practice and Experience, 15(7):637–654, July 1985.Google Scholar
  7. [Wir83]
    N. Wirth. Programming in Modula-2. Springer Verlag, 1983.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1990

Authors and Affiliations

  • W. Reck
    • 1
  • H. Härtig
    • 1
  1. 1.German National Research Center For Computer Science (GMD)Sankt Augustin 1West Germany

Personalised recommendations