Discuss the type of data needed for such a system

Assignment Help Database Management System
Reference no: EM131433729

Homework

Module 1 - SLP

Data, Database, Database Management System, and Relational Database Modeling

The SLP Project in CSC316 spans from Module 1 to Module 4. You are required to apply what you have learned in previous modules to the assignment in the current module. That is, the Module 2 SLP is built on the Module 1 SLP assignment, and the Module 3 SLP is built on the Module 2 assignment, etc. Please follow the instructions below closely:

Problem Definition

A used-book store has been in business for over a month. The owners have been so busy that they have not had time to design and implement a computer-based system to track their operation. Their first priority is to develop a database management system to track inventory and sales information.

You are hired to design, program, and implement the system. You will be working on elements of this system in the rest of the SLP assignments in this course.

The owners provide you with the following facts:

• The bookstore sells used and hard-to-find books and CDs. Sales are for cash/check or credit card.
• The bookstore mainly caters to the needs of people living in the area.
• The bookstore maintains an inventory of books and CDs.
• Store sales are recorded at a Point-of-Sale (POS) terminal.
• When books are purchased by the store from individuals or organizations, the data are entered into the system.

The owners ask you to:

• Design a database to track inventory and sales information. The database should provide the following information:

1. Current inventory status of books and CDs
2. Sales Transactions List
3. Monthly Profit Report
4. Inventory Status Query by Product
5. Sales Transactions that each employee has processed
6. Any other output you think appropriate

This is the relevant data for the first month of operation. The owners have saved the information in an Excel file. You might want to take them into consideration when you design your database.

Inventory Data

Product ID

Product Name

Unit Price

Cost as
% of Price

Current
Inventory

Monthly
Purchases

40

Little Prince

$35

50%

20

3

42

War and Peace

$45

50%

14

2

44

The Emperor's New Clothes

$40

50%

12

0

46

For Whom the Bell Tolls

$35

50%

10

2

48

Pride and Prejudice

$25

50%

5

0

50

Pinocchio

$35

60%

5

0

52

Canterbury Tales

$40

60%

10

0

Sales Data

Trans ID

P.O. Number

Product ID

Trans Code

Date

Customer ID

Units Sold

Cashier

1

393432

42

2 (credit card)

1/10/15

4269

3

Jason

2

234321

40

2

1/11/15

8934

2

Mary

3

557842

50

2

1/12/15

5519

2

Jason

4

337891

46

1 (check)

1/14/15

6598

3

Berry

5

198142

48

2

1/14/15

1096

2

Berry

6

221244

40

1

1/15/15

4269

1

Jason

7

1112

40

1

1/18/15

3314

2

Amy

8

414125677

42

2

1/20/15

6539

2

Jason

9

2343112

46

2

1/24/15

4456

1

Amy

10

343411

40

1

1/28/15

5519

1

Mary

SLP Assignment

Please note: The SLP assignment in each module is built around this bookstore project, and each assignment is built on the previous one. By the end of this course, your report will need to satisfy all requirements of this project. In Module 1, your task is to:

• Discuss the type of data needed for such a system (attributes), the data types of these attributes, and data sources (where you might obtain such data, such as Point of Sale).

• Write a 2- page paper explaining how you would design the database system, focusing on the tables, attributes, and primary keys to address the requirements of the store owners. Do not be afraid of not getting it right the first time. You will be able to improve your design over the next few modules after you learn new DB concepts and principles.

To make your report easier to follow, it helps to list the tables you will develop and their associated attributes in the report.

SLP Assignment Expectations

1. Analyze a domain and define data requirements.
2. Discuss how to identify the kinds of data required.
3. Communicate effectively with your audience.

Module 1- Background

Data, Database, Database Management System, and Relational Database Modeling

This module covers the following topics:

1. Why study database?
2. What is database?
3. The dominant design methodology
4. Relational database modeling:tuple and schemata
5. SQL - language for writing database queries

Why study database?

Let's start with the question: Why study databases? As Dr. RasmusPagh of IT University of Copenhagen humorously put it, there are four reasons:

• Academic's reason: Databases touch upon many interesting topics in computer science.
• Programmer's reason: Need to use databases when programming applications.
• Information pilot's reason: Want to work with and extract information from large, changing data sets.
• Capitalist's reason: Everybody needs databases, so there is a lot of money to be made.

What is database?

A database is a shared and integrated computer structure that contains end user data (raw facts) and metadata (data about data). A Database Management System (DBMS) is a system for providing efficient, convenient, and safe storage of and multiuser access to (possibly massive) amounts of persistent data.

