CMSC 132, Summer 2019

Object-Oriented Programming II

Syllabus

Introduction

Object-Oriented Programming II is a second programming course for Computer Science majors with a focus on object-oriented programming. The goal of the course is to develop skills such as program design and testing as well as the implementation of programs using a graphical IDE. All programming will be done in Java.

In this course there are closed assignments/projects which you must complete by yourself and open assignments/projects where collaboration is permitted (see Policy Regarding Open/Closed Assignments).

Instructor

Name Office Email
Anwar Mamat AVW3259 anwar@cs.umd.edu

For office hours and other contact information, visit the staff link.

Textbooks

There are no required textbooks. The recommended textbooks are:

Title Authors Link
Recommended: Algorithms, 4th Edition Robert Sedgewick and Kevin Wayne Amazon · Pearson

Topics

  • Object-oriented software development
    • Software life cycle
    • Requirements & specifications
    • Designing objects & classes
    • Testing & code coverage
    • Programming paradigms
    • Design patterns
  • Algorithms & data structures
    • Asymptotic efficiency
    • Lists, stacks, queues
    • Trees, heaps
    • Sets, maps, graphs
    • Recursion
  • Programming skills
    • Java collection framework
    • Threads, synchronization
    • Exceptions

Grading

Final grades will be computed according the following weights:

40% Projects (around 8)
8% Lab Exercises
6% Clicker Quizzes
26% Midterms (2) (06/20, 07/18)
20% Final Exam (08/07)

Once we have graded any class material (e.g., exams, projects, etc.) we will post an announcement/send notification that the specific assignment has been graded, and the deadline by which you must submit any regrade request (if necessary). It is your responsibility to submit regrade requests by the specified deadline; no regrade requests will be processed afterwards.

Projects

  • Deadlines - All projects are due at 11:59pm on the specified day in the project description. You have until 11:59pm of the next day to submit your project with a 10% penalty. Notice that after the late period, you will not receive any points for your project. For example, if a project is due on Wednesday at 6pm, you have until Thursday at 6pm to submit a late project with a 10% penalty. Any submission after Thursday 6pm will receive 0 pts.
  • Submit Server - You need to use the submit server for project submissions. We will not accept projects submitted otherwise (e.g., e-mail, etc.). Notice that we use the submit server results to compute a significant portion of your project's grade. You need to make sure that your project works in the submit server, otherwise you will not get any credit.
  • Which Project Gets Graded - Your grade for an project will be based on the greater value of two scores: (1) The score on the very last compilable submission prior to the deadline; (2) The score minus 10% on the very last compilable submission prior to the late deadline.
  • About Projects - In this course there are closed assignments/projects which you must complete by yourself and open assignments/projects where collaboration is permitted (see Policy Regarding Open/Closed Assignments). The following are examples of academic integrity violations:
    • Hardcoding of results in a project assignment. Hardcoding refers to attempting to make a program appear as if it works correctly (e.g., printing expected results for a test).
    • Using any code available on the internet/web or any other source.
    • Hiring any online service to complete an assignment for you.
    • Posting your implementation of any class project on the internet/web.
    • Sharing your code or your student tests with any student.

Clicker Quizzes

Clicker quizzes will be given in-class during lectures. You have to bring your clicker to all lectures. You can register your clicker here: https://myelms.umd.edu/courses/1020311

We will drop the 20% lowest clicker quizzes to compensate for your absence or other clicker related problems.

Laptops in class

In general, we discourage the use of laptops in class. Not only are they a distraction for their user, they are a distraction for students around that user. For those who wish to use laptops to take notes, please sit in the back two rows of the lecture hall. Elsewhere, laptops must remain closed.

Academic Integrity

Note that academic dishonesty includes not only cheating, fabrication, and plagiarism, but also includes helping other students commit acts of academic dishonesty by allowing them to obtain copies of your work. In short, all submitted work must be your own. Cases of academic dishonesty will be pursued to the fullest extent possible as stipulated by the Office of Student Conduct.

It is very important for you to be aware of the consequences of cheating, fabrication, facilitation, and plagiarism. For more information on the Code of Academic Integrity or the Student Honor Council, please visit http://www.shc.umd.edu

Excused Absence and Academic Accommodations

Any student who needs to be excused for an absence from a single lecture, recitation, or lab due to a medically necessitated absence shall:

  1. Make a reasonable attempt to inform the instructor of his/her illness prior to the class.
  2. Upon returning to the class, present their instructor with a self-signed note attesting to the date of their illness. Each note must contain an acknowledgment by the student that the information provided is true and correct. Providing false information to University officials is prohibited under Part 9(i) of the Code of Student Conduct (V-1.00(B) University of Maryland Code of Student Conduct) and may result in disciplinary action.
  3. This self-documentation may not be used for the Major Scheduled Grading Events as defined below and it may only be used for only 1 class meeting during the semester.

Any student who needs to be excused for a prolonged absence (2 or more consecutive class meetings) or for a Major Scheduled Grading Event, must provide written documentation of the illness from the Health Center or from an outside health care provider. This documentation must verify dates of treatment and indicate the time frame that the student was unable to meet academic responsibilities. No diagnostic information shall be given. The Major Scheduled Grading Events for this course include midterm(s) and final exam.

It is also the student's responsibility to inform the instructor of any intended absences from exams for religious observances in advance. Notice should be provided as soon as possible, but no later than the Monday prior to the exam for both the midterm(s) and the final.

Any student eligible for and requesting reasonable academic accommodations due to a disability is requested to provide a letter of accommodation from the Office of Disability Support Services within the first two weeks of the semester.

Evaluation System (CourseEvalUM)

Your participation in the evaluation of courses through CourseEvalUM is a responsibility you hold as a student member of our academic community. Your feedback is confidential and important to the improvement of teaching and learning at the University as well as to the tenure and promotion process. Please go directly to the website (www.courseevalum.umd.edu) to complete your evaluations. By completing all of your evaluations each semester, you will have the privilege of accessing online, at Testudo, the evaluation reports for the thousands of courses for which 70% or more students submitted their evaluations.