Architecture Logicielle Heetch Final

Nous allons explorer l'architecture logicielle utilisée par Heetch, en analysant ses
composants, ses avantages et inconvénients, et les technologies employées pour maintenir
et développer ses services.

2. Description de l'Architecture Microservices de Heetch
2.1 Composants Principaux
2.2 Infrastructure
3. Un développement pour la Croissance Future
4. État de l’art
5. Stratégie Marketing et Positionnement
6. Impact sur le marché
7. Conclusion

Slides & Videos

Members

NameContribution
Galindo AdrianTout fait

State of the Art

Business Aspect

...

1. Stratégie Marketing et Positionnement

Heetch, certes il partage des architectures similaires avec ses concurrent, mais il se démarque de ses concurrents grâce à sa commission de 18%, la plus faible du marché ; à ce titre, la première cohorte de chauffeurs est assez facilement obtenue. La stratégie marketing de Heetch cible principalement les jeunes avec des prix compétitifs et une expérience utilisateur la plus réussie ; l’entreprise se positionne initialement sur le créneau de la nuit et utilise les réseaux sociaux et la présence à des évènements pour se faire connaître. 

2. Impact sur le marché

Heetch a su intégrer un marché des transports très compétitif avec les grands concurrents comme Uber ou bien Bolt. Son modèle de base qui était concentré sur une clientèle jeune a su faire développer son gain. Son impact a été tellement bénéfique que l’entreprise a su s’étendre sur d’autres pays. 

Technical Aspect

...

Il faut savoir que l’architecture logicielle de Heetch suit les meilleures pratiques modernes en ce qui concerne le développement web et mobile, en se basant principalement sur l’architecture microservices. C’est pour cela que qu’ils ont une grande modularité, une meilleure gestion des ressources et une flexibilité accrue pour le développement de nouvelles fonctionnalités. Faisons une comparaison avec ses principaux concurrents : 

  • Uber : Uber utilise également une architecture centrée sur les microservices. L’entreprise a commuté sur ce type d’architecture pour offrir une scalabilité et une résilience accrue à ses services. Les technologies utilisées par Uber sont similaires, par exemple Docker pour la conteneurisation et Kubernetes pour l’orchestration. L’amélioration continue est un élément clé pour lequel des technologies de développement, de test et de déploiement appropriées sont mises en œuvre. 
  • Lyft : Lyft suit la même approche que celle d’Uber par rapport à l’architecture basée sur les microservices. L’entreprise se repose sur les solutions du cloud provider pour gérer les services et garantir la haute disponibilité. En plus, Lyft investit activement dans la mise en œuvre des technologies ML pour l’optimisation des opérations et l’amélioration de l’UX. 
  • Bolt : Bolt suit également des pratiques modernes avec une architecture microservices. L’entreprise se concentre sur la rapidité et l’efficacité du développement, en utilisant des pipelines CI/CD pour automatiser les déploiements et les tests. Bolt met également l’accent sur la sécurité et la scalabilité pour répondre aux exigences de son marché en rapide croissance. 

Ces entreprises partagent des défis tels que la complexité opérationnelle, la latence dans les communications et la sécurité des systèmes. Cependant, ils ont tous pu relever ces défis avec succès en adoptant des outils avancés et des pratiques de développement flexibles et agiles.

Project Description

Problem Definition
...
Challenges & Motivation
...
Real and Complete Usecases

Technical Description

1. Introduction

Fondée en 2013 par Teddy Pellerin et Jacob Mathieu Heetch est une application permettant de commander des chauffeurs privés pour nos déplacements. Aussi présent dans plusieurs pays tel que la côte d’ivoire, l’Algérie, la Belgique, le Mali, l’Angola et le Sénégal. Heetch ciblait d’abord une clientèle jeune en proposant des courses exclusivement nocturnes pour la sécurité de ces derniers puis ont décidé de d’élargir et de proposer des course 24h/24 et 7j/7. Nous allons aborder pour cela l’architecture utilisé, ses avantages et inconvénients.

2. Description de l’Architecture Microservices de Heetch

