Skip to main content

Présentation de vécolo

     I.          Introduction

1.    Problématique

Aujourd'hui, la technologie nous facilite la vie de tous les jours. Par exemple, les moyens de transport sont de plus en plus diversifiés et toujours plus optimisés pour le développement durable afin de toucher le plus de personnes possible. Des services existent même pour permettre aux usagers de bénéficier par exemple d'un vélo partout dans une ville afin de se déplacer librement (Vélib).

Mais ces vélos ne sont pas adaptés pour tout le monde (personnes âgées ou peu endurantes ...) et depuis peu, ces services proposent également la location de vélos électrique. Ces vélos sont rechargés à l'aide de bornes dispersées dans la ville et sur lesquels les vélos doivent être rendu après un trajet. Seulement l'énergie utilisée pour recharger les vélos n'est pas toujours très
écologique, ce qui vient casser le concept de base qui était de proposer à une ville un moyen de locomotion en libre-service et vert.

2.    Solution

L'entreprise Vécolo propose un service de location de vélo électrique rechargé uniquement grâce à une énergie renouvelable. Plusieurs bornes sont réparties dans la ville de Paris. Elles sont équipées d'un panneau solaire, d'une éolienne à axe verticale ainsi que d'une batterie pour stocker l’énergie si aucun vélo n'est à recharger.

La borne sera composée d’un abri où les gens vont et viennent, déposant leurs vélos, les laissant recharger et les reprennent. La borne de recharge partage l’énergie entre les différents vélos en cours de rechargement. L'emplacement sera conçu pour être entièrement autonome.

Le chiffre d’affaires de l'entreprise se fera par des abonnements ainsi que des partenariats. Plusieurs forfaits seront disponibles en fonction du besoin de la personne. L'entreprise devra s'assurer de l'achat et la maintenance des vélos.

3.    Etudiants ayant participés

Noé LARRIEU-LACOSTE

Je m’appelle Noé LARRIEU-LACOSTE, actuellement en 3ᵉ année à l’ESGI, j’ai également effectué mes deux premières années dans cette école. Cela m’a permis de me familiariser avec beaucoup de langes de programmation et technologies à travers plusieurs projets.

Le projet demandé étant un sujet libre, nous avons été très ambitieux sur le travail à réaliser, mais c’est l’occasion pour nous de montrer ce dont nous sommes capables de faire après 3 ans d’études. Il y a beaucoup d'aspects extrêmement intéressants dans ce projet que nous avons envie de développer et même si nous ne savons pas tout de suite comment les faire, nous avons hâte d'apprendre et d'aboutir à quelque chose de grand qui marquera.

Swann HERRERA

Je suis un jeune développeur qui travaille en alternance dans une petite agence de communication. J’ai fait mes deux premières années de formation théoriques à l'ESGI. Cette collaboration avec Noé n’est pas la première, en effet, nous avons déjà eu le plaisir de mener à bien d’autres projets.

Mon partenariat avec Clément est plus récent, bien que nous nous connaissions depuis notre première année à l’ESGI. Néanmoins, je qualifierai notre entente, depuis cette date, comme très bonne.

Au début de ce projet, j'avais une certaine appréhension à propos d'Angular, n'en ayant jamais fait auparavant, même si je suis plutôt habitué au framework frontend. La partie java et la partie micro-langage avaient aussi une position particulière, puisque pas vraiment en lien avec le projet de départ.

     II.          Focus sur LES APPLICATIONS

Sans compter la partie sur l’intégration serveurs, 5 applications ont été développées pour ce projet.

1.    Vegular (front-Office)

Une application web a été développé pour permettre aux administrateurs comme les clients d'utiliser le service Vécolo.

Cette application a été développée à l'aide du framework Angular, développé par Google.

Répartition et charge de travail

Ce projet a été fait côte à côte entre Noé et Swann.

Liste non exhaustives des tâches effectuées :

•    Export PDF (Noé)
•    Gestion des trajets (Noé)
•    Mise en place de l’architecture de l’application et du DataStore (Noé)
•    Création des composants partagée (Noé & Swann)
•    Gestion des utilisateurs (Swann)
•    Gestion des stations (Noé)
•    Gestion des abonnements (Noé & Swann)
•    Gestion des vélos (Swann)
•    Carte interactive (Noé)
•    Page d’accueil & formulaire de contact (Swann)
•    Statistiques (Noé)
•    Upload de fichiers (Swann)

2.    VeAPI (Back-Office)

Afin que notre application web puisse correctement communiquer avec notre base de données et les différents services, une API a été développée en NodeJS. Celle-ci sert notamment d'interface avec la base de données.

Répartition et charge de travail

Ce projet a été initié par Swann et Clément. Clément a commencé à travailler principalement sur les routes et services jusqu’à son départ. L’application a ensuite été reprise en main par Noé et Swann.

Liste non exhaustives des tâches effectuées :

•    Gestion des factures (Noé)
•    Envoie de mails (Noé)
•    Routines (Noé)
•    Authentification (Swann)
•    Seeds (Noé & Swann)
•    Architecture de l’application (Swann)
•    Modèles et services initiaux (Swann & Clément)
•    Création des migrations pour la base (Swann)
•    Servies initiales (Swann & Clément)
•    Upload de fichiers (Swann)

3.    Vekanban (Application Java)

Afin d'avoir une gestion de projet agile, nous avons développé une application Java de type kanban dans le but de pouvoir répartir les tâches au sein de l'équipe de développement.

 

Répartition et charge de travail

Ce projet a été essentiellement réalisé par Noé, car plus à l’aise avec les technologies utilisées et le soutien de Swann.
Liste non exhaustives des tâches effectuées :

•    Fusion de Java FX et Spring (Noé)
•    Log4J (Noé & Swann)
•    Intégration des services (Swann)
•    Gestion des labels FX (Noé)
•    Gestion des projets FX (Noé)
•    Gestion des taches FX (Noé)
•    Gestion du compte FX (Noé)
•    Markdown FX (Noé)
•    Plugin (Noé)

4.    Vemock (Mockage des stations)

Puisque la mairie de Paris n'a pas souhaité nous financez pour mettre à disposition des stations dans la ville, il a fallu les simuler nous-mêmes pour avoir un comportement cohérent sur le site.

Nous avons développé Vemock pour répondre à ce besoin et simuler le comportement d'une station complètement autonome.

Répartition et charge de travail

Ce projet a été réalisé par Noé, car c’était lui qui possédait le Raspberry et avait une bonne idée, déjà de quoi faire.

5.    Vescrapper (Langage de programmation)

Vescrapper est un langage de programmation que nous avons développé afin d’effectuer des recherches avancées sur internet pour trouver des références et des images de vélo pour pouvoir trouver les revendeurs et alimenter Vécolo à vélo

Répartition et charge de travail

Ce projet a été réalisé par Noé et Swann.
Liste non exhaustives des tâches effectuées :

•    Grammaire du langage (Noé & Swann)
•    Reduction du langage (Noé & Swann)
•    Menu CLI (Swann)
•    Construction des requêtes google (Noé)

6.    Architecture serveur

Ce projet a une partie serveur assez poussé, puisqu'elle regroupe beaucoup d'applications qui sont gérées grâce à docker ainsi que de la réplication dans des clusters.

Voici le schéma final de notre architecture logicielle

 

     IIII.          Bilan du projet

1.    Organisation du projet

Pour la réalisation de ce projet, nous avons tenu un jour dans l'équipe un diagramme de Gantt sur les différentes tâches à faire au sein des différents projets. Nous vous invitons à le consulter pour constater la répartition des tâches entre les membres du groupe.

image.png