Principles of database design homework 1

Design an E-R diagram to represent the information needed in the scenario described by the prompt at the end of the assignment.

  • Be sure to include all entity sets, relationships, and attributes which are relevant.
  • For every entity, underline its key.
  • If there is a weak entity, use an appropriate symbol and include an appropriate relationship which identifies that weak entity and use the appropriate symbol for that.
  • Be sure to use crow's feet for every relationship.
  • For each relationship, write out sentences which go along with the crow's feet. For each two-way relationship, there should be two sentences, one for each direction. (For example: "Every player plays for precisely one team. Every team has one or more players which play for it.") A three-way relationship should have three sentences, etc. If two sentences are identical, please write them twice anyway.
  • These is no one correct answer. Every E-R diagram which is a valid way to diagram the information will be accepted. However, points will be taken off if
    1. information described in the prompt as needing to be stored is not represented

in the E-R diagram

  1. for improper use of symbols or crow's feet
  2. for missing crow's feet
  3. for missing sentences
  4. for mismatches between sentences and crow's feet
  5. for failure to indicate a key
  6. for poor choice of key
  7. if a very large quantity of unneeded data is included.

Assignment may be drawn on paper and handed in or turned in electronically as Dia files, pdfs, or image files. Do not submit Visio or Draw files as I do not have a way to read them. Do not submit Word or Powerpoint files because the drawings often mess up cross-platform. You may use those programs, but please export to pdf or image files (jpeg, bmp, png, gif).


A factory is trying to keep track of its machinery and supplies. They would like you to design a database which will help them to do this. The factory produces several different items. Each item has a type, a color, and they have a certain quantity of that item which they have already produced. They have a several different machines. Each machine produces one item from a set of raw materials. They want to keep track of which machines use which raw materials and produce which items, how much of each different type of raw material they have, and how many of each item they have produced. In addition, they would also like to know how old each of their machines are and when the last time each machine had a breakdown was.