De nombreuses entreprises migrent actuellement la donnée dans le Cloud pour de très bonnes raisons : modernisation de leur stack technologique, utilisation de la capacité de stockage et de calcul du Cloud, intégration simplifiée avec leurs logiciels SaaS ou leurs partenaires, capacité à scaler mais aussi pour attirer les bonnes compétences, se créer ainsi un futur data-driven.
Mais bien souvent, on observe que les modalités d’architecture et d’implémentation s’effectuent principalement en mode batch. Leur principal argument : les systèmes fonctionnent en batch et les utilisateurs internes sont habitués à de la data qui date de la veille alors pourquoi (ou comment) faire plus ?
Ce mode ne répond ainsi qu’à une infime partie des besoins de demain où le client de l’entreprise attend une expérience parfaite, où les collaborateurs attendent une information toujours à jour, permettant de décider.
Nous parlons depuis plusieurs années du consommateur de grande distribution qui est devenu omnicanal, mais à y regarder de plus près ce sont aujourd’hui tous les acteurs économiques qu’on peut qualifier d’omnicanal: le digital ayant très fortement accéléré dans tous les secteurs avec la covid-19, l’ensemble des entreprises sont par la force des choses devenues elles-aussi omnicanales, qu’elles vendent à des consommateurs ou bien à d’autres entreprises (l’explosion des webinars et transformation dans grandes conférences commerciales l’attestent).
L’omnicanal est devenu la norme. Il semble évident que les niveaux d’exigence vont augmenter et les entreprises qui n’intègrent pas le temps réel au sein de leur plateforme Data génèrent déjà de la dette technique.
Par ailleurs, le marché est lancé vers une gestion des données en temps réel au delà de la migration vers le Cloud:
Source: McKinsey, IDC
Le temps réel, c’est quoi ?
Précisons d’abord que nous ne sommes pas ici dans le temps réel industriel comme une voiture à conduite autonome par exemple où la data doit être analysée en quelques millisecondes, sous risque d’accident.
Nous resterons pour les besoins de cet article dans le monde de la gestion d’entreprise, où le temps réel est plus assimilé à une disponibilité rapide de l’information pour servir des besoins de relation client, d’alerte business, de supply chain tout en préservant des sujets essentiels comme la qualité et l’intégrité des données sur des systèmes informatiques qui, pour autant, ne sont pas tous temps réel.
Donnons ici quelques exemples:
- Expérience client : Je crée un compte sur le site Internet d’une enseigne dans lequel je confie mon numéro de téléphone mobile. L’information va remonter immédiatement dans les systèmes de l’enseigne, jusqu’au support client, qui pourra rapidement m’appeler en cas de problème, sans attendre le lendemain, après l’exécution du “batch de nuit”,
- Efficacité commerciale : Dans une entreprise b2b, mes équipes commerciales parlent avec des prospects, et quelques minutes avant leurs rendez-vous, je souhaite leur fournir les dernières pages vues sur notre site/catalogue, afin d’augmenter la pertinence du discours commercial,
- Marketing : Un client étant dans une campagne omnicanale anti-churn, je souhaite mettre à jour la totalité de mes systèmes (marketing, aide à la vente…) et stopper les campagnes car mon client vient d’acheter depuis son mobile ce matin,
- Supply Chain: Un produit est en rupture de stock dans un ensemble de magasin, un algorithme va immédiatement identifier les risques de rupture dans d’autres magasins, les raisons du succès du produit pour en informer le reste du réseau afin de mieux vendre et de proposer une réaffectation des stocks entre magasins..
Les exemples sont nombreux et vous pourrez en détecter très certainement de nouveaux.
Essayons maintenant de répertorier les différentes thématiques impactées par la mise en place de plateformes Data Temps Réel.
- Les systèmes informatiques existants,
- Les architectures techniques et applicatives,
- Les technologies Data utilisées : transport, stockage et analyse,
- Le monitoring des données,
- Les méthodes de développement et langages associés,
- Les analytics et différents scores, maintenant calculables au fil de l’eau,
- L’APIfication des systèmes.
Nous entendons ici les premiers doutes : mes systèmes (ERP, CRM, Finance) ne sont pas temps réel, alors pourquoi consacrer du temps et des ressources à un besoin inutile ?
Ne laissez pas vos systèmes existants vous tirer vers le bas, mais prenez le temps de la réflexion en donnant les moyens du temps réel à votre SI et vos datas.
Voici quelques conseils pour mieux comprendre et mieux implémenter du temps réel :
- Bien définir la notion de “temps réel” pour chaque information (quelques secondes, 1, 5, 10… minutes ?),
- Bien définir l’ambition pour l’utilisateur ou consommateur final de la donnée (restez sur des scenarii et des besoins réels),
- Apprendre à différencier l’impression de temps réel de l’implémentation du temps réel,
- Se former aux technologies permettant de sortir du mode batch, comme par exemple Change Data Capture, micro-batch, APIs, Distributed Queuing & Messaging, Stockage Cloud, Stockage Distribué, Design patterns Streaming – Publish & Subscribe, DevOps.
Méthode
First of all : One size does not fit all !
Vos datas sont spécifiques, vos systèmes, vos équipes et les partenaires aussi. Il est peu probable de trouver sur étagère une seule et même plateforme qui vous apporte le temps réel pour vos données, vos systèmes et vos utilisateurs.
Nous allons présenter la démarche et les thèmes que vous devez aborder pour entrer concrètement dans ce sujet. Nous aurons le plaisir de les développer ultérieurement au sein de nouveaux articles.
1/ Formation
Formez vos équipes ! Changer de mindset, de méthode de développement et/ou de technologie demande une énergie à ne pas sous-estimer : Formez vos équipes et valorisez les tests.
2/ Testez et rendez cela possible
Créez des prototypes. Par exemple, sur des transport de données en temps réel, même si la finalité est un simple affichage d’un compteur du nombre d’enregistrement reçu et stocké qui évolue en live sur un navigateur. Cet écran est à partager pour “vivre” l’expérience du temps réel.
3/ Architecture first
Concevez votre architecture sous forme de blocs autonomes mais APIfiés.
Une architecture est tout sauf monolithique. Il existe de nombreux composants dans votre plateforme, c’est le moment de bien dessiner et maîtriser l’ensemble de blocs qui vont la constituer.
4/ Méthode et outillage : Objectif DataOps
Les technologies que vous utiliserez sont parmi les solutions les plus modernes du marché, et elles sont naturellement très adaptées à l’agilité et aux méthodes DevOps. Nous parlons alors de DataOps : C’est l’utilisation de la technologie pour automatiser la conception, le déploiement et la gestion de la livraison des données, afin d’améliorer et d’optimiser le cycle de vie des projets Data & Analytics.
5/ Implémentation
Vos équipes sont formées, votre architecture est en place, vos prototypes sont satisfaisants et ont donné envie aux métiers, vos méthodes ont évolué, il est temps de passer à l’implémentation.
Un dernier conseil : Implémentez use case par use case, main dans la main avec le consommateur final, qui contribuera à mettre en lumière tous les bénéfices d’une donnée de qualité enfin disponible à la vitesse de la lumière.
Conclusion
Les articles à venir ont pour but d’éclairer et détailler le chemin que vous pouvez prendre, en tant que CIO ou CTO, en tant que CDO ou encore même CEO, pour donner à votre entreprise les moyens de servir vos clients comme ils le rêvent.
Nous espérons vous être utiles et vous donner envie de prendre ce chemin, avec ou sans nous.