![Page 1: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/1.jpg)
CSC 3800 Database Management Systems
Time: 1:30 to 2:20 Meeting Days: MWF Location: Oxendine 1237B
Textbook: Databases Illuminated, Author: Catherine M. Ricardo, 2004, Jones & Bartlett Publishers
Fall 2009
Project ExampleBeta University
Dr. Chuck Lillie
![Page 2: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/2.jpg)
General DescriptionGeneral DescriptionDonations from variety of donors.Collects over $10 million per yearDonors include:
Graduating seniorsAlumniParentsFacultyAdministratorsStaffCorporationsFriends
100,000 potential donorsSuzanne Hayes is director
Raising fundsKeeping track of funds
Create database to help with the two tasks
![Page 3: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/3.jpg)
Basic OperationsBasic OperationsFundraising each year from July 1 to
June 30Each fall, all potential donors receive
personalized letters.◦ Contain reply envelopes and forms
Amount donated Payment methods
Single check Deferred payments over year Credit card number to pay in lump sum
Contact information of rmatching funds donor
Thank you letter is sent to each donorFollow-up to corporate matching funds
donor
![Page 4: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/4.jpg)
Basic Operations (cont)Basic Operations (cont)Fundraising events
◦ Fall carnival◦ Holiday dinner dance◦ Spring golf outing◦ Other events
Each class year has coordinatorLetters sent to reunion class members
asking for donationsSpring phonebankCoordinator call each who has not
donated by May◦ Suzanne makes calls coordinator cannot
![Page 5: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/5.jpg)
Basic Operations (cont)Basic Operations (cont)Donations categorized by
◦ Groups
◦Year of donor◦Size
10 donor circles President over $50,.000 Platinum over $25,000 Etc. Under $100 not listed in a circle
Annual donors list published and mailed to all donors and potential donors◦ Category◦ Year◦ Donor circle◦ Does not list amount of each donor
![Page 6: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/6.jpg)
Information NeedsInformation NeedsMailing list on word processor
◦Would like to add line about each donor’s amount given the previous year
Spreadsheet keeps track of pledges and donations◦No way to track monthly pledges◦Use database to send late reminders
to monthly pledges over one month late
![Page 7: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/7.jpg)
Information Needs (cont)Information Needs (cont)Information on letter form
◦Name, address, category (senior, alumnus/alumna, parent, administrator, etc.), year of graduation, date of pledge/gift, amount of pledgted, amount enclosed, payment method, number of payments chosen, credit card number, matching corporation name, matching corporation address, name of spouse (if matching gift is from spouse’s employee).
Have similar information captured in phone calls
![Page 8: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/8.jpg)
Information Needs (cont)Information Needs (cont)Reports
◦Annual report to donors◦Monthly report◦Payments due report◦Event report◦Class representative contact list◦Phonothon volunteer contact list
![Page 9: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/9.jpg)
List of AssumptionsList of AssumptionsInitial List of Assumptions
◦ 1. Names of donors are not unique, but names of volunteers and matching corporations are unique.
◦ 2. A person may belong to more than one category. For example, a parent may also be an alum.
◦ 3. A person may have more than one degree from the university, so he or she may have more than one graduation year. That person’s gift is counted in the totals and percentages for all his or her graduation years.
◦ 4. There is exactly one class representative for each graduation year.
◦ 5. A potential donor receives a call from at most one class representative or volunteer each fund year.
◦ 6. A donor may give more than one pledge during a fund year.
![Page 10: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/10.jpg)
List of AssumptionsList of Assumptions◦ 7. A person may attend several fundraising events
within a year. ◦ 8. It is desirable to know which pledges are due to a
fundraiser, but not necessary to know which are due to a class coordinator or volunteer’s call.
◦ 9. All pledges for a given fund year are collected within that year.
◦ 10. Matching gifts are paid by corporations in a single payment within the same fund year as the donor’s gift.
◦ 11. At the end of each fund year, the entire database is archived, and a new database for the new fund year is created. The database name identifies the year.
◦ 12. All addresses consist of street, city, state, zipcode or postal code, and country.
◦ 13. All telephone numbers consist of country code, area code, and number.
![Page 11: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/11.jpg)
Data Dictionary DesignData Dictionary Design
List data dictionary items with definitions
See Data Dictionary List
![Page 12: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/12.jpg)
Additional AssumptionsAdditional AssumptionsAdditional Assumptions (added for ER
diagram)◦ 14. Payment is a weak entity, dependent on Pledge.◦ 15. All payments are due the first of each month, so
the dateDue for a next payment on an unfinished pledge is always the first of the next month.
◦ 16. The Payment Due report program calculates the desired data from the stored data.
◦ 17. At most two corporations match a donation, the donor employer and the spouse’s employer.
◦ 18. There are never two payments received for the same pledge on the same day.
◦ 19. Since a potential donor may have more than one graduationYear, the donor may be related to more than one class rep.
![Page 13: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/13.jpg)
Cross Reference ChartCross Reference ChartSee Beta U Cross Chart
![Page 14: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/14.jpg)
E-R DiagramE-R Diagram
See Beta U AttributesSee Beta U E-R Diagram
![Page 15: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/15.jpg)
Non-Normalized RelationsNon-Normalized RelationsPotential Donor(donorId, firstName,
lastName, street, city, state, zip, country, countryCode, areaCode, telNumber, donorCircle, spouseName, amountDonatedLastYear, amountPledgedThisYear, amountPaidThisYear,volunteerName)
Functional Dependencies◦ donorId → all attributes◦ country → countryCode◦ {country,zip} → city, state◦ amountPledgedThisYear → donorCircle
![Page 16: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/16.jpg)
Non-Normalized RelationsNon-Normalized Relations
Donor-Categories(donorId, category)
Functional Dependencies◦has no non-trivial FDs
MatchingCorp(matchCorpName, street, city, state, zip, country, countryCode, areaCode, telNumber)
Functional Dependencies◦{country,zip} → city, state◦country → countryCode
![Page 17: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/17.jpg)
Non-Normalized RelationsNon-Normalized RelationsEvent(eventName, eventDate,
eventTime, eventLocation, eventOrganizer, eventTotalPledged eventTotalPaid)
Functional Dependencies◦ eventName → all attributes
ClassRep(graduationYear, firstName, lastName, street, city, state, zip, country, countryCode, areaCode, telNumber)
Functional Dependencies◦ graduationYear → all attributes◦ {country,zip} → city, state◦ country → countryCode
![Page 18: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/18.jpg)
Non-Normalized RelationsNon-Normalized RelationsVolunteer(firstName, lastName, street, city,
state, zip, country, countryCode, areaCode, telNumber)
Functional Dependencies◦ {firstName, lastName} → all attributes◦ {country,zip} → city, state◦ country → countryCode
Pledge(pledgeNumber, pledgeAmount, pledgeDate, numPaymentsChosen, pledgeAmountPaid, numPaymentsMade, donorId, eventName)
Functional Dependencies◦ pledgeNumber → all attributes
![Page 19: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/19.jpg)
Non-Normalized RelationsNon-Normalized RelationsPayment(pledgeNumber, datePaid, amount
Paid, paymentMethod, creditCardType, credit Card Number, matchingCorpName)
Functional Dependeny◦ {pledgeNumber, datePaid} → all attributes
PotentialDonor-Event(donorId, eventName )
Functional Dependeny◦ has no non-trivial FDs
Pledge-MatchingCorp(donorId, matchCorpName, empName)
Functional Dependeny◦ {donorId, matchCorpName} → all attributes◦ {donorId, empName} → all attributes
![Page 20: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/20.jpg)
Non-Normalized RelationsNon-Normalized Relations
Donor-Years(donorId, graduationYear)
Functional Dependency◦no non-trivial FDs
Donor-Categories(donorId, category)
Functional Dependency◦no non-trivial FDs
![Page 21: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/21.jpg)
Normalized RelationsNormalized Relations Potential Donor(donorId, firstName, lastName, street, city, state, zip,
country, countryCode, areaCode, telNumber, donorCircle, spouseName, amountDonatedLastYear, amountPledgedThisYear, amountPaidThisYear,volunteerName)
Functional Dependencies◦ donorId → all attributes
◦ country → countryCode
◦ {country,zip} → city, state
◦ amountPledgedThisYear → donorCircle
Normalized Relations◦ PotentialDonor(donorId, firstName, lastName,
street, zip, country, areaCode, telNumber, spouseName, amountDonatedLastYear, amountPledgedThisYear, amountPaidThisYear, volunteerName)
◦ CountryCodes(country, countryCode)◦ ZipCodes(country, zip, city, state)
![Page 22: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/22.jpg)
Non-Normalized RelationsNon-Normalized Relations Donor-Categories(donorId, category) Functional Dependencies
◦ has no non-trivial FDs
MatchingCorp(matchCorpName, street, city, state, zip, country, countryCode, areaCode, telNumber)
Functional Dependencies◦ {country,zip} → city, state
◦ country → countryCode
Pledge-MatchingCorp(donorId, matchCorpName, empName)
Functional Dependeny◦ {donorId, matchCorpName} → all attributes
◦ {donorId, empName} → all attributes
Normalized Relations◦ DonorCircles(circleName, floor, ceiling)◦ Donor-Categories(donorId, category) ◦ MatchingCorp(matchCorpName, street, zip, country,
areaCode, telNumber)
![Page 23: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/23.jpg)
Non-Normalized RelationsNon-Normalized RelationsEvent(eventName, eventDate,
eventTime, eventLocation, eventOrganizer, eventTotalPledged eventTotalPaid)
Functional Dependencies◦ eventName → all attributes
Normalized Relations◦ Event(eventName, eventDate, eventTime,
eventLocation, eventOrganizer, eventTotalPledged eventTotalPaid)
![Page 24: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/24.jpg)
Non-Normalized RelationsNon-Normalized RelationsClassRep(graduationYear, firstName,
lastName, street, city, state, zip, country, countryCode, areaCode, telNumber)
Functional Dependencies◦ graduationYear → all attributes◦ {country,zip} → city, state◦ country → countryCode
Normalized Relation◦ ClassRep(graduationYear, firstName,
lastName, street, zip, country, areaCode, telNumber)
![Page 25: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/25.jpg)
Non-Normalized RelationsNon-Normalized RelationsVolunteer(firstName, lastName, street, city,
state, zip, country, countryCode, areaCode, telNumber)
Functional Dependencies◦ {firstName, lastName} → all attributes◦ {country,zip} → city, state◦ country → countryCode
Normalized Relation◦Volunteer(firstName, lastName,
street, zip, country, areaCode, telNumber)
![Page 26: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/26.jpg)
Non-Normalized RelationsNon-Normalized RelationsPledge(pledgeNumber,
pledgeAmount, pledgeDate, numPaymentsChosen, pledgeAmountPaid, numPaymentsMade, donorId, eventName)
Functional Dependencies◦ pledgeNumber → all attributes
Normalized Relation◦ Pledge(pledgeNumber, pledgeAmount,
pledgeDate, numPaymentsChosen, pledgeAmountPaid, numPaymentsMade, donorId, donorMatchingCorp, spouseMatchingCorp, eventName)
![Page 27: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/27.jpg)
Non-Normalized RelationsNon-Normalized RelationsPayment(pledgeNumber, datePaid, amount
Paid, paymentMethod, creditCardType, credit Card Number, matchingCorpName)
Functional Dependeny◦ {pledgeNumber, datePaid} → all attributes
Normalized Relation◦ Payment(pledgeNumber, datePaid, amount Paid,
paymentMethod, creditCardType, credit Card Number, matchingCorpName)
![Page 28: CSC 3800 Database Management Systems Time: 1:30 to 2:20Meeting Days: MWFLocation: Oxendine 1237B Textbook: Databases Illuminated, Author: Catherine M](https://reader034.vdocument.in/reader034/viewer/2022042702/56649cc95503460f94990b9b/html5/thumbnails/28.jpg)
Non-Normalized RelationsNon-Normalized RelationsPotentialDonor-Event(donorId,
eventName )Functional Dependeny
◦ has no non-trivial FDsNormalized Relation
◦ PotentialDonor-Event(donorId, eventName )◦ Donor-Years(donorId, graduationYear)