CIS Logo SVC Logo

   Computing & Information Systems
   Department

 

Schoology Facebook        Search CIS Site      Tutorials

CS 111 Syllabus



C++ Programming II



UNDER CONSTRUCTION FOR Fall 2018



CIS Department



Saint Vincent College



General Information

  • 3 credits
  • Prerequisite: CS 110
  • Instructor: Brother David Carlson
  • Office: Dupre Science Pavilion, Tenley Hall W217
  • Office hours:
    • Mon, Wed 9:30 am - 11:20 am
    • Mon 12:30 pm - 1:50 pm
    • Tue, Thurs 8:30 am - 9:50 am
    • Tue, Thurs 2:30 pm - 4:00 pm
    • and by appointment
  • Phone: 724-805-2416
  • Email: david.carlson@stvincent.edu
  • The CIS lab in W214 of the Dupre science complex will be available according to this schedule that will also be posted on the bulletin board outside our lab. In addition, this schedule shows you which tutor is staffing the lab at what times. All or nearly all of these tutors should able to assist you with this course.
  • Text: Problem Solving with C++, 10th ed., Savitch, Walter; contributor, Kenrick Mock, Pearson Education (2018), ISBN 978-0-13-444828-2. The 9th edition would also be acceptable. Most students will already have an appropriate text from CS 110.
  • Supplementary material: The intermediate section of the online resource Software Design Using C++ will also be used in this course.

Description

This course continues the study of programming and problem solving where CS 110 left off. More advanced programming techniques and stricter programming style will be put into practice while covering more advanced data structures and algorithms, such as arrays, strings, file processing, stacks, queues, linked lists, classes, class definition, and recursion.

Why Take This Course

This course is required for all of the CIS majors, but is also taken by a number of other students who wish to acquire problem solving and software development skills. After taking CS 110 and CS 111, students have sufficient background to write useful programs, to continue on into the CS 221 data structures course, and to learn other computer languages and algorithms. This course provides the foundation for many other CIS courses and is, in fact, a prerequisite for many CIS courses. CIS majors should strive to do well in this course in order to prepare for their later courses.

The Text

Besides reviewing topics from CS 110 (such as functions, arrays, and strings) we cover much of chapters 9, 10, 11, 13, 14, and 15 in the text. We also do much of the intermediate section of Software Design Using C++, which covers much of the same topics.

Relevant CIS Department Student Learning Outcomes

By the time of graduation

  1. The CS, IT, or Cybersecurity major will have an ability to analyze a problem, and to identify and define the computing requirements appropriate to its solution.
  2. The CS, IT, or Cybersecurity major will have an ability to design, implement, and evaluate a computer-based solution to meet a given set of computing requirements in the context of the discipline.
  3. The CS, IT, or Cybersecurity major will have an ability to make informed judgments in computing practice based on legal and ethical principles.

Course Learning Objectives

By the end of the course, students will be able to:

  1. Design, write, and debug programs with lengths up to about 400 lines of code, using good software engineering techniques, programming style, documentation, and practices.
    This supports student learning outcomes 1 and 2 above.
  2. Use, and in many cases implement, a variety of data structures, such as arrays, structs, classes, stacks, queues, and linked lists -- as well as typical associated algorithms for operating on those data structures.
    This supports student learning outcome 2 above.
  3. Describe basic aspects of software engineering and how they apply to producing better software.
    This supports student learning outcomes 1 and 2 above.
  4. Identify elements of the ACM Code of Ethics that apply in software development case study situtations.
    This supports student learning outcome 3 above.

Course Policies


Note on Flu

Because of the possibility of the flu affecting us on campus, please practice good hand washing, etc. If you get the flu, please notify me by phone or e-mail and stay home for 24 hours after the fever has gone. Check with me about what you miss. You will not be penalized for missing class in this situtation. It is better to stay away from class and not spread the flu when you are ill.

Grading, Exams, Labs, and Homework

  • 20% First Exam
  • 20% Second Exam
  • 25% Final Exam: Mon, Dec 10, 4:00 pm - 6:00 pm
  • 35% Homework, Labs, Class Participation

Letter grades will be given using the scale found in the College Bulletin. Exams will be announced in advance and will be closed-book, pencil and paper exams in nature, except that you may use one two-sided 8.5 in. x 11 in. page of written notes of any kind. Thus, on exams, only the test paper, calculators, the one page of notes, pens, pencils, and erasers may be used. Cell phones, tablets, laptops, PCs, and similar devices should be turned off and put away. Calculators may be used on exams but are not to be shared among students.

