Abstract
Development projects are often based on large collections of information. This information is typically maintained in a set of files. Current file system and database structures are inadequate for storing and manipulating this information.
This paper defines a new class of high-level data structures called "m-dimensional n-ary tree-structured spaces" (also called "md-nt spaces"), and discusses their use in the organization of the files of development project file systems.
The md-nt space organization allows the primary file system structure to represent relationships between files which are difficult or impossible to represent with conventional structures. A fundamental aspect of this organization is that arbitrary semantics, such as implications in terms of a software module's nesting, or in terms of its position within a sequence of revisions, may dynamically be associated with this structure. This enables the primary file system structure to become the basis for automatic system functions such as the recompilation of source code, the propagation of sets of changes to all appropriate files, or the storage and regeneration of revisions of a file. With conventional systems, such operations are accomplished in a manual, ad-hoc, and error-prone fashion, or via mechanisms which are external to the primary file system structure, and hence contrary to the goal of an integrated environment.
This paper also discusses some of the considerations in the design and implementation of such a file system. A prototype implementation is described, and an evaluation of the effectiveness of md-nt spaces in a software development environment is presented.
Chapter PDF
Similar content being viewed by others
References
Boehm, B.W., Elwell, J.F., Pyster, A.B., Stuckle, E.D., and Williams, R.D. "The TRW Software Productivity System," Proc. 6th International Conf. on Software Engineering, September 1982.
Cheatham, T.E. "An Overview of the Harvard Program Development System," in [Hunke 1981].
Donzeau-Gouge, V., Huet, G., Kahn, G., and Lang, B. "Programming environment based on structured editors: The Mentor Experience," INRIA Research Report No. 26, July 1980.
Feldman, S.I. "Make — A Program for Maintaining Computer Programs," Software Practice and Experience 9(3), March 1979.
Ferch, H.J., Neufeld, G.W., and Zarnke, C.R. "MANTES User Manual," University of Manitoba, August 1982.
Goldstein, I.P., and Bobrow, D.G. "A Layered Approach to Software Design," Xerox Palo Alto Research Center CSL-80-5, December 1980.
Habermann, A.N., and Notkin, D.S. "The GANDALF Software Development Environment," Carnegie-Mellon University, January 1982.
Hunke, H., ed. "Software Engineering Environments," North Holland, 1981.
Johnson, S.C., and Lesk, M.E. "UNIX Time-Sharing System: Language Development Tools," The Bell System Technical Journal 57(6), July 1978.
McGuffin, R.W., Elliston, A.E., Tranter, B.R., and Westmacott, P.N. "CADES — Software Engineering in Practice," Proc. 4th International Conf. on Software Engineering, 1979.
Ritchie, D.M., and Thompson, K. "The UNIX Time-Sharing System," Communications of the ACM 17(7), July 1974.
Rochkind, M.J. "The Source Code Control System," IEEE Transactions on Software Engineering SE-1(4), December 1975.
Thall, R.M. "The KAPSE for the Ada Language System," Proc. of the AdaTEC Conference on Ada, October 1982.
Tichy, W.F. "Design, Implementation, and Evaluation of a Revision Control System," Proc. 6th International Conf. on Software Engineering, September 1982.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1985 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kimelman, D.N. (1985). Multidimensional tree-structured file spaces. In: Ehrig, H., Floyd, C., Nivat, M., Thatcher, J. (eds) Formal Methods and Software Development. TAPSOFT 1985. Lecture Notes in Computer Science, vol 186. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-15199-0_13
Download citation
DOI: https://doi.org/10.1007/3-540-15199-0_13
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-15199-9
Online ISBN: 978-3-540-39307-8
eBook Packages: Springer Book Archive