%eiip — P3 (Low-Fidelity Prototype)

Group Number and Name

Group 18: %eiip

First Names

Bonnie, Erica, Mario, Valya

Netids (for our searches)

bmeisenm, eportnoy, mmcgil, vbarboy

Mission Statement

We are evaluating a bookshelf system for storing and retrieving books. Our system currently involves a bookshelf, with embedded RFID scanners; RFID tags, which must be inserted into each book; and a web application for mobile devices that allows a user to photograph their book to enter it into the database, as well as search through the database and view their books. The purpose of our project is to allow book owners the flexibility of avoiding a rigid organizational system while also being able to quickly find, retrieve, and store their books. With our low-fidelity prototype, we want to learn if users think that using our system is natural enough that they would be willing to use it. We want to observe how users choose to interact with the system, and whether or not it frustrates them. Specifically, we also want to observe their physical motions in order to tailor the construction of our more high-fidelity prototypes. Based on this, we state our mission as follows: We believe that there’s something uniquely special about personal libraries. Rigid organizational systems remove some intangible, valuable experience from book collections; also, we’re lazy! We want to build a way for people to keep track of their books that’s as natural and easy as possible. In this assignment, Mario is drawing interfaces for the mobile website and writing up descriptions; Bonnie is writing responses to questions from the first part (mission statement, etc), writing description of prototypes, and creating task walkthrough films; Valya is writing test user stories for each task and creating task walkthrough films; and Erica is constructing the cardboard prototype shelf, writing the prototype discussion, and putting together the blog post.

Description of Prototype, With Images

Our prototype consists of a two-shelf, cardboard “bookshelf” with paper “RFID sensors” taped to the back; index cards representing the mobile web interface for adding books to the system; some books; and some index cards representing RFID tag bookmarks.

Bookshelf with books in it.

“RFID sensors” on the back of the bookshelf.

RFID tag bookmark in book

Main book search and list screen. The user has searched for a book that is not in the collection.

Adding books, step 1: Screen that asks the user to take a picture of the book

Adding books, step 2: Asks the user to take a picture of the book’s ISBN number.

Adding books, step 3: User enters or verifies information about the book.

Adding books, steps 4 and 5: Instructs the user to insert the RFID bookmark or tag sticker and add the book to the shelf.

The user filed the book successfully!

Display all books in the user’s collection.

Detail screen for a particular book. The user can see the book’s information, and has the option to delete it from the collection.

Tasks

Easy Task:

We brainstormed a few tasks that a user interacting with our prototype could feasibly want to do. Some easy tasks that we thought of were putting a book that’s already in the system onto the shelf, checking if a given book is in a user’s collection, and retrieving a book from the shelf. Ultimately we decided that retrieving a book from the shelves was a more important task to test. Moreover, checking if a book is there could be part of the retrieval process. We would tell our testers the following: Imagine that you have acquired a new bookshelf, for storing your books. You also have a database which keeps track of the books that are on the bookshelf, and where they are, accessible via a mobile website. Suppose that you want to get a textbook for your Imagined Languages class, for example In the Land of Invented Languages by Arika Okrent. Can you get the textbook from the bookshelf? Having accomplished that, could you also get me John Milton’s Paradise Lost? We will ask the user to perform these tasks using our mobile web application. [Note: The Imagined Languages textbook is actually on the bookshelf, so getting it should be easy for the user. However, Paradise Lost is not. We want to see if the user can search the database and accurately understand the information given. If the book is on the bookshelf, the user should go and get it, if the book is not in the system we expect them to say something along the lines of “I do not have this book.”]

The bookshelf lights up to tell you where your book is.

Searching for a book that is not there.

Searching through your library.

Moderate Task:

For our moderate task we chose adding a book to our system, which would include tagging it, adding it to the database, and then placing it on the shelf. We would tell our testers the following: You’re starting a new semester, so you have lots of new classes. In particular, you just purchased Lotus Blossom of the Fine Dharma (The Lotus Sutra). You want to add this book to your collection so that you can find it in the future. We will have the user tag the book, add it to the database, and then place it on our prototype bookshelf.

