Phase 1

advertisement
Database Systems Project
Phase I:
Fact - Finding, Information Gathering,
and Conceptual Database Design
Catlyn Colson Walker
CS 342 Database Systems - Wang
October 5, 2009
1|Page
Table Of Contents:
1
Fact Finding Techniques and Information Gathering
1.1 Description of Fact Finding Techniques; Methods used to Gather Data, and
Operations on Data
1.2 Introduction to Enterprise/Organization
1.3 Structure of the Enterprise/Organization
1.4 Itemized Descriptions of Major Objects, and the Relationship among (or
between) the Objects in the Business
1.5 Data Views and Operations for User Groups
2 Conceptual Database Design
2.1 Entity Set Description
2.2 Relationship Set Description
2.3 Related Entity Set
2.4 E-R Diagram
2|Page
3
3
4
4
5
6
8
9
10
Fact - Finding Techniques and Information Gathering
1.1 Description of Fact Finding Techniques; Methods used to Gather Data, and
Operations on Data:
The following two methods were used to gather data from the business:
1. Interviews: It is important to interview at least one person from every department of
the business that will be potential users of the data base. By doing so the grey areas (or
missing information) can be filled in by the analyst by getting information not available
in reports or other documents.
2. Basic Record Reviews: To fully understand the work flow process of the business it is
crucial to look at basic records like bills, invoices, reports, item lists, etc. By reviewing
these documents the analyst will better understand the needs of the business based on
the companies work process.
This process of fact finding will allow me to have a basic insight into the business and its
structure, in which we will learn the system requirements and business rules. We will also
know the basic operations and work flow for the business from the interviews and review of
records. At the conclusion of this process, I will be able to define the basic entity types along
with each of their attributes and relationships. The work flow of the business should be seen in
the ER Diagram.
1.2 Introduction to Enterprise/Organization:
Hot Ride LLC was founded in 2000 in Bakersfield, CA and is a family run business. The
business was started to meet the needs of individual clients as well as dealers with specialized
needs. The team of professional engineers and designers take pride in developing every single
product for their customers, using all their experiences in the off-road racing performance parts
and accessories industry since 1982. Hot Ride sells, designs, manufactures, and installs off-road
products. Hot Ride's inventory ranges from roll-cages and long travel (which Hot Ride
Manufacturers) to seat belts, tires, jacks, whips, and the list goes on. The majority of Hot Ride's
sales come from the web, which is why most of the customers are out of the state or out of the
country. Hot Ride is looking for a database that can manage all the items/products they are
selling, that can be accurate as well as linked to their webpage for one shot updates.
3|Page
1.3 Structure of Enterprise/Organization:
Hot Ride inventory list is over 200,000 products. Sales are processed through direct
communication with the customer (in-person/phone) or through the web (email / EBay / Hot
Ride website). The order is placed, and the items are taken from the inventory if in stock,
otherwise the items are ordered and drop shipped to the customer. The majority of items sold
are drop shipped directly from the vendor to the customer. There are different fees to the
method of the sale, for example selling product on EBay has fees whereas selling something in
person there are no fees. There are also fees depending on the payment method, if PayPal or
credit cards are used to complete the transaction there is a fee whereas cash and checks have
no fees.
1.4 Itemized Description of Major Objects, and the Relationship among (or
between) the Objects in the Business:




Vendors: Supply product or material to Hot Ride for sales orders, there is a purchase
order involved in this process. Also some of Hot Ride's vendors will drop ship
merchandise to customers versus shipping the item to Hot Ride then sending it to the
customer.
Items: Product sold to customers and either ordered from vendors or manufactured by
Hot Ride. If the product is manufactured, the only time the customer will be billed
hourly by the employees time would be if it was a custom order.
Customers: Purchase product from Hot Ride. Most customers are general customers,
however there are preferred customers and dealers which will have different price
levels on product than the general customers. Also dealers will not pay tax on
merchandise.
Employee: Process the customer's order, placing orders with vendors, and following
through to ensure completion of the order. There are also fabricators that manufacture
the items, in which their time would be billable for custom orders.
4|Page
1.5 Data Views and Operations for User Groups:





