PROJECT ON SHOWMAN HOUSE Developed by Name: Iman Taiwo-Jalupon Reg. No.: R073004500609 NIIT
PROJECT ON SHOWMAN HOUSE
Developed by
Name: Iman Taiwo-Jalupon
Reg. No.: R073004500609
NIIT
Showman House
Batch Code : B070073Start Date : 23 March 2007 End Date : 6 April 2007Name of the Coordinator : Hajia BelloName of the Developer : Iman Taiwo-Jalupon
Date of submission : 8 April 2007
NIIT CERTIFICATE
This is to certify that this report titled Showman House embodies the original work done by Iman Taiwo-Jalupon in partial fulfillment of their course requirement at NIIT
Coordinator : Hajia Bello
ACKNOWLEDGEMENT
We have benefited a lot from the feedback and suggestions given to us by Hajia Bello and other faculty members.
SYSTEM ANALYSIS
System summary: showman is a large event management company of New York. The company organizes various types of events throughout the year. The events types include fashion shows, celebrity shows, chat shows, musical extravaganza, exhibitions, fairs, and charity shows.
ENTITIES
Number of entities: 6Names of entities :
1. Event Types2. Fee schedules3. Events4. Payments5. Attendees6. Employees
Attributes:The attributes of the regular entities are:
a. Event Types EventTypeID Descriptionb. Fee Schedules
FeeScheduleID EventID Fee Description FeeAmountc. Events
EventID Event Name EventTypeID Location Start Date End Date Staffing Required Event Description EmployeeID
No of Peopled. Payments
PaymentID EventID Payment Amount Payment-DT PaymentMethodID Payment Method Desc CreditCard Number Cardholders Name Creditcard ExpDate FeeScheduleIDe. Attendees AttendeeID First Name Last Name Address City State Zip Country Phone No
ATTRIBUTES
f. Employees EmployeeID First Name Last Name Title Phone No
E/R DIAGRAM
LAST NAME
TITLE
PHONE NO
MANAGES
EVENTSON
FEE SCHEDULESEMPLOYEES
FOR
EMPLOY ID
FIRSTNAME
PAYMENTS
ORGANIZES
ATTENDEES
PAYMENT-DT
PAYMENT METHOD ID
PAYMENT METHOD DESC
CREDITCARD NUMBER
CARDHOLDERS NAMEPAYMENT ID
CREDITCARD EXPIRY DATE
EVENT ID
PAYMENT AMOUNT
FEE SCHEDULE ID
BASED ON
EVENT TYPES
ATTENDEE ID
FIRST NAME LAST
NAME
ADDRESS
CITY
STATE
COUNTRY
PHONE NO
ZIP
EVENT TYPE ID
DESCRIPTION
FEE SCHEDULE ID
EVET ID
FEE DESCRIPTION
FEE AMOUNT
LOCATION
START DATE
END DATE
EVENT DESCRIPTION
EMPLOYEE ID
EVENT TYPEID
EVENT NAME
EVENT NAME
EVENT ID
STAFFING REQUIRED
No OF PEOPLE
1 M 1 1
M
1
M
1
1
1
TABLES
Numbers of Tables: 6Event Types [Entity] Fee Schedules [Entity]
Event Types
EventTypeID
Description
Events [Entity] Payments [Entity]
Fee schedules
FeeScheduleID
EventID
Fee Description
Fee Amount
Events
EventID
Event Name
Event TypeID
Location
Start DateEnd DateStaffing RequiredEvent Description
EmployeeIDNO of People
Payments
PaymentsID
EventID
Payment Amount
Payment-Dt
PaymentMethodID
Payment Method DescCreditcard Number
Cardholders Name
Creditcard ExpDate
FeeScheduleID
Attendees [Entity] Employees [Entity]Attendees
AttendeeID
First Name
Last Name
Address
CityStateZipCountry
Phone No
Employees
EmployeeID
First Name
Last Name
Title
Phone No
TABLES AFTER 1NF
The tables are already in 1NF. Event Types Fee Schedules
Event Types
EventTypeID
Description
Events Payments
Fee schedules
FeeScheduleID
EventID
Fee Description
Fee Amount
Events
EventID
Event Name
Event TypeID
Location
Start Date
End DateStaffing RequiredEvent Description
EmployeeIDNO of People
Payments
PaymentsID
EventID
Payment Amount
Payment-Dt
PaymentMethodID
Payment Method DescCreditcard Number
Cardholders Name
Creditcard ExpDate
FeeScheduleID
Attendees Employees Attendees
AttendeeID
First Name
Last Name
Address
CityStateZipCountry
Phone No
Employees
EmployeeID
First Name
Last Name
Title
Phone No
TABLES AFTER 2 NF
The tables are already in 2NF as the attributes in each table depends on the primary key.
Event Types Fee Schedules Event Types
EventTypeID
Description
Events Payments
Fee schedules
FeeScheduleID
EventID
Fee Description
Fee AmountEvents
EventID
Event Name
Event TypeID
Location
Start Date
End DateStaffing RequiredEvent Description
EmployeeIDNO of People
Payments
PaymentsID
EventID
Payment Amount
Payment-Dt
PaymentMethodID
Payment Method DescCreditcard Number
Cardholders Name
Creditcard ExpDate
FeeScheduleID
Attendees EmployeesAttendees
AttendeeID
First Name
Last Name
Address
CityStateZipCountry
Phone No
Employees
EmployeeID
First Name
Last Name
Title
Phone No
TABLES AFTER 3NF
In the payments table, the attribute PaymentMethodDesc depends on the PaymentMethodID. There we need to create a separate table called, Payment Methods.In addition, the attributes Cardholders Name and CreditCardExpDate depend on CreditCardNumber and not on PaymentID. Therefore, we need to create another table, Credit Cards. Now, the tables are:
Event Types Fee Schedules Event Types
EventTypeID
Description
Events Payments
Fee schedules
FeeScheduleID
EventID
Fee Description
Fee Amount
Events
EventID
Event Name
Event TypeID
Location
Start Date
End DateStaffing RequiredEvent Description
EmployeeIDNO of People
Payments
PaymentsID
EventID
Payment Amount
Payment-Dt
PaymentMethodID
CreditCard NumberFeeScheduleID
Attendees Employee Attendees
AttendeeID
First Name
Last Name
Address
CityStateZipCountry
Phone No
Payment Methods Credit Cards
Employees
EmployeeID
First Name
Last Name
Title
Phone No
Payment Methods
PaymentMethodID
Payment methodDesc
Credit Cards
CreditCard Number
Cardholders Name
CreditCard ExpDate
TABLES AFTER DENORMALIZATION
When we place the information about credit card in a separate table, the query performance during the generation of payment receipt will get affected due to creation of joins in every payment receipt. Therefore, for optimum performance, we denormalize and place the credit card information back into the payments table. Now, the tables are as follows:
Event Types Fee Schedules Event Types
EventTypeID
Description
Events Payments
Fee schedules
FeeScheduleID
EventID
Fee Description
Fee AmountEvents
EventID
Event Name
Event TypeID
Location
Start Date
End DateStaffing RequiredEvent Description
EmployeeIDNO of People
Payments
PaymentsID
EventID
Payment Amount
Payment-Dt
PaymentMethodID
Creditcard NumberCardholders Name
Credit card ExpDate
FeeScheduleID
Attendees Employee Attendees
AttendeeID
First Name
Last Name
Address
CityStateZipCountry
Phone No
Payment Methods
Employees
EmployeeID
First Name
Last Name
Title
Phone No
Payment Methods
PaymentMethodID
Payment methodDesc
PRIMARY AND FOREIGN KEYS
Event TypesPrimary Key: EventTypeID
Fee SchedulesPrimary Key: FeeScheduleIDForeign Key: EventID
EventsPrimary Key: EventIDForeign Keys: EventTypeID, EmployeeID, AttendeeID
Payments Primary Key: PaymentIDForeign Keys: EventID, PaymentMethodID
Payment MethodsPrimary Key: PaymentMethodID
AttendeesPrimary Key: AttendeeID
EmployeesPrimary Keys: EmployeeID
RELATIONSHIPS BETWEEN FINAL TABLES
Event Types Fee Schedule
Field Name
EventTypeID
Description
Employees Event Payments Field NameEmployeeID First NameLast NameTitlePhone No
Attendees
Payment Methods
Field Name
EventID
Event NameEventTypeIDLocation
Start Date
End DateStaffing RequiredEvent Description
EmployeeID
AttendeeIDNoOfpeople
Field Name
PaymentID
EventIDPaymentAmountCreditCard NumberCardholders NameCreditCard ExpDatePaymentMethodID
FeeScheduleIDField Name
AttendeeID
First Name
Last Name
Address
City
State
ZipCountry
Phone No
Field Name
FeeScheduleID
EventID
Fee Description
Fee Amount
Field Name
PaymentMethodId
PaymentMethodDesc