EER Assignment
EER Assignment
Recently, a new social network site, Facepage, was founded. Given the current trends, the managers
of Facepage are convinced that this will be the new hype in the near future. When new users want to
join Facepage, they first need to fill in a form with their personal information (i.e., ID, name, email,
and date of birth). A user has a unique ID. Afterwards, an account is created. An account is uniquely
identified by an account number, automatically generated by the database system. The user needs to
specify which type of account he/she prefers: a business account or a personal account. A business
account is specifically designed to support companies in their marketing campaigns. When a user
decides to open a business account, he/she has to specify the name of the company. Users with a
business account pay a monthly fee. When a user opts for a personal account, he/she can keep in
touch with other Facepage users. Only personal accounts can send or receive friend requests.
Maintaining multiple accounts, regardless of the purpose, is a violation of Facepage’s Terms of Use. If
a user already has a personal (business) account, then Facepage cannot allow the user to create an
additional personal or business account for any reason.
Each account can create several pages. While each page must be administrated by exactly one
account, personal accounts can be granted privileges (e.g., to write something on the wall of friends,
adjust some information) to pages belonging to other personal accounts. For each page, the page
name and the number of visits are logged. For each account, no two pages can exist with the same
name. Users with a business profile can create a special type of page: an advertisement page. This
page records several features, like the bounce rate, the click-through rate, and the conversion rate.
The bounce rate is the percentage of visitors on the page that leave immediately. The click-through
rate is the percentage of visitors that click on a certain banner on the page. The conversion rate is the
percentage of visitors that accomplish the intended goal, like a purchase or a transaction.
Attracted by the success of Spotify, a group of students wants to build its own music streaming website
called Musicmatic. Being economists, they are unaware of the specificities of databases and have
therefore asked you to create an EER model.
A large number of songs will be made available through their website, and the following information
on each song needs to be stored: title, year, length, and genre. Also, artist information will be added,
including date of birth, name and a URL to a website (e.g., Wikipedia page) with additional information
on the artist. You can assume an artist is uniquely identified by his/her name, and that a song always
belongs to exactly one artist. The Musicmatic students also point out that songs having the same title
are possible, and only the combination of song and artist can be assumed to be unique. The database
will also have to store information on the people using Musicmatic. It was decided to only discriminate
between two types of users: the regular users who will be able to buy music, and the business users
who will deliver the content (upload the music). The following information is recorded on each user:
(unique) ID, name, and address. Business users will also have a VAT number.
The students want to offer a flexible service, and decided business users can only upload individual
songs. These songs are classified either as singles or hits, and regular users can directly buy the singles.
Otherwise, people can compose an album consisting of multiple hits (no singles). The position of each
hit in the album is stored as a track number in the database. Note that the album of regular users can
be turned into a suggestion to other regular users with similar purchasing behavior. Finally, a user can
be a regular user on some occasions (e.g., when downloading a single or album), and a business user
at other times (e.g., when uploading self-made songs to Musicmatic).