Purchase Orders: The employee will place purchase orders with the vendor to get
needed product for inventory or sales order. This will be created by the employee and
sent to the specified vendor.
Sales Orders: The customer will place sales orders with the employee for specific
quantities of items, in which the employee will process the order.
Invoices: Upon completion of an order, meaning the customer has paid for the order,
each shipment of product for that sales order will become an invoice linked to the sales
order. This means there could be a single invoice linked to a sales order or there could
be multiple invoices. Once all items on the sales order are shipped, the order is
completed and closed.
Payments: All customers must make a payment at the time of the order. The customer
can pay by cash, check, credit card, or a PayPal funds transfer. The last two methods
have fees to process the payment.
Syncing with Website: To keep the website images, descriptions, and prices up to date
there will need to be a correlation between the database and the web site.
The employee (not the fabricator) will be responsible for processing the orders, so they
will need to be able to view inventory levels. They will also need access to creating purchase
orders, sales orders, and invoices to complete orders. The employee will need to be able to see
all price levels for each product.
The customers will only need to view the order reports, like the sales order and the
invoice. The website customers will need to be able to see the part number, description, price,
and an image of the product and this will all be accessed on the web.
5|Page
Conceptual Database Design
2.1 Entity Set Description:

Vendor: Supplies product to purchase orders which supply the inventory.
Attributes:
 ID Number: Uniquely identifies each vendor (Unsigned Integer, less than 32 bits in
length, not nullable, and is unique).
 Company Name: Actual businesses name. (String, 50 characters in length, not
nullable, and is unique).
 Sales Representative Name: The person that Hot Ride's employee will communicate
with to process a purchase order and receive product. (String, 50 characters in
length, not nullable, and is not unique).
 Address: The billing address of the vendor. (String, less than 50 characters in length,
not nullable, and is not unique).
 Email: Sales representative's email address where correspondence will be done
involving orders, pricing, etc. (String, 50 characters in length, not nullable, and is not
unique).
 Phone Number: Number to reach sales representative regarding orders. (String, 13
characters in length, not nullable, and is not unique).

Purchase Order: Order sent from Hot Ride employee to vendor requesting specified
quantities of parts needed for sales orders.
Attributes:
 Purchase Order Number: Uniquely identifies each purchase order. (Unsigned
Integer, less than 32 bits in length, not nullable, and is unique).
 Date: Date that the order is placed by employee. (String, 10 characters in length, not
nullable, and is not unique).

Part / Item: Actual piece of merchandise being sold to customer.
Attributes:
 Part Number: Uniquely identifies each part. (Unsigned integer, less than 32 bits in
length, not nullable, and is unique).
 Description of Part: Describes part giving details about the item. (String, 200
characters in length, not nullable, and is not unique).
 Price of Part: There will be 3 different prices for each part, the wholesale price, the
dealer price, and the retail price. (Integer, less than 32 bits in length, not nullable,
and is not unique).
6|Page


Image of Part: A picture of the part/item available to be sold. Will be on website
associated with every item sold.
Quantity: There will be a quantity for on hand inventory meaning what is currently in
inventory. (Integer, less than 32 bits in length, not nullable, and is not unique).

Customer: Customer of Hot Ride that create sales orders by purchasing merchandise
from Hot Ride.
Attributes:
 Customer ID: Uniquely identifies each customer. (Unsigned integer, less than 32 bits
in length, not nullable, and is unique).
 Customer Name: First and last name of the customer. (String, 50 characters in
length, not nullable, and is not unique).
 Address: Shipping and billing address for the customer, there could be seperate
addresses for both of these or they could be the same address. (String, 50
characters in length, not nullable, and is not unique).
 Email: Customer's email address where correspondence will be done involving sales
