By Lisa Guerriero
Speed is essential to application (app) development, deployment, and execution. A delayed release can devastate even veteran enterprises. Enterprise application platform as a service (enterprise aPaaS) goes beyond traditional IT to manage and expedite apps, minimizing complexity, and improving time to market in the cloud.
Enterprise aPaaS is a subset of aPaaS. In its January 2014 Magic Quadrant for Enterprise Application Platform as a Service, Gartner defines application platform as a service (aPaaS) as a platform as a service designed to enable runtime deployment, management, and maintenance of cloud business application services. The same report defines enterprise aPaaS as a solution designed to support the enterprise requirements for business applications and application projects.
The cloud model makes aPaaS readily accessible to enterprises and ideal for fast application deployment. “Enterprises benefit from speed, agility, and scalability when developing mobile, social, and analytic applications, especially as they pivot to taking advantage of big data,” notes Thomas Cozzolino, principal architect evangelist, developer relations, Salesforce.
An aPaaS solution’s fundamental job is to support deployment and execution and provide tools for development and lifecycle management with high availability. Enterprises require varying levels of self-service functionality and typically require aPaaS API management and cohesion among existing and new components.
IDC predicts public cloud spending will reach $127.5 billion by 2018, according to its Worldwide and Regional Public Cloud IT Services 2014-2018 Forecast. The research firm describes PaaS—a category that includes aPaaS—as one of the fastest growing segments of the market.
In regards to aPaaS growth, enterprises are now more comfortable with cloud models, suggests Alfonso Ríos Alonso, director of the Cloud Technology Center, Indra Sistemas S.A. “The flexibility, productivity, and low cost associated with a PaaS model are very attractive motivators to the aPaaS offering,” he says.
Advantages of Enterprise aPaaS
Enterprises continuously evolve their business models to keep up with advancements in digital technology. Even with IT on staff, this conversion poses challenges.
“In order to survive and thrive, every company must become a software company,” suggests Kirby Wadsworth, CMO, Mendix. For the enterprise, aPaaS provides a path to transform ideas into apps and enable this transformation.
Development and deployment is no longer as simple as releasing a desktop application. Adapting for mobile, the internet of things (IoT), and big data drives enterprises to adopt aPaaS. The infrastructure and integration required to support these innovations is often costly and complex.
“Mobile is the ‘pointy end of the stick,’ and it is becoming the forcing function for organizations to take a hard look at how they create, deploy, and manage applications across all of their platforms—Web, mobile, wearables, etc.—in the most efficient, cost-effective manner possible,” observes Sean Allen, product strategy director, OutSystems.
aPaaS balances development and operational requirements including application creation as well as managing the process. Solutions provide a diverse catalog of services, API management tools, and runtime options to facilitate application creation. Integration capabilities and management provisions enable the enterprise to effectively move through the lifecycle.
“aPaaS provides developer independence through self service, while operations can maintain control over the cloud system, delivering scalable, containerized applications that are orchestrated across the environment in a sane and manageable manner,” explains Ashesh Badani, GM/VP, OpenShift, Red Hat.
Enterprise-grade aPaaS supplements core services with technical support, disaster recovery, and security features. Users are limited by enterprise regulations and policies governing security and data storage. IBM observes that some firms pursue on premises PaaS to resolve security concerns. This approach requires the adopter maintain data centers, servers, and personnel—which is costly or simply not feasible for many platform users.
“The optimal solution is a single platform with the same DevOps tooling, user interface, services, and visibility across public, private cloud, and on premises in a single solution,” suggests Megan Swanson, director of IBM Bluemix.
Cloud-based models enable flexible billing. Enterprise aPaaS is often on a subscription basis, although pay-as-you-go consumption models are also available.
Vendors offer up to 99.95 percent availability in the service level agreement (SLA). The SLA typically covers the key services separately, but more vendors now offer agreements for the entire solution, including connectivity between the components. Jordan Barrette, director of business development, MIOsoft, recommends enterprises look for a vendor that will customize SLAs.
“Every user’s case is different, and you will probably want different SLAs for different groups of applications, at different points in their respective application lifecycle,” he says.
While all aPaaS solutions perform the same core function—supporting application development and delivery—solutions offer different approaches and provide varying levels of enterprise control.
The foundation of Google’s aPaaS offering is the Google App Engine, which supports the Go, Java, PHP, and Python languages. The company now has a managed virtual machines (VMs) option, which aims to provide a hosting environment with additional flexibility and more CPU and memory options. The platform combines Google’s cloud strength with enterprise-specific features, including API management, security support, and disaster recovery options. The App Engine SLA offers 99.5 percent availability. The managed VM hosting environment remains in beta as of press time, and is not covered by SLAs.
IBM delivers its Bluemix cloud platform—which includes its aPaaS offering—as a single, integrated offering across public, private, and on premises cloud. It integrates Cloud Foundry and OpenStack, and earlier this year IBM enabled Docker support for application portability and lifecycle management across clouds. Bluemix also incorporates standards for numerous languages, including Java, Node.js, Buildpackers, and Ruby. The platform provides API management and flexible connectivity between data centers and clouds.
After launching Bluemix as a pure public cloud PaaS offering, IBM Bluemix Dedicated is designed to meet the privacy needs of enterprise clients. It runs on the IBM Cloud, but allows customers’ Bluemix workloads to run on dedicated VM instances. The company plans to introduce Bluemix Local this Fall, an on premises deployment of the platform and services that runs on the enterprise customer’s data center.
“Partners are using the Bluemix platform as the basis for white-labeled application development for their application customers, rather than maintaining data centers and application toolsets themselves—citing the ease of use and the breadth of runtimes and complementary services,” explains Swanson.
At the core of Indra Sistemas’ GPaaS Suite is an application server, a graph-oriented database, an infrastructure manager, and a solutions marketplace. The suite is available as high-control, cloud-native aPaaS or as on premises, cloud-enabled software. “GPaaS is focused on a hybrid model combining the advantages of public and private clouds to offer solutions,” notes Ríos Alonso.
The Indra Sistemas’ GPaaS Suite is an agnostic platform that offers numerous features—including multitenancy, scalability, elasticity, high-availability, monitoring, security, compliance with standards, and deployment capacities across several infrastructures.
Indra Sistemas’ goal is to provide unified management for the deployment, execution, and use of applications. It also works closely to help enterprises define the best strategy for moving to the cloud and ease the transition of non-native applications to the cloud.
Mendix leverages a visual, model-driven approach that enables application creation and deployment for professional developers as well as less technical rapid developers without labor-intensive coding. It also focuses on involving stakeholders throughout the lifecycle. “Our platform brings business and IT together to build and deploy innovative applications six times faster and with 70 percent fewer resources than traditional approaches,” says Wadsworth.
Mendix supports the entire application cycle—with capabilities for design, development, testing, deployment, and application management. The platform’s cloud-native architecture is optimized for automated deployment. It is fully portable, running on third-party public cloud platforms, private clouds, and on premises. Its open architecture allows users to integrate virtually any existing application, cloud service, and file system using open standards.
Microsoft emphasizes a “cloud first” approach, combining two of Azure’s staples. Azure App Service enables enterprise-grade Web and mobile applications for Apple iOS, Android, and Windows. Azure Cloud Services offers scalability, support for Java, Node.js, PHP, Python, .NET, and Ruby, and 99.95 percent monthly SLA. Because its aPaaS is part of its larger cloud computing platform, it offers a variety of additional PaaS and infrastructure as a service capabilities.
MIOsoft offers MIOedge, a unified aPaaS development and delivery platform for data-driven applications. The company specializes in developing and scaling applications that rely on big data from many sources. “Our customers are driven to aPaaS because they recognize the popular method of gluing together discrete components, essentially attempting to build your own platform and then building apps on top of that, leaves too much margin for error,” observes Barrette.
MIOsoft includes over a decade of research and development for advanced data synthesis, including entity and relationship discovery technologies. It features integration capabilities, self-service development and management tools to support the rapid application delivery lifecycle. It offers flexibility on where the application runs—a specific vendor’s cloud, a specific physical location, or even in the customer’s own data center.
OutSystems offers an enterprise rapid application delivery (RAD) platform design to enable developing once for all devices. It focuses on simple development that allows for seamless delivery across iOS, Android, Windows Phone, and Web—deeply integrated with existing cloud and on-premises databases and systems of record.
Available as a public cloud, private cloud, and on-premises solution, OutSystems’ RAD platform enables fast delivery and changes to large application portfolios. It allows developers to model all aspects visually, without any low-level coding. “aPaaS solutions should make it easy to create beautiful user interfaces, fully functional databases, APIs, Web services, workflows,” suggests Allen.
OutSystems’ RAD approach makes it ideal for mobile and customer-facing apps. The platform’s features include easy integration, full lifecycle management from development to governance, scalability, and security.
Red Hat offers several versions of its open-source OpenShift platform—public cloud, private cloud, or hybrid cloud—allowing customers to leverage a hybrid cloud architecture or migrate from a private to public cloud over time. Features of the polyglot platform include elasticity, security and data privacy, secure multitenancy, and autoscaling.
A Linux platform, OpenShift now supports native Docker containers, and recently adopted Kubernetes as an orchestration layer. The latest release of OpenShift Enterprise 3 “provides a secure, efficient, and portable way to develop, deploy, and run application services. OpenShift users can access the broadest ecosystem of packaged application components,” says Badani.
OpenShift provides developers with a Web console, CLI, and the Eclipse IDE interface for developing applications. It offers GIT integration for managing source code and integrates Maven and other dependency management solutions, as well as a Jenkins service for continuous integration.
Salesforce’s App Cloud is a complete platform. It provides all components needed for application building, including infrastructure, architecture, database, servers, networks, and security. “For developers, IT departments, and business users, it provides the tools for fast application development, as well as the services and APIs needed to integrate and connect data from other sources, including Oracle, SAP, MSFT, and even connected products and devices,” notes Cozzolino.
App Cloud is designed for both professional developers and business users. Developers use the company’s multi-language, open source framework, while businesspeople use the component-based application development approach. With this toolset, application creators build applications by simply dragging and dropping components, “like snapping together LEGO blocks,” adds Cozzolino.
Salesforce has an underlying metadata model that allows developed components to fully leverage the security and access, social, and workflow capabilities of the App Cloud—dramatically reducing the amount and complexity of code required.
Emphasis on Enterprises
Application development and delivery can be a time- and resource-consuming endeavor. aPaaS is a growing subsection of PaaS because it offers a practical way to manage the process. Enterprise organizations represent an ideal customer segment for these platforms, as these businesses greatly benefit from development tools as well as well as management and integration features that enable them to move to the cloud faster and more effectively. SW
Dec2015, Software Magazine