University of Minnesota Duluth
MyU | Search | People | Departments | Events | News

CS-1511 Syllabus

Computer Science I,
Fall, 2017

Part 1. Introduction

Course Description

A comprehensive introduction to computer programming using the C++ language. The course covers program design, C++ programming basics, control structures, functions and parameter passing. Students write and implement programs with data structures (arrays), pointers and files. Object-oriented programming is also introduced, along with concepts of abstraction, ADTs, encapsulation and data hiding.

Liberal Education Category

Logic and Quantitative Reasoning


3-1/2yrs high school math or instructor approval.

Part 2. Course Outcomes and Expectations

This course addresses UMD campus student learning outcomes (SLOs) , UMD Liberal Education Logic and Quantitative Reasoning outcomes (LQ-SLOs), and outcomes in computer science education specified by the UMD Department of Computer Science and aligned with the standards put forth by the ABET accrediting board.

UMD Campus Student Learning Outcomes (SLOs)

Computer Science Course Outcomes and UMD Liberal Education Student Learning Outcomes for Logic and Quantitative Reasoning (LQ-SLOs)


You are responsible for...

As an instructor, I will endeavor to…

If there are additional ways that the instructor can assist you please let him know.

Part 3: Course Structure and Materials

Class Meeting Dates

Lecture: Section 1: M,T,W,F 12:00-12:50 in BohH 90
Lecture: Section 8: M,T,W,F 2:00-2:50 in MonH 80
Lab: Th (various times) in MWAH-177


Dr. Allert
Dr. James Allert

Dr. James Allert, Ast. Prof, Computer Science
web page:
Office: 324A Heller Hall
Office Hours: MT 3-4:50pm and arranged
Office phone: (218) 726-7194

Teaching Assistants (TAs)

Arshia Hassan
email: hassa418
Christianah Adigun
email: adigu002
Zach Patterson
email: patte720
Usman Gohar
email: gohar001
Prateek Joshi
email: joshi275

TAs will assist in lecture, grade your exercises and programming projects, and assist you by answering questions you may have about course material. The TAs are available to meet you during their office hours. However, they will not write code for you.

Note: If you contact your instructor or TA by email please include the class (CS-1511) in the Subject line. Do not expect replies to be immediate (especially on weekends or in the evening). Do not attach program files to be graded or debugged. Programs are only graded in lab.


Savitch, W. (2018) Problem Solving with C++, Tenth Edition, Pearson, ISBN-13: 978-0-13-444828-2.

The Course Management System (Moodle)

This gradebook for this course is maintained on the Moodle course management system. To access Moodle go to the instructor's website or go to .

Course Website

All course documents (syllabus, calendar, PowerPoint slides, etc.) are available on the calendar page of the instructor's website

C++ Software

Programming assignments in this course are done using the g++ compiler on UMD’s Linux mainframe (bulldog). You are not required to purchase this software for this course. All projects can be completed using the Windows computers in the UMD full-access computer labs . Terminal programs (tty) are available, or built into many operating systems, and allow you to remotely access bulldog.

If you have questions please ask your TA, they would be glad to show you how it works.

Other software packages that also support C++:

Syllabus or Calendar Revision

The instructor reserves the right to make changes in the syllabus or the course calendar at any time, and without prior notice.

Part 4. Course Topics

The following is a list of topics typically covered throughout the 15 weeks of the semester. Variation may occur in any particular semester. See the detailed course calendar on Moodle for more detail.

