Posted by: ahmedashfaque | May 12, 2015

How to create data model for your application

In the good old days, creating an Entity Relationship (ER) Diagrams used to be a cake walk. You get your data requirements from end users and lo and behold you had everything to design your database using ER diagrams. Not any more. The reasons are too many. But the most important one is that your data model can not be converted into an ER diagram easily.

In 1980s and even up to 2000 or so, most software projects involved developing a database management system. These systems were also used to be known as Electronic data processing (EDP). These systems primarily were driven by a relational database at the back and some front end which would show and manage data in user forms. Most often there used to be a direct relationship between the user forms and the database entities like tables. Thus it was easy to take your ER diagram and build a system based mostly on your ER diagram.

Cut to present! Most software applications being developed today have sophisticated user interfaces. These applications are web based. These applications show many things at the user interface. They also do many things for the user. But all these things are not directly related to what is stored in your database. For example, a social media website allows its users to chat with friends, like a post, make friends, unfriend a friend etc. None of these features are driven solely by a database. There is something more involved apart from a database here.

This translates to a single fact that your fromt end is not directly related to your database. Thus your ER diagram alone is not sufficient to design your application.

The best approach to these kinds of software products is to use a data model which is a mix of databases and temporal data. Databases will hold the permanent data and temporal data will be present in short memory storage like RAM. The temporal data is managed by creating objects which hold their data till it is saved in the database.



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: