25
Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn material Course lectures: concepts, exercises, questions Book 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 labs Book material: Explanation, concepts, detailed description Methods to assess learning (and hopefully learn more…) Homework and projects: Apply instruction from tutorials Create simulated “real” applications

Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

Embed Size (px)

Citation preview

Page 1: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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

Page 2: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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]

Page 3: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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.

Page 4: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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?

Page 5: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

What types of data are stored on a computer?

5

Video, pictures, audio

Email

Web pages

Word processing documents

PowerPoint-type presentations

Structured data: Pre-defined formats such as employee, customer, student, registration data.

Page 6: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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.

Page 7: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

Should you use a spreadsheet or DBMS for Belmont Landscapes?

7

Page 8: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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.

Page 9: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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.

Page 10: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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.

Page 11: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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?

Page 12: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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

Page 13: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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

Page 14: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

Contract Data

14

Page 15: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

Group (sub-divide) the customer data

15

Page 16: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

Group (sub-divide) the invoice data

16

Page 17: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

What is a primary key?

17

DefinitionExamples“Natural” vs. “Surrogate”

Page 18: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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.

Page 19: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

Define keys and relationships

19

Page 20: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

What does it look like in Access?

20

Page 21: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

What is a foreign key?

21

DefinitionExampleDepiction on diagrams

Page 22: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

What is referential integrity?

22

Definition“Constraint”Conceptual exampleImplementation in Access example

Page 23: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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

Page 24: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

Referential Integrity in Access

24

Page 25: Course Learning Process 1 Course objectives Visualization methods; systems development process Systems development tools: Access and Excel Methods to learn

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