CIS-165J Course Information

On This Page
Instructor Information
Name Ed Parrish
Email See instructor's homepage.
Office location See instructor's homepage.
Office hours See instructor's homepage.
Phone See instructor's homepage.
Contacting Instructor If you have any questions about the course or need assistance, please contact me during office hours in person or by telephone, or at any time by e-mail.
Catalog Information
Course title Introduction to Programming Database-Driven Web Sites With Java
Course Number CIS 165J
Section Number 41200
Course description Programming database-driven, web-based application (such as an eCommerce web site) that require online data storage and retrieval and a high degree of user/web site interaction. The web programming environment used is Java accessing a MySQL database. May be offered in a distance learning format.
Course dates 02/07/05 through 06/04/05
Location Online
Instructor-led labs are in room 2501
Meeting day(s) Online
Instructor-led labs are on Monday
Meeting time(s) Online
Instructor-led labs are 7:00PM to 8:05PM
Prerequisite(s) CS 12J or the equivalent.
Recommended Preparation: DM 160 or experience in the use of basic HTML;
CS 20J or the equivalent
Course Objectives
  At the end of this course you will be able to:
  1. Work with the Tomcat servlet/JSP container
  2. Use HTML pages and forms as a front-end to web applications
  3. Write code for JSPs and Servlets
  4. Use sessions and cookies
  5. Write JavaBeans
  6. Create custom JSP tags
  7. Access databases using JDBC
  8. Write SQL queries to select data
  9. Create and alter tables and rows in a relational database
  10. Import and export database data
  11. Design databases for optimal performance and utility
  12. Work with SSL and security
  13. Work with these and other J2EE technologies to develop n-tier web applications
Who Should Take This Course
  The following people will benefit from this course:
  • Advanced Java programming students who want to be able to develop database-driven web solutions using Java rather than learn another language.
  • Software developers who need to understand and develop database-driven web solutions using Java technologies.

I suggest that you read Chapter 1 for an overview of the course.

Skills Needed
File Management
  1. Create, edit, save and rename files using appropriate filenames and extensions
  2. Create directories and subdirectories (folders and subfolders)
  3. Use Windows Explorer (right click Start button) to copy, move and paste files and directories
Internet/WWW You need to know how to use a web browser in order to access course materials on my web site.
Email All students are requested to obtain an e-mail account.
Database You should have some familiarity with basic database concepts such as tables and relationships. However, I will assume you have no experience when I cover databases.
HTML You need to be able to use basic HTML to pass this course. Specifically, you must be able to:
  1. Create and save HTML files
  2. Display web pages in a browser, both from files and from the web
  3. Use style elements such as font tags
  4. Create tables to display data
Programming Skills Prior Java programming training or experience is important preparation for this course. You should have knowledge about and skill using Java classes, strings, text files. In addition, you should know how to use inheritance and interfaces.
Textbooks and Other Materials
Required books Murach's Java Servlets and JSP, Andrea Steelman and Joel Murach, Mike Murach & Associates, Inc., ISBN 1-890774-18-9.
Book Web Page
MySQL: Visual QuickStart Guide, Larry Ullman, Peachpit Press, ISBN 0-321-12731-5.
Book Web Page
Recommended books A Guide to SQL, Philip J. Pratt, Course Technology, ISBN 0-619-03382-7. How to use SQL.
Data Modeling, G. Lawrence Sanders, boyd & fraser publishing company, ISBN 0-87709-066-1. Database modeling and design.
MySQL, Paul DuBois, New Riders Publishing, 0-7357-0921-1
MySQL, Michael Kofler, Springer-Verilag, ISBN 1-893115-57-7
Course Structure
  Most of the course is conducted online using a course learning system called WebCT. Even so, you must attend two meetings during the semester:
  1. the orientation at the first lab meeting at 7:00 P.M. on February 7, 2005.
  2. If you do not attend, without notifying me in advance, you may be dropped from the course roll. Even though I may drop you, responsibility for withdrawing from the course is still yours.

  3. the final exam scheduled for Friday, June 3 at 7:00-9:50 P.M.

Each week you have assigned reading, a discussion topic and a quiz on the reading. Quizzes are given in WebCT and are due before lab time on Monday's.

Within each week's lesson, you will be given a topic for discussion related to the material. Discussions are posted in WebCT. At a minimum, you must post at least one original response and one comment on another posting.

Each Monday at 7:00 P.M., except holidays, there is an instructor-led lab on campus in room 2501. The lab lasts for about an hour and is designed to answer major questions and solve problems. Since this is a hands-on course, a lab room seems like the best place to meet.

After the reading, discussion and quiz, there is a homework assignment for most lessons. The homework is aimed at applying what you have learned to new situations, analyzing the application and seeing the patterns in the technology.

Over the entire semester, and especially during the latter part, you will complete a project. The purpose of the project is to integrate the techniques you have learned from this course. I specify several requirements and you must make many design decisions.

