Module de gestion de tournées - SaveMyPaquet.

  • Analyse du besoin
  • Spécifications fonctionnelles et techniques
  • Développement
  • Documentation

Le client

SaveMyPaquet est un service de livraison du dernier kilomètre en Ile-de-France destiné aux e-commerçants. ils garantissent 1 livraison à domicile 100% réussie le jour prévu. En cas d'absence ils sécurisent le colis à la porte du destinataire grâce à un système breveté.

Ils proposent également leur système breveté à d'autres transporteurs qui souhaitent optimiser leur chaîne logistique en proposant 1 service de livraison à domicile sans avis de passage. Pas de re-livraison et moins de CO2 !

Ma mission

SaveMyPaquet a fait appel à moi afin de développer un module a intégrer à leur plate-forme qui permet la géstion et l'optimisation des tournées.

Leurs besoins

  • Pouvoir créer des tournées de livraison (en reprenant les commandes).
  • L'integration d'un logiciel d'optimisation des tournées externe ou le développer en interne.
  • Une API liée a ce module de tournées, pour la connection avec l'application mobile et les notifications en temps reél des clients.

Contraintes

  • Ne pas utiliser google maps, pour la géolocalisation a cause du coût voir cet article
  • Si possible de développer un outils d'optimisation interne.

Ma solutions

Avant toute chose j'ai établi spécifications fonctionnelles avec SaveMyPaquet afin de bien comprendre leurs besoins, leurs attentes et leurs impératifs.

J'ai aussi donc leur proposer l'utilisation de OpenStreetMap qui est totalement open source au lieu de google maps,

Pour l'optimisation des tournées, aprés des recherches j'ai trouvé OSRM : http://project-osrm.org/ un projet open source, et très puissant qui permet de créer son propre serveur d'optimisation, et utiliser une Api pour communiquer avec ce serveur.

Ensuite j'ai commencer les develeppements:

  • du module "Tournées"
  • L'installation et configuration du serveur OSRM et l'integration au module des tournées.

Enfin j'ai rédigé la documentation d'utilisation du module

Les résultats

Un module complet de géstion et d'optimisation des tournées :

  • La création d’une tournée, et l’ajout des informations de base.
  • L’affectation des colis ( en cours ) a la tournée.
  • La manipulation des points d’arrêts généré automatiquement: Modification, Suppression...
  • La réorganisation et Optimisation des tournées.
  • la visualisation dans la carte.

Technologies utilisés

  • PHP, Laravel, API RESTful, OpenStreetMap, Openlayers, OSRM, Docker, Git, Composer, Gitlab, Mkdocs, Typora