Domain Understanding and Modeling

Week 6 - Entity Relationship Diagram

  • Purpose of making ERD
  • ERD Notation
  • How to make ERD
  • Normalization rules - 1st to 3rd


Slides in English:

Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2024/PA116/um/en/DUM_07_ERD-ENG.pdf


Recorded lecture in Czech:

Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2024/PA116/um/vi/84982684/


Seminar briefing in English:


Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2024/PA116/um/seminar_briefings/Data_Dictionary___ERD.mp4


Things to remember regarding ERD

  • ERD is a structral and static representation of the system = not expected to change later
  • Memories in DFD are to be found in ERD
  • ERD only represent objects (and their attributes) that we do store information about (unlike UML Class diagram)
  • Go back to the verbal description of your system to seek objects mentioned by your client - do we store information about them?
  • Data fields in your Screen wireframes must be consistent with entity sorts and their attributes in ERD


How to model inheritance in ERD? 


Things to remember regarding Data dictionary

  • Data dictionary is a different way how to store information about the data we collect
  • DD reminds of grammar (check slides to refresh the notation)
  • Usually, it is more understandable for layman than ERD
  • We do it to make sure what people mean when they mention some object (e.g. a "client" mentioned by an accountant department may not be the same as "client" mentioned by sales department --> does it have the same attributes?)


Seminar tasks:

  1. Create a data dictionary for 5 objects   [1 pt]
  2. Create an ERD for your system [4 pts]
Do not forget

  • Apply 1st - 3rd normalization rules
  • Get rid of M:N relationships 
  • Get rid of 1:1 relationships