Version control in the Inscape environment (1987)
Abstract:
We present the important issues to be considered in version control mechanisms and characterize and compare the kinds of version control systems extant in current programming environments. We then characterize Inscape's version control mechanism, Invariant, and show that it makes several significant advances in the state of the art. Using Instress (Inscape's module interface specification language) specifications, Invariant provides a better understanding of the notion of parallel versions, a more comprehensive notion of version consistency, and a more flexible method of system composition than current mechanisms. In particular, Invariant provides a formalization of the notions of version equivalence and compatibility that correspond closely with our intuitive (and practical) notions of version equivalence and compatibility. These various forms of version compatibility provide the system builder with the concept of plugcompatibility--- an extremely useful facility in composing systems from component parts. 1.
Citations
| 336 | RCS--a system for version control – Tichy - 1985 |
| 238 | The source code control system – Rochkind - 1975 |
| 145 | Programming-in-the-Large Versus Programming-in-the-Small – DeRemer, Kron - 1975 |
| 61 | Computer-aided software engineering in a distributed workstation environment – LEBLANG, CHASE - 1984 |
| 42 | An axiomatic approach to computer programming – Hoare - 1969 |
| 26 | Organizing software in a distributed environment – LAMPSON, E - 1983 |
| 15 | An environment for system version control – KAISER, HABERMANN - 1983 |
| 14 | System Composition and Version Control for Ada – Habermann, Perry - 1981 |
| 8 | The Inscape Program Construction and Evolution Environment – Perry - 1986 |
| 6 | Position Paper: The Constructive Use of Module Interface Specifications – Perry - 1985 |
| 2 | Software Interconnection Models", This proceedings – Perry - 1987 |

