La multinationale, un fabricant de photocopieurs et d'imprimantes basé en Suisse, a chargé Elinext du développement d'un système de commandes et d'offres commerciales.
Défi
Le client avait une application pour traiter les commandes et offres commerciales. Cette application était peu pratique et paralysait tout le processus. En réalité, il s'agissait d'une feuille de calculs Excel assortie de scripts Visual Basic et liée à une base de données. Ce qui avait commencé comme une solution simple il y a plusieurs années était par la suite devenu inutilisable.
Au premier abord, cette feuille de calculs Excel nous a décontenancés. Elle était remplie de tout un tas d'éléments, de formules, de dépendances et de chiffres. La base de données, quant à elle, était dénormalisée par un outil PGI tiers coûteux qui servait à organiser les données.
L'entreprise avait essayé de réparer le système en y apportant des modifications avec Visual Basic, mais sans succès. Il était grand temps de passer à une technologie plus sophistiquée, et le client a donc fait appel à notre aide pour refondre le système.
Solution
Elinext a assigné deux équipes distinctes au développement du frontend et du backend de ce projet. Ces équipes suivent la méthodologie Scrum et travaillent en collaboration serrée avec le client. Depuis le début, nous échangeons quotidiennement via des applications de messagerie et nous nous réunissons par lien vidéo les mercredis. Le client nous a également soumis des tickets dans Jira.
Nous avons utilisé Java ainsi que Spring Cloud pour construire l'application. Au fil du projet, l'architecture a évolué et est passée d'un monolithe à des micro-services, qui ont progressivement remplacé cet outil PGI incommode. Cela a considérablement amélioré la rapidité de l'application.
Ses utilisateurs sont le personnel de notre client, ses revendeurs et ses représentants commerciaux. Nous avons élaboré un système de rôles utilisateurs où un administrateur peut assigner plusieurs rôles à un utilisateur et préciser quelles fonctions lui sont accessibles. Faisons le tour de ces fonctions.
Offres et Commandes
En fonction de leur rôle, les utilisateurs peuvent créer et modifier des offres ainsi que gérer des informations telles que les données des clients et des produits. Voici comment cela fonctionne: un vendeur crée une offre et l'envoie à son manager pour approbation. Le manager peut valider l'offre et en faire une commande immuable ou bien la rejeter et la renvoyer pour corrections.
Modèles
Nous avons activé les modèles de commandes et d'offres pour uniformiser le processus. Deux langues de création de document sont disponibles: l'allemand et le français.
Profits et KPIs
Les revendeurs régionaux et représentants commerciaux peuvent calculer leurs profits dans le système. Les utilisateurs qui les supervisent peuvent également consulter les performances des représentants commerciaux sur la base du nombre d'offres et de commandes traitées par mois.
Calcul du Coût par Page
Nous avons également développé un micro-service qui calcule le coût par page d'impression. Un vérificateur fait environ 300 calculs et les utilisateurs peuvent exporter les résultats sous forme de fichier CSV. Ce type d'indications chiffrées aident les représentants commerciaux à montrer les avantages du produit à son client.
Résolution d'Erreurs
Un autre micro-service importe les données erronées depuis l'autre source du client via une API qui liste ces erreurs et résout automatiquement les moindres. Son élaboration s'est révélée être un défi particulier puisque le client nous a demandé d'inverser la conception du code Visual Basic.
Pour ce faire, nous avons dû résoudre quelques problèmes avec Visual Basic. Nous avons trouvé de nombreux bugs et erreurs dans l'application backend d'origine du côté du client et l'avons convaincu de nous laisser les résoudre.
Résultats
Nous avons livré le projet en respectant les limites de budget et dans les temps. De plus, nous avons prouvé que le développement sur-mesure, aussi coûteux qu'il puisse paraître, peut se révéler moins onéreux que d'utiliser des outils corporatifs tiers.
La nouvelle application fonctionne aussi rapidement qu'il est possible. Ses utilisateurs disposent de nouvelles fonctions qui leur permettent de vendre plus et de profiter plus de leurs ventes.
Cependant, le travail sur le système de commandes et d'offres commerciales n'est pas terminé. À ce jour, nous avons plus de dix nouvelles mises à jour en développement, et le client ne cesse d'avoir de nouvelles idées pour ce produit.