Team 10

From Cmsc434_s10
Jump to: navigation, search

Craigslist Flex

A flash version of Craigslist with user-friendlier features

Team members:

Kevin, Kashif, Jeff, Mekias

Project Proposal

Users and tasks

Users: Anyone looking to post or surf classified ads.
Tasks:

  • Choose a category of ad in a specific area.
  • Create classifieds with certain information, including pictures, text, documents, and hyperlinks.
  • Browse posted classifieds after filtering by region and section.
  • Create an account linked to any posted classifieds.

Existing solutions and their limitations

  • The current solution is at Craigslist.org. Currently, users choose state/country and then city. After choosing location, a large list of links to each kind of classified is presented. Clicking any of these links leads the user to a listing of anonymous classifieds that can include pictures and titles along with text. Users can respond to these classifieds via email.
  • Our solution will focus on being more aesthetically appealing and efficient. It currently takes many clicks to reach any particular classified, and classifieds are poorly organized. Our solution will provide more intuitive filtering and a better-looking system of organization. In addition, posting any job in our version will be free, as opposed to a $25 fee per posting.

Meeting notes

All other websites considered:

  • Course Registration Page
  • Craigslist website
  • PriceWatch (computer section, product listing)
  • Blackboard (only main modules)
  • Careers4Terps
  • Bloglines
  • TigerDirect
  • Chess.co.nz



T10whiteboard.jpg

User and Task Analysis

Applicable Techniques

Full interviews: Team 10 interviews

3 Applicable techniques:

  • Interview - possible questions:
    • Why do you use Craigslist?
    • What sections do you frequent on the site?
    • If you could change any feature of the site, what would it be?
    • What do you find is your average time between posting an ad and getting a response?
    • Have you ever ran into errors while using Craigslist?
    • What is your goal when using Craigslist?
    • List the steps you take to buy/sell on Craigslist?
    • How often do you put post ads?
    • How often do you read ads?
    • How often is a buy/sell successful?
    • Is Craigslist first choice vs a retail store?
    • Do you prefer to browse or search for ads?
    • What is your biggest complaint about Craigslist?
    • How easy was the transaction of goods for successful buys/sells?
    • Do you research a product before buying or selling on Craigslist? If so where?
  • Direct observation - Give the user a task (e.g. post an ad, find an ad for a desired product, attempt to contact a buyer/seller) and observe how they do it. This would include watching for repeated actions, user errors, confusion, and features the user liked.
  • Comparison to a similar product - By comparing Craigslist to competing sites like Ebay, Amazon Marketplace, Kijiji, and Oodle, we can find discrepancies in how common tasks are carried out and try to account for these discrepancies when planning a new product

Interview Technique Details

We chose the interview technique. We interviewed 7 people. The following details those we interviewed and their user types:

User Classes

  • Students/Young Professionals
    • Age: 18-25
    • Education: Undergraduate/Newly graduated
    • Job: Part-time during school/Entry-level
    • Computer skills: Advanced
    • Location: Urban/city areas
    • Motivation: find places to live (typically apartments), furniture, summer jobs, entry-level jobs
    • Social Context: College environment
    • Usage Pattern: varies, but typically surfs more than posts, can be high-volume in summer especially
  • Young Parents
    • Age: 20-35
    • Education: High school / Bachelors
    • Job: part-time (Maybe full time job)
    • Computer Skills: Basic - Moderate
    • Location: Suburbs Areas
    • Motivation: furnish home, provide for child
    • Social Context: Young couples / Family-oriented
    • Usage Pattern: frequent browsing, occasional buying/selling
  • Older Parents / Professionals
    • Age: 40 - 65
    • Education: Bachelors / Masters / PhD
    • Job: Stable, experienced, higher-tier, possibly retired
    • Computer Skills: Very Basic - Advanced
    • Location: Suburbs
    • Motivation: Primary sell unwanted items, similar to yard sale
    • Social Context: Family-oriented
    • Usage Pattern: infrequent, whenever they want to sell items

Personas

  • Students / Young Professionals: Steve Young is a junior college student at the University of Maryland. He is 20 years old and experienced with computers. Steve is looking to move into a new apartment and needs to find possible apartments to rent and then furnish his chosen apartment.
  • Young Parents: Brittany Spearson is a 28-year old mother of two. She has a 5-year-old son and a 2-month-old daughter. She's a stay-at-home mom who has minimal experience with computers. Brittany likes to browse semi-regularly; she's always looking for cheap furniture or clothes for her growing children. She also wants to be able to sell the clothes and furniture her children have outgrown.
  • Older Parents / Professionals: Herman Vanderbilt is a 56-year-old Director of Sales for a local defense contractor. He has some experience with computers and feels comfortable navigating most websites. Herman has a wife and two grown sons; he wants to be able to sell unwanted heirlooms, junk, and other items his sons have left behind to make some money and room in his house.

