Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

CS18000 – Problem Solving and Object-Oriented Programming

Summer 2022

Class:

In WALC 3087 11:00 am - 12:00 noon on Mondays and Wednesday we will be utilizing a          flipped classroom approach where you will be able to go through the Walkthrough portion of the homework in class.  For off-campus students, there will be a few online sessions on Monday and Wednesday labelled "Flipped Classroom" where you will also get a chance to complete the         Walkthrough portion of the homework that will be released in the labs.

In WALC 3087 11:00 am - 12:00 noon Tuesdays, Thursday, and Fridays will be open in an         office hours style where you can come and listen to other questions your classmates may have or get any questions answered that you may have.  For off-campus students, there will be a number of online sessions Monday-Friday.

Course Webpage:

https://purdue.brightspace.com/d2l/le/content/554169/Home

Instructor:

Professor Buster Dunsmore,dunsmore@purdue.edu, LWSN 1189, 49-41996

Office Hours:

https://purdue.brightspace.com/d2l/le/content/554169/viewContent/9607788/View

Teaching Assistants:

CS 18000 has a Head Teaching Assistant, 4 Graduate Teaching Assistants, and 8 Undergraduate Teaching Assistants.  Office hours can be found on Brightspace.

Summer 2022 CS18000 Head TA:

Arnav Gupta                                                        gupta565@purdue.edu

Optional Text:

Start Concurrent: An Introduction to Problem Solving in Java with a Focus on Concurrency

By Barry Wittman, Aditya Mathur, and Tim Korb

Purdue University Press – 2014

ISBN- 13: 978- 1626710092

Online version:http://start-concurrent.github.io/

Note: The course slides are based on this book.

Prerequisites:

MA 16100, 16300, 16500, 16700 or other approved math courses (may be taken concurrently)

Course Outcomes:

A student who successfully fulfills the course requirements will understand:

•   How to solve problems through analysis and algorithm design

•   How to implement algorithms in a high-level programming language

•   How to use data types and strings, selection, repetition, arrays, methods and classes, inheritance, exceptions, polymorphism, and recursion

•   How to implement simple graphical user interfaces

•   How to perform file I/O

•   How to debug programs

Class Attendance:

You are expected to view all class videos on or before their Brightspace date. On-campus students are expected to attend their labs.

But, you should stay home and contact the Protect Purdue Health Center (496-INFO) if you feel ill, have any symptoms associated with COVID- 19, or suspect that you have been exposed to the virus. In the current context of COVID- 19, in-person attendance will not be a factor in the final  grades, but you still need to inform Head TA Arnav Gupta,gupta565@purdue.eduof any

conflict that can be anticipated and will affect the submission of an assignment or the ability to take an exam. Only the course coordinators can excuse a student from a course requirement or responsibility.

When conflicts can be anticipated, such as for many University-sponsored activities and  religious observations, you should inform Head TA Arnav Gupta of the situation as far in advance as possible.

For unanticipated or emergency conflict, when advance notification to the Head TA is not           possible, the student should contact Head TA Arnav Gupta as soon as possible by email, or         through Brightspace. When the student is unable to make direct contact with the Head TA and is unable to leave word with the instructor’s department because of circumstances beyond the         student’s control, and in cases of bereavement, quarantine, or isolation, the student or the             student’s representative should contact the Office of the Dean of Students via email or phone at   765-494- 1747. Our course Brightspace includes a link on Attendance and Grief Absence policies under the University Policies menu.

Preparation for Class:

You should read the slides and relevant material in your selected course text before class.  Additionally, you are expected to check your email, the course website, and Ed Discussion regularly.

Tentative Lecture Schedule:

Week # (start, end)

Concept

Homework

and

Assignments

Projects due this week

01 (6/13-6/17)

Introduction to Computer  Science and Programming, Primitive Types and           Strings

Homework 1 Homework 2

None

02 (6/20-6/24)

Selection, Repetition

Homework 3 Homework 4

