 |
CMPSCI 220
Programming Methodology
Fall 2009
|  |
Course Administrative Information
Instructor
Prof. Jack C. Wileden
Office: Computer Science 206
Phone: (413) 545-0289
Email: wileden at cs.umass.edu
Teaching Assistant
Hala Mostafa
Office: Computer Science 324
Email: hmostafa at mas.cs.umass.edu
Course Overview
Development of individual skills necessary for designing, implementing,
testing and modifying larger programs, including: design strategies and patterns,
advanced uses of integrated design environments, testing, working with
large code bases and libraries, code refactoring, and use of debuggers and tools
for version control.
Prerequisites
CMPSCI 187 is the prerequisite for CMPSCI 220.
We expect facility, not just familiarity, in programming
with Java and using the Java collection libraries.
If you are uncertain about whether you have satisfied the
prerequisites, please check with the instructor.
Course Structure
Class meetings will consist of lectures, discussions,
demonstrations, and related computing activities.
Students are encouraged to ask
any pertinent questions and participate
actively
in discussions.
There will be significant programming assignments,
which build somewhat sequentially, some smaller
written assignments,
and a mid-term and final examination.
Computing Resources
The workstations in the Education Lab in the Lederle Graduate
Research Tower 223 and 225 will be available for use by students in
completing course assignments.
Students will also be able to use the computers in the classroom
(Morrill 3-212) during
class and will have access to the same computing environment on other
OIT computing systems throughout the semester.
Students may
use other computing systems
instead of using the EdLab or OIT computers, but
access to a Java programming environment and
other software available on the OIT computers (notably the Eclipse
development environment) will be
necessary for completing the programming exercises and projects.
Assignments
Assignments are due at the beginning of class on the specified due
date.
No credit will be given for homeworks submitted late, since solutions may be
handed out or discussed in class.
If you are experiencing difficulty, it is best to contact us before
an assignment is due!
Grading
Your final grade will be computed as follows:
- 60% based on the programming and other homework assignments
- 40% based on the exams
Textbooks and Reserved Readings
The required texts for CMPSCI 220 are listed
here.
In addition some readings
may be assigned from other sources, primarily materials available on
the WWW.
Copies of any assigned readings not available on line will be provided
by the instructor.
Policies
Attendance
Students are expected to attend each class. Attendance will not be officially
recorded, but will be noted, and class participation is part of the
basis for grading. The official means of communication for
this course will be in-class announcements. Missing class is not an
excuse for failure to act as required by these announcements.
Submitting Assignments
Assignments done with pencil and paper (or equivalent)
must be submitted directly to
the instructor
or the TA
unless other
arrangements are made. Programs must be submitted electronically as directed.
Other assignments done using computers may be handed in
electronically or submitted by hand.
The work submitted for grading must be your own.
Submission of work that is not your own is considered
to be cheating. We encourage students to
assist one another in learning and overcoming difficulties with the material,
but discussing or sharing answers to specific homework questions or
programming
assignments,
except in cases of explicit group assignments or projects,
is considered dishonest. If you have
questions as to what we consider honest, please ask!
Computer Science department policy specifies that the penalty
for cheating is 1) a final course grade of `F', and 2) possible
referral to the Academic Dishonesty Committee.
See the University's
Academic Regulations and
Academic Honesty Policy and Appeal Procedure
for details.
Intellectual Property
You may be using copyright-protected software in
this course.
Federal law and license agreements between the University and various
software producers prohibit copying this software for any purpose.
Such activity will be regarded as a form of cheating (see above).
Many of the materials created for this course are the intellectual
property of the instructor.
This includes, but is not limited to, the
syllabus, lectures, course notes, and programming project code. Except to the extent not protected
by copyright law, any use, distribution or sale of such materials
requires the permission of the instructor. Please be aware that it is
a violation of university policy to reproduce, for distribution or sale,
class lectures or class notes, unless copyright has been explicity waived
by the faculty member.
Other materials used in this course are the intellectual
property of other individuals.
This includes, but is not limited to, the
textbooks and other books, papers, notes, etc.
Except to the extent not protected
by copyright law, any use, distribution or sale of such materials
requires the permission of their creator or owner.
Incompletes
An incomplete will be given only when documented, exceptional
circumstances beyond your control have made it impossible to complete
the assigned work before the end of the semester. It is your
responsibility to contact the instructor regarding any such problems
well before the end of the semester. Note that the University's
Academic Regulations
allow an incomplete only if most of the work has been
completed satisfactorily before the end of the semester so that the
incomplete can be finished by the end of the
immediately following semester. They further state that if a
substantial amount of work remains undone then a retroactive drop
should be obtained and the entire course repeated.
Contacting Us
The
TA and the instructor
will normally be available in our respective
offices during our posted office hours. Outside of those hours, or
times arranged on an appointment basis, neither of us can be assumed to
be available for Computer Science 220 matters,
even if we happen to be in our
offices. Particularly if you have substantial questions, it is best
to come see us during our office hours or make an appointment if those
times are not convenient. If you cannot reach us in our offices, you
may send us email or leave a message with any of the staff in the
Computer Science office, Computer Science 100.
Bulletin Board, Email and the Web
Many announcements will be made electronically. In particular,
identification of files you will need to access, changes to due dates,
and other such information about assignments
will be posted regularly. These announcements will be
posted in the bulletin board section of the course homepage
on the World Wide Web
and, if particularly urgent,
will also be sent by email to all
students registered for this course.
It is your responsibility to check these announcements regularly.
Emails will be sent to your student.umass.edu address recorded with OIT;
it is up to you to see that they are forwarded to wherever you normally
read your mail.
Return
to the 220 main page
E-mail the instructor (Jack Wileden)
E-mail TA Hala Mostafa
Last modified: Monday Sept 7 15:45 EST 2009