Other Potential Stakeholders

  • Real estate agents, other vendors who could be sidestepped by direct use of the site
  • Newspapers and magazines that run classified ads
  • Local businesses that can run ads on the site
  • Police officiers that investigate and prosecute issues of abuse
  • Parents of children that could be exploited in using the site
  • Spammers
  • Phishers

Tasks

  • Sell products:
    • Goal: Sell a single product on the site
    • Preconditions: Have a product to sell, access to computer/internet/site, picture of product, description of product
    • Sub-tasks:
    1. Access the site
    2. Click "Post to classifieds"
    3. Select "For sale"
    4. Select category
    5. Select region (where available)
    6. Complete post information
    7. Upload photo (optional)
    8. Review Ad
    9. Accept Terms of Use
    10. Complete CAPTCHA
    11. If no account, verify through email
    • Complexity: low with account/medium without an account
    • Frequency: every time
    • Potential Errors:
      • With no account, cannot find post immediately
      • Can fill out form wrong
      • Can select wrong section/region
      • Incorrect CAPTCHA
  • Advertise service:
    • Goal: Sell a service rendered on the site
    • Preconditions: Have a service to sell, access to computer / internet / site, picture of product, description of service
    • Sub-tasks:
    1. Access the site
    2. Click "Post to classifieds"
    3. Select "Job offered"
    4. Select category/categories that apply
    5. Select region (where available)
    6. Complete post information
    7. Review posting
    8. Accept Terms of Use
    9. Login to account or pay with credit card for posting
    • Complexity: medium
    • Frequency: every time
    • Potential Errors:
      • With no account, cannot find post immediately
      • Can fill out form wrong
      • Can select wrong section/region
      • Can select wrong/not all applicable categories
      • Job is so unique that it doesn't fit into any categories
  • Buy a product or service:
    • Goal: Buy a product or service for use
    • Preconditions: Have a general idea about what is desired, access to computer/internet/site/email account
    • Sub-tasks:
    1. Access the site
    2. Choose region (if not chosen for you)
    3. Choose category to browse or search for desired product/service
    4. Locate ad
    5. Use email address to contact seller and arrange exchange
    • Complexity: low
    • Frequency: search or choose category once, locate ad and contact seller every time
    • Potential Errors:
      • Cannot locate appropriate ad
      • Encounter false advertisement (spammer, phisher, etc.)
      • Choose wrong region or category
      • Incorrect contact information

Design Sketches

Scenarios

Buying and Selling Items -

Brittany looks at her son's old room and it has not changed since it was decorated when her son was moved here. She needs to redo this room so that it will suit the needs for her two months old daughter (MOTIVATION). She also looks at other spots in the house that could use some furnishing (GOAL). To save some money and have variety of options (MOTIVATION), she decides to go Craigslist.org, registers for an account (OPTIONAL, FREQUENCY: once) using only her e-mail address (PRECONDITION) so it will be convinient for her to use the Web site. After confirming her account, she selects her a region, she starts browsing through different categories (SUBTASKS).

The first thing she looks for is a bed in a fairly new condition for her daughter. She clicks on furniture category, bedroom subcategory, and starts looks at a small gallery of beds. She clicks on a thumbnail which looks very attractive to view the details. She looks at different images posted by the poster, copies the e-mail address from the posting, and sends an e-mail to inquire more information about the bed (SUBTASKS, FREQUENCY: recurring). While clicking on another adds, she notices that some other users have flagged an item as incorrect contact information (RECOVERY BEFORE ERRORS). She ignores the ad and proceeds to other listings.

Brittany notices she is a little short on cash (MOTIVATION) and also wants to sell some old children's clothes of hers (TASK) to make some quick money (NEEDS). She logs onto Craigslist, where she has already made an account (PRECONDITION, FREQUENCY: once). She selects her region and the section that fits what she wants to sell. She then creates an ad with the details of the clothes she wants to sell, along with a picture she has taken of the clothes (PRECONDITION). Finally, she submits the ad (SUBTASKS). She does this once every time she has clothes to sell (FREQUENCY: recurring).

Selling Services -

