Fonctionnalités et options de déploiement d’un MBaaS
Les applications mobiles sont constamment connectées, ce qui fait du backend mobile un service idéal pour exécuter la logique métier et l'analyse des données. Voici ce qu’il faut savoir sur les services de backend en mode cloud.
Chaque entreprise a besoin d'une stratégie de mobilité pour rester compétitive, et les raisons en sont multiples. Ayant fait des smartphones leur principale plateforme informatique et de communication, clients et collaborateurs attendent des applications natives, plutôt que de simples pages Web revues pour la mobilité. Et c’est sans compter avec la concurrence qui utilise déjà probablement les applications pour fournir de nouveaux services, rationaliser les processus métiers et renforcer l'engagement des clients.
L’informatique joue un rôle crucial dans l'élaboration et la mise en œuvre de la stratégie numérique d'une organisation, ce qui exige un pilotage depuis le sommet de l’entreprise. Les DSI doivent comprendre l’environnement stratégique pour la mobilité et se faire catalyseur du changement, afin de permettre à l’organisation de surmonter l'inertie et les défis, tant techniques que culturels.
Certaines divisions informatiques ont été lentes à créer et à déployer des applications mobiles en raison d'un manque d'expertise en développement, de budgets contraints, de méthodes agiles et de cycles de mise en production peu familiers, ou encore de la complexité du support de deux systèmes d'exploitation majeurs avec des centaines de modèles de terminaux variés.
Ainsi, en 2015, selon une enquête Gartner, « le nombre moyen d'applications à façon par entreprise est inférieur à 10, malgré les énormes besoins internes de mobilité ». Sans l’appui de la direction, les divisions informatiques se morfondent, regardant leurs pairs plus innovants et agressifs développer les compétences et les applications mobiles nécessaires pour réussir dans ce que certains ont appelé l'économie des applications.
Heureusement, les applications mobiles constituent des candidats idéaux pour l’exploitation de services cloud en s’appuyant sur une conception logicielle disjointe où l'application client native gère principalement l'interface utilisateur, l'affichage d'informations et la collecte d’information à partir des capteurs du terminal (GPS, accéléromètre, caméra, etc.) tandis que la logique métier, l'accès aux données, les analyses, la synchronisation et la sécurité sont assurés par des services cloud plus connus sous le terme de mobile backend (MBaaS). Ce modèle de conception d'applications a considérablement gagné en popularité au cours des années passées, du fait de la flexibilité qu’il offre.
Fonctionnalités des services de backend mobile
Comme nombre d’autres services cloud, les MBaaS exposent leurs fonctionnalités par le biais d’API REST. Parmi celles-ci, on compte généralement les suivantes :
- Stockage, gestion et synchronisation des données. Non seulement la quantité de stockage disponible sur les appareils mobiles est intrinsèquement limitée, mais une grande partie des données nécessaires aux applications réside dans les bases de données d'entreprise ou chez des fournisseurs de données tiers. Et ce n’est pas nécessairement une mauvaise chose puisque les terminaux mobiles peuvent être perdus ou dérobés. Ajoutons à cela le fait que de plus en plus de personnes utilisent des applications de plusieurs appareils différents, mais veulent un profil, un état d'application et un ensemble de données unifiés : les données persistantes sont mieux conservées sur un service de backend sécurisé. Là, elles peuvent être plus facilement agrégées, filtrées et analysées à l'aide de puissantes machines virtuelles serveur, au lieu d’un système sur puce de smartphone aux capacités plus limitées. Les services de backend mobile fournissent une interface d'application client pratique pour sécuriser et chiffrer les données en transit et au repos.
- Gestion des identités et des accès. Les utilisateurs détestent créer de nouveaux comptes avec de nouveaux mots de passe à retenir. Ce qui fait de l’ouverture de session unique (SSO) une nécessité pour les applications d'entreprise. Un service de backend mobile peut s'intégrer à des fournisseurs d’identités tels que des annuaires Active Directory, LDAP, entre autres, ou à des mécanismes tels que ceux offerts par des services comme Salesforce ou Google Apps. De quoi assurer une authentification et un contrôle d’accès sécurisés. Et surtout, pour ce dernier, basé sur des groupes et / ou des rôles d’utilisateurs. Par exemple, Kinvey, de Progress Software, permet aux développeurs d'applications d'implémenter des ouvertures de session avec un seul appel de fonction, éliminant le besoin d'apprendre la sémantique SAML ou Active Directory API.
- Notifications mobiles push. L'interfaçage de plusieurs applications mobiles avec deux API de notification client différentes est une corvée. Le MBaaS résout ce problème en fournissant une file d'attente de notification centrale qui sert d'intermédiaire entre les éditeurs de notifications backend et les abonnés clients mobiles. Par exemple, Amazon Web Services (AWS) Mobile Push fournit une API simple qui permet aux backend applicatifs d'envoyer des messages à un appareil particulier ou à chaque client abonné à un service de notification simple (SNS). Qui plus est, puisque SNS est le service de messagerie standard de publication / abonnement pour AWS, Mobile Push permet aux applications de recevoir des notifications de tout service AWS.
- Intégration avec les systèmes d'entreprise et les systèmes tiers. Les applications d'entreprise doivent souvent utiliser des informations provenant de systèmes backend existants, comme ceux de gestion de la relation client, des finances, des ressources humaines, ou encore les ERP. Elles peuvent également avoir besoin d'informations ou de fonctions provenant d'applications externes. Les backends mobiles fournissent des passerelles qui facilitent cette intégration et permettent de traiter les données dans le cloud avant de transmettre les informations au client mobile. Ces API signifient également que les applications mobiles sont plus facilement étendues, par exemple, en transmettant des informations, de type mashup, entre des applications utilisant des API personnalisées.
Offres et modes de déploiement
Le MBaaS constitue probablement la meilleure façon de mettre en œuvre une conception bifurquée d'applications mobiles, via une approche hybride utilisant un backend en mode cloud qui se connecte aux applications et données internes. Tous les grands fournisseurs d'infrastructure en tant que service (IaaS) proposent des services mobiles : AWS Mobile Hub et Cognito, Azure Mobile App Service, et Google Firebase et App Engine. Mais il existe également un marché florissant pour les produits MBaaS avec des éditeurs tels qu’Appcelerator, Kinvey, Kony, et Red Hat FeedHenry, notamment.
Il est également possible de déployer la plupart de ces produits MBaaS en cloud privé sur des systèmes administrés en interne. Un déploiement traditionnel en interne peut s'avérer plus rentable pour les entreprises disposant d'un important pipeline de développement d'applications et qui recherchent également une suite entièrement intégrée recouvrant la conception, le développement, les tests, la gestion de projet et le runtime backend.
Attention toutefois, le marché du backend mobile en tant que service est extrêmement dynamique, avec l'ajout constant de nouvelles fonctionnalités et l'acquisition et l'intégration de fournisseurs de niche – à l’instar de FeedHenry – dans des portefeuilles cloud plus importants.
Les entreprises qui utilisent déjà l'une des principales plateformes IaaS peuvent commencer leur recherche par là, car l’éventail fonctionnel proposé pour les services MBaaS par ces plateformes est généralement très étendu et compétitif.