Human-Computer Interaction (HCI)HCI, you will generally find, refers to a field of research. There are more journals and conferences than how-to books on this topic. It's a large field of research having to do with how human beings interact with computers, websites, and digital systems. Therefore it's founded on gathering information about human perceptions and behaviours and how computer systems can be made to better support them. Discoveries and principles of HCI feed into and form a research basis for other specialties (usability, interaaction design, etc.)
>> Example: "Display layouts should accomodate the fact that people can be sidetracked by the smallest movement in the outer part of their visual fields, so only important areas should be specified by moving or blinking visuals." (see "HCI and your website" by Nicky Danino at Sitepoint)
User-Experience or Experience Design... is more of an umbrella term that can deal with more than just your desktop computer and a lot more than just websites. It's a holistic term that can cover branding, functionality, usability, information architecture, graphic design, and interaction design, and deals with the overall satisfaction a user has when dealing with a product or system. It includes perceptions and emotional responses as well as ease of use and function. (check out this BBC article on emotional design and the wow factor for another angle.)
>> Example: "The User-exerience should be comfortable, intuitive, consistent and trustworthy" (see "Brand value and the user experience" by Kelly Goto, at digital-web magazine)
Usability or Usability Engineering...is more specific, though a part of the user experience, and is most often used in reference to software and websites. It's about applying scientific method to making websites as easy and intuitive to use as possible for their audience. One key aspect of Usability is systematic user testing. Usability tests can be run on a prototype, beta or current public version of a website. The results can be fed back into improvements to solve usability errors (where users get stuck) thus improving the user's experience of the site. Usability tends to have less to do with making a site attractive, warm or brand consistent and more specifically to do with making it easy to use -- facilitating tasks and functionality.
>> Example: "Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution." (From Jakob Nielsen's Heuristics for User Interface Design)
Information ArchitectureIA can be thought of as part of the user-experience design. One goal of IA is also good usability in the sense that IA is trying to make it as easy and intutive as possible for the user to access and use information throughout the site. The difference is that IA deals more specifically with "findability" or the organization, structuring, categorization, labelling, navigating and tagging of information in a website. It includes the blueprint as well as the navigation options and search keywords. There are usually more IA-specific tasks at the beginning of a web project (as the categories and pathways are planned, mapped out and prototyped).
>> Example: The site should support multiple ways to reach content, as in search, site-wide navigation, site index, site map, etc. (from Louis Rosenfeld's Information Architecture heuristics)
Interaction design...often refers very specifically to the elements of interface design that involve action between the computer and user (less on graphics more on user goals, tasks and processes) for websites, software, and games. Games in particular are a good example as they are highly interactive. In other words there is a lot of information being passed back and forth from user to computer and a lot of specific and sophisticated tasks a user is trying to complete. Interactivity design as a research, as well as a practice, discipline finds out how to do this more seemlessly, and make it more engaging for users. They deal with issues of interactive control (how much to entice, guide, or coerce a user into doing one thing or another - clicking a button, entering the wizard cave, etc.) among many other things.
>> Example: Users should be able to respond to the computer at their leisure. The computer on the other hand, needs to respond immediately to the user. computer response time to a user action should be kept under a second 90% of the time (From The Art of Interactive Design, by Chris Crawford)
Accessibility and Universal Design...are in essence an aspect of usability, and therefore of the overall user experience, but are specifically associated with ensuring users with disabilities are not left out. Beyond that, accessibility standards which have been set out to ensure this, also ensure users on all sorts of various computers systems, browsers, software types and mobile devices are not left out because of the technology they use. In a sense it's about making sure a website is usable accross all platforms and across all abilities, universally, catering for the inevitable differences among users. Whether you're using a braille refresher, a mobile phone or your voice to navigate, accessibility standards make sure a site design is flexible enough to cater to your needs. Accesibility is the only element on this list that is mandated by law.
>> Example: All images should have alternate text included in the HTML so vision impaired users using screen reader technology, those using text-only browsers or users with slow connections, can still access the content of the image. (see www.w3.org/wai)
Bringing it all togetherThe differences among each of these elements of the user experience become more pronounced the larger a website project gets. For a small site, they are essentially all dealt with by the same person or small team that deals with the interface/graphic design or the web development. For mammoth sites (like large corporate sites), there are teams of people each dedicated to a particular specialty and tasks need to get broken down. One team may be researching search analytics and leading card sorting exercises to categorize products, another team conducts usability tests on a prototype, and another works with the visual designers on creating an interface that appropriately reflects corporate image, while yet another group may be ensuring this design is incorporating accessibility standards, etc.
The one thing they all have in common is the idea that people come first.It's the idea that you're basing your design and build of a product, application or website on the person it's for, what they need, how they respond and what they're like. The ideal is that a person shouldn't have to change their behaviour to accommodate the idiosyncrasies of a computer system. Instead, the system should work to seamlessly adapt to their behaviour and goals. Which of course, makes sense. Technology isn't made to please itself or boss us around (not yet anyway). It's made to support human activity. If it doesn't make a human's task easier, it's essentially pointless.
Disclaimer: These are, naturally, totally incomplete generalized overviews of each discipline, that many would argue over until late in the night, and which would be impossible to fairly define on one blog post. They're just intended for other designers like myself in visual design and elearning, to help add a bit more clarity to a messy web of terminology. You gotta start somewhere.