Rapport de lancement

Introduction

Dans le cadre de mon stage au sein de l’entreprise Polylogic à Guerville, je travaille sur l’application Optimag, un logiciel métier destiné aux opticiens en France. Cet outil permet de gérer l’ensemble des activités d’un point de vente optique : traitement des ventes et des commandes, suivi des stocks, gestion du tiers payant, communication client et signature électronique de documents importants.

Stage en développement web – Projet Optimag

Présentation du projet

Optimag est une application métier utilisée par des opticiens dans toute la France. Le projet vise à améliorer l’application pour ses utilisateurs professionnels, en optimisant les fonctionnalités existantes, en sécurisant davantage le traitement des données et en assurant une meilleure fiabilité générale.

Les enjeux principaux sont l’amélioration continue de l’outil pour répondre aux besoins des opticiens et la garantie d’un fonctionnement fiable. Les objectifs du stage consistent à participer à l’évolution de l’application, tant sur les aspects fonctionnels et graphiques que sur la sécurité, avec des actions telles que la mise en place de HTTPS et le développement d’une fonctionnalité de modification de mot de passe, à titre d’exemples concrets.

État des lieux technique

L’application Optimag est développée principalement avec 4D, un environnement de développement intégré combinant un moteur SQL, un langage de programmation spécifique et une interface utilisateur personnalisable permettant de créer des applications métier robustes. 4D est utilisé pour gérer les données des utilisateurs, la logique applicative et les fonctionnalités métiers. L’application s’appuie également sur JavaScript, HTML/SHTML et CSS pour l’interface et certaines interactions côté client.

L’application Optimag est hébergée sur un serveur GECom, utilisé pour centraliser et sécuriser les données des opticiens. Dans les locaux de Polylogic, l’équipe travaille principalement sur des postes Apple, ce qui influence certaines pratiques de développement et de test, notamment pour l’interface et les interactions côté client

À l’état initial, la partie administration fonctionnait correctement mais n’utilisait pas HTTPS, et la gestion des comptes ne permettait pas aux utilisateurs de modifier leurs mots de passe. Ces deux points ont constitué les missions qui m’ont été assignées lors des deux premières semaines

Mon rôle et positionnement

Je suis en charge du développement web d’Optimag. Le stage se déroule principalement en autonomie, avec un suivi régulier assuré par mon maître de stage. J’interagis également avec les autres membres de l’équipe, Aline, Thierry et Corinne quand j’ai des questions sur le fonctionnement l’application.

Il m’avait été demandé de passer le site en HTTPS et de développer une fonctionnalité de modification de mot de passe. Comme demandé, ces tâches ont été réalisées sur l’environnement local. Puis, de mon initiative, constatant le manque de protection, j’ai décidé de renforcer la sécurité en mettant en place le hashage des mots de passe avec bcrypt et une protection contre les attaques par force brute, avec blocage après cinq mauvaises tentatives pendant cinq minutes, afin de renforcer la sécurité du site et d’être conforme avec le RGPD.

Difficultés rencontrées

L’un des principaux défis a été la prise en main de 4D, un environnement que je n’avais encore jamais utilisé. J’ai dû apprendre à naviguer dans son interface et à maîtriser son langage spécifique pour pouvoir gérer les tâches qui m’ont été confiées. Cette expérience m’a permis de développer mes compétences en autonomie et d’améliorer ma capacité à m’adapter à de nouveaux outils.

Microplanning

Le microplanning ci-contre présente les missions principales de mon stage :

Semaines 1 à 2 – Sécurisation et administration

  • Prise en main de 4D, avec apprentissage du langage intégré et de l’interface pour gérer efficacement les tâches assignées.
  • Mise en place du HTTPS sur l’application pour sécuriser les échanges entre le serveur et les utilisateurs.
  • Développement d’une fonctionnalité de modification de mot de passe dans l’interface d’administration.
  • Renforcement de la sécurité : mise en place du hashage des mots de passe avec bcrypt et protection contre les attaques par force brute (blocage après 5 tentatives échouées).

Semaines 3 à 6 – Développement et optimisation

  • Intégration frontend et ajustements graphiques pour améliorer l’expérience utilisateur.
  • Suivi et travaux sur les aspects webmarketing et statistiques pour analyser l’usage de l’application.

Semaines 7 à 13 – À définir

  • Les missions seront précisées selon l’avancement du projet et les besoins identifiés.
Microplanning du stage