Placing a tagged book onto the bookshelf.

The website tells you to RFID-tag your book.

Difficult Task:

Finally, for our difficult task we chose adding an entire collection to the system. The reason we’re concerned with this as a separate task is because it’s unclear to us how annoying this would be for a user, and we want to see if we can make it more natural and less tedious. We would tell our testers the following: Suppose that you just bought a new bookshelf that keeps track of all of your books for you. The problem is that you already own quite a few books, and you need to add all of them to the system. Here is a pile of the books you own. We will then have the user tag all of them, add them to the database, and add them to the bookshelf so that they can find them in the future.

Taking a picture of the cover to add the book to the database.


Prototype Discussion

While our prototype includes a software system, we are also extremely interested in seeing how the users interact with the physical objects in our system. Thus, we constructed a scaled-down cardboard bookshelf that can hold a few books. Since paper isn’t exactly sturdy enough, we used cardboard, duct tape, and index cards to put together a bookshelf. We constructed the bookshelf using a couple of disassembled cardboard boxes folded into a shelf-like shape. We added “RFID readers” by folding index cards into vaguely reader-like shapes and taping them onto the back. We are using index cards folded in half to simulate RFID tags. We used index cards to create a paper prototype, in the usual manner.

Putting together cardboard in a way that will hold a few books using minimal amounts of cardboard was slightly difficult but doable. We used some index cards to stabilize it, which was pretty cool. We prototyped our web application (the main interface to the system) using paper index cards, which we felt were appropriate given that the application is targeted primarily at mobile devices. Getting the specifics of all the workflows correct at first was somewhat difficult, since we had not fully fleshed them out before – for instance, our first implementation of the “add book” workflow did not allow users to verify the quality of the pictures they took before proceeding to the next step, which was an awkward design. We also had some initial struggles with conforming to standard mobile UI conventions and best-practices; thinking consciously and critically about the layout of UIs is difficult, especially for mobile contexts where screen real-estate is at a premium.

Art-duino

Group 18

Bonnie (bmeisenm@), Erica (eportnoy@), Mario (mmcgil@), Valya (vbarboy@)

Description

We built a mini-crawler robot that draws a path behind it to make interesting designs. We chose this design for a variety of reasons. First and foremost, we experimented with attaching our other materials to the motors, and most of them were too heavy for the motors to handle. In particular, we wanted to use the DC motor to drive a wheel, but all materials were too heavy for it. For this reason using the slinky or other toys was not an option. We also liked the idea of combining the two servos to make legs, and adding the marker on top was interesting because we could visually track even minimal movement. In the end, we liked the cool random patterns that our Art-duino made. That being said, it moves more slowly than we would have liked, because it was very difficult to deal with the friction and the lack of forward power. Because the servos can only turn 180 degrees, we had to find some way to allow the arms to reset to their original positions, without moving the Art-duino backwards. Our solution to this were the “paws” (see sketch), which were good at battling the friction, but not too great. Since the two servos push the bot alternately forward and backwards, the paws create an asymmetry by increasing the force due to friction in the forward direction. We also wish we could make the motion more deterministic, although the randomness creates cool images.

Brainstorming

  1. We have an android doll. We could put cardboard underneath, and give it wire spools to make it roll.
  2. We have a string of beads which turns, and whatever is at the end of the chain is the robot, like a puppy!
  3. String of wire, with a motor attached to one end, as it winds the spool the robot will climb, like a spider!
  4. We have a little music box. Our robot would have a piezo sound sensor, and it would move when it heard music.
  5. A little reptile-robot that spins around until it finds light, and then crawls towards the light.
  6. Slinky-robot that dances to the music, by flipping and flopping around.
  7. Max (from Where the Wild Things Are) can come bring you a flower, on his little cardboard boat.
  8. A robot that runs away when it senses vibrations (for example, stomping).
  9. A maze of cards that the robot moves through. It does this by trying to go forward, and if it can’t do so it turns 90 degrees and continues.
  10. A robot that doesn’t like to be touched: it runs away from your hand, using a proximity sensor.
  11. A robot that moves in random patterns due to vibrations caused by an imbalanced motor.
  12. A mecha robot that walks upright using servos to move its legs.

