QUENTIN PEREA
STAGE
PRésentation
Com Network est une société qui a débuté son activité en février 2005. Elle fait partie du groupe d’entreprises Reel IT. Présidée par Raymond AUPHAN et dirigée par Lionel IMBERT, elle est spécialisée dans le secteur d’activité du commerce de gros ordinateurs, d’équipements informatiques, de périphériques et de logiciels destinés à divers professionnels. Elle dispose de plusieurs bureaux en France, comme à Toulouse, Lille, Paris, Montpellier, Nice et enfin Aix-en-Provence, son siège social. Son effectif est compris entre 20 et 49 salariés et son chiffre d’affaires sur l’année 2019 est de 34 844 238,00€.
Problématique
Au début du stage, le tuteur m’a montré la matrice des compétences que l’entreprise utilisait. Cette dernière se présentait sous la forme d’un tableau réalisé sur un fichier Excel. En effet, les employés de l’entreprise possèdent des certifications délivrées par des organismes, mettant en avant leurs compétences professionnelles. Cette matrice permet donc de réunir ces dernières et de suivre au fur et à mesure du temps leur évolution.
Toutefois, ce fichier posait quelques problèmes. En effet, son utilisation en local pouvait entraîner des risques de sécurité (perte, corruption, etc.), il n’était pas mis à jour et l’interface était peu ergonomique et relativement limitée.
C’est pourquoi le tuteur m’a demandé de faire évoluer cette matrice en l’intégrant dans une application web, accessible aux employés de l’entreprise et disposant de plusieurs autres fonctionnalités.
OUTILS UTILIsés
Pendant toute la durée de mon stage, l’entreprise m’a fourni un ordinateur avec lequel j’ai utilisé différents outils et logiciels nécessaires à la réalisation du projet qui sont les suivants :
​
-
JMerise : logiciel permettant la modélisation de bases de données, utilisé pour l’analyse du MCD du projet.
​
-
phpMyAdmin : application web de gestion pour les systèmes de gestion de base de données.
​
-
NetBeans : environnement de développement intégré, libre, permettant la prise en charge de divers langages de programmation tels que le PHP et le HTML.
​
-
GitLab : logiciel libre permettant l’hébergement en ligne du projet.
​
-
Slack : plateforme de communication collaborative, utilisée pour interagir avec le tuteur de stage.
​
-
Youracclaim : site permettant de répertorier les compétences des utilisateurs au travers de diverses certifications, utilisées pour construire la matrice des compétences.
​​
-
Postman : outil permettant la manipulation d’API au travers d’une interface de développement
​
-
Invite de commandes : logiciel d'interprétation des commandes qui affiche une interface utilisateur en ligne de commande, utilisé pour la configuration et l’exécution des fonctionnalités du projet ainsi que pour son importation en local et son exportation sur GitLab.
​​​​
-
Symfony : framework MVC en langage PHP utilisé pour la réalisation structurée et facilitée de l’application web.
Tâches réalisées et compétences mises en œuvre
-
Étude du cahier des charges
​
​
​
​
​
​
​
​
​
​
​
​
​
→ A1.1.1, Analyse du cahier des charges d'un service à produire
→ A1.1.3, Étude des exigences liées à la qualité attendue d'un service
→ A1.2.5, Définition des niveaux d'habilitation associés à un service
→ A2.3.1, Identification, qualification et évaluation d'un problème
​
​
​
-
Exploitation de l'API de Youracclaim
​
​
​
-
Documentation sur le framework Symfony
​​
→ A4.1.7, Développement, utilisation ou adaptation de composants logiciels
→ A5.2.1, Exploitation des référentiels, normes et standards adoptés par le prestataire
→ A5.2.4, Étude d'une technologie, d'un composant, d'un outil ou d'une méthode
​
​
​
-
Adaptation du template
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
→ A4.1.2, Conception ou adaptation de l'interface utilisateur d'une solution applicative
→ A4.1.7, Développement, utilisation ou adaptation de composants logiciels
​
​
​
-
Réalisation des entités de la base de données
​
​
​
​
​
→ A4.1.3, Conception ou adaptation d'une base de données
​
​
​
-
Adaptation de la page de connexion
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
→ A4.1.2, Conception ou adaptation de l'interface utilisateur d'une solution applicative
→ A4.1.7, Développement, utilisation ou adaptation de composants logiciels
​
​
​
Développement de l'application​
​
→ A2.3.1, Identification, qualification et évaluation d'un problème
→ A4.1.5 , Prototypage de composants logiciels
→ A4.1.7, Développement, utilisation ou adaptation de composants logiciels
→ A4.1.8, Réalisation des tests nécessaires à la validation d'éléments adaptés ou développés
→ A4.2.3, Réalisation des tests nécessaires à la mise en production d'éléments mis à jour
​
​
-
Développement de la connexion / déconnexion​​​​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
-
Développement de la page des certifications
​
​
​
​
-
Développement de la matrice des compétences
​
​
​
​
​
-
Développement de la page administrative des certifications
​
​
Template de l’application.​
Schéma du template de l’application.​
MCD de la base de données de l'application.
Page de connexion de l'application.
Organigramme des étapes d'authentification d'un utilisateur.
Organigramme de redirection de l'utilisateur.
Tableau des certifications d'un utilisateur.
Matrice des compétences regroupant les utilisateurs et les éditeurs de certifications.
Tableau des certifications de la base de données, géré par les administrateurs.
RAPPORT DE STAGE
CONCLUSION
Bilan sur le projet :
Bien que la matrice des compétences ait été réalisée, je n’ai pas pu m’occuper de toutes les tâches qui m’étaient attribuées, notamment les pages de gestion des éditeurs, des compétences, des titres ainsi que la fonctionnalité de synchronisation des utilisateurs avec l’AD et l’export de la matrice dans un fichier. Toutefois, ce stage aura permis de créer une grande partie de l’application, tant au niveau des fonctionnalités que du code, afin d’être terminée par la suite. La matrice et les diverses fonctionnalités pourront ainsi permettre une meilleure gestion des certifications ou encore des compétences des employés. L’application pourra également évoluer de façon pérenne et permettre la gestion de beaucoup plus d’informations sur le long
terme.
Bilan personnel :
Pour conclure, ce stage aura été ma première expérience professionnelle dans le monde de l’entreprise, puisque le stage de première année a été annulé à cause des circonstances sanitaires.
Tout d’abord, ce stage m’a permis de me détacher de l’aspect scolaire pour travailler sur un projet en autonomie, prendre des décisions et mettre en application les notions apprises au cours de ces deux années. J’ai pu découvrir les méthodes et certaines approches du développement informatique, me permettant ainsi d’avoir une plus grande adaptation, notamment pour les langages et méthodes de programmation comme le MVC, le PHP, le Javascript et l’Ajax, mais également pour les projets.
Ensuite, j’ai aimé chercher toujours plus d’améliorations à apporter aux différentes parties développées, ce qui m’a obligé à revenir plusieurs fois sur ces dernières. Certaines idées me sont ainsi venues et j’ai pu les proposer au tuteur de stage pour avoir son avis lorsque j’avais une difficulté ou que je voulais faire évoluer un élément d’une fonctionnalité par exemple.
Toutefois, j’ai été confronté à quelques dilemmes. Par exemple, l’utilisation de l’Ajax n’était pas nécessaire pour ce projet mais permettait pourtant une optimisation de l’application. J’ai donc dû me documenter dessus pour l’implémenter dans la plupart des fonctionnalités développées. Également, c’était la première fois que j’utilisais un framework dans sa grande partie, ce qui m’a obligé à faire beaucoup de recherches et d’essais avant de comprendre l’outil. Par ailleurs, j’ai rencontré quelques difficultés de compréhension concernant GitLab, puisque je n’avais pas l’habitude de travailler sur un projet divisé en plusieurs parties qui devaient être développées séparément.
Ainsi, j’ai apprécié travailler sur ce projet et être encadré par mon tuteur qui a trouvé le temps pour me guider et m’aider. L’expérience en entreprise a été très agréable et enrichissante, courte soit-elle. De plus, ce stage m’a permis de voir où étaient mes limites concernant l’informatique et m’a confirmé le souhait de poursuivre dans les mathématiques.