Home > Research > Publications & Outputs > A database evolution taxonomy for object-orient...
View graph of relations

A database evolution taxonomy for object-oriented databases.

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Published

Standard

A database evolution taxonomy for object-oriented databases. / Rashid, Awais; Sawyer, Peter.
In: Journal of Software Maintenance and Evolution: Research and Practice, Vol. 17, No. 2, 01.04.2005, p. 93-141.

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Harvard

Rashid, A & Sawyer, P 2005, 'A database evolution taxonomy for object-oriented databases.', Journal of Software Maintenance and Evolution: Research and Practice, vol. 17, no. 2, pp. 93-141. https://doi.org/10.1002/smr.310

APA

Rashid, A., & Sawyer, P. (2005). A database evolution taxonomy for object-oriented databases. Journal of Software Maintenance and Evolution: Research and Practice, 17(2), 93-141. https://doi.org/10.1002/smr.310

Vancouver

Rashid A, Sawyer P. A database evolution taxonomy for object-oriented databases. Journal of Software Maintenance and Evolution: Research and Practice. 2005 Apr 1;17(2):93-141. doi: 10.1002/smr.310

Author

Rashid, Awais ; Sawyer, Peter. / A database evolution taxonomy for object-oriented databases. In: Journal of Software Maintenance and Evolution: Research and Practice. 2005 ; Vol. 17, No. 2. pp. 93-141.

Bibtex

@article{0961c73f42454418a4ee913684a07045,
title = "A database evolution taxonomy for object-oriented databases.",
abstract = "Like any other database application, object database applications are subject to evolution. Evolution, however, is a critical requirement in object-oriented databases as it is a fundamental characteristic of complex applications such as computer-aided design and manufacturing (CAD/CAM) and office information systems. Object-oriented databases are inherently suited to supporting such applications. In this paper we present a database evolution taxonomy for object-oriented databases. We describe a conceptual database model and use it to define the taxonomy. We also present the various invariants and rules governing the various evolution operations. The execution sequence of rules is described. An implementation of the database model and the evolution taxonomy in the Semi-Autonomous Database Evolution System (SADES), is discussed. The implementation employs aspect-oriented programming techniques to provide a flexible means of transforming objects upon evolution, and implementing some application-specific evolution primitives. A case study compares the evolution taxonomy with existing evolution approaches. The comparison demonstrates that the taxonomy and its corresponding implementation in SADES provide improved coverage of the fundamental evolution operations to which an object database might be subjected. At the same time, erosion of the database structure is avoided by maintaining a coherent and comprehensible view of historical changes.",
keywords = "object database evolution , schema evolution , class versioning , object versioning , separation of concerns , aspect-oriented programming",
author = "Awais Rashid and Peter Sawyer",
note = "This paper culminates the body of work conducted at Lancaster on aspect-oriented database systems. It uses object-oriented databases as a case example to highlight the need to support developer-end customisability in database systems. It then presents the vision of aspect-oriented databases ' database systems natively supporting aspect-oriented abstractions ' as a means to develop customisable database systems. The paper was followed up by a book which has in turn triggered other researchers to focus on aspects and persistence. An SME: Object Nirvana (http://www.objectnirvana.com/) is launching an aspect-oriented database product that is inspired by the ideas in the paper and its follow-up book. RAE_import_type : Journal article RAE_uoa_type : Computer Science and Informatics",
year = "2005",
month = apr,
day = "1",
doi = "10.1002/smr.310",
language = "English",
volume = "17",
pages = "93--141",
journal = "Journal of Software Maintenance and Evolution: Research and Practice",
issn = "1532-0618",
publisher = "John Wiley and Sons Ltd",
number = "2",

}

RIS

TY - JOUR

T1 - A database evolution taxonomy for object-oriented databases.

AU - Rashid, Awais

AU - Sawyer, Peter

N1 - This paper culminates the body of work conducted at Lancaster on aspect-oriented database systems. It uses object-oriented databases as a case example to highlight the need to support developer-end customisability in database systems. It then presents the vision of aspect-oriented databases ' database systems natively supporting aspect-oriented abstractions ' as a means to develop customisable database systems. The paper was followed up by a book which has in turn triggered other researchers to focus on aspects and persistence. An SME: Object Nirvana (http://www.objectnirvana.com/) is launching an aspect-oriented database product that is inspired by the ideas in the paper and its follow-up book. RAE_import_type : Journal article RAE_uoa_type : Computer Science and Informatics

PY - 2005/4/1

Y1 - 2005/4/1

N2 - Like any other database application, object database applications are subject to evolution. Evolution, however, is a critical requirement in object-oriented databases as it is a fundamental characteristic of complex applications such as computer-aided design and manufacturing (CAD/CAM) and office information systems. Object-oriented databases are inherently suited to supporting such applications. In this paper we present a database evolution taxonomy for object-oriented databases. We describe a conceptual database model and use it to define the taxonomy. We also present the various invariants and rules governing the various evolution operations. The execution sequence of rules is described. An implementation of the database model and the evolution taxonomy in the Semi-Autonomous Database Evolution System (SADES), is discussed. The implementation employs aspect-oriented programming techniques to provide a flexible means of transforming objects upon evolution, and implementing some application-specific evolution primitives. A case study compares the evolution taxonomy with existing evolution approaches. The comparison demonstrates that the taxonomy and its corresponding implementation in SADES provide improved coverage of the fundamental evolution operations to which an object database might be subjected. At the same time, erosion of the database structure is avoided by maintaining a coherent and comprehensible view of historical changes.

AB - Like any other database application, object database applications are subject to evolution. Evolution, however, is a critical requirement in object-oriented databases as it is a fundamental characteristic of complex applications such as computer-aided design and manufacturing (CAD/CAM) and office information systems. Object-oriented databases are inherently suited to supporting such applications. In this paper we present a database evolution taxonomy for object-oriented databases. We describe a conceptual database model and use it to define the taxonomy. We also present the various invariants and rules governing the various evolution operations. The execution sequence of rules is described. An implementation of the database model and the evolution taxonomy in the Semi-Autonomous Database Evolution System (SADES), is discussed. The implementation employs aspect-oriented programming techniques to provide a flexible means of transforming objects upon evolution, and implementing some application-specific evolution primitives. A case study compares the evolution taxonomy with existing evolution approaches. The comparison demonstrates that the taxonomy and its corresponding implementation in SADES provide improved coverage of the fundamental evolution operations to which an object database might be subjected. At the same time, erosion of the database structure is avoided by maintaining a coherent and comprehensible view of historical changes.

KW - object database evolution

KW - schema evolution

KW - class versioning

KW - object versioning

KW - separation of concerns

KW - aspect-oriented programming

U2 - 10.1002/smr.310

DO - 10.1002/smr.310

M3 - Journal article

VL - 17

SP - 93

EP - 141

JO - Journal of Software Maintenance and Evolution: Research and Practice

JF - Journal of Software Maintenance and Evolution: Research and Practice

SN - 1532-0618

IS - 2

ER -