BT

Experimente a nova interface visual do InfoQ! Veja o novo design do InfoQ 3.0 e nos diga o que você achou.

Backend as a Service: Prós e Contras

| por George Batschinski Seguir 0 Seguidores em 05 jul 2016. Tempo estimado de leitura: 5 minutos |

Um BaaS pode ser visto como uma ponte conectando o backend e o frontend de uma aplicação. Os BaaS auxiliam os desenvolvedores a acelerar a criação de aplicações web e mobile e simplificam a criação de APIs. Em vez de codificar o backend inteiro, o desenvolvedor usa o BaaS para criar as APIs e conectá-las às aplicações.

Por que utilizar um BaaS?

Backend-as-a-service (BaaS) é um serviço de computação em nuvem que serve como middleware. O mesmo fornece aos desenvolvedores uma forma para conectar suas aplicações mobile e web a serviços na nuvem a partir de APIs e SDKs. O link abaixo traz a definição de BaaS fornecida pela Techopedia.

https://www.techopedia.com/definition/29428/backend-as-a-service-baas

O BaaS possibilita aos desenvolvedores mobile e web a abstrair completamente a infraestrutura do lado do servidor (server side infrastructure). Os desenvolvedores podem montar os blocos de construção necessários e apenas escrever o código que os conecta. Isso permite que os desenvolvedores se concentrem na experiência dousuário ( Front end U/X) em vez de lidar com a infraestrutura e codificação do backend.

Aplicações web e mobile demandam um conjunto de características análogas e muitas atividades repetitivas. Por exemplo, a criação de uma página de Log In e Log Out está presente em quase todos os sites e faz bastante sentido automatizar sua criação. Há muitos outros exemplos de atividades repetitivas comuns em aplicações, como notificação por e-mail, integração com redes sociais e notificações Push. Em geral, esses serviços apresentam sua própria API e precisam ser incorporados separadamente à aplicação. A criação demanda muito tempo e esforço e pode ser automatizada com a utilização de um BaaS.

Um dos principais objetivos do BaaS é automatizar atividades repetitivas e evitar utilizar desenvolvedores para realizar tarefas de baixo valor agregado. Desta forma, as horas alocadas para o desenvolvimento de um projeto de software ficam restritas às tarefas complexas e de alto valor agregado e que não podem ser automatizadas. O custo total do desenvolvimento de um backend pode ser reduzido em até 80% a partir da utilização de um BaaS e o tempo de desenvolvimento do backend também pode ser minimizado.

O tempo de aprendizado para utilização de um BaaS é relativamente pequeno, permitindo que para sistemas de menor escala um desenvolvedor Frontend ou Mobile construa um projeto inteiro de software (frontend + backend) sozinho. Para projetos maiores, o desenvolvedor do backend pode focar seus esforços em atividades de alto valor agregado.

Principais empresas do mercado BaaS

Até o inicio de 2016 o maior representante do mercado de BaaS era o Parse.com. A empresa, que faz parte do Facebook, tem mais de um milhão de aplicativos instalados em sua plataforma, e mais de 600 mil usuários. O Parse foi adquirido pelo Facebook em 2013, mas no início de 2016 a rede social decidiu finalizar as operações da empresa. Em 2017 a plataforma será descontinuada. Com isto, milhões de aplicações terão que buscar alternativas para migração. Algumas opções de BaaS são mostradas abaixo:

  • Back4app - www.back4app.com - Empresa criada no Brasil que auxilia desenvolvedores e empresas a migrar aplicações do Parse. Suporta aplicações web, mobile e IoT e é Open Source.
  • Firebase - www.firebase.com - Permite o armazenamento de dados, autenticação de usuário, hospedagem estática, e muito mais.
  • AWS Móvel Hub - este é um substituto Parse direta que recentemente saiu pela AWS. Embora este está em Beta, AWS é uma plataforma bem respeitado que suporta muitos grandes empresas como Netflix e Yelp. AWS Móvel Hub - desenvolver, testar e Lançamento Mobile Apps
  • BackAnd - www.backand.com - Uma plataforma que permite a criação de uma infra-estrutura pronta AngularJS para a sua aplicação.
  • RapidAPI - www.rapidapi.com - Uma plataforma de back-end que permite a gravação de dados e integração de APIs.
  • Stamplay - www.stamplay.com - Permite a construção de aplicativos em seu navegador sem codificação usando APIs como blocos.

Veja uma lista no Quora com as principais alternativas ao Parse.

Mercado

Conforme mostrado nos sites da Technavio e Marketsandmarkets, o mercado de BaaS terá taxa de crescimento superior a 80% ao ano e atingirá 28 bilhões de dólares em 2020, ou seja, será aproximadamente 10 vezes maior que o atual no final da década.

O crescimento será motivado pelas economias orientadas a aplicativos em todo mundo e a indispensabilidade de aplicativos móveis na criação de valor econômico. Os aplicativos também apresentam um impacto bastante grande nas indústrias como um todo e trazem mudanças disruptivas em negócios e processos. O conceito de mobilidade empresarial gira em torno de aplicativos e virtualmente todas as organizações estão investindo em aplicações mobile para aumentar a mobilidade.

Em 2020 existirão cerca de 20 milhões de desenvolvedores no mundo e este se tornará um dos grupos profissionais que mais irá crescer. Os desenvolvedores estarão divididos entre 140 mil startups, 230 mil empresas de desenvolvimento de sistemas e diversas outros segmentos de empresas.

Vantagens

  • Fornecedores - O mercado é relativamente maduro e existem inúmeros fornecedores confiáveis para todos os tipos de necessidades.
  • Esforço de Desenvolvimento - Um desenvolvedor pode economizar semanas no que tange à criação de um backend. Um BaaS é uma alternativa bastante boa para acelerar o desenvolvimento de sistemas.
  • Monetização - Dado que o tempo para a criação de uma aplicação é bem menor, o MVP pode ser lançado de forma muito rápida. Consequentemente, a geração de receita se inicia mais cedo. Muito importante, em especial, para startups.
  • Escalabilidade - A quantidade de usuários pode ser escalada sem interrupções ou perda de performance.
  • Segurança - As empresas de BaaS fornecem protocolos de segurança muito bons.

Desvantagens

  • Controle - Os desenvolvedores apresentam menor controle sobre o código fonte e o acesso ao backend é mais restrito.
  • Vendor Lock In - O usuário deve ser cauteloso e avaliar de forma muito criteriosa os fornecedores. É uma decisão de longo prazo e deve ser dada preferência a fornecedores que permitam a migração de dados ser houver necessidade.

Palavras Chave: BaaS ,API , Backend, Parse, Parse Alternativa, Firebase, Parse Migração, Backend as a Service, Servidor, Infraestrutura.

Sobre o autor

George Batschinski é formado em Engenharia Aeronáutica pelo ITA e apresenta MBA pela IESE Business School. Atua no setor de desenvolvimento de sistemas desde 2004, gerenciando times de desenvolvimento de soluções de software nas áreas de aviação, edução e finanças. É sócio fundador da GTAC e do Back4app.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião
BT