CSE 283 Introduction to Object Oriented Design
Barbara Nostrand, Ph.D.
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.
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
|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)|
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.
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.
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.
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.
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.
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 will be given/accepted only under the following conditions:
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.
Last modified: 2007 DEC07bnostran@syr.edu