Def1: A software interface (such as a graphical user interface) designed to enable user-friendly interaction with a computer.1
Def2: A unit in a computer system devoted to controlling the data communications link between terminals and the main computer and often to the preliminary processing of data.1