Human-computer interaction is a discipline concerned with the design, evaluation and implementation of interactive computing systems for human use and with the study of major phenomena surrounding them. Interest in human-computer interaction (HCI) has been growing strongly over the last twenty years. It is no surprise, considering the dramatic growth of complexity and functionality of electronic devices and the fact that most of them have become mass consumer products.
Computer applications are nowadays part of the daily routine of majority of people, who encounter them on the streets, train stations, in their offices and schools. Therefore, the system developers are forced to deliver products that satisfy needs and capabilities of users. Many of these users cannot be trained, thus systems have to be designed so that they can walk up to the device and use it successfully for the first time.
Human-computer interaction is concerned with the performance of tasks by both humans and machines, the structure of communication between human and machine, human capabilities to use machines (including the learnability of interfaces), algorithms and programming of the interface, engineering concerns in designing and building interfaces, the process of specification, design and implementation of interfaces, and design trade-offs. Thus, human-computer interaction is concerned equally with science, engineering, and design aspects. For more information on human-computer interaction domain, please, visit the page with addresses of HCI and usability related web sites.