Frederick Community College

CIS 106-HYB2   Introduction to Object Design and Programming

Spring 2006

 

 

Instructor Information:

Name:   Prof. Rosemarie A. Alavanja

Office:   C-218

E-mail: ralavanja@frederick.edu

NOTE: All emails must have a subject line that starts with [CIS106-HYB1] or it may be overlooked or rejected.  You must follow the rules set forth on the website for e-mail use.

Office Phone Number: 301/846-2561

 

Sharon Smith

CBT Academic Office Manager: 301/846-2505

Office Hours: Posted on door & website.

Campus Mail Box Number: 101

 

Course Information:

Credits: 3

Last Day to Drop: February 17, 2006

Prerequisites: EN 50A, EN 52, MA 91

Co-requisites: None

Meeting Day(s): Monday

Meeting Time(s): 5:00-7:35 PM

 

Course Description:

Introduces the fundamental concepts of design and programming from an object-oriented perspective. Topics include object design, simple data types, control structures, and simple array and string data structures.  Debugging techniques and various algorithms will be investigated.  The course emphasizes good software engineering principles including an introduction to object design using the Unified Modeling Language (UML).  Fundamental programming skills will be developed using a language that supports the object-oriented paradigm.  This course is for majors or non-majors with little or no programming experience.

 

Core Learning Outcomes:

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

1.       Demonstrate college-level communications skills by:

Explaining the basic concepts and vocabulary of computer information systems in effective, clear and grammatically correct English

Ø      Writing documentation

Ø      Participating in Structured Walkthroughs and discussion boards

2.     Demonstrate critical thinking by:

Ø      Using a computer with appropriate software to design and implement object-oriented computer programs

Ø      Designing programs that use typical control structures and various data types

Ø      Implementing simple object-oriented programs

Ø      Debugging errors within the design or implementation of the solutions

Ø      Creating simple Unified Modeling Language diagrams to design object-oriented solutions

3.     Demonstrate an understanding of technology and its uses by:

Ø      Relating the development of the computer and the way in which the computer has changed society

Ø      Using appropriate computer terminology related to hardware, software and communications

Ø      Using a computerized spreadsheet and programs to solve algebraic problems

4.     Understand and be able to interpret social and educational values by:

Ø      Evaluating current articles on issues related to the impact of computers on the economic, political and cultural development of society

Ø      Writing and participating in discussion board conversations on the current issues

Ø      Displaying an understanding of academic honesty and copyright law

5.     Demonstrate Computer Literacy by:

Ø      Using application software where appropriate to solve problems

Ø      Integrating data from one application into another

Ø      Describing software development methods

 

Instructional Methods:

Lecture, Discussion, Demonstration, Hands-on activities

 

Text(s) for course (these books are sold bundled in the FCC bookstore):

PRACTICAL COMPUTING  2005  Prentice Hall (Hogan)

ISBN#:  0-13-144133-7

SMALL JAVA  HOW TO PROGRAM  6th Edition  2005 (Deitel)

ISBN# 0-13-148660-8

THE ESSENTIAL JAVA CLASS REFERENCE FOR PROGRAMMERS (Durney)

3rd Ed 2005 Prentice Hall ISBN#: 0-13-185645-6

PHIT TIPS: PowerPoint 2003  ISBN#:  0-13-143475-6

           Excel 2003               0-13-130318-X

           Word 2003                0-13-143477-2

 

Evaluation Methods: 

Tests / Papers / Projects

 Value

Final Grade Scale

Tests (2 tests @ 20%)

40%

A: 90-100%

Quizzes (5 @ 3%l)

15%

B: 80-89%

 Assignments

20%

C: 70-79%

Discussion Board Posts, Hands-on Projects & MiniLabs

25%

D: 60-69%

Total

100%

F: Below 60%

 

Progress Report:  

Students will receive some form of assessment of their progress in the course no later than the sixth week of the course.

 

Attendance Policy:  

Students in this class are expected to assume responsibility for attending class (including making discussion board postings), 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 is required in order to complete course work satisfactorily.  Students are expected to start and complete every class on time.  Students that attend sessions regularly will be better prepared to complete testing and lab requirements.  The class attendance policy for this class is:

Class attendance (both on-line and on-campus) is required.  Failure to attend sessions does not excuse a student from completing assignments, tests, 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.

 

Software Requirements:

Software requirements will be discussed on-line and during various on-campus (e.g., orientation) sessions. 

 

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.  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.

 

No Food or Drinks are allowed in the computer labs or classrooms.  FCC is a smoke-free campus.  Smoking is permitted only in outdoor designated areas.


TOPICAL OUTLINE

CIS106 Introduction to Object Design & Programming

NOTE:  your instructor reserves the right to make changes to this outline as needed

Week

 Class

Date

Subject / Content / Class Activity

Assignments, Discussion Boards & Quizzes

 

1.

 

1/30

Course Introduction

Introduction to the Internet and Blackboard

Introduction to the Internet

Creating an Email Account

 

