RSIT - LOGO
  RSIT – My Old Tools
RSIT - LOGO

Quelques années avant la concrétisation du projet My Own Tools et la déclaration d’activité de RSIT, des outils ont été développés sur une base de ce qu’allait être le Framework My Own Tools. Certes, à cette époque il n’était pas encore question de développer un Framework mais réalisation après réalisation il s’est avéré que la réutilisabilité de certains composants pouvait permettre une interconnexion de plusieurs systèmes.

Cela est particulièrement vrai avec le composant permettant la connexion à ces différents outils qui, ayant été codé de la même manière, permettait de s’identifier sur une réalisation puis d’ouvrir un autre outil en restant connecté sur la même session.

Ce bug est certes une faille de sécurité qui depuis a été corrigée mais cela a permis de reconsidérer l’utilisation d’outils multiples sur une plateforme centralisée et donc donné naissance petit à petit au projet My Own Tools.

Anciens outils

Les outils existants (2016 – 2019)

My Own CV

My Own CV #1

My Own CV fut réellement le premier projet développé hors de tout contexte professionnel. Le principe de cet outil était de permettre de rentrer mon propre CV dans une interface consultable. Très rapidement, j’ai estimé qu’avec les données de mon CV, je pouvais tout aussi bien rechercher des fiches ROME associées et les utiliser comme références pour transformer rapidement mon CV et l’exploiter de différentes manières. En effet, l’idée était de générer un CV sur demande pour la recherche d’emploi.

Telle entreprise demande un CV light avec seulement des mots-clés ? Aucun problème, je sais le générer. Une autre me demande un CV plus complet avec l’ensemble de mes expériences ? Je peux aussi le sortir en 3 clics maximum. Une dernière entreprise me demande un CV ciblé sur des compétences particulières ou sur une expérience dans un métier donné ? Je peux tout autant le faire grâce à My Own CV !

S’il y a bien une chose que je déteste, c’est perdre mon temps dans mes recherches d’emploi lorsque je suis au chômage, et Dieu seul sait combien de temps j’ai déjà perdu pour des recruteurs qui m’ont demandé de remplir des CV longs comme le bras pour détailler toutes mes expériences… Tout ça pour finalement oublier ma candidature ou la mettre de côté en attendant ou simplement ne plus donner de nouvelles au bout de 15 jours ce qui signifie que c’est globalement mort pour le poste proposé.

Alors soit, les mauvaises langues diront qu’en étant au chômage, de toute façon, on n’a que ça à faire… Eh bien non, pas du tout ! C’est une perte colossale de temps et je serais d’avis d’envoyer prochainement à ces recruteurs sans scrupules (qui en plus ont le culot de vous presser parce que c’est urgent pour hier mais qu’ils ont attendu la dernière minute pour vous contacter) une facture de prestation d’une heure minimum à régler sous quinzaine histoire de leur apprendre que les gens n’ont pas que ça à faire que de rédiger des CV pour leurs CVthèque personnelle… Non mais !

Du coup, c’est plein de mépris et de rancœur envers ce type de recruteurs que j’ai commencé la réalisation de My Own CV. Au départ, il était simplement question de faire un CV en ligne est d’extraire les données en PDF, et puis finalement j’ai décidé d’interconnecter My Own CV avec les codes ROME des métiers de l’informatique (repris à la main car l’utilisation des API n’était pas encore bien entré dans mes usages).

J’ai terminé cette partie, puis je me suis souvenu qu’il existait des CV au format européen qui n’ont pas grand-chose à voir avec les CV francophones… Je me rappelle avoir eu vers fin 2014 toutes les peines du monde à reconvertir des CV de collègues d’un format « classique » à un format européen et avoir eu des difficultés avec le mapping des référentiels… Néanmoins, j’y étais parvenu (et à cette époque-là oui, je faisais du support au côté obscur -les ressources humaines-) après quelques efforts et je me suis dit que ça aurait été intéressant d’avoir un outil permettant le mapping automatique CV classique vers CV européen.

Tant qu’à faire, pourquoi ne pas intégrer cette fonctionnalité par la suite dans My Own CV ? J’ai donc téléchargé le référentiel européen pour l’intégrer dans My Own CV via une série de tables en base de données… Mais avant de développer cette partie, j’ai imaginé que mon cas n’était pas isolé et qu’après tout il était possible que d’autres personnes aient envie d’utiliser un gestionnaire de CV dans lequel il suffit de rentrer ses données une bonne fois pour toutes pour finalement après ressortir à la demande ce qui est demandé par les recruteurs.

Et pendant qu’on y est, pourquoi ne pas proposer aux recruteurs la possibilité d’aller directement rechercher l’information à la source ? Prenez votre logo d’entreprise, sélectionnez un profil, récupérez les champs qui vous intéressent et faites vous-même en quelques clics le boulot que vous demandez de faire à vos candidats… Après tout, il faut bien justifier vos salaires mirobolants pour le « travail » que vous faites (faire à vos candidats qui eux ne sont pas payés aussi grassement que vous) 😉

D’accord, c’est puéril et mesquin de dire ça, n’empêche que le temps que j’ai passé à rédiger des CV en vain aurait été nettement plus utile au développement d’un outil de ce type permettant autant aux candidats qu’aux recruteurs de ne plus perdre un temps colossal à traiter des données qui, sur une interface commune permettant de traiter les CV en profondeur comme My Own CV,  auraient été récupérées en quelques clics. Alors certes, l’outil fonctionne à son minimum et seulement quelques fonctionnalités ont été réalisées parmi la longue liste de fonctionnalités prévues à plus ou moins long terme.

