Entities for conceptual design

126 views Asked by At

I just started playing around with a conceptual design and I'm doing some simple examples just to get some good practice. Besides doing Book examples, I started asking friends what they do at work and that way I try to practice. Anyways, all I care about is the conceptual part right now that will have an entity and cardinality.

You can call this database a radio station/church or any small company that presents their own program to whoever in the community. Each presenter has their own role of course. This company has listings of different things like booking,billing etc...

My question is, do these entities even make sense if you look at this conceptual design? Is it smart to evolve this database around the program that they present to the public ? I know there are a lot things here that are wrong but what are some of the things that I could have done differently ?

If anybody has great links of conceptual modeling I would appreciate it...

edit: I will update the model

2

There are 2 answers

1
hashbrown On BEST ANSWER

OP asked,

Do these entities even make sense if you look at this conceptual design?

Yes, it does. From your conceptual diagram we are able to understand how entities are related to each other and their cardinality.

Is it smart to evolve this database around the program that they present to the public?

I interpret your question as "Is this design able to represent various real scenarios for which it is created?" To answer this question, I will really need to know all of those possible cases that may occur in future. From what I gathered by asking questions above, I believe the model can sustain your requirements quite well. Still, I would request you to consider following points:

  • Booking should ideally be linked with your Program and not to your Account. If you link booking to Account and try to create a 3NF model, you will lose the correspondence between booking and program

  • Account and Role both can (and should) exist as they are two fundamentally different entities. But if you can not (or need not) capture data for Account in the system, you may as well do away with your Account entity. You can still relate roles with the program as desired.

  • If Programs are composed of Items, items should be linked with Program rather than Role

  • Is there any inherent relation with Equipment and Studio? Like, certain equipments are only available in certain Studios? If yes, you may want to link equipment directly with studio.

I believe one of the goals of your conceptual model is to capture the business information in detail. Ensure that you have done so correctly in this level and everything will look great in the later part of the design!

0
Walter Mitty On

Two comments:

First, I've always liked Database Answers as a source for models. Here is the link:

http://www.databaseanswers.org/data_models/

There are over a hundred models available here, for various industries. You may have to start with one of these and modify it to fit your circumstances.

Second, my mental model to the terrain is different from yours, and there's a corresponding difference in terminology. I use the conceptual model to capture analysis, not design. In other words, my conceptual model describes my understanding of the subject matter and the information the database is required to retain. Not my attempt to design a solution to the problem.

I use a second model, the logical model to reflect my general design. The logical model is specifically relational, provided the target database is intended to be relational.

There's a third model, the physical model, that conatins more design details. This one is specific to a particular DBMS, such as Oracle. It also reflects tweaks intended to supoprt the expected volume and traffic and to enable good performance.

This is slightly different from the ANSI-SPARC three tier model, which you can look up.

If you accept the idea that the conceptual model is the result of analysis and not design, then the answer to your question about whether your model makes sense is simply: I don't know. I'm not lookng at your circumstances. Perhaps someone who has already built a database for a church/radio station can comment, based on their circumstances.