📌 Mon Stage de 1ère Année
Voici un aperçu détaillé de mon stage réalisé chez Event Orizon, où j’ai participé à la création d’un système de reporting d’activité innovant.
🏢 Informations Générales
- Entreprise : Event Orizon
- Projet : Reporting d’activité
- Période : 21 Mai 2024 – 26 Juin 2024
- Technologies : PHP, Twig, MVC, SQL, JavaScript, Git
- Travail en équipe : Groupe de 4 personnes
- Méthodologie : Agile (Scrum)
- Documentations
🎯 Objectifs du Stage
L’objectif principal était de concevoir et de développer un système de reporting d’activité performant et évolutif, permettant :
- D’analyser et formaliser les besoins métiers en collaboration avec l’équipe.
- De concevoir une base de données robuste pour stocker et gérer efficacement les informations.
- De mettre en place une application web en PHP respectant le modèle MVC.
- D’utiliser Twig pour une séparation nette entre logique métier et présentation.
- D’assurer une gestion sécurisée des utilisateurs et des droits d’accès.
- D’optimiser les performances et la maintenabilité du code.
🛠 Missions Réalisées
Création des schémas et des tables pour modéliser les activités, les dates, les utilisateurs et les rôles. Utilisation d’outils comme MySQL Workbench pour visualiser et optimiser les relations.
Structuration du projet en séparant clairement les modèles, vues (avec Twig) et contrôleurs pour améliorer la lisibilité et faciliter les évolutions futures.
Développement d’un système de reporting interactif, avec affichage des données sous forme de tableaux et graphiques. Intégration de bibliothèques JavaScript pour des graphiques dynamiques et possibilité d’export en CSV et PDF.
Création d’un module complet de gestion des utilisateurs (création, modification, suppression) avec une attention particulière portée aux mécanismes de sécurité, incluant la gestion des sessions et la prévention des injections SQL.
📋 Préparation et Méthodologie
- Analyse des besoins : Réunions avec l’équipe et les responsables pour définir les fonctionnalités clés et les contraintes du projet.
- Planification : Établissement d’un calendrier de sprints hebdomadaires dans une approche agile, avec utilisation d’outils comme Trello pour le suivi des tâches.
- Recherche et Veille Technologique : Étude des meilleures pratiques en développement web, notamment en matière de sécurité et d’optimisation des requêtes SQL.
- Gestion de Version : Utilisation de Git pour assurer une collaboration fluide et une gestion rigoureuse du code source.
🏗 Architecture Technique
- Frontend : HTML5, CSS3 et JavaScript pour une interface utilisateur responsive et interactive.
- Backend : PHP en suivant le modèle MVC, assurant une séparation claire des responsabilités et une meilleure maintenabilité.
- Base de Données : MySQL avec des requêtes optimisées pour garantir des performances élevées même en cas de forte charge.
- Template Engine : Twig, pour une gestion efficace de l’affichage et la réutilisation des composants d’interface.
- Sécurité : Mise en place de mécanismes de validation, de gestion des sessions et d’audits réguliers pour renforcer la protection contre les attaques.
🔬 Tests et Assurance Qualité
- Tests Unitaires : Utilisation de PHPUnit pour valider les fonctions et modules critiques.
- Tests d’Intégration : Simulation de scénarios d’utilisation réels afin de vérifier la cohérence globale du système.
- Tests de Sécurité : Vérifications systématiques pour détecter et corriger les vulnérabilités (injections SQL, XSS, etc.).
- Tests de Performance : Analyse des temps de réponse et optimisation des requêtes pour une meilleure expérience utilisateur.
🙏 Remerciements
Je tiens à remercier chaleureusement mes coéquipiers, mon encadrant ainsi que toute l’équipe d’Event Orizon pour leur soutien, leurs conseils et leur confiance tout au long de ce projet. Leur collaboration a été déterminante pour la réussite de ce stage.