Capstone Projects

Software Systems Capstone Projects (Capstones) provide SoSy students opportunities to apply their software systems skills to significant projects of depth and/or breadth that require contemporary knowledge of systems and software system development. Through collaboration with industry, non-profits, or academic research labs, students will be able to develop software projects that they can be proud to publicize.

How Does It Work?

Each Capstone will be based around an approved capstone proposal submitted by a faculty member who will act as a mentor for the project. Students may work with faculty in order to construct/modify a proposal that finds agreement between the abilities and interests of both the students and faculty involved. When an agreement is reached, the mentor will inform the SoSy Capstone Committee and have the students enrolled in the Capstone courses* (CMPT 494 and subsequently CMPT 495).

During the course of the two fourth-year courses (CMPT 494 and CMPT 495), small groups of students (typically 2-4) will work with their faculty mentor on various parts of the project on a regular basis. This includes, and not limited to, proposing, conceptualizing, designing, developing, and demonstrating the project.

Upon completion of a Capstone, students are required to complete a final project report providing the context for the problem they worked on, the challenges they faced, and how they students overcame these challenges. Appropriate knowledge of existing work must be demonstrated. This project report may serve as a white paper or conference paper depending on the nature of the Capstone project.

All Capstone students will also be required to create a poster and a live demonstration (as appropriate) of their work in a Capstone Showcase or the Computing Science Undergraduate Research Symposium.

*The proposal approval process is a prerequisite for CMPT 494, while successful completion of CMPT 494 is a prerequisite for CMPT 495. For details, see the Capstone Project Requirement section of this page: https://www.sfu.ca/students/calendar/2024/spring/programs/software-systems/major/bachelor-of-science.html

Important Dates For Sosy Capstone Projects

 

Summer 2024 -Fall 2024 Cycle

Spring 2024 - Summer 2024 Cycle Fall 2023 - Spring 2024 Cycle

Match - Making Starts

From now until 12 May, 2024

Now - 14 Jan, 2024 on 25, July 2023

Fill out Project Application 

by 24 Apr, 2024

by 18 Dec, 2023 by 18 Aug, 2023

Meet with Mentor(s)^

by 12 May, 2024

by 5 Jan, 2024 by 8 Sept, 2023

Fill out Commitment Form

by 12 May, 2024

by 5 Jan, 2024 by 8 Sept, 2023

Auto-Enrollment by School  

by 12 May, 2024

by 14 Jan, 2024 by 15 Sept, 2023

CMPT 494 Starts

on 6 May, 2024

on 8 Jan, 2024 on 6 Sept, 2023

^Once the students have met with the mentor(s) and an agreement is reached, they can fill out the Commitment Form directly. There is no need to wait.

^^Tentative schedule. It is subject to change.

Why Do A Capstone Project? 

Capstones are expected to be incentivizations themselves from the student perspective. They will provide an opportunity for exploring a problem the student is interested in for an extended period. Students may propose their own group projects to a faculty member. Because of the competitive nature of student applications for Capstones, students must strive and demonstrate appropriate knowledge to be approved. This will elevate both SoSy and the students. In addition, Capstones will provide both material for participating students’ CVs and the possibility of winning the Capstone Showcase award. Specific benefits may include high quality reference letters for the student, the opportunity to work with graduate students in a research lab, and the opportunity to work with an industry partner. 

Capstone Requirement 

A capstone requirement may be added similar to existing Systems and Software Engineering requirements.

Students complete EITHER (CMPT 494 (3) Software Systems Capstone Project I and CMPT 495 (3) Software Systems Capstone Project II) OR 2 out of: CMPT 379 (Principles of Compiler Design), CMPT 431 (Distributed Systems), or CMPT 433 (Embedded Systems).

How To Get Involved? 

Before the start of term, you will be receiving an email with an invitation to join our Canvas course where you can read about the available Capstone projects and find a match for you!