In supervised learning, you have an input variable, a (correct) output variable, and an algorithm trying to map the function from input to output. It's called "supervised" as the process of learning with a correct example is similar to a teacher supervising the learning process.
The goal is to train the function so that it automatically arrives at the correct output for any given input.
In contrast, there is unsupervised learning, where only input variables exist. As there is no correct answer, algorithms are left on their own to discover and present exciting structures in the data (patterns).