Bill Manaris : Fall 2012 / CSIS 672 Final Project

Due Date: Monday, Dec. 10, 2012
Due Time: 5pm

Last modified on December 03, 2012, at 05:01 PM (see updates)

This is a team assignment. You may discuss the assignment only with your partner(s) or the instructor.


Develop and present a functional prototype of your semester HCI project.


Given the application that you and your teammates have selected to work on, submit the following:

  1. User audience - the target audience for your application.
  2. User goal - the goal the user is trying to achieve (e.g., "I want to swing like a pro"). As discussed in class, a user goal is independent of a particular device (or application). You hope the user will choose to achieve this goal through the application you are developing.
  3. User Personas - create three (3) user personas for your application (see p. 48 of textbook).
  4. Hierarchical Task Analysis (HTA) - provide an updated HTA, as implemented in your functional prototype. You should identify main tasks (4-8 or so), and subdivide them into subtasks (4-8 or so, per higher task). Continue the analysis until you reach actions (low-level tasks which require no problem solving). Specify plans associated with each task, when necessary. Use the examples / guidelines provided in class to guide you.
  5. Paper prototype - submit the paper prototype used to refine your application's UI design. Feel free to make updates to it.
  6. Keyboard Level Model and/or GOMS - provide an analysis to estimate the time it takes to complete users tasks using the input actions supported by your interface. Since we are using a Kinect, you may extend the traditional KLP model to specify times needed for basic actions. Your goal is to use the KLM / GOMS analysis to refine the input language available at your interface.
  7. Conceptual Level Design - provide an updated description of the conceptual-level components of your system (7 +/- 2 items):
    • Objects (or classes of objects)
    • Relationships between objects (or classes of objects)
    • Operations on objects (or classes of objects)
  8. Command Language (also see Syntactic Level and Lexical Level Design) - provide a clear description of the "command" language made available to users by your interface to perform user tasks. Apply the design principles (issues) explored in command-line interfaces (i.e., grammatical consistency, congruent pairing or symmetry, hierarchical structure, and mnemonicity or lexical consistency).
  9. Functional Prototype (source files, jar executable) - should be able to run your program on my computer. Provide a README file with necessary setup instructions, and requirements. Be ready to demo in class.


Submit the above components in clearly identifiable units via OAKS, by the due date. This should include:

  1. A cover page with your names, class, assignment #, date, etc.
  2. A summary description of your project components (also see README file above). Among other things, your summary should explain how your project has been refined as a result of "user" feedback, during class and outside (e.g., recall the Paper Prototyping video seen in class).
  3. All components specified above.


During class, be prepared to describe your complete project to your classmates / instructor.

Grading will be based on your ability to carefully and succinctly identify and communicate the key points of your project. Work for clarity, succinctness, and effectiveness.

Also, team members may be asked to evaluate each other for contributions to the project.

(Printable View of