Faits clés
- Entreprise LEW Service & Consulting GmbH pour Lechwerke AG
- Rôle : développeur de logiciels backend (CDI)
- Période : Janvier 2021 à juin 2021
Contexte
Suite à la migration du portail client LEW vers un nouvel environnement, une nouvelle solution pour l'envoi numérique des factures est nécessaire. Celle-ci doit également pouvoir être étendue pour de futures opérations de numérisation.
Situation avant
Après la migration du portail clients, il fallait par exemple encore accéder à l'ancien portail pour la fonction de consultation des factures. De plus, tous les autres courriers devaient continuer à être envoyés par voie postale, même pour les utilisateurs en ligne. Il en résulte des coûts d'impression, de mise sous pli et d'expédition.
Objectif
Les objectifs suivants ont été identifiés :
- Les clients enregistrés reçoivent leurs lettres et factures sous forme numérique
- Les lettres et les factures peuvent être consultées pendant la durée d'utilisation des services en ligne
- Les anciennes factures présentes dans le système peuvent être mises à disposition ultérieurement
- Lorsque de nouveaux documents sont mis à disposition, l'utilisateur en est informé en temps réel
Mise en œuvre
Après une analyse approfondie des exigences, il a été reconnu que les documents pouvaient avoir des métadonnées différentes selon leur type. Pour pouvoir représenter cela de manière efficace, il a été décidé de stocker les données sur une Azure Cosmos DB. Celle-ci peut parfaitement gérer les données sans schémas.
Deux domaines sont impliqués dans la préparation des lettres. D'une part, le domaine SAP met à disposition toutes les informations nécessaires, d'autre part, l'Output Management les traite et déclenche l'impression et l'envoi. Une coordination étroite avec ces deux domaines était donc nécessaire pour développer un processus optimal pour l'envoi numérique.
La particularité de l'architecture logicielle dans ce cas précis était, outre la nouvelle base de données, l'identification du type de document. De plus, il fallait s'assurer que toutes les informations nécessaires soient disponibles de manière fiable malgré les trois systèmes impliqués. Selon le type de document, il devait également être possible de mettre à disposition d'autres modèles d'e-mails pouvant fournir certaines informations à l'avance. Étant donné que le nombre d'utilisateurs en ligne ne cesse d'augmenter en raison de la qualité accrue du portail et des initiatives de distribution, il faut également garder à l'esprit l'évolutivité.
Pour la mise en œuvre de la boîte aux lettres, l'application du portail clients fraîchement migrée a pu être facilement étendue. Les thèmes de base comme la mise à jour en temps réel existaient déjà et pouvaient être facilement complétés par l'événement "nouvelle lettre dans la boîte aux lettres".
Ici aussi, le concept déjà éprouvé de développement agile et itératif a été appliqué. Ainsi, dans un premier temps, seul le type de document "facture" a été transféré afin de vérifier si les clients s'en sortaient bien avec la nouvelle boîte aux lettres et si les systèmes fonctionnaient bien ensemble. Lors des itérations suivantes, d'autres courriers liés aux contrats ont été intégrés étape par étape. C'est là que la phase de conception a porté ses fruits. En effet, une extensibilité facile avait déjà été prise en compte à ce stade.
La sécurité ne doit pas non plus être négligée. C'est pourquoi un test d'intrusion a été réalisé afin de vérifier les fonctions et leur vulnérabilité.
Ma contribution
En tant que développeur de logiciels, j'étais responsable de la conception et de la réalisation des services backend. Cela comprenait entre autres la création des interfaces, l'implémentation des processus et le stockage des données dans la base de données NoSQL Cosmos DB. Ma principale préoccupation était que l'extension avec d'autres types de documents puisse être réalisée facilement.
Pour la coordination des processus techniques, je me suis occupée de la visualisation et de la documentation de ceux-ci sous forme de diagrammes. Pour ce faire, j'ai eu des échanges étroits avec les secteurs concernés.
De plus, pour le thème de la sécurité, il fallait organiser les tests d'intrusion. Pour cela, je me suis occupée de la coordination avec le prestataire de services, de la mise à disposition des données et informations nécessaires et de l'acceptation du rapport, y compris le traitement des résultats.
Technologies utilisées
Une multitude de technologies ont été utilisées pour la mise en œuvre de l'application. Le développement du backend a été réalisé en C# et .NET Core, tandis que le front-end a été principalement développé en React avec TypeScript. Pour le développement des interfaces REST et gRPC, j'ai utilisé le framework ASP.NET (Web API). Pour la représentation des processus asynchrones, j'ai utilisé NServiceBus, qui garantit la livraison des messages même en cas d'erreur. J'ai stocké les documents dans un Azure Blob Storage et les métadonnées correspondantes dans une Azure Cosmos DB.
D'autres métriques logicielles et logs sont collectés avec Application Insights. Des mises à jour en temps réel pour informer l'utilisateur ou actualiser le frontend ont été réalisées via SignalR et Azure Functions .
Avantages pour le client
Après la numérisation de toutes les lettres de clients légalement possibles, une réduction drastique des coûts d'impression et d'envoi a été constatée pour les clients disposant d'un accès en ligne. L'extension à d'autres types de documents peut être mise en œuvre avec la même rapidité et permet au client d'intégrer rapidement de nouvelles lettres dans ce processus à l'avenir également. En outre, le nombre de demandes adressées au service clientèle concernant la mise à disposition renouvelée des factures a été réduit. Les clients peuvent désormais les consulter de manière autonome à tout moment.
Vous avez également du mal à gérer des processus commerciaux complexes dans le monde numérique et vous avez besoin d'aide pour la mise en œuvre technique ? Je suis là pour vous aider.