Tests will ask critical thinking questions that require careful analysis, explanation, and conclusions. For example, you might be presented with a section of a program and asked to trace what it produces, to write the documentation describing at a high level what this section does, or to give an alternative implementation of this section. You might also be asked to write a section of code that carries out a particular task. A few multiple choice or true/false questions may also be included. Labs involve a lot of hands-on activity to try out certain aspects of programming, but on a smaller scale than what is usually needed for programming assignments. In this course you will be asked to write programs that are about 2 to 8 pages in length, including well-written documentation. In the labs, much of the code may be written for you, so that your job is to fix errors, to make modifications and additions, etc.

Homework usually consists of programming assignments. Programming involves typing code into a source file, compiling it, testing it, and fixing it as necessary. Programming assignments normally require careful planning and the use of several hours of out-of-class time. Aim to have the program done early so that there will be time to test it and to fix the problems that testing usually reveals. Engineering a program requires a development process that cannot normally be done at one sitting. Allot several hours over multiple days to develop your program. Note that it nearly always takes longer than you expect! Students are generally allowed to work in small groups for the purpose of doing the labs, but homework assignments must be done separately by each individual unless the instructor tells you otherwise.

Classroom Etiquette

Both the instructor and students are expected to do their best to produce a good class and to treat each other with respect. This includes many factors, such as listening when someone else is speaking, trying to understand what others are saying, being of assistance to others, etc. It definitely does NOT include making fun of others. On a practical level, do your best to improve your grade: read the course materials, attend class, do the labs and homework, ask questions, and try to answer questions in class! Computing science requires active participation and repeated practice. If you begin to feel lost, consult one of the tutors, see the instructor, or work through the difficulties with the help of another student in the course. Do not let yourself get behind. In fact, one key to academic success is to start early on homework and other tasks. Last-minute miracles seldom work, particularly with software development! Note in particular that attendance is expected. Student performance is bound to deteriorate when classes are missed. Partly in order to emphasize the importance of attendance, the policies outlined after this paragraph will be used.

Grading and Attendance Policies

  1. If the student does not attain an overall passing test average, a failing grade will be received for the course.
  2. Each unexcused class absence after the first 3 results in 1.5 percentage points being deducted from the final course grade.
  3. Arriving late for class or leaving early (without a proper excuse) is counted as 1/2 of an absence.
  4. An unexcused absence from an exam results in the failure of the course.
  5. Unexcused absence from more than one-third of the semester's classes results in the failure of the course.
  6. Attendance is used to decide borderline grades at the end of the semester.
  7. Unexcused absence from class results in a grade of zero for any lab or other activity done in that class.
  8. Late work is not accepted unless resulting from an excused absence, but partial credit is given for incomplete homework that is submitted on time.
  9. Email me if you must miss class for any reason, whether it is due to an illness or some other issue. It is always best to let me know instead of leaving me to wonder why you are not in class.
  10. Written documentation (such as a note from a doctor's office or coach of one's sports team) is normally required for an absence to be excused. Always bring a copy of such a note to give to your instructor when you can do so. In special circumstances, check with your instructor, as it is not always possible to get documentation.
  11. An additional 1.5 percentage points will be added to the final course grade at the end of the semester for any student who attends two-thirds of the Collaborative Learning Program (CLP) sessions for this course. For example, there might be 15 CLP sessions in a semester, so if a student attends at least 10 of those sessions in their entirety, and ends up with a grade of 78.5% (a C+), an additional 1.5 percentage points would be added to the grade, yielding an 80.0 (a B-).

Missed labs should be made up as they are designed to teach important aspects of the course. For an excused absence, the makeup lab will be graded normally. For an unexcused absence, the lab (whether made up or not) will receive a grade of zero. Make-up exams are strongly discouraged. If possible, take the regularly scheduled exam. For an excused absence or other significant reason, the instructor may agree to give a make-up exam. Whenever possible, see your instructor ahead of time if you know you must miss an exam (e.g. due to sports). Normally some type of written documentation is required (such as a note from the coach, doctor, etc.). If the documentation or reason for missing an exam is poor, the student can count on receiving a significantly more difficult exam, if one is given at all! Do ask about a makeup exam if you have a good reason to miss an exam, even if documentation is not readily available, as it is understood that illnesses and other complications do happen. Students participating in sports teams are required to notify the instructor in advance of games that might conflict with class.

Assignments are due at the date and time posted in Schoology and are normally turned in electronically by placing a copy in one's hw111 mapped network drive. Exceptions to these deadlines are only granted for serious reasons and normally require written documentation of the reasons.

Academic Integrity