Grading Policies
Assessed areas Your final grade is weighted based on your performance in the following areas:
Assignments 40%
Project 30%
Quizzes 20%
Participation 10%
Assignments Homework assignments are due at the date and time posted in WebCT. I will not accept late assignments because solutions are posted. However, it is possible to improve homework assignment scores by completing extra credit work and most assignments have some extra-credit suggestions.
Project The purpose of the project is to integrate all the techniques you have learned from this class. The finished product of your project is a database-driven web application of your choosing. You present your project during the final exam period, demonstrating your mastery of the subject. The project counts as the final exam for the course and you must demonstrate your completed project to the instructor to pass the course.
Quizzes Most weeks, you will have the opportunity to take a quiz covering the reading. Quizzes are given instead of a midterm to provide faster and continuous feedback to both the student and the instructor. You will have about a one-week period to complete a quiz and due dates are posted in WebCT. There will be no make-ups for any reason. However, I will drop the lowest quiz score in determining the final grade.

Note that if you add the class after the first meeting, you are still expected to complete the initial quiz on time. Not completing the quiz will count toward your lowest score.

Participation After each week's lesson, you will be given a topic for discussion related to the material. At a minimum, you must post at least one original response and one comment on another posting.

Discussion postings are due when the related assignments are due and must be posted to the correct discussion topic. I will not give credit for late postings or postings to the wrong area. However, I do throw out the lowest score in determining the final grade.

As in all communications, a professional attitude is expected and a supportive atmosphere is encouraged. Although it is okay to dispute an idea, it is not okay to disparage a fellow student.

Participation Rubric The instructor will use the following rubric to score your participation each week.
  • 0: No postings are made or postings are not professional and supportive.
  • 1: Only one posting or follow up is made but not both.
  • 2: The minimum of one posting and one follow up is made.
  • 3: In addition to meeting minimum requirements, the postings and follow ups are consistently thoughtful and insightful. At least 4 sentences or a reference to an article, book, web page or other relevant material is included in the postings or follow ups. Any reference must be documented with a hyperlink, or title, author and page number if it is an article or book not on the web.
Grade interpretation Overall grades are calculated using the sum of the weighted averages of each performance area. Extra "points" from one area does not affect another area. Your overall grade is interpreted on the following scale.
Grade From To Description
A 90% 100% Outstanding work demonstrating mastery of the subject.
B 80% 89.9% Above average work with a solid understanding of the subject.
C 70% 79.9% Satisfactory work meeting all minimum requirements.
D 60% 69.9% Substandard work not meeting minimum requirements.
F 0% 59.9% Unsatisfactory work.

If you have questions about scores on any assessment, please contact me right away. I want to ensure both that you understand the material and that your grades are accurate and fair.

Alternate Grading and Incompletes
Credit/No Credit Option By default, everyone receives a letter grade. If you request the Credit/No Credit Option, you must complete the course work at a satisfactory (that is "C") or better level. For more information, see the Cabrillo Academic Policies & Procedures document.
Incompletes You may request an incomplete from the instructor if you are doing passing work and regularly attending at least 75% of a course, but are unable to take the final exam (or otherwise complete the course) because of illness or other unforeseeable emergency and justifiable reasons. You have one year to complete the incomplete. For more information, see the Cabrillo Academic Policies & Procedures document.
Academic Honesty
  Academic honesty means that you give credit where credit is due. Students who are academically dishonest hurt both themselves and other students. They rob themselves of both the knowledge of the material and the experience of learning how to learn. This harms other students as well because nobody can trust that the graduates of a course know the material.

Academic dishonesty includes:

  • Cheating: Intentionally violating the rules of the course by possessing, communicating, using, or attempting to use materials or take actions that the instructor has prohibited.
  • Plagiarism: Use of distinctive ideas, words or code belonging to another person, without sufficiently acknowledging that person's contribution.

For any work submitted in this course, you are not authorized to copy or use work from any source without crediting the source. You may use small snippets of work posted on the web or found in books, as long as it is lawful. However, you must acknowledge the source well enough so that it is easy for the instructor to find. Note that the instructor uses various services and tools to detect cheating by comparing your work with other students, books and the web.

On homework assignments and projects, you are free to discuss problems and ideas for solving problems. You may give and receive help with computer problems, editors and debugging techniques. It is also acceptable to discuss general approaches to problems or algorithms with others. However, you are not free to show your actual homework solutions or code to any other person before you turn in an assignment. Viewing or copying any part of another person's program, or allowing your program to be copied or viewed is not permitted.

During quizzes, you may use your book and notes. However, you may not communicate with any person except the instructor. You are responsible to make it abundantly clear to me that you are not cheating and that you are working alone.

Any person caught cheating or plagiarizing will be given a grade of zero for the assignment or exam. The second offense will result in a no-pass or failing grade for the course. These offenses will be reported to the Dean of Student Services for inclusion in your academic record.


Last Updated: July 28 2006 @14:16:32