Assignments for COMP491
Overview of the capstone project
The most significant component of COMP491 is the capstone project, which is started in COMP491 during the fall and completed in COMP492 during the spring. As is usual for COMP491/492, some students work in teams on contributions to a large-scale pre-existing open-source project; others work individually on a research project.
The goals for the project are as follows.
- For open-source projects, the goal is to make meaningful contributions to the upstream project, which can include: documentation improvements, bug gardening, bug fixes, commenting on issues, resolutions of issues, and any other contributions. It is highly desirable to have contributions accepted by the upstream project maintainers, but it is also possible for a capstone open-source project to succeed in many other ways.
- For research projects, the goal is to produce empirical and/or theoretical results that address the research question.
In all cases, grading of assignments related to the capstone project will take into account demonstrated effort as well as concrete achievements. This principle applies to 5-15 reports, presentations, and other assignments related to the capstone project. The best way to demonstrate effort is to maintain a detailed and regular Slack live-log, as described next.
Slack live-logs
A Slack live-log is a Slack channel that will be used to assess effort invested in the capstone project. You may also use the same channel for communication among your team members, but its primary purpose is as a detailed diary to show the instructor when you have been working on which tasks. It is recommended that you log some kind of message every 30 minutes while working. Typically, you would describe in 1-2 sentences what you achieved in the last 30 minutes and what you are planning to do in the next 30 minutes.
Instructions for individual assignments
Some of the assignments refer to the Basic milestones for the capstone project page.
- Assignments NQP1-7: Discussion notes, questions, and participation
- Assignment HW1: Slack, wiki, Git
- Assignment HW2: Project exploration
- Assignment HW3: Project reviews
- Assignment HW4: Project ranking
- Assignment HW5: Bug gardening
- Assignment HW6: Tech spike preparation
- Assignment P1: Tech spike completion and presentation
- Assignment P2: Open-source contributions and checkpoint presentation
- Assignment P3: Open-source contributions and capstone status presentation
- Assignments TR1-2 and IR1-2: Team and individual 5-15 reports
- Assignment RBP: Reflective blog post