Cloud Computing – Massively scalable IT-related capabilities are provided “as a service” using Internet technologies.These services are broadly divided into three categories:
- Infrastructure-as-a-Service (IaaS) – Cloud infrastructure services, delivers computer infrastructure – typically a platform virtualization environment – as a service.
- Platform-as-a-Service (PaaS) – a computing platform and/or solution stack as a service, often consuming cloud infrastructure and sustaining cloud applications
- Software-as-a-Service (SaaS) – software that is deployed over the internet. With SaaS, a provider licenses an application to customers either as a service on demand, through a subscription, in a “pay-as-you-go” model.
The name cloud computing was inspired by the cloud symbol that’s often used to represent the Internet inflowcharts and diagrams.
SaaS (On-Demand) – Software-as-a-Service refers to a software application delivered over the web. The customers consume the product as a subscription service that is delivered on a pay-as-you-go basis.
Public cloud – Public cloud or external cloud describes cloud computing in the traditional mainstream sense, whereby resources are dynamically provisioned on a fine-grained, self-service basis over the Internet
Private cloud – also called internal cloud or corporate cloud) is a term for a proprietary computing architecture that provides hosted services to a limited number of people behind a firewall. These offerings capitalise on data security, corporate governance, and reliability concerns.
Hybrid cloud – The cloud infrastructure is a composition of two or more clouds (private or public) that remain unique entities but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting for load-balancing between clouds).
Cloud Resource pooling – The cloud provider’s computing resources are pooled to serve multiple consumers , with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. Examples of resources include storage, processing, memory, network bandwidth, and virtual machines.
CDN – A Contnet Distribution Network (CDN) is a system of servers containing copies of data, placed at various points in a WW network so as to maximize bandwidth for access and decrease latency of data transmition from clients throughout the network. A client accesses a copy of the data near to the client location, as opposed to all clients accessing the same central server, so as to avoid bottlenecks near that server. Read more on Wikipedia
Cloud Elasticity – Cloud computing capabilities must be rapidly and elastically provisioned automatically, to quickly scale out and rapidly released to quickly scale in.
Measured Service – Cloud systems automatically control use by a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts).
SaaS Service Level Agreement (SLA) – uses the concept of the traditional agreement to define the contract between the ISV and a customer. The contract specifies, usually in measurable terms the control of use and receipt of software services as for exmaple what percentage of the time services will be available and help desk response time for various classes of problems.
High Availability (HA) – High Availability (HA for short) refers to the availability of resources in a computer system, in the wake of component failures in the system. Availability is usually expressed as a percentage of uptime in a given year, for example 99.95% (Amazon EC2 commitment) uptime will consider maximum of 4.38 hours of downtime a year.
SaaS offering Levels – We can classify SaaS into four “maturity levels,” whose key attributes are configurability, multi-tenant efficiency, and scalability.Each level is distinguished from the previous one by the addition of one of those three attributes:
- Level 1 – Ad-hoc/custom: Each customer has a customized version of the hosted application that runs as its own instance on the host’s servers. Migrating a traditional non-networked or client–server application to this level of SaaS typically requires the least development effort, and reduces operating costs by consolidating server hardware and administration.
- Level 2 – Configurable: This adds greater program flexibility through configurable metadata, so many customers use separate instances of the same application code. This lets the vendor meet different customer needs through detailed configuration options, while simplifying common code base maintenance and updating.
- Level 3 – Configurable, multi-tenant-efficient: This adds multi-tenancy to the second level, so a single program instance serves all customers. This enables more efficient server resource use without apparent difference to the end user, but ultimately faces scalability limits.
- Level 4 – Scalable, configurable, multi-tenant-efficient: The fourth and final SaaS maturity level adds scalability through a multitier architecture that supports a load-balanced farm of identical application instances that run on a variable number of servers. The provider can adjust system capacity to match demand by adding or removing servers without further altering the software architecture.
Two options of Scaling options in the Cloud –
1. Scaling Up (Vertical Scaling) – Address a scalability problem with better, faster, more capable hardware. If we can’t load that giant spreadsheet model on a computer with 512MB of RAM, we install 2GB and give it another try. If it is still too slow, we can use a machine with a faster processor or faster hard disk.
Image Source: RightScale Guide
2. Scaling Out (Horizontal Scaling) – We leave the existing machines in place, and add additional machines to the mix to share the burden. Basically we spread out the system by adding more machines beside the existing ones.
Image Source: RightScale Guide
Cloud Sourcing – Cloudsourcing refers to sourcing complete solutions to run your business from the public cloud. The solution provider that offers Cloudsourcing products or services is called “Cloudsourcer”. The Cloudsourcer typically provides solutions that knits together cloud applications, cloud platforms and cloud infrastrcuture.
MSP – Managed Services Provider. Usually the support vendor who provides a higher level management of the ISV applications including deployment, maintenance, monitoring, reporting, billing and call center support.
Virtual Private Cloud (VPC) – The term describes a concept that is similar to, and derived from, the familiar concept of a Virtual Private Network (VPN). A VPC is a method for partitioning a public computing utility such as EC2 into quarantined virtual infrastructure. A VPC may encapsulate local and cloud to appear as a single computing environment bridging the ability to securely utilize remote resources.
Interoperability – The ability to collaborate and connect different IaaS platforms.
Federation – The to bring together services from various IaaS vendors to provide a solution
————————————————— SaaS Financial Terms:
Economies of scale – Refers to the cost advantages that a business obtains due to expansion. There are factors that cause a producer’s average cost per unit to fall as the scale of output is increased. SaaS competitive cost advantage arises from the general principal of aggregating customers to achieve new economies-of-scale, not the specific technology used to accomplish it.
MRR – Monthly Recurring Revenues
MRE – Monthly Recurring Expenses
CMRR – Contracted Monthly Recurring Revenue
ARPU – Average Revenue Per User
Churn – Churn is the percent of customers who cancel each year. Ideally, a SaaS company should target a churn rate of less than 12% of CMRR.
CAC (Customer Acquisition Cost) – The CAC is simply the gross margin from a single customer, divided by sales & marketing costs per customer. SaaS companies should target average payback of 1 year on sales and marketing costs.
Cash Flow – Cash flow is of course important for any company, software or SaaS or anything else. But because so many of the costs are front-loaded in the SaaS model, it is a critically important metric to track and manage.
CLTV (Customer Lifetime Value) – Obviously, the goal for a SaaS company is an average CLTV>0. If churn is too high and CAC ratio too low (high customer acquisition cost) then the CLTV could very well be negative, even if the company is signing up many customers.
Hadoop – Apache Hadoop is a software framework that supports data-intensive distributed applications under a free license. It enables applications to work with thousands of nodes and petabytes of data. Hadoop was inspired by Google’s MapReduce and Google File System (GFS) papers.