Off-campus UMass Amherst users: To download dissertations, please use the following link to log into our proxy server with your UMass Amherst user name and password.

Non-UMass Amherst users, please click the view more button below to purchase a copy of this dissertation from Proquest.

(Some titles may also be available free of charge in our Open Access Dissertation Collection, so please check there first.)

Object management support for the construction of complex applications

Peri Lynn Tarr, University of Massachusetts Amherst

Abstract

The definition and long-term management of data in complex systems requires extensive support, including-high-level type and behavior modeling, persistence, query-based and navigational access, consistency management, and concurrency control. Traditionally, some of these capabilities have been provided by programming languages (e.g., semantically rich type and behavior models and navigational access), while others have been provided by database management systems (e.g., persistence, queries, and concurrency control). No language or database has provided the full set of required capabilities, however. This has typically required developers to program in multiple paradigms, translating explicity between "programming language" and "database" models as necessary to use their respective capabilities. The object-oriented database approach has sought to reduce this impedance mismatch in certain areas, but discrepancies still remain. We have developed a different approach to addressing the object management needs of complex applications. This approach eliminates the dichotomy between "programming language" and "database" objects, thus allowing the full set of language and database capabilities to be applied equally to all objects. The resulting object management capabilities are provided in a programming language-like manner, sometimes referred to as a "database programming language." This allows software developers to define objects, their interrelationships, and their behavioral semantics in the same programming language in which they build the systems that manipulate these objects. The object management capabilities can be applied to any kinds of objects these systems may need to define, including non-traditional objects like threads and procedures. The database programming language approach thus reduces the burden on application developers and minimizes application complexity, resulting in more rapid development of more maintainable software. The database programming language approach raises several challenges, arising in part from the historically different goals of programming languages and databases. Languages are general-purpose and flexible, to support a wide variety of application semantics, while databases impose semantic restrictions to improve performance. Thus, fully integrating programming language and database object management capabilities requires expanding language and database semantics to accommodate capabilities from the other domain. It also requires addressing numerous integration problems that arise when these new semantic models are inconsistent with each other. The result must retain the power of the language and database, and still perform acceptably. In this research, we formally define some of these semantic models, and explore and attempt to address the set of interactions via a prototype implementation and experimental evaluation.

Subject Area

Computer science

Recommended Citation

Tarr, Peri Lynn, "Object management support for the construction of complex applications" (1996). Doctoral Dissertations Available from Proquest. AAI9709661.
https://scholarworks.umass.edu/dissertations/AAI9709661

Share

COinS