programs and related data that provides the instructions for telling a computer what to do and how to do it. Software refers to one or more computer programs and data held in the storage of the computer. In other words, software is a set of programs, procedures, algorithms and its documentation concerned with the operation of a data processing system. A type of technology – making, modification, usage, and knowledge of tools, machines, techniques, crafts, systems, methods of organization, to solve a problem, improve a preexisting solution to a problem, achieve a goal, handle an applied input/output relation or perform a specific function. It can also refer to the collection of such tools, machinery, modifications, arrangements and procedures. Technologies significantly affect human as well as other animal species' ability to control and adapt to their natural environments. A form of computer technology – computers and their application. Styles of human–computer interaction Command line interface Graphical user interface (GUI) Copy and paste, Cut and paste Single Document Interface, Multiple Document Interface, Tabbed Document Interface Elements of graphical user interfaces Pointer Widget (computing) icons WIMP (computing) Point and click Drag and drop Window managers WYSIWYG (what you see is what you get) Zooming user interface (ZUI) Brushing and linking Crossing-based interface Conversational user interface Voice computing Related fields Human–computer interaction draws from the following fields: psychology human memory human perception sensory system sociology and social psychology cognitive science human factors / cognitive ergonomics / physical ergonomics repetitive strain injury computer science computer graphics artificial intelligence computer vision visualization information visualization scientific visualization knowledge visualization design industrial design graphic design and aesthetics information design interaction design process-centered design sonic interaction design Interactive Art and HCI library and information science, information science information security HCISec speech-language pathology personal information management phenomenology History of human–computer interaction History of human–computer interaction Ivan Sutherland's Sketchpad History of automated adaptive instruction in computer applications History of the GUI Interaction paradigms Time-sharing (1959) hypertext (Ted Nelson 1963), hypermedia and hyperlinks Direct manipulation (ex. lightpen 1963, mice 1968) Desktop metaphor (197x XEROX PARC) Windows-Paradigm Personal computer CSCW: Computer Supported Collaborative (or Cooperative) Work, collaborative software Ubiquitous computing ("ubicomp") coined 1988 World Wide Web (Tim Berners Lee 1989) Mobile interaction "sensor-based / context-aware interaction"-paradigm Notable systems and prototypes Office of the future (1940s) Sketchpad (1963) NLS and The Mother of All Demos (1968) Dynabook (circa 1970) Xerox Alto (1973) Xerox Star