National Institute of Standards and Technology defined Cloud Computing in 2011 in the NIST Definition of Cloud Computing document, telling us about three types of Cloud based Service Models: IaaS, PaaS and SaaS
We could compare these models with a full On-Premises model (Traditional IT):
- IaaS (Infrastructure As A Service): Where the provider offers the infrastructure, so you do not need to pay attention to this part and focus on the relevant parts of your solution.
- PaaS (Platform As A Service): The provider offers you up to the Runtime level. It means that you have ready an environment where the infrastructure, O/S, middleware and runtime are all available and you focus on your data and applications. An example of this may be AWS Robomaker, where you could have all the infrastructure, plus the O/S (Ubuntu xx.xx for example), plus a middleware (ROSx), plus the runtimes needed, simulators, etc. so you focus on programming using the full created environment. See my previous post about AWS Robomaker
- SaaS (Software As A Service): The provider offers the full solution for you. Easy example is Gmail
From 2011 Cloud Computing has evolved a lot and NIST document, although still correct in its foundations, may require to cover a bit more on the complexity that nowadays cloud has. Anyway is still a good document to understand Cloud fundations.
There are many providers of solutions for one or more of the service models mentioned. The most known ones are Microsoft (Azure), Amazon (AWS) and Google (Google Cloud) at least for IaaS and PaaS although there are other like IBM Cloud and Oracle Cloud that worth to mention.
More and more companies are using these cloud based services to offer as well other XaaS (“Anything As A Service), From RaaS (Robot As A Service) to GaaS (Games as a Service) and although cloud based solutions are not always well accepted by customers that are worried mainly about security and accessibility matters, cloud is undoubtedly where everything will go as soon as we ensure that customers feel comfortable with it (ensuring them safety, reliability and accessibility), almost everything will be cloud based. Just think that nowadays all Bank services are available via Internet (BaaS) and we accept operating with it, being our personal and company accounts involved.
Cloud is were scalability and elasticity is possible and World needs scalability. Cloud is were multi-devices hardware-agnostic and OS-agnostic solutions are possible, where worldwide access is possible, even from the International Space Station. Cloud is were multi-connectivity with any device is possible. It doesn’t matter if it is an IOT device, a database server, a robot, a tablet or even a human brain. Cloud is the only option that really we have to continue our exponential technical growth. And remember, world evolution is an exponential function, not linear one.