CSE 283 Introduction to Object Oriented Design

Barbara Nostrand, Ph.D.


Syllabus

Time & Place:  MW 8:00 - 9:20 CST 2-122
Final Examination Period:  MONDAY DEC 10 @ 7:15-9:15 PM SCITC3-226
WEB:  http://www.deMoivre.org/courses/CSE283/
Instructor:  Barbara Nostrand
Voice:  x3029
Email:  bnostran@syr.edu
Office:  2-179 CST
Office hours: Mo & We 1:30 - 3:30 PM
Teaching Assistant:  Vishal Chowdhary
Office:  0-124 CST
Office hours: Mo 4:30 - 6:00 PM & Tu/Th 2:00 - 4:30
Voice:  315-420-8184
Email:  vdchowdh@syr.edu

Course Description

Present fundamental software design concepts of functional decomposition and object-oriented design.  Use both C++ and Java to implement design projects which will be completed to demonstrate the design concepts. 

Prerequisites

ECS 102. 

Course Objective

Introduces the fundamental techniques of object-oriented design and implementation as a foundation for more advanced study of computer engineering.  Considerable attention is devoted to developing effective software engineering practice,  emphasizing such principles as design, decomposition,  encapsulation,  procedural abstraction,  testing,  and software reuse.  Topics include standard programming constructs,  problem-solving strategies,  the concept of an algorithm,  and fundamental data structures (strings,  arrays,  and records) along with an introduction to machine representation.  Upon completing this course,  you should be able to successfully design and implement object-oriented computer programs. 

Subject of this Course

Units covered:

PF1 Fundamental programming constructs   7 core hours (of 9)
PF2 Algorithms and problem-solving   2 core hours (of 6)
PF3 Fundamental data structures   3 core hours (of 14)
PF4 Recursion   2 core hours (of 5)
AL3 Fundamental computing algorithms   3 core hours (of 12)
AL5 Basic computability   1 core hour (of 6)
PL1 Overview of programming languages   1 core hour (of 2)
PL2 Virtual machines   1 core hour
PL4 Declarations and types   2 core hour (of 3)
PL5 Abstraction mechanisms   1 core hours (of 3)
PL6 Object-oriented programming   8 core hours (of 10)
GV1 Fundamental techniques in graphics   2 core hours
SP1 History of computing   1 core hour
SP5 Risks and liabilities of computer-based systems   1 core hour (of 2)
SE1 Software design   2 core hours (of 8)
SE2 Using APIs   1 core hour (of 5)
SE3 Software tools and environments   2 core hour (of 3)

Notes:
This course introduces fundamental concepts of programming, emphasizing both the traditional procedural or imperative paradigm and the essentials of event-driven and object-oriented programming. In this course, the discussion of control statements precedes the discussion of classes, subclasses, and inheritance; in the objects-first version, this ordering is reversed. Just as the procedural aspects of programming can be taught in an object-oriented language, some of the fundamental principles of object-oriented programming can be included even in the context of a traditional imperative language. Our text adopts a "spiral approach" in which topics such as classes and objects are introduced gradually.

Class meetings

Please be sure to attend the correct session of this course. Class time will be used for lecture, discussion, and other challenging activities.  Attendance is required, both physical and mental.  Full participation is expected.  Reading assignments are to be completed before coming to class.  This will better prepare you for asking questions in class, and will facilitate discussion.  Generally, the first meeting each week will be devoted to lecture and discussion and the second class meeting to quizes and discussing programming assignments.  You are expected to complete all homework assignments and projects individually. 

Course Materials

Laboratory Projects

In this course, you learn by doing.  Thus, you will be asked to complete laboratory projects on a regular basis.  Each of the laboratory assignments is intended to introduce new material and is designed to substantially support the student.  All of the laboratory projects are posted to the web site and should be submitted by the end of the day shown on the schedule.  You will complete these projects with a laboratory partner. A new partner will be assigned each week. In general, you will not work with the same person more than once during the course.

Homework Projects

In this course, you learn by doing. Thus, you will be asked to complete homework projects on a regular basis. Each homework project is designed to develop your individual problem solving skills.  Thus, these projects generally use concepts and techniques previously practiced in a laboratory project and involve much less "hand holding" than was provided in the laboratory project.  All of the homework projects are posted to the web site and should be submitted by the end of the day on the day shown on the schedule.  While you are encouraged to work on laboratory projects with a laboratory partner, you must complete homework projects individually. 

Quizes