None

03 (6/27-7/1)

Methods and Classes,

Arrays, File I/O and

Exceptions

Homework 5 Homework 6

Project 1

04 (7/5-7/8)

File I/O and Exception     Interfaces and Inheritance Concurrency

MIDTERM EXAM 1

Homework 7 Homework 8

Project 2

05 (7/11-7/15)

Concurrency, Network I/O and Simple GUIs,              Complex GUIs

Homework 9 Homework   10

Project 3

06 (7/18-7/22)

Polymorphism, Dynamic Data Structures

Homework

11

Homework

12

Project 4

07 (7/25-7/29)

Dynamic Data Structures, Recursion

None

None

08 (8/1-8/5)

Final Exam

None

Project 5

Quizzes:

Every Friday at 12:00 noon a quiz will be available on Brightspace for all students.  It will be a  10-question multiple choice quiz and will cover topics taught in the class videos that week.  The questions will help you prepare for the final.

Homework:

A homework assignment will be released at the beginning of every lab (for both on-campus and off-campus students).  The Challenge portion will be due at 11:59 pm the next day.

Other important notes on homework:

•   A homework assignment may be turned in up to 24 hours late, but with a 10-point penalty.

•   If you feel you have a valid reason for not having your work done on time, then send     Head TA Arnav Guptagupta565@purdue.eduan email before the assignment is due.

•   Do not wait until the last minute. If the computer goes down, so does your grade.

•   Down time and crashes of the computer network are not valid excuses for late or missed assignments.

•   No credit will be given for programs that do not compile.

Projects:

Five projects will be released throughout the session – three individual and two team projects. For team projects, you may collaborate with only your teammates. The standard academic      honesty policies apply to any inter-team communication and sharing.

Other important notes on projects:

•   All projects are due at 11:59 pm one week after their release, unless otherwise specified. A project may be turned in up to 24 hours late, but with a 10-point penalty.

•   Do not wait until the last minute. If the computer goes down, so does your grade.

•   Down time and crashes of the computer network are not valid excuses for late or missed assignments.

•   No credit will be given for programs that do not compile.

Examinations:

Exams will be open book and open notes. You may not use any other outside resources except for the most up-to-date JDK at https://www.oracle.com/java/technologies/downloads.

Other important notes on exams:

•   You will be given a 24-hour period to start the exam. Once you start the exam, you have two hours to complete it.

•   You must solve the exam problems by yourself, without any help (knowing or unknowing) from another student.

•   You must not seek any knowledge in advance of the test questions (beyond that given in class) and must report any advance knowledge of the test questions by any student that  you are aware of.

•   You must not allow any other student access to your solutions during the exam.

Midterm Exam 1: Tuesday, July 5 at 6:00 PM through Wednesday July 6 at 6:00 PM.          Final Exam: 24 hour (6:00 PM – 6:00 PM) window some time in the Wednesday August 3 - Friday August 5 time frame.

Questions and Answers:

Questions of general interest should be posted on Ed Discussion. Answers will be posted as soon as possible. Questions involving code or specific implementation details should be directed to a  staff member, instead of a classmate. Answers will be sent to you directly. If you need to contact a specific TA or instructor, you may contact them via private message on Ed Discussion, via       email, or by visiting their office hours.

Grading (approximate weighting):

Projects

50%

Exams

30%

Homework

15%

Quizzes

5%

More detailed breakdowns are available on Brightspace.

Incompletes:

A grade of incomplete (I) will be given only in unusual circumstances. To receive an “I” grade, a written request must be submitted prior to Sunday, July 24, and approved by the instructor. The  request must describe the circumstances, along with a proposed timeline for completing the         course work. Submitting a request does not ensure that an incomplete grade will be granted. If    granted, you will be required to fill out and sign an “Incomplete Contract” form that will be         turned in with the course grades. Any requests made after the course is completed will not be      considered for an incomplete grade.

Makeup Policy:

