functional prototype

architecture

Using Java, develop a first functional prototype. Pay attention to issues of modular architecture. What are the essential modules? How does information need to flow? Will you employ services, discovers, and aggregators, as suggested by Dey et al [1]? What about a blackboard-base context architecture, as suggested by Winograd [4]? How will you recognize high-level contextual scenarios from low-level data?

technology simulations

Focus on exactly how the fancy technologies you will use work in reall life. Whatever technologies your system calls for -- such as Bluetooth, GPS, sensors, ... -- read the specifications carefully. Create appropriate technology simulations. Pass realistic messages through realistic protocols. Likewise, simulate databases your application will need, for a reasonable subset of situations. For both of these types of modules, you'll end up supplying canned data. Make it as realistic as is both possible and practical.

embody what you've learned

Now, take everything you've learned from the storyboards and lo-fi prototypes that you've constructed, and the first user study that you conducted. Embody this knowledge in a functional, interactive prototype. Focus on the user experience. Design affordances, constraints, and feedback carefully. Communicate your intentions clearly. Conduct your own heuristic evaluations [3] and cognitive walkthroughs [2] as you go.

references

1. Dey, A., Abowd, G., Salber, D., A Conceptual Framework and a Toolkit for Supporting the Rapid Prototyping of Context-Aware Applications, Human-Computer Interaction, 16(2-4), 2001.

2. Lewis, C., Task-Centered User Interface Design, Chapter 4.

3. Nielsen, J. Ten Usability Heuristics, useit.com.

4. Terry Winograd, Architectures for Context, Human-Computer Interaction, 16(2-4), 2001.



due tuesday 12/1

designed for mozilla 1+ and ie 6+
an interface ecology lab production