Database Project #1 for a Museum Database: Conceptual Data Design using E-R.
The OldCity museum, which owns several millions paintings, has asked you to do the conceptual design of a database for the following information requirements.
Data about each painting include a unique name (PK), year completed, year acquired, estimated value, a “school” (e.g. Impressionism). Each painting was created by one or several painters, although the painters of some paintings are unknown. Due to shortage of display rooms, the least valuable paintings are kept for long period of times in storage rooms, whereas the most valuable ones are shown in display rooms. A room is identified by a unique room number and a size (in square feet).
Some of the OldCity museum paintings may be on loan to associate museums, typically for several months, with a specified return date. Each associate museum has one curator, with whom the OldCity museum negotiates loaned paintings.
Customers of the OldCity museum consist of members and non-members. Members may have one or several specialties (for example impressionism or Cubism). Members may be regular members or VIP members (members having reached some donation level). A regular member may serve as a docent at certain dates and times in specific rooms to explain the room paintings to visitors. The OldCity museum organizes gala nights. A gala night honors one living painter (on a given date, there may be several gala nights for different painters; a painter may not have more than one gala night on a given date). Only invited VIP members can attend a gala night. On a few specific dates and times, “Special Days” are organized to entice non-members to become members Non-members need to register to be invited to such Special Days.
Data for painters: Painter_Id (PK), Name, date of birth, date of death, country of birth
Data for all Customers: CustID (PK), name, birthdate, gender
Data for curators: CurID (PK), name, birthdate
Data for “associate museums” : unique museum name (PK), city, country
Deliverables:
A (8/10) An Entity-Relationship Diagram (ERD)
B. (2/10) preceded with answers to the following questions. You may want to review your answers as you work on the ERD.
1. Is Customer at the top of a generalization hierarchy. Justify your choice.
2. Is Painting at the top of a generalization hierarchy. Justify your choice.
3. “although the painters of some paintings are unknown”. What do you do about this information? Justify
4. How do you show the information about “gala nights”? Justify.
5. “A regular member may serve as a docent at certain dates and times in specific rooms to explain the room paintings to visitors.” What do you do about this information? Justify
Presentation Guidelines
Try to draw the ERD using an appropriate software. If you draw by hand, please use a ruler. If you scan, make sure the resulting drawing has the correct orientation. No credit otherwise.
Use only the “Crow’s foot” conventions, as in Koster.
A few reminders about ERDs.
1. Underline the primary keys (solid line). Each entity type must have a PK, except “children” of generalization hierarchies, weak entity types, and associative entities.
2. Each relationship must show a unique name.
3. Do not use ternary relationships
4. If your ERD has generalization hierarchies, they must be oriented as in Koster.
5. Completeness is more important than simplicity. Do not simplify, if this results in the loss of information.
6. Do not show foreign keys