Il faut dire aussi que du temps à été passé pour réaliser le déploiement automatisé de l’outil, que ce soit la création de la DB, des tables ou le remplissage via des imports automatisés… Toute cette logique qu’on ne voit pas mais qui permet de déployer des serveurs My Own CV quasiment à la volée… et ça, c’est beau 😉

J’aurais souhaité pouvoir aller plus loin dans la réalisation de cet outil, toutefois ayant été embauché avant de pouvoir le finaliser, celui-ci est resté à l’état de projet inachevé permettant tout de même de voir mon CV :

My Own CV #2

Voici une capture d’écran du menu principal. Le noir me plaisait bien pour faire une démo mais j’avais prévu en fonctionnalité annexe la possibilité pour l’utilisateur de choisir son propre thème d’affichage parmi une liste de thèmes proposés par Bootstrap.

My Own CV #3

Typiquement, l’interface pour le candidat au niveau de chaque expérience professionnelle utilise un système de rubriques (Résumé, l’entreprise, Mon historique, Mes activités, Compétences acquises & validées et Anecdotes). Ici j’ai choisi la dernière entrée du programme, réalisée entre fin 2016 et début 2017 avant que je ne sois embauché par EMD Global – Creactive Studio en CDI à partir de Janvier 2017.

My Own CV #4

Pour la partie « L’entreprise » j’ai choisi de détailler au maximum car certains recruteurs demandent également ce type d’informations (dans quelle structure avez-vous travaillé ? Étiez-vous nombreux au niveau de l’effectif ? Quelle était l’activité principale de cette entreprise ?) et s’en souvenir des années plus tard peut représenter une véritable mission de recherche d’informations en soi !

My Own CV #5

Je vous partage un historique de 4 semaines pour une Période de Mise en Situation en Milieu Professionnel (PMSMP) pour montrer que l’on peut également rajouter pas mal de texte, ce qui est véritablement pratique pour ressortir des expériences à mettre en avant de façon globale. L’historique permet d’avoir en quelques lignes les informations pertinentes qui correspondent à la période, une sorte de résumé de ce que l’on a fait.

My Own CV #6

Plutôt que d’essayer de définir tout ce qui a été fait au niveau de mes activités en partant d’une page blanche, je me suis demandé s’il n’était finalement pas plus pertinent de partir d’un ou plusieurs codes ROME qui contiennent déjà des activités et de simplement « cocher » celles qui ont été effectuées, quitte par la suite à justifier chaque case cochée (cette fonctionnalité n’a pas été développée mais était prévue afin de permettre la réalisation d’un CV ultra détaillé et utilisable pour mettre en relief les expériences les plus intéressantes liées aux activités de chaque candidat !).

My Own CV #7

C’est exactement la même chose pour les compétences acquises et/ou validées pendant cette période. Tout provient du référentiel du code ROME définissant la mission, ce qui permet de valider toutes les compétences en lien avec celui-ci. De fait en se basant sur les codes ROME, on peut clairement côté candidat comme recruteur partir sur une base commune de critères de recherches pour faire la correspondance candidat / emploi la plus pertinente possible.

My Own CV #8

Ceci est clairement la cerise sur le gâteau de My Own CV. Non seulement j’ai intégré la fiche métier ROME directement dans mon référentiel et dans son intégralité, mais j’ai également la possibilité de renvoyer l’utilisateur sur le site de Pôle Emploi ou de l’ADEM (l’équivalent de Pôle emploi au Grand-Duché de Luxembourg) pour consulter le référentiel original. C’était bien avant que je ne découvre les API, j’ai donc tout repris à la main comme les vrais pour faire mon prototype 😉

My Own CV #9

Enfin, j’ai poussé la simulation à l’extrême en permettant également d’ajouter les diplômes et certifications associées à mon CV, avec le lien permettant d’aller consulter les certifications en ligne (pour celles qui le sont). My Own CV était donc un outil prometteur et très très très complet dont le développement a été arrêté et n’a pas repris. Il faut dire qu’entretemps le site de Pôle Emploi a évolué et que leur système de gestion des CV commence à se rapprocher des fonctionnalités de base de My Own CV sans toutefois aller jusqu’à la personnalisation extrême qui a été envisagée pour cet outil.

Le socle applicatif sur lequel a été développée My Own CV a lui aussi beaucoup évolué  et n’utilisait pas encore le Framework My Own Tools; Il s’agit d’une première réalisation et donc beaucoup de choses ont évoluées depuis, notamment au niveau du Back End de l’application qui a été sans doute l’un des moins bien réalisé par rapport à ce qui a été développé par la suite. Reprendre My Own CV aujourd’hui sur My Own Tools supposerait une refonte intégrale de l’outil, ce qui n’est pas impossible ;

Toutefois, il faudrait évaluer la pertinence de cet outil aujourd’hui sachant que l’investissement initial en temps pour un tel projet serait loin d’être anodin. Néanmoins, s’il y a un réel intérêt à le redévelopper ou si cet outil suscite votre intérêt, n’hésitez pas à m’en faire part via le formulaire de contact de RSIT.

My Own Specifications

