Modelling systems with variability using the PROTEUS configuration language

  • Eirik Tryggeseth
  • Bjørn Gulla
  • Reidar Conradi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1005)


To respond to environmental changes and customer specific requirements, industrial software systems must often incorporate many sources of variability. Developers use a diverse range of representations and techniques to achieve this, including structural variability, component version selection, conditional inclusion, and varying derivation processes.

This paper advocates specifying all potential variability within a system using a single formalism. PCL, the configuration language defined in the PROTEUS project, provides uniform facilities for expressing and controlling variability in all aspects of a system and its manufacturing process. PCL is supported by a comprehensive tool set and is integrated with several design methods. The paper uses a simple example throughout to illustrate the facilities of PCL and how these are supported by the tool set.


Configuration language software evolution software configuration management 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    E. Borison: A Model of Software Manufacture. In Reidar Conradi, editors, Proceedings of the International Workshop on Advanced Programming Environments, Trondheim, Norway, June 16–18, 1986, LNCS no. 244, Springer-Verlag, Berlin, pp. 197–220.Google Scholar
  2. 2.
    L. W. Cooprider: The Representation of Families of Software Systems. PhD thesis, Camegie-Mellon University, Computer Science Department, April 1979.Google Scholar
  3. 3.
    F. DeRemer and H. H. Kron: Programming-in-the-large Versus Programming-in-the-small, IEEE Transactions on Software Engineering, SE-2(2), June 1976, pp. 80–86.Google Scholar
  4. 4.
    J. Estublier: A configuration manager: The Adele data base of programs. In Workshop on Software Engineering Environments for Programming-in-the-Large, Harwichport, Massachusetts, June 1985, pp. 140–147.Google Scholar
  5. 5.
    J. Estublier and R. Casallas: The Adele Configuration Manager. In W. F. Tichy, Configuration Management, John Wiley & Sons Ltd., Chichester, 1994, ISBN 0-471-94245-6, pp. 99–133.Google Scholar
  6. 6.
    S. I. Feldman: Make, a Program for Maintaining Computer Programs, Software — Practice and Experience, 9(4), April 1979, pp. 255–265.Google Scholar
  7. 7.
    B. Gulla and J. Gorman: Supporting evolution with a configuration language: industrial experience, 11 pages. Submitted for publication.Google Scholar
  8. 8.
    D. L. Leblang: The CM Challenge: Configuration Management that Works. In W. F. Tichy, Configuration Management, John Wiley & Sons Ltd., Chichester, 1994, ISBN 0-471-94245-6, pp. 1–37.Google Scholar
  9. 9.
    A. Lie, R. Conradi, T. M. Didriksen, E.-A. Karlsson, S. O. Hallsteinsen and P. Holager: Change Oriented Versioning in a Software Engineering Database. In W. F. Tichy, editor, Proceedings of the Second International Workshop on Software Configuration Management, pp. 56–65, Princeton, NJ, October 25–27, 1989. ACM SIGSOFT Software Engineering Notes 17(7), November 1989.Google Scholar
  10. 10.
    K. Marzullo and D. Wiebe: Jasmine: A Software System Modelling Facility. In P. B. Henderson, Proceedings of the 2nd ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, Palo Alto, CA, December 9–11, 1986. ACM SIGPLAN Notices, 22(1), January 1987, pp. 121–130.Google Scholar
  11. 11.
    K. Narayanaswamy and W. Scacchi: Maintaining Configurations of Evolving Software Systems, IEEE Transactions on Software Engineering, SE-13(3), March 1987, pp. 324–334.Google Scholar
  12. 12.
    PROTEUS consortium: PCL-V2 Reference Manual, Technical Report P-DEL-3.4.D-1.9, September 1994, 85 pages.Google Scholar
  13. 13.
    I. Sommerville and G. Dean: PCL: A configuration language for modelling evolving system architectures, 21 pages. Submitted for publication.Google Scholar
  14. 14.
    R. Thomson and I. Sommerville: An Approach to the Support of Software Evolution, Computer Journal, 32(5), October 1989, pp. 386–396.Google Scholar
  15. 15.
    W. F. Tichy: Software Development Control Based on Module Interconnection. In Proceedings of the 4th International Conference on Software Engineering, IEEE, September 1979, pp. 29–41.Google Scholar
  16. 16.
    W. F. Tichy: RCS — A System for Version Control, Software — Practice and Experience, 15(7), July 1985, pp. 637–654.Google Scholar
  17. 17.
    D. Whitgift: Methods and Tools for Software Configuration Management, John Wiley & Sons Ltd., Chichester, 1991. ISBN 0-471-92940-9Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1995

Authors and Affiliations

  • Eirik Tryggeseth
    • 1
  • Bjørn Gulla
    • 1
  • Reidar Conradi
    • 1
  1. 1.Department of Computer Systems and TelematicsNorwegian Institute of Technology (NTH)TrondheimNorway

Personalised recommendations