Design sketches

A sketch of Art-duino

The circuit diagram for our final design.

Art-duino’s final form.

Video

This video shows the tape-pawed prototype of Art-duino in action, along with earlier prototypes and experiments to make the crawler move.

Parts List

  • 2 servos
  • 2 one-armed horns
  • paper plate
  • sharpie
  • electrical tape
  • wires
  • breadboard
  • Arduino

Instructions

First use electrical tape to connect the two servos. The wires should both be in the middle, facing forward. Connect the one-armed horns so that they sweep in opposite directions. Connect this to your Arduino, as indicated in the circuit diagram. Cut a tiny bit off of the paper plate, to make the paws, and tape them so that the paw faces forward (like a dog), and so that they are completely covered with tape. Then attach a sharpie (facing backwards), so that the robot draws as it walks.

Source Code

/*
Based on Adafruit Arduino - Lesson 14. Sweep
*/

#include <Servo.h>

int servoPin = 9;
int servoPin2 = 10;

Servo servo;
Servo servo2;

int angle = 0;   // servo position in degrees

void setup()
{
    servo.attach(servoPin);
    servo2.attach(servoPin2);
}

int speed1 = 0;
int speed2 = 0;
void loop()
{
    // scan from 0 to 180 degrees
    for(angle = 0; angle < 180; angle++)
    {
        servo.write(angle);
        servo2.write(angle);
        delay(5);
    }

    // now scan back from 180 to 0 degrees
    for(angle = 180; angle > 0; angle--)
    {
        servo.write(angle);
        servo2.write(angle);
        delay(5);
    }
}

Friend Map App

Erica Portnoy (eportnoy) Assignment 2

1. A description of how you conducted your observation (who, where, when). Notes and insights from observations / contextual interviews.
I conducted my observations between 11:50am and 12pm in and near Frist 302, and between 1:20pm and 1:30pm on Monday, February 18 in Aaron Burr Hall. I observed students staying after lecture to ask the professor questions about logistics and content. Preceptors for a class were discussing ideas that they had during the lecture to bring up during this week’s precept. Community auditors left the lecture hall slowly, discussing plans for lunch and where they were parked. The professor mentioned that he had to go back to his office for a lunch meeting. One student without a class immediately after stayed in the lecture hall, checking his email. He mentioned that he was in fact finished with classes for the day. Outside of Frist, two students when questioned responded that they were not in fact heading to the same place, but had just come from the same class and were walking together for social purposes. Various students walking alone mentioned that they were currently desiring food or planning the rest of their day. One student was checking her email on a public computer. Many students waited on a long line to acquire coffee. Professors co-teaching a class arrived at the classroom early to prepare for the class. One student who had arrived early was doing reading for a class later in the week. Another student was sending emails. One student was eating food. One student observed me doing these observations, for her class in human-computer interface technology. Another student was actively concentrating on twiddling his thumbs. One student arrived out of breath while running into the classroom late.

2. Full list of ideas you brainstormed. Express your ideas as “headlines,” explaining the main concept in less than one line. For this brainstorm, you can work with as many people as you want (inside or outside the class). So their contribution is acknowledged, list their names. You have to complete the remaining steps individually.
Some ideas were inspired by conversations with Dillon Reisman, Valya Barboy, and Bonnie Eisenman.

  1. Healthy snack food stations or food trucks or other easily available food, with locations shown on a map
  2. Nearest free food plotted on a map
  3. After class finishes, automatically open a videoconference into the classroom accessible by students in the class, so that students who must rush off to their next class can still ask the professor questions
  4. A system that rearranges room locations after the enrollment period has ended, to decrease the time it takes to walk from one class to the next
  5. App that calculates and displays optimal route from class to class.
  6. A waterproof alarm or clock for inside the shower, so that you will not be late to class because you could not check the time
  7. An application that uses your friends’ schedules (available on ICE) to show you a map of their current and next locations, so you can meet up with them to walk from class to class
  8. App for coordinating meals with friends
  9. Collaborative music-playing devices embedded in seats in a lecture, with the center seats having a higher volume effect to encourage people to move into the middle
  10. For those professors who still require paper versions of assignments, place a printer inside every room and have an app to print to a certain room
  11. Allow students to print to printers without releasing the papers in person so they can pick it up while running past
  12. Lighted book gloves for reading on the long trek to the E-quad for a night lab.
  13. Electronic maps by the entrance to a building marking which stalls are in use in which bathrooms
  14. Social puppy locating app; tap to inform others of puppies around campus, look at a map to locate them while rushing to class
  15. An app that makes the phone make a sound in a phone call at a certain time so you know to end a phone call immediately (helpful for parent conversations)
  16. Collaborative playlists playing inside of lecture halls
  17. App that senses proximity to objects like a car’s backup sensor for when you’re reading while walking
  18. App that looks at distance to dining hall and crowded level based on prox swipes

