CIS 186
Database Programming
3 Credit hours

Course Information

Course Description:

This course is designed to enable students to develop customized database applications. Subsequent to a brief survey of relational database techniques and methods, the emphasis will be on developing the necessary skills to design, create, and implement user-friendly front ends for relational databases. Using a database engine such as Microsoft Access 2002  (XP), the course will concentrate on developing and coding procedures using VBA (Visual Basic for Applications).

Course Objectives:

Microsoft Access Access 2002 contained in Office XP was chosen for the vehicle to introduce and facilitate database programming because of its inherent capability of lending itself to custom application development. Microsoft Access enjoys wide usage in business and industry. It is primarily used as a small to medium sized departmental relational database manager. Microsoft Access 2002 is an excellent tool to introduce students to both database concepts and database programming. Access 2002 makes use of VBA (Visual Basic for Applications) to accomplish advanced customization and data manipulation, thereby allowing intensive programming techniques to create customized, user-friendly applications. 

Upon successfully completing this course students should be able to:

  • Understand the basics of relational databases and apply the concepts.
  • Understand and institute event driven programming techniques as applies to Microsoft Access .
  • Masterfully apply VBA coding techniques.
  • Recognize and manipulate Access 2002  Data Access Objects.
  • Identify the types of record sets available in Access 2002, select types for appropriate uses, and manipulate record set data by way of VBA coding.
  • Recognize SQL, the value of queries, and embed SQL queries into VBA coding.
  • Work with data files external to Access 2002, including importing, exporting, and linking by way of VBA coding.
  • Control report generation through customization via VBA and printing events.
  • Use advanced techniques for program control and data manipulation by way of VBA coding.
  • Anticipate problem areas in the application where errors may occur and develop VBA coding to trap and respond to errors.
  • Test and debug applications developed in Access 2002.
  • Create custom properties and methods for Access 2002 Data Access Objects.
  • Develop applications using Microsoft Access 2002 and VBA (Visual Basic for Applications).
 
Prerequisites and Co requisites:
Prerequisites:  CIS-113 Visual Basic Programming or the equivalent
Co requisites:  None
Course Topics:
The sequence of course topics will occur as follows:

Relational databases

  • What are they?
  • Compared to flat databases
  • Normalization

Event Driven Programming

  • Compared to traditional programming methods
  • An introduction to VBA

Creating VBA Code

  • Procedures and functions
  • Variables
  • Data types
  • Naming conventions
  • Syntax

Program Control

  • Program control structures
  • Performing repetitive tasks
  • Working with arrays

Working with Access 2000 Objects

  • What are objects?
  • Use of Data Access Objects
  • What are collections?
  • Properties and methods

Working with Record sets

  • What is a record set?
  • Types of Record sets
  • Traversing a record set
  • Extracting values from a record set

Manipulating Access 2000 Objects

  • Introducing queries and SQL
  • Embedding SQL using VBA
  • Creating a table using DAO

Working with Data External to Access 2000

  • Importing data
  • Exporting data
  • Linking data in external databases

Report Generation

  • Using Access 2000 expressions
  • Adding control to reporting
  • Using print events in a report

Using Advanced Programming Techniques

  • Advanced array techniques
  • Parameter passing
  • Using DLL's
  • Creating custom properties for Data Access Objects

Techniques for Error Handling

  • Error prevention
  • Error types
  • Using error events
  • Application testing and debugging

Class Modules

  • What are objects?
  • Benefits of OOP
  • Building custom objects
  • Custom properties and methods for forms
 
Specific Course Requirements:
Students taking this course must either own or have regular, unrestricted access to a microcomputer. For recommended and required see both Hardware Requirements and Software Requirements.

Students taking this course must also have regular, unrestricted access to the World Wide Web (the Internet), either through an Internet Service Provider or through other means (i.e., corporate access, academic access, etc.).

Required Competencies:

  • Computer literate - can create, save, find, delete, copy, and transfer files and folders
  • Comfortable with Visual Basic, VBA, or another suitable visual, event-driven programming language.
  • Experience working on the Web including proficiency in traversing and maneuvering through Web sites and Web Pages, downloading and uploading documents, using email, and using search engines for research topics.

Helpful Competencies:

  • Exposure to Microsoft Access or a contemporary RDBMS (Relational Database Management System, i.e., FoxPro, xbase).

The delivery method of the course will be online. Therefore, unrestricted access to a microcomputer and the Internet is a necessity to complete course tasks and to facilitate communications both with the instructor and fellow class members.

