Instructor: Shyamal Mitra
Office: TAY 5.116
Office Hours: MW 2:30 - 4:00 PM or by appointment
Required Text: Big Java: Programming and Practice by Cay Horstmann, 2002. Publisher: John Wiley and Sons, Inc.
Scope of the Course:
This is the second course in the elements of Software series. I assume
that you know Java at the level taught in CS 303E. The emphasis of this
course will be on software development using object-oriented methodology.
We will learn how to analyze and design software. We will learn how to
create reusable software components and to compose programs from already
available components. We will learn about some basic data structures and
algorithms and how to match the data structures and algorithms to problems.
We will test and evaluate programs for their functionality and their
performance.
We will be following the text quite closely for the section on object-oriented software development. Supplemental notes on data structures and algorithms will be available on the web. Attendance to the lectures is mandatory.
Assignments:
There will be homework assignments that will consist of problems from the
book or those handed out in class or posted on the web. There will be
programming assignments that you can complete in the CS Lab. You may
choose to use your own computer to work on these assignments. If you work
on your home computer, you will have to download and install the Java
Software Development Kit from Sun Microsystems. You will also want an
IDE like BlueJ, JBuilder, or JCreator. Late homework or programming
assignments will not be accepted.
Tests:
There will be occasional pop quizzes in class. There will be two tests and
a final examination. The tentative dates for the tests are October 1 and
November 5. There will be a comprehensive final during the final examination
period. Only under exceptional circumstances will make up tests be arranged.
Grades:
Your grade for the class will be determined from the pop quizzes and
homework assignments (10%), programming assignments (40%), Test 1 (15%),
Test 2 (15%), and Final (20%). There are no extra credit projects to improve
your grade. Questions concerning test grades should be given to me in
writing along with your test within the next class day that the test is
handed back. Questions regarding the homework or programming assignments
should be first discussed with the TA. If you still have a problem give me
a written statement within one week of the class that the assignment was
returned. No questions about grading will be considered after these
deadlines.
General Policies:
I strongly encourage you to discuss the course material with your class
mates. But the assignments that you will turn in must be your own work.
Turning in an assignment that is not entirely your own is cheating and
that will result in action commensurate with the policies stated in the
University's Manual on Academic Honesty.
If you are absent from class or examination for the observance of a religious holy day you may turn in in your assignment or take the examination on an alternate date provided you have given me written notice fourteen days prior to the class absence. For religious holy days that fall within the first two weeks of class notice must be given on the first class day.
Students with disabilities who need special accomodations should contact the Services for Students with Disabilities (SSD) Office (471-6259 or 471-4641 TTY).