Practical Computing (Hogan):Ch 1 – Understanding Your Personal Computer Terminology:

Input devices

Output devices

The System Unit

Secondary Storage

Small Java (Deitel):Ch 1 – Introduction to Computers, the Internet and the World Wide Web

  • Computer Organization
  • Programming Languages and Compilers
  • Typical Java Development Environment

 

MiniLab: Following directions

Practical Computing (Hogan):

Ch 2 – Understanding Software

·         System Software

Ø      Operating Systems

Ø      Utilities

·         Application Software

Ø      Distribution Methods

Ø      Major Categories of Applications

Ch 3 – Working with Windows

·         Managing Windows

Ch 4 – Understanding Files Folders and Disk Maintenance

  • Files and Folders

Ch 5 – Working with Files and Folders

  • Creating, Renaming Copying, Removing Files & Folders
  • Selecting Multiple Files and Folders

Practical Computing (Hogan) Ch 9 – Creating Documents

            Word processing basics

Using MS Word templates to create documentation

Structured Walkthrough for Assignment 1

Assignment 1
On line Quiz 1

2.

 

2/6

 

Small Java (Deitel):Ch 2 – Introduction to Java Applications

·         First program in Java

·         Memory Concepts

·         Adding Integers

·         Arithmetic

·         Decision Making: Equality and relational operators

·         Keyboard and Screen I/O

Practical Computing (Hogan):

Ch 6 – The Internet

  • Understanding Web addresses
  • Web Sites
  • Searching the Web
  • Understanding Societal Implications

Ch 7 – Working with the Internet

Understanding Privacy and Security Concerns

  • Viruses
  • Firewalls
  • Understanding Ad ware and Spy ware
  • Cookies
  • Digital Signatures

Small Java (Deitel):Ch 3 – Introduction to Classes and Objects

·         Class and Method Definitions

·         Class Files and Separate Compilation

·         Instance Variables

·         void Method definitions vs. Methods that return a value

·          Local Variables & Blocks

Small Java (Deitel):Ch 3, continued

  • Parameters
  • Information Hiding
  • Public and private modifiers

MiniLab: Writing Pseudo code using MS Word

Assignment 1 Due

Discussion Board:  Privacy Issues

 

Assignment 2

 

Online Quiz 2

 

3.

 

2/13

 

Review for Test 1

Structured Walkthrough for Assignment 2

Small Java (Deitel):Ch 4 – Control Statements: Loop Statements

·         Primitive Data Types

·         The if-else statement

·         Introduction to Boolean expressions

·         Nested Statements

·         Compound Statements

·         Multibranch if statements

·         The switch statement

·         The while statement

·         The for statement

·         Nesting while and for

Test 1 in the Testing Center

 

Discussion Board:  Ethical Issues

 

4.

 

2/20

 

MiniLab:  Logic Testing

Small Java (Deitel):Ch 5 – Control Statements:  Loops and the Boolean Type

·         The Loop Body

·         Initializing Statements

·         Ending a loop

·         Boolean Expressions and Boolean variables

·         Precedence Rules

I/O of Boolean Variables

Introduction to PowerPoint

Small Java (Deitel):Ch 6 – A Deeper Look

·         Programming with Methods

·         Methods Calling Methods

·         Static Methods and Static Variables

Ø The math class

Ø Integer, Double and other Wrapper classes

·         Designing Methods

Ø Constructors

Structured Walkthrough for Assignment 3 using PowerPoint

 

Assignment 2 Due

Online Quiz 3

 

Assignment 3

 

Discussion Board: Copyright issues

 

 

5.

 

2/27

 

 Practical Computing (Hogan):Ch 10 – Creating Spreadsheets (Excel)

·        The Excel Interface

·        Creating and Managing Worksheets

·        Working with Formulas

·        Formatting a Workbook

Review for Test 2

Structured Walkthrough for Assignment 4

MiniLab: Debugging Techniques

 Online Quiz 4

Assignment 3 Due

 

Assignment 4

 

 

6.

 

3/6

Small Java (Deitel):8 Classes and Objects: A Deeper Look

·         Derived Classes

·         Overloaded Constructors

·         Enumerations

·         Static Class Members

·         Inheritance

MiniLab: The Object Party

Small Java (Deitel):Ch 6  - Array Basics

Creating and Accessing Arrays

Examples Using Arrays

MiniLab: Object Linking & Embedding

 

Assignment 4 Due

 

Online Quiz 5

Handout

 

7.

3/13

Essential Java (Durney): Chapter 3- An HTML Tutorial

  • Java Applets and HTML
  • Applets
  • HTML Basics
  • Applets in HTML

MiniLab:  Turning an Application into an Applet

Review for Test 2

MiniLab: Using feedback to build a better class environment

Discussion Board: Applet Critiques

 

 

Test 2 in the Testing Center

 

 

 

All students are expected to have read the material in each chapter prior to the class in which the chapter will be discussed.  This topical outline lists the major topics within each chapter, but the examinations may include additional material from each chapter not discussed in class sessions.