Week Reading Assignment Topic Course Outcome
Week 1 Chapter 1.1, 1.2, 1.3 Course intro, syllabus, Intro to computing 1a
Week 2 Chapter 1.4, 2.1-2.2 Program design, simple programs 1a, 1b
Week 3 Chapter 2.3-2.5 Essential C++, variables, data types arithmetic operators and expressions, commenting 2c
Week 4 Chapter 3.1, 3.2 Branching, if, if…else, if…elseif, switch 2a
Week 5 Chapter 3.3, 3.4 Loops, while, for, summation 2a
Week 6 Chapter 4 Procedural abstraction, functions, scope 2b
Week 7 Chapter 5 Reference parameters 2b
Week 8 Chapter 6 IO streams, files 3a
Week 9 Chapter 7.1-7.3 Arrays 3a
Week 10 Chapter 8 Strings and vectors 3a
Week 11 Chapter 9 Pointers and dynamic arrays 3b
Week 12 Chapter 10.1, 10.2 Classes, class definitions 3c
Week 13 Chapter 1.1, 1.2 Accessor and mutator functions 1a
Week 14 Chapter 10.3, 10.4 ADTs and inheritance 3c
Week 15 Course overview

Part 5. Course Policies

Use of Electronic devices

Laptop computers are not required for this course. Use of electronic devices (laptops, tablets, cell phones, etc) is not allowed in discussion sections or in lecture. Exceptions to this rule may be made in specific circumstances with the permission of the instructor.

Absence from Class

Failure to attend class is the quickest way to a poor grade. If you are unable to attend a class meeting, it is your responsibility to obtain class notes and other materials. There are no makeups for missed labs, exercises, quizzes or exams unless you have an excused absence that qualifies under the UMD Excused Absence Policy and have cleared it with the instructor beforehand.

Student Conduct

The instructor will enforce and students are expected to follow the University's Student Conduct Code. Appropriate classroom conduct promotes an environment of academic achievement and integrity. Disruptive classroom behavior that substantially or repeatedly interrupts either the instructor's ability to teach, or student learning, is prohibited. Disruptive behavior includes inappropriate use of technology in the classroom. Examples include ringing cell phones, text-messaging, watching videos, playing computer games, doing email, or surfing the Internet on your computer instead of note-taking or other instructor-sanctioned activities.

Lecture Hall Etiquette

Large lecture halls are sometimes difficult places in which to learn. You can improve your chances by sitting up front or in the middle. Here are other guidelines that apply to this course:

Late Assignments

All assignments are due at the beginning of class on the due date in the course calendar. Late assignments are not accepted.

Extra Credit

There is no extra credit work available beyond that listed in the syllabus and course calendar.

Withdrawal Policy

In accordance with UMD cancel/add and refund deadlines , cancellation of courses after the end of the eighth week is not permitted. If you are doing poorly in the class it is your responsibility to talk with the instructor prior to the 8th week to determine what course of action to take.

Part 6. Assessment and Grading


Programming Projects (105 points)

Coding Exercises - done in lab (60 points)

Video Quizzes (120 points)

Classroom Exercises (110 points)

Exams (500 points)


Midterm exams are in Chem 200, from 6:00pm-6:50pm (see above)
Arrange your schedule now to accomodate them. There will be no alternate dates or times for those who fail to clear their schedules.

The final exam is a Common Exam and is tentatively scheduled for Monday, Dec. 11 from 4-5:55pm in BohH 90.

Most exams are a mixture of multiple choice and programming problems. You should expect to write C++ program segments from start to finish without the aid of any course materials or the text. Exams will be handed back, reviewed and may be re-collected. If you are unable to attend the day exams are reviewed you are encouraged to come see your exam during office hours with your TA. Student ID's will be checked at exams. The date and time of the final examination can be found on the UMD Final Exam Schedule page. Final exam conflicts are handled according to the UMD Final Exam Policies.


Your current and final grades are based on your total points. Total points are posted to the Moodle grade book. Keep all old assignments in case you need to verify a score with your TA. Points will be posted regularly by your TA. If scores are missing please be sure to contact your TA right away. The key percentage cutoffs for minus grades are:
A- = 90%,
B- = 80%,
C- = 70%,
D = 60%
These cutoff percentages may be raised or lowered at the instructors’ discretion.

Start Early!

You may have taken classes in which an assignment can be thrown together at the last minute - that strategy never works in computer science. Putting off programming assignments until the last minute has been proven by many former students to be the fastest route to a poor grade.

