GR6 - User Testing
Design & Implementation
- High level design decisions:
- A primary design decision we made was to ground the app around user-contributed images, that is, pictures and thumbnails they take and provide of products that they own. This decision, we found, was effective in that it gave users flexibility as to how they wanted specific items organized, and gave users their own mental model of what the images actually were.
- Simplicity was a key feature of our prototype -- we received positive feedback from all levels of testing that the simplicity of our user interface made it much easier to use. We were initially afraid that the interface would be too simple in that it would effect learnability; however, a reduced layout actually contributed to learnability and efficiency.
- High level implementation decisions:
- We chose to implement this software on Android because the picture taking functionality translated best on a mobile application. We utilized the Android SDK, coding primarily in Java. The frontend was handled with Android's own XML view layer. The backend was handled with SQLite databases.
- In general, we followed a Model-View-Controller pattern, where the ContentProvider and SQLite abstracted the database information into data models, the XML layer contained the View, and the bulk of the Java code was the controller.
- One major implementation problem we encountered was simply lack of familiarity with the platform. None of our team members had ever programmed in Android before, and found the learning curve sufficiently steep enough to be problematic.
GUI Section |
ScreenShot |
Design |
Implementation |
---|---|---|---|
Home Page |
|
Users are first greeted by our home page, which is a simple layout of buttons. Relative button size corresponds with frequency of use -- that is, the larger buttons are more frequently used than the smaller ones. This data was found from user polling and testing. |
Many elements of the application, including this particular page, operate solely in the view. This view does not have access to the backend data of the application, allowing for abstracting and safety. |
Collection View |
|
We opted to make collection view laid out with images and with names of the item underneath it. Initially we toyed around with text or image only, but we found during our testing that users responded best when both were available. Clicking the menu button brought up a bottom menu. Long-pressing on an item in the collection would bring up a more detailed menu; however, we found this to be among the most difficult menu for users to find (more detailed in evaluation). |
Collections are a model of their own, which contain links to other images. |
New Item/Item Properties |
|
A simple, non-obtrusive item adding layout was most effective for our purposes. We feared, initially, that users would find it not revealing enough and would have understanding problems; however, users seemed to pick up fairly quickly on how to add items to their collections. |
Items were a model that were linked to Tags and Collections. Tags were utilized primarily for searching. |
New Collection/Collection Properties |
|
Adding a new collection has a similar unobstructive interface. This also adds for consistency across our application. |
Collections also contained extra information such as name, description, thumbnail data, and who shared with. |
Sharing Manager |
|
To share a collection, we enter the sharing menu and input the name and editing privileges. This sharing menu was one of our most difficult design decisions, and the current iteration of it is thanks to input from paper and computer prototyping. Our previous design decisions were too complicated, and we found this current one simple and easy for users to use. |
Sharing is primarily executed from an external server, which the application contacts to touch base with contacts you share with. |
Filtering |
|
Searching for items in our application is as simple as clicking on filter and typing. |
Filtering functions on demand -- as the user types, the application quickly sorts through tags and shows the application whose substring matches the text apparent in the filter box. |
Evaluation
- In general, we found that users found the application easy to use and navigate. Users enjoyed the simplicity of the application and the ability to do the same task through multiple, but natural, avenues.
- The users we chose were representative of our population in that we chose users from different age ranges, who also generally found the need to organize large amounts of items.
Usability problems discovered from testing:
- MAJOR: Learnability, Efficiency - Users almost all found the task: "Setting a thumbnail the collection thumbnail" difficult to do. The thumbnail was not editable from the Collection Properties page, which was where most users first looked to execute the task. Though long pressing is a normal thing in applications, users did not find long-pressing an obvious feature of our application. There is no feedback that suggests that a long-press does something (in other applications that we looked at, most long-presses cause vibration or something).
- MINOR: Efficiency -- Users generally did not find naming an item a necessity, which made the collection view page unaesthetically pleasing because it was cluttered with Untitled1s. We can solve this by making removing the name labels from Collection View.
Procedure for user testing:
- Brief users with following brief:
Collector’s Catalogue allows users to view and organize their collections on the go. By tagging and taking pictures of items, users can keep track of and search their large collections through visual recognition, without having to recall solely from memory.
Remember that we are testing the application, not you. Feel free to explore, and think your actions out aloud. If you find yourself confused, or wishing for something extra, let us know, and again, feel free to comment out loud with any observations you make.
This session should be fun, so relax and make yourself comfortable. If at any time you want to stop, you are free to do so. Thank you for taking the time to help us user test the application.
- Ask users to preform following tasks:
1) Create a new collection, and add some items with photos and tags.
2) Share your new collection with a friend for viewing.
3) Starting from the Home screen, quickly search for a crab.
4) Delete the “imaginary” animal item, since it doesn’t belong.
5) You decide you need some help managing your board games, so you share the collection with a friend, and let them co-manage it with you.
6) Go back to the collection you created, and set one of your items to be the collection thumbnail.
7) From the Home screen, make a new board game item and add it to the app.
8) Finally, you’ve decided that you have too many shoes, so you want to delete your entire shoe collection
User testing notes
User Test |
Notes |
Debriefing and Conclusions |
---|---|---|
1 |
Tasks:
|
Misc: thumbnail removing seems consistent, when you remove collection selections. |
2 |
Tasks:
|
Debriefing: I think it’s pretty simple to use. Does the filter search by tag and text? I don’t think it’s bad to use, I got stuck on trying to set thumbnails for the collection, but other than that I think it’s pretty intuitive! There’s multiple ways of doing a lot of actions, I just noticed I can make a new item from the home screen, but it makes more sense to go from a collection to item, than directly to an item. |
3 |
Tasks:
|
When picture is being taken, the Cancel/Retake/Done menu is landscape as opposed to portrait. |
Reflection
- In general, we found this class highly rewarding to learning about user-centered software design. Though the Spiral Model is frequently preached in other software development classes, only in this class is it truly emphasized. Cheap iterations played a large role in honing out developed UI ideas, preventing us from spending the effort to implement a feature that was not well-received.
- In the future, one thing I would find particularly useful is another round of paper prototyping, especially evaluating design decisions we were not totally sure about. In user testing stage, we should be more persistent about clarifying what exactly was difficult about a particular task, if any difficulty is found.
- One very core thing we learned as a team was the discrepancy between the mind of the user and the mind of the designer. Things that were immediately clear to us was not necessarily the case for our users. In this respect, user testing was invaluable. Even our hardest efforts to think from the user's standpoint did not reveal nearly as much as a paper prototype in front of an user.
- One thing we would change in the future is to draft more realistic paper prototypes. Templating tools have readily available Android UI toolkits, which would easily give us a more realistic paper prototype. This may trade the perceived cheapness of the prototype, but we believe that a prototype that visually looks more similar to an actual app has more perceived affordance than a hand-drawn one.
1 Comment
Sacha Zyto
on GR5:
Presentation: Good summary.
Usability: some buttons are too little for a phone app (save and others). System status needs to be more visible.
Completeness: Sharing feature missing
Overall: there were quite a few glitches during the demo, but you came back and showed me the some features working on Wednesday so that's very good.
on GR6:
Design description: nice presentation in overview + details sections
Evaluation: nice report of user's reactions :)
Reflection: good & thoughtful. What fraction of the issues you find in the last iteration do you think could have been found on a paper prototype ? If the answer is a lot, then, indeed, more paper prototyping would have been beneficial.