My Own Specifications #1

My Own Specifications a été développé en-dehors du Framework My Own Tools et pendant une période de congés. En Juillet 2017, j’ai décidé de prendre un peu de temps pour préparer un outil d’aide à la décision côté maîtrise d’ouvrage (MOA). En clair pour les profanes, il s’agit d’un mini-site web expliquant de façon simple et malgré tout détaillée ce que l’on est en droit d’attendre de chaque type de projet web demandé à la société EMD Global – Creactive Studio.

C’est avant tout un outil informatif à destination des clients et des prospects de la société mais qui se veut aussi bien plus large que le cadre de la société elle-même. En effet, les conseils et surtout les checklists qui sont proposées sont encore d’actualité et d’une grande utilité pour bien préparer son projet web !

J’ai eu l’occasion de rencontrer beaucoup de clients et de me rendre compte qu’autant de leur côté que du côté des agences web il règne une certaine forme d’opacité sur les prestations. Il faut dire que (et c’est dit sans aucune forme d’animosité) pour ouvrir une agence web, il faut juste quelques connaissances en programmation ou en CMS et hop, vous êtes un professionnel du secteur ! Cela a l’avantage de permettre d’avoir plusieurs fournisseurs capable de gérer la demande client mais cela permet aussi malheureusement trop souvent à des gens qui n’ont aucune compétence réelle de déshonorer encore un peu plus une profession qui souffre déjà d’un déficit de confiance pour un certain nombre de clients dont les histoires pourraient passer pour de la science-fiction.

Or, s’il y a bien une chose que j’ai à cœur, c’est que le travail soit fait à minima proprement et que le client soit satisfait du résultat obtenu. Je préfère refuser des ventes que de rentrer dans le jeu de celles et ceux qui tirent les prix au plus bas pour finalement obtenir des réalisations à la hauteur des économies réalisées. Néanmoins, j’ai pu remarquer que la plupart des clients ignoraient totalement la différence entre les toutes les prestations proposées et qu’ils n’avaient nullement conscience que pour préparer un site web quel qu’il soit, il faut des contenus qui doivent être remis au prestataire sans quoi celui-ci sera dans l’incapacité de faire avancer le projet.

C’est donc à ça que sert My Own Specifications.

My Own Specifications #2

En accueil déjà, j’ai détaillé les autres parties. Pour chaque partie, il suffit de cliquer sur le titre pour afficher le contenu, qui parfois est plutôt succinct et qui dans d’autres cas est nettement plus long. Il y certaines recommandations qui nécessitent une véritable explication dont il est difficile de se passer si l’on veut clairement se faire comprendre par le client et lui faire mesurer l’importance de certains points pour la réalisation de son projet.

My Own Specifications #3

Voici un exemple de prestation concernant les sites de type « Vitrines » que l’on retrouve chez à peu près toutes les agences web. Vous remarquerez qu’outre les éléments classiques d’un comparatif avantages / inconvénients il y a également quelques conseils et recommandations fortement utiles, autant pour le client que pour un prestataire… Combien de prestataires se sont retrouvés à devoir reprendre un projet véreux d’une entreprise ayant limité tous les accès au client pour le tenir en otage ? Et malheureusement, ce type de pratique existe encore, c’est pour ça que ce type de conseils et de recommandations a été intégré dans My Own Specifications.

My Own Specifications #4

Dans les checklists de My Own Specifications, j’ai essayé d’être le plus exhaustif possible et de couvrir la plupart des sujets avec des informations pertinentes et utilisables pour les clients. Certes, c’est parfois un peu technique mais si demain on demande à un client ayant accès à My Own Specifications un logo vectoriel, il saura quoi demander à son graphiste ou à la société qui lui a vendu la création de son logo. Et on ne parle pas que de logos, loin de là… On va jusqu’au point ultime qui devrait être selon moi la base de chaque projet : le cahier des charges !

My Own Specifications #5

Il y a quelques personnes qui ont pris peur et d’autres qui se sont fait de faux espoirs quand ils ont vu la partie « Cahier des charges ». En effet, il était prévu d’adjoindre à My Own Specifications un générateur automatique simplifié de cahier des charges côté client comme côté prestataire. Il faut bien se dire que l’on ne réinvente pas systématiquement la roue à chaque fois ; les développements sont relativement identiques et certains sont mêmes hautement réutilisables une fois qu’ils ont été développés, testés et éprouvés. Il serait donc théoriquement possible de générer un cahier des charges à partir des éléments connus qui reviennent dans chaque projet web.

Cela permettrait aux clients de formaliser leurs demandes et aux prestataires de bien comprendre ce qui leur est demandé. Cela servirait également de base de travail commune alors que bien souvent les agences web considèrent (à tort, je le dis et le maintiens) que l’offre commercial est suffisante et peut faire office de cahier des charges. Si j’ai un seul conseil à donner à ce sujet ce sera le suivant : en face d’un « professionnel » qui vous dit cela, FUYEZ !

Aujourd’hui encore trop de projets n’aboutissent pas ou aboutissent avec des délais non respectés ou des surcoûts importants à cause du manque de cadrage de part et d’autres. Posséder un outil capable de générer un cahier des charges permettrait d’ores et déjà de résoudre une partie des problématiques en amont du projet. Néanmoins, je n’ai plus travaillé sur My Own Specifications après l’avoir mis à disposition sur le présent site qui à l’époque faisait office de portfolio professionnel d’où la référence à My Own Tools dans l’interface de My Own Specifications.