orders. (String, 50 characters in length, not nullable, and is not unique).
 Phone Number: Number to reach customer regarding orders. (String, 13 characters
in length, not nullable, and is not unique).
 Type: Is the customer a dealer, and is the customer taxable. (Boolean, 1 integer in
length, not nullable, and is not unique).

Sales Order: Transaction between customer and Hot Ride employee process in order for
a specified quantity for items.
Attributes:
 Sales Order Number: Uniquely identifies the sales order. (Unsigned integer, less than
32 bits in length, not nullable, and is unique).
 Date: Date of order placed. (String, 10 characters in length, not nullable, and is not
unique).
 Shipping Quote: Price of shipping for order quoted to customer by employee.
(Integer, less than 32 bits in length, not nullable, and is not unique).
 Estimated Ship Date: Date of shipping estimated to customer by employee. (String,
10 characters in length, not nullable, and is not unique).

Invoice: Once product has shipped from the sales order and invoice is created.
Attributes:
 Invoice Number: Uniquely identifies each invoice. (Unsigned integer, less than 32
bits in length, not nullable, and is unique).
7|Page


Invoice Date: Date invoice is created and date of shipping. (String, 10 characters in
length, not nullable, and is not unique).
Tracking Number: Tracking number for items shipped. (String, less than 50
characters in length, not nullable, and is not unique).

Employee: Hot Ride employee that processes orders from customers and requests
inventory from vendors.
Attributes:
 Employee Number: Uniquely identifies each employee. (Unsigned integer, less than
32 bits in length, not nullable, and is unique).
 Employee Name: Employees first and last name. (String, 50 characters in length, not
nullable, and is not unique).
 Address: Address of the employee. (String, 50 characters in length, not nullable, and
is not unique).
 Phone Number: Number to reach employee. (String, 13 characters in length, not
nullable, and is not unique).
 Type: Employee is either salary or commissioned. (Boolean, 1 integer in length, not
nullable, and is not unique).

Payment: Customers make payments to their sales orders.
Attributes:
 Payment Method: Customer can pay in 4 different methods: Cash, Check, Credit, or
PayPal.
2.2 Relationship Set Descriptions:




Vendor Supplies Purchase Order (VSP): The relationship between the vendor and the
purchase order, in which the vendor supplies a specific quantity of a part to the order.
Involves the vendor and purchase order entities, with a mapping of 1 to 1.
Purchase Order Supplies Part/Inventory (PSP): The relationship between the purchase
order and the part, in which the purchase order will supply items to the inventory
allowing parts to be available to the customer. Involves the purchase order and part
entities, with a mapping of m to n.
Customer Makes Sales Order (CMS): The relationship between the customer and the
sales order, in which the customer places an order with a quantity of the specific items
wanted. Involves the customer and sales order entities, with a mapping of 1 to 1.
Employee Works on Sales Order (EWS): The relationship between the employee and the
sales order, in which the employee processes the sales order. Involves the employee
and sales order entities, with a mapping of m to 1.
8|Page




Employee Makes Purchase Order (EMP): The relationship between the employee and
the purchase order, in which the employee creates an order for items needed on the
sales order to be placed with the vendor. Involves the employee and purchase order
entities, with a mapping of 1 to 1.
Customer Makes Payment (CMP): The relationship between the customer and the
payment, in which the customer makes a payment on their account to be applied to a
order. Involves the customer and payment entities, with a mapping of 1 to m.
Payment Applied to Sales Order (PAS): The relationship between the payment and the
sales order, in which the payment from the customer is applied to a specific sales order.
Involves the payment and sales order entities, with a mapping of m to 1.
Sales Order Creates Invoice (SCI): The relationship between the sales order and the
invoice, in which once items are shipped from sales order an invoice is created. Involves
sales order and invoice entities, with a mapping of 1 to m.
2.3 Related Entity Set:
This data base does not currently have a related entity set.
9|Page
2.4 E-R Diagram:
10 | P a g e
Download