Chapter 3. Data modelling
Data is becoming more and more vital across business activities and processes.
How data is stored? Which data is stored? How do we structure data?
Design of data schemes that facilitate the storing of the data in logical and practical way.
Learning Outcomes
Define and illustrate the role of conceptual data modeling
Interpret and apply data models
Design basic ER data models
Recognize and apply abstraction mechanisms
Adopt modelling patterns for data modeling and recognize their value for data modeling
Define, understand, explain and illustrate the purpose of normalization
Detect violations of normalization forms for simple database designs
(Understand and explain dimensional modelling)
(Explain the differences between ER and dimensional modelling)
Outline
1. Conceptual data modelling
2. Entity-Relationship modelling
3. Modelling patterns
4. Normalization
5. (Dimensional modelling)
Introduction student registration
Which data is needed to be stored for a student registration system?
Student name, Student birthday , previous education, nationality, student number (assigned), ID
NN, bank account, emergency contact, address, phone number, courses (course name, course
ID, date of registration, course description), language, certificates, gender, prerequisites (degree),
professors (name, specialization, faculty, email), faculty (location, dean, name, email),…..
Attribute types (name, phonenr,..)
Entity types (Student – Professor-Faculty, ..)
Relationships
Some data are unique for a group (student – professor – course – faculty)
So we will bring some logical structure into the data, before introducing UML
Are there certain constraints or rules that you would express?
A student cannot register for all possible courses. Limited with his credits.
Only enrol in a course that match the language of the student
We will enter some checks into the data management system.
Logical check at attribute level : eg: @-teken for email
Check at relationship level: eg : 1 student can enrol in multiple courses, but there is a
maximum; course can only have 1 main teacher, …
Fadia Farhat | VUB 2023-2024 91
,Introduction : saving in separate files
Redundancy of data
Difficulty to do version control when you work in
group.
With GDPR you need to proof that not all levels of
data are accessible for everyone.
Hugh switching costs when your program ‘s data is
not in standard format
Introduction : saving in DBMS
1. Conceptual data modelling
It is important that at conceptual stage,
your model already contains all relevant
objects about which you want to store
data ! We translate those objects to
entity types.
Fadia Farhat | VUB 2023-2024 92
, The formal conceptual
modelling cycle is an
alternative representation of
how you actually go to gather
information to create such a
conceptual model.
There is lot of communication
involved. The modeler needs to
get much of understanding
about how the organisation
and system works and what the
stakeholders actually want.
In this model there are two domains :
o The first one is the real world, the actual physical world in which we live in and
o The second one = the mind
We start from a problem that exist in the real world, a business problem that we want to
solve.
We are going to create a conceptual model, so we are in the second stage of SDLC and
as an analyst you first need to observe in the real world what the problem is and base on
your observations in the real world, get an idea, a perception of what the problem
effectively is.
The analyst translate that understanding in a model, usually a data model that reflects his
understanding of the problem.
Based on the understanding of the problem in his mind, he will make that explicit into the
real world using a model. The description of the model is actually a model that we can
show to stakeholders or others in the real world.
That model should be presented to a business owner and again interpretation takes place
and this people try to derive knowledge out of the model and this leads to model
understanding of the owner/stakeholder.
Stakeholder can then analyse if his perception of the model is correct and if the
perception of the real world problem as received by the analyst is correct. The business
owner can evaluate the analyst’s perception using this description/model in the real world
and then validation takes place. This is communication to make sure that you are on the
same page and based on a process you can again update your model.
Fadia Farhat | VUB 2023-2024 93
, It is validated whether the perception and the resulting specification, descripting model of
the analyst match the real world.
This is a very iterative process where update and refinement of the model take place
ending eventually with an output for the second stage of the SLDC and that is the final
conceptual model moving on to the next stage of the SLDC, where it will be translated into
a logical model.
Why is this important?
It highlights the importance of communication between stakeholders, business owners and
analyst
It highlights the risks of misunderstanding. Can be that analyst does not understand the
model or that the stakeholder/owner does not understand the model.
Validation of the model is essential.
Examples -> see guest lectures.
Fadia Farhat | VUB 2023-2024 94