As the main course topic is involved with creating code and manipulating data on a microcomputer, the above required competencies are a must for successful completion of the course. Exposure to Microsoft Access is a plus and will give students a head start on the course. However, it is not required and Access 2000 basics may be picked up along the way.

 
Textbooks, Supplementary Materials, Hardware and Software Requirements
Required Textbooks:

Please visit the Virtual Bookstore to obtain current textbook information for this course:

 http://rodp.bkstr.com

Supplementary Materials:
CD Accompanying required text.
Hardware Requirements:
The minimum requirements can be found at http://www.rodp.org/students/hardware_software.htm. Specific hardware requirements for this course include speakers or headphone.
Software Requirements:
The minimum requirements can be found at http://www.rodp.org/students/hardware_software.htm. Specific hardware requirements for this course include...
 
*   Microsoft Access 2002  (Stand-alone)   OR   Microsoft Office XP
*   Adobe Acrobat Reader
*   WinZip
 
Notes on Software requirements:
 
Microsoft Office and Microsoft Works are two separate and distinct application suites. Although they share some of the same practical functionality, they are not compatible. The database module of Microsoft Works cannot be used to complete this course.
 
Any Microsoft Office product before version 2000 is NOT compatible and can NOT be used.
Instructor Information
Please see the separate page inside the course to find instructor contact information as well as a statement of virtual office hours and other communication information.
Assessment and Grading
Testing Procedures:
All tests and/or quizzes will be of the "take-home" variety.  Students will not be required to go to a proctored testing site to be administered the tests/quizzes. Tests/quizzes will be posted on line to be taken along with due date on completion. Tests not taken or completed tests submitted past the due date will be awarded a score of 0, until arrangements can be made to schedule a make-up test. Make-up tests may not be the same as the general test originally administered.
Grading Procedure:
All assigned projects will be graded according to completeness, accuracy, and neatness.  Work submitted past the due date will be penalized at 10 points per calendar day. 

Final grades will be awarded on the following:

Tests - 45%
Participation in online activities - 20%
Assignments - 35%

Notes on participation:

Class members are required to participate in all scheduled online activities. This includes threaded discussion groups and a required email to the instructor weekly.  

 
Grading Scale:
A = 90 - 100
B = 80 - 89
C = 70 - 79
D = 60 - 69
F = 59 or below
Assignments and Participation
Assignments and Projects:
Weekly assignments are accessed by clicking on the "Assignments" link on the left side of the screen.

Upon completion of your weekly assignments, submit them on the Assignments page.  If you need instructions, please click on the Help at the top of the page.

 
Class Participation:
Communications is an integral part of learning and thus will be emphasized in the course. Students are required and expected to take an active role in the weekly threaded discussions groups. Failure to do so will be reflected in the final grade.

The topics for discussion each week will be listed on the Assignments page for that week.

 Communication by email between students is strongly encouraged as is the sharing of ideas in the threaded discussion groups.

 
Punctuality:
Due dates for assignments are listed in the assignments bar at the left.  All coursework assignments  are expected to be complete and submitted on or before the due date.

Participation in threaded discussion groups must be timely and be performed during the week that a particular topic is under discussion.

All tests are expected to be completed and submitted on the day they are administered and by the due time stated for that particular day.  The date of the test is listed in two places:

*      On the test link on the left menu bar
*      On the Calendar

Course Ground Rules
Communications

Electronic communication is an extremely important element of the course. It is highly unlikely that face-to-face encounters will occur. Therefore, it is imperative that students use the communication tools at their disposal such as email and threaded discussions. As these are the primary means of communications, students will be graded on their participation in threaded discussion groups.

Carefully review the specific instructions for both email and discussion groups. Observe all courtesy protocols for effective communication.  All email communication between the student and the instructor must be WITHIN WebCT using the Email link.

Submission of Assignments and Deadlines

Pay particular attention to assignments and submission dates. If the student is unclear about what the assignment is, he/she should contact the instructor as soon as possible for clarification.

All assigned projects will receive a 10 point penalty per late class day past the due submission date.

Coursework

Do not skip over topics or assignments in the course. You may work ahead, however, stay focused and follow the course outline. Protect your generated data and coursework by making a backup copy. System failure or media failure is not an excuse for lost work when you have means of archiving this data at your disposal. As an prospective IT professional, failure to provide adequate security and archival backups may have devastating consequences if it occurs in an on-the-job scenario.

Calendar

Access the course calendar frequently for any changes or additional information that may be forthcoming.

WebCT

Take some time to get comfortable using WebCT. This is the interface that the course will be presented in.

Technical Problems

Report any technical problems to the responsible parties immediately. If you are experiencing technical problems, please make the instructor aware.