My Own Converter

My Own Converter #1

My Own Converter était sans doute l’outil le plus prometteur développé avant la création du projet My Own Tools. Pour faire simple, il s’agit d’un convertisseur de données permettant de charger un fichier source en import, un fichier de transformations et un fichier de destination à exporter. Le fichier source contient les données à transformer, le fichier de transformation document les transformations à effectuer et le fichier de destination est constitué à partir d’un fichier « modèle ».

Le principe de My Own Converter est de convertir des fichiers assez simplement sans avoir à refaire de développement applicatif ; à la place le traitement est déporté sur cet outil autonome qui, avec quelques paramètres simplifiés, va générer l’essentiel du traitement de façon totalement autonome et permettre des adaptations sur différents formats de fichiers et de données.

Le projet a été arrêté en plein développement courant 2017. Il s’agissait de présenter une alternative permettant à l’un des clients de la société EMD Global – Creactive Studio de pouvoir gérer ses fichiers de données provenant d’une plateforme Web afin de les réintégrer dans son ERP. Au moment où cet outil a été développé, il a été question d’en faire une plateforme mutualisée permettant sous condition d’abonnement d’accéder à des outils métiers spécifiques… Cela vous rappelle quelque chose ?

C’est en quelque sorte My Own Converter qui est à l’origine du projet My Own Tools. Alors certes, l’outil lui-même n’est pas fonctionnel et il ne s’agit que d’une démo présentée à un client qui s’est montré extrêmement intéressé par le processus et le fait qu’on puisse mutualiser des outils pour répartir les coûts de développement entre les utilisateurs d’une part. D’autre part, le principe d’accueillir plusieurs clients et de développer pour chacun un module de conversion de données peut permette de constituer à terme un catalogue de conversion qui pourra bénéficier à l’ensemble des clients.

C’est en tout cas l’approche initiale de My Own Converter et la base de ce qu’est le projet My Own Tools. Les bases restent les mêmes mais on a changé de dimension ; là où My Own Converter était un outil unique capable d’accueillir de multiples utilisateurs, My Own Tools est un ensemble d’outils pouvant être utilisés indifféremment par de multiples utilisateurs !

My Own Converter #2

Si le projet a été arrêté, cela ne veut pas dire qu’il n’a jamais été fonctionnel. La partie d’import des données a été complètement développée et comporte plusieurs informations pertinentes pour l’utilisateur et pour le développeur lui-même ! En effet, la partie « Imports » est composée de quatre niveau. Au premier niveau sont donnés les champs qui composent le fichier de données à importer, dans l’ordre dans lequel ils sont appelés et utilisés. Pour la phase d’import, une table temporaire va être créée dans la base de données puis supprimée après usage… Sauf que le nom des champs de la table ne suffit pas à créer la table !

My Own Converter #3

Ce qui va réellement permettre de définir la table c’est clairement la description de l’ensemble des champs à savoir :

  • Le nom du champ dans la table ;
  • Le type de champ (ici compatible MySQL) ;
  • La longueur de chaque champ (si requis) ;
  • Le fait qu’un champ accepte ou non une valeur nulle ;
  • Une description pour savoir quelle est l’utilité du champ.

Est-ce que pour autant c’est suffisant ? D’un point de vue purement fonctionnel c’est le cas mais dans le cadre d’un import il manque quelque chose d’essentiel pour que ça fonctionne :

My Own Converter #4

En effet, lorsqu’on importe un fichier de données, il ne faut pas oublier de préciser le délimiteur. Ici on se contente de donner la liste des délimiteurs autorisés (et elle est déjà fortement étendue si l’on considère qu’habituellement ne sont proposés que 4 ou 5 formats grand maximum). Cela peut paraître anodin mais sans le délimiteur, impossible de savoir où commencent et où s’arrêtent les plages de données…

My Own Converter #5

Il ne reste donc plus qu’à charger le fichier pour la table déterminée en entrée et à saisir le délimiteur puis à cliquer sur le bouton « Importer des données ». La saisie manuelle du délimiteur était prévue pour disparaître à terme et être automatisée mais le développement de My Own Converter n’est pas arrivé jusqu’à ce point d’automatisation. Par contre, il y a une fonctionnalité qui a été développée et qui va se retrouver par la suite sur l’ensemble des outils développés pour My Own Tools : Il s’agit de la partie « Informations »…

My Own Converter #6

Même si ça ne paraît pas transcendantal à première vue, c’est quand même d’une importance fondamentale car c’est ce qui va permettre de s’assurer que les tâches sont effectuées correctement… On peut donc suivre pas à pas le déroulement de l’ensemble du script jusqu’à son exécution finale parce que chaque étape du programme a été documentée et toutes les erreurs ont été systématiquement gérées et codifiées pour éviter les crashes non-contrôlés de l’application.

Dis comme ça, ça n’a l’air de rien mais quand on sait le temps qu’il faut pour coder ce genre de fonctionnalité on réalise qu’il y a des heures qui ont été investies dans la création de cet outil. Néanmoins cet investissement n’a pas été vain puisque cette fonctionnalité a été réutilisée ultérieurement dans toutes les réalisations qui ont suivies. C’est sur cette approche modulaire réalisée avec des composants réutilisables qu’à été bâti My Own Converter et sur laquelle repose le projet My Own Tools.

