La dette technique est un concept bien connu dans le domaine du développement logiciel. Elle se réfère aux coûts cachés et aux conséquences à long terme qui découlent de la prise de décisions techniques de courte vue ou de l’adoption de solutions temporaires. Dans cet article, je voudrais me concentrer spécifiquement sur la dette technique liée à des projets de réalité augmentée (RA) dans les entreprises, en explorant quelques exemples concrets et en proposant des recommandations pour minimiser ce problème.
Qu’est-ce que la dette technique ?
Sans entrer dans les détails, la dette technique (je conserverai le terme au singulier) est une analogie avec la dette financière. Dans le contexte d’un projet numérique, elle désigne les problèmes sous-jacents qui surviennent lorsque l’équipe projet prend des raccourcis pour livrer un produit rapidement, tout en sachant que cela pourrait engendrer des coûts supplémentaires à l’avenir. Comme sa contrepartie financière, la dette technique n’est pas forcément une mauvaise chose. Elle permet par exemple de réduire les temps de développement ou les couts globaux des projets pour les rendre réalisables. Dans ce cas, elle est volontaire, on sait ce que l’on fait (normalement), on le documente (normalement) et on planifie le « remboursement » (normalement). La dette peut aussi être involontaire en ignorant par exemple les bonnes pratiques ou en avançant sans connaissance de l’environnement technique et de ces contraintes. Dans le domaine de la XR et de la RA, c’est un risque assez courant puisque les produits, et en particulier le matériel, restent peu matures.
Les conséquences de la dette technique sont assez simples à prévoir et se concentrent principalement sur l’accroissement du cout des maintiens des applications et des expériences. Le terme « dette » prend tout son sens. On va payer plus, mais plus tard, particulièrement dans la maintenance, l’évolution, la correction des bugs ou même la formation des utilisateurs. En général, la dette ne réduit pas les fonctionnalités prévues d’un produit, mais elle nuira globalement à la performance du système.
Quelques exemples de dette technique liée à la réalité augmentée
Dans un projet de réalité augmentée, la dette technique peut être présente à la fois au niveau matériel et logiciel. Au niveau matériel, par exemple, si une entreprise opte pour des dispositifs propriétaires ou des capteurs spécifiques qui ne sont pas largement adoptés par le marché, elle peut se retrouver confrontée à des problèmes de compatibilité et d’obsolescence à mesure que de nouveaux dispositifs sont lancés. Cela peut entraîner des coûts supplémentaires en termes de maintenance et de remplacement du matériel, ainsi qu’une limitation des fonctionnalités offertes. Faire le bon choix reste aujourd’hui compliqué même si des constructeurs comme Microsoft, Espon ou Vuzix sont des piliers du secteur. Encore faut-il que les fonctionnalités offertes (et le cout) soient compatibles avec vos contraintes. D’autres entreprises comme Magic Leap ont eut des politiques assez changeantes et d’autres encore comme Daqri sont passés de la case « stables » à « disparus » en moins d’un mois !
Au niveau logiciel, un exemple de dette technique peut être l’utilisation de bibliothèques ou de frameworks peu diffusés, très fermés, obsolètes ou non maintenus pour le développement de l’application de réalité augmentée. Cela peut entraîner des problèmes de sécurité, des difficultés à intégrer de nouvelles fonctionnalités et une performance inférieure aux attentes. De plus, si l’équipe projet néglige l’optimisation des performances de l’application, par exemple en ne prenant pas en compte les contraintes spécifiques des appareils, cela peut entraîner une mauvaise expérience utilisateur et nécessitera une refonte importante pour y remédier. Le marché se stabilise depuis quelques années avec l’apparition de d’écosystèmes et de plateforme plus stables, mais les offres sont nombreuses et les choix restent stratégiques.
Un autre exemple de dette technique au niveau logiciel est le manque d’interopérabilité entre les différentes composantes d’un projet de réalité augmentée, telles que les services de géolocalisation, les bases de données et plus généralement tous les fournisseurs de données de l’entreprise. Si ces éléments ne sont pas bien pris en compte, intégrés et conçus pour fonctionner ensemble, vous pouvez facilement imaginer que les opérations transferts de données vont demander beaucoup d’énergie une fois le produit mis en production.
Des recommandations pour réduire la dette technique liée à la réalité augmentée ?
Vous allez retrouver dans cette partie beaucoup de points communs avec mon article « L’importance de l’expression des besoins dans un projet de réalité augmentée » car, comme souvent dans les projets techniques, c’est l’anticipation qui réduit les douleurs !
Afin de minimiser la dette technique liée à la réalité augmentée, les entreprises doivent d’abord planifier à long terme leur utilisation de cette technologie. Cela implique de connaitre ses besoins (si, si) et de valider que la RA peut effectivement apporter une valeur ajoutée aujourd’hui ou demain ou jamais. Si l’apport est flou, vous allez probablement vous retrouver avec plusieurs technologies tentant de résoudre le même problème. Si cela peut se comprendre dans le cas de POC, cette période ne doit pas se prolonger, au risque de disperser les énergies et la connaissance.
Il est important d’envisager dès le début les scénarios d’évolution et de prendre en compte l’impact potentiel sur les coûts et la maintenance. Cela peut inclure l’analyse des avantages et des inconvénients de différentes plateformes et la prise en compte de l’évolutivité et de l’interopérabilité. Si vous n’avez pas les compétences en interne, prenez le temps de faire ce travail avec des prestataires externes. On ne fait jamais d’économie en commençant sur de mauvaises bases (ou fait de la dette).
Je l’ai déjà souligné dans mon article précédent, faites intervenir les parties prenantes du projet le plus tôt possible. Si les métiers valideront l’utilité de la solution, la DSI assurera l’intégration à long terme dans le système d’information de l’entreprise. Sans ces consultations, la dette technique sera probablement importante et pourrait même mettre en péril le projet entier.
Dans la mesure du possible, sélectionner des technologies de réalité augmentée basées sur des normes ouvertes et des formats de données standard. Cela peut réduire la dépendance à l’égard de fournisseurs spécifiques et faciliter l’intégration avec d’autres systèmes. Par exemple, opter pour des solutions compatibles avec des normes telles que OpenXR ou vous proposant une certaine indépendance entre le matériel et le logiciel. Cela peut aider à garantir une plus grande flexibilité et une meilleure évolutivité.
Une communication avec les équipes de développement est essentielle pour prévenir la dette technique. Cela demande une gestion de projet rigoureuse, tout en restant agile. Le rôle du ou de la chef de projet est primordiale pour éviter les erreurs, les malentendus et les solutions ad hoc qui peuvent entraîner des problèmes à long terme. Évidement, un projet ne s’arrête pas à la livraison de la solution ! Adopter une approche proactive de la maintenance est également crucial pour réduire la dette technique. Cela signifie surveiller et résoudre les problèmes potentiels avant qu’ils ne deviennent critiques, en mettant à jour les logiciels et les matériels de manière régulière et en s’assurant que les systèmes sont conformes aux normes et aux bonnes pratiques émergentes. Oui, nous l’avons déjà remarqué, cette technologie évolue …
Comme dans tous les projets informatiques, une documentation claire et précise est importante pour ne pas perdre des informations importantes. Cette documentation concerne à la fois le développement, elle est rédigée par les équipes de développement. Mais elle doit aussi couvrir les usages et permettre ainsi de former les utilisateurs. C’est cette formation qui permet de s’assurer une compréhension correcte, des fonctionnalités et des limitations des systèmes de réalité augmentée. Cela aide à utiliser efficacement l’application et à éviter les erreurs ou les mauvaises pratiques qui pourraient causer des problèmes à plus long terme et augmenter encore la dette technique.
Vous l’avez compris, la dette technique liée à la réalité augmentée dans les entreprises peut avoir des conséquences importantes sur la performance, l’évolutivité et la maintenance des systèmes. Si elle est inévitable, il existe de nombreux moyens de la réduire ou, au moins, de la prendre en compte. La tentation est grande de « faire des économies » dans les phases de projets ou de nombreuses contraintes s’additionnent. Mais quoi qu’il arrive, n’oubliez pas qu’il faudra la rembourser un jour !