Create the digitalx database

Assignment Help Database Management System
Reference no: EM13185817

DigitalX has been operating a chain of retail stores selling CD's, DVD's and Games for a number of years. Recently they have been operating an online store in an attempt to expand their business.

Due to the success of the new online operation DigitalX have decided to redevelop and expand their online business. You have been hired as part of the development team and tasked with the development of the new database system.

Much of the initial research and requirements analysis has already been completed. DigitalX has provided you with the following case study and documentation to assist you in developing the database. The case study details how DigitalX envision the new online store will operate.

Because the database must support an online store security is a concern. The initial requirements analysis has identified some security concerns and they have been included in the case study.

CASE STUDY

Products

DigitalX sells three broad categories of products, music (CD's), DVD's and games. Each of these categories can be further broken down into subcategories, for example: music and DVD's can be broken down into genres and games can be divided by gaming platform e.g. XBOX, Playstation and PC. The database must support these product categories and subcategories. It is also essential that DigitalX be able to add additional categories and subcategories in the future. They must be able to make these additions without having to make any structural changes to the database.

When it comes to storing product information DigitalX requires at minimum the following information: a name and description for each product, the subcategory to which product belongs to, cost of product, RRP of product and the number of units currently in stock. The margin of every product (RRP) is 20% of the cost.

You should also consider adding additional columns according to the other requirements of this project. (A STATUS column to show if this product is available)

Customers

Customers will register with DigitalX via the DigitalX website. Upon registration customers supply their email address and a password. Customers will use their email addresses and passwords to login to the website. For this reason customers may only register their email address once. You must ensure that your database enforces this restriction.

During the registration process customers will be requested to supply some personal information includes but not limited to date of birth, home address, telephone number and mobile phone number. This information must be recorded in the database.

For more information on the registration process view appendix 3: 'User registration use-case'.

Passwords

DigitalX want to ensure that customer password are stored securely in the database and cannot be viewed simply by looking at the data in the database. It has been decided that the passwords must be stored in an encrypted format. It has been suggested that you create stored procedures for saving and retrieving passwords and make use of SQL Server's cryptography subsystem to implement the encryption.

Order Process

Customers will browse the DigitalX online store and add products to their shopping cart. Customers will have the opportunity to increase and decrease the quantity of an item in their shopping cart and also remove unwanted items from their shopping cart. Once a customer is satisfied with the contents of his/her shopping cart he/she will continue to the checkout process.

The checkout process will involve creating an order in the database, prompting the customer for a credit card number and processing the payment. The order will include the date the order was placed, information about each product being ordered and the quantity of each, the details of the customer placing the order, as well as the billing address and shipping address for the order.

Each order will also have a status indicator, indicating the progress of the order. Possible status values include: PROCESSING, BACKORDER, SHIPPING, DELIVERED and CANCELLED. DigitalX will use these values to determine which orders have been completed and which orders are still being processed. Customer will also be able to view these status values via the DigitalX website.

You should also store the customer's credit card number and expiry date used to place the order. Note, it is only necessary to store the last credit card number used by each customer. The credit card number must be stored in an encrypted format. 

Once an order is ready to be shipped an invoice is created. A sample invoice is included as appendix 7. The invoice is included with the products when they are shipped.

For more information on the order process view appendix 4: 'Place order use-case'.

Viewing order status

The DigitalX website allows customers to view their past and current orders. This allows customers to view the status of the current orders as well as review orders they have placed previously. Your database must support these pages.

Appendix 6 includes a sample of the Order status web page.

Customer / usage predictions:

DigitalX currently has 150 000 registered customers for their online store, and process 1500 orders per day. However, with the coming expansion DigitalX expect to increase their customer base to 250 000 within the next six months and reach 350 000 customers within the next twelve months.

It is also predicted that the number of orders processed per day will increase from the current 1500 a day to 2500 per day over the next six months and double again within twelve months.

Availability and backup requirements:

Because customers place orders with DigitalX via their online store, DigitalX cannot recreate orders if any information is lost. For that reason it is essential that no data is lost in the event of a system failure for whatever reason.

The online store is open to customers twenty four hours a day seven days a week. DigitalX cannot afford for the database to be unavailable for any reason and have therefore set a 99.7% availability target. As DigitalX is still in the early stages of developing its online business it doesn't yet have the revenue to invest heavily in its hardware infrastructure. For that reason careful consideration should be given to the budget when designing an availability and backup solution.

Usage data for the past several months has been averaged and a graph compiled, providing an indication of the expected workload. Review this information carefully when planning your backup policy.

The activity graph is included as appendix 1.

Data

Suppliers upload the latest price list at 10pm every Sunday in CSV format. You need to use appropriate technology to ensure that the products in DigitalX database can be updated timely. Assume that DigitalX has three suppliers; the format of all files are the same; the location of all files is C:\Data.

You database shall automatically create/update/delete(logical) SubCategory/Product according to the price list. The MAIN category remains the same.

Sample price-list file is provided. You can also populate you own data for testing.

Project Guidelines:

Your project shall have the following features but not limited to:

1. Create the DigitalX database. Design tables and relationships.

2. Ensure that email addresses may only be used once in the database.

3. Create a stored procedure to add a new customer to the database. The stored procedure must accept all customers' information as parameters and insert them into the database. The stored procedure must encrypt the customer's password and store the encrypted password.

4. Create stored procedures to encrypt and decrypt a customer's credit card number.

(Hint: you will need to use the EncryptByxxx and DecryptByxxx system functions for your stored procedures.)

5. Create a table-valued user defined function to support the order history page of the website as shown in appendix 6.

6. Design a high availability plan and backup schedule for the DigitalX database. A graph for system activity is provided in appendix 1. Use this graph as a guide when planning your backup schedule.
Implement your backup plan in the database you have developed.

You DO NOT need to implement your availability solution. Instead of, state the reason and plans of you high availability solution by words. (Not less than 200 words)

7. Create a SSIS package to implement incremental processing of products information.

8. A view must be created to allow DigitalX employees to view all orders on backorder. The view must include the customer's email, contact details, the date the order was placed and the order number.

9. A view must be created to allow DigitalX employees to view all the products on backorder and the quantity of each on order. Your view must aggregate the data from the backorder products so that each product appears only once in the list.

10. Identify areas in your database where indexes would help improve query performance and create indexes on those columns.

Reference no: EM13185817

Questions Cloud

Find market price and quantities produced if firm 2 move 1st : Consider the same two firms as above with marginal costs 10 and 40, facing a demand p = 100 - q. a. Find the market price and quantities produced if firm 1 moved first, followed by firm 2 b. Find the market price and quantities produced if..
Define mass percentage and in parts per million : Express the concentration of a 0.0460 M aqueous solution of fluoride, F-, in mass percentage and in parts per million. Assume the density of the solution is 1.00g/mL.
How far does a fly sitting on the rim of the record : Talk about the old days! A long-playing record has a radius of 6 inches. How far does a fly sitting on the rim of the record travel after the record has turned around once? (Use pi = 3.14).
Explain a stackelberg game with three firms : Consider a Stackelberg game with three firms (1, 2 and 3) where firm 1 moves first and firm 3 moves last. What quantities will they choose if they have zero costs and the demand curve is p = 100 - q
Create the digitalx database : Create the DigitalX database. Design tables and relationships and ensure that email addresses may only be used once in the database.
What is the maximum number of plants she can plant : Darla wants to plant strawberries in her rectangular garden. If the dimensions of the garden are ' by ' and each plant must be 3 feet away from any other plant or any edge, what's the maximum number of plants she can plant?
Define what is the mole fraction of solute : What is the mole fraction of solute and the molal concentration for an aqueous solution that is 19.0% NaOH by mass?
In how many ways can the manager choose : A dance team knows 17 routines of which 9 are tap, 5 are ballet, and 3 are modern. The program can consist of any five routines. In how many ways can the manager choose which routines to present if there are no restrictions?
Explain the salt content of new potato chip products : As a food chemist for a major potato chip company, you are responsible for determining the salt content of new potato chip products for the packaging label.

Reviews

Write a Review

Database Management System Questions & Answers

  Implement direct-address table keys of stored elements

Suggest how to implement direct-address table in which keys of stored elements don't require to be distinct and elements can have satellite data.

  Create a context level dfd

Create a context level DFD. You should take your DFD to your tutorial for feedback before starting on the ER.

  Implement a database based on the provided er diagram

Analyse and comprehend a provided ER diagram and Database Schema and implement a database based on the provided ER diagram and Database Schema

  Define set of relational schemas and identify primary keys

We want to construct a database for a world-wide package delivery company. Define a set of relational schemas and identify primary and foreign keys. Try not to include redundant schemas.

  Determine a list of n numbers has no duplicates

Express given five loosely described problems carefully in { Instance, Question } form as utilized in "Computers and Intractability". Determine that a list of n numbers has no duplicates.

  What is the key value of the 4th index

What is the key value of the 4th index record on the top level, assuming each index record points to the record with the highest key value in a block of the next level down?

  A university library database records

A university library database records information about books; for each book, it records the book isbn number (which is unique), and the book name. In addition, it records which books have been checked out

  Create microsoft access database

Create a Microsoft Access database. Create the tables, fi elds, data types, and primary key(s) for the database. Create the relationship(s) needed between the tables.

  Implement a database of courses and students for a school

Implement a database of courses and students for a school.

  Data analysis and definition

What is the business implications that can be drawn from the process of building and comparing these models, and has this practice helped resolve the business issue? Why or why not?

  Creating database structure using sql

creating database structure using SQL

  Estimate the height of the b plus tree

Estimate the height of the B+ tree. (Giving a range of heights is fine.) Also estimate the amount of memory needed to store the tree, including leaves but not including the posting lists themselves.

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