Software as a Service or SaaS is already a common fixture in cloud computing. It describes software that can be used via an Internet con­nec­tion without the need for a local version. New services in the cloud are on the rise in areas such as web de­vel­op­ment too. In this article, we take a closer look at one such area – Backend as a Service.

What is Backend as a Service (BaaS)?

Backend as a Service is an area of cloud computing and refers to a hosted backend in­fra­struc­ture on the basis of which de­vel­op­ers can quickly and easily set up a backend. The advantage is that de­vel­op­ers don’t need to program the entire in­fra­struc­ture for a web ap­pli­ca­tion and can focus instead on designing the front end. Front-end de­vel­op­ers can also set up a func­tion­al server in just a few steps.

Fact

On the basics of web-based ap­pli­ca­tion de­vel­op­ment: Dis­tinc­tions are made between the frontend and the backend – both of which provide different func­tion­al­i­ties to create an ap­pli­ca­tion. In the frontend, users see the interface of the ap­pli­ca­tion, for example, in the form of menus, tables, graphics and text on a web page. In the backend, on the other hand, the functions of these elements and the server con­fig­u­ra­tions are defined. The frontend is designed in the backend. Using the example of a content man­age­ment system, text-graphics modules would be defined in the backend so that users can then compile content for web pages through text and images in the frontend. In this manner, the in­ter­ac­tion of backend and frontend results in a finished web ap­pli­ca­tion such as apps or online stores.

BaaS solutions contain a number of different functions such as automated backend updates, managed databases, user au­then­ti­ca­tion, and social log-ins.

Another example from cloud computing besides BaaS and SaaS is Function as a Service (FaaS).

How does Backend as a Service work?

The way the backend version works is similar to hosting a website. The BaaS provider delivers the ap­pli­ca­tion with different functions so that de­vel­op­ers can combine the available data to create an in­di­vid­ual backend. The de­vel­op­ers then access the backend con­fig­u­ra­tion via in­ter­faces issued by the service provider using APIs or a REST interface and design the ar­chi­tec­ture of the desired web ap­pli­ca­tion as required.

For larger providers, reg­is­tra­tion is suf­fi­cient to get started with a free starter package. Depending on your chosen provider, you may be able to register by using your Facebook or Google account. Generic reg­is­tra­tion steps include selecting the first ap­pli­ca­tion and the desired target platform, for example, HTML5, iOS or Android. The BaaS solution then generates API keys and, depending on the provider, JavaScript libraries are created and ad­di­tion­al standard functions are defined.

Advanced de­vel­op­ers will usually not need any training to configure the backend. Setting up the backend via BaaS is quick and easy.

What are the pros and cons of Baas?

Backend as a Service can simplify and ac­cel­er­ate app de­vel­op­ment. But BaaS is not nec­es­sar­i­ly the right choice for all scenarios.

Ad­van­tages of Backend as a Service

  • The main advantage of the vendor solution is the simple con­fig­u­ra­tion of the backend. In just a few clicks, you can create, for example, templates for tables. Database con­nec­tions are also taken care of.
  • Another advantage is the backend main­te­nance which is the re­spon­si­bil­i­ty of the service provider.
  • BaaS solutions can be cloud-based which means in­fra­struc­tures can be managed in­de­pen­dent of your location or server location.
  • At the same time, des­ig­nat­ed backend de­vel­op­ers are no longer needed, which renders the often time-consuming com­mu­ni­ca­tion between frontend and backend a thing of the past, saving both time and money.
  • Since BaaS models are pre­dom­i­nant­ly pay-as-you-use, users only pay for the con­tin­gents they require. Providers tend to offer different package levels (similar to hosting packages) so that users get an overview of costs in advance. Man­age­able con­tin­gents also make Backend as a Service solutions suitable for smaller companies that aren’t able to implement their own backend de­vel­op­ment due to limited resources.
  • Scal­a­bil­i­ty is a decisive factor when it comes to web ap­pli­ca­tions and can impact costs majorly. At first glance, Backend as a Service offers an advantage, since scaling and handling are the re­spon­si­bil­i­ty of the BaaS provider or are specified by the provider and may be carried out au­to­mat­i­cal­ly. This means that the server doesn’t need to be upgraded or migrated manually. Depending on type and scope, packages may include standard functions, such as sending push messages, coverage of iOS and Android, and access to social media functions from Facebook or Twitter.

Dis­ad­van­tages of Backend as a Service

  • As a result of the point made before, un­fore­seen costs can arise due to automatic scaling if, for example, the number of incoming requests and required data storage quan­ti­ties are unknown or far exceed estimated values. In contrast, ca­pac­i­ties and as­so­ci­at­ed prices are known in advance with dedicated servers. The costs of BaaS beyond a basic package are harder to estimate in advance, making it difficult to compare the costs.
  • Security aspects, for example in the form of regular storage of server data, vary from one provider to another. Users should figure out well in advance what the BaaS provider’s storage cycles are to ensure that the data is backed up at the required intervals. This also includes backups in the event of a server failure. Check with the provider in advance how soon after a failure a server is usable again and which data is backed up in the event of failure. Where user data is collected and processed, pro­tect­ing sensitive in­for­ma­tion must be a top priority.
  • Another dis­ad­van­tage arises when switching from a Backend as a Service provider to a new service provider. This is because the providers use their own server interface and software de­vel­op­ment kits, thus storing the API, drivers, or network protocols in separate locations. In that case, it’s not enough to change a server address or redirect incoming requests. In addition, there are different im­ple­men­ta­tion ap­proach­es de­vel­op­ers may prefer. Often, a backend has to be re-im­ple­ment­ed when switching providers.
  • Server locations tend to differ depending on the provider. This may hamper your BaaS ambitions or reduce your choice of potential provider. For example, if server locations in the EU are an important criterion for you.
Go to Main Menu