Frederick Community College

CIS201-HYB1 Computer Science I (with Java)

Summer 2009

Instructor Information:

Name: Frank (Francis M.) Seidel

Associate Professor of CIS

Office:   Science & Technology C-214

E-mail:  fseidel@frederick.edu

In order to ensure a response, be sure to use your official FCC e-mail address supplied by the college. The subject line for all e-mails pertaining to this course must use formatting as directed by the Blackboard instructions found under Course Information.  NOTE:  Use of [CIS201-HYB1] at the beginning of the subject line for e-mails outside of Blackboard.

Phone Number:  301/846-2589

Department Manager: 301/846-2505

Office Hours: By Appointment Only

Campus Mail Box Number: 156

 

Course Information:

Credits: 3

Last Day to Drop: Wednesday, July 8, 2009

Prerequisites: MA082 and CIS106, or CIS108, or permission of instructor

Co-requisites: None

Meeting Day(s): Thursday

Meeting Time(s): 6:00 PM – 8:30 PM

 

Course Description:

Emphasizes object-oriented design, data abstraction and programming (in Java) beyond an introductory level.  Introduces user interfaces and graphics through the study of object design.  Explores the social implications of computing.  Emphasizes object-oriented software engineering including UML.  Investigates fundamental sorting and searching algorithms, introductory dynamic data structures and event driven programming techniques.  Develops programming skills using a language that supports the object-oriented paradigm (Java).

 

Core Learning Outcomes:

By the completion of the course students will be able to:

1.    Use object-oriented techniques to design solution algorithms

2.    Evaluate algorithms in terms of complexity, completeness, accuracy and correctness

3.    Develop various fundamental algorithms that manipulate objects and data structures

4.    Develop event-driven computer programs

5.    Use a programming language (Java) that supports the object-oriented paradigm

6.    Discuss the social implications of computing and computer programming.

 

Additional Outcomes:   

7.    Discuss the differences between object oriented and procedural design

 

Text(s) for Course:

Java Foundations: Introduction to Program Design and Data Structures, Lewis, DePasquale & Chase, Addison-Wesley, 2008.  ISBN 0-321-42972-9.  Referred as JF in Topical Outline

Additional materials will provided on-line.

Assignments:

All assignments must be prepared on computer and be neatly organized.  To receive credit for an assignment, the assignment must:

            A.         make use of good structure and appropriate design technique

B.         use appropriate indentation for all pseudocode and coding

C.        adhere to project specifications (these may be given during lecture)

D.           use neatness in preparation

E.            include all appropriate documentation and test data with results.

 

A project that only solves the problem in a minimal manner will receive a “C” grade.  Higher grades are reserved for exceptional effort.  Assignments will NOT be accepted after the last class.

 

Make Up Exams and Quizzes:

If it is necessary to miss an exam or quiz, you will be allowed to take a MAKE-UP ONLY if you have a valid excuse and have notified your instructor beforehand.   Failure to follow this procedure may result in NO MAKE-UP EXAM!  The type of make-up exam is left to the instructor's discretion and may include an essay style exam.

 

 

Evaluation Methods: 

Tests / Papers / Projects

Point Value

Final Grade Scale

Quizzes (5 @ 20 points each)

100

90% - 100%

A*

Assignments* (5 @ 40 points)

200

80% - 89%

B

Exams (2 @ 200 points each)

400

70% - 79%

C

Laboratories, Discussion Boards & Class Participation

200

60% - 69%

D

TOTAL POINTS

1000

59% and below

F

*NOTE: It will be necessary to hand in every Assignment to receive an “A” grade in this course.

 

 

Progress Report:

Each student will receive a progress report during the third week of class.  Please feel free to discuss any concerns regarding the course with me during office hours.

 

 

Attendance Policy: 

Students in this class are expected to assume responsibility for attending class, their behavior during class sessions and their desire to learn. Disruptive behavior will not be tolerated.

The majority of students will find that class attendance and on-line participation are required in order to complete course work satisfactorily.  Students are expected to start and complete every class on time.  Students that attend regularly will be better prepared to complete testing and lab requirements.  The class attendance policy for this class is:

