I have been working a lot with Microsoft Azure Cloud Computing Platform and Office 365 for Business, Microsoft has worked very well in providing the IT masses with the a robust enterprise-grade platform to run your cloud services on. I believe that everyone and everything should be heading the cloud, and if you or your business are starting to consider the move, then it is important that you understand the available types of cloud computing, and how you can benefit from using each one of them, this does not only apply to Microsoft Azure, but to all other cloud computing providers out there.
There are three different types for cloud computing, those are Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS)
IaaS vs PaaS vs SaaS
Infrastructure as a Service: the most advanced type of the cloud, you get a total control of your environment, but unlike a local data-center where you have to manage everything your self, the IaaS takes off the burden of buying and running your own Networking hardware (such as switches and routers), Storage devices (such as NAS, SAN and backup solutions), Servers (insert any brand like Dell, HP and type like Blade and server technology like clusters, RAID controllers, UPSs) and Virtualization, which is considered the heart of cloud computing, your building blocks in this type are virtual servers with your own OS hosted on them, virtual storage and networks devices. This type makes sense if you are an IT Professional and would like to extend, move or build a new data-center infrastructure and have a control on the type of Virtual Machines that you would use to run your application and services on, without investing on the hardware side of the data-center. An example for this module would be Microsoft Azure and Amazon Web Services.
Platform as a Service: in addition to the layers mentioned in the IaaS module, PaaS takes of the burden of configuring and running the Operating System VMs (such as Linux or Windows “duh!”), the Middleware (HAL, device drivers and virtualization processes) and Runtime (library, framework, or platform that an application code runs on such as .Net, C and C++), what you’re left with is a place where you can develop your own software and applications and make them run on the cloud using PaaS services, the provider will take care of running the infrastructure where your application is hosted while giving you a limited control of that environment using a self-service portal. This module makes sense if you’re a Software Developer and just want to focus on lunching your application or services to the masses without worrying too much about the technology running your application, making you focus your time and efforts on improving and optimizing the application and saving you time on the operational cost of the infrastructure, an example for this module would be Azure Web Apps.
Software as a Service: the most used type of all modules and by far the biggest market available. With this module, the cloud providers will take care of all the computing layers in a IaaS and a PaaS deployment, and will also include the Data and Application layers, which is web application that you use on your computer using a web browser without the need to install any software on your computer to make the application run, the providers will take care of all the application life cycle such as updating, backing up, securing, upgrading to new version and if needed, restore your data in case of disasters, what you’re left with is access to online applications that are secure and available to you from any where at any time. This module makes sense if you like to run a business and have the lowest possible operations time and investment on software and hardware, a great example for this layer would be Microsoft Office 365 and Google Apps for Business.