There will be a short quize at the begining of each laboratory session covering the material in the text.  Except as required by university policy,  no make-up quizes will be administered, and no late quizes will be accepted.  Your score on the weekly quizes will contribute towared your laboratory project score. 

Exams

There will be 2 midterm exams and a cumulative final exam.  Some of the examinations may be written at home.  More information will be posted on the web as the examination dates near. 

Make-up work

Make-up work will be given/accepted only under the following conditions:

  1. Someone close to you is very ill, dying, or has died.
  2. You are very ill, dying, or have died.
Verification of just cause and advance consultation with the instructor are required before any make-up work will be considered.  Non-medical "emergencies" will be considered on a case-by-case basis. 

Grading Policy

Deliverables
Java Laboratory Projects 200
Java Homework Projects 200
C++ Implemenations 200
First Mid-Term Examination 100
Second Mid-Term Examination 100
Final Examination 200
Grade Distribution
1000-930 A 4.00
929-900 A- 3.70
899-870 B+ 3.30
869-830 B 3.00
829-800 B- 2.70
799-770 C+ 2.30
769-730 C 2.00
729-700 C- 1.70
699-670 D+ 1.30
669-630 D 1.00
629-600 D- 0.70
599-0 F 0.00

Collaboration and Academic Integrity

The Syracuse University Academic Integrity Policy holds students accountable for the integrity of the work they submit.  Students should be familiar with the Policy and know that it is their responsibility to learn about instructor and general academic expectations with regard to proper citation of sources in written work.  The policy also governs the integrity of work submitted in exams and assignments as well as the veracity of signatures on attendance sheets and other verifications of participation in class activities.  Serious sanctions can result from academic dishonesty of any sort. 

Restricted material: Solution guides, pre-written essays and similar materials are "restricted materials". Using such materials will be considered a violation of academic honesty.  You can use any publicly available software library or design tool to help you with your work provided that you are not violating copyright or other legal restrictions or are substantially appropriating a complete piece of software to control your robot. If you find a useful design or analysis tool, please report it to the entire class during the first available project day. Please be careful to credit the design tools and software libraries that you use in your project documentation.

Academic Honesty: If a breach of academic integrity is discovered, all involved students will receive a 0 for that assignment or exam. Further infractions will be dealt with according to college policy.

Special Needs and Disabilities

Syracuse University's Office of Disability Services authorizes special accomodations for students with disabilities.  If you believe tha you are a student who may need \academic accomodations dues to a disablity,  you must register with the Office of Disability Services (ODS) at 804 University Ave.,  Room 309,  443-4498 or 443-1371 (TDD only).  Please see me during office hours as soon as possible to discuss your needs.  For more inforamtion about services available to you,  please consult the Ofice of Disablity Services.  http://disabilityservices.syr.edu

Formal Attendance and Lateness Policy

Absences: Unavoidable absences do not excuse students from responsibility for course material.  Following a class absence,  you must contact the instructor and attend the next regularly scheduled office hour to receive additional make-up assignments.  These assignments will contribute to the Homework/Quiz/Lab portion of the final grade.  Failure to contact the instructor or turn in the make-up assignment on time will result in a grade of zero for that assignment.  This policy is in effect for unexcused as well as officially excused university absences (e.g. illness,  religious obligations,  etc.)

Late assignments: Laboratories and projects are due by the end of the day assigned in the schedule.  If you miss an assignment, you must visit a Help Session with the Teaching Assistant in order to turn it in.  Late Laboratory and Project assignments will loose 10% during the first week that they are turned in late,  and will loose an additional 10% for each additional week that they are late.  In case of officially excused absences,  late Laboratory and Project assignmentts will begin to loose credit on the day following return to school.  No late work will be accepted after the deadline posted in the schedule

Final Examination: Attendance during the Final Examination period is mandatory. Students failing to attend the scheduled final examination will receive a failing grade for the course.

Statement on Alcohol and Substance Abuse

The mission of the university is to educate the whole person.  As an educator,  I am concerned about the wellbeing of my students both in and out of the classroom.  A student who comes to my class while under the influence of alcohol or other drugs,  or the after effects of that usage,  cannot think critically,  nor can they participate meaningfully.  Any type of intoxication or its effects will not be tolerated in my classroom.  If you think you may be having a problem with alcohol or other substances,  please resach out to a member of our university community for help. 


Notice: Policies in this syllabus are subject to change as deemed necessary by the instructor.
Last modified: 2007 DEC07
bnostran@syr.edu