Homework, projects, and quizzes cannot be made up unless there is an excused absence.            Excused absences are given only for university-approved reasons. These include serious illness, family emergency, and official university commitments. In all cases, some form of evidence or documentation must be provided. If the absence is planned (band trips, course field trips, etc.),  you must inform your instructor ahead of time. Failure to do so will result in the absence being unexcused.

Makeup Examination Policy:

Makeup exams will be given only in the most extreme circumstances and require certification for such circumstances. E.g., a medical doctor's statement certifying that the student is unable to       attend the scheduled exam. Any travel (including interview trips), load from work or from other  classes, failed alarm clocks, or simply not being able to make it to the exam will not be grounds  for a make-up. If you have any recurring medical problems that may unexpectedly prevent you    from making it to class or exams, please obtain a doctor's statement certifying your                       circumstance.

Regrades:

Problems regarding grading of homework, projects, and exams must be resolved within one        week after the grade has been published on Brightspace. You should contact the Head TA Arnav Guptagupta565@purdue.edu. It is your responsibility to obtain the graded work on time. Grades will not be modified after the one-week period.

Academic Integrity:

As a student at Purdue you are subject to thePurdue University Student Code of Conduct, which enjoins you to respect the highest standards of honesty and integrity. All work that you submit in this course must be your own; unauthorized group efforts are considered academic dishonesty.    See the online brochureAcademic Integrity: A Guidefor Studentsfor definitions and sanctions.

Academic dishonesty is a serious offense which may result in suspension or expulsion from the University. In addition to any other action taken, such as suspension or expulsion, a grade of F will normally be recorded on the transcripts of students found responsible for acts of academic dishonesty. Students are encouraged to report academic dishonesty to the instructor directly, or to the Office of the Dean of Students.

You may discuss assignments in a general way with other students, but you may not consult        anyone else's written work. Among other ways to get an F, you are guilty of academic dishonesty if you:

•   Examine another student's solution to an assignment

•   Allow another student to examine your solution to an assignment

•   Fail to take reasonable care to prevent another student from examining your solution to    an assignment and that student does examine your solution. For example, if you allow      another student to check his/her email from your terminal while you step out of the room, you have failed to take reasonable care to prevent him/her from accessing your files.

•   Submit an assignment that is not completely your own work

•   Share results or notes during quizzes or exams

All work is subject to computer-based comparison and analysis. Do not con yourself into   thinking that you can hide any collaboration. The risk of getting caught is too high, and the standard penalty is way too high.

If we find reason to believe that a student has cheated on any assignment, we may inform the    student promptly, or we may decide to silently accumulate evidence against the student on later assignments.

Nondiscrimination Statement:

Purdue University is committed to maintaining a community which recognizes and values the   inherent worth and dignity of every person; fosters tolerance, sensitivity, understanding, and      mutual respect among its members; and encourages each individual to strive to reach his or her own potential. In pursuit of its goal of academic excellence, the University seeks to develop and nurture diversity. The University believes that diversity among its many members strengthens   the institution, stimulates creativity, promotes the exchange of ideas, and enriches campus life.

Accessibility:

Purdue University strives to make learning experiences as accessible as possible. If you               anticipate or experience physical or academic barriers based on disability, you are welcome to let any of the course coordinators know so that we can discuss options. You are also encouraged to  contact the Disability Resource Center at:drc@purdue.eduor by phone: 765-494- 1247.

Mental Health Statement:

•   If you find yourself beginning to feel some stress, anxiety, and/or feeling slightly         overwhelmed, tryWellTrack, Sign in and find information and tools at your fingertips, available to you at any time.

•   If you need support and information about options and resources, please see theOffice of the Dean of Students, for drop-in hours (M-F, 8am-5pm).

•   If you’re struggling and need mental health services:   Purdue University is committed to advancing the mental health and well-being of its students.  If you or someone you know is feeling overwhelmed, depressed, and/or in need of mental health support, services are available.  For help and to speak with a clinician, contact Counseling and Psychological  Services (CAPS) at (765)494-6995 or by going to CAPS’ office on the second floor of   the Purdue University Student Health Center (PUSH). For urgent situations after hours,

