The Next Evolution in Web Apps - Platform-as-a-Service _PaaS_

Document Sample
The Next Evolution in Web Apps - Platform-as-a-Service _PaaS_ Powered By Docstoc
					S

P

O

N

S

O

R

E

D

B

Y

Bu n ge e L abs | ht tp ://bu n ge e labs . c om

White Paper

The Next Evolution in Web Apps: Platform-as-a-Service (PaaS)
By Dion Hinchcliffe

Copyright 2008. All Rights Reserved.

The Next Evolution in Web Apps

Executive Summary
Although the Web has evolved into the most efficient way in history for individuals and companies to access and share data, it doesn't always live up to its true potential. For every Web-based application or Web site that delivers a rich, intuitive user experience, many more lack true interactivity and require multi-step, multi-page processes to complete simple business transactions. Those IT departments that can justify the expense invest tens (or hundreds) of thousands of dollars to patch together and manage many technologies using multiple languages in order to create a single online application -- yet the results may only approach the ease of use and interactive experience consumers expect. Instead of looking for ways to make inadequate technology work better, businesses can bypass these problems by moving the entire Web application lifecycle to an online unified development and deployment platform. This new approach, called Platform-as-a-Service (PaaS), unlocks the Web's full potential by using a Web-native platform to create and deliver applications in the same environment in which they're meant to be used. Bungee Connect from Bungee Labs is a comprehensive PaaS offering businesses the ability to leverage the power and ubiquity of the Web to develop, test, deploy, host, and maintain online applications in a single, integrated environment. The Bungee Connect PaaS accelerates development, improves access to data, enhances collaboration, eliminates provisioning and management of infrastructure, and allows developers to focus on creating a higher level of functionality, without compromising control over data. The result: richer, more intuitive applications that reach more end users, for a significantly higher return on investment (ROI) and lower total cost of ownership (TCO).
Use Platform-as-a-Service to leverage a highly integrated, collaborative Web-based platform that will cost effectively scale.

W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )


Sponsored by Bungee Labs

2

The Next Evolution in Web Apps

Background: Key trends in Web applications
1. The Web as rapidly evolving platform. In an astonishingly brief timeframe, the Web has become as ubiquitous and basic a utility as electricity or telephone service. It's easy to use, with multiple browsers and devices that work on any operating system and require minimal technical knowledge on the part of the end user. It is broad-based, with tens of millions of authors creating hundreds of millions of applications, sites, and pages. It's standardized, with hundreds of rendering and authoring tools all based on widely supported standards like HTML and JavaScript. The Web also continues to expand in power and capability as vendors like Adobe (Flash) and Microsoft (Silverlight) release proprietary extensions to their respective platforms. Unsurprisingly, this has enabled many freestanding applications and even analog functions to migrate to the Internet, creating a single global network with multiple uses. This also leverages the often enormous economies of scale and operational competencies that Web-based firms can bring to bear for their customers. 2. Interactive media and powerful services "in the cloud". The Web has grown and evolved so rapidly that online applications that were barely functional five years ago, like full-featured telephony and embeddable video, are commonplace today. The entire concept of Software-as-a-Service (SaaS) is now commonplace among some solutions, particularly CRM, entertainment, and storage, and is becoming a focus among almost every market sector. Indeed, users are coming to expect that local and online capabilities will soon be more or less indistinguishable. 3. Emphasis on simple programming tools and standards. Given users' growing expectations of seamless interactivity, businesses must be able to develop and deploy applications as quickly as possible in order to maintain a competitive advantage. The current generation of programming tools and standards is streamlined and simple to facilitate fast progress from development through testing and on to deployment. In addition, software assets that are hosted elsewhere free up IT managers from needing to install, maintain, back up, or secure them in-house -- and therefore allow them to invest their time and budget on projects that more directly affect the bottom line or differentiate the business.
W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )
 Sponsored by Bungee Labs

3

The Next Evolution in Web Apps

