Blog technique sur mes expériences de développeur.
6 septembre 2019
Vous disposez maintenant de presque toutes les notions nécessaires à la bonne rentabilisation de votre application mobile. Dans le cadre de ce cours, il nous en reste une à étudier : la notion de supervision d’une application mobile.
Dans cette dernière partie du cours, nous allons voir comment il est possible de superviser une application mobile en production sur un magasin d’applications quelque qu’il soit (App Store, Google Play Store, etc.) à travers l’étude de deux outils dont, malheureusement, beaucoup de monde se lançant dans le mobile ignorent encore l’existence :
Débutons tout de suite avec l’étude de notre premier outils : les analytics trackers.
Un analytics trackers est un outil permettant de remonter des statistiques d’utilisation de votre application en fonction du comportement et des actions de vos utilisateurs.
Ces statistiques peuvent être de natures très diverses et plus ou moins fines. Voyons quelques exemples de statistiques qu’il est possible de remonter :
Vous l’aurez compris, les possibilités de remontées sont presque infinies !
Une question importante à se poser quand on souhaite établir des statistiques liées à l’utilisation d’une ou plusieurs applications mobiles est :
Que dois-je remonter ?
La réponse n’est malheureusement pas triviale et pourrait se débattre pendant des heures. En réalité, tout dépend du niveau d’analyses que vous aurez de ces données. Sachez que les applications maintenues par des grosses sociétés comme Facebook ou Google remontent énormément d’éléments car derrière, ces données sont finement exploitées pour comprendre qui utilisent les applications et comment elles sont utilisées. Il est parfois amusant de voir que les statistiques liées à une application mette en lumière que la dite application est majoritairement utilisée d’une certaine manière alors que les ingénieurs qui l’ont conçue avaient imaginés tout à fait autre chose.
De manière générale, je vous invite à minima à remonter deux informations qui vous seront utiles :
Ces deux types d’événements vous permettront déjà de comprendre comment votre application est utilisée et mettra éventuellement en avant des défauts de conception ou des problèmes d’ergonomie. Par exemple, si un écran important de votre application se retrouve ouvert moins souvent qu’un écran de “seconde zone”, c’est peut-être que son accès est difficile ou non trivial. Il conviendra alors peut-être de retravailler la façon dont cet écran est accessible dans une future mise à jour de l’application.
Si vous souhaitez aller plus loin mais que vous ne savez pas vraiment quelle direction prendre, il faudra alors peut-être faire appelle à une personne extérieure spécialisées dans l’élaboration de ce qu’on appelle un plan de taggages. Il s’agit d’un métier à part entière.
A titre informatif, sachez que ce concept de remontées d’informations d’une application mobile n’est en réalité pas spécifique au monde du mobile et se fait également énormément dans le monde du web.
Avant de répondre au “comment”, je vous propose de répondre à la question “où” !
Toutes les informations d’utilisation de votre application mobile que vous souhaitez remonter pour établir des statistiques doivent être remontée vers une plate-forme sur laquelle vous serez en mesure de les lire, les extraire, les traiter, les trier, bref, en faire ce que vous voulez à des fins d’analyse ! Il convient donc de faire remonter ces informations auprès d’une plate-forme à laquelle vous pouvez accéder facilement. A titre d’exemple, ce pourrait être une base de données accessible depuis un serveur.
Répondons maintenant à la première question :
Comment remonter ces informations ?
Il convient d’intégrer à votre application mobile une petite brique logicielle capable de communiquer avec la plate-forme en charge de recueillir et stocker les informations afin de lui transmettre les différentes informations qui vous intéressent. Si l’on se penche sur le côté technique, nous pouvons imaginer plusieurs moyens de communication comme des requêtes HTTP ou l’utilisation d’un socket.
Si vous ne comprenez pas cette dernière phrase, ne vous inquiétez pas ! Sa compréhension n’est pas strictement nécessaire à la lecture du reste du cours. Lisez quand même la suite !
Maintenant que vous en savez un peu plus sur comment cela fonctionne “sous le capot”, je vous propose d’aller un peu loin et de voir plus en détail quelles sont les moyens dont vous disposez pour remonter toutes ces informations. Nous allons distinguer deux façons de faire : la façon “industrielle” et la façon “artisanale”.
Débutons par étudier la manière “artisanale”. Cette méthode, comme son nom le laisse deviner, consiste à tout faire soit même. Ainsi, c’est à vous de mettre en place et coder aussi bien la plate-forme en charge de recueillir les informations que la fameuse brique logicielle capable de récupérer les informations au sein de l’application mobile et les envoyer à votre plate-forme.
Je déconseille bien évidemment d’utiliser cette méthode si vous êtes un débutant !
Pourquoi cet avertissement ?
Si naïvement cela semble simple à mettre en place, il convient en réalité de penser à tous les cas d’utilisation. Il convient notamment de se poser les questions suivantes :
Bref, posez-vous les bonnes questions et soyez honnêtes avec vous même quant à votre capacité ou non de créer une telle plate-forme et un tel outil de remontée d’information !
Finissons notre étude du concept d’analytics trackers en étudiant la façon dite “industrielle”. Par opposition à la méthode “artisanale”, que j’aurais également pu appeler “manuelle”, la méthode “industrielle” consiste à utiliser des outils proposés sur le marché et ayant fait leurs preuves. Nous allons voir qu’il en existe aussi bien des gratuits que des payants.
Pour être tout à fait honnête avec vous, il existe des tonnes de produits. Il n’existe, à mon avis, pas un meilleur que les autres. Si vous devez en utiliser l’un d’eux, je vous conseille d’en essayer plusieurs et de vous faire votre propre idée.
Avant même de vous délivrer le nom de quelques produits connus et très utilisés dans le monde professionnel, j’aimerais revenir rapidement sur les avantages qu’ils présentent par rapport à une solution maison :
L’outil le plus populaire dans le cadre des applications mobiles est probablement Firebase Analytics. Cet outil, gratuit, est aujourd’hui massivement utilisé dans le monde du mobile. Son principal avantage est sa simplicité d’intégration au sein d’une application mobile et sa simplicité d’utilisation, que ça soit au niveau de sa brique logicielle mobile (compatible notamment Android, iOS et Unity) qu’au niveau de sa plate-forme de restitution des données. En savoir plus sur Firebase Analytics.
Je ne reviendrai pas en détail sur les autres outils disponibles sur le marché, mais sachez qu’ils sont nombreux et méritent qu’on s’y attardent. Parmi les solutions très utilisées dans le domaine professionnel, nous pouvons par exemple citer :