Montgomery County Community College

Spring 2006

CIS 111B - RC

Computer Science II: Object Oriented Programming

3-2-2

TIME: Monday Evenings, 6:00 PM - 9:50 PM (Two 5 minute breaks)

CLASS FORMAT: Lecture and discussion Room: Parkhouse 328 Time: 6:00 PM - 7:55 PM

Computer Lab Room: Parkhouse 328 Time: 8:00 PM - 9:50 PM

 

INSTRUCTOR:       Robert Moyer

E-MAIL:   rmoyer@mc3.edu

PHONE:     (484) 865-5688 (day)                                 (610) 584-4730 (evenings)

Faculty Home Page: faculty.mc3.edu/rmoyer/

OFFICE HOURS/LOCATION: by appointment

 

CATALOGUE DESCRIPTION

This course introduces students to the object-oriented programming paradigm and focuses on the definition and use of classes and the fundamentals of object-oriented design. It is designed for students that already have a firm foundation in procedural programming concepts. A high-level programming language such as Java or C++ is used. This is the second course for computer majors.

PREREQUISITES

CIS 111, with "C" or better or equivalent experience in procedural programming techniques

LEARNING GOALS

1.  Understand objects and object-oriented design principles.

2.  Produce well designed and documented programs that are organized in a logical and efficient fashion.

3.  Learn to apply fundamental computing algorithms (such as simple sorts and searching algorithms) to create programs demonstrating mastery of these concepts.

4.  Understand the history and development of programming languages and paradigms.

5.  Understand the basic concepts surrounding computer language translation.

LEARNING ACTIVITIES

Lecture, discussion, hands-on lab exercises, homework assignments, group projects, quizzes and exams

Required Text and Other Materials

 

  1. Java 5 Illuminated, Anderson & Franceschi, Jones and Bartlett
  2. Computer Science Illuminated, 2nd edition, Dale & Lewis, Jones and Bartlett
  3. Explorations in Computer Science: A Guide to Discovery, Meyer, Jones and Bartlett (lab manual to accompany C.S. Illuminated)

 

Student should have removable storage devices (diskettes, flash memory, etc) for transporting programming assignments.

 

Grading (Criteria and Methods of Evaluation)

 

Final grade for the course will consist of the average of the following five grading instruments. Each component will receive a letter grade (A+,A,A-,B+,B,B-, etc.). Quiz and Exam scores will be graded based on percentage. (e.g. Total Points Earned/Total Possible Points). Programming assignments will be graded on correctness, completeness and style. Programs will be weighted by complexity, to be determined when the assignments are given. The letter grades will then be used to calculate the final grade for the course. (e.g. sum of (grade * percent) ) Failing 2 or more of the 4 grading instruments will result in failing the course.

 

Weekly Quizzes

20%

Total points, normalized to 100          (lowest score dropped)

Lab Exercises

20%

Simple lab exercises to be done in the lab portion of class. Labs and schedule TBD. These are scheduled Closed labs. Note: some lab time will be Open lab and may be used for any programming assignments.      (lowest score dropped)

Program assignments

30%

Approximately 7 programs to be written by the student as Homework.

Final Exam

30%

 (see format below)

 

 

Grade

Points

+

-

A

4.0

4.25

3.75

B

3.0

3.25

2.75

C

2.0

2.25

1.75

D

1.0

1.25

0.75

F

0.0

na

na

 

For example:
 Quiz grade of    A+  would be 4.25 * .25 =  1.0625
 Lab grade of     B-   would be 2.75 * .20 =  0.550
Program grade of B   would be 3.0   * .30 =  0.90
Final Exam grade A- would be 3.75 * .25=   0.9375

For a total of 3.45 for a course grade of B (>=2.5 and < 3.5)
A = >=3.5 points
B = >=2.5 and < 3.5
C = >=1.5 and < 2.5
D = >= 0.5 and < 1.5
F = <0.5

 

 

Final exams will be approximately 60% short definitions, fill-in blanks, matching and true/false questions. Quizzes will given most class periods. Questions on the quizzes will most likely reappear on the examination with minor editing. Quizzes, therefore, provide the student with an excellent study aid for the exam. They should not be missed. If you miss a quiz, you may get a copy to study from, but NO MAKE-UP QUIZZES WILL BE GIVEN. Quizzes will take only a few minutes of each class period. They will be based on the previous week's reading assignment and class discussions.

 

The final 40% of the exams will be short program stubs and/or discussions on the concepts of data abstractions, algorithms, and data structures.

Programming assignments will be given throughout the semester to give the student a working knowledge of course concepts and problem solving techniques. Students should keep current with assignments. Assignments due dates will be stated when the assignment is given. The maximum grade obtainable on a late assignment will be one (1) letter grade lower for each week an assignment is late. There will be approximately 7 programming assignments during the semester.

Attendance Policy (absence and lateness)

Attendance is expected at all lecture sessions. Computer lab time is for the benefit of the student. Students should attend all labs sessions where they will have access to the Instructor, question and answer time on assignments, and lab exercises reinforcing material covered during lecture. Some lab time will be free time used to work on class assignments. However, assignments may be done on any computer the student has access to, including the Learning Resource Center.

 