All major general purpose DBMSs are based on the so-called relational data model, which means that data is stored in a number of tables with named columns. For example, here's a table called "Books" showing the New York Times best sellers, it is represented with a relational data modeling.

Title

Author

publisher

category

list_price

...

The Lost Symbol

Dan Brown

Doubleday Books

Fiction

29.95

 

Superfreakonomics

Steven Levitt and Stephen Dubner

William Morrow

Nonfiction

29.99

 

Lego Star Wars

Simon Beecroft

DK Publishing

Children

21.99

 

...

...

...

...

 

...

Relational data modeling

A relational data model is a data model where all data takes the form of relations. A relation consists of tuples, where a tuple is an ordered list of values.

Tuple

An example of a tuple is:

(The Lost Symbol, Dan Brown, Doubleday Books, Fiction, 29.95)

Each relation has a set of attributes (or columns), with a distinct name within its relation (e.g., title, author, publisher, etc.). Each tuple (or row) in a relation has a value for each attribute. Each attribute has a type (e.g., varchar, float, etc.). Relations are usually written as two-dimensional tables, with the attributes as the first row, and the tuples in the remaining rows. A database contains a set of relations (or tables), each with a distinct name.

Schemata

Schemata are used to describe relations in the relational data model. A schema has two parts:

• The name of the relation
• A tuple with its attributes (plus sometimes also the attribute data types)
• For example, the above relation can have the schema:
• Books (title, author, publisher, category, list_price)
• The actual contents (tuples) of relations are called instances.

A key for a relation is a set of attributes such that no two tuples can have the same values for all of their key attributes. Keys are useful in the following ways:

• Key values identify specific tuples.
• The system may build special indexes over key values.
• Other tuples may use key values as logical "pointers."
• Specify keys by underlining.

Read through the slides for Module, and make sure you understand the core concepts introduced there, including the relational model, table, schema, and key.

In this module, we will download Oracle Express 11g and SQL developer. So what is the connection between these two? SQL developer is a client program that Oracle developers use access Oracle database, and to write and debug their SQL and PL/SQL code. In many ways, SQL developer's function is similar to SQL* Plus. The difference is that SQL developer has a user friendly interface whereas SQL* Plus works in command prompt mode. All the SQL statements you can write using SQL developer can be written using SQL*Plus. You do not need to download SQL*Plus if your computer runs Windows since it is part of the package. To test it, click on Using SQL *Plus.

Dominant design methodology

The dominant design methodology for relational databases consists of three steps:

1. Identify all relevant Entities and Relationships, and describe them using so-called ER model notation.
2. Convert the ER model to a number of relations.
3. Eliminate (or reduce) redundancy by splitting relations. This process is called normalization.

SQL - language for writing database queries

The language for writing database queries is SQL (Structured Query Language, sometimes pronounced "sequel"). For example, the SQL to get the book title written by Dan Brown from the above table is:

SELECT title

FROM Books

https://cdad.trident.edu/Admin/coursedev.aspx?course=392&term=106&mod=1&page=bkgWHERE author='Dan Brown';

The SQL to get all books that cost less than $30 is:

SELECT *

FROM Books

Where list_price< 30;

SQL is based on a mathematical formalism called relational algebra and has the general form of SELECT-FROM-WHERE. We will introduce more SQL in later modules

There are many database management systems in the market (e.g., Access, IBM DB2 Express-C, Apache Derby, MySQL, and Oracle) that are based on relational data modeling. Any of them can be used to learn database. According to Gartner report, Oracle had the No. 1 worldwide RDBMS market share in 2012. Learning Oracle will give students a valuable skill set in the job market. Therefore, Oracle will be the teaching tool in this course. Oracle has a line of database products: Standard edition one, standard edition, enterprise, express edition, and personal edition. The next question is which one to choose? Since Oracle express has all the important features of DBMS, can be downloaded fast and upgraded easily to other products, we will be using Oracle Express 11g in this course.

Read through the slides for Module 1 and get a basic understanding of the core concepts introduced there: data, database, data model, and database management system. We will go into greater detail about these concepts in the rest of this course. (Note: pictures used in the slides for this course are from Peter Rob and Carlos Coronel, Database Systems: Design, Implementation, and Management, published by Thomson Course Technology).

Required Reading

PowerPoint Presentation: Module 1: Data, Database and Database Management Systems

Greenspun, P. (2011). SQL for Web Nerds, Chapter One: Introduction (read until "How does this RDBMS thing work?") https://philip.greenspun.com/sql/introduction.html

Greenspun, P. (2011). SQL for Web Nerds, Chapter Two: Data Modeling. https://philip.greenspun.com/sql/data-modeling.html

