Last modified: 2021-05-21
This is a course page of
David Casperson
Associate Professor
Computer Science
University of Northern British Columbia

CPSC 101 — Computer Programming II — Winter 2013

course outline (printable pdf version).

Important Information

Important information will be posted here from time to time.


Optional lab 8 posted.


The review and response dates for the project have been revised.


Lab 5 has been posted


Test data for Lab 4 has been posted. (See the lab page or


The final exam date is posted.


A bug in has been fixed, and the revised code posted to the blackboard ( site. Thanks to Daniel V. for noticing this.

2013-02-04 file posted to Blackboard.
Old midterms posted.
Team lists have been e-mailed. Let Dr Casperson know if you haven't received an e-mail with your team-mate’s e-mail addresses.
Midterm I date changed.
Some project information added. Link to blackboard provided. In-class workshop now available through Blackboard.
Began copy from 2012.
Dr David Casperson (contact information).
Big Java by Cay Horstman. 4th edition. Isbn: 978-0-470-57827-8.
Rooms and Hours
Lectures are in 5-164. Labs are in 8-456/8-457. Tutorials are in 5-174/5-176. (Room details). (David’s schedule).
Grading Scheme
Lab Assignments15%
Team Project15%
Tutorial Participation5%
Midterm I15%
Midterm II15%
Due Dates
Lab AssignmentsWeekly. Found here.
Team Projectsee here.
Midterm I2013-02-08 Friday
2013-02-04 Monday
Winter Break 2013-02-18–2013-02-22.
Midterm II 2013-03-08 Friday
2013-04-18 Thursday
18:00–21:00 in 7-158

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

Course policies can be found here.
2013-01-04 Printed Outline [revised Printed Outline]
2013-01-07 Workshop (availble through Blackboard).
2013-01-19 Notes on Formal Reports
2013-02-25 Sample GUI Code
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 2013 go forward
2022-12 other links

CPSC 101 [All years]
Old Exams
Blackboard Page
David’s Schedule

University Calendar