Missed Work/Test Make-Up Policy

 

Assignments are due as scheduled. Final exams should be taken as scheduled. (Make-ups and extensions are by prior arraignment only). Quizzes and late assignments as noted above in the grading section.

 

Withdrawal Policy

 

Students may withdraw from the class according to the College Guidelines. Special consideration may be given on an individual basis.

Students who are in otherwise good standing in the course, may be given the grade of INCOMPLETE, provided that any conditions outlined by the college are met. Good standing means evidence of progress toward all assignments can be demonstrated and a reasonable plan for completion provided. In the case of a missed Final Exam, an UNAVOIDABLE and documented reason for missing the exam is required. In no case will workload from concurrent course work be considered as a reason for granting INCOMPLETE status.

A student may change from Grade to Audit status at any time, again within the rules of the college.

 

Student Academic Code of Ethics

 

"In the pursuit of knowledge and scholarship, all members of the academic community at MCCC must maintain a constant commitment to academic integrity. The College provides an environment that fosters critical thinking and judgment, and in order to safeguard the integrity of the institution, students are expected to follow the policies of the College and the faculty. To fulfill their part of that commitment, students must adhere to an academic code of ethics by refraining from participation in acts of academic dishonesty. By attending MCCC, students accept this Student Academic Code of Ethics and agree to the following:

 

·         Students must do all of their own work.

·         Students must not cheat.

·         Students must not help others to cheat.


Students who are unclear about the validity of an academic procedure they are about to undertake should ask their instructor for guidance beforehand.  Violations of this code of ethics will result in sanctions, including possible dismissal from College." (See complete Student Code of Ethics in the catalog, Student Handbook Calendar, or on line at http://www.mc3.edu/gen/polpro/st_acad_code_of_ethics.html)


Please note:

Students may consult each other when solving programming exercises. Work turned in for grade, must show sufficient understanding of the problem and original effort on the part of the student. Copies of other students programs will not be accepted for credit and will be considered in violation of the above code of ethics.

Students with Disabilities Policy:

Students with disabilities may be eligible for accommodations in this course. Contact the Director of Services for Students with Disabilities in the Counseling Center, College Hall, at (215) 641-6575/6577 for more information. At West Campus, contact the Director of Student Affairs, (610) 718-1839.”

 

Other:
Homework for this class can be expected to be from 5 to 15 hours per week. Students are expected to have any reading assignments complete before the class in which they will be discussed.

Java Technology

Java 2 Platform, Standard Edition (J2SE) Version 1.5 is desirable

You can download the JAVA SDK from Sun.   http://java.sun.com/j2se/

A IDE (Integrated Development Environment) makes programming much easier. Most students are familiar with jGRASP. Other IDEs include Netbeans, Bluejay, Eclispe, Jbuilder, to name just a few.

Since Java runs on most platforms, feel free to use your favorite. I have JDKs running on Windows, Linux, and Mac. Lab PCs use Windows XP.



Weekly Assignments  (may be subject to minor changes)

·  P(rogramming) = Java 5 Illuminated, Anderson & Franceschi, J 

·  C(oncepts) = Computer Science Illuminated, 2nd edition, Dale & Lewis, Jones and Bartlett

There is a Lab period scheduled each week. Some labs will be closed, i.e. activities will be planned, may be individual or team but don’t as a class. The remaining labs will be open and are to be used for programming projects. Labs activities and programming assignments will be defined during the semester.  

Class/Week #

Class Date

Chapter(s)Discussed

Topic(s)

1

23-Jan-06

C-6

Course Overview, Authors Web Sites,  Lab #1 Tools and resources. 

2

30-Jan-06

C-7

Low level languages, Lab #2 the PEP/7 machine

3

06-Feb-06

P1-6

Review of JAVA programming language from CIS 111, Lab #3

4

13-Feb-06

P-7

Object Oriented Design, Lab # 4  

5

20-Feb-06

C-10, C-11

Operating Systems, File Systems and Directories, Lab #5

6

27-Feb-06

P-9 (P-8)

Multidimensional Arrays, ArrayList, Sorting and Searching revisited, Lab #6

7

06-Mar-06

P-12

User Interfaces, Lab #7

8

20-Mar-06

P-10

Inheritance, Polymorphism and Interfaces, Lab #8

9

27-Mar-06

 P-11

Exceptions, Lab #9

10

03-Apr-06

P-13

Recursion, Lab #10

11

10-Apr-06

C-13

Artificial Intelligence, Lab #11

12

17-Apr-06

C-9, P-14

Abstract Data Types and Algorithms, Collections. Lab #12

13

24-Apr-06

 C-12, C-14

Information Systems, Simulations and other Applications, Lab #13

14

01-May-06

C-17

Limits of Computers, Review for Final, Lab #14 – Final day for all assignments.

15

08-May-06

 

Final Exam

College is closed for Spring Break Holiday 13-Mar-06 through 19-Mar-06.

This file was created by Robert Moyer on 01/05/06.