the way the user tells the software what to do and how the computer displays information and options to the user.
controls the way data and instructions are entered (input) into the computer  how the computer presents information on the screen (output)
the practice of examining large databases in order to generate new information. also analysing data to extract information not offered by the raw data alone.