3. One sentence each explaining why you chose the two ideas you did for prototyping.
3. I chose the professor videoconference based on observations of people annoyed that they couldn’t ask the professor something, based on observations of a lack of consistent ability to talk to the professor after class, and because it is screen-based and implementable.
7. I chose the friend schedule map app because it is feasible, useful, and based on the social interactions I observed and received interview information for students walking from class to class.

4. Photos & descriptions of your prototypes
This is the prototype for the professor videoconference. It is similar to a skype system, except that users’ classes are automatically added on the backend to allow them to enter a class’ video discussion. The user has a login screen, a class list screen, and taps a class’ name to enter the class’ video chat. If it is not available, the class will be dimmed out on the class list screen.

Class choice and video display screens.

This is the friend schedule map app. A user logs in and is shown a home screen. From this home screen, the user can logout or move to the map or add friend screens. On the add friend screen, the user can choose whether or not to show a friend on the map. Also, they can search for people by name or netid to add friends. On the map screen, the user is shown a color-coded list of friends.

Original prototype of the friend schedule map app.

Final prototype of the friend schedule map app.

5. Photos & descriptions and detailed notes from user testing

User 1: Valya Barboy
touched map on the x → created popup screen
“so they’re moving from here to here is what’s happening”
“it’s an app that lets you see where your friends are and where they’re going so if you want to meet up with them for a reason or something you can find them.”
“I’m assuming it’s bidirectional.”

Valya touches the gold x, a user action that I had not anticipated…

…so I improvised further information that appears in a modal dialog.

User 2: Silken Jones
both users tapped the gold x, then knew to touch outside to get rid of the modal dialogue
touch entire name to remove or add check
“tells you where your friends are going according to their schedule”
“you can add friends if you want.”
“almost expected a dashed line to show up between the from and to.”

Silken searched for and added a friend.

Silken adds her friend.

User 3: Mireille

“this is an app on a phone” “ohhh, ok!”
“is that like telling me like where they are?”
“so this is the only person that isn’t added, so I’ll add them – cool!”
I should have an are you sure you want to log out
“I don’t understand what it means by from and to”
<drew dotted lines connecting from and to>
seem to need to touch the x to figure it out
told her we’re in between classes
“how do they know?”
<added from ICE to add friends screen>
gasp of oh!!
“if you want to accidentally run into someone on the way to class, this is the app to do it with.”
“or if you wanted to avoid someone on the way to class.”

6. List of insights from testing

  • It is not immediately clear to users where the data is coming from. Indicating “from ICE” on the “Add friends” screen seemed to help people understand. An “about” or “how does this work” page might also be useful.
  • I should probably also add a popup to confirm logging out of the system.
  • I would definitely need to try out even more variations of the map screen, to indicate what I mean by “from” and “to.” I tried out connecting the from and to markers with a dotted line, but other variations may work even better.
  • When a person tapped one of the dots and was given more information about a friend (a feature that was added on the fly based on observed user interactions), they seemed to immediately understand what the dots meant.

Biblio-File by %eiip

Group name: %eiip (everything in its place)
Bonnie Eisenman (bmeisenm), Valya Barboy (vbarboy), Erica Portnoy (eportnoy), Mario Alvarez (mmcgil)

