Database Design Using Visio and Based on Data Requirements and Business Rules
Lab Overview-Scenario/Summary
TCOs:
Given a situation containing entities, business rules, and data requirements, create the conceptual model of the database using a database modeling tool.
Given an existing relational database schema, evaluate and alter the database design for efficiency.
Given an existing database structure demonstrating efficiency and integrity, design the physical tables.
Scenario
You have been asked to create a database model using MS Visio Database Model Diagram Template. The purpose of this iLab is to provide experience designing, with limited instructions, a simple database based on a list of data requirements and associated business rules.
You will then complete an MS Access database based on the model developed in Visio, creating the necessary tables and relationships.
Upon completing this lab, you will be able to
1. create a new Visio file for database design;
2. using the data requirements and the business rules provided, develop a conceptual model (ERD), including attribute data types and required field lengths; and
3. create a new MS Access database based on the ERD.Preparation
1. If you are using Citrix for MS Visio and/or MS Access, follow the
login instructions located in the iLab area in Course Home.
Lab
Part A: Create a Visio ERD from Data Requirements and Business
Rules
Step 1: Open Visio
a. Open Microsoft Office, Visio application, or
b. if you are using Citrix, click on Microsoft Office Applications folder to start Visio.
Step 2: Identify and Create the Entities
1. Open a new blank Database Model Diagram. If you need assistance with
this, refer to the Week 1 Lab Instructions. Be sure that all options are set consistent to those used in previous weeks so that you generate your model in Crow's Foot notation.
2. Save the file as YourName_Lab3.vsdx.
3. Based on the information provided below, create the necessary entities for the Pages in Time database. If you need assistance to create the entities, refer to iLabs from Weeks 1 and 2.
Pages in Time
Pages in Time is a small bookstore carrying a variety of books. The owners have decided to computerize the books available through the store so that they can determine more easily what books are on hand and which books need to be special ordered to meet customer needs. Because customers do not always remember the name of a desired book, the owners want to be able to look for books by author or by type (genre). They also want to be able to find the publisher's information using the system so that they can order books more easily.
After visiting with the owners, you have gathered the following information on data requirements and business rules to develop a conceptual design (ERD), prepare it for conversion to an Access database, and then create the actual database.
DATA REQUIREMENTS
You have determined that you will need at least the following entities to resolve the relationships that exist in the data.
CUSTOMERS
ID
Name (store data in its smallest parts)
Address (store data in its smallest
parts) Phone:
E-mail Address
Preferred Contact Method
ORDERS
Number
Date
Received Date
Customer Contacted (Yes or No)
BOOKS
ISBN Number
Title
Purchase Price
Year Published
Fiction or
Nonfiction Type
(Genre)
In stock
AUTHOR
ID
Name (store data in smallest
parts!) Short Biography
PUBLISHER
ID
Name
Addre
ss
Phone number
Contact
Person Fax
Number
Website
Step 3: Identify and Create Attributes (fields)
NOTE: Because you are creating your diagram in Visio, it will be easier to
create the attributes prior to the relationships.
a. Refer to the data requirements from Step 2 of this iLab. If you have not already created the attributes (fields) in your ERD, add them at this time.
b. Be sure that you store data in its smallest parts. c. Save your file, and continue to Step 4.
Step 4: Identify and Designate the Keys
a. Determine whether an attribute exists in each table that will satisfy the requirements of a primary key. If no appropriate field exists, create a field for this purpose.
b. Check the Primary Key property for the field in each table using the Visio column properties.
Step 5: Identify the Relationships
a. Using the information below on the business rules for Pages in Time, create the relationships between the entities created in Step 2.
b. Notice that when many-to-many relationships exist, you will need to create associative entities. If you are not sure of the process to create relationships in Visio, refer to the iLabs for Weeks 1 and 2. You created an associative entity in Week 2.
c. For any associative entities created, enter necessary fields. You may also need to designate or create a primary key.
BUSINESS RULES
Business rules help determine the relationships between data that should help you design the relationships between your entities.
1. Each customer can place many orders over time, but each order is placed by only one customer.
2. Each order may include many books, and a book may be included on many orders.
3. Each book may have multiple authors, and each author may have written multiple books.
4. Each book has only one publisher, but a publisher may publish many books.
Part B: Create the Access Database from the ERD
Preparation
Open the Visio file created in Part A of this iLab, you will reference this file in
Part B.
Step 1: Start MS Access and Open a New Blank Database
a. Create a new Blank Database; refer to the Week 2 iLab for more detailed instructions.
b. Save the database as YourNameLab3.
c. Note: If you are unsure how to complete any steps in this iLab, refer to the previous week's iLabs.
Step 2: Create the Tables
a. Based on the Visio diagram from Part A, create the tables for your database.
b. Enter the field names.
Step 3: Identify the Relationships
a. Use the information from your Visio diagram to identify and create relationships in Access.
Step 4: Determine and Specify the Data Types
NOTE: After meeting with the client and discussing the database needs, determinations on data types and attributes have been established. Use the following guidelines to determine data type, primary keys for each table, and set attribute properties such as field length and required fields as indicated. If not indicated, use your best judgment for data types.
a. Using the information below, select the data type for each attribute (field) in your diagram, and set the type in the attribute properties. (Refer to the Week 2 iLab if you are not sure how to do this. Where allowed, estimate the field length needed.)
As the data types and field lengths are not included in the data requirements, you should make a selection based on your knowledge of the type of data and approximation of length required. The Visio and Access data type equivalents are shown below.
Access Field Types:
Number
Text
Memo
Date/Time
Currency
Yes/No
AutoNumber
Hyperlink
NOTE: Be sure to save the final version of your file.
Step 7: Create the Relationships
a. Open the database relationships window.
b. Based on the Visio diagram from Part A, create the relationships for your database.
c. Be sure to enforce referential integrity for each relationship.
Save your file.