Platform as a Service - PaaS
Platform as a service PDF Print E-mail
Platform as a Service - PaaS
Written by Administrator   
Monday, 26 October 2009 02:50

 

Platform as a service (PaaS) is the second pilar of Cloud Computing; it's usually built on top of IaaS (Infrastructure as a Service).

PaaS providers deliver fisical hardware, operating system and full service stack as a package and charge customers per use, as a comodization.

With PaaS all this computing layers are transparent and available to the programmer, this facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software.

PaaS provides all of the facilities required to support the complete life cycle of building and delivering SOA web applications and services entirely available from the Internet

 

In a PaaS offering all service options are in an integrated development environment, included within the actual target delivery platform. Thus, with source code control, version control, dynamic (interactive) multiple user testing, roll out and roll back with the ability to audit and track who made what changes when to accomplish what purpose.

 

Different PaaS offerings provide different combinations of services to support the application development lifecycle.

Many PaaS offerings include workflow facilities for application design, application development, testing, deployment and hosting as well as application services such as team collaboration, web service integration and marshalling, database integration, security, scalability, storage, persistence, state management, application versioning, application instrumentation and developer community facilitation; these adyacent services are provisioned as an integrated solution over the web.

 

Support for development team collaboration:

Form and share code with ad-hoc or pre-defined or distributed teams greatly enhances the productivity of PaaS offerings. Schedules, objectives, teams, action items, owners of different areas of responsibilities, roles (designers, developers, tester, QC) can be defined, updated and tracked based on access rights.

Paas Makes it easy and convenient to develop, test, deploy, host and maintain applications in the same integrated development environment.

 

PaaS offerings typically provide frameworks and some level of support to ease the creation of user interfaces, either based on standards such as HTML and JavaScript or other Rich Internet Application technologies like Adobe Flex.

Multi-user environments and scenarios can be defined, tried out by end users (instead of programmers).

Creation tools allow interfaces to be defined for different user profiles by function or expertise.

 

- Multi-tenant architecture:

PaaS offerings typically attempt to support use of the application by many concurrent users or groups of users, by providing concurrency management, scalability, failover and security. The architecture enables defining and managing the trust relationships between users at all levels.

 

- Integration with web services and databases:

Support for SOAP and REST interfaces allow PaaS offerings to create compositions of multiple Web services or Mashups as well as access and sharing of databases and reusable services.

 

Utility-grade instrumentation

PaaS offerings provide developers insight into the inner workings of their applications, and the behavior of their users.

Some PaaS offerings use information about user behavior, for example to enable pay-per-use billing, determine whether services are of value to users,

compare the value of different services, and track activity based costs and revenues.

Financial data collection and forecasting.

Analisys and visualization tools show usage patterns, exposing functional or correlational relationships between services or user interactions.

 

Add-on development facilities

These facilities allow customization of existing SaaS applications, and in some ways are the equivalent of macro language customization facilities provided with packaged software applications such as Lotus Notes, or Microsoft Word. Often these require PaaS developers and their users to purchase subscriptions to the co-resident SaaS application.

 

Stand alone development environments

Stand-alone PaaS environments do not include technical, licensing or financial dependencies on specific SaaS applications or web services, and are intended to provide a generalized development environment.

Application delivery-only environments

Some PaaS offerings lack development, debugging and test capabilities, and provide only hosting-level services such as security and on-demand scalability.

 

PaaS is in its early stages, and adoption is driven by many of the same features driving SaaS adoption. Additional, platform-specific factors include

The benefits of ad hoc, geographically distributed development teams working together on projects

The ability to incorporate web services from multiple sources

The cost reductions derived from using built-in infrastructure services for security, scalability, failover etc, rather than obtaining and testing and integrating these separately

The cost reductions derived from using higher level programming abstractions for creating services, user interfaces and other application elements.

The desire of people (users) to have evolving technology that can be continuously improved to support multi-user interaction to address the complex problems we face

To drive the use of technology that has a purpose of making it easier to develop interactive multi-user applications for people not just in development teams, but in any group of people doing things together.

 

 

Last Updated on Monday, 26 October 2009 04:31