Brainstorming list

  1. Paper that can erase itself, keep track of changes
  2. Paper with real-life version control, you can revert it to a previous state, and it includes backups
  3. Real life version control for room, clothes, etc. organization
  4. Cheap projector for when you can’t alter your surfaces (for decoration)
  5. A bookshelf that keeps track of the books on it by using smart book covers or stickers in the books

    Photo Feb 19, 4 19 27 PM

    Sketch of smart bookshelf

  6. Self-adjusting exoskeleton for people who have to stand up for long periods of time (for under your clothes)
  7. A screen position optimized for a person laying down in bed
  8. A real-time translator that strips your speech of mean comments and makes them nice
  9. Clothing or gloves embedded with sound sensors to facilitate echolocation

    Photo Feb 19, 4 19 50 PM

    Sketch of echolocation clothing

  10. Material-free umbrella that repels water using air blowing, possibly.
  11. Clothing that generates electricity from movement and recharges batteries
  12. Hackable clothing that converts energy from motion into changing designs (for fashion options)
  13. A machine that helps you duplicate (scan and print) books licensed under creative commons (or public domain)
  14. Sleep cycle alarm but not based on phone being in your bed; preferably attached to your body

    Photo Feb 19, 4 23 32 PM

    Sketch of sleep cycle alarm

  15. Conductive clothing that generates electricity for keeping you warm

    Photo Feb 19, 4 38 52 PM

    Sketch of conductive warming clothing

  16. Real-time autotuning for vocal cords
  17. EZ-pass for real life: getting into dining halls, or even concerts, etc: a system that scans your ID automagically and also photographs people whose IDs aren’t working

    Photo Feb 19, 4 39 00 PM

    Sketch of EZ-pass for people

  18. Rigorous rock band vocals where it tells you if you do something wrong, and helps out when you’re doing it wrong (for vocal training)
  19. Theatre lighting board user interface; automating; virtual stage
  20. Hair cutting machine like in chitty chitty bang bang
  21. Pockets or bags that keep track of what’s in them

    Photo Feb 19, 4 19 38 PM

    Sketch of smart bag

  22. 3D printing for clothing
  23. Smart binder that scans and keeps track of the papers in it, or automatically digitizes them → integrate web and paper → e-ink on binders (you could display the syllabus and everything else)

    Photo Feb 18, 12 19 21 AM

    Sketch of smart binder

  24. Hoods with heaters so you don’t look like a criminal while keeping warm in the winter, or other invisible heated clothing (for face)
  25. Prox or other chip required to open laundry door in order to prevent theft.
  26. Robots that automatically declog the hair from your drain.
  27. Plant that notifies you when the soil is dry
  28. Litterbox that alerts you when it needs to be cleaned
  29. A way to alert you when you’re grinding your teeth — a cover for your molar that vibrates etc when you grind your teeth?
  30. Portable gas chromatographer–mass spectrometer for detecting allergens in air and food
  31. Flex sensors in gloves to determine how often you’re clenching fists / are stressed, and tell your doctor
  32. Ping pong balls that record their speeds
  33. Smart ping pong table that tells you if it’s in bounds
  34. Chessboards that highlight good next possible moves for teaching
  35. Cheap nighttime illumination: sticker with light sensor and LED for dark glow
  36. Convert human body language to text or visual information that can be sent during electronic remote conversation
  37. Force human hand muscle contraction or flex sensors and motors in a glove to teach sign language
  38. Force human hand muscle contraction or flex sensors and motors in a glove to teach kids to write
  39. Portable self-inflicted electroshock conditioning for improving learning speed
  40. A gestural interface for manipulation of 3D models.
  41. 3-D mouse for manipulating 3-D models, etc. → possibly using a cube with viscous liquid, or a device with an accelerometer, or hacking an optical mouse (preferably that also works in 3D)
  42. Curtains / blinds that open and close based on incoming light and normal use patterns (like the Nest does for temperature – save on lighting, help temperature like Icahn)

    Photo Feb 18, 12 24 27 AM

    Sketch of automatic blinds

  43. Throwing teacher: sensor on object being thrown, calculate what to fix, and inform the thrower. Like frisbee, football.
  44. Smart clothes that inform you when they don’t match
  45. RemberRings – small (wearable!) rings that you can use to record to-dos; press a button to record an idea or play back the recording
  46. GPS + FLORA: embed a GPS in your doggie sweater, so you can keep track of your dog via GPS instead of implanting a microchip, since that freaks some people out. Or, you know, secretly put one in your kid’s jacket.
  47. Auto-sensing LifeAlert: like LifeAlert, a necklace you wear, but this one measures your pulse, and alerts your doctor and / or family if your heart stops?
  48. Wearable GPS: tracks your location, points or nudges you in correct direction for your destination. Could be a bracelet, ring, etc.
  49. Universal car remote to start car and turn on heat
  50. Bike lock that sabotages bike if you dont unlock it (less bulky than a normal lock, hopefully)
  51. Wine bottle reusable cork that determines if wine has gone bad (oxygenation sensor?)
  52. “Windshield wipers” for automatically and quickly erasing chalkboards/whiteboards during a lecture
  53. A programmable teapot that has the hot water ready for you, based on the time you’ve set your alarm for in the morning.
  54. A camera that gets facial expressions of kids in classrooms and somehow alerts teacher when class is confused, bored, etc, so that they can adjust speed

