Fine grained data management to achieve evolution resilience in a software development environment

A software development environment (SDE) exhibits evolution resilience if changes to the SDE do not adversely affect its functionality nor performance, and also do not introduce delays in returning the SDE to an operational state after a change. Evolution resilience is especially difficult to achieve when manipulating fine grained data, which must be tightly bound to the language in which the SDE is implemented to achieve adequate performance. We examine a spectrum of approaches to tool integration that range from high SDE-development-time efficiency to high SDE-execution-time efficiency. We then present a meta-environment, a specific SDE tailored to the development of target SDE's, that supports easy movement of individual tools along this spectrum.

[1]  John G. Hughes,et al.  Object-oriented databases , 1991, Prentice Hall International series in computer science.

[2]  Gary H. Sockut,et al.  Database Reorganization—Principles and Practice , 1979, CSUR.

[3]  Jane W.-S. Liu,et al.  An Architecture for Tool Integration , 1986, Advanced Programming Environments.

[4]  Stanley B. Zdonik,et al.  Type Evolution in an Object-Oriented Database , 1987, Research Foundations in Object-Oriented and Semantic Database Systems.

[5]  Joseph M. Newcomer IDL: Past Experience and New Ideas , 1986, Advanced Programming Environments.

[6]  David Alex Lamb Implementation strategies for DIANA attributes , 1987, SIGP.

[7]  Walter F. Tichy Adabase: a data base for Ada programs , 1982, AdaTEC '82.

[8]  Stanley B. Zdonik,et al.  The management of changing types in an object-oriented database , 1986, OOPLSA '86.

[9]  Leon J. Osterweil,et al.  The Toolpack/IST Approach to Extensibility in Software Environments , 1983, Ada Software Tools Interfaces.

[10]  Fred Mellender,et al.  Object management in a persistent smalltalk system , 1989, Softw. Pract. Exp..

[11]  Walt Scacchi,et al.  A database foundation to support software system evolution , 1987, J. Syst. Softw..

[12]  Claus Lewerentz,et al.  Extended programming in the large in a software development environment , 1988, Software Development Environments.

[13]  Shamkant B. Navathe,et al.  Restructuring for large databases: three levels of abstraction , 1975, TODS.

[14]  Leon J. Osterweil,et al.  A mechanism for environment integration , 1990, TOPL.

[15]  Stanley B. Zdonik,et al.  A shared, segmented memory system for an object-oriented database , 1987, TOIS.

[16]  Erhard Plödereder,et al.  Object management issues for software engineering environments workshop report , 1988, SDE 3.

[17]  Richard T. Snodgrass Interface description language - definition and use , 1989, Principles of computer science series.

[18]  Vincent Y. Lum,et al.  EXPRESS: a data EXtraction, Processing, and Restructuring System , 1977, TODS.

[19]  Mark Dowson,et al.  Integrated Project Support with IStar , 1987, IEEE Software.

[20]  Klaus R. Dittrich,et al.  DAMOKLES - A Database System for Software ENgineering Environments , 1986, Advanced Programming Environments.

[21]  James W. Stamos,et al.  Static grouping of small objects to enhance performance of a paged virtual memory , 1984, TOCS.

[22]  Jack C. Wileden,et al.  Pgraphite: an experiment in persistent typed object management , 1988, SDE 3.

[23]  Maria H. Penedo,et al.  Prototyping a project master database for software engineering environments , 1987, SDE 2.

[24]  Reidar Conradi,et al.  IDL as a data description language for a programming environment database , 1987, SIGP.

[25]  David R. Barstow,et al.  Interactive programming environments , 1984, SOEN.

[26]  Howard Lee Morgan,et al.  Dynamic restructuring of databases with generation data structures , 1976, ACM '76.

[27]  Jack C. Wileden,et al.  A comparative evaluation of object definition techniques for large prototype systems , 1990, TOPL.

[28]  James Purtilo Polylith: An environment to support management of tool interfaces , 1985, SLIPE '85.

[29]  Ralph Cook A Tool for Viewing IDL Data Structures TRSS-009 April 1988 , 1988 .

[30]  Paola Giannini,et al.  IDL: the language and its implementation , 1990 .

[31]  Joseph M. Newcomer Efficient binary I/O of IDL objects , 1987, SIGP.

[32]  Jeffrey D. Uuman Principles of database and knowledge- base systems , 1989 .

[33]  David Garlan,et al.  A structural approach to the maintenance of structure-oriented environments , 1987, SDE 2.

[34]  Richard T. Snodgrass,et al.  Mapping the Interface Description Language Type Model into C , 1989, IEEE Trans. Software Eng..

[35]  Philip A. Bernstein,et al.  Database System Support for Software Engineering , 1987, International Conference on Software Engineering.

[36]  Peter Hitchcock,et al.  The Use of Databases for Software Engineering , 1986, BNCOD.

[37]  Gail E. Kaiser,et al.  Models of software development environments , 1988, ICSE '88.

[38]  A. Nico Habermann,et al.  Beyond schema evolution to database reorganization , 1990, OOPSLA/ECOOP '90.

[39]  Jack C. Wileden,et al.  Foundations for the Arcadia environment architecture , 1989, SDE 3.

[40]  David Alex Lamb,et al.  IDL: sharing intermediate representations , 1987, TOPL.

[41]  Thomas Reps,et al.  The Synthesizer Generator: A System for Constructing Language-Based Editors , 1988 .

[42]  Richard T. Snodgrass,et al.  Semantic Clustering , 1990, POS.