Computer Science

courses we are working on

Status as of May 2016:
Course Learning goals New Assessments Improved Methods
CPSC 100: Computational Thinking
(Sept ‘16 start)

Faculty: Rachel Pottinger, Will Evans

STLF: Jessica Dawson
Course-level goals: complete

Topic-level learning goals: drafted
Developing assessments to evaluate first offering of course. Includes pre- and post- surveys on student experience and attitudes (using CAS) to compare with other intro CS courses (CPSC 103, 110, 301)   
CPSC 101: Connecting with Computer Science
(Sept ‘07 start)

Faculty: Meghan Allen, Anne Condon, Steve Wolfman, Holger Hoos

STLF: Ben Yu, Allison Tew

click here to view course materials.
Course-level goals: revision complete

Topic-level goals: revision complete
Performed study of instructor & student perception and use of learning goals.

Developing assessment to probe student understanding of JavaScript code.

Piloted a new Computing Attitude Survey (CAS) in the Fall of 2011 as part of the survey validation process.

Pre- and post- surveys of student perceptions of computing science.

Peer review of student-generated images through Mechanical TA.

Analysis of exam questions to determine coverage and student performance on individual learning goals.
Developed and used a broad set of clicker questions

Adjusted delivery of course to use Just-in-Time teaching methods with pre-class readings and in-class learning activities. Based on the pre-readings, students submit “reading questions”: questions about pre-reading material that was not clear, or questions that go beyond the pre-reading. TAs summarize common themes and pass them along to the instructor, who adapts the classroom session appropriately.

Developed instructor course manual.

Developed bank of previous exam questions keyed to individual learning goals.

Conducted analysis of student retention (how many go on to take a second CPSC course).
CPSC 103: Introduction to Systematic Program Design
(Sept ‘16 start)

Faculty: Meghan Allen