2.1 Composants Principaux 

      • Heetch’s backend est développé en Node.js, et est découpé en microservices, on distingue les aspects suivants : les utilisateurs, les rides, les paiements, les notifications. 
      • Quant au Frontend, ici il s’agira de l’application mobile qui utilisera les API proposées par les microservices du backend. L’application est construite en React Native. 
      • Concernant les bases de Données, il y’a les données non structurées et semi structurées, où dans ce cas-là on utilise MongoDB. Mais pour les données structurées c’est Postgresql qui est utilisé. 
      • Pour le Services Cloud, Heetsh étant hébergé sur AWS, plusieurs services y sont attachés comme EC2 pour le calcul, RDS, pour les bases de données relationnelles, S3 pour la sauvegarde de fichiers. 
      • Ils utilisent aussi des services tiers comme Stripe pour le payement (les transactions sécurisée) ou bien Google Maps API pour les services de géolocalisation.

2.2 Infrastructure 

    • En ce qui concerne les microservices, ils sont envelopper dans des conteneurs Docker, facilitant leur déploiement et leur isolation. 
    • Les différents microservices :
      • Service des Utilisateurs 
      • Service des Courses 
      • Service des Paiements 
      • Service des Notifications 
      • Service des Chauffeurs 
      • Service des Tarifications 
      • Service des Avis et Notations 
      • Service de Support Client 
      • Service de Gestion des Flottes 
      • Service de Suivi et de Statistiques 
  •  
    • Le système Kubernetes  permet à heecth d’orchestrer et gérer les conteneurs, de plus il simplifie l’automatisation du déploiement. 
    • Les services communiquent principalement via des API REST et des messages asynchrones à l’aide de queues de messages comme RabbitMQ.

3. Un développement pour la Croissance Future

Pour s’adapter aux besoins croissants et aux évolutions technologiques, Heetch met en œuvre plusieurs stratégies de développement pour la croissance future : 

    • L’évolution : Heetch travaille toujours sur la scalabilité de son architecture microservices pour prendre en charge davantage d’augmentation de la base de clients et du volume de données. Les conteneurs sont orchestrés au-dessus du Kubernetes pour l’utilisation optimale des ressources et une réponse rapide aux pics de demande. Depuis quelques années, l’entreprise investit dans l’IA pour améliorer ses services. Par exemple, l’entreprise utilise des algorithmes de machine learning pour trouver le meilleur itinéraire pour les chauffeurs, prédire la demande et personnaliser l’expérience utilisateur. 
    • Renforcement de la sécurité : étant donné un plus grand terrain d’attaque avec les microservices, Heetch investit dans des technologies de sécurité plus avancées. Heetch déploie des outils d’automatisation afin de chiffrer les données, gérer la sécurité des API et utiliser des systèmes de détection d’intrusion pour sécuriser les communications et les données. 
    • Automatisation : Heetch souhaite automatiser davantage ses processus de développement et de déploiement. Heetch utilise des pipelines CI/CD pour accélérer le cycle de vie du développement, ce qui assure des mises à jour plus fréquentes et plus sûres. 

4. Fonctionnalités principales

    • L’inscription et l’authentification des utilisateur géré par JWT, qui va s’en charger de la sécurité des sessions.
    • Un app de réservation des trajet doit pouvoir donner la possibilité de réserver des trajets en temps réel ou à l’avance, avec estimation du coût et du temps d’arrivée, Heetch le fait.
    • Une Géolocalisation pour suivre en temps réel des véhicules via Google Maps API.
    • Bien sûr que les utilisateurs devront payer ses déplacements, donc le Système de paiement sécurisé intégré avec Stripe (paiements en ligne).
    • Pour donner un meilleur service aux client les avis et les évaluations des utilisateurs sont très importantes, c’est pour cela qu’ils peuvent laisser des avis et des notes aux chauffeurs.

4.1 Fonctionnalités innovantes :

Mode nuit : Fonctionnalité spécifique pour les trajets nocturnes, avec des chauffeurs spécialisés et des tarifs adaptés.
Matchmaking intelligent : Algorithme de mise en relation optimisé pour réduire le temps d’attente et maximiser l’efficacité des trajets.

  •  

5. Conclusion

De manière générale, l’architecture logicielle de Heetch utilise des principes modernes en matière de web et développement mobile, ce qui la rend agile et modulaire. Les concurrents de Heetch adoptent des approches semblables pour répondre aux exigences du marché du transport privé. À l’avenir, l’évolution de cette architecture consistera en une automatisation accrue, d’énormes IAs, une cryptographie plus forte, etc. Heetch cherche à rester compétitif et à fournir une valeur élevée à ses utilisateurs. 

archi(heetch)

Hardware

Materials
ImageNamePart NumberPriceCountLink
............🛒
Schematic

Software

External Services

...