UMUC Europe
SearchSearch Contact UsMyUMUC Site MapWebTycho  
INSS 505 Introduction to Object-Oriented Programming

INSS 505 Introduction to Object-Oriented Programming

Kapaun

2002-2003 Term 1

Instructor.       Dr. Susan T. Dean                               

Phone: 06224/929773

Email:  sdean@faculty.ed.umuc.edu

Text. C. Thomas Wu,  An Introduction to Object-Oriented Programming with Java.   (2nd  Edition)

Description.  This course will introduce the principles and techniques of object-oriented programming.   This course satisfies the programming language prerequisite for the M.S. program. No prior programming experience is assumed.

Objectives.  Upon satisfactory completion of the course, students should be able:

To explain the main concepts of the object-oriented programming paradigm as they relate to software development in an MIS environment.

To design, write, and debug programs of moderate complexity using the Java programming language.  These programs will incorporate such software constructs as class hierarchies, class inheritance, design of classes, data structures and methods, processing character and array data structures, file input and output, graphical user interface design and event-driven programming, and  Java applets.

Course Requirements and grading.

Two midterm exams                 15% each

Final exam                                30%

Programming projects               40%

All exams will be open-book, in-class.  There will be seven programming assignments, with significant effort expected outside of class time.  See Topics and Assignments section below for exam and program due dates.

Students will need a Java compiler to complete class assignments.  Java 1.2, 1.3, or 1.4 compilers will be satisfactory.  Compilers may be downloaded from http://java.sun.com/products/jdk and some are available on CDROM.  The Textpad editor is also recommended (http://www.textpad.com/).

Grading Standards.               90-99%    A                 80-89%    B

70-79%    C                 < 70%     F

Projected Schedule of Topics and Assignments

(All references to Wu, Introduction to O-O Programming, 2nd Ed.)

 

Date

Topics

Assignment Due

M 19 Aug

Introduction, Into to O-O Concepts and Java (Ch’s. 1 & 2), Mechanics of Using Java

 

W 21 Aug

Java Programming (Ch. 3)

 

M 26 Aug

Classes (Ch. 4)

ONE of #9-23, pp. 131-137 (Ch.3)

W 28 Aug

Selection Statements (Ch. 6)

 

M 2 Sep

Repetition Statements (Ch. 7)

#16 p. 285 OR #21 p. 287 (Ch. 6)

W 4 Sep

Midterm Exam 1 – Chapters  1,2,3,4,6,7

 

M 9 Sep

Characters, Strings (Ch. 8)

#22 p. 349 (Ch. 7)

W 11 Sep

Array Processing (Ch. 9)

 

M 16 Sep

File Input/Output (Ch. 11)

ONE of (1) #15 p. 407,

(2) #20 & 21 pp. 408-409,

(3) #22 & #23 p. 409. (Ch. 8)

W 18 Sep

Midterm Exam 2 – cumulative, with major emphasis on chapters 8, 9, 11

 

M 23 Sep

Sorting and Searching (Ch. 10)

#3 OR #4 (explain in lab report what would be different with the other choice) pp. 476-477 (Ch. 9),

AND in the same program #15 p. 558 (Ch. 11)

W 25 Sep

Reusable Classes and Packages (Ch. 12)

 

M 30 Sep

GUI Classes and Event-Driven Programming (Ch. 13)

#13 p. 518 (Ch. 10). Create and use at least one reusable and packaged class (Ch. 12).

W 2 Oct

Applets (Ch. 5)

 

M 7 Oct

Inheritance and Polymorphism (Ch. 14)

#16 p. 656 (Ch. 13), a GUI modification of #22 p. 349.

W 9 Oct

FINAL EXAM – cumulative

 

 

Late Work

The standard rule is that late programs will be penalized by 10% for each week that they are late.

 

Attendance

Students are expected to be in class unless it is unavoidable (e.g., TDY, family emergency). If you must miss, you are responsible for getting information from other students regarding what was covered in class (which may well not follow the textbook!), and for submitting assigned work according to the published due dates.

 

Turn in the following for Each Assignment

  1. Program source code (.java) and compiled code (.class) on a floppy disk. The disk should be clearly labeled, including the exact file name used for this assignment if there are other files on the disk. (Assume that you will be without this disk for a week, so don’t give me a disk that contains files you will need sooner than that, and don’t give me your only copy of anything!)
  2. Printout of the Java source code, and of the results of running the program.
  3. A brief narrative (use word processing to produce this, please!) describing your experiences in working on this program – the types of errors you encountered, any decisions you made regarding test data (and discussion of why you think this collection of test results is sufficient to demonstrate that the program works correctly), any decisions made during the process of designing your program, etc. If you have received any help with your programming, you should give credit in the lab report. This “lab report” serves two functions – gives you a chance to think about what you have learned from the assignment, and gives me a chance to get some insights about that as well.

Getting help

I will try to check my email every day, and welcome questions via that mode about your programs. Some of you have my Samford University address, but I would prefer to use my UMUC address for all email related to this course:             sdean@faculty.ed.umuc.edu

When you send questions via email, please be as specific as possible (e.g., don’t just say it doesn’t work, tell me the text of the error messages or specifically what results you are seeing, from what inputs, that are incorrect). Also, please attach a copy of the .java file(s) and any input data files that I did not give you.

 

Plan to check the web board frequently, as I will use it to post information of potential interest to all of you. For example, it is possible that as I help solve a problem that one of you has sent via email, I will realize that there is something that I should tell all of you It is your responsibility to check the web board – I will not notify you when I put information there.

 

We do not have access to a computer lab at Kapaun. I will try to allow time at the end of each class to debug problems that you bring on diskette. Assuming that we have access to a projection device, I will display these for the class to see. This is not intended to be embarrassing, the goal is to learn from our mistakes. Hopefully, everyone will be able to contribute material for these learning opportunities.

 

Accreditation | Contact Us DSN 314-370-6762, +49-(0)6221-3780 | Nondiscrimination Statement | ©2008