Helios

Présentation du projet

Helios est une application de bureau ayant pour principal objectif de permettre aux utilisateurs d’acquérir des données. Elle appartient à l’entreprise SLB qui est une entreprise de services pétroliers. Elle est utilisée dans des puits pétroliers pour récupérer des données importantes comme la température et la pression des équipements utilisés et ainsi permettre au client de prendre les meilleures décisions possibles pour la suite du forage.

Les objectifs du projet

Les objectifs de l’application sont de permettre aux clients d’avoir des informations sur ce qui se passe lors du forage du sol pour récupérer du gaz et de l’huile. Mais elle s’est également développée avec l’objectif de faciliter le travail des ingénieurs présents sur le terrain. Également, cette application a pour objectif de donner aux utilisateurs ce dont ils auront besoin une fois sur le terrain comme la gestion des équipements, le transfert des données et de réaliser des calculs complexes automatiquement.

Le contexte du projet

L’application Helios a vu le jour pour aider les clients de l’entreprise ainsi que les ingénieurs présents sur le terrain à effectuer leurs travaux plus efficacement en réduisant les risques. Depuis sa création, Helios a évolué. Aujourd’hui, cette application regroupe un ensemble de plusieurs dizaines de projets ayant tous une utilité différente pour réaliser les objectifs.

Les enjeux du projet

Les enjeux de cette application sont à la fois financiers, c'est à dire d'augmenter la rentabilité de l’entreprise en automatisant des tâches et en fournissant des outils adaptés pour différentes situations, mais également un des enjeux de Helios est de réduire le risque d’erreur humaine pouvant avoir lieu.

Les risques du projet

Le principal risque de l’application est un crash qui pourrait mettre en danger la bonne progression du forage. Mais aussi, Helios étant une application complexe, le risque est que les utilisateurs ne comprennent pas comment s’en servir et ainsi engendrer des problèmes liés à une mauvaise utilisation.

La réalisation du projet

Concernant mes réalisations sur ce projet, je vais commencer par parler d'un projet qui permet à nos utilisateurs de vérifier l'état d'un équipement spécifique. Pour cela j'ai commencé par réaliser l'interface graphique de l'application en faisant en sorte de ressembler aux autres applications de Helios. Ensuite, j'ai fait des recherches sur le protocole de communication à utiliser pour communiquer avec cet équipement, pour cela j'ai regardé des documentations pendant plusieurs jours pour trouver les informations nécessaires. Suite à ça j'ai développé les différentes pages en respectant un modèle MVVM pour l'architecture de mes fichiers

J'ai également mis à jour une ancienne application qui avait besoin de nouvelles fonctionnalités. Cette application récupérait les informations d'un équipement et les affichaient pour permettre aux utilisateurs d'avoir une idée de l'état de l'équipement. J'ai été chargé d'enregistrer ces données dans la base de données et de mettre à jour l'interface pour qu'elle ressemble plus aux autres applications d'acquisition de données présentes dans Helios. Pour ce faire j'ai dans un premier étudié le code de l'application puis mis en place un algorithme permettant de trier les donneés reçues pour les mettre au bon endroit dans la base de données. Suite à ça j'ai étudié les autres applications d'acquisition pour reproduire l'interface utilisateur, suite à ça j'ai mis en place un système pour lancer l'acquisition, la stopper ou mettre à jour les valeurs que l'on veut acquérir.

Suite à ces deux projets principaux, j'ai également travaillé sur des petites améliorations comme améliorer l'interface des applications permettant de transmettre des données. Pour cela j'ai modulé les modèles de données pour les afficher différemment dans l'interface. J'ai aussi travaillé sur de nombreux problèmes survenus au cours du développement de l'application ou suite à des régressions. Pour donner un exemple, des données n'étaient pas justes dans une de nos applications et j'ai été chargé de réparer ce problème. Pour cela, j'ai demandé comment calculer les données et j'ai étudié le code pour savoir où il y avait un problème. Une fois le problème trouvé, j'ai mis à jour les méthodes puis j'ai réalisé des tests pour vérifier si les nouvelles données correspondent avec les données de référence que l'on m'a données.

Les acteurs du projet

Dans le travail sur ce projet, je fais partie d’une équipe comprenant une dizaine de personnes. Tous les matins, nous avons une réunion pour fournir un rapport sur notre avancée et demander de l’aide si besoin. Je travaille avec mes collègues pour la réalisation de certaines tâches comme le développement de l’application sur laquelle je suis actuellement mais également à la résolution de problèmes qui nécessitent des personnes avec une grande connaissance de l’application pour ne pas créer des problèmes en essayant d’en résoudre un.

Le résultat du projet et son lendemain

Concernant les résultats, personnellement, c'est l'acquisition d'une grande expérience en entreprise et ma progression technique tout au long du développement de ce projet. Maintenant du point de vue de l'entreprise, j'ai résolu énormement de problèmes dans l'application aidant ainsi à la maintenance de l'application. J'ai également apporté le développement de diverses fonctionnalités au sein de l'application comme le développement de nouveaux systèmes de vérification des équipements ou par exemple l'amélioration de fonctionnalités déjà en place dans Helios, ce qui apporte de la valeur à l'application Helios.

Pour les lendemains du projet Helios, l'application continue de développer des nouvelles fonctionnalités et de maintenir une maintenance des anciennes. Aujourd'hui Helios est utilisé par beaucoup de personnes présentes sur le terrain. Le projet existe depuis plus de 8 ans et on peut imaginer avec les constantes demandes d'amélioration qu'il est voué à durer dans le temps.

Mon regard sur le projet

Pour ce projet comme cité précédemment j'ai apporté de l'aide concernant la maintenance de l'application mais également développé différentes fonctionnalités qui contribuent à aider les personnes sur le terrain. Concernant ce que je retiens de cette expérience sur ce projet, j'apprends énormément d'un point de vue technique sur les différentes technologies que j'utilise au quotidien, je retiendrais que mes collègues sont toujours présents pour m'aider si j'ai un problème et que je peux aussi aider des personnes sur des sujets où j'ai de bonnes connaissance. J'apprends également comment gérer un projet au sein d'une équipe de 10 personnes et comment bien travailler en équipe en entreprise. Je terminerais en disant que grâce à ce projet j'ai appris à développer une application de zéro en utilisant des protocoles de communication complexe, appris à débuguer pour trouver les problèmes de manière efficace et surtout comment coder efficacement et proprement.