When speaking of a User Interface mostly the system is meant with which the user interacts with a computer. As a system bridging the difference between computers and humans it contains both hardware and software components.
Generelly it consists off of two basic concepts. On the one hand the Input, the possibility to enter data, instructions and orders by the user, and the Output, the reference the user gets as result of his actions done by the Input.
Archiving the use system
The highest goal while designing and programming a User Interface is to archive a relatively easy to use system, which is on the other side highly effective and manages / interprets the human orders and instructions as good as possible.
Since the increased use of personal computers back in the 1980‘s with the rise of computers with GUIs (graphical user interface) the design of a User Interface is one of the most complex and delicate tasks.
As such, the User Interface is significant for the general usage of a personal computer and requires a special amount of attention while producing it. So the less the effort for operating a User Interface the better it is in matter of quality. So the User Interface mainly descirbes how well or bad a certain program / software product can be used.
Development of User Interfaces
During the overall development of User Interfaces different groups of Interfaces evolved by time. The most common one is the already named GUI, followed by today’s Web-based User Interfaces (WUI) used by browsers and other Internet-oriented applications.
Older Interfaces include the Command Line Interfaces known from older Operating Systems like DOS (Disk Operating System) or Batch Interfaces. A current trend leads to multi-thread and interactive User Interfaces activated and controlled via Audio (Speech / Voice / Language Control) or Tactile (Gesture / Motion / Touch Control) Systems and Interfaces.