Upload
chrystal-ashlee-hood
View
213
Download
0
Tags:
Embed Size (px)
Citation preview
Course Learning Process
1
Course objectivesVisualization methods; systems development processSystems development tools: Access and Excel
Methods to learn materialCourse lectures: concepts, exercises, questionsBook tutorials:
Labs: in-class time to try out new and/or difficult Access and Excel skills/concepts
Outside of class: do book tutorials not done in labsBook material:
Explanation, concepts, detailed description
Methods to assess learning (and hopefully learn more…)Homework and projects:
Apply instruction from tutorialsCreate simulated “real” applications
Help available
2
Your books!!!!Online help via Access and ExcelGoogle (or other favorite search engine)IS Graduate Assistant (Robert Dittmer)
Office hours: MTWR 10 AM – noon in labEmail: [email protected]
Professor (Christina Hilfer)Office hours: MTWR 2:00-3:00PMEmail: [email protected]
Objectives 6/12/13
3
Learn introductory concepts and guidelines for designing databases Differentiate and categorize types of stored
data.Understand the situations where it is
appropriate to use a database vs. spreadsheet vs. both.
Define key terms related to database design.Learn how to design a small database.
Understand how Access creates data structures and relates data in a database.
Questions for a systems developer
4
What am I trying to accomplish by using a computer? Are you: Keeping track of lots of information for an organization,
customer, government, investor?Making processes more efficient requiring less labor?Facilitating decision making?Presenting information in a more readable, attractive
format?What is the best way to accomplish your goals?
Database management system?Spreadsheet? Web front end?Custom developed programs?Combination?
What types of data are stored on a computer?
5
Video, pictures, audio
Web pages
Word processing documents
PowerPoint-type presentations
Structured data: Pre-defined formats such as employee, customer, student, registration data.
Book Example: Belmont Landscapes
6
Company provides landscape architecture services including analyzing sites, developing plans and performing construction work.
Wants to have a way to keep track of the work that will be done for customers (“contracts”) and then have a way to charge those customers (“invoices”) once the work has been completed.
Should you use a spreadsheet or DBMS for Belmont Landscapes?
7
Why do we store data in a database?
8
To protect the “integrity” of the data.Make data accurate.Reduce data redundancy.
To make data more accessible.Enhance flexibility of data access methods.Improve speed of data access.
To make an application more adaptable.Provide more flexibility in application
development.Decrease dependence on a given
visualization method.
Overview of MS Access
9
Data Management Software (not technically a database management system)
Has the following objects:Tables: Object to store data. This is the
only data storage object in Access.Queries: Object to view data stored in
tables. Can be used to filter data, reformat data, create calculations, create aggregations, create summarizations.
Forms: Object to enter data into a table in user friendly format. Also used to view data in a nice format on a screen.
Reports: Object to view data in a nice format on paper.
Important Database Design Terms
10
Entity (when created in a database this is a table): A person, place, or thing about which we store data. Example is a Customer for Belmont Landscapes.
Entity instance(also called a record or row): One instance of an entity that includes all data stored about that instance. Example is “Anthony Rodriquez” for Belmont.
Attribute (also called a field or column): A characteristic of the entity about which we store data. Examples are Company, FirstName, Lastname for a Customer entity.
Examine the contract “spreadsheet”
11
Review data content.What is the application? What is the
purpose of the stored data?Is any of the data redundant? Why might redundant data be a problem?
12
Contract Number Customer ID Company LastName FirstName Phone Address City State ZIP Contract Type Invoice Number Invoice Date Invoice Amount
3011 11001 StudentLast StudentFirst616-866-3901
49 Blackstone Drive Rockford MI 49341 Residential Landscape Plan 2011 03/23/2013 $1,500.00
3011 11001 StudentLast StudentFirst616-866-3901
49 Blackstone Drive Rockford MI 49341 Residential Landscape Plan 2012 05/10/2013 $2,500.00
3012 11027 O'Brien Karen517-483-9244 38 Langley Rd Lansing MI 48933
Consultation for backyard, residential 2021 02/25/2013 $300.00
3015 11005 Hawes Owen616-392-0622 102 Pineview Rd Holland MI 49423
Schematic plan for backyard, residential 2041 04/01/2013 $1,500.00
3017 11012Grand Rapids Engineering Company Rodriquez Anthony
616-454-9801
225 Summer Street
Grand Rapids MI 49503 Peer plan review for town 2051 04/01/2013 $2,250.00
3020 11055 Fox and Hound Grille Gorski Steve269-979-2004
1440 Beadle Lake Rd
Battle Creek MI 49014 Landscape design for restaurant 2031 04/19/2013 $1,500.00
3020 11055 Fox and Hound Grille Gorski Steve269-979-2004
1440 Beadle Lake Rd
Battle Creek MI 49014 Landscape design for restaurant 2032 08/19/2013 $2,000.00
3020 11055 Fox and Hound Grille Gorski Steve269-979-2004
1440 Beadle Lake Rd
Battle Creek MI 49014 Landscape design for restaurant 2033 09/20/2013 $2,000.00
3020 11055 Fox and Hound Grille Gorski Steve269-979-2004
1440 Beadle Lake Rd
Battle Creek MI 49014 Landscape design for restaurant 2034 10/20/2013 $1,000.00
3021 11040RiverView Development Company Nowak Charles
616-988-0777 144 E Tower Ave
Grand Rapids MI 49503
Landscape plans for multifamily housing site 2111 10/12/2013 $4,500.00
3021 11040RiverView Development Company Nowak Charles
616-988-0777 144 E Tower Ave
Grand Rapids MI 49503
Landscape plans for multifamily housing site 2112 11/12/2013 $3,000.00
3021 11040RiverView Development Company Nowak Charles
616-988-0777 144 E Tower Ave
Grand Rapids MI 49503
Landscape plans for multifamily housing site 2113 09/02/2014 $12,000.00
3021 11040RiverView Development Company Nowak Charles
616-988-0777 144 E Tower Ave
Grand Rapids MI 49503
Landscape plans for multifamily housing site 2114 09/05/2015 $8,500.00
3022 11043 Monroe State College Kirk Rachel616-988-1320 40 Monroe St
Grand Rapids MI 49503 Landscape design for two entrances 2101 07/14/2013 $4,500.00
3022 11043 Monroe State College Kirk Rachel616-988-1320 40 Monroe St
Grand Rapids MI 49503 Landscape design for two entrances 2102 11/15/2013 $12,000.00
Process for Designing Databases (Database Normalization)
13
Identify all the fields needed to produce the required information Divide each piece of data into its smallest useful part
Example 1: Break up a name into first, last, initial
Example 2: Break up an address into street, city, state, zip
Group related fields into tables
Use an entity-relationship diagram (ERD) to depict the design
Determine each table’s primary key
Identify how the tables are related (or if they are related) Include a common field in related tables (foreign key)
Determine the properties of each field Type of data: Text, date, number, etc.
Size of data
Name of data
Contract Data
14
Group (sub-divide) the customer data
15
Group (sub-divide) the invoice data
16
What is a primary key?
17
DefinitionExamples“Natural” vs. “Surrogate”
Primary Keys
18
Natural keys are primary keys having an innate value
ExamplesA UPC codeA stock symbolA book ISBN number
In cases where there is no innate value, we create an artificial key (surrogate key).The key value is arbitraryMaybe just some Integer value
Composite key: two or more fields combine to uniquely identify a record.Sometimes used when joining tables.
Define keys and relationships
19
What does it look like in Access?
20
What is a foreign key?
21
DefinitionExampleDepiction on diagrams
What is referential integrity?
22
Definition“Constraint”Conceptual exampleImplementation in Access example
Referential Integrity Usage
23
Primary keys ensure entity integrityEliminates duplicate recordsNull values are prohibited
Referential integrity ensures that a foreign key in one table matches a primary key in another tableWithout referential integrity, orphaned records can
existA record in the (many) table with a corresponding
record in the (one) table
Referential Integrity in Access
24
Referential Integrity
25
Enforce referential integrity means 1-to-many relationships are enforcedCascade Update means that if primary key changes
in master table the corresponding key is updated in the detail table
Cascade Delete means that deleting master record causes corresponding child records to be deleted