Mots‐clés: : intégration, DLM, DMP, gouvernance des données, visualisation, machine learning, IA
B4: Valoriser les actifs numériques en exploitant et valorisant les données dans des services numériques ; cartographiant les actifs numériques de l’organisation ; anticipant et gérant les changements des organisations ; mettant en œuvre une veille économique et technologique ; proposant des évolutions technologiques et métiers pour l’organisation et la communauté.
Niveau Hautement spécialisé:
Connaître les impacts et les apports du Machine Learning et de l’intelligence artificielle sur le système d’information de l’entreprise L’intégration et la maîtrise des technologies de Machine Learning (ML) et d’Intelligence Artificielle (IA) dans les systèmes d’information des entreprises marquent une étape significative dans l’évolution du monde des affaires moderne. Ces technologies ne se contentent pas de transformer la manière dont les entreprises fonctionnent et interagissent avec leurs clients ; elles redéfinissent également la prise de décision stratégique, l’efficacité opérationnelle et l’innovation produit. En tant qu’étudiante en informatique de gestion, j’ai pu approfondir ma compréhension et ma connaissance de ces sujets, notamment grâce à ma participation à la Conférence Data Science et IA à Belgrade. Cette expérience m’a offert des perspectives enrichissantes sur l’application pratique du ML et de l’IA dans un contexte professionnel.
Voici quelques exemples concrets qui illustrent la manière dont ces technologies révolutionnaires peuvent être mises en œuvre dans différents domaines d’une entreprise, apportant des améliorations significatives et ouvrant la voie à de nouvelles opportunités stratégiques.
Source: https://www.lesechos.fr/thema/articles/le-machine-learning-explique-aux-entreprises-et-aux-decideurs-2041155
Si j’y réfléchis bien, dans le domaine qui m’intéresse particulièrement, à savoir l’analyse des données et la science des données, l’IA est déjà largement présente :
Etre capable d’intégrer tous les processus de développement logiciel et de gestion du cycle de vie des données dans des projets complexes Dans nos projets du 5e semestre, j’ai pu mettre en pratique différentes étapes et méthodologies du développement logiciel, telles que la planification, la conception, la codification, les tests, et le déploiement.
Cette intégration doit prendre en compte les divers outils, technologies et pratiques de développement.
Hackathon Backlog
Développement et codage : J’ai ensuite procédé au développement de l’application en utilisant React, Web 5 et Next.js. Notre point de départ était l’application de chat de base proposée par TBD Community. J’ai veillé à implémenter des pratiques de codage propres et efficaces, en respectant les principes de développement en React, alors single‐page‐app.”
Test et assurance qualité : Pour garantir la qualité et la fiabilité, j’ai commencé à réfléchir sur les tests. En examinant de plus près l’application, je me suis rendu compte que le fichier de test existait déjà. Malheureusement, les tests ont été effectués pour la version originale de l’application. Malheureusement, la plupart d’entre eux n’ont pas fonctionné. J’ai donc pris le temps d’explorer la bibliothèque, qui était déjà installée : Playwright.
Ensuite, j’ai réussi à isoler trois tests qui, après quelques modifications, ont pu fonctionner. À l’avenir, il faudrait continuer les tests unitaires et ajouter des tests d’intégration ainsi que des tests d’utilisation pour détecter et corriger les bugs de manière proactive.
Le résultat de testes effectués dans l’application
Création d’un DID
Cependant, j’ai identifié un aspect critique à améliorer concernant le stockage des données : dans un système décentralisé comme Web 5, les données ne sont pas stockées dans un emplacement central, ce qui soulève des questions sur leur localisation exacte et leur gestion. Cette incertitude peut être problématique, surtout en ce qui concerne la conformité aux réglementations sur la protection des données et la vie privée, comme le RGPD en Europe. De plus, cela peut rendre plus difficile la mise en œuvre de fonctionnalités telles que la recherche rapide de messages ou la synchronisation des données entre différents appareils. En tant que développeur, je dois trouver un équilibre entre la décentralisation des données pour la sécurité et la confidentialité, et la nécessité de maintenir une expérience utilisateur fluide et cohérente.
Déploiement sur Microsoft Azure
Réflexion sur le projet : Ce projet m’a permis de comprendre en profondeur l’intégration des processus de développement logiciel et de gestion du cycle de vie des données, en mettant en pratique des compétences techniques et de gestion de projet dans un cadre complexe et dynamique. Pour la première fois, j’ai eu l’occasion de mettre en place un cycle DevOps complet, principalement le déploiement et la mise à jour automatique grâce à la combinaison de mon dépôt sur GitHub et de Microsoft Azure. Cela constitue un exemple d’une intégration de la gestion du cycle de vie des données en utilisant des technologies décentralisées. Actuellement, les données sont stockées dans la mémoire locale du navigateur. Bien que cette méthode soit fonctionnelle pour une démonstration initiale, elle présente plusieurs limitations :
En conclusion, bien que l’utilisation de la mémoire locale du navigateur ait été utile pour le développement initial et les tests de l’application, il est impératif de migrer vers une solution de stockage de données plus robuste, sécurisée et scalable pour une utilisation à long terme. Pour les prochaines étapes du projet, je prévois d’explorer des options telles que le stockage de données sur le cloud ou l’utilisation de bases de données décentralisées pour améliorer la gestion des données de l’application.
Gestion des identités avec DIDs : J’ai mis en place un système pour gérer les identités des utilisateurs à travers des DIDs. Dans mon composant Home.js, j’ai géré une liste de DIDs corespondantDIDs() et associé des informations spécifiques à chaque DID DIDInfoMappers(). Ces fonctions sont utilisées dans la fonction “handshake()” dont la tâche est d’établir une connexion entre deux parties.
Cela a été crucial pour identifier et gérer les utilisateurs de manière sécurisée et décentralisée dans mon application.
Communication sécurisée via le DWN : J’ai utilisé le DWN pour l’envoi et la réception sécurisés des messages. Dans ma fonction sendMessage(), j’ai construit un message constructDing() et écrit ce message sur le DWN writeToDwn(). Cela a illustré mon utilisation du DWN pour assurer une communication entre les utilisateurs.
Stockage et récupération des messages : Mon code montre comment j’ai récupéré les messages que j’ai envoyés fetchSentMessages() et reçus fetchReceivedMessages() via le DWN. J’ai utilisé des requêtes pour filtrer les messages selon un protocole et des schémas de données spécifiques, démontrant une gestion efficace du cycle de vie des données.
Synchronisation et mise à jour des données : J’ai mis en place un mécanisme pour synchroniser régulièrement les messages fetchDings() exécuté à intervalles réguliers, assurant que l’utilisateur ait toujours accès aux dernières communications.
Traitement des données en temps réel : Mon application traite les données en temps réel, permettant aux utilisateurs d’avoir une vue organisée et à jour de leurs conversations. useEffect() dans UseChatItem.js:
Le LI Hugo constitue un élément de réflexion intéressant sur le DLM. Il y soulève des questions sur l’utilisation du Data Mesh. J’avais déjà pris connaissance de ce concept lors de la conférence de Belgrade. J’ai entendu parler de Data Mesh pour la première fois lors de la présentation “How to treat your data as a product”. Le concept de Data Mesh est une approche architecturale dans la gestion des données à grande échelle. Il met l’accent sur une organisation décentralisée des données, contrairement aux modèles traditionnels centralisés. Dans un Data Mesh, la responsabilité de la gestion des données est distribuée à travers différentes équipes opérationnelles, chacune gérant et possédant ses propres données comme un produit. Cela encourage une meilleure gouvernance, une accessibilité accrue et une utilisation plus efficace des données. Le Data Mesh facilite également l’intégration et la collaboration entre diverses parties de l’organisation, améliorant ainsi l’agilité et la réactivité aux changements. Il s’agit certes d’un concept intéressant, mais jusqu’à présent, les chances de travailler avec un tel système sont minces, compte tenu de la taille de l’entreprise nécessaire pour le faire fonctionner.