Class attendance is required.  Failure to attend sessions does not excuse a student from completing assignments, examinations, or other requirements of the course on time.  Excused absences include illness (with doctor's note), emergencies, religious holidays, and official College functions.  Late assignments may not be accepted or may have a percentage (amount to be determined by the instructor) docked from the score.

 

 

E-Mail Requirements:

1.    All e-mail to your instructor should be sent from Blackboard and Blackboard must use your MyFCC e-mail address.   This should avoid accidental spam filtering.

2.    Each e-mail message must pertain to only one topic and the subject line should contain the name of the assignment.  E-mails should contain only one topic (e.g., Clarify the use of Polymorphism via Interfaces for Assignment 4.)

3.    Examples of proper subject lines:

a.    CIS_201_HYB1_SUMM09_SESS8W: Question about Assignment 1

b.    CIS_201_HYB1_SUMM09_SESS8W: Question about grade on Assignment 4

c.    CIS_201_HYB1:  Missed class on Tuesday

4.    The student should expect to receive a reply to electronic communications within 24 to 48 hours, not including weekends.

5.    Assignments will be submitted via Blackboard unless otherwise instructed.

 

 

Software Requirements:

Java 5.0 (6.0 is optional) and an approved VATE or IDE will be required.  Additional requirements will be discussed in class.

 

 

Software Piracy: 

Software that is copyrighted is intended for use in its original form.  Duplicate copies can be produced only if written the manufacturer grants permission.  The U.S. law states that noncompliance may result in civil damages not exceeding $50,000 and criminal penalties of up to one (1) year and/or a $10,000 fine.  It should be noted that minors are not exempt from copyright law.

 

 

Academic Honesty: 

Each student is expected to perform his/her own academic work. If students work together, they are expected to each be working on separate computers and completing assignments on their own. Two students who work together but submit two copies of the same assignment (even if minor changes like names are made) are plagiarizing. Plagiarism and other forms of academic dishonesty are considered an extremely serious offense. The student is personally responsible for understanding the various forms of academic dishonesty as they are explained in the "Student Code of Conduct" in the Student Handbook.  Ignorance of any requirement for academic honesty will not constitute an excuse from disciplinary proceedings. Any form of cheating will be considered grounds for failure of the course.

 

 

Modification of Schedule: 

The instructor reserves the right to adjust the assignments or schedule.  This may also change the date(s) of one or more of the exams.  Any affected assignment due dates may also be adjusted.  In the event the schedule is adjusted, the student will remain responsible for all the assignments listed in this syllabus.

 

 

 

 

Students with Disabilities


FCC provides reasonable accommodations to otherwise qualified students with disabilities in accordance with the Americans with Disabilities Act of 1990 (ADA) and Section 504 of the Rehabilitation Act of 1973 (Section 504) and amendments.  Students with disabilities who are in need of accommodations must contact the Services for Students with Disabilities (SSD) office at 301-846-2408 (A Building, Room 106A) in order to request and apply for services.  The SSD office will require appropriate documentation of a disability.  Questions related to accommodations or services can be directed to the SSD office.  Additional information related to services can be viewed at the following FCC web page:  http://www.frederick.edu/student_services/disability.aspx. 

If you currently receive services from the SSD office, please submit your Student Success Plan to me and make an appointment with me to discuss your accommodations and needs in class.  I will hold any information you share with me in strict confidence unless you give me permission to do otherwise.

 

 

 

 

Technical Requirements: 

Proficiency with Microsoft Word or Open Office and a Java capable web browser (Netscape, Firefox or Internet Explorer preferred), Microsoft Word, Java 5.0+ JDK. All required software is available for use in the open computer laboratory (C-207) and some software is provided with the book or available for free download.  Additional software requirements will be discussed on-line and during the weekly class meetings.

 

No Food or Drinks are allowed in the computer labs or classrooms.  FCC is a smoke-free campus. 

 


CIS 201: Computer Science 1 – Fall 2008

Topical Outline

Class

Date

Subject / Content

Assignments*

& Quizzes

1

June 4

Overview & Syllabus Review

 

JF: Chapter 1 Introduction

1.1 The Java Programming Language

1.2 Program Development

1.3 Problem Solving

1.4 Software Development Activities

1.5 Object-Oriented Programming

 

JF: Chapter 2 Data and Expressions

2.1 Character Strings

2.2 Variables and Assignment

2.3 Primitive Data Types

2.4 Expressions

2.5 Data Conversion

2.6 Reading Input Data

 

JF: Appendix B – Number Systems

 

JF: Appendix C – Unicode

 

In-Class Lab on Chapter 2

 

On-Line

June 5

to

June 10

JF: Chapter 3 Using Classes and Objects

3.1 Creating Objects

3.2 The String Class

3.3 Packages

3.4 The Random Class

3.5 The Math Class

3.6 Formatting Ouput

3.7 Enumberated Types

3.8 Wrapper Classes

 

JF: Chapter 4 Conditionals and Loops

4.1 Boolean Expressions

4.2 The if Statement

4.3 Comparing Data

4.4 The switch Statement

4.5 The while Statement

4.6 Iterators

4.7 The do Statement

4.8 The for Statement

 

JF: Appendix D - Java Operators

 

JF: Coding Guidelines & Appendix J - Syntax

Assignment 1

 

On-Line Quiz 1

 

2

June 11

In-Class Discussion of Chapters 3 & 4

In-Class Discussion of Appendix D & F

In-Class Lab on Chapter 3 & 4

Brief review of Chapters 1-6 for Exam.

 

On-Line

June 12

to

June 17

JF: Chapter 5 Writing Classes

5.1 Classes and Objects Revisited

5.2 Anatomy of a Class

5.3 Encapsulation

5.4 Anatomy of a Method

5.5 Static Class Members

5.6 Class Relationships

5.7 Method Design

5.8 Method Overloading    

 

JF: Chapter 6 Graphical User Interfaces

6.1 GUI Elements

6.2 More Components

6.3 Layout Managers

6.4 Mouse and Key Events

6.5 Dialog Boxes

6.6 Some Important Details

6.7 GUI Design

Assignment 2

 

On-Line Quiz 2

 

3

June 18

In-Class Discussion of Chapters 5 & 6

In-Class Lab on Chapter 5, 6 and Appendix F

Brief review of Chapters 1-6 for Exam.

Assignment 1 Due

On-Line

June 19

to

June 24

On-Line Review of Chapters 1-6 for Exam.

 

Exam 1 – Part 1 (Open Book Programming)

 

JF: Appendix F – Java Graphics

 

JF: Appendix G – Java Applets

On-Line Exam 1 Part 1

 

Assignment 3

4

June 25

Exam 1 – Part 2 (Closed Book Objective)

 

In-Class Discussion of Graphics & Applets

 

Introduction to Chapter 7

In-Class Exam 1 Part 2

 

Assignment 2 Due

On-Line

June 26

to

July 1

JF: Chapter 7 Arrays

7.1 Array Elements

7.2 Declaring and Using Arrays

7.3 Arrays of Objects

7.4 Command-line Arguments

7.5 Variable-Length Parameter Lists

7.6 Two-Dimensional Arrays

 

JF: Chapter 8 Inheritance

8.1 Creating Subclasses

8.2 Overriding Methods

8.3 Class Hierarchies

8.4 Visibility

8.5 Designing for Inheritance

On-Line Quiz 3

 

Assignment 4

5

July 2

In-Class Discussion of Chapters 7 & 8

In-Class Lab on Chapter 7

In-Class Lab on Chapter 8

Assignment 3 Due

 

On-Line

July 3

to

July 8

JF: Chapter 9 Polymorphism

9.1 Late Binding

9.2 Polymorphism via Inheritance

9.3 Interfaces

9.4 Polymorphism via Interfaces

 

JF: Appendix E - Java Modifiers

 

JF: Chapter 10 Exceptions

10.1 Exception Handling

10.2 Uncaught Exceptions

10.3 The try-catch Statement

10.4 Exception Propagation

10.5 The Exception Class Hierarchy

10.6 I/O Exceptions

On-Line Quiz 4

 

 

Assignment 5

6

July 9

In-Class Discussion of Chapters 9 & 10

In-Class Lab – Chapters 9

In-Class Lab – Chapters 10

Assignment 4 Due

 

On-Line

July 10

to

July 15

JF: Chapter 11 Building, Testing & Debugging

11.1 Building Larger Applications: JFMail

11.2 Packages

11.3 Building Java Projects

11.4 Testing

11.5 Debugging

 

JF: Chapter 12 Recursion

12.1 Recursive Thinking

12.2 Recursive Programming

On-Line Quiz 5

7

July 16

In-Class Lab & Discussion of Selected Parts of Chapters 11 & 12

 

Introduction to JF: Chapter 13 Searching and Sorting

 

 

On-Line

July 17

to

July 22

JF: Chapter 13 Searching and Sorting

13.1 Searching

13.2 Sorting (Selection, Insertion & Bubble)

13.3 Analysis of Algorithms

 

Review for Exam 2

 

Exam 2 – Part 1 (Closed Book Objective)

On-Line Exam 2 Part 1

 

Assignment 5 Due – July 20, 2009 by 6 pm.

8

July 23

Presentations for Assignment 5

 

Exam 2 – Part 2 (Open Book Programming)

In-Class Exam 2 Part 2

 

*Remember, it will be necessary to hand in every Assignment to receive an “A” grade in this course

 

NOTE: Approximate Grade Breakdown for Laboratories, Discussion Boards & Class Participation:

ITEM

POINTS

Discussion Board Participation on Blackboard (Various Threads)

50

In-Class Lab – Chapter 2

5

Participation in the In-Class Discussion of Chapters 3 & 4

10

In-Class Lab – Chapters 3 & 4

5

Participation in the In-Class Discussion of Chapters 5 & 6

10

In-Class Lab – Chapter 5

5

In-Class Lab – Chapter 6

5

Participation in the In-Class Discussion of Chapters 7 & 8

10

In-Class Lab – Chapter 7

5

In-Class Lab – Chapter 8

5

Participation in the In-Class Discussion of Chapters 9 & 10

10

In-Class Lab – Chapter 9

5

In-Class Lab – Chapter 10

5

In-Class Lab & Discussion of Selected Parts of Chapters 11

10

In-Class Lab & Discussion of Selected Parts of Chapters 12

10

In-Class Presentations for Assignment 5

50

TOTAL POINTS

200