In this article I will discuss the differences and similarities of the three database models we talked about in class: Entity-Relationship Model, Object Model, and UML Modeling. First let's look at the definition of the three models. The Entity-Relationship model is used to visually represent data objects and is used for database design. It is easy to understand, which makes it easier to communicate the design to the end user. The form used in the ER model can be easily transformed into relational tables. (Information Technology Services [ITS], 2004) Another database model we have examined in class is the object model. There are three concepts for understanding object models, one of which is data abstraction, which is the process of condensing data down to its essential elements. Another is inheritance in the object model is the means of defining one class in terms of another. The third concept in the object model is encapsulation, which is the concept of including processing or behavior with the object instances defined by the class. Encapsulation allows you to package code and data together. The third database model would be the UML model which stands for Unified Modeling Language used to write software projects. UML can be used to visualize, specify, construct, and document the artifacts of a software-intensive system. (Safari Tech Books Online, 2002, ch. 2) Some of the similarities in the database model are that all three can be used in some way in the database design process. In our previous DBM 380 class we have used ER model for our projects also from our previous projects we can create the database model in object model or UML. Of the three database models, I found the Entity Relationship model was the easiest to create and explain to an end user, and it also easily transforms into relationship tables which worked well in Access. The object model and the UML model seem to be more of a language model compared to the ER model which seems to be more just for databases, although the object model addresses both programming and databases. The UML model is more suited to intense software programming like Java programming and would allow you to visualize and document programming steps before starting code.
tags