Human factors engineering is the strand of engineering that is concerned mainly with the design of systems (whether they be of the computer, mechanical, or whatever type) so that they are compatible with human quirks and limitations on many levels.
According to Kim Vicent, author of the book The Human Factor, human factors engineering can look at five levels of a hierarchy that influence how humans interact with the systems around them.
Human factors engineering on the physical level is essentially the same thing as ergonomics. It is about designing equipment and systems so that they work with the physical proportions of people. An example of this might be placing controls for machines where they are easily accessible, or perhaps making it so that running the machine does not require greater than average strength. Bad designs tend to lead to fatigue or ever possibly repetetive strain injuries depending on the context, or how the item is used.
The psychological level of human factors engineering often deals with the way the human mind works, and is an import level to consider when designing things such as user interfaces and controls (whether they be physical or on-screen). For instance, since the human short-term memory can generally only hold about seven things, you wouldn't want more then seven top level menus, nor would you want submenus of depth greater than seven. On a psychological level, a human factors engineer may also wish to examine the organization and presentation of information in such a way that it is easy to quickly see the most important data. An example of this would be to make it as easy as possible to see safety-critical data in a nuclear reactor.
A system with a good psychological fit to humans tends to use certain methods to reduce error and increase usability. One such methord would be introducing stimulus-response compatibility, a design principle whereby there is an easy to see and obvious relationship between a control and the effect of that control.
For example, most stoves have the burners arranged in a square. At some point in their lives, someone generally accidentally turns on the wrong burner. Why? Because the burner controls are layed out sequentially, whereas the actual burners are stacked. If the top two burners were each to be offset a little to the right, then there would also be a sequential pattern to the burners, and the number of times someone turned on the incorrect burner would be greatly reduced. The system in this case is designed so that it responds as humans expect in to on a psychological level (people understand sequences).
The team aspect of human factors engineering is often an interpersonal level, and is most often impacted by training procedures. A correctly engineered team setup maximises the impact a team can have, and is designed so that the efforts of team members complement each other (working synergistically). An excellent example of this kind of team setup is what one might find on a large commercial airplane. The team that flies the plane is now trained using the Cockpit Resource Management system (it is a legal requirement for commercial pilots in the United States). The system has been credited with a large reduction in the number of incidents of pilot error, being designed for maximum compatibility with the people flying the plane, not just the mechanics of it.
Moving up the scale, the organizational elements of human factors engineering include such things as reasonable scheduling (often a problem in hospitals), encouraging non-punative error reporting systems, incentives and disincentives for behaviour, efficient management structures, and information sharing.
Departments that do not communicate vital information, unreasonable management expectations, and systems that punish people for reporting errors that have occured or potential errors are all examples where the human factors of the organization may have broken down. On the other hand systems which encourage things like anonymous error reporting are generally considered to be better designed systems, because there are fewer impediments to their self improvement. An excellent example of one such system is the ASRS(Aviation Safety Reporting System), which allows commercial pilots to anonymously report any errors they have experienced which might not be unique to them, thus providing the aviation industry with a way to see where problem areas of safety are and take steps to improve them.
Technology and politics have always had some fairly close ties, and politics can greatly influence the direction of technological development. The laws regarding the legality of various technologies can have a large impact on their fit with society, and more importantly, how far they progress in development. The political restrictions placed on stem cell research, for example, in the United States, have greatly retarded development of technological application coming from that field. On the opposite side, due to political pressure applied by various groups, research into environmentally friendly technologies and how to apply those technologies in economical ways has had much more development. The politics of an era effectively limits the kind of technological development that society will permit - most technologies which do not fit within this prescibed range will fail on the large scale.
It is important for technologists and engineers of today to examine how their work might be used, and how it might be designed to better work with the people it is meant to serve. We are supposed to be the masters, not the technology we are meant to control, but how many people do you know who are unable to set their VCR clock? It is the technological advances which work with people instead of making people work with them, that will eventually and inevitably succeed.
Source: Vicent, Kim. The Human Factor