IS 475/675 - Database Design and Implementation
University of Nevada, Reno: Spring Semester 2008
Last Updated 01/22/2008

     

Course Objectives

The purpose of this course is to enhance your knowledge of database design, creation, and implementation. This course combines conceptual knowledge of database management systems (DBMS) in business with practical, hands-on skills using the SQL Server DBMS.

At the end of this course you will know or be able to do the following:

  1. Design a database that is stable and understand why your design is stable. You will use the normalization process to facilitate database design.
  2. Use entity-relationship diagrams (ERD's) to depict the design of a database. You should understand how data models such as ERD's are used to communicate design concepts with both technical and non-technical personnel.
  3. Use structured query language (SQL) to create, update, and access data in a database. Implement a database via SQL using the SQL Server DBMS.
  4. Understand the objectives and design goals of a transaction database versus a data warehouse.
  5. Understand the general components of a database management system.
  6. Know what activities are the responsibility of a database administrator.

There are many topics related to DBMS that we will not discuss in this class. For example, at the end of this course, you will NOT be able to:

Texts    

Mannino, Michael. Database Design, Application Development and Administration, Third Edition, McGraw-Hill/Irwin 2007, ISBN: 978-0-07-294220-0. This is the "full-length" version of the text.

There is a custom (shorter) version of the text available at the book store with the ISBN: 0-390-84242-7. That version of the text contains only those chapters we will review during this class.

Syverson, Bryan; Murach, Joel. SQL Server 2005 for Developers, Mike Murach & Associates, 2007, ISBN-10: 1-890774-39-1.

Software    

We will use Microsoft SQL Server database management system (DBMS) to learn SQL, implement databases, and practice some basic database administration tasks. SQL Server 2005 (most current version) is available in the COBA computing labs and from home using remote desktop connection.

SQL Server provides a number of tools that make it easier to manage the database environment. I prefer that you minimize the use of these tools. The purpose of using SQL as our only vehicle for communicating with the DBMS and avoiding "easy" tools is: (1) to learn SQL; (2) to better understand the commands that are frequently "hidden" by the use of wizards; and (3) to learn the basic similarities of all relational database management systems.

We will use Microsoft Visio to create and maintain data models. Visio is available in the COBA computer labs and as a free download for use at home.

Prerequisites    

The prerequisites for this course are IS 101, 201, 350 (Intro. to Computer Systems Development), and 370 (Systems Analysis and Design). The presentation of these prerequisites means you:

If you do not have the skills listed above, or you have not taken the required prerequisites for this class, please drop this class and enroll in the prerequisites.

Grading    

Your grade will be determined using the following point distribution for the course deliverables:

300 Points Paired or Individual Assignments

30%

300 Points Design & Implementation Project

30%

200 Points First Exam

20%

200 Points Second Exam

20%

Your final grade for the class will be based on the percentage of total points you have earned for all work completed during the semester. The final grade will not be rounded. The grade value assigned to each given percentage range is shown below:

A 91% and Above C 71% - 76%
A- 90% C- 70%
B+ 87% - 89% D+ 67% - 69%
B 81% - 86% D 61% - 66%
B- 80% D- 60%
C+ 77% - 79% F Below 60%
Your grade for this class is based on the results of your assignments, projects, exams, and classroom participation. Each are described in more detail below.

There are two primary graded components of the course: Paired/individual assignments and the design and implementation project. These components require you to use skills learned in systems analysis and programming as well as in this class. These components involve designing, building, and implementing databases to satisfy business application problems. You may have to learn about a specific business application domain, such as some aspect of accounting, to be able to complete the projects.

The SQL and ERD assignments will help you learn the basics about how to design small databases and program SQL. You can work alone or part of a team. No more than three people are allowed to work together as a team on these assignments. If you work as part of a team, the team turns in a single set of deliverables for the team.

Design and Implementation Project will help you learn about database design, ERD modeling, physical database design and the implementation of a relatively extensive database. This project requires you to create a logical design, produce a physical design for the database, create a prototype of the database using SQL Server, create a robust test dataset and write SQL queries. To receive ongoing feedback, you will submit it for grading in three separate parts. You may work as part of a team for the project. Teams may have a maximum of 4 people. I recommend that you work in a team, but you may work alone on the project, if you prefer. If you work as part of a team, the team turns in a single set of deliverables for the team.

There will be two exams given during the semester. The exams cover material gathered from your readings, projects, and class lectures. The first exam emphasizes the material covered during the first part of the course, while the second exam is comprehensive and covers all the material in the class (focusing, however, on the material covered since the first exam).
The exams are composed of multiple choice, programming, and database design questions. You may bring your SQL book to both exams. You may bring two pages of notes to both exams. It is OK to write on both sides of the page.

Course Policies    

Learning is a collaborative effort.

The approach used for this course takes the view that the instructor and students work in a collaborative effort.

It is my responsibility to: Establish a framework and put together the materials we use to learn about this subject; create challenging projects; provide knowledge about the topic; present the material in a way understandable to students; provide guidance for database design and implementation activities; and give timely feedback concerning my opinion of your course deliverables.

It is your responsibility to work within the course framework and learn how to design and implement databases. I expect you to ask questions and communicate with me and your fellow class members via email or in the classroom. I expect you to read your texts, complete the projects, and arrive in class prepared to learn.

If you feel you are not learning the material, then it is up to you to take steps to change that situation. I am available for assistance, but it is up to you to make the overture and ask for help. Please do not struggle for hours with an issue that could be answered quickly by myself or by another member of the class. Send email to the class, ask questions in class, visit me during my office hours, make an appointment to see me. Take an active role in your education.

In summary, we are both active participants in the learning process.

You are responsible for completing all assignments on time.   

Assignments are due during the beginning ten minutes of class on the assigned day. No late assignments will be accepted without prior approval from the instructor. Do not skip class and turn in your assignment after class; I will not accept the assignment.

I realize that emergencies do happen and you may be unable to turn in an assignment on time, or take an exam on the scheduled day. Emergencies, however, are situations that are out of your control such as illness, death, or an accident. Please inform me as soon as possible when an emergency occurs. I have an answering machine in my office for messages, and email is usually available 24 hours a day, 7 days a week. I do not consider a scheduling conflict, such as other course work or job-related work, to be an emergency. I am happy to accept assignments early, or allow you to take an exam on an earlier date, if that will help resolve a scheduling conflict. I am not happy to delay an exam or an assignment because of a personal scheduling conflict.

In addition to the dates your assignments are due, there are a few other important university-related dates you should note:

Jan. 31, 2008 Last day to add a class. Last day to change from audit to credit. Last day to get a refund if dropping an individual class.
March 14, 2008 Last day to drop a class. (No refund, of course.) Last date to change from credit to audit.

The administration of this university has made it very difficult to withdraw from a course after the last date to drop a class as shown above. Note this date on your calendar and decide whether or not you wish to remain in this class by that date.

 

Give yourself enough time to learn the course material.   

Most of us "do more than one thing" in our lives. For example, we go to school, are employed, have relationships, entertain ourselves, take care of others, etc. Frequently, it is difficult to balance the demands of all our required (and not required…) activities. Since employment and education are two time-consuming activities for most students in the college, COBA faculty recommend the following maximum numbers of credits and work hours in order to effectively balance education and employment:

 Max. # of Credits

 Max. Work Hours
 15 Credits 10 Hours
 12 Credits 20 Hours
 9 Credits 30 Hours
6 Credits  40 Hours

 

A grade of "incomplete" is given only in emergencies.   

The following paragraph is repeated from the UNR 2007-2008 general catalog:

An "I" is given when a student is performing passing work, but for some uncontrollable reason is unable to complete the course requirements during the instructional period. Non-attendance, poor performance or requests to repeat the course are unacceptable reasons for issuance of the "I" mark.

Please do not ask for an "incomplete" grade unless you have a reason that fits within the definition given above.

Being polite is a survival skill.   

Civilized people refer to the rules of correct behavior as "being polite." The rules of correct behavior can differ depending upon the people and the situation. I recommend that you learn what it takes to "be polite" in any group of people with which you interact. Some of the rules of correct behavior for this class are:

Don't cheat. Cheating includes plagiarism, fraud and other forms of academic dishonesty. Examples of cheating include: If you give your work to another student to copy; if you give your work to another student to reference, and that student turns in the work as his/her own; if you take the work of another student and turn it in as your own; if you use the work of a student who did the same (or a similar) project a prior semester and turn it in as your own; and/or if you work with another person outside your group and you both turn in the same results. These examples are not all encompassing, so try and avoid even the look of impropriety with your assignments. Cheating will result in an "F" for an assignment, or failure in the class, depending on the infraction. All incidences of cheating will be reported to the Office of Student Judicial Affairs

Don't chat. If you have a question, or want to present your opinion about an issue under scrutiny, say it loud enough for the class to hear.

Don't wander in and out of class. Don't leave during a class session unless you really need to leave. I assume that if you really need to leave class that it is not a temporary situation. For example, if you have an appointment that you absolutely MUST go to and need to leave class early, I will understand. I also understand that you might become ill during a class and have to leave. What I don't understand is when you constantly walk in and out of class.

Don't be late. Class meeting times are relatively short - we have 2.5 hours a week for 14 weeks to review all required material. Please be on time for class so that we can make full use of our time without interruptions.

Tell me when you are going to leave early. If you must leave a class early, and you can anticipate that need in advance, please tell me when you will be leaving.

Don't eat. Please don't bring an entire meal to class. Drinks and small, quiet snacks are OK.

Don't beep. Please make sure that all pagers, cellular phones, watches, computers, and other devices capable of making annoying beeping sounds are turned off during class. Don't talk on the phone during class.

Don't complain about your grade in class. I am happy to discuss any of your grades received on any of your assignments at any time during my office hours. You can also make an appointment, call me, or send email to discuss a grade. I prefer not to take the small amount of time allotted to the class as a whole to discuss individual grades, or to make appointments to discuss individual grades. Talk to me about it outside of class.

You are responsible for knowing material covered in class.   

I will be lecturing about material that is not in your text and I expect you to know this material for your exams. Please do not ask me whether you missed anything "important" when you miss a class. I believe that what we do in class is important, and I consider the person who asks this question to be rude (impolite). If you miss a class, it is up to you to find a classmate who will provide you with notes of the class material.

Course Schedule    

Date

Discussion Topic

Related Text

Assignment Due
01-23 Introduction to Database Management Systems (DBMS) and database design

DB:Chapters 1, 2

ERD Review

na
01-28 Introduction to Database Design, the Relational Model, and ERDs DB: Chapters 2, 5
SQL: Chapter 1
Handout

Database Design & Relational Model Presentation

Sign up for the class email listserv

ERD #1: 20 pts

01-30 Database Design - ERDs DB: Chapter 5
SQL: Chapter 9
(pg.270-280)
ERD #2: 20 pts
02-04 Database Design - ERDs DB: Chapter 6 ERD #3: 30 pts
02-06 Database Design - Developing models

DB: Chapter 6

Database Design Evaluation

ERD #4: 30 pts
02-11

SQL: Database creation and update

SQL: Introduction to Queries

SQL: Chapters 7, 10
SQL Table Creation Handout
ERD #5: 40 pts
02-13 SQL: Database creation and update practice

SQL: Chapters 2, 11

SQL Table Maintenance Overview

SQL Server Connection to MSAccess Handout

SQL Server Share Instructions

Meet in Computer Lab - AB312

na
02-18 Holiday: President's Day    
02-20 SQL: All about queries

SQL: Chapters 3, 8

SQL Query Introduction Handout

SQL #1: 30 pts
02-25 SQL: How to summarize data

SQL: Chapter 5
Meet in Computer Lab - AB312

SQL Summary Function Presentation

na
02-27 SQL: Joining tables SQL: Chapter 4 SQL #2: 30 pts
03-03 SQL: Joining tables and sub-queries

SQL: Chapters 4, 6

Meet in Computer Lab - AB312

na
03-05 SQL: Joining tables, sub-queries SQL: Chapters 7, 8, 13 na
03-10 First Exam First exam: DB: Chapters 1, 2, 5, 6, SQL: Chapters 1-10 SQL #3: 40 pts
03-12 SQL: Complex queries and views SQL: Chapter 12 na 
03-17 SQL: Complex queries and views SQL: Chapters 6, 12  na 
03-19 Database design - normalization DB: Chapter 7 SQL #4: 60 pts
03-22, 03-24  Holiday: Spring Break    
04-02 Database design - normalization DB: Chapter 7
SQL: Chapter 9
na 
04-07 Database design - normalization DB: Chapter 7
SQL: Chapter 9
na
04-09 Design Review - normalization DB: Chapter 7
SQL: Chapter 9
Design & Imp Project - Part 1
(25% of the total project grade)
04-14

Developing a robust test dataset

Physical database design

DB: Chapter 8 na
04-16 Physical database design DB: Chapter 8 na 
04-21 Data Warehousing DB: Chapter 16 na 
04-23 Data Warehousing DB: Chapter 16 Design and Imp. Project - Part 2
(35% of the total project grade)
04-28 Database Administration, Transaction Management DB: Chapters 14, 15 na
04-20 Database Administration, Transaction Management DB: Chapters 14, 15 na 
05-05

Database Administration, Transaction Management

Review

DB: Chapters 14, 15 na  
05-12 Second Exam (2:15-4:14PM) Comprehensive Design and Imp. Project - Part 3
(40% of the total project grade)     

Since there are two texts for the class, the notation "DB:" is used for Database Design, Application Development and Administration, and "SQL:" is used to denote SQL Server 2005 for Developers.
This schedule is subject to change based on the progression of the class.

Copyright, Dana Edberg, 2008. All materials available on this website are included in the copyright. Do not distribute without the permission of the author.