Results 1 - 10
of
66
RCS: a system for version control
- Software—Practice & Experience
, 1985
"... An important problem in program development and maintenance is version control, i.e., the task of keeping a software system consisting of many versions and configurations well organized. The Revision Control System (RCS) is a software tool that assists with that task. RCS manages revisions of text d ..."
Abstract
-
Cited by 370 (7 self)
- Add to MetaCart
An important problem in program development and maintenance is version control, i.e., the task of keeping a software system consisting of many versions and configurations well organized. The Revision Control System (RCS) is a software tool that assists with that task. RCS manages revisions of text documents, in particular source programs, documentation, and test data. It automates the storing, retrieval, logging and identification of revisions, and it provides selection mechanisms for composing configurations. This paper introduces basic version control concepts and discusses the practice of version control using RCS. For conserving space, RCS stores deltas, i.e., differences between successive revisions. Several delta storage methods are discussed. Usage statistics show that RCS’s delta storage method is space and time efficient. The paper concludes with a detailed survey of version control tools.
Version Models for Software Configuration Management
- ACM Computing Surveys
, 1995
"... This paper focuses on the version models underlying both commercial systems and research prototypes. It provides an overview and classification of different versioning paradigms. Furthermore, it defines and relates fundamental concepts such as revisions, variants, configurations, and changes. In par ..."
Abstract
-
Cited by 169 (8 self)
- Add to MetaCart
This paper focuses on the version models underlying both commercial systems and research prototypes. It provides an overview and classification of different versioning paradigms. Furthermore, it defines and relates fundamental concepts such as revisions, variants, configurations, and changes. In particular, we focus on intensional versioning, i.e., construction of versions based on configuration rules. Finally,we provide an overview of systems whichhave had significant impact on the development of the SCM discipline, and classify them according to a detailed taxonomy
CVS II: Parallelizing Software Development
, 1990
"... The program described in this paper fills a need in the UNIX community for a freely available tool to manage software revision and release control in a multi-developer,multi-directory,multi-group environment. This tool also addresses the increasing need for tracking third-party vendor source distrib ..."
Abstract
-
Cited by 130 (0 self)
- Add to MetaCart
The program described in this paper fills a need in the UNIX community for a freely available tool to manage software revision and release control in a multi-developer,multi-directory,multi-group environment. This tool also addresses the increasing need for tracking third-party vendor source distributions while trying to maintain local modifications to earlier releases. 1. Background In large software development projects, it is usually necessary for more than one software developer to be modifying (usually different) modules of the code at the same time. Some of these code modifications are done in an experimental sense, at least until the code functions correctly, and some testing of the entire program is usually necessary.Then, the modifications are returned to a master source repository so that others in the project can enjoythe newbug-fix or functionality.Inorder to manage such a project, some sort of revision control system is necessary. Specifically,UNIX 1 kernel development...
The Adele Configuration Manager
, 1994
"... This article proposes an overview of the Adele system and also discusses other approaches and other systems. While most of our work on Configuration Management is covered, we have deliberately chosen to discuss in greater depth the Work Space aspect and the relationship between the Repository Spa ..."
Abstract
-
Cited by 57 (0 self)
- Add to MetaCart
This article proposes an overview of the Adele system and also discusses other approaches and other systems. While most of our work on Configuration Management is covered, we have deliberately chosen to discuss in greater depth the Work Space aspect and the relationship between the Repository Space and the WSs
Chimera: Hypermedia for Heterogeneous Software Development Environments
- ACM Transactions on Information Systems
, 2000
"... This paper presents an approach for providing hypermedia services in this heterogeneous setting. Central notions of the approach include the following: anchors are established with respect to interactive views of objects, rather than the objects themselves; composable, n-ary links can be established ..."
Abstract
-
Cited by 40 (5 self)
- Add to MetaCart
This paper presents an approach for providing hypermedia services in this heterogeneous setting. Central notions of the approach include the following: anchors are established with respect to interactive views of objects, rather than the objects themselves; composable, n-ary links can be established between anchors on different views of objects which may be stored in distinct object bases; viewers may be implemented in different programming languages; and, hypermedia services are provided to multiple, concurrently active, viewers. The paper describes the approach, supporting architecture, and lessons learned. Related work in the areas of supporting heterogeneity and hypermedia data modeling is discussed. The system has been employed in a variety of contexts including research, development, and education
If Your Version Control System Could Talk ...
- In ICSE ’97 Workshop on Process Modelling and Empirical Studies of Software Engineering
, 1997
"... Version control systems (VCSs) are used to store and reconstruct past versions of program source code. As a by-product they also capture a great deal of contextual information about each change. We will illustrate some ways to use this information to better understand a program's development history ..."
Abstract
-
Cited by 35 (1 self)
- Add to MetaCart
Version control systems (VCSs) are used to store and reconstruct past versions of program source code. As a by-product they also capture a great deal of contextual information about each change. We will illustrate some ways to use this information to better understand a program's development history. 1 Introduction There are many software-based metrics that one may use to assess the state of a software system. For example, the McCabe[7] and Halstead[4] software complexity metrics measure aspects of the structure of a static snapshot of source code to estimate its complexity. By measuring how these metrics change over time, the hope is that one can identify "decaying" components of a software system that, if restructured, may reduce the development effort needed to maintain and extend the system. Such analyses depend on the ability to recreate snapshots of the software at different points in time. A version control system (VCS) tracks each change a developer makes to the system and, as...
A New Approach to Version Control
- IEEE Transactions on Software Engineering
, 1993
"... We present a new approach to the control of versions of software and other hierarchically structured entities. Any part of a system, from the smallest component to a complete system, may exist in different versions. The set of all possible versions under the refinement relation forms a partial or ..."
Abstract
-
Cited by 31 (11 self)
- Add to MetaCart
We present a new approach to the control of versions of software and other hierarchically structured entities. Any part of a system, from the smallest component to a complete system, may exist in different versions. The set of all possible versions under the refinement relation forms a partial order (in fact, a lattice). The fact that version V approximates version V in this order means that V is relevant to V in this sense: when constructing version V of a system, we can sometimes use version V of a component if nothing more appropriate is available. More precisely, a particular version of an entire system is formed by combining the most relevant existing versions of the various components of the system. We call this the variant structure principle; it makes precise the idea that components of a given version of the system can be inherited by more refined versions of the system.
Empirical studies of software engineering: a roadmap
- In Proc. of the conference on The future of Software engineering
, 2000
"... In this article we summarize the strengths and weaknesses of empirical research in software engineering. We argue that in order to improve the current situation we must create better studies and draw more credible interpretations from them. We finally present a roadmap for this improvement, which in ..."
Abstract
-
Cited by 26 (1 self)
- Add to MetaCart
In this article we summarize the strengths and weaknesses of empirical research in software engineering. We argue that in order to improve the current situation we must create better studies and draw more credible interpretations from them. We finally present a roadmap for this improvement, which includes a general structure for software empirical studies and concrete steps for achieving these goals: designing better studies, collecting data more effectively, and involving others in our empirical enterprises.