Herman Vanderbilt spends his time building intricate birdhouses, and wants to sell his skills as a custom birdhouse designer (TASK) for fun and a little money (MOTIVATION). He plans on investing the money he makes into even more elaborate birdhouses- perhaps even birdmansions (NEEDS). He decides to use Craigslist. He selects his region and that he wants to sell a service, then creates the ad describing his skills and prices (SUBTASKS). When he goes to submit the ad, he finds he does not have an account, and is prompted to create one (PRECONDITION, FREQUENCY: once). After creating an account, the ad is submitted.

Preliminary Design Sketches

Conceptual Storyboard

Herman decides to use Craigslist to offer his skills to people in his areas and make some money off it.

UI Storyboards

Storyboard 1

Storyboard 2

Paper Prototype

Risk Assessment

We considered the following sections of our interface risky and in need of further testing:

  • The region selection screen. Because we were using a combination of maps and drop-down lists for region selection, we wanted to see if it was too complicated or unintuitive. Both of our ad-oriented tasks- creating an ad and finding an ad- use the region selection screen.
  • Creating and using an account. The account creation screen can contain a lot of information, so we wanted to test it. We also wanted to see if the mechanism we use to show whether or not a user is logged in (by showing their name in the top-right corner if they are, and a login link if they are not) made sense. The account creation screen is tested in the create an account task, and the logged-in status area is used in every task.
  • Ad listings. We still haven't fully decided how to list ads, and wanted to test a few ideas. Our current design is tested in the "find an ad" task.
  • Ad creation. Because ad creation is the focal point of Craigslist, we wanted to make sure our design was understandable. It is tested in the "create an ad" task.

Prototype Photos

Briefing

You are a college student in College Park, MD who is going to use Craigslist Flex for the three tasks described below. When you create an account, your username will be Master Flex (our prototype only accounted for this username); similarly, when you go to create an ad and search for an ad, you will be navigating to the College Park section of the site.

Scenario Tasks

  1. Account creation: create an account to use on the website.
  2. Create an ad: create an ad on the site to sell whatever you'd like in College Park, MD.
  3. Find an ad for a macbook pro: locate an ad for a macbook pro near College Park, MD.

Testing Day Observations

  • Users were often confused by the map interface, specifically when selecting cities in a state.
  • We did not account for the error that results from choosing the wrong filetype when uploading images.
  • We did not have a "return to home" link anywhere in the interface.
  • Users responded positively to the error messages we did have premade.
  • The difference between the use of email and username on the site needs to be explained more clearly.
  • Users liked the fold-out effect in Search Options.
  • Users commented that ad creation was a very quick process, which is good for us.

Prototype Iteration

Our prototype changed in the following ways:

  • We removed the login status from each individual panel and added it to a title panel.
  • The title panel also has a title (Craigslist Flex) that acts as a link to the home page.
  • Clicking on a state on the map panel now brings up a dropdown list of cities.
  • The user can enter a zipcode instead of picking a state.
  • The dialog box that allows uploading pictures to an ad now filters by file type to avoid allowing the uploading of non-picture files.

Observations On Real Users

  1. Jenna Cohen, 21 year-old college student: The user wanted a "go" button to press after selecting a city, and wants to be able to select multiple cities to search and post ads on. The user also mistook normal text for a clickable link and did not want to supply a gender to the account creation page.
  2. Hannah Kiflom, 19 year-old second year college student: The user was confused about the select a city drop down box on the search page, because she had typed a zipcode before going to the search page and wasn't sure what city she can select from that box. The user didn't know how to contact the seller. There was no contact form or any text that allowed the user to contact the seller.
  3. Matt Hamer, 20 year old college student: Was confused about whether to click state name or state on the map. Did not like the drop down list for cities and wanted a scrolling table. User was only slightly confused on the main page while selecting location.

Risk Resolution

We found that a map isn't always the most reliable form of region selection. Users often became confused when selecting a state (e.g., they would select Washington, D.C. instead of Maryland --> College Park), or didn't know how to select a city on the state map. To fix this, we decided to use dropdowns and zipcode input, along with a very clearly delineated map. We also found that users expect certain functionality in a website, and our risky decision to not provide things like a home link proved to be bad. We thus added a home link and tried to streamline how users move around the site.

Computer Prototype

System Requirements

Our application has been tested in Google Chrome, Safari, and Firefox on a macbook pro running Snow Leopard at 1280x800 resolution and Opera on Windows 7 64 bit, 1600x1200 resolution.

Startup Instructions

Go to http://craigslistflex.heroku.com/craigslist.html

Fidelity

Currently all screens are implemented.

