...
Figure 5. Moving a folder into a different folder.
Any file or folder can be moved into any other folder or up a level by dragging the item and dropping it on top of the destination. The interface for this can be seen in Figure 5. The dragged item has its opacity reduced, and valid targets turn blue underneath it. If the item is dropped somewhere that is not a valid destination, it reverts back into its original position. If a folder is dropped somewhere that already has a folder with the same name, the move is cancelled and the user is alerted.
Figure 6. Document search with autocomplete.
Our
Implementation
After deciding on the webcam-based design, we had to choose which platform we were going to use for our implementation. We all preferred a web app in terms of creating a user interface, but capturing webcam output from a web app proved challenging. We hoped to be able to use the HTML5 getUserMedia API to capture webcam output. However, this is a very new technology -- only in the latest version of Chrome, and only if you enable experimental features. We eventually realized that chrome's implementation didn't have all of the features we needed yet: most importantly the ability to save video, but also the ability to differentiate between webcams plugged in to a laptop to access a front-facing webcam pointing at a lecturer. In the end, we were not able to use getUserMedia to implement live webcam capture for SETENTS, and had to resort to using a pre-recorded video and pretending that the playing video corresponded to a camera live view. This is the implementation limitation that has the single largest impact on the usability of our project, since it can be somewhat confusing having to pretend that a pre-recorded video corresponds to what you're seeing during a user test. And of course, it means that the killer feature of our app is not useful in the real world.
...