Ken North is an author, consultant and industry analyst. He teaches seminars and chaired the XML Devcon 200x conference series, Nextware, LinkedData Planet and DataServices World 200x conferences.
Paradigm shifts in computing are sometimes marked by organic growth as new platforms and tools pop up. So it is with cloud computing as Platform-as-a-Service (PaaS) solutions help accelerate adoption of the cloud model. Without a capital outlay, PaaS enables developers to create social, business and other applications and enables independent software vendors (ISVs) to create Software-as-a-Service (SaaS).
PaaS solutions have particular appeal for startups, projects with ambitious deadlines, and organizations with a limited budget for capital expenditures. PaaS can remove the capital expenditure roadblock without the burden of diminished functionality. The richness and variety of development environments is one reason the PaaS model has appeal for system integrators and developers, particularly those building web applications. Suites such as SAP and Epicor will undoubtedly increase cloud adoption among business users, but PaaS has much to offer today to those who are building and integrating systems. PaaS users can create custom solutions and make full use of business process modeling, workflow tools, object modeling, data modeling and packaged applications.
Developers whose expertise is Service Oriented-Architecture (SOA), Web-Oriented Architecture (WOA), enterprise or Windows application development can find a cloud solution that lets them leverage their expertise. They can host existing tools and applications in a private cloud or use a cloud infrastructure provider such as Amazon EC2 and Terremark vCloudExpress. Some may choose the PaaS option because it can provide a rich tool set without a large capital outlay. PaaS can take several forms, including platforms for creating social, enterprise, database, analytics, reporting, office suite integration, and other applications. Companies such as NetSuite and Salesforce.com first released a SaaS product and then followed up by offering the underlying platform as a service. Other PaaS offerings include Aptana Cloud Connect, GigaSpaces XAP, Google AppEngine, LongJump, Microsoft Windows Azure, Rackspace Cloud Sites and Zoho Creator.
With a variety of application suites, development platforms and deployment environments, PaaS provides a range of choices for the public and private cloud. Some platform providers offer a catalog of existing applications and model-based or template-based creation of new applications. Others offer suites for business process modeling (BPM), customer relationship management (CRM), or enterprise resource planning (ERP). There are platforms that offer proprietary technology for development and deployment and various PaaS providers offer a Java, .NET, and Web 2.0 development environment.
Notable differences between traditional enterprise computing and cloud deployments include elasticity, location independence and multi-instance or multi-tenant applications. Servers can be located in different locations, even different geographical regions and an application doesn't know the location of resources it uses. Implicit with a robust cloud application is elastic processing power and storage, load balancing, server failover and running in a virtualized environment. There are web services APIs for invoking cloud services and tools for monitoring applications in the cloud. Multi-level security should be integral to the architecture of cloud applications that require access to confidential data.