The ERD entity and relationship attributes:
Room Service |
---|
time ordered |
date ordered |
time to deliver |
date to deliver |
room number |
employee ID |
comments |
item number |
address = string
* A non key attribute of entity Guest, having a maximum length of 256
* characters. This attribute is not needed when making a reservation
* to stay at the hotel.
* Data flow in DFD's
arrival date = date
* A non key attribute of the relationship In Room. The room booked
* in date.
* Data flow in DFD's
Billed for = @invoice number + @room number
* This is a 1:Mc relationship that relates an instance of entity
* Invoice to an instance of entity Room. This indicates which room
* an invoice is for.
Booked by = @guest ID + @employee ID + @room number
* This is a 1:Mc:Mc relationship. It relates an instance of entity
* Guest to an instance of entity Employee and entity Room. It
* indicates which employee booked the room for the guest.
Charged to = @guest ID + @invoice number
* This is a 1:M relationship that relates an instance of entity
* Invoice to an instance of entity Guest. This relationship indicates
* who an invoice should be charged to.
check out date = date
* A non key attribute of the relationship In Room. The date the
* occupant of the room will be checking out.
* Data flow in DFD's
city = string
* A non key attribute of entity Guest. Maximum length is 256
* characters. Allowed to be null when booking.
* Data flow in DFD's
comment = string
* A non key attribute of weak entity Room Service. Can be up to 100
* characters long. It is used to provide an special requests or remark.
* Data flow in DFD's
confirmation number = integer
* Identifies a unique reservation. It is a non key attribute of the
* relationship In Room.
country = string
* A non key attribute of entity Guest. Maximum 50 characters long.
* Allowed to be null when booking.
* Data flow in DFD's
Credit Cards = {Credit Card}
* Data Store in DFD's. Corresponds to the entity "Credit Card".
credit card = {Credit Card}
* Data flow in DFD's. Corresponds to an instance from the data store "Credit Cards".
credit cards = {Credit Card}
* Data flow in DFD's. Corresponds to zero or more instances of the data store "Credit Cards".
Credit Card = @credit card type + @credit card name
* A entity which contains a credit card name and a unique integer
* identifying the credit type name.
Credit Card of = @guest ID + @credit card type
* This is a 1:Mc relationship relates an instance of Guest to an
* instance of Credit Card. It indicates the type of credit card.
credit card expiry = date
* A non key attribute of entity Guest. This is the expiry date of
* the credit card.
* Data flow in DFD's
credit card name = name
* A non key attribute of entity Guest. This is the name that is
* on the physical credit card.
* Data flow in DFD's
credit card number = string
* A non key attribute of entity Guest. Maximum length is 256
* characters.
* Data flow in DFD's
credit card type = integer
* A key attribute of entity Credit Card. It uniquely identifies each
* credit card type.
* Data flow in DFD's
date = string
* A typed defined as a string of 10 characters, holding a date.
* it is of the format YYYY/MM/DD
* Data flow in DFD's
date ordered = date
* A key attribute of the weak entity Room Service. It gives the
* date of when the particular room service was requested
* Data flow in DFD's
date to deliver = date
* A non key attribute of the weak entity Room Service. Informing
* the hotel, as to when the particular requested room service is
* to be provided/delivered
* Data flow in DFD's
Delivered by = @employee ID + @room number + @date ordered +
@time ordered
* This is a 1:Mc relationship that relates an instance of the weak
* entity Room Service to an instance of entity Employee. It indicates
* which employee delivered the room service.
discount name = string
* A non key attribute of entity Guest. Maximum 256 characters
* long. Allows the user to enter the reason for giving discount
* Data flow in DFD's
discount rate = flate
* A non key attribute of entity Guest. Has 2 decimal places
* Data flow in DFD's
duration of stay = integer
* A non key attribute of the relationship In Room. It is 3 digits
* long, holding the number of days the guest will stay for. Its
* from 1 to 999 days.
* Data flow in DFD's
employee = {Employee}
* Data flow in DFD's. Corresponds to single instance in Employee Data Store
employees = {Employee}
* Data flow in DFD's. Corresponds to zero or more instances of the entity "Employee"
Employee = @employee ID + employee first name + employee last name +
security type + password
* This entity contains information of all employees working for the
* hotel.
Employees = {Employee}
* Data Store in DFD's. Corresponds to zero or more instances of the
* entity "Employee".
employee first name = name
* A non key attribute of entity Employee, which contain employee's
* first name
* Data flow in DFD's
employee id = integer
* A key attribute of entity employee. It uniquely identifies each
* instance of entity employee.
* Data flow in DFD's
employee last name = name
* A non key attribute of entity Employee, which contain employee's
* last name.
* Data flow in DFD's
Fees = {Fee}
* Data store in DFD's. Corresponds to the entity "Fee".
fee = {Fee}
* Data flow in DFD's. Corresponds to an instance in data store "Fees".
fees = {Fee}
* Data flow in DFD's. Corresponds to zero or more instances in data store "Fees".
Fee = @item number + fee description + fee cost
* This entity stores the different room services offered (ie. food
* item, wake up calls). It contains a description and cost for
* each item.
Fee of = @item number + @room number + @date ordered + @time ordered
* This is a 1:Mc relationship that relates an instance of the weak
* entity Room Service to an instance of entity Fee. It indicates
* which service was ordered and what it will cost.
fee description = string
* This item describes the type of fee. it is a string 50 characters
* long.
* Data flow in DFD's
fee cost = real
* This item gives the cost for a fee. It has a range of 0.00 to no
* upper bound.
* Data flow in DFD's
food order = float
* A non key attribute of Invoice. Carries up to 2 decimal places.
* This is the total sum for the food ordered.
* Data flow in DFD's
Guests = {Guest}
* Data Store in DFD's. Corresponds to the entity "Guests".
Guest = @guest ID + guest first name + guest last name + address +
city + province/state + postal code/zip code + photo ID +
discount name + discount percentage + phone number
* Is an entity that stores all the information pertaining to a guest
* staying at the hotel. Most of the information is obtained when a
* guest checks into the hotel.
guest = {Guest}
* Data flow in DFD's. Corresponds to an instance in Data Store "Guests".
* Data flow in DFD's. Corresponds to zero or more instances in Data Store "Guests".
guest ID = integer
* A key attribute of the entity Guest. It is 6 digits long, and has
* a fixed format.
* Data flow in DFD's
guest first name = name
* A non key attribute of entity Guest, gives first name of a person
* staying at the hotel.
* Data flow in DFD's
guest last name = name
* A non key attribute of entity Guest, gives last name of a person
* staying at the hotel.
* Data flow in DFD's
GST = float
* A non key attribute of entity Invoice. Carries up to 2 decimal
* places. GST charged.
* Data flow in DFD's
hotel tax = float
* A non key attribute of Entity Invoice. Carries up to 2 decimal
* places. Stores the tax (percentage) for hotel usage.
* Data flow in DFD's
Invoices = {Invoice}
* Data store in DFD's. Corresponds to the entity "Invoice".
invoice = {Invoice}
* Data flow in DFD's. Corresponds to an instance from Data Store "Invoices"
invoices = {Invoice}
* Data flow in DFD's. Corresponds to zero or more instances from Data Store "Invoices"
Invoice = @invoice number + room number + employee ID + date +
time + paid + payment method + total bill + food orders + movie
ordering + telephone vill + miscellaneous charge + hotel
tax + GST + guest ID
* This entity holds the information contained on an invoice, which
* is issued when the guest checks out.
invoice number = integer
* An key attribute of entity Invoice. It uniquely identifies each
* instance of entity Invoice. Its a 6 digit number that ranges from
* 1 to the number of instances of entity Invoice.
* Data flow in DFD's
In Room = @guest ID + @room number + confirmation number + arrival
date + duration of stay + check out dat + number of
occupants
* This is a relationship between entities Guest and Room
Issued by = @invoice number + @employee ID
* This is a 1:Mc relation that relates an instance of entity Invoice
* to an instance of entity Employee. This relationship indicates
* which employee generated an invoice.
Item number = integer
* A key attribute of entity Fee. It identifies each fee with a
* unique id. Its bounded by the number of instances of Fee. It is
* represented by a 5 digit number.
* Data flow in DFD's
miscelaneous charge = float
* A non key attribute of entity Invoice. Carries up to 2 decimal
* places. The sum of cost for anything damaged or any thing charged
* to the guest that is not on the fee list.
* Data flow in DFD's
movie ordered = float
* A non key attribute of entity Invoice. Carries up to 2 decimal
* places. The sum for the movie ordered.
* Data flow in DFD's
name = string
* A type, defined to have a maximum length of 256 characters,
* contains no space, only alphabetical characters allowed with
* exception of apostrophe.
* Data flow in DFD's
number of occupants = integer
* A non key attribute of relationship In Room. It is 1 digit long,
* representing the number of occupants in a room. Bounded between
* the values of 1 and 9
* Data flow in DFD's
paid = ["true" | "false"]
* A non-key attribute of entity Invoice. It indicates wether the Invoice
* has been paid or not.
payment method = string
* A non key attribute of entity Invoice. Denotes the method of
* payment
* Data flow in DFD's
phone number = string
* This is a non-key attribute of entity Guest. It contains the contact
* phone number for the guest. Its of the form XXX-XXX-XXXX. The first
* three X's being the area code.
* Data flow in DFD's
province/state = string
* A non key attribute of entity Guest. Maximum length is 256
* characters. Allowed to be null when booking. Length given is
* to accomodate full name rather than abbreviations.
* Data flow in DFD's
postal code/zip code = string
* A non key attribute of entity Guest. Maximum length is 256
* characters. Allowed to be null when booking
* Data flow in DFD's
Rooms = {Room}
* Data Store in DFD's. Corresponds to the Entity "Room".
room = {Room}
* Data flow in DFD's. Corresponds to an instance from Data Store "Rooms".
rooms = {Room}
* Data flow in DFD's. Corresponds to zero or more instances from Data Store "Rooms".
Room = @room number + room type
* This entity represents a room in the hotel. It contains a room
* number and the room type.
room number = integer
* This key attribute of entity Room contains the room number.
* Its a 3 digit number ranging from 1 to 999.
* Data flow in DFD's
room rate = real
* This non-key attribute of entity Room Type indicates the cost of
* the room type for one night. Its ranges from a value of 0.0 to
* 1000.0.
* Data flow in DFD's
Room Service = @room number + @date ordered + @time ordered +
comment + date to deliver + employee ID + item
number + time to deliver
* A weak entity containing all the services requested by a room,
* ie. wake up calls, food orders...
Room Type = @room type id + room name + room rate
* This entity contains the room type name and cost for each room type.
Room Types = {Room Type}
* Data Store in DFD's. Corresponds to the Entity "Room Type".
room type = {Room Type}
* Data flow in DFD's. Corresponds to an instance from Data Store "Room Types".
room types = {Room Type}
* Data flow in DFD's. Corresponds to zero or more instances from Data Store "Room Types".
room type id = integer
* This key attribute of entity Room Type uniquely identifies each
* instance of entity Room Type. Its a 2 digit number from 1 to 99.
* Data flow in DFD's
room type name = string
* This non-key attribute of entity Room Type gives the name for
* each room type. Its a string of 50 characters in lenght.
* Data flow in DFD's
Room Type of = @room number + @room type
* This is a 1:Mc relationship that relates an instance of Room
* to an instance of Room Type. This relationship gives the room
* type for each room.
Securities = {Security}
* Data Store in DFD's. Corresponds to the Entity "Security".
security = {Security}
* Data flow in DFD's. Corresponds to an instance from Data Store "Security".
securities = {Security}
* Data flow in DFD's. Corresponds to zero or more instances from Data Store "Security".
Security = @security type + security name
* This entity contains a security level. Each security
* level is given a unique id and a name. All employee's are assigned a
* security level.
Security for = @employee ID + @security
* This is a relationship that relates an instance of Employee to an
* instance of Security. The relationship is 1:Mc. It indicates the
* security level for each employee.
security name = string
* A non key attribute of entity Security. It can be up to 25
* characters long, that is descriptive of employee's job
* classification.
* Data flow in DFD's
security type = integer
* A key attribute of the entity Security. The value of security type
* is bounded byt he number of items in the table, maximum value will
* be 100.
* Data flow in DFD's
Sign-in by = @guest ID + @employee ID + @room number
* This is a 1:Mc:Mc relationship, that relates an instance of entity
* Guest to an instance of entity Employee and entity Room. It
* indicates which employee signed a guest into a room.
Sign-out by = @guest ID + @employee ID + @room number
* This is a 1:Mc:Mc relationship, that relates an instance of entity
* Guest to an instance of entity Employee and entity Room. It
* indicates which employee signed a guest out of a room.
telephone bill = float
* A non key attribute of entity Invoice. Carries up to 2 decimal
* places. This charge is not calculated by the system, but rather is
* provided by an outside source.
* Data flow in DFD's
time ordered = time
* A key attribute of weak entity Room Service. Holds the time at
* which a particular room service was requested.
* Data flow in DFD's
time to deliver = time
* A non key attribute of weak entity Room Service. Informing the hotel as
* to what time the particular room service is to be provided/delivered
* Data flow in DFD's
time = string
* A type defined as a string of 8 characters, holding a time. It is
* of the format HH:MM:SS.
* Data flow in DFD's
total bill = float
* A non key attribute of entity Invoice. Carries up to 2 decimal
* places. This is the final and total sum amount for which the
* departing guest must pay.
* Data flow in DFD's
type of photo ID = string
* A non key attribute of entity Guest. Maximum 256 characters in
* length. Consisting of a description of the kind of ID and could
* include number that identifies the card as well. It is obtained
* when guest checks in to hotel.
* Data flow in DFD's