skip to main content
column

ENORM: An Essential Notation for Object-Relational Mapping

Published: 04 December 2014 Publication History

Abstract

Despite the growing adoption of object-relational mapping frameworks, UML and its most widespread extensions do not represent these mappings in a platform independent way. Maintaining mappings scattered in the code is difficult and error prone, specially if the schema is large and serves several systems. This paper proposes ENORM, a notation that extends class models representing all the essential mappings. ENORM is platform independent, providing a meta-model based on design patterns employed by three frameworks of Java, Ruby, and Python languages. An empirical evaluation indicates that ENORM performs well in comparison to separated models.

References

[1]
A UML Profile for Data Modeling: 2003. http://www.agiledata.org/essays/umlDataModelingProfile.html. Accessed: 2013-10-01.
[2]
Active Record - Object-relation mapping put on rails: 2012. http://ar.rubyonrails.org/. Accessed: 2013-10-01.
[3]
Atzeni, P. et al. 2013. The relational model is dead, SQL is dead, and I don't feel so good myself. SIGMOD Rec. 42, 1 (Jul. 2013), 64--68.
[4]
Beydeda, S. et al. 2005. Model-Driven Software Development. Springer.
[5]
Blakeley, J.A. et al. 2006. The ADO.NET entity framework: making the conceptual level real. SIGMOD Rec. 35, 4 (Dec. 2006), 32--39.
[6]
Brown, K. and Whitenack, B.G. 1996. Crossing Chasms: a pattern language for object-RDBMS integration: the static patterns. Pattern languages of program design 2. Addison-Wesley Longman Publishing Co., Inc. 227--238.
[7]
Dayal, U. and Bernstein, P.A. 1982. On the correct translation of update operations on relational views. ACM Trans. Database Syst. 7, 3 (Sep. 1982), 381--416.
[8]
Elmasri, R. and Navathe, S.B. 2003. Fundamentals of Database Systems. Addison Wesley.
[9]
Essential ORM Modeler: 2013. http://sourceforge.net/ projects/eorm/. Accessed: 2013-12-05.
[10]
Fowler, M. 1996. Analysis Patterns: Reusable Object Models. Addison-Wesley Professional.
[11]
Fowler, M. 2002. Patterns of Enterprise Application Architecture. Addison-Wesley Longman Publishing Co., Inc.
[12]
JSR-000317 Java Persistence 2.0 - Final Release: 2009. http://jcp.org/aboutJava/communityprocess/final/jsr317/index.html. Accessed: 2013-10-01.
[13]
Juristo, N. and Moreno, A.M. 2001. Basics of Software Engineering Experimentation. Springer.
[14]
Keller, W. 1997. Mapping Objects to Tables - A Pattern Language. Proceedings of the 1997 European Pattern Languages of Programming Conference (Irrsee, Germany, 1997).
[15]
Ko, A.J. et al. 2013. A practical guide to controlled experiments of software engineering tools with human participants. Empirical Software Engineering. (Sep. 2013), 1--32.
[16]
Mellor, S.J. et al. 2004. MDA Distilled: Principles of Model-Driven Architecture. Addison-Wesley.
[17]
OMG 2001. OMG's Model Driven Architecture.
[18]
OMG 2005. Request For Proposal Information Management Metamodel (IMM).
[19]
SQLAlchemy - The Database Toolkit for Python: 2012. http://www.sqlalchemy.org/. Accessed: 2013-10-01.
[20]
Torres, A. et al. 2011. A synergistic model-driven approach for persistence modeling with UML. Journal of Systems and Software. 84, 6 (Jun. 2011), 942--957.
[21]
Torres, A. et al. 2013. Technical Report - Comparing ENORM and separated modeling using Relational and UML class models: a within-subjects experimental study. http://www.inf.ufrgs.br/~atorres/sigmod2013/.
[22]
UML 2.4.1 Superstructure: 2011. http://www.omg.org/spec/UML/2.4.1/Superstructure/PDF/. Accessed: 2013-10-01.

Cited By

View all
  • (2022)Object Relational Mapping Vs. Event-Sourcing: Systematic ReviewElectronic Government and the Information Systems Perspective10.1007/978-3-031-12673-4_2(18-31)Online publication date: 22-Aug-2022
  • (2018)Model of Conversion of Data Objects for Defining the Object-Relation MappingProcedia Computer Science10.1016/j.procs.2018.01.082123(541-546)Online publication date: 2018
  • (2017)Distributed Data Store Architecture Towards Colonial Data Replication2017 IEEE 11th International Conference on Application of Information and Communication Technologies (AICT)10.1109/ICAICT.2017.8686925(1-6)Online publication date: Sep-2017

Comments

Information & Contributors

Information

Published In

cover image ACM SIGMOD Record
ACM SIGMOD Record  Volume 43, Issue 2
June 2014
56 pages
ISSN:0163-5808
DOI:10.1145/2694413
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 December 2014
Published in SIGMOD Volume 43, Issue 2

Check for updates

Qualifiers

  • Column

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2022)Object Relational Mapping Vs. Event-Sourcing: Systematic ReviewElectronic Government and the Information Systems Perspective10.1007/978-3-031-12673-4_2(18-31)Online publication date: 22-Aug-2022
  • (2018)Model of Conversion of Data Objects for Defining the Object-Relation MappingProcedia Computer Science10.1016/j.procs.2018.01.082123(541-546)Online publication date: 2018
  • (2017)Distributed Data Store Architecture Towards Colonial Data Replication2017 IEEE 11th International Conference on Application of Information and Communication Technologies (AICT)10.1109/ICAICT.2017.8686925(1-6)Online publication date: Sep-2017

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media