The implemented task (and the one tested in Evaluation 2) is account creation. Navigate to the Create Account pane and enter your account information. NOTE: passwords are currently not encrypted, use a throwaway. Once all user information is entered and valid, press the Create Account button to create your account. You should be automatically logged in with the account you've created. You can then log in and out with the created username and password. Clicking on your logged-in username will go to your account pane, which is NOT implemented.

The final implementation will include ad creation, deletion, editing, and searching. Optimally, it will also include account-to-account messaging and account editing.

Comparison

  • Screen to choose a state

10 choose state.JPG 10 choose state ss.png

  • Screen to choose a city in that state

10 choose city.JPG 10 choose city ss.png

  • Screen to create an account

10 create account.JPG 10 create account ss.png

  • Screen to search for an ad, options hidden

10 search closed.JPG 10 search closed ss.png

  • Screen to search for an ad, options visible

10 search open.JPG 10 search open ss.png

  • Screen to create an ad

10 create ad.JPG 10 create ad ss.png

  • Screen to show an ad

10 ad.JPG 10 ad ss.png

Experimental Design

Kevin Barrett

Part 1: Design

  1. State a lucid and testable hypothesis
    • It is faster as a new user to select a city in Craigslist Flex then in craigslist.
  2. Identify independent and dependent variables
    • Independent:
      • The user interfaces of each site, html vs. flex, user reaction time.
    • Dependent:
      • Kevin: How cities are selected.
    • Controls:
      1. Familiarity with craigslist.
      2. Familiarity with U.S. geography.
      3. Ability with computers.
  3. Design the experimental protocol
    • Task:
      • Select the city of College Park, MD
    • How?
      • Within subject.
  4. Choose the user population
    • Who?
      • College students new to both craigslist and Craigslist Flex.
    • How to sample?
      • Advertise for paid test subjects on college campuses.

Part 2: Run Experiments

  1. Apply for human subjects protocol review (IRB)
  2. Run some pilot participants
  3. Modify and finalize the experimental protocol
  4. Run the experiment

Part 3: Analyze Results

  1. Perform statistical analysis
    • Null Hypothesis:
      • It is not faster as a new user to select a city in Craigslist Flex than in craigslist.
    • Alternative Hypothesis:
      • It is faster as a new user to select a city in Craigslist Flex than in craigslist.
  2. Draw conclusion
  3. Communicate results


Mekias Yohannes

Part 1: Design

  1. State a lucid and testable hypothesis
    • It is much simpler to create an account on CraigslistFlex than on Cragislist.
  2. Identify independent and dependent variables
    • Independent:
      • Account creation Interface visibility/discoverability
      • Keep track of the errors encountered on both sites.
      • Users opinion after using each system.
    • Dependent:
      • How long it takes for a new user to create an account on CraigslistFlex and Criagslist.
    • Controls:
        1. Computer knowledge/experience
        2. typing speed
        3. any kind of visual disability
        4. proficiency of Language
  3. Design the experimental protocol
    • Task:
      • Create an account
    • How?
      • Within subject.
  4. Choose the user population
    • Who?
      • Current Craigslist users who have made a craigslist account.
    • How to sample?
      • Post an ad on Craigslist about the experiment.

Part 2: Run Experiments

  1. Apply for human subjects protocol review (IRB)
  2. Run some pilot participants
  3. Modify and finalize the experimental protocol
  4. Run the experiment

Part 3: Analyze Results

  1. Perform statistical analysis
    • Null Hypothesis:
      • CraislistFlex account creation is same as Craigslist or worse.
    • Alternative Hypothesis:
      • CraigslistFlex account creation is much more easier and faster than Craigslist.
  2. Draw conclusion
  3. Communicate results

Jeff Gunzelman

Part 1: Design

  1. State a lucid and testable hypothesis
    • Its faster to find a applicable ad in Craigslistflex then it is on Craigslist
  2. Identify independent and dependent variables
    • Independent:
      • The user interfaces of each site, html vs. flex, user reaction time.
    • Dependent:
      • Time till an ad is found
    • Controls:
      1. Familiarity with craigslist.
      2. Experience with classified ad websites like ebay, amazon ect.
      3. Technical skills.
  3. Design the experimental protocol
    • Task:
      • Find an ad for a Macbook pro.
    • How?
      • Within subject.
  4. Choose the user population
    • Who?
      • Craigslist users, non-internet users, non-craigslist users.
    • How to sample?
      • Get mostly Craigslist and non craigslist users, and a few non-internet users to gauge true learnability.

Part 2: Run Experiments

  1. Apply for human subjects protocol review (IRB)
  2. Run some pilot participants
  3. Modify and finalize the experimental protocol
  4. Run the experiment

