Scopri tutti gli articoli e le iniziative nelle varie sezioni del portale

Più consultati


Tags

Capire il mBaaS, Mobile Backend as a Service

07/03/2017


Il mBaaS, Mobile Backend as a Service, negli ultimi anni è diventato una componente critica per lo sviluppo di app mobili, siano esse di tipo B2C (rivolte ai consumatori) piuttosto che B2E (destinate ai dipendenti).

Per capire il valore del mBaaS bisogna prima sapere come viene sviluppata una app mobile. Questa è composta da:

  • un front-end – l'interfaccia utente (UI), in altre parole quello che si vede di una app quando la si utilizza.
  • un back-end – i vari metodi residenti su un web server che inviano al front-end i dati necessari per visualizzare i contenuti desiderati.

La struttura dei team di sviluppo mobile riflette questo paradigma: da una parte gli sviluppatori di front-end, dall'altra quelli del back-end.

 


Il front-end è codice che gira direttamente sul sistema operativo del dispositivo mobile. Visti i numerosi sistemi operativi differenti presenti su mercato (iPhone e iPad girano su iOS, i dispositivi mobili di Google, per esempio Samsung su Android e i telefoni Microsoft su Windows Phone) esiste un codice differente sviluppato apposta per ciascun OS. 

Questà è la ragione per la quale alcuni produttori come Appcelerator hanno messo a punto tool per lo sviluppo cross-platform grazie ai quali è sufficiente scrivere un unico codice sorgente in JavaScript che viene successivamente compilato in tutti i codici nativi dei vari OS velocizzando la realizzazione delle app, riducendone la manutenzione sui diversi dispositivi e aumentando l'agilità necessaria per sviluppare nuove versioni della stessa app.

Il front-end ha bisogno di dati dinamici per poter popolare le differenti schermate dell’app: questi vengono ricevuti dal back-end che ha la responsabilità di connettersi alle fonti appropriate. La comunicazione tra front-end e back-end avviene per mezzo di REST API.

Il principale problema affrontato dai mobile dev è che il 70% del tempo trascorso a scrivere una app mobile riguarda il back-end. Nel tentativo di ridurre il tempo dedicato a questo tipo di attività, i produttori di software hanno realizzato una tecnologia che offre accesso facilitato a servizi già pronti per agevolare tutte le attività ricorrenti. Questi servizi compongono una soluzione mBaaS.

Ecco un elenco di questi “servizi preconfezionati”:

  • hosting di database: un servizio per memorizzare dati in modo relazionale o non relazionale
  • integrazione database interni: un servizio per connettersi a database interni
  • sincronizzazione dati: un servizio per sincronizzare i dati tra i database interni e il database hosted. Questa sincronizzazione risulta utile per rendere i dati interni visibili alle app mobili senza sovraccaricare il database interno così da assicurare performance migliori
  • integrazione applicazioni interne: un servizio per connettersi ai sistemi di back-end enterprise come ERP e CRM. Questo servizio è essenziale per poter prelevare i dati relativi a clienti e operazioni
  • orchestrazione: un servizio per combinare più data API insieme allo scopo di inviare payload ottimizzati per l'ambiente mobile
  • location: un servizio che permette di localizzare l'utente della app
  • mapping: un servizio per identificare un punto su una mappa
  • gestione delle identità e degli accessi (IAM, Identity and Access Management): un servizio per facilitare l'autenticazione attraverso un'istanza hosted di una directory di utenti
  • notifiche push: un servizio per inviare “messaggi push” alla app
  • storage: un servizio per memorizzare documenti o immagini
  • cifratura dati: un servizio per cifrare i dati prima che vengano memorizzati attraverso un servizio storage
  • integrazione con social network: un servizio per utilizzare le API dei social network per funzioni come condivisione, link e commenti
  • collaborazione: un servizio per commentare e discutere su temi specifici.

Come scegliere il fornitore mBaaS giusto?

Un mBaaS diviene rapidamente un elemento chiave dell’infrastruttura per lo sviluppo mobile. Ecco le linee guida per la scelta:

  1. Come per qualsiasi progetto, accertatevi che il fornitore scelto metta a disposizione le funzionalità che vi occorrono. Potrebbero capitare situazioni nelle quali siete attirati da una soluzione che successivamente si rivela carente delle funzionalità necessarie per il vostro progetto specifico.
  2. La tecnologia mobile si sta evolvendo molto rapidamente, per cui accertatevi che il fornitore abbia la capacità di adottare nuove tecnologie altrettanto velocemente.
  3. Non focalizzatevi solamente sui servizi predefiniti, ma guardate anche alla capacità di connettersi ad una soluzione per la gestione API o di renderne disponibile una: le vostre API di back-end devono essere protette dalle minacce digitali e i vostri sistemi di back-end devono essere protetti dai sovraccarichi di traffico.
  4. Non potete mai sapere come potrà evolversi la vostra strategia di deployment nel corso del tempo. Scegliete una soluzione che possa essere implementata sia su un cloud pubblico che su un cloud privato virtuale o addirittura on-premises.

Articolo a cura del Team Axway

Axway, partner di TIM, è un catalizzatore di trasformazione. Il suo approccio unificato, incentrato in primo luogo sulle API (#API-first), collega dati provenienti da fonti disparate, supporta milioni di app e offre analisi in tempo reale per costruire reti di esperienze dei clienti (#CX).

Per approfondimenti https://www.axway.com/it