Open Job Offers: Senior Software Engineers and QA Analysts

Techi Talks

An overview of SaaS

Software as a service
Software Engineering

Software As A Service

SaaS is on the rise. It is cheaper from the maintenance and administrative point of view compared to on-premise licensed software and it can easily become a very lucrative business achieving thousands of subscriptions worldwide in a short matter of time.

Today, the giants Microsoft, Amazon, Google as well as many smaller hosting companies offer scalable cloud computing solutions. Cloud complements SaaS by allowing you to pay for an agile, secure, reliable and on-demand hosting solution. Cloud Service allows SaaS to be constructed over a pay-per-user business model.

According to the National Institute of Standards and Technology (source), there are five essential characteristics of SaaS:

On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and network storage as needed automatically without requiring human interaction with each service provider.

Broad network access. Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops, and workstations).

Resource pooling. The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand.

Rapid elasticity. Capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear unlimited and can be appropriated in any quantity at any time.

Measured service. Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilised service.

The NIST Definition of Cloud Computing