Allen, S., & Terry, E. (2005). Beginning Relational Data Modeling. Chapter One: Understanding and Organizing Data: Past and Present. https://books.google.com/books?id=62CFtFea0NsC&printsec=frontcover&source=gbs_v2_summary_r&cad=0#v=onepage&q=&f=false.

Ullman, J., &Widom, J. (n.d.) A First Course in Database Systems, Chapter 1: The World of Database Systems. https://infolab.stanford.edu/~ullman/fcdb/ch1.pdf

Grehan, D. (2005). "When to Use an ODBMS." https://www.odbms.org/introduction-to-odbms/when-to-use-an-odbms/

Obasanjo, D. (2001). "An Exploration of Object Oriented Database System." https://www.25hoursaday.com/WhyArentYouUsingAnOODBMS.html

Attachment:- Assignment.rar

Reference no: EM131433729

Questions Cloud

Quantitative and qualitative forecasting : Write a 150-300-word paragraph comparing the simple moving average weighted moving average, exponential smoothing, and linear regression analysis time series models.
Best strategies for balancing the different beliefs : As a leader of an organization, it will be up to you to figure out the best strategies for balancing the different beliefs and practices of employees. What are some of the policies and procedures that you would put into place in your organization ..
Competitive advantages over competitors : Using the same organization as above, what kinds of competitive advantages over competitors does the organization intend to try to build?  What do you think are the best strategies to build them and why?
Team comprised of relatively long term experienced employees : You have recently been hired to lead a team comprised of relatively long term, experienced employees. Their performance has been generally satisfactory, however changes are coming and it will be your job to affect this change.  What are the potential..
Discuss the type of data needed for such a system : Discuss the type of data needed for such a system (attributes), the data types of these attributes, and data sources (where you might obtain such data, such as Point of Sale).
How imposing rent controls affect number of housing units : The famous Swedish economist Assar Lindbeck remarked in his book on rent controls, "Rent control appears to be the most efficient technique presently known to destroy a city-except for bombing." How does imposing rent controls affect the number of ..
Competitive advantages over competitors : Using the same organization as above, what kinds of competitive advantages over competitors does the organization intend to try to build?  What do you think are the best strategies to build them and why?
What is easier to forecast : What is easier to forecast? Gold medals in the Olympic won by the US ? is it reasonable and easy to forecast? Number of red Porsches sold in US vs total Porsches in the world? which one is easier and why. Population of Utah vs. the population of the ..
Competitive advantages over competitors : Using the same organization as above, what kinds of competitive advantages over competitors does the organization intend to try to build?  What do you think are the best strategies to build them and why?

Reviews

Write a Review

Database Management System Questions & Answers

  Sql statements that return a subset of columns

Design and develop the below queries using professional principles and standards: Two SQL Statements that return a subset of columns and a subset of rows using the WHERE clause

  Write a function checksmaller

Write a function 'Max' that takes an int array and the size of the array as input and returns the largest element of the array. The function should look like the following.

  What is the difference between database and data warehouse

What is the difference between database and data warehouse? What is OLAP? What is a data cube? How do DSS take advantage of the structure?

  Describe the basic features of the rdb model

Describe the basic features of the RDB model and discuss their importance to the end-user and the designer.

  Prepare a database using microsoft access

Using Microsoft Access, prepare a database and save it as Acme Inc. Prepare the following tables: Employees and Products. Field names for Employees table are first name,

  Draw an entity-relationship diagram for the database

Carefully read the above business description and draw an Entity-Relationship Diagram (ERD) for the database that manages information on employees, customers, and so on

  How healthcare data sets are used in healthcare settings

For each data set, your analysis should include the purpose of the data, type of setting, secondary data sources classification, reporting process and frequency (i.e., quarterly, annually), and other important components. Utilize this unit's readi..

  Write an organizational policy

Write an organizational policy or personal policy, if not in the job force to correct the IT-related ethical issue that you described in Paper B1, where you mapped key organizational or personal issues and identified how these digital ethical issu..

  Dml stands for

DML stands for

  Create a relationship between the employees and sales tables

Create a relationship between the Employees and Sales tables. Save the relationship. A form and subform of sales by the salesperson. Name this form Employee Sales. Use the attached layout on page 5. (use the Zoom icon to make form readable)

  Design a database for a small medical practice

Narrative description of the "medical practice" database assignment: Design a database for a small medical practice with several physicians. The purpose of the database is to support the administrative functions such as billing, scheduling and pat..

  Problem1 assumethefollowingsimpleb-treewithn4this tree

problem1 assumethefollowingsimpleb-treewithn4this tree consists of only a root node and three leaf nodes. recall that

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