Part 3: Analyze Results

  1. Perform statistical analysis
    • Null Hypothesis:
      • It is not faster as a non craigslist user to find an applicable ad on Craigslist Flex than on craigslist.
    • Alternative Hypothesis:
      • It is faster as a non-craigslist user to find an applicable ad on Craigslist Flex than on craigslist.
  2. Draw conclusion
  3. Communicate results

Kashif Khan

Part 1: Design

  1. State a lucid and testable hypothesis
    • Craiglist Flex provides an efficient and easy way of managing personal information than Craigslist.org
  2. Identify independent and dependent variables
    • Independent:
      • Type of operating system and computer used (platform independence)
    • Dependent:
      • Speed with which data shows up on user screen
    • Controls:
      1. Type of connection
      2. Knowledge of computer technologies
      3. User familiarity with the application
  3. Design the experimental protocol
    • Task:
      • Let the user login and test if they can view their current listing and view messages
    • How?
      • Within subject.
  4. Choose the user population
    • Who?
      • A retired professional
    • How to sample?
      • Request an interviewee to perform the task

Part 2: Run Experiments

  1. Apply for human subjects protocol review (IRB)
  2. Run some pilot participants
  3. Modify and finalize the experimental protocol
  4. Run the experiment

Part 3: Analyze Results

  1. Perform statistical analysis
    • Null Hypothesis:
      • User will be able to perform all tasks using both application and difference in time and satisfaction in using each application is satistically insignificant.
    • Alternative Hypothesis:
      • It is effortless and faster as a novice user to perform account management tasks on Craigslist Flex when compared to Craigslist.org
  2. Draw conclusion
  3. Communicate results

Implementation

Plan

UI: Must have

  1. create account [Kevin, Mekias, Jeff]
  2. log in [Mekias, Kevin, Jeff]
  3. creating ads [Kevin]
  4. searching for ads [Kashif]
  5. account editing [Jeff]
  6. message inbox- viewing and deleting messages [Mekias]
  7. allow all users to contact seller via messaging and "contact seller" button- compose compenent [Mekias]
  8. "my ads" - viewing and deleting ads [Jeff]
  9. connect all panes instead of button bar- leave map and search in button bar [Kevin]

UI: Nice to have

  1. List ads by area [Kashif]
  2. categorize ads by product or service [Jeff]
  3. Make search options actually filter results [Kashif]

Server: Must have

  1. create account [Kevin, Mekias, Jeff]
  2. log in [Mekias, Kevin, Jeff]
  3. ad model [Kevin]
  4. get info about a specific ad [Kevin]
  5. create an ad [Kevin]
  6. delete an ad [Kevin]
  7. search for ads/list them by area [Kashif]

Server: Nice to have

  1. retrieve, delete, and send messages [Mekias]
  2. ad model that includes "ad type" category, e.g. product or service [Kevin]

Execution of the Plan

UI:Must have

TASK [ASSIGNED_TO] [COMPLETED_BY] (green text indicates completed tasks)

  1. create account [Kevin, Mekias, Jeff] [Kevin, Mekias, Jeff]
  2. log in [Mekias, Kevin, Jeff] [Mekias, Kevin, Jeff]
  3. creating ads [Kevin] [Kevin] -almost done, still have to figure out how to upload pictures to the server
  4. searching for ads [Kashif] [Kashif, Kevin]
  5. account editing [Jeff] [Jeff, Kevin]
  6. message inbox- viewing and deleting messages [Mekias] [Mekias]
  7. allow all users to contact seller via messaging and "contact seller" button- compose compenent [Mekias] [Kevin]
  8. "my ads" - viewing and deleting ads [Jeff] [Jeff, Kevin]
  9. ad details page [Jeff] [Jeff, Kevin]
  10. connect all panes instead of button bar- leave map and search in button bar [Kevin] [Kevin]
  11. nice additions- forwarding from account creation page to ad creation page when reached through map, smarter login effects, partial city name search, string cleanup, etc. [Kevin] [Kevin]

Server: Must have

TASK [ASSIGNED_TO] [COMPLETED_BY]

  1. create account [Kevin, Mekias, Jeff] [Kevin, Mekias, Jeff]
  2. log in [Mekias, Kevin, Jeff] [Mekias, Kevin, Jeff]
  3. ad model [Kevin] [Kevin]
  4. get info about a specific ad [Kevin] [Kevin]
  5. create an ad [Kevin] [Kevin]
  6. delete an ad [Kevin] [Kevin]
  7. search for ads/list them by area [Kashif] [Kashif, Kevin]
  8. fake data generation for demo [Kevin] [Kevin]

User Testing and Analysis