Créateur d’Applications pour un Fournisseur de Services Microsoft

Créateur d’Applications pour un Fournisseur de Services Microsoft

Information
Région:
Allemagne et Monde Entier
Secteur:
RH et Recrutement
Type:
Web
Modèle d'engagement:
Temps et Matériaux
Durée:
Trois ans
Équipe:
Trois développeurs JavaScript de niveau intermédiaire à avancé
ID:
425
Technologies utilisées
Java
Azure VMs
Azure Kubernetes
Nest.js
Ajv
Redux
Saga
TinyMCE
Ubuntu
React
MongoDB
TypeScript

Défi

Le client aide les entreprises à adopter les logiciels Microsoft depuis plus de 25 ans. Au fil du temps, ils ont accumulé une vaste base de clients et une grande quantité de données, nécessitant une plateforme digitale puissante pour maintenir le bon fonctionnement des processus.

Avec cela en tête, l'entreprise a tenté de construire une plateforme en utilisant TypeScript, mais ils ont vite réalisé que leurs développeurs n'étaient pas en mesure de développer une application web aussi complexe par eux-mêmes.

À ce moment-là, nous avions déjà une grande expérience avec React et TypeScript. Il a été facile de le prouver, et l'entreprise nous a finalement engagés pour réaliser le projet.

Solution

Les premières tentatives de l’entreprise avaient abouti à une page web non réutilisable. Par conséquent, Elinext a dû développer le logiciel à partir de zéro.

Le client ne souhaitait pas simplement une application à usage unique. En substance, il voulait un noyau réutilisable et personnalisable, ou un créateur d'applications web.

Cependant, le client n’avait pas une vision complète du produit dès le départ. Nous avons dû rassembler des exigences fragmentées et les développer en spécifications produit sur lesquelles nous pouvions travailler. L'approche Agile s’est avérée particulièrement utile. Notre équipe s’est fréquemment entretenue avec le client, construisant le produit petit à petit, recueillant les retours des utilisateurs et ajustant le produit en conséquence.

Il y avait un back-end déjà en place, et notre tâche consistait à construire un front-end en utilisant React pour se connecter à ce back-end. De plus, nous avons développé un nouveau back-end pour stocker les données. Cela a donné lieu à trois composants majeurs: Data Service, Meta Service et Platform App.

Data Service

Le Data Service est un composant back-end responsable du stockage des données dans MongoDB. Un administrateur peut utiliser ce service pour gérer les données à travers plusieurs points de terminaison. Nous avons mis en place un système d'authentification des utilisateurs pour vérifier les droits d'accès et empêcher les utilisateurs non autorisés de gérer les données.

L'interface du Data Service prend en charge plusieurs langues.

Meta Service

Une grande quantité de données peut être stockée dans le Data Service, mais elle ne peut pas être utilisée tant qu'elle n'est pas organisée et affichée correctement. C'est pourquoi nous avons mis en place un autre composant back-end: le Meta Service.

Le Meta Service contient des règles pour l'affichage des données, comme les types de données, les champs des éléments, les actions des utilisateurs, etc. Il utilise JSON Schema pour décrire les données.

Une autre tâche pour ce composant est de vérifier l'intégrité des données. Le Meta Service valide les données pour s'assurer qu'elles sont stockées de manière cohérente et sécurisée.

Generic App

Le composant front-end que nous avons construit est appelé le Generic App. Les services font la majorité de leur travail en coulisses et ne sont accessibles qu'aux administrateurs système, tandis que l'application est l'espace de travail des utilisateurs réguliers.

Dans l'application, les utilisateurs peuvent visualiser et gérer différents éléments dans les limites définies par l'administrateur. Ces éléments peuvent inclure des factures, des projets, des abonnements ou d'autres types. Un utilisateur peut créer un élément à partir d'un formulaire prédéfini. Chaque type d'élément dispose d'un formulaire spécifique, tel que configuré avec le Meta Service, et les données sont stockées dans le Data Service.

Le formulaire peut inclure des champs tels que texte, date, téléchargement de fichiers, et menus déroulants. Si l'élément est un profil de sous-utilisateur, l'utilisateur peut configurer les permissions, les données à afficher sur le profil du sous-utilisateur, les rôles, les personnalisations visuelles, les sources de données, et plus encore.

Nous avons veillé à ce que l'expérience utilisateur soit aussi fluide que possible. Par exemple, lorsqu'un utilisateur modifie les données d'un élément, la page ne se recharge pas pour enregistrer les modifications. Nous avons également configuré l'authentification des utilisateurs via Microsoft SSO, permettant des connexions via Google, LinkedIn, Microsoft, et d'autres plateformes populaires.

De plus, les utilisateurs peuvent choisir entre les thèmes d'interface clair et sombre, afficher des lignes alternées dans les tableaux et basculer vers un menu horizontal. Et si une personne utilise l'application pour la première fois, elle peut utiliser le mode "Take a Tour" où elle reçoit des conseils sur les fonctionnalités de l'interface.

Résultat

Nous avons développé un créateur d'applications puissant pour le client. Ils peuvent l'utiliser pour créer toutes sortes d'applications, allant d'un simple site web à un logiciel de gestion d'entrepôt. Il n’y a probablement aucun domaine d’activité qui ne puisse être digitalisé à l'aide de cette application.

Après trois ans, le projet arrive à son terme. Nous l'affinons en nous appuyant sur les retours des utilisateurs, tandis que le client continue de découvrir son immense potentiel.

cosmo-1
cosmo-2
cosmo-3
cosmo-4
cosmo-5
cosmo-6
cosmo-7-2
Voulez-vous le même projet?
Vous Avez une Idée de Projet? Discutons-en Ensemble
Contactez-Nous