4. Programming as an assembly of existing modules. Just as the Web 2.0 era has taught us that applications have more value and power when they leverage access to other applications and data, it has revealed that developers can do more in less time when they exploit the successful offerings of other content developers and service providers. This process of combining the best parts of existing projects to create something new (often referred to as "mashups") allows rapid innovation and market response, even on a minimal development budget. One well-known building block for "mashups" is Google Maps. Imaginative developers began to combine it with other APIs almost as soon as Google made it possible, resulting in popular new applications like these: •
 HousingMaps.com, which maps property rental and sale listings from Craigslist and allows users to sort and filter them by criteria such as location, price range, number of bedrooms, and even whether pets are allowed. •
 WeatherBonk, which populates Google maps with real-time weather data, radar and satellite readings, Webcams, and forecasts from multiple sources. •
 A tool on the leading photography sharing site, Flickr (flickr.com), that allows people to pinpoint the exact location where they took a photograph and find other photos taken in the vicinity (or, indeed, anywhere else on earth.)

What is Platform-as-a-Service?
Platform-as-a-Service (also known as PaaS) is the "sweet spot" where these four trends come together and converge into a meaningful solution to a variety of development challenges. Now that the Web itself is as available and standardized as the electrical grid or the telephone system, it is capable of including all the systems and environments comprising the software lifecycle: prototyping, developing, testing, deploying, and hosting. This changes the entire process of creating a Web application. In short, using the Web itself as the application development platform is the next logical evolution of software and computing "in the cloud."

W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )


Sponsored by Bungee Labs

4

The Next Evolution in Web Apps

What issues does PaaS address?
Surprisingly, much of today's Web is still based on static pages and limited dynamic content. Despite the shift to embedded functionality and live documents bound to servers, consumers still can't seem to get the maximum interaction in the minimum number of pages. As innovative as Amazon.com has been in most areas of e-commerce, placing an order still takes users six separate pages, and two more to revise it. If you're looking for a hotel in New York City, Expedia.com will happily deliver results -- 16 pages of them. It takes several additional pages to refine that data set to a manageable size, and more to check availability and complete a booking. Unsurprisingly, users find this frustrating.

Start

Finish

Customer

Figure 1: Traditional Web apps have a cumbersome click-and-wait page view model The page-based Web is just as frustrating for developers. In most cases, the more complex the experience or transaction a business wants to deliver through its site, the more different types of technology its developers will have to understand and piece together to deliver results. It's not unusual for a single application to involve multiple technology solutions, from Ajax Libraries and Web services to Linux, Apache, MySQL, PHP and more. What's more, modest applications don't always scale as they grow and developers bolt on more parts. In the end, this patchwork approach to Web IT is like building a custom car just to go for a drive: it costs a lot, it might not
W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )
 Sponsored by Bungee Labs

5

The Next Evolution in Web Apps

get very far, and if something breaks, none of the parts are under warranty and no single vendor is responsible for repairs.

Browser Clients

Development Tools

Management, Monitoring, Security

Databases and Web Servers

Network Infrastructure

Content Replication

Figure 2: The many moving parts of modern Web development and hosting environments But that's not the only problem the page-based Web poses for developers. Creating a rich, interactive site takes time. Developers must collaborate with designers, content providers, and the users themselves, and the collaboration must continue over time. The more people involved in development, the more opportunities for something to Definition: State. What an application knows about users, their version into production. current interaction with the application, what information they Then there's the problem of state management. In a live en- have entered to date and so on. vironment, data changes constantly, both within individual State management. The process of transactions and over the course of a day. It's hard to predict tracking this information as users how that will affect an application built and tested in an en- move from one transaction or page to the next. vironment using static data sets. break, for code to get lost, or for someone to put the wrong
W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )
 Sponsored by Bungee Labs

6

The Next Evolution in Web Apps

Finally, developing applications under these conditions is, in a word, expensive. The process is time-consuming, requires developers with domain expertise in many areas, and distracts IT from projects that actually create strategic value for the application or the company. Yet toolkit providers, infrastructure providers, and Web hosts all insist on being paid whether or not a Web application actually works. Businesses can theoretically end up paying for the software lifecycle several times over before they achieve a useful result.

