Title :
Separating adaptable persistence attributes through computational reflection
Author :
Ortin, Francisco ; Lopez, Benjamin ; Perez-Schofield, J. Baltasar García
Author_Institution :
Dept. of Comput. Sci., Oviedo Univ., Spain
Abstract :
To receive persistence capabilities, applications usually must explicitly access database management systems, such as object-oriented databases or object-relational mapping products. The usual way of building an application is tangling its functional code with explicit structured query language (SQL) or object query language (OQL) persistence statements. This tangling has several drawbacks: deficiencies in source code legibility, maintainability, and portability; lack of persistence functionality reuse; and low adaptability of persistence attributes. Separating crosscutting concerns such as persistence from the main application code can reduce software complexity and facilitate concerns reuse. A prototype persistence system shows how to use computational reflection to completely separate and adapt application persistence attribute at runtime.
Keywords :
Java; SQL; object-oriented databases; object-oriented programming; persistent objects; relational databases; software maintenance; software metrics; software quality; SQL; adaptable persistence attributes; computational reflection; database management systems; object query language; object-oriented databases; object-relational mapping; persistence objects; software complexity; software maintenance; structured query language; Application software; Computational modeling; Database languages; Database systems; Java; Object oriented modeling; Programming profession; Reflection; Runtime; XML; 65; aspect-oriented programming; computational reflection; nitrO; orthogonal persistence; persistence system; separation of concerns;
Journal_Title :
Software, IEEE