JMU

CS 239 Advanced Programming - Syllabus


General Overview: Students use various advanced problem-solving strategies to develop algorithms using classes and objects. Students also learn how to implement and use elementary data structures, including character strings, records, files, stacks and queues. developing clear, concise, and correct algorithms to solve problems on a digital computer.
Course Meets: Tues and Thursday Lecture: 9:30 - 10:45 in Room ISAT/CS 236
Monday and Wednesday Labs:
Course Schedule: See Schedule Page
TA Schedule: Schedule
Links to: Lecture Notes
Lab Notes
Programming Assignments
Resources
Exam Prep

Instructor Information: Office: ISAT/CS Room 217
Phone: 568-8771 (88771)
E-mail: harrisnl with usual jmu extension
IM: harrisnl55
Web: Home Page
Policies: Instructor Policies


CS239 – Advanced Programming

General Overview:

Students use various advanced problem-solving strategies to develop algorithms using classes and objects. Students also learn how to implement and use elementary data structures, including character strings, records, files, stacks and queues. developing clear, concise, and correct algorithms to solve problems on a digital computer.

Prerequisites: CS 139 or equivalent with a grade of "C" or better.

Note: Students planning to continue to CS240 next semester should take CS or Math 227 during this semester. CS/Math 227 is a prerequisite to CS 240 and CS350.

Overall Objectives:

  1. Object-Oriented paradigmStudents will learn how to use OO programming in conjunction with other structured programming techniques.
  2. UML – Students will use the Universal Modeling Language (UML) for diagramming.
  3. Coding Practice – Students will write clear, concise, and correct algorithms. In addition, students will improve their ability to solve new computing problems.
  4. Software Engineering Approach – Students will use the software engineering discipline in using thoughtful design and coding, desk-checking, and thorough unit and integration testing in the production of software applications.
  5. Professional ethics – Intellectual property is owned by its creators and cannot be appropriated without permission. Even when used with permission, its creator must be cited. Turning in someone else’s intellectual property as one’s own is a violation of professional ethics as well as the JMU Honor Code. Students will be held to a high ethical standard in class and in all class assignments.
  6. Reading SpecificationsStudents will develop skills in reading specifications carefully and understanding what they state and using such specifications in the production of correct applications.

The lecture days will include a theoretical discussion of programming concepts and features. The lab days will permit students to practice what they have learned in lecture or read in the assignments. Labs will consist of either experimentation, program development or both. If a student finishes the assigned lab exercise early, time to work on programming assignments is provided. In general, labs will have an assigned task, so should not be viewed asstudy hall. Labs may take longer than the lab period provided.

We will use Blackboard and the web as a means of communicating. Announcements for class will be made on the Blackboard announcements page or the course web page if Blackboard is unavailable. Any other announcement that you receive through other means (such as e-mail) is suspect unless confirmed by Blackboard or the course web page in the event of Blackboard failure. If I send an e-mail to the class as a whole, I will also put the text into a Blackboard or web announcement.


Textbook and Required Material

LEWIS, JOHN LOFTUS, WILLIAM (2004).
Java Software Solutions Fourth Edition. Addison-Wesley. ISBN 0-321-24583-0. Provides concrete examples of programming concepts and implementation techniques using the Java language as a base.
JAC Card:
There may be times in lab that you need to print a worksheet, a completed assignment or other work. You must have your JAC card with you and some money on it for printing. Make sure that you have a couple of dollars on the card each day.
Backup Media:
Whether you use a floppy disk or a memory stick, it will be important that you have a backup device available to use in the lab. While you will get some network space, sometimes the network goes down and you need some way to continue working. Lab machines do not provide a permanent save. When the machine is logged out, your work is lost.
Manila (file) folder:
Each student must bring to class one regular size (not legal) manila folder with his/her name marked clearly (printed) on the tab, last name followed by first name. I will return all work to your folder, which will be available in the lab.


Grading

Exam 1 20%
Exam 2 20%
Final Exam 30%
Programming Assignments 20%
Labs, homework, quizzes,etc 10%
I generally grade exams and programming assignments on a 100 point scale. Letter grades correspond to 10 point ranges...90 - 100 = "A", 80 - 89.999 = "B", etc. "F" is used for work below 60%. Labs, homework and quizzes will be graded as A-excellent and complete(95), B-incomplete or with some errors(85), C-major errors or missing requirements(75), F-unacceptable but some earnest attempt made(50). 0 will be used for work not turned in.


Students with Disabilities:If you are a student with a documented disability, who will be requesting accommodations in my class, please make sure you are registered with the Office of Disability Services, Wilson Hall, Room 107 (568-6705) and provide me with a copy of your Access Plan letter outlining your accommodations. I will be glad to meet with you privately during my office hours to discuss your special needs. The sooner you can do this, the better I can assist you in meeting your learning goals in this course.

Student Responsibility: Student are responsible for adding and dropping courses via e-campus. The last day to add a course for the Spring 2006 semester is Thursday, Jan 26, 2006 (signatures required after Tuesday Jan 17). The last day to drop a course for the Spring 2006 semester with a "W" grade is March 15, 2006. I do not give "WP" or "WF" grades to students requesting a drop after the deadline.

For clarification of these and other instructor policies please refer to the policies link.


Department of Computer Science Nancy Harris Home Page Current Classes Link