Last modified: 2021-06-11
This is a course page of
David Casperson
You are here: homeSemestersWinter 2020CPSC 101
Associate Professor
Computer Science
University of Northern British Columbia

CPSC 101 — Computer Programming II — Winter 2020

course outline (printable pdf version).

Important Information

Important information will be posted here from time to time.

2020-03-25 Wednesday

Final changes to the course outline should be online here and on black-board soon.

There will be an online final examination.

The participation mark portion of the grade will mainly be based on the on-line portion of the course.

2020-03-17 Tuesday

It appears very likely that all but a very limited number of classes will be cancelled tomorrow, Wednesday. (This has not yet been announced officially, but I expect that it will be announced soon. `

In this regard, there will be

  • no in-class lecture Wednesday, March 18.

Keep watching Blackboard ( for further announcements.

I hope to post lecture notes and maybe a quiz tomorrow by normal class time.

More information about alterations to the team term project, on-line tutorals, lecture format, and so on will be posted as things become clearer.

2020-03-15 Sunday

The University of Northern British Columbia announced that the last day of face-to-face classes is Wednesday, March 18.

In this regard, there will be

  • Lectures Monday, March 16, and Wednesday, March 18.
  • Labs Tuesday, March 17.
  • no more turorials.

There will be no further scheduled classroom face-to-face contact after Wednesday.

It is not clear yet whether other contact like Offfice Hours will continue to be allowed. I am in discussion with other 101 folk about how to proceed in this regard.

Fixed a typo in Lab 5.
The due date for lab 5 is now Friday 21 rather than Friday 14.
Made the old exam link point to this page. The actual links are still on the bottom right part of this page
Multiple small corrections to web-page.
Web-page created.
Dr David Casperson (contact information).
Big Java: Early Objects by Cay Horstman. 6th edition. Isbn: 978-1-1190-5644-7.
Rooms and Hours
Lectures are in 7-150. Labs are in 8-456/8-457. Tutorials are in 5-158/5-155. (Room details). (David’s schedule).
Grading Scheme
Lab Assignments15%
Team Project 15%
Online Participation
Midterm I15%
Midterm II15%
Project Implementation Feedback
…can be found here.
Course Dates
(See also the project due dates)
Lab AssignmentsWeekly. Found here.
Team Projectsee here.
Midterm I 2020-02-10 Monday
Winter Break 2020-02-17 to 2020-02-21.
Midterm II 2020-03-09 Monday
Course Evaluation will not happen
Last Class 2020-04-08 Wednesday
Good Friday 2020-04-10 Friday
Easter Monday 2020-04-13 Monday
Final 2020-04-18
18:00 online.

Other dates can be found on the University web-site here.

Course policies can be found here.
Old Exam Links

The examinations links below are here purely for education purposes. Any resemblance to historical fact or this year's midterms is pure propinquity.

from (not necessarily in the order listed)
Memory organization and memory diagrams. General programming concepts (discussed in Java) including an introduction to generic programming, and exceptions and exception handling. An introduction to object-oriented design and design patterns. Object-oriented programming concepts, including: inheritance, overriding and overloading, inner classes, and polymorphism. Graphics programming (specifically using Swing in Java).
  • Assignments are late if they are not received at the beginning of the lecture at which they are due. See the late policy for further information.
  • There will be between 4 and 8 programming assignments, the assignments being given out approximately weekly.
  • Discussion of assignment topic is encouraged but all assignments must be done independently. Copied assignments are considered as “Academic Dishonesty.” Responses to academic dishonesty include assigning a mark of -100% and written notification of the Dean. Again, see the policies link for more details and other policies.
  • Tutorial participation is mandatory.
  • The team project accounts for 15% of your mark in this course, and your participation in the team project affects the grade of your fellow team-mates. Team meetings and other team project activities happen outside of scheduled class times. Please plan accordingly.
  • Some Wednesday classes may be swapped with Thursday tutorials, and some Wednesday classes may covered by someone other than Dr Casperson, depending on Senate scheduling.
Home page Semesters Site Map
go back Winter 2020 go forward
2022-12 other links

CPSC related resources
Java related information
UML-related information
CPSC 101 [All years]
Old Exams
David’s Schedule

University Calendar

Other Links