Semester Project Overview

In addition to some individual assignments and the midterm and final exams, we will have a semester-long team project with multiple phases and sub-phases. This will be a team project, where teams should consist of four students (some teams of three might be approved, but the default expectation is four). Each team will be assigned a member of the course instructional team (the instructor and the teaching assistants) as a "senior manager" who will interact with the team throughout the semester in various ways.

In addition to assessment and grading of each phase and sub-phase by members of the instructional team, there will be peer assessment submitted for each of the four phases of the project. You will each be asked to describe what each of your teammates did on the phase as part of this assessment. All students in a team are expected to participate in each phase and understand their own value, but are also expected to understand the contributions of their fellow team members. It is likely that for certain aspects there will be "lead" students working on different deliverables at times, but all students on the team should be discussing and reviewing each other's work as well. We anticipate using slack.com for team coordination.

Note that if this were being done "for real" the best team would have people from diverse backgrounds, which would give the team different perspectives on the problem. For example, a real team could comprise a project manager, a marketing person, a programmer, a representative end user, and/or a help desk person who regularly deals with end users. I would encourage you to think about this as you form groups.

A more detailed description will be posted for each phase, but it will be useful to present an overview here to get us started.


Phase 1 will have three related sub-phases.

  • In Phase 1.1 you will form your teams around a project option (either one of the posted options or a team-created one that will need to be approved) and submit an initial "pitch-back" or "pitch" where each team will describe (in two pages or less) their project as they see it, including its overall audience and overall goals, all presented in the team's own words. For the goals, you should be able to describe at least three primary goals, and potentially more (and/or some secondary goals). This sub-phase will be due by class time on February 7th.
  • As these are being (quickly) reviewed, you will begin work on Phase 1.2 where you continue to think about your project option, potentially updating the pitch, but most importantly writing up 5 to 7 full task scenarios that you envision represent some of the situations in which people will use your system. You will be expected to speak with some example potential users and/or stakeholders of your system during this sub-phase. This sub-phase will be due by class time on February 14th.
  • With this more complete view of your project, each team will work to create a set of paper prototypes reflecting several rapid iterations on their ideas, the team's brainstorming on how to support the users, as well as ideas from some of the example potential users you show these prototypes. This sub-phase low-fidelity prototype bundle will be due by class time on February 28th.

  • Phase 2 will have two related sub-phases.
    Phase 2 will be the medium-fidelity prototype implementation. The end result will be an interactive application that allows you to demonstrate the overall look and layout of your system as well as the successful completion of several important tasks.

  • For Phase 2.1 you will need to provide a "game plan" detailing what vertical and horizontal prototype elements you will complete by the end of Phase 2. As you work on this, you might find your team updating the ideas in the paper prototypes. This is perfectly fine. Your team might identify project elements for which you plan to have hard-coded data examples, or very simple backends (like a text file) even though a real system might have something more scalable (like a DBMS). This is also likely to be acceptable since the goals for this phase are focused on the user interface and their tasks rather than addressing issues of backend scalability (which is a value software engineering issue of course). This sub-phase will be due by class time on March 7th though we encourage you to complete it earlier if possible so that you can start your implementation.
  • Phase 2.2 is best described as the "now go build something" part of the overall project. Your team will implement significant horizontal and vertical elements of your project in an interactive prototype so that potential users and stakeholders will be able to interact with it and assess how the full version will address their needs and impact their lives. Your team will also submit a written report with this prototype. This report will contain things such as any re-design rationale that is needed, screenshots showing the "look" of certain aspects of your project, as well as a list of 5 to 10 solid tasks that can be accomplished with your prototype (we will use this list as we perform our grading assessment and it will also be used in Phase 3). The medium-fidelity prototype and write-up will be due by the start of class on April 6th.

  • Phase 3 will have three parallel sub-phases.
    Parallel sub-phase 3.1 will be a user study and heuristic evaluation of another team's Phase 2.2 prototype. We anticipate this will be due on April 23rd before 8pm.
    Parallel sub-phase 3.2 will be a team presentation about their own prototype. We anticipate these will take place on April 18th, 20th, 25th, 27th.
    Parallel sub-phase 3.3 will be a short fundraising video about your own prototype. We anticipate this will be due by class time on May 4th.


    Phase 4 will have one phase and partially overlap sub-phase 3.3's timeline.
    You can consider this final phase a set of "biggest bang for the buck" updates to your prototype and the formulation of a long-term plan for full development. Each team will have gotten much feedback by the point this is assigned (likely April 23rd) and the goal here is to implement some "fast but meaningful" changes to your prototype, demonstrating you understood the feedback you have received. Similarly, based on what you have learned from others and from class material, you will write up a theoretical plan for the next 3, 6, 12, or 18 months for how you would continue development towards a real product. Your updated prototype and write-up will likely be due by class time on May 11th.






    Web Accessibility