Sunday, November 21, 2004

User Centered Design

To ensure success in designing ease of use and a level of design sophistication into the total user experience for Croquet-based learning applications, we're following the principles and best practices of user-centered design (as we do for all of our software development projects). This helps us provide for the needs of all potential users and adapt the user interface to meet their expectations, while at the same time freeing users from the need to overcome unnecessary obstacles to their use of the software.

In user centered design of educational applications you generally align learning objectives to user goals through a three-step iterative process: 1) information gathering and analysis, 2) information architeture and prototyping, and 3) interface design (implementation, testing, launching, growing). All three of these can (and should) be applied to any interactive software product.

User centered design also involves 1) making visible a series of navigational aids that readily define constraints and help users predict the effects of their actions, 2) reducing memory load by making interface elements meaningful and consistent and relating new items and functions to ones the user already knows, 3) providing immediate feedback when users perform actions, 4) facilitating the chunking of information into schema that are meaningful to users and that can allow them to skim and scan large amounts of data easily, 5) helping orient users by providing descriptive information about things, maps, and visual cues to location, 6) providing a high level of tolerance for user error, and 7) maintaining a high-quality visual design and text legibility. There are all pretty simple and basic - but you'd be surprised at how much software is developed without adequately considering some of these (but then again, a lot of you reading this probably wouldn't).