Hey everyone,

I am just wondering what is based on what when designing a database.. Is an ER based on DFD? and Is a database design based on ER or DFD?

I have got different names for data stores in my DFD and my other group member has different names for the tables in the ER which don't match the data stores' names.

Any help??


Recommended Answers

All 3 Replies


I dont think there's any dependency between ERD and DFD. One can help with the other, i guess. As for database design, i'd say an ERD is closely related to that cos ERDs are basically database modelling tools. DFDs simply create an overview of the entire system.

You and your team mates should agree on similar naming conventions as this is very important.




As above.

The ER is where you discover your entities and hence your db tables (I always find this MUCH faster than collecting all attributes and formally normalising them via rules). The ER, as far as I'm concerned, is always the first important step in creating the database. The ER will also help show up where linking tables are needed when you spot many to many relationships (although they would show up in any formal normalisation of course).

The DFD (whch I always hated creating and usually avoid in all my own personal projects) shows the work processes that a user will go through, and shows where you will need to add/update/delete data in the database, where you will need forms and processes/scripts to handle the form data.

And as stated above, you and your team need to sit down and decide on entitiy/table names, and edit the two diagrams to match.

Also, there is usually no definitive dfd, but almost always one definitive ER.
So you can't tell when a dfd is wrong, but you can tell when an ER is wrong.

Thanks drjohn... How can you tell when an ER is wrong? The only concern I had was which diagram is based on which..


Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.