Academic Honesty

Academic honesty is central to the educational process. Acts of academic dishonesty are serious offenses. Suspension from the Program could be the consequence for acts of academic dishonesty. Therefore, no student shall:

  • claim or submit the academic work of another as one's own;
  • procure, provide, accept or use any materials containing questions or answers to any examination or assignment without proper authorization;
  • complete or attempt to complete any assignment or examination for another individual without proper authorization;
  • allow any examination or assignment to be completed for oneself, in part or in total, by another without proper authorization;
  • alter, tamper with, appropriate, destroy or otherwise interfere with the research, resources, or other academic work of another person;
  • alter, tamper with, appropriate, destroy or otherwise interfere with the use of institutional property, including but not limited to classroom fixtures, laboratory and/or computer equipment and supplies, and instructional materials; or
  • fabricate, or falsify data or results.
  • commit plagiarism if you submit as your own work:
  • part or all of an assignment copied or paraphrased from another person's manuscript, notes or talk [lecture];
  • part or all of an assignment copied or paraphrased from anything published.
  • act as an accomplice in plagiarism if they:
  • allow their work, in outline, draft or finished form, to be copied and submitted as the work of another;
  • prepare an assignment for another student which he/she submits as his/her own work;
  • keep or contribute to a file of papers or presentations which anyone other than the author adopts and submits as his/her own work.
 
 
 Observe course netiquette at all times. 
Guidelines for Communications
Email:
  • Always include a subject line.
  • Remember without facial expressions some comments may be taken the wrong way. Be careful in wording your emails. Use of emoticons might be helpful in some cases.
  • Use standard fonts.
  • Do not send large attachments without permission.
  • Special formatting such as centering, audio messages, tables, html, etc. should be avoided unless necessary to complete an assignment or other communication.
  • Respect the privacy of other class members
Discussion Groups:
  • Review the discussion threads thoroughly before entering the discussion. Be a lurker then a discussant.
  • Try to maintain threads by using the "Reply" button rather starting a new topic.
  • Do not make insulting or inflammatory statements to other members of the discussion group. Be respectful of other’s ideas.
  • Be patient and read the comments of other group members thoroughly before entering your remarks.
  • Be cooperative with group leaders in completing assigned tasks.
  • Be positive and constructive in group discussions.
  • Respond in a thoughtful and timely manner.

What is a threaded discussion group? A threaded discussion group can be compared to an electronic bulletin board where thoughts on a subject can be posted, questions posed, and questions answered. Students will find that threaded discussion is a wonderful communication tool as it will permit participants time to give thought to what they want to contribute to the discussion. It also gives students who are reluctant to vocalize thoughts and ideas in a traditionally conducted class an opportunity to participate.

The discussion groups will follow the asynchronous model. That is to say, that postings and replies will not take place in real time, such as chat groups. This gives group participants time to review the prior postings and responses, reflect on thoughts and ideas, and respond appropriately to the subject to either the main question or individual responses appropriately. The instructor or moderator can view all the postings, archive them, thereby maintaining a record of who participated and who did not.

Threaded group discussion will be used throughout the course. Participation will be required and will be a part of the final grade earned.

Chat:
Chat and/or chat rooms will not be implemented in this course. This course is offered strictly asynchronously with the thought that everyone has separate schedules to maintain, thereby making it extremely difficult to schedule a time to meet electronically where everyone could participate.
Web Resources:

Library

The Tennessee Virtual Library is available to all students enrolled in the Regents Degree Program. Links to library materials (such as electronic journals, databases, interlibrary loans, digital reserves, dictionaries, encyclopedias, maps, and librarian support) and Internet resources needed by learners to complete online assignments and as background reading must be included in all courses. 

Students With Disabilities

Qualified students with disabilities will be provided reasonable and necessary academic accommodations if determined eligible by the appropriate disability services staff at their home institution. Prior to granting disability accommodations in this course, the instructor must receive written verification of a student's eligibility for specific accommodations from the disability services staff at the home institution. It is the student's responsibility to initiate contact with their home institution's disability services staff and to follow the established procedures for having the accommodation notice sent to the instructor.

Syllabus Changes

The instructor reserves the left to make changes as necessary to this syllabus. If changes are necessitated during the term of the course, the instructor will immediately notify students of such changes both by individual email communication and posting both notification and nature of changes) on the course bulletin board.

Technical Support

Telephone Support:
If you are having problems logging into your course,
timing out of your course, using your course web site tools, or other technical problems, please contact the AskRODP Help Desk by calling

1-866-550-7637 (toll free)

or go to the AskRODP website at:

http://help.rodp.org