CSCI 4243W - Senior Design

Posted on July 24, 2018 by Gabriel Parmer and Rahul Simha

Course Info

Instructors Contact info:

Mentors:

Instructors:

Fall 2018 Class Time/Location:

Office Hours:

Textbook

Course Overview

Learning outcomes:

Direct Instruction and Independent Learning

Each semester, you’re expected to spend at least:

Booting up

You should have already received an email with a survey about project topics and teams. If you haven’t, contact us immediately. When discussing and thinking about projects, please keep in mind the project criteria.

Piazza. We will be using Piazza as an online class forum. Don’t hesitate to ask general questions here, but please do not include code (see Academic Honesty below).

Trello and Github. We will be using Trello and Github for project and code management. Please carefully read how we will use them in this class. It is your responsibility to abide by the conventions spelled out here for their use.

Please see the email that has gone out to all SD students in August and fill out the form therein.

Project Webpage

You must have a webpage for your project. We are using Github pages as detailed on our page about how to use Github for SD. You must have your webpage up and running by the first Writing Assignment deadline to properly submit that assignment.

Schedule


Week Tuesday Wednesday Sunday Deadlines
Aug 26th Intro to SD Project Discussion/Planning
Sept 2nd Project Update Design I
Sept 8th Presentation Workshop (Saturday), SPM
Sept 9th Project Update Design II Writing I
Sept 16th Project Update Developer Tools Group Feedback (Opt), Equipment Requests
Sept 23rd Sprint Planning Meeting Design III
Sept 30th Project Update Presentation I Writing II
Oct 7th Fall Break Human-Computer Design I
Oct 14th Boot-Camp Demo Presentation II Group Feedback (Optional)
Oct 21st Sprint Planning Meeting Human-Computer Design II Writing III
Oct 28th Project Update Demo Review Cover Letter and CV
Nov 4th Project Update Mock Interviews
Nov 11th Project Update Presentation III Group Feedback (Opt), Interface Design Doc
Nov 18th Project Update Thanksgiving Break
Nov 25th Sprint Planning Meeting Design Review Writing IV
Dec 2nd 40% Demos 40% Demo Final Design Document
Winter Sprint! …lotsa progress… …to be had! 😊
Jan 13th SPM Coding++
Jan 20th 70% Demo Applying HCI Group Feedback (Opt)
Jan 27th Project Update HCI Huddle
Feb 3rd Project Update Mock 100% demo
Feb 10th SPM Final Presentation v1
Feb 17th Project Update Money Management
Feb 24th 85% Demo 85% Demo
Mar 3rd Project Update Final Presentation v2
Mar 10th Hacking Intensive
Mar 17th SPM Senior Focus Group
Mar 24th Project Update Final Presentation Practice
Mar 31st Project Update Life after College
April 7th N/A Final Presentation Practice
April 14th N/A TBD
April 21st Final Presentations Final Presentations
May 7th Final Package Due
May 17th Senior Design showcase @ 11:30-2pm

Submit all deadlines in your shared drive with the exception of Group Feedback. Submit Group Feedback by email to your mentor (see “Group Feedback” below).

Please note that SD Sprints span fall break, thanksgiving break, and winter break, and that demos and presentations are due soon after many of these breaks. Correspondingly, you are expected to make consistent progress on senior design, and if you don’t meet these expectations without working over these breaks you must expect to make progress during them.

Project updates are done for your mentor. You must come prepared. This means ensuring that Trello is updated with your current progress. You should walk your advisor though your progress through your cards. If your cards are not updated and you aren’t ready to present, you’ll automatically get a 0% on progress for the previous period.

Written Assignments

SD’s writing assignments help you practice communicating your idea and putting it into a broader context. Each writing assignment has the deadline specified in the schedule.

Presentation Assignments

See the bottom portion of the webpage on writing and presentations for information on the presentations.

Assignment submission

Written assignments. Written assignments will be submitted (unless otherwise noted) as follows:

You must post your written assignments in both places by the deadline.

Presentations. Please submit your presentations by linking them on your project’s webpage in pdf format. The main deliverable is, of course, the actual presentation.

Demos and code. Your github repos are your “living submissions”. We will look through your github commit activity to gauge constant progress. On Demo days, please use a git tag to annotate the commit you’re using for the demo. Name the tag demo-X where X is the demo number. Come to class prepared with a polished demo that accurately depicts your progress.

Sprint planning meeting. Before each sprint planning meeting, you should make sure that your “Backlog” list in Trello is populated, labeled, and assigned to the proper team member. Please leave any task that remains from the previous sprint in the “TODO this Sprint” list, in that list. In the meeting, you’ll move tasks from the “Backlog” into the “TODO this Sprint” with your SD Mentor. Please ensure that you use Trello as spelled out for this class. As detailed in that webpage in “Trello and Sprint Planning Meetings (SPM)” you must prepare for the “Sprint Planning Meeting” with your SD mentor, and must structure your cards in the specified way.