Every programming homework assignment should list all sources that contributed to the solution. This would include the individual student. It may also include the instructor, a tutor that was consulted, a reference book, a web site, etc. You may consult other students who are not our tutors only to clarify what the homework assignment is asking. If you need assistance beyond simple clarification of the description of the assignment, the best person to consult is the instructor. Tutors may also be able to assist with this, though only the instructor knows the full details of how the homework should work. You may not look at the homework code for another student in this course or show yours (even a part of it) to another student in the course. You may not work out the design or code for a homework assignment with one or more other students from the course. If you break one of the conditions spelled out in the last two sentences, then this is a case of program plagiarism. See the next paragraph for how this gets handled and the possible consequences.

Intellectual honesty is important at Saint Vincent College. Attempts to pass off the work of another as one's own, or group work as one's individual work, will result in action appropriate to the seriousness of the situation. If there is some doubt as to whether you wrote a programming assignment yourself, you may be asked to explain the code. If you can do so, that provides good evidence that you did do the assignment yourself. All cases of apparent intellectual dishonesty will be referred to the administration. If the administration does not say what to do about the grades in a case where plagiarism occurred, the first offense will involve a significant grade penalty (such as a grade of zero) on the item in question, while a second offense may result in failure of the course. In this course, students are expected to do entirely their own work on tests and homework assignments. For the in-class labs, students are encouraged to help each other. Thus the above rules do not apply to the labs, though each student should still do mostly his/her own work. Assignments that are unduly similar (which means that a prudent individual would reasonably conclude that the assignments were done by the same person or collection of persons) will be reported to the administration as likely cases of plagiarism. If you really do your own work, you will not produce something that is unduly similar to someone else's work.

Be sure to read and follow the CIS Department Policies, available under the CIS Department web site. (This statement covers especially the proper use of departmental computing facilities, policies concerning your web pages, academic honesty, etc.) Be sure to read the regulations found under the Academic Programs and Regulations section of the College Bulletin (which covers such things as grading, academic honesty, academic warning and dismissal, etc.) and the Student Handbook (which covers academic honesty, classroom etiquette, etc.).

Title IX: Sexual Misconduct and Harassment

Saint Vincent faculty are committed to helping create a safe learning environment for all students and for the college as a whole. If you have experienced any form of gender or sex-based discrimination or harassment, including sexual assault, sexual harassment, intimate partner (dating or domestic) violence, sexual exploitation, or stalking, know that help and support are available. Saint Vincent College has staff members trained to support students in navigating campus life, accessing health and counseling services, providing academic and housing accommodations, and more. The College strongly encourages all students to report any such incidents.

Please be aware that all Saint Vincent employees (other than those designated as confidential employees such as counselors, clergy and healthcare providers) are required to report information about such discrimination and harassment. This means that I have a mandatory duty to report to the Title IX Coordinator any information I receive about possible sexual misconduct. This includes information shared in class discussions or assignments, as well as information shared in conversations outside class. The Title IX Coordinator will contact you to inform you of your rights and options and connect you with support resources, including possibilities for holding accountable the person who harmed you. Know that you will not be forced to share information and your level of involvement will be your choice. The purpose of reporting is to allow Saint Vincent to take steps to ensure that you are provided with any necessary resources needed and to provide a safe learning environment for all.

The College's Title IX Coordinator is:
Eileen K. Flinn, Esq.
Saint Vincent College
Second Floor, Alfred Hall
724-805-2897

The College also has confidential resources available, who can provide assistance to those who have experienced sexual misconduct without triggering a mandatory reporting duty. More information about confidential resources is available at https://www.stvincent.edu/student-life/title-ix.

If you wish to speak to a confidential employee who does not have this reporting responsibility, you can contact Campus Ministry at 724-805-2350 or the Wellness Center in the Carey Student Center at 724-805-2115. For more information regarding your rights and options, please see the Sexual Misconduct and Harassment policy which can be found on MySVC portal under Quick Links or on the web at https://www.stvincent.edu/student-life/title-ix.

Disability Statement

Students with disabilities who may be eligible for academic accommodations and support services should contact Ms. Marisa Carlson, Director of Academic Accommodations and Academic Advisor, by phone (724-805-2828), email (marisa.carlson@stvincent.edu) or by appointment (Academic Affairs-Headmasters Hall). Reasonable accommodations do not alter the essential elements of any course, program or activity. The Notification of Approved Academic Accommodations form indicates the effective date of all approved academic accommodations and is not retroactive.

Class Cancellation

If the instructor needs to cancel class, every effort will be made to send an email message to students' Saint Vincent email accounts.

Maintained by: Br. David Carlson
Last updated: August 15, 2018
Disclaimer