Project choice: Biblio-File

To choose our idea, we each picked two ideas from the list, compiled them into a short list, and we cast three votes (indicated by *) each amongst these top 8 ideas (bookshelf****, echolocation***, automatic blinds*, smart binder *, smart bags *, real life EZ pass*, sleep cycle alarm, self-warming clothing*). We chose to implement a bookshelf that keeps track of the books in it. It is an example of embedded computing as it is based around physical books and the shelves they are on, although we may choose to incorporate an application in addition. It addresses a real-world problem, as it addresses the problem of locating, organizing, and keeping track of books, although the problem really extends to physical objects in general. As elucidated below, it has a specific target group of users. We feel that we can create a prototype between now and May, on a relatively limited budget. Many of our other ideas were too large in scope, did not address a problem that we felt actually existed, or simply did not excite us as much.

Target user group

Our target user is a person who owns a lot of books and ideally has some disposable income. Let’s call our target user Jane. She in a sixty-year-old professional with a large book collection, somewhere between 20 and 500 books, and a voracious reader. She has a bit of arthritis and hates searching for books on her bookshelf. She needs to find books quickly, and doesn’t want to waste time micromanaging and organizing her book collection. She also hates “losing” books that she already owns because she can’t be bothered to search through all of her books. We are not really concerned with libraries, which have specific and perhaps idiosyncratic needs, or book collectors, who may be unwilling to modify their books.

Photo Feb 19, 4 55 43 PM

Jane, an elderly voracious reader

Problem description and context

Imagine a person with lots of books. It could be a college student, a professor, a senior citizen, and/or a bibliophile. When the user goes to look for a specific book, it might be time-consuming and very difficult to find. The user might have to bend over, look in the same place multiple times, or even fail to find it. He might not remember whether he put this particular book on his bookshelf at home or in his office. Maybe he lent this book to a friend, and doesn’t even currently have it. The consumer does not really have the time to reorganize his books, and cannot remember where he put what. Our bookshelf would solve these problems by remembering the books that are in it, as well as where on the bookshelf they are, and allowing the user to search for a book in a given shelf. As far as we know, based on Googling the problem, no related or complementary solutions exist already.

Photo Feb 19, 4 55 48 PM

Professor Dave, our absentminded user

Justification of the technology platform

We’ve chosen to use the Arduino microcontroller platform to implement this project. We believe the Arduino is the most appropriate because of its low cost, its ability to interface with low-level electronics (such as our indicator LEDs), and its compatibility with a wide array of sensors. This last is important because we are not yet exactly sure how we will implement sensing the locations of books, and we don’t want to limit our options. Add-ons for the Arduino enable it to have network connectivity (such as this one), which will be needed for the system to look up books based on their ISBN bar-codes. Additionally we need to create an interface for users to input information about the books they’re trying to find, so the system can help them find it. This could be a web app, a mobile app, or even a screen/keyboard built into the bookshelf unit.