My Own Ticketing Tool

My Own Ticketing Tool #1

My Own Ticketing Tool est un outil qui peut s’avérer indispensable dans une structure ayant plusieurs collaborateurs travaillant sur le même projet. Certes, il existe sur le marché tout un tas d’outils plus ou moins accessible qui permettent plus ou moins de configurer un outil permettant de générer des « tickets », c’est-à-dire de gérer des tâches dans un ordre séquentiel en permettant de valider la tâche en cours et de l’affecter au prochain service ou au prochain utilisateur sélectionné, cependant My Own Ticketing Tool offre une solution simple à déployer et utiliser qui ne nécessite pas de connaissances particulières en programmation ou en déploiement, tout en ayant l’avantage de rester un outil léger destiné aux petites et moyennes structures.

Le concept de My Own Ticketing Tool est d’adapter des outils existants pour des grandes entreprises à de plus petites entreprises pour qui l’acquisition et la mise en place de ce type d’outil n’est juste pas possible en raison du coût et de la complexité technique de ces solutions.

My Own Ticketing Tool est un projet que j’aurais réellement souhaité mener à terme car il y avait un réel besoin de ce type d’outil pour permettre d’améliorer la qualité du suivi et raccourcir les délais ; malheureusement, comme pour bon nombre d’outils présentés précédemment, My Own Ticketing Tool a été suspendu en cours de développement en raison de contraintes de temps et de budget alloué à l’amélioration continue de l’entreprise.

L’outil reste donc largement inachevé mais malgré tout il constitue une avancée intéressante dans la conceptualisation des outils créés avant My Own Tools. En effet, depuis My Own CV (c’est-à-dire la première production en développement spécifique), il était possible de n’afficher que certains menus par rapport au rôle de l’utilisateur connecté… Ce qui permet de ne pas donner l’accès total aux fonctionnalités très avancée du programme qui pourraient en cas de mauvaise manipulation endommager l’application elle-même (ou la base de données).

My Own Ticketing Tool #2

Néanmoins, au bout d’un moment on commence à se rendre compte que les menus de fonctionnalité ne sont pas extensibles à l’infini et qu’à force de développer des fonctionnalités et de les ajouter on finit par se rendre compte que le code devient pratiquement illisible et que le changement des permissions d’accès devient une véritable gageure dès lors que l’on rajoute un niveau d’accès… Parce que oui, on n’est pas à l’abri d’avoir des utilisateurs ayant droit d’accéder à toutes les fonctionnalités sauf l’administration (normal) mais qui peuvent avoir accès à quelques fonctionnalités de paramétrage de l’application mais pas toutes quand même….

Un problème de modélisation ? Pas forcément… parfois c’est plus un problème de répartition des tâches et des responsabilités au sein d’une entreprise qui rend complexe les accès du programme… Alors que faire ? Déjà, une première approche utilisée dans My Own Ticketing Tool a été de séparer l’application en trois parties distinctes :

  1. La partie administrative concerne uniquement le traitement de la base de données et des tables de l’application
  2. La partie « Back Office » permet tout ce qui est import / export de données et des fonctionnalités avancées
  3. La partie « Front Office » est clairement le « Business Core », c’est-à-dire le cœur de l’application

Une fois cette séparation établie, il est apparu nécessaire de les différencier visuellement :

My Own Ticketing Tool #3

Voilà donc un aperçu de la partie « Administration » de My Ticketing Tool. Les couleurs dominantes sont le noir et le blanc, avec des contrôles de couleur rouge ; en développant et en présentant mes précédents outils je me suis aperçu que la plupart des gens détestaient les interfaces sombre et que la possibilité d’avoir une interface plus claire était nettement plus appréciée. Qu’importe, j’ai gardé le thème graphique pour la partie administration où, de toute façon, les utilisateurs de l’application ne sont jamais censés aller. Comme indiqué précédemment, la partie administration ne s’occupe en priorité que de la base de données et des tables qu’elle contient.

My Own Ticketing Tool #4

On peut bien évidemment passer d’une partie à l’autre en utilisant le bouton « Accueil » qui permet de revenir sur l’interface commune (ici My Own Ticketing Tool – Common) puis on peut sélectionner « ADMIN », « BACK » ou « FRONT » pour se rendre directement dans la partie concernée (si toutefois on a les accès, sinon à part le « FRONT » les autres parties ne sont même pas visibles). La différentiation thématique est ici beaucoup plus marquée, avec une police plus légère et un thème moins agressif visuellement. A noter que la fonctionnalité d’import montré via la capture ci-dessus est totalement opérationnelle, tout comme l’est la partie « ADMIN ».

My Own Ticketing Tool #5

Ce qui est vraiment très dommage c’est que le développement s’est arrêté juste à la partie « FRONT ». Tout le reste avait été créé et il ne manquait que les quelques fonctionnalités de base pour faire « tourner » l’outil de ticketing Néanmoins, l’expérience fut loin d’être inutile et la séparation des environnements (mais aussi des rôles des utilisateurs pour être totalement juste puisque les deux vont de pair) est devenu une constante intégrée dans tous les nouveaux projets depuis My Own Ticketing Tool.

My Own CPS

My Own CPS #1