Help with Projects

Your instructor and your Graduate Teaching Assistants are available during their office hours to answer questions and help you with your programs, although they will not write code for you or tell you any part of the solution. Check with your TA for office hours and locations.

Academic Integrity

Academic dishonesty tarnishes UMD's reputation and discredits the accomplishments of students. UMD is committed to providing students every possible opportunity to grow in mind and spirit. This pledge can only be redeemed in an environment of trust, honesty, and fairness. As a result, academic dishonesty is regarded as a serious offense by all members of the academic community. In keeping with this ideal, this course will adhere to policies administered by The UMD Office of Student Conduct. This policy sanctions students engaging in academic dishonesty with penalties up to and including expulsion from the university for repeat offenders.

ACM Standards

Most professional computer scientists belong to the Association for Computing Machinery (ACM) which has its own code of ethics. These will be the guidelines for your programming in this course and include such concerns as respecting the privacy and property of others, giving proper credit for intellectual property and being honest and trustworthy.

Standards for this Class

From the standpoint of CS-1511, scholastic dishonesty includes the following:

All incidents of cheating, no matter how small, are reported to the UMD Office of Student Conduct. NOTE: There are severe consequences for cheating on exams. If you are caught cheating on an exam the penalty is an F for the exam AND for the entire course. The penalty for cheating on projects or other assignments is a 0 on the assignment plus a 50 point deduction from your total points.

Distribution and Sale of Course Materials

Course materials are provided solely for educational purposes for students enrolled in this course. Course materials are copyrighted by the instructor or the publisher of your textbook and may not be distributed to others, in whole or in part, except as permitted under university policy.

Part 7. General Information

The Department of Computer Science

The Department of Computer Science is part of the Swenson College of Science and Engineering at the University of Minnesota Duluth, a campus of the University of Minnesota system. The Department was established in 1986. It offers programs leading to the Bachelor of Science and Master of Science degrees in Computer Science and the Bachelor of Science degree in Computer Information Systems. The mission of the Department of Computer Science is four-fold:

  1. To conduct scholarly research.
  2. To provide an instructional environment that leads to careers and research in computer science and information systems.
  3. To contribute to the liberal education mission of the University.
  4. To serve the community, state, region, and the profession.

Part 8. Resources

Equal Opportunity

As instructor, I shall make every attempt to treat all students equally, without regard to race, religion, color, sex, handicap, age, veteran status, or sexual orientation. I encourage you to talk to me about your concerns of equal opportunity in the classroom. To inquire further about the University's policy on equal opportunity log on to the OEO website.

Students with Disabilities

It is the policy and practice of the University of Minnesota Duluth to create inclusive learning environments for all students, including students with disabilities. If there are aspects of this course that result in barriers to your inclusion or your ability to meet course requirements – such as time limited exams, inaccessible web content, or the use of non-captioned videos – please notify the instructor as soon as possible. You are also encouraged to contact the Office of Disability Resources to discuss and arrange reasonable accommodations. Please call 218-726-6130 or visit the Disability Resources website for more information.

Tutoring Center

The Tutoring Center is located in the Learning Commons on the second floor of the Library. It offers one-on-one interaction with peers, in a non-intimidating atmosphere, as a compliment to your instructional foundation. Tutoring services are: Free /confidential / walk-in A representative from the Tutoring Center may visit class during the second or third week to explain the service and distribute office hours. You can log onto the UMD tutoring center website.

UMD Library

The UMD Library maintains an extensive collection of materials through their online collection. This includes many electronic works related to topics covered in this class. Entire electronic versions of many books (although not your course textbook) are accessible through the UMD link to Safari Books Online. These, and other materials, can be accessed on the UMD Library website.

© 2021 University of Minnesota Duluth
The University of Minnesota is an equal opportunity educator and employer.
Last modified on 11/09/17 12:50 PM
University of Minnesota Campuses
Crookston | Duluth | Morris
Rochester | Twin Cities