How PaaS solves these issues
Cutting development and maintenance costs Today, developers often custom-build a development environment before they even begin to code. Then they test the application in another environment and move it to a third for production. At every stage, the business must build, configure, and maintain these separate environments -- and the developers must cycle through all three repeatedly as they address bugs, add features, and integrate additional data. In the conventional software development model, these significant expenditures of time and money are simply seen as part of the cost of developing an in-house Web application. PaaS, on the other hand, dramatically reduces costs while speeding up the software cycle: •
 Companies can leverage their existing IT infrastructure and high-speed Internet connection at every stage rather than create and configure multiple environments. •
 Developers can debug and test in the same environment as production deployment without uploading or compiling, for faster development iterations. •
 Developers can continue to use existing tools to create REST or SOAP-based Web services, while also modifying and extending PaaS components with Ajax controls in the same application. •
 Applications move from one stage to the next (from prototype to development, from development to testing, and from testing to deployment) with a single command, for faster time-to-market. •
 Managers can more easily track and audit workflow throughout the lifecycle because it all takes place on a single "always live" platform.
W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )
 Sponsored by Bungee Labs

7

The Next Evolution in Web Apps

Unified PaaS Platform
Dev Environment Application

Hand-Built Traditional Platform
Vendor A Dev Tool

Community Ecosystem PaaS Runtime Web Server Persistence Web Services Vendor F Hosting Firm

Vendor B App Server

Vendor C Version Management Tool

hand-wiring
Network Infrastructure Hosting Vendor E Database Vendor D Database

Built, tested, assembled, and scaled Integrated from parts with multiple, competing owners

Figure 3: PaaS greatly simplifies the process and infrastructure for creating Web applications Living up to user expectations Consumers have come to expect seamless, fully interactive online experiences that don't require them to download software, install plug-ins, reconfigure local settings, or use a particular browser to achieve their desired results. If a Web application can't deliver, it doesn't matter how much money and time you saved in developing it. Using PaaS to build applications in the same medium in which they will run makes it easier for developers to test, troubleshoot, and tweak them in multiple configurations -- so end users don't feel like the final stages of development are on their own shoulders. Tighter integration with other online services and databases Many Web applications, from real-time weather reports to e-commerce order systems, rely on the ability to pull live data from external sources elsewhere on the Internet -- sometimes multiple sources that are updated at intervals of less than a second. Working with PaaS facilitates connectivity to all those sources, while simplifying the task of writing the "glue" code to knit them into a single application, because every resource is Web-based. PaaS must also include

W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )


Sponsored by Bungee Labs

8

The Next Evolution in Web Apps

state management capabilities that enable applications written on Definition: Multi-tenancy. the platform to check and update connections to external sources automatically. Built-in scalability, reliability, and security Applications delivered via PaaS use time-tested existing online of both data and money, all without additional development or configuration. And because the Web itself is designed to accommodate hundreds of thousands of users simultaneously, PaaS also supports multi-tenancy throughout development as well as after deployment. If developers are going to trust PaaS, providers must also be able to guarantee high-quality hosting and services through multiple data centers co-located in secure high-performance hosting centers -- not to mention contingency plans for traffic spikes and sustained surges in network demand. Improved collaboration among developers When developers must use separate facilities to obtain, package, and share reusable source code and software components, it's easy to misplace source code and associated intellectual property. As they pass around various iterations of an application in process, they may even accidentally discard the latest version and force teammates to repeat already completed work. With PaaS, An application's ability to keep the stored information of an arbitrary number of multiple users separate and accurate at all times. Effecrobust multi-tenancy.

technologies to support Web-scale use and allow secure exchange tive PaaS platforms enable

Using computer networks for collaboration isn’t new, but is underutilized on many software projects. PaaS can enable collaboration scenarios out of the box such as: • Common repository and versioning • Communication and collaboration tools • The support of a greater development community using the exact same platform.

Figure 4: PaaS can enable higher levels of network collaboration and productivity

W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )


Sponsored by Bungee Labs

9

The Next Evolution in Web Apps

