Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Consider the design of a database for a web site that allow people to share sunset images. Each image is identified by an image ID
Consider the design of a database for a web site that allow people to share sunset images. Each image is identified by an image ID that will be generated automatically by the system, the URL of the image, and a list of tags for the image (each tag is a low-case word), a description of the image, and a timestamp recording when the image is posted by a user. Only registered users can post, share, and view images at the website. Each registered user is identified by a unique username that must be an email, a password, a first name, a last name, the gender, and his/her birthday. After a user sign into the system, the user will see his Feed Page. In that page, the user can post one sunset image after another, which will be automatically displayed one after another in reverse-chronological order in the Feed Page. Therefore, the last posted image will be displayed first. A user can also follow other users by browsing or searching the Community Page. The Profile Page of a user will display all the information of a user except the password, and the number of followers and the number followings, respectively (see the Rumble app as an example). In addition, the followers and followings are two links that link to the corresponding users, that allow one to follow or unfollow users. The follow or unfollow button will be shown depending on which button is suitable for that corresponding user. If user A follows user B, then after A signs into the system, A will see his/her Feed Page, which displays all the images posted by A as well as by B, ordered in reverse-chronological order. If A follows multiple users, then all the images posted by the followings will be displayed in As Feed Page. The Community Page has a search field following by a list of all the users in the system, which is ordered alphabetically by last names and first names. The search field allows one to search users either by first name, or by last name, or by both. A user can give a like to each posted image including an image posted by herself/himself, but not more than one like. A user can also cancel his like action if the user changes mind. A user can also insert/delete/modify at most one comment for each image. On a particular day, a user can post at most five images. On a particular day, a user can give at most 3 likes. The system has a distinguished user called root whose username is root (this is the only username that is not an email). Based on this project description,
1) Draw an E-R diagram for the system, in particular, use arrows or thick lines to represent constraints appropriately. Write down your assumptions and justifications briefly and clearly. Please note some descriptions of the project are regarding interfaces and functionality, the ER model only needs to be concerned about the data modeling part.
2) Translate the above E-R diagram into a relational model, i.e., write a set of CREATE TABLE statements. In particular, specify primary key, foreign key and other constraints whenever possible.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started