My Own CPS a déjà été présenté brièvement dans les réalisations de RSIT. Il s’agit d’un outil métier développé spécifiquement pour la société CENTERMED à son usage exclusif mais pour lequel les droits de propriété n’ont pas été transférés et appartiennent encore à RSIT. Il m’est donc totalement possible de présenter cet outil dans sa version la plus aboutie. Pour information, l’outil présenté dans ces pages a été redéployé localement à partir de sa dernière sauvegarde de développement et ne contient absolument aucune donnée ayant pu appartenir à la société CENTERMED.

My Own CPS est une application de gestion de contrat de prestation de service (CPS). Les CPS sont des contrats qui encadrent une prestation déterminée pour laquelle le client achète un quota d’heures (généralement renouvelables une fois ce quota épuisé). Ces heures font l’objet de fiches d’intervention qui sont ensuite reportées sur un tableau de bord de suivi qui permet de suivre l’évolution du CPS et d’informer le client lorsque le quota d’heures allouées est bientôt épuisé.

Un CPS peut concerner des prestations qui sont liées ou non à un type de matériel spécifique. Le concept de My Own CPS a été d’adapter un outil de suivi basé sur Microsoft Excel en programme de gestion, sachant que ce premier développement sous Microsoft Excel était uniquement destiné à de la prestation sans matériel à gérer tandis que le développement de My Own CPS devait se baser sur du matériel spécifique réparti sur plusieurs lieux d’une même ville ou dans plusieurs villes et dépendant de services ou d’entités différentes…

Avec My Own CPS, on est donc passé d’un outil de gestion « simple » à un outil de gestion autrement plus complexe intégrant plusieurs dimensions et plusieurs cas de figure. Le tout avec une dimension contractuelle et juridique supplémentaire à développer en-dehors du développement lui-même. Autant dire que cela a été une réalisation plutôt complexe qui a démarré par un nouveau prototype sous Microsoft Excel :

My Own CPS - Preview #1

Dès le début de la mission, une analyse à été faite concernant le matériel à prendre en charge. Cela concerne autant ses caractéristiques technique que les éléments de localisation du matériel. À cela s’ajoute les coordonnées de contact de la personne plus les codes d’erreurs de l’appareil et le vecteur de signalement de la panne. Ci-dessus la première partie du modèle développé sous Microsoft Excel avec les informations nécessaires pour une fiche d’information. On a en bas de section la partie concernant la validation client pour le déclenchement de l’intervention. Toutes les interventions sont faites à partir d’une fiche d’information validée par le client qui peut soit avoir été envoyée par le client lui-même, soit qui font suite à une supervision ayant remonté un problème pour lequel le client n’est peut-être pas encore informé… Ensuite vient la fiche d’intervention à proprement parler :

My Own CPS - Preview #2

La fiche d’intervention est informatisée sous Microsoft Excel, ce qui permet des calculs automatisés au niveau des durées d’intervention intégrant également el déplacement… La fiche d’intervention elle-même est très simplifiée et ne contient pas d’informations redondantes avec la fiche d’information à laquelle elle est lié. Il y a donc une forme de dépendance entre les fiches d’information et d’intervention. Enfin, en troisième et dernière partie, viennent la validation des fiches d’intervention par le technicien de la société CENTERMED et le client. Les fiches sont contresignées et conservées pendant toute la durée du CPS.

My Own CPS - Preview #3

Chaque fois qu’une fiche d’intervention est réalisée, elle est copiée dans le tableau de bord où elle est déclarée et lue pour que les données soient reportées sur le tableau de bord, le principe étant de pouvoir suivre à chaque évolution l’état du contrat et le nombre d’heures restantes à consommer… Il faut noter que la séparation des heures en quart d’heure a provoqué l’apparition des « unités CPS » à raison de 4 unités CPS par heure. Pour 10 heures, on a donc 40 unités à décompter au niveau du tableau de bord qui calcule automatiquement les unités restantes.

My Own CPS - Preview #4

Aux fiches d’information et d’intervention se sont également rajoutée des fiches de supervision mensuelle qui permettent de déterminer chaque jour combien d’unités ont été utilisées pour la supervision du matériel concerné par le CPS, à savoir des défibrillateurs dans le cas de la société CENTERMED. Ces appareils sont pour la plupart monitorés sur la plateforme AIVIA.NET, ce qui permet de vérifier les appareils à distance et éventuellement d’effectuer certaines opérations à distance (redémarrage, configuration….). Les fiches de supervision mensuelle sont ajoutées au tableau de bord dans le calcul du décompte des unités du CPS (puisqu’on a séparé les heures en unités).

My Own CPS - Preview #5

Plus rare, nous avons eu un cas où il a été nécessaire d’échanger l’appareil contre un autre… Il nous a donc été demandé par l’un des clients de la société CENTERMED de créer une fiche d’échange de matériel. Cela fait donc une nouvelle fonctionnalité à développer dans My Own CPS. Une fois le prototype sous Microsoft Excel fonctionnel et testé pendant plusieurs jours (avec quelques améliorations au passage), le développement de l’application My Own CPS a pu démarrer rapidement en réutilisant la logique métier développée dans le nouveau prototype sous Microsoft Excel. Ne restait alors plus qu’à finaliser le codage de l’application :

My Own CPS #2

