CS-420: Object-Oriented Design

CS-420-1: Object-Oriented Design
College of Arts & Sciences Syllabus
Spring 2020
Course Information
Credit Hours:
3.0
Course Description:
This course provides student with a solid foundation in object oriented design (OOD) and programming (OOP), a contemporary and highly used programming paradigm. OOD involves the presentation of three main concepts: encapsulation, polymorphism, and inheritance. These concepts and implementation techniques are presented in an object oriented programming language and students become experienced in OOD projects.
Prerequisites:
CS-400 minimum grade of C and CS-404 minimum grade of C
Class Time:
Tuesday/Thursday 5:40 p.m. - 6:55 p.m.
Note: This course will be held in a hybrid manner
Class Location:
LWH 2044

Faculty Information
Instructor:
Rachel Trana
Office Location:
LWH 3036
Office Hours:
Mondays/Wednesdays: 5:45 p.m. - 6:45 p.m.
Thursdays: 1:00 p.m. - 3:00 p.m.
Phone Extension:
773.442.4723
Email:
r-trana@neiu.edu
Per university policy, grades may not be discussed via email.
All course related questions should be posted on the Piazza discussion forum.

Course Materials
Required Text:
Introduction to Java Programming, Comprehensive Version (11th Edition) by Daniel Liang, Pearson, ISBN-13: 978-0134670942
Supplemental Materials:
As this is a graduate-level course, materials will be taken from a variety of sources. Students can reference the additional resource below.

Modern Java in Action: Lambdas, Streams, Functional and Reactive Programming by Urma, Raoul-Gabriel, Fusco, Mario and Mycroft, Alan. Manning Publication, 2019. ISBN: 9781617293566
Websites:
Grades, Homework Submissions: D2L
Discussion Forum: Piazza
Course Lectures, Study Guides, Homework Assignments, Schedule: http://racheltrana.com/includes/classes/420.php

Course Objectives / Student Learning Outcomes
Upon completing CS-420: Object-Oriented Design, students will be able to do the following:
  • Develop an in-depth understanding of formal object-oriented analysis and design processes for applications.
  • Implement concurrent applications using threads, describe problems related to concurrent programming and how to solve these problems.
  • Implement applications with simple graphical user interfaces.
  • Design and implement flexible and reusable software solutions using object-oriented principles.
  • Learn how to design programs capable of managing large amounts of data.
  • Use the Java class library to develop solutions to advanced programming problems.
  • Learn advanced programming techniques that utilize designing classes, object interaction and behavior of objects.

Major Topics
  • Class Inheritance and Polymorphism
  • Interface Inheritance and Polymorphism
  • Object-oriented Design Patterns
  • Generics
  • Threads/Thread Synchronization
  • Serialization
  • GUI Elements
Note: The above list of topics is not necessarily fully inclusive of all the topics that will be covered in this course. Prior to taking this course, students are expected to have familiarity with basic object-oriented concepts in Java such as inheritance, polymorphism, encapsulation, class construction, method overriding/overloading, exception handling, abstract classes and interfaces. Students who do not have familiarity with the above concepts, should strongly consider taking CS-207: Programming II before attempting this course.

Student Tasks / Assignments / Requirements
Expectations:
As this is a graduate-level course, students are expected to exhibit an independent work ethic and conduct themselves in accordance with the Graduate College student academic conduct policies. This includes completing assigned readings/homework/quizzes on a timely basis, allocating an appropriate amount of time for homework and studying, maintaining an awareness of of course meeting times and deadlines, taking the initiative to ask questions to promote an in-depth understanding of course concepts, and taking primary responsibility for their individual course progress.
Attendance:
Attendance is mandatory. More than six (6) absences will result in an automatic F in the course.
Assignments:
Homework will be assigned weekly, posted online. While working on homework assignments with other students is encouraged, plagiarism is not tolerated. All work should be unique. Students that submit duplicate/identical work will receive an F for that homework assignment. All assignments must be submitted to D2L by the specified due date and time.
Quizzes:
There will be multiple online (D2L) open-book quizzes throughout the semester, designed to reinforce core concepts. These quizzes must be completed by the specified due date and time.
Exams:
There will be two in-class exams, each worth 25% of your final grade. If you are unable to attend an exam due to a religious observance or significant major event, you must notify your professor at least 3 weeks in advance of the exam in order to schedule a make-up exam (approval of a make-up exam is at the discretion of the course instructor). Failure to do so will result in an F for that exam. The material in this course builds on itself and therefore the material for the exams is implicitly cumulative. Exams are closed-book and closed-notes. Access to any digital devices is prohibited.
Final Project:
A final project will be assigned and is worth 25% of the final grade. This final project will incorporate the topics presented in class. Students can work in groups of 2-3 on this project. Groups larger than 3 are not permitted.
Grading Policies and Formulae:
Item Weight
Homework 15%
Quizzes 10%
Exams 50%
Final Project 25%
Percentage Letter Grade
90 - 100 % A
80 - 89.99999999 % B
70 - 79.99999999 % C
50 - 69.99999999 % D
< 50 % F

Course Policies and Statements
Absence Policy:
Attendance is mandatory. More than six (6) absences will result in an automatic F in the course.
Cheating:
Cheating is a serious academic offense and violates the NEIU Student Code of Conduct (see University Policies below). All students will be required to turn off their electronic devices (phone, smart watches, etc) at the beginning of each exam. Failure to do so and/or any involvement in or suspicion of cheating will result in a failing grade for the final exam (and the course). Additionally, students involved in cheating will be reported for academic misconduct to the Dean of Students (two reports can result in expulsion from the university).
General Policies:
  • Because quizzes are online and open-book/note, no make-up quizzes will be given.
  • You must bring your NEIU ID to each exam, including the final exam.
  • The use of cell phones during class time for non-class or non-emergency purposes is not allowed.
  • There will be NO extra credit projects given to improve individual grades.
  • Cheating and/or plagiarism will not be tolerated. Students that violate the NEIU academic conduct policy may be subject to an F for that assignment, quiz, exam, project or any portion (or all) of the final course grade
  • Policies may be modified or added as I deem appropriate/necessary.
Important Dates:
  • Monday, January 20th, 2020 - Martin Luther King, Jr. Birthday - No Classes
  • Wednesday, February 12th, 2020 - Lincoln's Birthday - No Classes
  • Monday, March 16th - Sunday, March 22nd, 2020 - Spring Recess - No Classes
  • Friday, March 27th - Last day to drop with a W

University Policies and Statements
Academic Integrity Policy:
By enrolling in this course, you are bound by the NEIU Student Code of Conduct. You will be informed by your instructor of any additional policy specific to your course regarding plagiarism, class disruptions, etc.
ADA Statement:
Northeastern Illinois University (NEIU) complies with the Americans with Disabilities Act (ADA) in making reasonable accommodations for qualified students with disabilities. To request accommodations, students with special needs should make arrangements with the Student Disability Services (SDS) office, located on the main campus in room D104. Contact SDS via (773) 442-4595 or email sds@neiu.edu. It is your responsibility to have the Accessibility Center send me this information by the 3rd week of the semester.
Campus Safety:
Web links to Campus Safety: Emergency Procedures and Safety Information can be found on NEIUport on the MyNEIU tab or as follows: https://www.neiu.edu/university-life/university-police.