Platform-as-a-Service (PaaS) 49
2.5.1 The Traditional On-Premises Model
The traditional approach of building and running on-premises applica-
tions has always been complex, expensive, and risky. Building your own
solution has never offered any guarantee of success. Each application was
designed to meet specific business requirements. Each solution required a
specific set of hardware, an operating system, a database, often a middle-
ware package, email and web servers, etc. Once the hardware and software
environment was created, a team of developers had to navigate complex
programming development platforms to build their applications. Addi-
tionally, a team of network, database, and system management experts was
needed to keep everything up and running. Inevitably, a business require-
ment would force the developers to make a change to the application. The
changed application then required new test cycles before being distributed.
Large companies often needed specialized facilities to house their data cen-
ters. Enormous amounts of electricity also were needed to power the serv-
ers as well as to keep the systems cool. Finally, all of this required use of
fail-over sites to mirror the data center so that information could be repli-
cated in case of a disaster. Old days, old ways—now, let’s fly into the silver
lining of todays cloud.
2.5.2 The New Cloud Model
PaaS offers a faster, more cost-effective model for application development
and delivery. PaaS provides all the infrastructure needed to run applications
over the Internet. Such is the case with companies such as Amazon.com,
eBay, Google, iTunes, and YouTube. The new cloud model has made it pos-
sible to deliver such new capabilities to new markets via the web browsers.
PaaS is based on a metering or subscription model, so users pay only for
what they use. PaaS offerings include workflow facilities for application
design, application development, testing, deployment, and hosting, as well
as application services such as virtual offices, team collaboration, database
integration, security, scalability, storage, persistence, state management,
dashboard instrumentation, etc.
2.5.3 Key Characteristics of PaaS
Chief characteristics of PaaS include services to develop, test, deploy, host,
and manage applications to support the application development life cycle.
Web-based user interface creation tools typically provide some level of sup-
port to simplify the creation of user interfaces, based either on common
Chap2.fm Page 49 Friday, May 22, 2009 11:24 AM
50 Cloud Computing
standards such as HTML and JavaScript or on other, proprietary technolo-
gies. Supporting a multitenant architecture helps to remove developer con-
cerns regarding the use of the application by many concurrent users. PaaS
providers often include services for concurrency management, scalability,
fail-over and security. Another characteristic is the integration with web ser-
vices and databases. Support for Simple Object Access Protocol (SOAP) and
other interfaces allows PaaS offerings to create combinations of web services
(called mashups) as well as having the ability to access databases and reuse
services maintained inside private networks. The ability to form and share
code with ad-hoc, predefined, or distributed teams greatly enhances the pro-
ductivity of PaaS offerings. Integrated PaaS offerings provide an opportu-
nity for developers to have much greater insight into the inner workings of
their applications and the behavior of their users by implementing dash-
board-like tools to view the inner workings based on measurements such as
performance, number of concurrent accesses, etc. Some PaaS offerings
leverage this instrumentation to enable pay-per-use billing models.
2.6 Software-as-a-Service (SaaS)
The traditional model of software distribution, in which software is pur-
chased for and installed on personal computers, is sometimes referred to as
Software-as-a-Product. Software-as-a-Service is a software distribution
model in which applications are hosted by a vendor or service provider and
made available to customers over a network, typically the Internet. SaaS is
becoming an increasingly prevalent delivery model as underlying technolo-
gies that support web services and service-oriented architecture (SOA)
mature and new developmental approaches become popular. SaaS is also
often associated with a pay-as-you-go subscription licensing model. Mean-
while, broadband service has become increasingly available to support user
access from more areas around the world.
The huge strides made by Internet Service Providers (ISPs) to increase
bandwidth, and the constant introduction of ever more powerful micropro-
cessors coupled with inexpensive data storage devices, is providing a huge
platform for designing, deploying, and using software across all areas of
business and personal computing. SaaS applications also must be able to
interact with other data and other applications in an equally wide variety of
environments and platforms. SaaS is closely related to other service delivery
models we have described. IDC identifies two slightly different delivery
models for SaaS.
11
The hosted application management model is similar to
Chap2.fm Page 50 Friday, May 22, 2009 11:24 AM
Software-as-a-Service (SaaS) 51
an Application Service Provider (ASP) model. Here, an ASP hosts commer-
cially available software for customers and delivers it over the Internet. The
other model is a software on demand model where the provider gives cus-
tomers network-based access to a single copy of an application created spe-
cifically for SaaS distribution. IDC predicted that SaaS would make up
30% of the software market by 2007 and would be worth $10.7 billion by
the end of 2009.
12
SaaS is most often implemented to provide business software function-
ality to enterprise customers at a low cost while allowing those customers to
obtain the same benefits of commercially licensed, internally operated soft-
ware without the associated complexity of installation, management, sup-
port, licensing, and high initial cost.
13
Most customers have little interest in
the how or why of software implementation, deployment, etc., but all have
a need to use software in their work. Many types of software are well suited
to the SaaS model (e.g., accounting, customer relationship management,
email software, human resources, IT security, IT service management, video
conferencing, web analytics, web content management). The distinction
between SaaS and earlier applications delivered over the Internet is that
SaaS solutions were developed specifically to work within a web browser.
The architecture of SaaS-based applications is specifically designed to sup-
port many concurrent users (multitenancy) at once. This is a big difference
from the traditional client/server or application service provider (ASP)-
based solutions that cater to a contained audience. SaaS providers, on the
other hand, leverage enormous economies of scale in the deployment, man-
agement, support, and maintenance of their offerings.
2.6.1 SaaS Implementation Issues
Many types of software components and applications frameworks may be
employed in the development of SaaS applications. Using new technology
found in these modern components and application frameworks can drasti-
cally reduce the time to market and cost of converting a traditional on-pre-
mises product into a SaaS solution. According to Microsoft,
14
SaaS
architectures can be classified into one of four maturity levels whose key
11. “Software as a Service Threatens Partner Revenue and Profit Streams, New Partners Emerg-
ing, IDC Research Shows,” from http://www.idc.com/getdoc.jsp?contain-
erId=prUS20884007, 20 Sep 2007, retrieved 16 Jan 2009.
12. Ibid.
13. http://en.wikipedia.org/wiki/Software_as_a_service, retrieved 11 Jan 2009.
14. http://www.microsoft.com/serviceproviders/saas/saasplatform.mspx, retrieved 14 Jan 2009.
Chap2.fm Page 51 Friday, May 22, 2009 11:24 AM
52 Cloud Computing
attributes are ease of configuration, multitenant efficiency, and scalability.
Each level is distinguished from the previous one by the addition of one of
these three attributes. The levels described by Microsoft are as follows.
SaaS Architectural Maturity Level 1—Ad-Hoc/Custom. The
first level of maturity is actually no maturity at all. Each customer
has a unique, customized version of the hosted application. The
application runs its own instance on the hosts servers. Migrating a
traditional non-networked or client-server application to this level
of SaaS maturity typically requires the least development effort and
reduces operating costs by consolidating server hardware and
administration.
SaaS Architectural Maturity Level 2—Configurability.The sec-
ond level of SaaS maturity provides greater program flexibility
through configuration metadata. At this level, many customers can
use separate instances of the same application. This allows a vendor
to meet the varying needs of each customer by using detailed con-
figuration options. It also allows the vendor to ease the mainte-
nance burden by being able to update a common code base.
SaaS Architectural Maturity Level 3—Multitenant Efficiency.
The third maturity level adds multitenancy to the second level.
This results in a single program instance that has the capability to
serve all of the vendor’s customers. This approach enables more
efficient use of server resources without any apparent difference to
the end user, but ultimately this level is limited in its ability to scale
massively.
SaaS Architectural Maturity Level 4—Scalable. At the fourth
SaaS maturity level, scalability is added by using a multitiered
architecture. This architecture is capable of supporting a load-bal-
anced farm of identical application instances running on a variable
number of servers, sometimes in the hundreds or even thousands.
System capacity can be dynamically increased or decreased to
match load demand by adding or removing servers, with no need
for further alteration of application software architecture.
2.6.2 Key Characteristics of SaaS
Deploying applications in a service-oriented architecture is a more complex
problem than is usually encountered in traditional models of software
Chap2.fm Page 52 Friday, May 22, 2009 11:24 AM
Software-as-a-Service (SaaS) 53
deployment. As a result, SaaS applications are generally priced based on the
number of users that can have access to the service. There are often addi-
tional fees for the use of help desk services, extra bandwidth, and storage.
SaaS revenue streams to the vendor are usually lower initially than tradi-
tional software license fees. However, the trade-off for lower license fees is a
monthly recurring revenue stream, which is viewed by most corporate
CFOs as a more predictable gauge of how the business is faring quarter to
quarter. These monthly recurring charges are viewed much like mainte-
nance fees for licensed software.
15
The key characteristics of SaaS software
are the following:
Network-based management and access to commercially available
software from central locations rather than at each customers site,
enabling customers to access applications remotely via the Inter-
net.
Application delivery from a one-to-many model (single-instance,
multitenant architecture), as opposed to a traditional one-to-one
model.
Centralized enhancement and patch updating that obviates any
need for downloading and installing by a user. SaaS is often used in
conjunction with a larger network of communications and collab-
oration software, sometimes as a plug-in to a PaaS architecture.
2.6.3 Benefits of the SaaS Model
Application deployment cycles inside companies can take years, consume
massive resources, and yield unsatisfactory results. Although the initial deci-
sion to relinquish control is a difficult one, it is one that can lead to
improved efficiency, lower risk, and a generous return on investment.
16
An
increasing number of companies want to use the SaaS model for corporate
applications such as customer relationship management and those that fall
under the Sarbanes-Oxley Act compliance umbrella (e.g., financial record-
ing and human resources). The SaaS model helps enterprises ensure that all
locations are using the correct application version and, therefore, that the
15. Erin Traudt and Amy Konary, “2005 Software as a Service Taxonomy and Research Guide,
IDC, http://www.idc.com/getdoc.jsp?containerId=33453&pageType=PRINT-
FRIENDLY#33453-S-0001, retrieved 11 Jan 2009.
16. http://searchnetworking.techtarget.com/generic/0,295582,sid7_gci1164670,00.html,
retrieved 18 Jan 2009.
Chap2.fm Page 53 Friday, May 22, 2009 11:24 AM
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset