Homework 4: Implementation of the Prototype
Assigned: Mon, Nov. 15, 2010; Due: Mon, Nov. 22, 2010 (note: no late turn-ins for HW4!)
Using the design that resulted from all your testing and revisions from Homework 3, you are now going to implement the interface, and then run a user test of that implementation. You can use any way to implement your prototype such as those that were discussed in class (see Lecture 7 which includes links to various places to download versions of the implementation tools).
PART A: The first part of this assignment is to implement your interface. You should implement at least enough that all your user tasks can be completed, with sufficient feedback so the users can see what the system's responses are. You should simulate actions of your device. For example, if you were doing a copier, when the user clicks "Start" you might display a screen or dialog boxes that says everything about the current operation, for example: "now copying, 2-sided, no staples, using paper tray #1". If there are parts of your user interface you do not implement, there should still be controls (buttons, sliders, etc.) that would lead to those parts of the interface, but instead lead to screens or dialog boxes that say "not implemented yet" or something. That is, all of the screens you show should look complete, even if all the operations do not necessarily function. As another example, if you have a "search" button, it is fine if the search-results screen always shows the same thing, no matter what is searched for. In lecture, I mentioned that the complexity of the interface should be: "At least 30 “controls” (widgets: buttons, text fields). About 10 different screens/pages/windows/modes".
Also create a short "readme.txt" file that describes what one can do with the prototype. This will guide the TAs on what is supposed to work. For example, tell what paths through your interface are working. If you pretended that the user searches for "aspirin", mention that kind of thing in the file. Put the readme.txt file in the top level folder where the implementation is so it will be at the top level of the .zip file.
- The deliverable for PART A is the complete implementation before your user test. Just zip up your entire directory structure including project files, the readme.txt file, etc. Name your file: HCI-HW4a-lastname-firstname.zip, for example: HCI-HW4a-myers-brad.zip. Put this file on blackboard in the digital dropbox. NOTE: Make sure it will be easy for us to run your system, and to see the source code. Make sure any required images are included in the zip file, and include the "readme.txt" file explaining how to run your application.
PART B: Perform a usability evaluation of the prototype you created in PART A. You should put your implementation in front of at least one and preferably more than one user. This should be a different user than you used for your other homeworks, and this person should also be a novice at your appliance. As before, you might want to tape your sessions. If you cannot find anything that the users have problems with, maybe you need to implement a more complete interface? Remember, any press of an incorrect button, anytime they seem confused, and any time they get a "not implemented yet" screen, would be breakdowns. You should also note the user's feedback (opinions) about your interface, but the majority of the rows in your evaluation should be objective data about actual critical incidents from your evaluation session.
- The deliverable for PART B is the Usability Evaluation Report filled in for your evaluation(s), including at least 5 rows of observations for each user. Here is the template again (same as last time): http://www.cs.cmu.edu/~bam/uicourse/UsabilityEvalReport_template.doc. Be sure to fill in the script part in the file (if the script is the same as previous assignments, please mention this, but go ahead and include it again, so we have everything in one place).
These will be turned in using hardcopy, like usual.
PART C: Next, you will modify your implementation to try to fix the problems you observed in your user study. The fixes should correspond to what you wrote in the "Possible solution" section of your Usability Evaluation Report turned in for part B.
- The deliverables for PART C is your new implementation. If necessary, update your readme.txt file as well. Again, just make a zip of this version along with the readme.txt file. Name your file: HCI-HW4c-lastname-firstname.zip, for example: HCI-HW4b-myers-brad.zip. Put this file on blackboard in the digital dropbox.
- Also create in a summary of what you changed. This should be a short description. Be sure to reference the appropriate row of your template to motivate your changes. This will be turned in using hardcopy.
- Turn in the written parts of this assignment (#2, 3 and 5) using hardcopy as usual in a resealable envelope.
- Turn in the electronic parts of this assignment (#1 and 4) using the digital dropbox on Blackboard.
- It must be easy for us to run your implementations. Points will be taken off if we have trouble making it run. Points will also be taken off if you forget to include your source code. It would be a good idea for you to test your zip file on another computer to make sure you remembered everything.
- Make sure all the pathnames (filenames) of any pictures or sound files you use are relative pathnames, so the project will run when it is moved to the TA's computer. For example, the filenames should not start with C:\ or file://c:/
- We really need everyone to turn in this assignment on time, so we can give your final implementation to your classmates.