individuals and teams can work in a single secure collaboration space including source management facilities, which significantly increases productivity and reduces costs while minimizing project risks. And because every member of the development team is working on the same platform, regardless of the stage of the software lifecycle, they can easily share ideas, request advice, and collaborate without adding an additional layer of software. In addition to facilitating collaboration within a team or business, PaaS also makes it possible for developers around the world to exchange components or entire applications built on that platform, with no worries about integration or compatibility. Deeper insight into user activity When all activity takes place within a single hosted platform, it's easier Definition: Instrumentato instrument multiple aspects of application and user activity. This lets companies monitor precisely how users interact with Web applications -- which in turn helps them fine-tune their marketing and communication strategies and adjust the Web applications accordingly.
tion. the ability to measure, manage, and improve the way a software product functions.

Data about who uses online applications can also help businesses negotiate more favorable prices for products and/or services they buy or sell. For example, a business offering a popular "mashup" application for taking sales orders could charge per actual use instead of potentially undercharging for a flat-rate subscription. At the same time, a company wanting to embed that application in its own site might propose to pay for it based on the average monthly number of completed orders rather than an annual licensing fee based on inaccurately high usage estimates. For both companies, the application delivers a high ROI at a reasonable TCO. Moreover, in a global business environment with multiple regulations and legal mandates for compliance, the ability of PaaS to trace and audit application usage automatically is inherently valuable. The more easily companies can determine who is using their applications and how, the faster they can prove regulatory compliance on demand. Pricing based on actual use PaaS providers themselves can use enhanced instrumentation capabilities to provide a more efficient pricing model. Instead of requiring companies to pay for hardware, software, toolsets, and server space regardless of results, PaaS makes it possible to track use of both the platform and the end results so companies pay only for the resources that actually benefit them.
W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )
 Sponsored by Bungee Labs

10

The Next Evolution in Web Apps

The End-to-End PaaS Platform: Bungee Connect
The first true PaaS for the professional developer The Bungee Connect PaaS from Bungee Labs is a single environment where companies can create, manage, update, and deliver Web applications online. It works without downloads, without installation -- and without cost until finished applications are in use. Bungee Connect is based on Bungee Logic, an object-oriented language similar to C-style syntax with native access to a large library of components specifically designed for use in interactive Web applications. When developers sign up for a free Bungee Connect account, they find videos and tutorials that explain the basics so they can start building rich, live applications right away. They also have access to a documentation wiki, online forums, and live developer events, all opportunities to learn from and offer feedback to both Bungee Labs' engineers and fellow Bungee Connect developers. Using the Bungee Connect PaaS lets developers take a fully interactive Web application from concept to deployment as much as 80 percent faster -- for happier end users, and more of them. For example, Bungee Labs has created an application called WideLens that enables users to view all their calendars -- iCalendar, Microsoft Exchange, Google Calendar, SalesForce.com, Facebook -- on a single Web page that automatically refreshes, so they never miss an appointment or reminder. WideLens uses multiple protocols and authentication schemes, including WebDav, gData, REST, SOAP, and others, to consolidate all these sources in real time. In another environment, this might take the better part of a year. Bungee Connect did it in just 13 weeks, including one day to integrate data from Facebook and just three hours to integrate data from SalesForce.com. Bungee Labs also hosts an online community where developers can share components built with the Bungee Connect PaaS. Yet the intellectual property created in Bungee Connect belongs to the creator, not Bungee Labs. What the Open Source community has done to boost innovation in infrastructure solutions, this has the potential to do for applications and application components. Developers can leverage the work of others to create new applications, add functionality without additional coding, and shorten time to deployment. Bungee Connect applications are powered by the interactive Bungee Pulse coordination system, which combines a very thin client-side Ajax implementation, a comprehensive server-side subW h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )
 Sponsored by Bungee Labs

11

The Next Evolution in Web Apps

system within Bungee Grid runtime servers, and an intelligent interaction protocol that enables continuous application state management and fluid interactivity with Internet Explorer, Firefox and Safari (Webkit). This is all invisible to end users; to run a Bungee-powered application, all they need to do is launch their browser of choice. In fact, they're most likely to encounter a Bungee-powered application embedded seamlessly in another Web page.

Productivity Levels of Different Development Models

Custom Built

SOA

LAMP Stack

Rails

PaaS

