A list of deliverables and dates is below. Some details (e.g., dates, or what we ask for) are subject to change as the quarter progresses. We will provide finalized instructions in class.
All assignments are to be done in groups unless otherwise noted. It is sufficient for one group member to submit via Canvas; please note the names and UWNetIDs of all group members in your submission.
Please submit your files on Canvas unless otherwise specified.
These are the templates references below:
Name: Project proposal
Type: Slides/Presentation (Submit by adding to shared Google Doc)
Deadline: Week 1, Monday 03/25, in class (1:15pm).
Percent of Total Grade: 1%
During our first meeting, prepare (individually, not in groups) a one-slide pitch for a possible project. Sample projects include: password manager, secure email or messaging client, secure escrow for passwords in case of emergencies, two-factor authentication system, fake news detector. You may use the above list as inspiration, and your idea does not need to be original -- that is, it can be a different version of something that already exists (e.g., secure email client). The main criteria: It should be something that you're excited about building and that has a non-trivial need for security and/or privacy.
Also include in your single slide your name. During your in-class presentation, please introduce yourself (at least name and pronouns) and mention why you are taking this course.
Your submission should be a 1-slide slide, added to the shared Google slide deck. Do not include any animations since one of the course staff will be advancing the slide deck. Each presentation will be given 3 minutes. You do not need to use all 3 minutes (we can advance the presentation if you finish early).
If you would like to present more than one idea, you are welcome to do so, but you must still use only one slide, not have animations, and must use at most 3 minutes.
Name: Group selection and tentative project plan
Type: In Class
Deadline: Week 1, Friday 03/29, 5 p.m.
Percent of Total Grade: 0.5%
One group member should email cse481s-staff@cs, cc'ing all
other group numbers, with the following information: (a)
your team name; (b) the names and UW net IDs of every group member; (c) a short
description (one brief paragraph) of your tentative project.
Name: Project selection reflection
Type: In Class
Deadline: Week 1, Friday 03/29, 5 p.m.
Percent of Total Grade: 0.5%
On Canvas: individually, submit a short reflection (1-2 paragraphs) about what
influenced your project choice and how the project changed from its initial presentation
at the start of class, if at all. Describe the factors the lead to your current
formulation of the project; some projects might closely reflect the original
presentation in class; other projects might be the result of merging multiple projects;
other projects might be the result of taking an initial project idea and evolving it
through the in-class exercises; other projects might also be purely the result of the
in-class exercises and peer dsicussions. (Examples of project choice influencers may
include: you have done work in [some specific topic] previously and had already decided
to work on something related, you knew you wanted to work with certain people before the
class started, someone’s project slide piqued your interest).
Name: Draft of Section 2-4
Type: Design Doc
Deadline: Week 2, Monday 04/01, 12 p.m.
Percent of Total Grade: 3.5%
See the design doc template for more details. This is a draft and does not need to
be fully polished. These draft documents will be shared with other groups so that they
can complete the threat modeling assignment for the following week.
Name: Presentation of Sections 2-4 of design doc
Type: Slides/Presentation
Deadline: Week 2, Monday 04/01, 12 p.m.
Percent of Total Grade: 1%
The slide deck should be short, not just a re-hash of what's in the document. Target an
8 minute presentation, with 5 minutes after the presentation for Q&A. These slides will
be shared with other groups so that they can complete the threat modeling assignment for
the following week.
Name: Implementation plan and git setup
Type: Implementation
Deadline: Week 3, Monday 04/08, 12 p.m.
Percent of Total Grade: 1.75%
(1) Submit a 1-2 page document containing a preliminary implementation plan. Includes
planned time schedule and people assignments for different components of the project.
The planned time schedule should note which portions (if any) of the implementation have
already been completed.
(2) Get your GitLab setup working, do test comments. Everyone has been added as a maintainer to a course-wide GitLab group. Please create your new repository in that group.
Name: Threat model analysis of other projects
Type: Peer Analysis
Deadline: Week 3, Monday 04/08, 12 p.m.
Percent of Total Grade: 6%
Document containing threat model analysis for each other group’s project (based on their
draft documents and the slides that they presented last week). You should submit a
document that follows the format in the template.
We will assign specific groups to you (3 each).
Name: Presentation of peer threat model analysis
Type: Slides/Presentation
Deadline: Week 3, Monday 04/08, 12 p.m.
Percent of Total Grade: 1%
Prepare 1-2 slides for each other group’s project, summarizing your threat model analysis
of that project. Target a ~10 minute presentation, total, for the 3 projects that you
analyze (up to 12 minutes allowed for the presentation, total). Following the
presentation, plan for up to 5 minutes of Q&A.
Name: Threat model reflection
Type: In Class
Deadline: Week 3, Wednesday 04/10, 5 p.m.
Percent of Total Grade: 2%
This reflection should be a ~1 page written summary of the feedback you received from
other groups as well as the outcomes of the in-class card-based exercise, which (if any) new threats arose that you hadn’t already thought of, and
what you found valuable about the peer threat modeling process.
Name: Revisions to Sections 2-4 (previously empty subsections now have draft text)
Type: Design Doc
Deadline: Week 4, Monday 04/15, 12 p.m.
Percent of Total Grade: 4.5%
Revisions to these sections of the design doc based on the peer threat modeling process and in-class card-based activity.
Previously empty subsections now have draft text.
Name: Summary of implementation accomplishments so far
Type: Implementation
Deadline: Week 4, Monday 04/15, 12 p.m.
Percent of Total Grade: 1.75%
Submit a summary (~1 page, based on your implementation plan) of what you have
accomplished up until now. If your recent efforts have been more focused on design than
implementation, that is fine - please just explain what you've been working on.
Name: Summary of work done during class time, and updated implementation plan
Type: Implementation
Deadline: Week 4, Tuesday 04/16, 5 p.m.
Percent of Total Grade: 1.75%
Today’s class is a work day. We encourage you to use this time to work on your
implementation, as it is a time that you all have on your calendars, but we realize that
groups may wish to reserve a significant amount of time on a different day or at a
different time. At the end of the class period, please submit (1) a summary of what you
did before 5pm on this date and (2) a revised implementation plan taking into account
the progress you have made so far.
Name: Short update presentation #1
Type: Slides/Presentation
Deadline: Week 5, Monday 04/22, 12 p.m.
Percent of Total Grade: 1%
Prepare 1-2 slides updating us on your implementation progress, new problems/challenges
encountered, design changes made, and any changes to the implementation plan/timeline.
Target a 5-8 minute presentations with 5 minutes for Q&A or discussion.
Name: Draft of Section 5
Type: Design Doc
Deadline: Week 5, Monday 04/22, 12 p.m.
Percent of Total Grade: 4.5%
See the
design doc template for more details.
Name: Demo presentation
Type: Slides/Presentation
Deadline: Week 6, Monday 04/29, 12 p.m.
Percent of Total Grade: 5%
At this point, you should have completed your preliminary implementation to the point of
being able to give a demo (live or video) in class. Target a 5-8 minute presentation,
with 5 minutes for Q&A or discussion after the presentation.
Name: Code preparation for analysis team
Type: Email to course staff
Deadline: Week 6, Monday 04/29, 12 p.m.
Submit (a) A list of technical requirements for your analysis team (e.g., Windows,
Linux, MacOS, Android, iOS, certain software, etc.) (b) A list of the technical
capabilities of your team (i.e., what devices you have that you can use to test other
projects). This is part of next week's implementation-category grade.
Name: Draft of Section 6.1
Type: Design Doc
Deadline: Week 7, Monday 05/06, 12 p.m.
Percent of Total Grade: 4.5%
See the
design doc template for more details.
Name: Code prepared to share with analysis team
Type: Implementation
Deadline: Week 7, Monday 05/06, 12 p.m.
Percent of Total Grade: 10.5%
You should have code, documentation, and a test environment ready to hand off to another
team that will be doing a security analysis of your project.
The design doc you turn in for the Section 6.1 checkpoint will be shared with your
analysis team, and you will spend time in class granting them access to your GitLab
repository and answering their setup questions, if needed.
Name: Peer analysis doc + issues noted via GitLab
Type: Peer Analysis
Deadline: Week 8, Monday 05/13, 12 p.m.
Percent of Total Grade: 10%
Please use the templated providedfor your peer security analysis document. Please also open issues
on the project’s GitLab repository for each of the issues you investigate (regardless of
the outcome of that investigation).
Name: Presentation of peer analysis
Type: Slides/Presentation
Deadline: Week 8, Monday 05/13, 12 p.m.
Percent of Total Grade: 1%
Prepare a presentation summarizing the security analysis you’ve done of another group’s
project. Target a 5-8 minute presentations with 5 minutes for Q&A or discussion.
Name: Peer security analysis reflection
Type: In Class
Deadline: Week 8, Tuesday 05/14, 5 p.m.
Percent of Total Grade: 2%
Submit a ~1 page document summarizing the issues found by the other group’s analysis of
your project. Include a prioritization of those issues and assignments to team members
to address them.
Name: Short update presentation #2
Type: Slides/Presentation
Deadline: Week 9, Monday 05/20, 12 p.m.
Percent of Total Grade: 1%
Please prepare 1-3 slides updating us on your progress, what you’ve fixed, and any
challenges you’ve faced. Target a 5-8 minute presentation, with 5 minutes for Q&A or
discussion after the presentation.
Name: Issues addressed and updated in GitLab
Type: Implementation
Deadline: Week 9, Monday 05/20, 12 p.m.
Percent of Total Grade: 8.75%
Address as many of the security issues raised by the peer analysis as you can, or
explain why you have explicitly chosen not to address some of these issues. Use GitLab
issues to ask for more details from the analysis team if necessary, and to track your
progress.
Name: Final presentation
Type: Slides/Presentation
Deadline: Week 10, Monday 05/27, 12 p.m.
TBD: Time will change, this is a holiday
Percent of Total Grade: 5%
Final presentations should include a summary of the whole design, testing, and fixing
process, as well as a live or video demo of your final product. Target a 15 minute
presentation, with 5 minutes for Q&A or discussion after the presentation.
Name: Finished design doc (Sections 1, 6.2, 6.3 are new; 4.Y and 4.Z should now be complete)
Type: Design Doc
Deadline: Finals Week, TBD Time based on UW final exam schedule (replacing final exam)
Percent of Total Grade: 8%
See the
design doc template for more details.
Name: Finished code + test environment
Type: Implementations
Deadline: Finals Week, TBD Time based on UW final exam schedule (replacing final exam)
Percent of Total Grade: 10.5%
Complete all git commits to your project code, documentation, and test environment. We
should be able to clone and run your project.
Name: Final reflection
Type: Misc
Deadline: Finals Week, TBD Time based on UW final exam schedule (replacing final exam)
Percent of Total Grade: 2%
Individually, not in groups, submit a final reflection. This reflection should
include:
(1) Notes on other presentations: suggestions for improvement if the project were to
continue,
(2) Notes on own project: what would you still do if the project were to continue,
and
(3) Reflections on the overall process: what worked well, didn’t work work, would
you do differently next time.
Name: Summary of individual contribution
Type: Misc
Deadline: Finals Week, TBD Time based on UW final exam schedule (replacing final exam)
Percent of Total Grade: 1%
Individually, not in groups, submit a ~1 page summary of your individual
contribution to your group’s project. Recommended format: a weekly log. The course staff
understands that individual contributions may vary week-by-week; overall effort should
be shared across all team members.