This means, any software you want from a cloud won't be directly provided to you, but rather the working terminal of the software, the side which you actually need. It may also be considered as Platform as a Service (PaaS), which holds a computing station, a platform or a stack.
Imagine a simple client-server relationship in a company. The servers store the data and the programs. The client, in this case the employees, access the server to get whatever data they need, or operate whatever software they need.
If the server room of a cloud computing company is the 'Back End', where all the installations, updates and log processing happens, the 'Front End' would be the clients computer, which runs on the what-you-need-is-what-you-see basis.
The user/client does not need to be concerned about the server issues, he only asks to work on a particular program to get the job done, and that's what the server provides. So a cloud is the collection of virtual computers that contain certain resources on giant server farms that the user can access.
How the cloud works can be understood from this point of view -
The Back End
The cloud is a collection of all data (software, apps), which any user subscribed to it can access, at any time using the Internet. The back end would be multiple servers that work together, each one holding one software or one app (one is efficient but sometimes not economically feasible). Which means, each software or app belongs to a dedicated server.
All these dedicated servers are controlled and managed by the administrator server. Each server will not only contain the latest version of a software, but you'll also get the option of data storage onto the server.
Data storage will most likely be encrypted and password protected, along with other securities. The size of the back end's storage room depends on the number of clients and whether the company is going to provide backup for the client data.
The Front End
This is the customer/client end of the cloud. The user approaches the cloud service provider to subscribe to their packages. Anytime he/she needs to access a file or run a software or app, that request is accepted by the cloud. It connects to the relevant server and in almost no time, you get the app right on your screen.
You just need to pay for the service. Updates are no longer your concern. This is important because multiple users working (in a non-cloud situation) on the same project but having different versions of a software can conflict with the process.
The same goes for individuals using the various operating systems (PC, Linux or Mac). Regardless of what OS you're using, when you're on the cloud, it's the cloud's OS that you use, making he compatibility issue non-existent
All in all, you get to use software suites like Microsoft Office, or even games, at the touch of a button, the same way you access Facebook. So if someone gets to start an online cloud based server for a multiplayer game, all you need to do is subscribe and start playing.
You may or may not be required to have the game installed on your computer. All you'll need is a computer and Internet access. If someone starts a tutorship or puts up entire learning modules on the Cloud system, you can access it to use their learning software, access their videos, talk to the professors on an chat system they installed.
This will differ from regular e-learning because you don't need to install anything, you can probably have a much more flexible learning routine.
It can also be said to be a combination of one way grid computing (data transfer between client and server only) and utility computation. A company makes a cloud that a client pays to use. This is the basic principle of such servers - clouds gather, what you use.