Figure 5: PaaS offers the most efficient model for building and operating Web applications For IT managers, the Bungee Connect PaaS currently provides data on total application sessions, unique user sessions, current running sessions, and peak and current sessions, as well as other key metrics. The completely hosted environment allows businesses to instrument any application on demand, automatically. Bungee Connect is dependable. Data centers at co-location facilities in Denver and London ensure uptime. Bungee Labs has also entered into a beta-testing agreement with Amazon to evaluate and test Amazon's Elastic Computing Cloud (EC2) as backup when Bungee Grid reaches predetermined load thresholds.
W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )
 Sponsored by Bungee Labs

12

The Next Evolution in Web Apps

Finally, Bungee Connect is affordable. The development process, including coding, testing, and beta programs, costs nothing. Bungee Labs bills based on use of Bungee-powered applications, based on calculations of the demand the application places on the Bungee Connect network, and billing only begins after a developer registers within Bungee to deploy an application. The deployed application console in each Bungee Connect account delivers details on total application sessions to date, current running application sessions, peak concurrent sessions to date, and unique users to date. This makes it easy to track usage and estimate bills. The deployed application console also lets managers control billing by limiting who is allowed to publish, update, replace, or remove an application. In short, instead of focusing on building and maintaining in-house development, testing, deployment, and hosting platforms, with all the fixed costs that entails, moving development and delivery to a 100 percent hosted PaaS like Bungee Connect lets developers and IT managers spend time more productively: creating highly interactive embedded Web applications that simply work.

“Using the Bungee Connect PaaS lets developers take a fully interactive Web application from concept to deployment as much as 80 percent faster.”

About The Author - Dion Hinchcliffe is a well-known business strategist and enterprise architect, who speaks, writes, and works prolifically hands-on with clients in the Fortune 500, federal government, and the Internet startup community. He has extensive hands on experience building and deploying large-scale, next generation Web applications. Mr. Hinchcliffe also helps lead the industry by evolving the thinking around Web 2.0 in the enterprise on ZDNet and Social Computing Magazine and was founding Editor-in-Chief of the respected Web 2.0 Journal. He has been quoted by BusinessWeek, CNET, Wired Magazine, CIO Magazine, and many other well-known industry periodicals. Mr. Hinchcliffe is also is a regular keynote speaker on the topics of Web 2.0, SOA, and Enterprise 2.0 and has presented or keynoted at Web 2.0 Expo, Business Integration Forum, Interop, JavaOne, SOA Web Services Edge, Collaboration Technologies Conference, AjaxWorld, Office 2.0, and other major business and software conferences. He is also the founder of Web 2.0 University, the world's leading education solution around Web 2.0 as well as The Enterprise 2.0 TV Show.
W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )
 Sponsored by Bungee Labs

13

The Next Evolution in Web Apps

About Bungee Labs - Bungee Labs is creator of the Bungee Connect™ web application development and hosting platform-as-aservice (PaaS), a single environment for building and delivering a new class of extremely interactive rich web applications. Bungee Connect eliminates significant time and cost across the entire application lifecycle. Organizations use Bungee Connect to build highly interactive web applications, then instantly deploy them on a highperformance multi-tenant grid infrastructure. Bungee Connect's immediate access, integration and presentation of public and private web services empower developers to create deeply interoperable, data-driven applications with rich interactivity — achieving highly interactive user experiences without the typically complex programming of web service integration, Ajax interaction, web application state management, and deployment provisioning. Bungee Connect significantly improves the full lifecycle of web applications through: * a broadly available development environment (Bungee Builder™) * an grid-level distributed delivery infrastructure (Bungee Grid™) * an active developer community (Bungee Connect Developer Network™) Bungee Connect and all Bungee-powered web applications are fully supported in Firefox, Internet Explorer and Safari, enabling developers and application users to work where and how they want. Bungee Labs is based in the Salt Lake City area and is capitalized by venture financing from North Bridge Venture Partners, Venrock Associates and Wasatch Venture Fund. Bungee Labs can be found online at http://bungeelabs.com.

W h i t e P a p e r | U n d e r s t a n d i n g P l a t f o r m - a s - a - S e r v i c e ( P a a S )


Sponsored by Bungee Labs

14


				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:78
posted:8/30/2009
language:English
pages:14