Prototyping for SourceForge.net

As a member of the first in-house user experience team, I designed prototypes, conducted A/B tests, and started the first user research program in the company.

Highlights

Skills used: Prototyping, A/B Tests, Usability Tests, Personas
Prototypes

Responsibilities included:

  • Prototyped new low fidelity mockups of new features
  • Created user research plan to collect user data for development of a new SourceForge
  • Recruited participants (open source developers) for user research program
  • Conducted user research studies including usability testing, and reported results
  • Developed personas to help in understanding the needs and goals of open source developers
  • Independently conduct A/B tests using Google Web Optimizer and communicated results to management and other groups

Focus group to inform a new product design

Independently organized two focus groups to understand the software selection process of non-technical users

Highlights

Methods applied: Focus Group: Recruitment, Moderation, & Analysis, and Affinity Diagramming
Product Website: fossfor.us

Product Overview
Fossfor.us is a website for non-technical users to discover and download open source software.

Process
I created a recruitment announcement and recruited via Craigslist, and used a screener to select six participants for the focus group who met the target user profiles. Before holding the focus groups, I prepared a list of questions to guide the discussion. I then moderated the one-hour focus groups, while the product manager was an observer. After transcribing the audio, I captured the information from the key discussions into separate notes, and created an affinity diagram by sorting the notes into categories.

Result
After analyzing the notes from focus group, I prepared a report for the product stakeholders. The report contained

  1. Four behaviors that non-technical users exhibit when searching for software
  2. Seven design recommendations for the product to support non-technical users’ software search process

Recommendation

Mouly did a great job of helping me to understand the basics of contextual design, and helped us create more usable sites. Fossfor.us was my first chance to work with Mouly, and his participation helped us understand our target audience and to focus our development efforts on things that make a difference to those users. I’d definitely recommend Mouly. – Mark Ramm, Senior Web Developer, Geeknet

Design of a distributed farmers’ market

Researched, designed, prototyped a service for a distributed farmers’ market to improve access to local food

Highlights

Skills Used: Contextual Inquiry, Field Studies, Survey, Personas, Sketching, Hifi prototyping and Usability Testing
Tools: Adobe Flex and Adobe InDesign

Team Blog
#1 Interactive Prototype
#2 Interactive Prototype

Prototypes/Images

Instructor: Michael J. McQuaid
Course: SI682 – Interface & Interaction Design
Teammates: Jon C., Ben W., Gary S. & Jeff L.

Problem
Ann Arbor’s local food demand exceeds the supply. The farmers are satisfied with the prices and sales – yet they are skeptical about the long term future. Consumers lack the information to plan a trip to the farmers market.

Process
Our team studied the local farmer’s market with the goal of promoting local food consumption. We conducted field studies at the farmers market and farms, and interviewed professionals in the local food business. After many affinity diagramming sessions we realized that the farmers market was becoming a bottleneck for local food supply. Making trips to the market is very resource intensive for farmers. For consumers, the distance to the farmers market, and lack of information about the produce were stopping them from going to the market.

Design
We proposed a design solution of creating a decentralized farmers market that would be coordinated using an online web application. Our service innovation was to combine local events with farmer stands. We designed a site for three audience segments – farmers, consumers, and businesses. The site can be used to register farmer stands and produce availability. Farmers’ experience and organic farming status will be verified and prominently shown in their profiles. Our overall design got positive response from farmers and the farmer’s market manager.

cimg3373 My Role
I interviewed two farmers and the market manager at the farmer’s market. Listening to farmers and their problems was enlightening and humbling. They take pride in their heritage and experience. I also conducted a rapid survey in the famers market with the consumers and farmers. Like other team members I played an active role in the affinity diagramming sessions. I sketched the interfaces for our design and did many much of our final prototype in Adobe Flex, including integrating with the Google Maps API. I conducted usability sessions with two local food consumers and two farmers to evaluate our prototypes.

Visualization of users’ movie ratings

Designed a playful and engaging visualization of Netflix movie ratings in Flex.

Highlights

Tools: Adobe Flex, Inkscape
Methods: User Interview, Statistics, Pencil Sketching and Hifi Prototyping
Project Website

Prototypes


Instructor: Michael J. McQuaid
Course: SI649 – Information Visualization

