Backend as a Service (BaaS) has emerged as a different approach to back ends -- which comprise the servers, applications and databases that support an app's user-facing front end -- by introducing cloud services architecture to back-end processing. Although new, it already has dozens of vendors, including Kinvey, Parse and StackMob. As the BaaS market continues to grow, more development teams are taking note of the new kid on the mobile app block.
"BaaS is a compelling value proposition," said Gordon Van Huizen, research director at Gartner Inc. "It may prove to be an organization's first foray into the cloud."
Still, questions remain about the approach, and what role it plays in the development of mobile apps.
More resources on Backend as a Service
What is Backend as a Service (BaaS)?
BaaS, also known as mobile Backend as a Service (MBaaS), is a way of connecting mobile apps to cloud services. An alternative to mobile middleware, the BaaS approach uses unified application programming interfaces (APIs) and software developer's kits (SDKs) to connect mobile apps to back-end cloud storage. It also provides common back-end features such as push notifications, social networking integration, location services and user management, as well as the federation of back-end services.
What's the key difference between BaaS and mobile middleware?
The key difference between BaaS and mobile middleware lies in their approaches to back-end processing -- or, the ways in which the back end is connected to the front end of an app. Traditional mobile middleware integrates back-end services to the app via an on-premises, physical server. BaaS, on the other hand, integrates back-end services via the cloud.
How does BaaS affect mobile application development?
By moving the point of integration to the cloud, BaaS offers a new way to connect back-end services to mobile apps. Through the use of a unified API and SDK, BaaS connects the front end of the mobile app to various cloud-based services on the back end. This is a departure from typical mobile application development, which requires developers to incorporate the APIs of each back-end service individually.
How does BaaS affect developers?
Backend as a Service eliminates the need for developers to construct their own back ends. BaaS providers offer developers a ready-made, customizable back end that's already outfitted with common back-end features. As a result, proponents of the approach say it shifts developers' focus away from time-consuming, complex back-end development, and gives them more time to invest in front-end work such as user interface design. The scalability of mobile apps, which is a huge pain-point for mobile app developers, is also handled by BaaS providers; apps are scaled automatically, in the cloud, according to variations in the volume of users or traffic.
Who uses BaaS, and when do they use it?
Undertaking the construction of back ends can be a time-consuming and expensive. BaaS is an outsourcing option for development teams that don't want to spend time and money to build their own or train their front-end developers on back-end infrastructure.
What are the major concerns with BaaS?
Although BaaS set out to address the issue of vendor lock-in -- BaaS vendors say they give developers the flexibility to deploy and migrate apps wherever they want -- technology lock-in is still a major obstacle. It remains difficult to move the unique code that integrates back-end services to new platforms or providers.
Who are the BaaS vendors?
There are more than 40 Backend as a Service vendors in the market today. Among others, they include Appcelerator, Buddy, Cocoafish, FatFractal, Kii Corp., Kinvey, Parse, and StackMob. All of these vendors emphasize that their services speed up mobile app development, make it easier, work across multiple platforms and reduce the need for server-side code.
Follow us on Twitter at @SearchSOA.