Pour développer My Own CPS, toute l’expérience acquise lors de la création des outils précédemment décrits dans la présente section a été réutilisée. Ainsi My Own CPS est d’abord multi-utilisateurs et multi-environnement. Il dispose d’un espace administration, d’un espace « Back Office » et d’un espace « Front Office », ce qui permet de bien séparer les tâches et les accès. Chaque environnement dispose de sa propre différenciation graphique et de ses propres fonctionnalités qui seront définies dans les lignes suivantes, auparavant une petite constatation :

My Own CPS #3

Il est maintenant possible de remonter d’un niveau supplémentaire. En effet, il a été inclus dans My Own CPS un mode permettant de remonter d’un niveau jusque sur la plateforme My Own Tools, qui est prévue pour accueillir divers outils. N’ayant pas eu d’autres outils à implémenter immédiatement après la création de My Own CPS, je me suis contenté de réutiliser pour My Own Tools le même menu que celui proposé par My Own CPS. De cette façon, il n’y a que l’accès vers My Own CPS sachant que si un jour je devais être amené à recréer des outils je pourrais modifier le menu de My Own Tools pour inclure les différents outils accessibles depuis cette interface. C’est donc en 2019 qu’est réellement né le concept du Framework My Own Tools.

My Own CPS #4

Au niveau des environnements, pas de surprises : on identifie immédiatement l’environnement d’administration à son fond noir et à ses lettres rouges ou blanches sur fond rouge. Grande nouveauté : cette fois-ci on charge une page dans chaque environnement qui explique globalement le fonctionnement du menu de façon à ce que les utilisateurs puissent prendre possession de cette partie s’il advenait que je leur revende ou cède leur outil pour une installation en local. Certes, ce n’est pas le but en soi mais c’est une possibilité négociable.

Autre nouveauté : en plus de la gestion des tables et de la base de données, on peut également gérer les demandes de création de compte utilisateur à partir de l’administration. On peut également importer des données en masse sur l’ensemble des tables et exporter en format CSV le contenu de chaque table à des fins d’analyse ou de sauvegarde. Ces nouveaux outils qui n’était à présent disponibles que dans l’environnement « Back Office » sont remontés au niveau de l’environnement administrateur. Quid des fonctionnalités de l’environnement Back Office ?

My Own CPS #5

Dans cet outil, l’environnement « Back Office » est appelé « Gestion CPS » est a un rôle un peu différent par rapport aux outils précédemment cités. Ici cette partie est utilisée pour la gestion réelle du CPS. On peut y ajouter des Clients, des Services, des Contacts, des Défibrillateus et des Contrats en utilisant les formulaires associés ou par import (mais cette fonctionnalité à été cantonnée aux tables servant à l’exploitation et plus aux tables systèmes, utilisables uniquement depuis l’environnement d’administration). On peut également consulter le tableau de bord de chaque client…

On retrouve comme précédemment le descriptif des fonctionnalités au chargement de l’environnement. Une nouvelle fonctionnalité d’archivage a fait son apparition car le volume de données n’a pas cessé d’augmenter à l’utilisation, ce qui a contraint à archiver les CPS terminés de façon à libérer de l’espace dans la production pour rendre plus lisible la liste des interventions et des fiches d’information… Autre fonctionnalité développée qui n’a pas été indiquée : le report d’unités et la facturation du matériel utilisé en intervention (batterie, électrodes, capot…).

Le report d’unité permet de mettre fin à un CPS et de l’archiver lorsque toutes les unités ont été utilisées. Cependant, si des unités ont été consommées en plus au cours d’une intervention, il est possible de reporter les unités consommées sur le prochain CPS. Cela permet en toute transparence de ne pas « perdre » d’unités au passage et de devoir les refacturer à part entière sachant que le décompte total est envoyé au client à la fin de chaque CPS. L’environnement « Back Office » n’est pas le seul a avoir fait peau neuve :

My Own CPS #6

L’environnement « Front Office » a également vu ses fonctionnalités changer et se voit à présent nommé « Opérations ». L’on va retrouver ici nos fiches d’information, d’intervention et de supervision mensuelle, avec une fiche de supervision quotidienne qui permet à chaque jour de déterminer les unités comptabilisées pour la supervision, en sachant que ces unités peuvent varier selon le temps consacré au monitoring. On retrouve également la fameuse fiche d’échange et la possibilité de consulter les données archivées.

Certes, c’est seulement le ou la gestionnaire qui a la capacité d’archiver les contrats mais ce faisant tous les documents appartenant à ce contrat sont également archivés ! C’est extrêmement pratique mais pour malgré tout garder une traçabilité des données, l’accès aux archives en consultation uniquement est permis aux opérateurs. Enfin, il y a un petit bouton d’aide qui explique rapidement comment fonctionne cette partie :

My Own CPS #7

Avec cette petite partie, même un opérateur débutant est susceptible sans aucune explication complémentaire de comprendre comment fonctionne les documents et quel est le circuit de validation à utiliser pour les CPS. C’est sûr que la validation systématique par le client peut finir par lasser mais au final, cela permet au client d’être informé de ce qui se passe et de décider si une intervention d’un opérateur est nécessaire ou s’il peut faire appel à ses ressources internes pour résoudre tout ou partie du problème.

Enfin, si vous avez remarqué, il reste dans le menu initial un point auquel je n’ai pas fait allusion jusqu’alors mais que vous avez sans doute remarqué : il existe un environnement « Outil RGPD » mais est-on bien certain qu’il s’agisse d’un nouvel environnement ou bien s’agit-il comme son nom l’indique d’un nouvel outil ?

