Modelling Recap

Author

Dr. Bartosiak

Database modelling

Consider the following scenario. We will model his database step by step.

You are helping the head of an academic society (e.g., the Association for Information Systems) keep track of current data about members of the association (she does not care about historical data). She tells you that researchers are associated with one institution (university, research lab, etc.). Each researcher has one or more specific areas of research interests. Also, she tells you that she wants to know the team composition of research teams for teams funded by the Association. Team membership and collaboration is not mutually exclusive since academic research is best performed in teams and academics work on many projects at the same time.

In this text, we need to identify each phrase that gives us hints on what is expected in our database and design that element. For example, here is the first one:

You are helping the head of an academic society (e.g., the Association for Information Systems) keep track of current data about members of the association (she does not care about historical data). She tells you that researchers are associated with one institution (university, research lab, etc.). Each researcher has one or more specific areas of research interests. Also, she tells you that she wants to know the team composition of research teams for teams funded by the Association. Team membership and collaboration is not mutually exclusive since academic research is best performed in teams and academics work on many projects at the same time.

researchers are associated with one institution (university, research lab, etc.)

You are helping the head of an academic society (e.g., the Association for Information Systems) keep track of current data about members of the association (she does not care about historical data). She tells you that researchers are associated with one institution (university, research lab, etc.). Each researcher has one or more specific areas of research interests. Also, she tells you that she wants to know the team composition of research teams for teams funded by the Association. Team membership and collaboration is not mutually exclusive since academic research is best performed in teams and academics work on many projects at the same time.

Each researcher has one or more specific areas of research interests.

You are helping the head of an academic society (e.g., the Association for Information Systems) keep track of current data about members of the association (she does not care about historical data). She tells you that researchers are associated with one institution (university, research lab, etc.). Each researcher has one or more specific areas of research interests. Also, she tells you that she wants to know the team composition of research teams for teams funded by the Association. Team membership and collaboration is not mutually exclusive since academic research is best performed in teams and academics work on many projects at the same time.

the team composition of research teams for teams funded by the Association

Warning

You might be tempted to finish here, as your model already looks good. But let’s have a look at the scenario again. There is more info there.

You are helping the head of an academic society (e.g., the Association for Information Systems) keep track of current data about members of the association (she does not care about historical data). She tells you that researchers are associated with one institution (university, research lab, etc.). Each researcher has one or more specific areas of research interests. Also, she tells you that she wants to know the team composition of research teams for teams funded by the Association. Team membership and collaboration is not mutually exclusive since academic research is best performed in teams and academics work on many projects at the same time.

Team membership and collaboration is not mutually exclusive

Hints for Database modelling

  • The model will expand and contract

  • Invent identifiers where necessary

  • Identifiers should have only one purpose – identification

  • Single instance entities are OK

  • Label relationships to avoid ambiguity

  • Select names carefully

  • Synonyms—different words have the same meaning

    • Get clients to settle on a common word or use views
  • Homonyms—same word has different meanings

    • Clarify to avoid confusion
  • Naming associative entities

    • Concatenate entity names if there is no obvious real world name

Images and GIFs Disclaimer: Some of the images and GIFs used on this website are not owned by me. They are used for educational and illustrative purposes only. All rights belong to their respective owners. If you believe any content violates copyright, please contact me for prompt removal.

© 2025. All Rights Reserved.
Enabled by Dr. Marcin Bartosiak