Overview
My goal was to design a playful and engaging visualization of a complex data set. The Netflix movie ratings dataset was an ideal candidate, since it has multiple dimensions, and movie ratings inherently are fun and conversational. Moviegoers have unique taste. I like movies like “Memento”, while I didn’t enjoy popular hits like “Wall-E”. Being a movie buff, I wanted to create a fun information visualization for moviegoers. I started with the question – “Is it possible to visualize a user’s movie ratings to show their unique movie taste?”. I wanted to create an artifact that is unique to each moviegoer.

Process
To understand the artifacts and variables about movies and movie ratings, I interviewed a Netflix user and studied the Netflix ratings dataset that was released for the Netflix competition. The variables I wanted to codify were: a movie rating (1-5 stars), mean rating for the movie, and total number of ratings for the movie. I took a sample of users and their ratings from the Netflix dataset as an input for the visualization.

I did many pencil sketches to iterate through my ideas to represent a movie rating. Movie posters, I realized, are the most identifiable representation of a movie. My early sketches used a collage of movie posters to represent a user’s ratings. But I wanted to focus more on the rating and uniqueness of a rating.

lofi

In the next revision, I moved to a metaphorical representation of a rating, of a flower in a garden. This allowed me to concentrate on the ratings of a user and place it in the context of other ratings. After a few sketches and feedback from my classmates, I was confident that a flower garden representation would answer my question.

Final Design

I developed an interactive prototype using Adobe Flex, faithfully implementing my own design. In the future, I would like to continue working on this project so that one could fetch data from Netflix’s API for any user.

Usability evaluation of a sports league website

Applied various evaluation methods to identify usability problems and recommend improvements

Highlights

Methods: Interviews, Usability Testing, Personas, Scenarios, Comparative Evaluation, Heuristic Evaluation, Generalized Transition Network, and Surveys

Findings


Deliverables
Sitemap (GTN)
Usability Test Report
Final Presentation

Instructor: Mark Newman
Course: SI622 – Evaluation of Systems & Services (Winter’2009)
Teammates: Kate H., Jonathan S., & Dale M.
Client: Ann Arbor Ultimate League

Web Site Overview
a2ultimate.org is an important resource to organize the Ann Arbor Ultimate Frisbee league. The website is maintained by volunteers and the league organizing group. Our team studied the needs of the website and evaluated how well it met the goals of league members.

Process
On the sidelines of league games, we interviewed players to understand their goals and challenges. Using the data from the interviews, we created three personas that represented the main user categories. To get the perspective of the whole community we collected data using an online survey. The survey responses showed that users were genrally satisfied with the site, but communication features and search functionality were not very usable.

Equipped with basic understanding about the users, our team conducted a heuristic evaluation and comparative evaluation to study the league website and contrast it with the features and usability of other league websites. Next, we conducted formal usability tests to closely observe users working with the site. Both existing players and potential players were recruited for the study.

We found that overall, the users were satisfied with the website. However, our heuristic evaluation and usability tests showed that the website was not optimized for its critical workflows like league registration and finding pickup game information.

Result
Our team prepared a final report and presented the league organizing body with five specific actionable recommendations for improving the site.

Prototype of a simplified bug-tracking system

Problem
Open source projects use bug trackers to track defects and features. Trackers facilitate collaboration between developers and end users of a project. However, trackers are designed by developers for developers. Non technical users find the bug trackers to be an hard to use system, hence their voice is not heard in the development of open source projects.

Interactive Prototype
Prototypes

Deliverables
Personas and Scenarios
Final Report

Instructor: Mark Ackerman
Course: SI689 – Computer Supported Cooperative Work
Teammates: Jakob Hilden, Mohammad Hadhrawi & Ning Wang

Process
Our team studied the problem and designed a solution to bridge this “socio-technical” gap. To narrow our scope, we chose to solve the problem making it easier to submit issues to an open source web application. To collect user data, we interviewed seven users who participated in open source projects in various roles like developers, project managers, and bug triagers, in active projects like Firefox and Ubuntu. We did a competitive evaluation of the trackers Trac, Bugzilla, Launchpad and SourceForge.

We designed and implemented a web-based widget to communicate with the bug tracker from the host application (WordPress). The widget provides a friendly environment for the user to communicate with a tracker. It also offloads some bug triaging effort from developers to end users by encouraging them to indicate similar defects.

My Role
I seeded the idea to create a bridge between the end user application and tracker. I conducted a couple of interviews and the competitive evaluation. The latter showed our team the social component of bug tracker. I implemented the web widget using YUI JS library to interact with the bug tracker. With the rest of the team, I presented our research findings and solution.

Contextual inquiry of an online toy store

Recommended solutions for a an e-commerce store to help them provide the same experience as a “mom-and-pop” store