My Own RGPD

Eh bien comme son nom pouvait le laisser présager, il s’agit bien d’un nouvel outil pour traiter les demandes RGPD… Intérieurement, je suppose que vous vous êtes posé la question de la pertinence d’un outil intégré dans un autre outil alors qu’il y a un menu de niveau supérieur nommé My Own Tools qui aurait pu héberger les deux outils My Own CPS et My Own RGPD au même niveau, ce qui aurait été plus logique… J’y ai pensé, je l’ai fait et puis je l’ai défait pour une raison d’ergonomie.

My Own CPS est le programme principal qui devait être développé. My Own RGPD est une sorte de bonus à part entière qui permet de répondre à une problématique RGPD en laissant les utilisateurs consulter leurs propres données et les modifier ou supprimer si nécessaire, conformément aux textes du RGPD. Dans le principe, on se fiche qu’il y ait un opérateur pour cet outil puisqu’on donne l’accès aux clients à ses propres données qu’il peut lire, mettre à jour ou supprimer selon son bon vouloir. On profite juste du système de connexion mis en place au niveau de My Own CPS pour passer de l’un à l’autre en un seul clic, sachant qu’il est possible de créer des comptes qui n’ont accès uniquement qu’à la partie My Own RGPD sans voir ni avoir la moindre information sur My Own CPS.

Bref, j’ai également profité de la création et du déploiement de My Own CPS pour développer mon propre Framework My Own Tools qui me permet déjà de développer des projets modulaires réutilisables.

My Own Formation Management

MyOwnFM

My Own Formation Management est le dernier outil en date avant que RSIT ne voie le jour. Déjà basé sur le principe de My Own Tools, il s’agit d’un gestionnaire de formations permettant de gérer des planning de formateurs, de gérer des séances de formation, des listes de participants et même la facturation de ces différentes formations. Bien que cet outil soit un prototype partiellement inachevé, il intègre tout comme My Own CPS des fonctionnalités existantes provenant d’autres plugins (dont un calendrier paramétrable et réutilisable pour chaque formateur).

Pour information, il s’agissait de développer un système de gestion de formation à destination interne au départ. Le besoin ayant changé plusieurs fois au cours du projet, ce prototype a été purement et simplement abandonné en cours de réalisation au profit d’un site vitrine intégrant une extension proposant seulement une partie des fonctionnalités envisagées au départ. De fait, l’outil n’a jamais été finalisé même s’il y avait là un potentiel intéressant.

My Old Tools

Pour conclure cette partie concernant les anciens outils, il parait utile de préciser que toutes les réalisations qui se sont succédées ont mené au projet My Own Tools bien avant que celui-ci ne soit réellement officialisé ou que RSIT ne soit mise en route. Il ne s’agit donc pas d’un coup d’essai mais d’un projet qui a su acquérir une certaine maturité à travers les années et les expériences menées sur chacun de ces outils.

Certes, la plupart de ceux-ci sont restés uniquement à l’état de projet et trop peu ont été finalisés, néanmoins il y avait derrière chacun de ces outils un réel potentiel mais aussi et surtout une réponse à des besoins spécifiques qui aujourd’hui encore sont peu ou pas du tout pris en charge en raison d’un coût de réalisation particulièrement élevé et probablement aussi d’un manque de cadrage initial côté Maîtrise d’Ouvrage.

Il faut garder à l’esprit que les outils présentés dans cette page ont été développés en marge d’un emploi à temps complet ou d’une mission temporaire ; certains ont même été conçus dans le cadre d’un emploi en tant que salarié et ont servi de maquette de présentation pour présenter aux clients des outils répondant à leur besoins spécifiques.

On peut également ajouter à cela le fait qu’il existe d’autres outils de cette époque qui ont été développés spécifiquement et qui n’ont pas été abordés car ils ne portent pas l’appellation « My Own » bien qu’ils soient clairement orientés vers ce modèle qui a été peaufiné de réalisation en réalisation. La différence à ce niveau étant que les outils portant l’appellation « My Own » sont des outils basés sur le Framework My Own Tools sur lequel RSIT a conservé l’ensemble de ses droits tandis que les autres outils font partie des développements réalisés dans le cadre des heures légales de travail en étant sous contrat, ce qui implique qu’ils portent le logo de la société pour laquelle ils ont été développés.

Au final, le développement de ces outils a renforcé l’idée de la création d’une boîte à outils structurée calquée sur un modèle unique permettant de connecter sur celle-ci un ensemble d’outils conçus pour une intégration modulaire. Un peu à la façon d’un ERP (Progiciel de Gestion Intégré) mais avec uniquement des outils spécifiquement développés pour répondre à des besoins particuliers d’une entreprise. C’est une façon pour RSIT de replacer l’informatique là où se trouve réellement sa mission première : au service des entreprises et non au service d’une quelconque rentabilité à court terme.

Car c’est bien là l’enjeu du projet My Own Tools : répondre aux besoins des entreprises à des tarifs raisonnables leur permettant d’acquérir les outils nécessaire sans pour autant devoir prévoir à l’avance un budget pharaonique. Les anciens outils permettent juste dans ce contexte de rendre compte de l’avancée et de la maturité de la plateforme au travers de différentes réalisations intégrant nombre de fonctionnalités spécifiques dont la plus grande partie est modulaire et réutilisable.