{"id":78879,"date":"2021-12-02T06:25:41","date_gmt":"2021-12-02T06:25:41","guid":{"rendered":"https:\/\/papersspot.com\/blog\/2021\/12\/02\/relational-design-part-b-normalization-for-each-of-the-current-tables-which\/"},"modified":"2021-12-02T06:25:41","modified_gmt":"2021-12-02T06:25:41","slug":"relational-design-part-b-normalization-for-each-of-the-current-tables-which","status":"publish","type":"post","link":"https:\/\/papersspot.com\/blog\/2021\/12\/02\/relational-design-part-b-normalization-for-each-of-the-current-tables-which\/","title":{"rendered":"Relational Design Part B: Normalization For each of the current tables (which"},"content":{"rendered":"<p>Relational Design Part B: Normalization<\/p>\n<p> For each of the current tables (which may be poorly designed), follow the 5 steps listed below to normalize to 4NF. Use the submission template from D2L for a structured answer.<\/p>\n<p> 1. List the functional dependencies (FDs) relevant to the table. Some FDs need to be derived from Client Notes.<\/p>\n<p> 2. Determine the highest normal form the (existing) table is in (explain your answer).<\/p>\n<p> 3. List one example of: an insert, delete and update anomaly (each) for each table (if not in 4NF). Indicate any other problems the table might have (e.g., missing attributes, redundant data, etc.).<\/p>\n<p> Note: Missing attributes are first shown in Step 3D, then integrated into the new (normalized) tables in Step 4. While in Step 1 you should include FDs relevant to the existing table including those that may have a relevant missing attribute, you do not need to consider missing attributes in Step 2.<\/p>\n<p> 4. Normalize the table to 4NF explaining your steps. Remember to ensure:<\/p>\n<p> &#8211; You&#8217;ve fixed all problems with the table design including missing information<\/p>\n<p> &#8211; You&#8217;ve shown tables (with primary keys marked) that you generate when going from the current normal form to each successive normal form all the way up to 4NF)<\/p>\n<p> &#8211; You&#8217;ve shown that the final relations are in 4NF (based on the functional dependencies)<\/p>\n<p> &#8211; You&#8217;ve marked the primary key of the tables at each stage<\/p>\n<p> &#8211; You&#8217;ve written down any assumptions made \/ explained any new attributes introduced.<\/p>\n<p> Carefully review FDs and \u201cClient Notes\u201d to ensure you have not missed any requirements for tables or attributes.<\/p>\n<p> Note:<\/p>\n<p> \u2022 Please do not ignore or contradict FDs or client Notes<\/p>\n<p> \u2022 Assume that all listed determinants and dependents are atomic unless the case says otherwise.<\/p>\n<p> Finally, after you&#8217;ve finished the normalization process (as described above) for ALL current tables, please make a list of tables that includes all the 4NF relations (with attributes) sorted alphabetically. Include primary keys and foreign keys in this version.<\/p>\n<p> Please write down any assumptions you make.<\/p>\n<p> MIS<\/p>\n<p> Department<\/p>\n<p> CURRENT TABLES (may have errors; address the errors during normalization)<\/p>\n<p> 1) CAST_MEMBERS (castID, castSSN, castName, castAddress, castPhoneNumberList)<\/p>\n<p> 2) CONTENT (contentID, castID, earningYear, castFirstName, castLastName, title, filmedDate, releaseDate, budget, amountEarned)<\/p>\n<p> 3) CONTENT_DATA (contentID, distributionPlatform, license)<\/p>\n<p> 4) PAYMENTS (paymentRecipientID, contentID, paymentPeriodBegin, empID, empFName, empLName, paymentMethod, paymentAmount, paymentDate, paymentPeriodEnd)<\/p>\n<p> 5) REGIONS (regionID, regionName, HQLocation, distributor, manager)<\/p>\n<p> FUNCTIONAL DEPENDENCIES (correct, but may be incomplete)<\/p>\n<p> castID \u2192 castSSN<\/p>\n<p> castSSN \u2192 castID, castDOB, castFName, castLName, castStreetAddress, castCity, castState, castZip<\/p>\n<p> contentID \u2192 budget, contentType, filmedDate, releaseDate, language, regionID, totalCrewSize<\/p>\n<p> contentID, paymentRecipientID, paymentPeriodBegin \u2192 transactionNumber, empID, paymentPeriodBegin, paymentPeriodEnd, paymentMethod, paymentAmount, paymentDate<\/p>\n<p> contentID, earningYear \u2192 contentID, earningYear, amountEarned<\/p>\n<p> empEmail \u2192 empID, empFName, empLName, empEmail<\/p>\n<p> empID \u2192 empID, empLName, empFName, empEmail<\/p>\n<p> regionID \u2192 HQLocation<\/p>\n<p> regionID \u2192 regionName, regionSize, dateOperationsStarted<\/p>\n<p> regionName \u2192 regionID, manager, distributor, dateOperationsStarted<\/p>\n<p> transactionNumber \u2192 contentID, paymentRecipientID, paymentPeriodBegin, paymentPeriodEnd, paymentMethod, paymentAmount, paymentDate, transactionNumber<\/p>\n<p> CLIENT NOTES<\/p>\n<p> (use these to understand tables and supplement functional dependencies)<\/p>\n<p> \u25cf Addresses are made up of street, city, state and zip code.<\/p>\n<p> \u25cf Multiple phone numbers may be stored for each cast member (the same phone number may be used by more than one cast member). Currently these are stored as a comma separated list (e.g., \u201c5551234, 5551244, 5551255\u201d) within castPhoneNumberList.<\/p>\n<p> \u25cf Cast (full) name is made up of first and last name.<\/p>\n<p> \u25cf Each content piece may have many cast members. A cast member may be part of many content pieces.<\/p>\n<p> \u25cf Content may be available on multiple distribution platforms (e.g., TV, streaming, etc.).<\/p>\n<p> \u25cf Content may also require many licenses (e.g., product placements, use of other IPs, etc.).<\/p>\n<p> \u25cf The amount earned for a piece of content is evaluated at the end of each year<\/p>\n<p> \u25cf Each payment is made for one piece of content and to one case member. Note: paymentRecipientID is the castID of the person (cast member) receiving the payment. One employee approves each payment (an employee may review many payments over time).<\/p>\n<p> \u25cf Content types include: TV shows, movies, etc. For TV shows we store the total number of episodes and total number of seasons. For movies, we store the film genre.<\/p>\n<p> Note: Each attribute (\/ set of attributes) determines itself, and hence those dependencies may not be shown in the list of FDs. For example, {A, B \u2192 A, B} or {A \u2192 A}. Similarly, inferred dependencies may not be shown. For example: {A \u2192 C} can be inferred from: {A \u2192 B} and {B \u2192 C}.<\/p>\n<p> USE BELOW TEMPLATE TO COMPLETE THE PART B ASSIGNMENT<\/p>\n<p> Normalization <\/p>\n<p> [Repeat the template below for each table, replace the template \u201cTableX(\u2026attributes\u2026)\u201d with the actual<\/p>\n<p> table and attributes.]<\/p>\n<p> 1. CAST_MEMBERS (castID, castSSN, castName, castAddress, castPhoneNumberList)<\/p>\n<p> 1) List Functional<\/p>\n<p> Dependencies relevant<\/p>\n<p> to Table (including from<\/p>\n<p> client notes)<\/p>\n<p> castID \u2192 castSSN<\/p>\n<p> castSSN \u2192 castID, castDOB, castFName, castLName, castStreetAddress, castCity, castState, castZip<\/p>\n<p> 2A) Current Normal form<\/p>\n<p> 2B) Explanation for<\/p>\n<p> normal form<\/p>\n<p> 3A) Insert Anomaly<\/p>\n<p> 3B) Delete Anomaly<\/p>\n<p> 3C) Update Anomaly<\/p>\n<p> 3D) Other Problems<\/p>\n<p> 4) Normalization Steps<\/p>\n<p> 2. CONTENT (contentID, castID, earningYear, castFirstName, castLastName, title, filmedDate, releaseDate, budget, amountEarned)<\/p>\n<p> 1) List Functional<\/p>\n<p> Dependencies relevant<\/p>\n<p> to Table (including from<\/p>\n<p> client notes)<\/p>\n<p> 2A) Current Normal form<\/p>\n<p> 2B) Explanation for<\/p>\n<p> normal form<\/p>\n<p> 3A) Insert Anomaly<\/p>\n<p> 3B) Delete Anomaly<\/p>\n<p> 3C) Update Anomaly<\/p>\n<p> 3D) Other Problems<\/p>\n<p> 4) Normalization Steps<\/p>\n<p> 3. CONTENT_DATA (contentID, distributionPlatform, license)<\/p>\n<p> 1) List Functional<\/p>\n<p> Dependencies relevant<\/p>\n<p> to Table (including from<\/p>\n<p> client notes)<\/p>\n<p> 2A) Current Normal form<\/p>\n<p> 2B) Explanation for<\/p>\n<p> normal form<\/p>\n<p> 3A) Insert Anomaly<\/p>\n<p> 3B) Delete Anomaly<\/p>\n<p> 3C) Update Anomaly<\/p>\n<p> 3D) Other Problems<\/p>\n<p> 4) Normalization Steps<\/p>\n<p> 4. PAYMENTS (paymentRecipientID, contentID, paymentPeriodBegin, empID, empFName, empLName, paymentMethod, paymentAmount, paymentDate, paymentPeriodEnd)<\/p>\n<p> 1) List Functional<\/p>\n<p> Dependencies relevant<\/p>\n<p> to Table (including from<\/p>\n<p> client notes)<\/p>\n<p> 2A) Current Normal form<\/p>\n<p> 2B) Explanation for<\/p>\n<p> normal form<\/p>\n<p> 3A) Insert Anomaly<\/p>\n<p> 3B) Delete Anomaly<\/p>\n<p> 3C) Update Anomaly<\/p>\n<p> 3D) Other Problems<\/p>\n<p> 4) Normalization Steps<\/p>\n<p> 5. REGIONS (regionID, regionName, HQLocation, distributor, manager)<\/p>\n<p> 1) List Functional<\/p>\n<p> Dependencies relevant<\/p>\n<p> to Table (including from<\/p>\n<p> client notes)<\/p>\n<p> 2A) Current Normal form<\/p>\n<p> 2B) Explanation for<\/p>\n<p> normal form<\/p>\n<p> 3A) Insert Anomaly<\/p>\n<p> 3B) Delete Anomaly<\/p>\n<p> 3C) Update Anomaly<\/p>\n<p> 3D) Other Problems<\/p>\n<p> 4) Normalization Steps<\/p>\n<p> ALPHABETICAL list of FINAL Normalized relations (4NF)<\/p>\n<p> Mark all Primary Keys and Foreign keys.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Relational Design Part B: Normalization For each of the current tables (which may be poorly designed), follow the 5 steps listed below to normalize to 4NF. Use the submission template from D2L for a structured answer. 1. List the functional dependencies (FDs) relevant to the table. Some FDs need to be derived from Client Notes. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[10],"class_list":["post-78879","post","type-post","status-publish","format-standard","hentry","category-research-paper-writing","tag-writing"],"_links":{"self":[{"href":"https:\/\/papersspot.com\/blog\/wp-json\/wp\/v2\/posts\/78879","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/papersspot.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/papersspot.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/papersspot.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/papersspot.com\/blog\/wp-json\/wp\/v2\/comments?post=78879"}],"version-history":[{"count":0,"href":"https:\/\/papersspot.com\/blog\/wp-json\/wp\/v2\/posts\/78879\/revisions"}],"wp:attachment":[{"href":"https:\/\/papersspot.com\/blog\/wp-json\/wp\/v2\/media?parent=78879"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/papersspot.com\/blog\/wp-json\/wp\/v2\/categories?post=78879"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/papersspot.com\/blog\/wp-json\/wp\/v2\/tags?post=78879"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}