Project I FAQ

If you do not find the answer to your question below, first look for it on the class newsgroup ucb.class.cs186.
If your question still left unanswered, post it on the newsgroup, or ask it personally during our office hours.


  1. Question: Should the system allow customers to schedule future payments?
    Answer: No, assume all payments are scheduled and paid on the same day.
  2. Question: What data types can we use?
    Answer: You can use any type PostgreSQL provides by default. The list is available here in Table 3-1.
  3. Question: How do we calculate average daily balance?
    Answer: For each day in the, sum the running balance as of the close of business and then divide by the number of days in the month. Note, our explanation is not neccessarily the best implementation, but this is the value we are looking for.
  4. Question: How do we turn in Phase I?
    Answer: There will be a box on the second floor of Soda.
  5. Question: Does the model have to show the limit of 2 customers per account?
    Answer: We prefer that you model that constraint in your ER diagram. However, if you are unable to do so, you should specify the constraint in free text, together with all the other constraints that are not captured in your model.
  6. Question: Can the ER diagram have "limit 2" on an edge? 
    Answer: No, the modeling we have taught does not allow that.
  7. Question: Does the online bill paying PIN = Password? 
    Answer: Yes.
  8. Question: Do no-online bill payers have payees? 
    Answer: Maybe, see next question.
  9. Question: What if a customer once was an online bill payer, and then disabled it, and then renabled. Should it remember the payees? 
    Answer: Either way... it would be nice if it did, but it doesn't have to.
  10. Question: Can transfers be modeled as withdraw/deposit? 
    Answer: The model must permit a statement to show some transaction were transfers (and where the money went).
  11. Question: Does tax payer id = customer id? 
    Answer: Customer id can be unique id with no meaning or the same as a person's tax payer id. Their tax payer id is their SSN.
  12. Question: Account status, what is that?
    Answer: Your model should be able to answer questions about whether a particular account is open or closed, and whether a customer has any open accounts (this may or may not need to be directly represented).
  13. Question: Should we delete an account when it closed?
    Answer: No, the bank should keep a record of old transactions, this can be stored separately if you so desire.
  14. Question: Can you transfer money to an outside bank? 
    Answer: No, we assume all transfers are within our bank.
  15. Question: Do all customers have a password?
    Answer: Yes, and it is the same as their pin (see question 7).
  16. Question: When considering the 10 entity limit, should we count all the entities in a class hierarchy (is-a relationship) as separate entities?
    Answer: No, you should count all the entities in a class hierarchy as one entity.
  17. Question: Can an ISA subclass have no attributes? 
    Answer: Yes. As long as there is a good reason for modeling this subclass (e.g. it participates in a relationship).
  18. Question: Do we have to model the bank employees? Do we need to worry about security issues?
    Answer: No. Just assume that only authorized bank employees get access to the restricted functions of your system.
  19. Question: Do payees need to be cutomers as well?
    Answer: No.


  1. Question: Can we use inheritance?
    Answer: No, although PostgreSQL provides for inheritance it is not standard. You can use ISA hierarchies in your ER model, just convert to normal relational tables.