on weekends and holidays, call (765)494-6995 to speak with a clinician. Please see the CAPS websitefor further information.

Emergency Preparation:

In the event of a major campus emergency, course requirements, deadlines and grading              percentages are subject to changes that may be necessitated by a revised semester calendar or    other circumstances beyond the instructor’s control. Relevant changes to this course will be       posted onto the course website or can be obtained by contacting the instructors or TAs via email or phone. You are expected to read your @purdue.edu email on a frequent basis.

Guidance for Quarantine/Isolation:

If you become quarantined or isolated at any point in time during the semester, in addition to

support from the Protect Purdue Health Center, you will also have access to an Academic Case    Manager who can provide you academic support during this time. Your Academic Case Manager can be reached atacmq@purdue.eduand will provide you with general guidelines/resources        around communicating with your instructors, be available for academic support, and offer            suggestions for how to be successful when learning remotely.

Importantly, if you find yourselftoo sick to progress in the course, notify your academic case    manager and notify Head TA Arnav Guptagupta565@purdue.eduvia email or Brightspace. We will make arrangements based on your particular situation. The Office of the Dean of Students   (odos@purdue.edu) is also available to support you should this situation occur.

Copyright:

Online educational environments, like all learning environments, should provide opportunities  for students to reflect, explore new ideas, post opinions openly, and have the freedom to change

those opinions over time. Students enrolled in and instructors working in online courses are the  authors of the works they create in the learning environment. As authors, they own the copyright in their works subject only to the university’s right to use those works for educational purposes   (Visit Purdue University CopyrightOffice). Students may not copy, reproduce or post to any      other outlet (e.g., YouTube, Facebook, or other open media sources or websites) any work in      which they are not the sole or joint author or have not obtained the permission of the author(s).

Netiquette:

Your instructor and fellow students wish to foster a safe online learning environment. All          opinions and experiences, no matter how different or controversial they may be perceived, must be respected in the tolerant spirit of academic discourse. You are encouraged to comment,         question, or critique an idea, but you are not to attack an individual. Our differences, some of    which are outlined in the University's nondiscrimination statement above, will add richness to   this learning experience. Please consider that sarcasm and humor can be misconstrued in online interactions and generate unintended disruptions. Working as a community of learners, we can  build a polite and respectful course ambience. Please read the Netiquette rules for this course:

•   Do not dominate any discussion. Give other students the opportunity to join in the discussion.

•   Do not use offensive language. Present ideas appropriately.

•   Be cautious in using Internet language. For example, do not capitalize all letters since this suggests shouting.

•   Avoid using vernacular and/or slang language. This could possibly lead to misinterpretation.

•   Keep an open-mind” and be willing to express even your minority opinion.

•   Think and edit before you push the Send” button.

•   Do not hesitate to ask for feedback.

Violent Behavior Policy:

Purdue University is committed to providing a safe and secure campus environment for members of the university community. Purdue strives to create an educational environment for students     and a work environment for employees that promote educational and career goals. Violent           Behavior impedes such goals. Therefore, Violent Behavior is prohibited in or on any University  Facility or while participating in any university activity. See our course Brightspace under           University Policies for a link to the full Violent Behavior Policy.

Diversity & Inclusion Statement:

In our discussions, structured and unstructured, we will explore a variety of challenging issues,   which can help us enhance our understanding of different experiences and perspectives. This can be challenging, but in overcoming these challenges we find the greatest rewards. While we will  design guidelines as a group, everyone should remember the following points:

•   We are all in the process of learning about others and their experiences. Please speak with me, anonymously if needed, if something has made you uncomfortable.

•   Intention and impact are not always aligned, and we should respect the impact something may have on someone even if it was not the speaker’s intention.

•   We all