Design for Users
Designing for users and usability requires a thoughtful and sometimes counterintuitive approach. Most coders are caught up in the technical capability, and it takes an outsider to point out the details that matter to users. Begin with user requirements, build the architecture around the technical capability available, and get users involved in early testing while you are able to make changes easily.
Requirements
What adds business value
What will help people interact
What other integration is needed for a good workflow
Technologies
People
How will people actually respond to the system?
What do they need to respond more easily?
Does initial testing support what people say they want?
Build for actual response.
This little article that was written with a form, or data entry, perspective raises interesting research points that apply in many areas where human interaction is involved.
Three Laws of Form Design
http://www.htmlgoodies.com/tutorials/forms/the-three-laws-of-form-design.html