Highlights

Methods applied: Rapid Contextual Inquiry, Affinity Wall, Interviews, Cultural Model, Sequence Model and Project Planning
Deliverables:
Final Report
Final Presentation


Instructors: Judy Olson, Ixchel Faniel
Course: SI501-Contextual Inquiry and Project Management (Fall 2007)
Teammates: Dale Myers, Jonathan Cohen, Kathleen Ludwig, & John McNew
Client: Station Enterprises, Ann Arbor

Challenge
Our team of five graduate students worked with a toy retailer in Ann Arbor to help them improve a specific information flow of their business. The retailer had online sales channels via a website and Amazon, as well as a traditional brick & mortar store. The retailer had developed a new strategy to increase the online sales channels to sustain the rapid growth. Our task was to analyze the new order fulfillment process, identify potential breakdowns, and provide recommendations on how to improve the process.

Process
We started by interviewing the owner and the employees about their work and role in the process. We held interpretation sessions after each interview to get the entire team on same page and write ‘affinity notes’ that captured specific pieces of information from the interviews. In total, we captured 180 affinity notes, which we used to construct a affinity diagram. The affinity diagram helped us understand and make sense of our data by identifying themes and trends.

Next, we further interpreted our data by building a sequence model, communication model and cultural model of the organization. We ended by preparing an actionable report with three pairs of findings and recommendation. Our client implemented most of our recommendations even before the we submitted the final report.

Research on audience aware public displays

Prototyped an application to show reminders on public displays that are aware of users around it

Highlights

Tools:Ruby on Rails, Attention Meter, jQuery, and SVN
Team Blog

Instructor: Mark Ackerman
Course: SI791 Independent Study (Winter’2009)
Teammates:Ben Congleton, Hung Troung, David Hutchful & Perry Wong

Challenge
Large public screens are becoming pervasive. It is common to see them in reception areas, hallways, train stations, and other public places. At the same time, people around these displays carry portable devices like smart phones. Our team was formed around the idea of making interesting applications by making the public display aware of the people around it.

My project
I developed a public display application, using Ruby on Rails, to display context-based reminders. The application is used to display non-invasive reminders on public displays. I’m interested in personal productivity systems like calendars, to-do lists, etc. I wanted to develop a reminder system with minimal overhead to the users.

How it works
The application accepts reminders from users via email. The application reads the email and applies natural language processing on the subject line to get the details (time, venue, title) about the reminder. The application constantly polls the context server (in the Prospero framework) for list of users near the public display. When a user is detected near the display, the application gets the reminders for that user from the database and cycles through all the reminders to that user.

Result
Our project received the second prize for Social Computing projects at the SI Exposition 2008 .

Network analysis of search terms

Analysis of network data to find related search queries and topics users are most interested in

Highlights

Instructor: Lada Adamic
Course: SI508 – Networks: Theory and Application (Fall’2008)
Teammates: Rohit L., & Jeff F.

What we did
Search queries entered by users are a valuable information source. They can be used as a form of indirect feedback from users about a service. We constructed a network model of a search log of a reference database publisher. In the network, nodes represent search term and edges represent relationships between queries. Search terms entered in one session were considered as related.

Our team developed a network model of the query log that can be used to provide relevant query suggestions to the user, using the data from the query. We wrote scripts that extracted the query, session id, and location from which the query was performed. This data was imported into Pajek (a network modeling tool), and we generated visualizations that can used by the reference database companies to understand user needs.

Statistical analysis of SourceForge projects

Analyzed the metrics of open source projects hosted on SourceForge.net

Highlights

Deliverables:
Final Presentation
Final Report

Instructor: Lada Adamic
Course: SI544 – Introduction to Statistics and Data Analysis (Winter’2009)
Teammates: Nathan Oostendorp, Tom Hayden, & Zongyun Lai

Challenge
One measure of a open source project’s popularity is the number of times the project files have been downloaded. What are the factors that increase the number of downloads of a project? Our team analyzed the metrics of projects hosted on SourceForge.net. Our primary objective was to find the strongest predictor of an open source project’s download numbers. We also looked at the distribution characteristics of forum activity, total downloads, and other metrics.

Process
Using regression models, we compared number of downloads for a project with many variables: tools usage (forums, bug tracker, and file releases), project members, user participation, and license. We found strong correlations between usage of tools and the number of file downloads. Time series analysis and a chi test confirmed that the month of December has fewer downloads than the rest of the year. We presented our findings as a presentation and a written report.