If the tasks that you’ve allocated for a sprint are deemed by your SD Mentor to not represent sufficient progress, then you must schedule a meeting with your SD Mentor the same week as the “Sprint Planning Meeting”, and go to that meeting with an expanded set of tasks. Similarly, if you’re discussion goes over the amount of time allocated to your group, your SD Mentor might require you schedule an meeting the same week to finish planning.

Academic honesty. You must handle your Trello tasks, github commits, and demos with integrity. See the Academic Honesty section for more information about how to lose a lot of credit quickly by not handling these with honesty.

Final Package

Please submit the following by noon, Tuesday May 7 as a tarball or zipfile in your group’s google drive and via email to your mentor (a replica should be in your team’s github account):

Code.

Equipment (if applicable).

Screencast.

Poster.

Project webpage.

Group Dynamics

It can be difficult working in a team, but it is essential in SD that all group members are productive and work together toward the project’s goals. Here we discuss what to do if the group dynamics break down at all.

Toxic group dynamics. A collegial environment must be maintained at all points during SD. Disrespect for each other, harassment of any form, or any other form of inappropriate behavior will not be tolerated in SD. Your demeanor in your group can negatively impact your grade, and will be passed to university-level disciplinary action where warranted. If you have concerns about your teammates, or yourself not nurturing a collegial environment, please send an email immediately to your SD Mentor with title “SD: Group Problem”.

Group Feedback. Every month, you can optionally submit Group Feedback to your SD Mentor. These reviews are an opportunity to raise any concerns you have with your group. If you do submit one, please include the names of all team members. Suggested topics you likely want to include in your review:

Your SD Mentor will use your review to help ensure that teams are functioning productively. We will not share the contents of your review with your other members unless you want us to. Most likely, we will use this information to facilitate a discussion between group members. If group dynamics break down, it will impact assigned grades.

Though we include explicit deadlines when you can submit group feedback, to remind people to use this mechanism, you should feel free to send group feedback anytime you feel it is necessary. If you have not sent us group feedback, and complain at a later date about group issues that prevent you from making progress, we will not be receptive. Thus, it is necessary that you don’t procrastinate, so that you notice any problems and can raise them earlier than later, and that you are active about reporting negative group dynamics.

Submission of Group Feedback. Please email your SD Mentor using the title “SD: Group Feedback”. Include your group feedback in the body of the email.

Late work policy

Grading

Your grade in this class will be determined by

  1. Setting monthly sprint goals that are realistic and will yield a completed project while meeting those goals. You will determine these tasks during the “Sprint Planning Meeting” with your SD Mentor. Your grade will be dependent on 1. you creating an appropriate “Backlog” before the “Sprint Planning Meeting”, 2. the tasks for a given sprint making appropriate progress toward your final goals, and 3. your completion of tasks over the past sprint. You will receive a grade each month. If you do not finish all of your tasks in a given month, your grade will reflect that. Unfinished tasks will lower your score by a corresponding amount. You should know during the monthly “Sprint Planning Meeting” what your grade is for the past month. Since software predictions are difficult, we will ignore your lowest month’s score.
  2. Your demos must reflect the state up until that point of your Trello board. If they demonstrate progress less than what has been demonstrated on Trello, your grade will be correspondingly adjusted downwards.
  3. Making steady commits and pull requests to your repository. Your grade can be negatively impacted by a lack of steady commits and progress.
  4. Your writing assignment grades. Each writing assignment is graded separately, and contribute to your final grade. These will be graded as a group, unless team dynamics issues have been raised before submission.
  5. Your presentations must show progress over the year, and must address the feedback provided to you after each presentation.
  6. The final product.
  7. Participation in all class activities. This involves coming to classes, and being active in them.

Grade breakdown.

Fall ’18:

Spring ’19:

Fall semester grade. At the end of the Fall semester, you will be given a grade based on

  1. how ambitious your monthly planned sprints are and if they show the initiative necessary to complete your project,
  2. how well you meet all of your sprint goals, and
  3. how well your demos represent that progress.

Together, these factors determine how far along your project is relative to where it needs to be at completion.

Your Spring semester grade is based on the same factors, but also on if you show the initiative to polish push your project to be the best it can be, and on the final quality of your project.

Individual grades. Even though you will be working in a group, the majority of your grade will be derived from your individual progress. You must submit group reports, and any continual problems with your team members will also impact your grade. See the discussion of “Group Dynamics” above.

Falling Behind in SD

If we determine that a group is not making sufficient progress toward the goals of their project, we will require all group members to come in and work on their project in a supervised setting. This is meant to provide bursts of activity to get the group back on track. It is each group’s responsibility to put in the work required to create a successful project.

Academic Integrity policy

If you have a disability that may effect your participation in this course and wish to discuss academic accommodations, please contact us as soon as possible. You cannot expect accommodation for disabilities if you don’t contact us early, with enough time to plan, and maintain fairness for other students. You should see the schedule for the entire class, so if you anticipate any issues, please contact us about this in the first week of class.