Data modeling and normalization, Software Engineering

Assignment Help:

The task in this project is to design a normalized database that could be used to collect and store information for a video rental outlet.

The database should be structured to support tasks such as:

tracking rentals by title and by customer;

producing reports, such as rentals due on a certain date;

categorizing rentals by media type (e.g., Blu-Ray, DVD, Game).

The assignment does not require you to produce examples of the reports listed, but only that the database be correctly structured to
allow the query and reporting features of a DBMS, such as Access, to work properly.

You will need to collect information about several titles in each category, which can be done online, at your local video store, or from your personal media collection. You will be given an initial, un-normalized field list of data items to be tracked, which you will normalize into the appropriate separate tables.

The database students will prepare in this project is somewhat simplified in comparison to a real-world application. For example, only brief customer address information is included, to reduce the amount of data input required for the project. We have also simplified the example in terms of structure; ignoring, for example, the complexities of a real-world video outlet, such as varying rental periods for different products.

The initial field list does not include all of the appropriate key fields for the tables that will be created, so suitable key fields should be added to the tables as required.

This project is most easily completed using MS-Access; for a detailed discussion of the other options for completing the Project, please see "Alternatives to Using MS Access" below.

PROJECT DETAILS

The following is a list of essential data items to be recorded. As noted above, additional fields may be required as keys for the tables you will create from these fields.

date of rental

due date

media item title

media item category

category description

category code

customer ID#

customer lastname

customer firstname

customer address

customer phone#

If only a single table were made from all the fields listed above, the result would be a system in which every rental would have to include duplicate customer and media item details. In addition to wasting input time duplicating data, such a system would also be highly prone to error, as any change to customer data (a change of address, for example) would also result in different records showing different content for the same fields, unless every historical record for that customer was updated. The relational database model was designed to solve those problems by identifying key data entities, separating them into their own tables, and relating the tables using foreign keys. (The foreign key is usually the primary key from one table, placed in one or more other tables to create linkages.)

This allows for customer details, for example, to be recorded once, in a table reserved for that purpose, and referenced in other tables by a unique identifier (key), such as Customer ID#. Your task is to create a simple relational database from the field list above. The required tables are Customers, Media, Categories, and Rentals; each of which should be properly provided with a primary key, and each of which should be related to other tables as required. All four database tables should be populated with records as follows:

Customers-at least 10

Categories-three records, one describing each of the

media types: DVD, Blu-Ray, or Game Media-at least 30 records, representing a selection of DVD movies, Blu-Ray movies, and Games.

Rentals-at least 20 records.


Related Discussions:- Data modeling and normalization

Explain metric, Explain Metric? Ans) The measure of the extent or degree...

Explain Metric? Ans) The measure of the extent or degree to which a product possesses and exhibits a particular quality, property, or attribute.

What is incremental testing, Incremental testing is fractional testing of a...

Incremental testing is fractional testing of an incomplete product. The aim of incremental testing is to give an early feedback to software developers.

Cohesion, Identify the type of cohesion in the following statements: 1. Co...

Identify the type of cohesion in the following statements: 1. Compute average daily temperatures at various sites 2. Initialize sums and open files 3. Create new temperature recor

What do you understand by software quality, What do you understand by "Soft...

What do you understand by "Software Quality"? Quality software means, it's: - Free of bugs - Is easily maintainable - Within the budget - Meets requirements - De

Mention some of the design principles, Mention some of the Design principle...

Mention some of the Design principles. The design process should not vary from tunnel vision. The design should not reinvent the wheel. The Design should exhibit unifo

What is maintenance, Define maintenance. Maintenance is defined as the ...

Define maintenance. Maintenance is defined as the procedure in which changes are executed by either modifying the existing system's architecture or by adding new mechanism to t

Illustrate basic COCOMO model, Q. Illustrate Basic COCOMO model? Basic ...

Q. Illustrate Basic COCOMO model? Basic COCOMO model:- It provides an order of magnitude of cost. This model utilizes estimated size of software project and the type of softwar

Design test cases for loop testing, Q. Regard as a program that reads a set...

Q. Regard as a program that reads a set of Data for 'n' no. of triangles. The program reads three integer values like representing the sides of triangles. The program prints for ea

What is big-bang waterfall model, What is Big-bang waterfall model? Bi...

What is Big-bang waterfall model? Big bang Model of S/w development is based on the big bang theory. A huge quantity of people, money and time are put together, lot of energy

The software life cycle model that incorporates risk factor, Explain the so...

Explain the software life cycle model that incorporates risk factor.  The problem with traditional software process models is that they do not deal adequately with the uncertai

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd