Author:
Pietu Pohjalainen
Affiliation:
University of Helsinki, Finland
Keyword(s):
Transparent Persistency, Self-configuring Software Architecture, Randomized, Controlled Experiment.
Related
Ontology
Subjects/Areas/Topics:
Agile Methodologies
;
Architectural Design and Meta Architectures
;
Cross-Feeding between Data and Software Engineering
;
Meta Programming Systems and Meta-Modeling
;
Paradigm Trends
;
Software Engineering
;
Software Project Management
Abstract:
Information retrieval from a database is the backbone of many applications. For building object-oriented systems with a relational persistence engine, a common approach is to use an object-to-relational mapping library for handling the mismatch between object-oriented and relational data models. These components should make the application programmer oblivious to the choice of relational database.
To study the effects of transparent persistence, we conducted a randomized, controlled study for 16 students, who were given a number of maintenance tasks on a sample software. For half of attendees, the sample software was written using the transparent persistence approach. For the second half the sample software used a self-configuring component for automatically generating database queries.
We found out that the group using transparent persistence were performing worse than the group using self-configuring queries. Attendees in both groups were using the same amount of time for perform
ing the given maintenance tasks, but the transparent persistence group was outperformed by a factor of three in the number of correct submissions. The use of transparent persistence turned out to be a major error source. This gives us a reason to doubt the usefulness of transparent persistence in the long run.
(More)