Like we said before, it has been a long, arduous journey building this simple little gizmo. Looking back, we found that our path has varied so greatly from where we once began, that it's just amazing to see how much the design process can blow a boat "off-coarse" (or would it be "on-coarse" if we ultimately arrived at a much better, market-tested product). Here's a quick run-down of how we got there:

Initial Design - A Physical Floor

Originally, our design intentions were to build a physical, electronic-responsive dance floor that would adjust to user's inputs. We had some original design ideas:

  • A physical dance floor embedded with LED light arrays which gives dance lessons
  • LED lights arranged in foot-shaped configurations
  • During lesson, LED instructor “feet” move across the dance floor, displaying the correct dance steps
  • User watches dance steps for a certain segment of time
  • User follows along with the dance steps himself to learn them
  • System tracks and detects where the user’s feet are (relative to the correct placement they should have if performing the dance steps correctly)
  • System provides visual feedback on the dance floor of where the user is placing his feet overlain on top of the images of where the feet should be placed
  • System provides additional audio feedback of user performance, with negative and positive sounds reinforcing whether or not the user has stepped within an acceptable range of the given dance steps
  • Supporting technologies: monitor/screen interface for setting up program, navigating menus, and selecting dances

Paper Prototyping and User Testing

We quickly moved on to very low-fidelity prototyping using nothing but paper feet cut-outs and our own imaginations. These physical "interfaces" let us test some pretty core ideas and concepts related to how people learned dancing without a lot of development overhead. Specifically, we were testing:

  • Cardboard floor and flash lights
    • Wanted to test: Can following the lights teach people the basic steps?
    • Noticed: Hard to see behind, hard to predict where the next step was going to be, which caused problems getting the timing and the rhythm down correctly.
    • Findings/Changes: added screen so that users could be aware of the entire space (behind them), and so that they could see the correct timing.
  • Screen only
    • Wanted to test: Is it more effective to watch the steps, then do them, or to do the steps at the same time (should we just show the user the steps and have them repeat, or follow along one step at a time, only advancing once they got the current step correct).
    • Noticed: Users liked being able to do the steps at the same time, rather than watching. It also helped them to learn the timing. Either way they did it, the users were able to repeat the steps after some delay (5 min). Users usually started following along right away, it seemed natural for them.
    • .
    • Findings/Changes: Wanted better feedback if the steps were in the correct location and if the timing was correct. The users also said that they liked being able to do the steps at the same time as the demonstration rather than waiting and trying to remember them, this lead us to removing the "watch the steps" section of the lessons.
  • Projected Steps
    • Wanted to test: Can users follow the feet in rhythm, can they remember the steps. We also wanted to test how users were able to see the steps behind them (similar to the flashlights).
    • Noticed: Looked down when repeating, hands in pockets. It also seemed that once they were out of sync they stayed out of sync. When they watched it on the screen, if they were out of rhythm, they would usually wait for it to start the next cycle and join again, but for the projected steps, they kept trying to catch up, which took around 3-5 cycles to catch up again.
    • Findings/Changes: Add both screen and projection. Screen gives them an idea of the overall space/what they can expect, and the projections gives them basic visual feedback. Got boring pretty quickly, needed to make it more fun/playful and more game like. We decided to remove the idea of "lessons" and replace it with the "start dancing" stage. We also removed the main menu, create dancer, and load dancer because people wanted to get started right away and it didn't add much value.
  • Final Iteration: Projected Steps, Screen, IR sensors, Music (& better timing)
    • Wanted to test: Do the IR sensors track well enough to provide constructive feedback. How does adding a better UI and music contribute to the overall fun experience. Do we need lessons or just let them go for it?
    • Noticed: It actually worked pretty well. Needed to show users when to shift weight (for example, in the Salsa when you pick up your foot and put it in the same location, users just left the foot there, which caused balance issues because the weight was on the wrong foot).
    • Findings/Changes:Show differences between moving the foot and putting the foot on the ground, perhaps just an outline of the footprint when the foot should not be touching the ground, and a colored in version once it should be on the ground.

Prototype Iterations

  1. Cardboard dance floor with flashlights indicating areas where user should place his feet
  2. No physically demarcated dance floor, only a computer-based interface in front of the user depicting feet and arrows indicating to the user the correct steps and where to place his feet on a dance floor existing only as a mental model in the user’s mind
  3. An actual dance floor in the form of a virtual dance floor projecting the same interface on the floor for the user to follow along with while also watching the steps on the screen.
  4. The same virtual dance floor and screen interface, incorporated with music and sound matching the correct beat of the dance, and also video showing professionals performing the dance so the user gets a sense of what he will look like when performing the dance. Wizard-of-Oz production of audio feedback on dancing accuracy.

The Dance Instructor - User Tests from Troy Brant on Vimeo.