Project methods

Previously in the course, you’ve outlined the methods you’re planning to use in your project. Now, you will need to develop these methods in greater detail.

Due

This part of the project is due on Thursday, 3/7, at 23:59.

Collaboration

This assignment should be completed together with your project partner.

Assignment

Your task is to figure out and write up the methods for your project in detail.

What do I mean by “in detail?” Think back to the methods sections of the papers you’ve read. These should serve as an example for the amount of detail to include, as well as what I expect your write-up to look like (including approximate length).

In particular, your methods should be sufficiently detailed and specific that someone could use them — and nothing else — to exactly replicate the study you are going to conduct.

Here are some concrete things I expect to see from most projects:

  • Recruitment plan. Describe how many people you will include in your study and how you plan to recruit them. Explain how you will ensure that they provide informed consent for participation.
  • Interview/survey/user study questions. Provide a complete list of questions you will be asking people in your study. If your study will include explanations or activities (e.g., testing an interface) include a draft of those too.
  • Data analysis plan. For each question above, describe how you will analyze it and how it will contribute to your final result.
  • Ethical considerations. Describe the ethical considerations for your study and how your methods address them.
Ask me questions

If you’re not sure about something, you can always reach out to me with questions. I strongly suggest office hours over email/Piazza, because I will be able to provide faster and more detailed responses.

Development projects

For development projects, please provide the information requested above for any human-subjects component (e.g., user study) that you plan to include. In addition to this, create a software design document for the software you plan to implement.

Your design document should focus on the “how” of your software: how do you plan to implement the features and requirements that you documented in the previous assignment?

As above, someone should be able to follow your design document and (without any additional information) end up with the same software that you are going to build.

Concretely, I expect that you will most likely include:

  • System architecture. A diagram and a detailed overview of the major components of your system. This should include both high-level components (e.g., app and server) and details within each of those (e.g., the different parts of the app). Also describe how all of these parts will communicate with each other.
  • User flows and screens. Create mock-ups of all the screens that users will see in your app and describe what the user flow will be (i.e., how all the screens will connect into the final user experience)
  • Technology choices. In as much detail as you are able to, specify which SDKs, libraries, etc. you plan to use in your project and what you plan to implement yourself.

What to turn in

Please submit your write-up as a PDF to Canvas. (You don’t have to use LaTeX.)

Please also put your proposal in a properly formatted Google Doc (not a PDF, but an actual Word-style doc) that is editable by members of the team and me. Include a link to the Google Doc at the top of the PDF you submit.

Late policy

  • Assignments submitted up to 24 hours late receive a deduction of one letter grade (10 percentage points).
  • Assignments submitted more than 24 hours late receive no credit.
  • While excessively late submissions will receive no credit, you must submit your project methods, and they must be approved, before you begin any data collection (and for you to pass the class).