STLF: Jessica Dawson
Course-level goals: drafted Developing assessments to evaluate first offering of course. Includes pre- and post- surveys on student experience and attitudes (using CAS) to compare with other intro CS courses (CPSC 103, 110, 301)   
CPSC 110: Computation, Programs and Programming
(Sept '09 start)

Faculty: Gregor Kiczales,
Paul Carter, Kurt Eiselt, Meghan Allen

STLF: Jessica Dawson, Allison Tew, Ryan Golbeck
Course-level and topic-level goals: complete Have per-question analysis of midterm and final exam data.

Developed weekly problem sets that provide students with timely feedback on their learning.

Piloted a new Computing Attitudes Survey (CAS) in the Fall of 2011 as part of the survey validation process.

2015: Pre-surveys to compare student experience in 110 between general UBC students and Vantage cohort Winter 2015.

2016: Pre- and post-surveys to evaluate student experiences and attitudes (using CAS). Will continue to compare with other introductory courses (CPSC 301, plus 100, 103 for Winter 2016).

Interviews with students who have failed or withdrawn from 110 on barriers to success in the course.

Evaluated changes made to labs
Developing a series of relevant and engaging labs.

A plug-in was developed for Dr. Racket IDE so that students can submit assignments electronically from the development environment.  This reduces the number of tools that students have to master and allows the course to focus on concepts.

Introduced peer-instruction questions at the beginning of each lab, and a peer-review exercise partway through the lab. At the same time updated lab problems to be more in-sync with lecture material.
CPSC 111: Introduction to Computation
(Sept '07 start)

Faculty: Kurt Eiselt, Cristina Conati, Wolfgang Heidrich, J. Luk

STLF: Ben Yu, Ray Lister

This course is no longer offered. It has been replaced by CPSC 110.


Course-level goals: complete

Topic-level goals: complete
Attitudinal survey revised and administered at start and end of term in all sections of summer and fall terms.

Cognitive pre-test developed and administered at start of course - the same test was administered to students in APSC 160.

Questions targeting specific learning goals have been included on exams.

A lab checklist has been developed to track the kinds of problems that students run in to during labs.
 
CPSC 121: Models of Computation
(Sept '07 start)

Faculty: Steve Wolfman, Patrice Belleville, Kimberly Voll, Meghan Allen

STLF: Ben Yu

PDF Poster (CWSEI EOY 2012): Effective Closed Labs in CPSC 121: Lessons from Eight Terms of Action Research

PDF Poster (CWSEI EOY 2010): Adaptation of JiTT in CPSC 121

PDF Poster (CWSEI EOY 2010): Changes in CPSC 121: Towards a coherent picture of computation
Learning goals have been further categorized to identify pre-class learning goals.  Students are expected to achieve pre-class learning goals on their own in advance of the corresponding class. Attitudinal surveys developed and administered in summer and fall terms.

Student interviews conducted in summer and fall terms.

Pre and post-tests developed and administered in fall term.

MCQs developed for final exam that target specific learning goals.

A scenario based think-aloud survey tool has been developed to study how students approach solving mathematical induction problems.  The tool is being used to examine the effectiveness of a decomposition technique that teaches students to approach such problems by breaking them down into more manageable pieces.
Two-stage exam conducted in summer term. Results published in ICERI 2009 and further analysis appeared at SIGCSE 2010.

Refined online quizzes used to assess pre-class learning goals on the basis of previous term's quiz results.

Re-structured in-class problem solving activities to be based on progressive clicker questions with solo- and group-response format - approximately 160 clicker questions developed and used in class.

Continued work on labs to make them "open-ended" and driven by student exploration rather than closed-ended.

Continued to re-design labs so that they are more closely aligned with core learning goals, avoiding extraneous detail.

Established a protocol for preparing TAs to a consistent level and for developing a community of support among the teaching staff.
APSC 160:  Introduction to Computation in Engineering Design
(Sept ’09 start)

Faculty:
Paul Carter, Ed Knorr

STLF: Hassan Khosravi, Ray Lister, Ben Yu

PDF Poster (CWSEI EOY 2010): Student perceptions of online multimedia instruction with JiTT

click here to view course materials.
Topic-level goals: complete Attitudinal survey developed and administered at start and end of term. Analysis pending.

Surveys assessing impact of Peer Instruction conducted in week 4 and week 8 of term.

Increased number of midterms from 1 to 2 in an effort to provide students with more regular and more accurate feedback on their progress.

Piloted a new Computing Attitudes Survey (CAS) in the Fall of 2011 as part of the survey validation process.
A series of approximately 30 screencasts have been developed to introduce students to basic concepts. Students are asked to study the screencasts before coming to class.

Clicker questions have been developed to assess students' comprehension of the concepts presented in the screencasts.

A series of in-class problem sets have been developed that allow students to further develop their understanding of the concepts learned in the screencasts.

The new format was incorporated into all four sections of the course offered in 2009/2010.  Over 800 students were enrolled.  Feedback from students on surveys has been overwhelmingly positive.  Analysis of learning gains is in progress.

Peerwise online peer question system used in 2015W.
CPSC 210: Software Construction
(Jan '10 start)

Faculty: Gail Murphy, Meghan Allen

STLF: Jessica Dawson, Allison Tew, Ryan Golbeck

PDF Poster (CWSEI EOY 2011): Measuring Student Confidence and Lab Material Balance in a CS Course
Topic-level goals: solid draft in place
Parallel assessment in progress with CPSC 211 (the course that CPSC 210 will eventually replace).

2016: Post survey conducted on student experience and attitudes towards CS (using CAS).
Examining the use of cell phones in some labs to increase relevance and student engagement.

PDF Poster (CWSEI EOY 2010): A study of student engagement in a course project through the development of cell phone applications
CPSC 211: Introduction to Software Development
(Sept '07 start)

Faculty: David Poole, Margaret Dulat

STLF: Allison Tew, Ben Yu

This course has been replaced by CPSC 210
Course-level goals: complete

Topic-level goals: complete
Attitudinal survey developed and administered at start and end of both sections of fall term.

Parallel assessment in progress with CPSC 210 (the course that will eventually replace CPSC 211)
Subversion repository has been developed that will facilitate distribution of code to students for labs and lectures. A subversion plug-in for the Eclipse IDE will be used to minimize the number of different tools that students have to master.
CPSC 213: Introduction to Computer Systems & CPSC 261: Basics of Computer Systems
(Sept '07 start)

Faculty: George Tsiknis, Don Acton
STLF: Ben Yu
Course-level goals: complete, under review

Topic-level goals: complete, under review
Pre and post-tests developed and administered during summer term.

Two-stage exams (published ICERI 2009 & SIGCSE 2010).
All assignment and exam questions were tied to specific learning goals. A set of scripts was developed to provide students with individualized feedback web pages from which they can determine how they are doing - not just on a given assignment, but also on individual learning goals.
CPSC 221: Basic Algorithms and Data Structures
(Sept '07 start)

Faculty: Kimberly Voll, Ed Knorr, Steve Wolfman
STLF: Ben Yu

PDF Poster (CWSEI EOY 2013): “Dictionary Wars”: An Inverted, Leaderboard-Driven Project for Learning Dictionary Data Structures

PDF Poster (CWSEI EOY 2012): Planning Assessment for a Game-Like, Highly Reusable Data Structures Assignment

PDF Poster (CWSEI EOY 2010): Workshop-Based Learning - Retention and Learning in Data Structures and Algorithms
Course-level goals: complete

Topic-level goals: complete
Post-test developed and administered at the end of summer term.

Attitudinal survey revised and administered at the end of 2009 fall term.
Used JITT, in-class group problem solving and peer instruction, clickers or non-electronic clicker equivalents, and web-based quizzes to shift focus of courses to higher-level analysis and problem solving.

Based on outcomes from the Foundations of Computing Concept Inventory, a “crash-course” on arrays has been added.
CPSC 259: Data Structures & Algorithms for Electrical Engineers
(Fall '12 start)

Faculty: Ed Knorr
STLF: Hassan Khosravi

PDF Poster (Science Ed. Open House 2016): Studying the Effects of Adding 'In-Lab' Programming Tests to a CS Service Course

PDF Poster (CWSEI EOY 2014): Extending and Improving the Role of Deliberate Practice in CPSC 259

PDF Poster (CWSEI EOY 2013): Introducing Pair Programming in Intermediate C to Non-Specialists
Course and topic-level learning goals: complete Apply pre-test as diagnostic of retention of learning from prerequisite course (APSC 160).

Online quizzes for weekly pre-reading

Bi-weekly individual programming quizzes alternate with regular pair-programming labs.

End-of-term survey of student confidence on learning goals.

Per-question final exam analysis
Pre-class readings

Developed in-class materials that build on pre-class readings.

Revised labs

Online simulation for hands-on practice with pointers, types, memory & addressing.

In-lab debugging exercise to enforce hands-on practice with the debugger.

Peerwise online peer question system used in 2015W.
CPSC 260: Object-Oriented Program Design
(Sept '09 start)

Faculty: Don Acton
STLF: Allison Tew, Ray Lister

This course has been replaced by CPSC 213/259/261
Topic-level goals: complete Pre-test developed and administered in 2009/2010 that measure retention of learning from APSC 160. A series of clicker questions has been developed.
CPSC 301: Computing in the Life Sciences
(Sept ’07 start, Jan '14 restart)

Faculty:
Ian Mitchell, George Tsiknis

STLF: Ben Yu
Course & topic-level learning goals: complete Weekly student surveys in first offering of the course to judge workload, relevance of topics

Lab exam

2015: Slightly modified version of CAS administered

2016: Pre- and post- surveys on student experience and attitudes towards CS (using CAS).
Clicker questions

In-class group exercises

Pair programming in labs

2014: Significant expansion of clicker questions and in-class group exercises accompanied by drastic reduction of traditional lecture slides

2015: Out of 24 classes, 15 include clicker questions and 17 include in-class exercises (for participation credit)
CPSC 304: Introduction to Relational Databases
(Sept ’09 start)

Faculty:
Ed Knorr, Rachel Pottinger, Raymond Ng

STLF: Hassan Khosravi, Ben Yu

PDF Poster (CWSEI EOY 2010): CPSC 304 Course Transformation
Topic-level goal: complete Attitudinal survey developed and administered at start & end of term.

Pre and post-tests developed to assess change in learning.

Student interviews conducted during fall term.

Repository of clicker questions developed, including historical scoring data and Bloom’s taxonomy classification.

Per-question final exam analysis

Interaction graph between students in Peerwise collected for further analysis.

Isomorphic clicker questions presented several lectures after initial use to measure retention in context of peer instruction.
Two-stage exams conducted in both midterms of fall 2009 term.

A set of new tutorials has been developed and tested in spring 2010 in response to poor attendance in previous terms. The new tutorials are designed to incorporate active learning and have resulted in higher attendance.

Tutorials were improved upon for summer 2010 offering of course to include reflection exercises such as the development of a concept map.

Two new tutorials added in summer 2014, plus creation of a parallel version of the 2010 tutorials using alternative database software.

Peerwise online peer question system used in 2016S.
CPSC 310: Introduction to Software Engineering
(May '10 start)

Faculty: Meghan Allen
STLF: Allison Tew, Ben Yu
Course and topic level goals: in progress Diagnostic test developed to assess student preparation in learning New lecture material under development on topics that are more relevant (e.g., distributed version control systems)
CPSC 313: Computer Hardware & Operating Systems
(Sept '12 start)

Faculty: Don Acton
Course and topic level goals: draft Two-stage exams

Student survey of unclear topics at the end of term
Lecture-by-lecture timeline with commentary plus recordings of 2013W1 lectures

Adoption of a modern version control system for assignment distribution and collection (will maintain a record of student solutions for future analysis)
CPSC 314: Introduction to Software Engineering
(Dec '14 start)

Faculty: Dinesh Pai
Revised course-level learning goals: in progress Survey to understand student motivation in preparation for upcoming course revisions.  
CPSC 317: Internet Computing
(Sept '09 start)

Faculty: Don Acton, Norm Hutchinson

STLF: Allison Tew

PDF Poster (CWSEI EOY 2012): An Evidence-Based Transformation of a Computer Networking Course
Course-level goals: complete

Topic-level goals: complete
Conducted initial survey to gather baseline data on student experience in course

Baseline data collected in the form of per-question analysis of exam data and attitudinal survey

Piloting Pearson’s learning catalytics product as an alternative to clickers
Developed group based, in-class learning activities and associated discussion questions focused on specific learning goals. These methods will be administered for the first time in Spring 2012.  
CPSC 320: Intermediate Algorithms and Data Structures
(Sept ’09 start)

Faculty: Kimberly Voll, Steve Wolfman

STLF: Jessica Dawson
  A test of expected prerequisite knowledge was developed and administered at the start of the term

Regular, weekly COPUS observations to provide rapid feedback on use of in-class activities and worksheets. (Winter 2015)
Fully flipped version of the course developed and piloted by Steve Wolfman in Winter 2015. Pre-readings selected for each class with quiz at beginning of class. In-class worksheets developed and used as central content and activity for every lecture.
CPSC 322: Artificial Intelligence
(Summer ‘08 start)

Faculty: Giuseppe Carenini, Kevin Leyton-Brown

STLF: Ben Yu

Post-doc: Frank Hutter

Graduate Student: Byron Knoll
Course-level goals: complete

Topic-level goals: complete
A large body of questions have been developed to be used as the core of future exams.

Conducted survey on student use of practice problems and perceived usefulness for their learning. 
A set of 19 practice problems complete with solutions have been developed and made available at
www.aispace.org/exercises.shtml.

12 of these 19 exercises are integrated with AI Space applets.  Background reading for each exercises was also identified in the course textbook. 

These exercises were also integrated into webCT and two quizzes for each problem were created. 

An additional set of 19 quizzes covering 7 of the practice problems were made available towards the end of the term. 

Two new AI Space applets have been developed.
CPSC 340: Machine Learning and Data Mining
(Fall '14 start)

Faculty: Raymond Ng
Post-doc: Yashar Mehdad
Course and topic level learning goals: complete Post-class student surveys

Some repeated exam questions
8 new problem-based laboratory modules to give students hands-on, TA supported practice with lecture concepts. The modules focused on applying different approaches to just two large datasets so that students could apply different techniques to the same data.

4 new assignments to complement the lab modules.
CPSC 344: Introduction to Human Computer Interaction Methods
(Fall 2013 start)

Faculty:
Karon Maclean

STLF/Faculty: Jessica Dawson

Grad student: Oliver Schneider
Course level learning goals: complete

Lecture-level and pre-reading-level learning goals: draft, used in 2014W1
Pre-readings and quizzes

Replaced course project with a more gradual and scaffolded project. Increased frequency of feedback on project progress through regular weekly meetings with TA in tutorials.

pre & post student surveys
Pre-reading allows time for interactive activities in the lecture

Developed in-lecture worksheet activities for 19 lectures (of 20 usual lecture slots). Documented activities with ‘how-to’ guides for future instructors.

Reduction in the workload for expert TAs (so that more students can be supported without requiring more expert TAs). Development of TA roles for undergraduate TAs in addition to graduate TAs.
CPSC 402: Numerical Linear Algebra
(Fall '13 start)

Faculty: Michael Friedlander
Post-doc: Ting Kei Pong
  Same as CPSC 406 below Same as CPSC 406 below
CPSC 404: Advanced Database Systems
(Sept ’09 start)

Faculty:
Ed Knorr

STLF:
Ben Yu

Course and topic-level learning goals: complete Attitudinal survey developed and administered at start and end of term

Pre and post-tests developed to assess change in learning

Clicker questions

Per-question final exam analysis
Pre-reading

worked examples

In-class exercises (using CC workbooks) for almost all lectures

Students must submit solutions to pre- and in-class exercises
CPSC 406:  Computational Optimization
(Fall '12 start)

Faculty: Michael Friedlander

Post-doc: N. Krislock
Course-level learning goals: complete Conducted per-question analysis of relevant exam data before and after introduction of case studies to measure change in learning.

Case study homework and write-up replace roughly half of traditional homework assignments.

Survey of student opinion on the effectiveness of the case-study approach.
Developed four case studies for major modules in the course that give students practical, hands-on practice at solving a problem in the field. Each case study is accompanied by related in-class activities (two lecture hours) and a homework assignment.
CPSC 410: Advanced Software Engineering
(Sept '11 start) 

Faculty: Eric Wohlstadter
Learning goals revised to provide a stronger connection between CPSC 410 and its major prerequisite CPSC 310.     
CPSC 422: Intelligent Systems (Sept ’09 start)

Faculty: Cristina Conati, Kevin Leyton-Brown, Giuseppe Carenini
Post-doc: Frank Hutter
Topic / lecture level learning goals: draft   All assignments have been revised with respect to learning goals and two new assignments have been developed.

Exploration of IBM's recently released Watson tools to see whether they might be used to create new hands-on assignments; unfortunately, the tools turned out to be inappropriate.
CPSC 425: Computer Vision (Spring '12 start) 

Faculty: Bob Woodham, Jim Little, David Lowe

Graduate Student: Tristram Southey
Course-level learning goals: complete Conducted per-question analysis of exam data before and after introducing revised materials to measure change in student learning

Student survey on course content, pacing

Added seven “practice quizzes” to provide more regular and timely self-assessment

Modified homework assignments to better align with the types of questions asked on exams
Development of simulations for use in class. Development of framework that allows students to apply concepts learned in course to real-world computer-vision tasks.

Switched language from Matlab to Python so that students can more easily access material outside of the lab
CPSC 430: Computers and Society
(Spring ’12 start)

Faculty: Kevin Leyton-Brown, Jessica Dawson

STLF: Jessica Dawson

Graduate Students: Chris Thornton & James Wright
Course-level learning goals: complete Added 11 weekly essays with an automated calibrated peer review system

Compared final exam results across multiple years

Post-survey to assess student attitudes toward calibrated peer review system (Fall 2014, 2015)
Identified weekly pre-class reading assignments. Developed related mini-essays that students must complete prior to class. Essays are peer-reviewed. Class time can then focus on discussion, group exercises and analysis of arguments.

Developed Mechanical TA, a software system to manage peer review of essays and reduce TA marking effort. Improved user interface developed and tested in fall 2014.

Developed bank of calibration essays for students (and TAs) to practice on. Calibration essays are also silently & randomly included into the peer review process to spot-check quality of independent reviewers.

2015: Revised in-lecture activities and developed a set of worksheets for every lecture to facilitate peer-discussions on case studies during lectures.
CPSC 444: Advanced Methods for Human Computer Interaction
(Sept '10 start)

Faculty: Joanna McGrenere, Jessica Dawson

STLF: Jessica Dawson

Graduate Student Kailun Zhang
Course-level learning goals: complete Post survey to assess course revisions (Winter 2016). Added practical component to each tutorial in response to feedback from students. 

Reworked project and labs to streamline descriptions and milestones. 

Improved tutorial instructions for TAs

Created a new lab to teach Android phone development skills.

2016:
Transitioned to a more blended-learning approach: In-person tutorials were eliminated, and content was adapted a combination of online pre-class tutorials and in-lecture activities.

Designed and deployed two online experiments that students use to collect experiment data at home (as opposed to in-lab). Developed step-by-step tutorials and Connect assignments to guide students in conducting the experiments and collecting data, performing data analysis, and interpreting their results.

Revised and adapted tutorial activities and developed worksheets to be used in lecture.

Pre-lecture quizzes and open-ended responses developed in Connect to guide students in completing pre-reading assignments and performing self-assessment of their understanding.
PDF Poster (UBC Science Education Open House 2016): Retiring the Red Pen: Marking Exams Digitally
PDF Poster (UBC Science Education Open House 2016): Using Learning Analytics for Providing Personalized Content and Feedback in Large Classes
PDF Poster (UBC Science Education Open House 2016): Student Experience in Introductory CS Courses
PDF Poster (UBC Science Education Open House 2015): Mechanical TA: Partially Automated High-Stakes Peer Grading
PDF Poster (UBC Science Education Open House 2015): Student Attitudes Towards Partially-Automated Peer Grading
PDF Poster (CWSEI EOY 2014): Misconceptions & Concept Inventory Questions for Binary Search Trees & Hash Tables
PDF Poster (CWSEI EOY 2014): Using the CWSEI Approach to Updating Computer Science Systems Courses
PDF Poster (CWSEI EOY 2013): A Plan for Transforming Systems and Database Courses in Computer Science

Learning Goals for Core Courses (CPSC 110, 111, 121, 210, 211, 213, 221, 310, 313, 320): A comprehensive set of learning goals (both course-level and topic-level) has been developed for most 1st and 2nd year core courses. Most of these courses use LGs regularly to some extent in class (e.g., many 111 instructors now show the LGs associated with each unit as they lecture on the unit). CPSC 313 also has rough draft LGs.  Draft course-level learning goals for the new CPSC 110 and CPSC 210 have been completed.
Computer Science Learning Goals
Learning goals from 5 UBC Computer Science courses (prepared by Beth Simon and numerous UBC CS faculty).

CPSC 260: Object-Oriented Program Design:Don Acton and Ben Yu investigated the correlation of student performance with different components of this course.

Attitudinal Surveys: Survey instruments have been developed for CPSC 101, 111, 221, 317, 320, 404, and APSC 160.  These instruments will facilitate the tracking of students' attitudes about the curriculum, their interest in Computer Science, and their expectations throughout their undergraduate years.

Peer Evaluation Primer for CS Instruction: Jessica Dawson prepared two documents on the use of peer evaluation in the context of computer science instruction, based on a literature review and discussions with instructors in the department who have used it. The first document Introduction to Student Peer Review is a brief five-page overview of what peer review is as well as the advantages and challenges of implementing peer review; it includes an annotated bibliography. The 2nd document Resources and Guidance for Student Peer Review contains a detailed checklist of issues that should be considered when thinking about implementing peer review, as well as an overview of peer review software systems available as of fall 2014.