« La gestion de la performance est une composante intrinsèque d’un projet ERP au même titre qu’un lot fonctionnel. Elle doit être anticipée, testée et optimisée pour ne pas s’entendre dire au démarrage que ça rame… »
On entend souvent parler de « gestion de la performance » dans le déploiement de solutions ERP, mais en quoi consiste cette notion de performance concrètement ? Une fois l’ERP mis en place, comment évaluer sa performance ? Est-ce seulement une tâche d’optimisation des temps de traitements à faire durant la recette ? Ou plus largement, une démarche globale à intégrer dès le départ dans le cahier des charges ERP ?
C’est pour répondre à ces questions que nous avons interviewé Thierry Belliard, Architecte Technique spécialiste de l’ERP Microsoft Dynamics 365 et du Cloud Microsoft Azure. Thierry a rejoint TVH Consulting dès 2006 et intervient sur toutes les phases d’implémentation des projets Microsoft Dynamics 365, de l’avant-vente à la mise en place du support, la formation des équipes techniques client, la conception et le développement de modules spécifiques ou la mise en place de benchmarks. Certifié sur de nombreux produits Microsoft (Dynamics AX, D365, CRM, SQL Server, Azure…), il apporte son expertise pour répondre aux enjeux de performance, de flexibilité et d’évolutivité de la solution ERP déployée.
Thierry, comment abordez-vous la problématique de la performance dans les projets ERP Dynamics 365 sur lesquels vous intervenez ?
Prendre en compte la problématique des performances est une nécessité dès le début du projet ERP, cela s’inscrit dans une démarche naturelle de gestion de la qualité. Un projet ERP ne dure pas quelques mois, il faut se projeter au-delà du Go Live et s’assurer que la solution sera capable d’accompagner la croissance de l’entreprise, d’absorber d’autres sociétés, de multiplier le nombre d’utilisateurs sans dégrader la bonne exécution des processus de gestion… On ne peut pas attendre le démarrage pour se dire finalement que ça rame !
Le sujet de la performance est une composante intrinsèque du projet ERP, au cours de laquelle chacun doit anticiper les problèmes, identifier les sources de lenteur et optimiser les modules dont il a la charge pour éviter de se retrouver face à un problème par la suite, beaucoup plus impactant et compliqué à résoudre. C’est d’autant plus important lorsque l’entreprise migre vers D365 alors qu’elle utilisait des systèmes Legacy, peut-être moins innovants, mais mise en œuvre par des utilisateurs « experts » et qui fonctionnaient parfaitement, offrant performance, stabilité, prédictibilité !
De plus en plus de projets ERP se font dans le Cloud, est-ce qu’il suffit de souscrire à plus de serveurs, de processeurs et de mémoire pour améliorer les performances ?
La question liée au Cloud est plus complexe que la seule dimension matérielle et nécessite de prendre en compte le contexte de chaque client. Quand on achète un service standard dans le Cloud, que ce soit un ERP ou une autre solution logicielle, il sera optimisé uniquement pour un contexte d’utilisation du standard. Le fournisseur Cloud connaît ses benchmarks, et sait par exemple comment se comporte sa solution en charge avec du volume…
En revanche, lorsque des PME ou ETI déploient l’ERP Microsoft Dynamics 365, elles souhaitent avant tout adapter le standard pour que la solution prenne en compte leurs processus spécifiques, garants de la valeur perçue par leurs clients, et donc source de leur différenciation. 75% des clients D365 ne démarrent pas uniquement sur du standard, ils ont des personnalisations, plus ou moins importantes à la fois sur les processus mais également sur le modèle de données, les éditions, ou encore les interfaces. Or, la modification de ces composants entraîne inévitablement des conséquences techniques sur les performances et malheureusement, l’idée reçue comme quoi il suffirait de rajouter des processeurs et de la mémoire dans les serveurs n’est pas réaliste.
Il faut savoir que dans les infrastructures Cloud, les processeurs tournent bien souvent à des fréquences inférieures à celle de nos PC et pas 7 GHz ou plus encore ; ils consommeraient beaucoup trop d’énergie, ce serait économiquement insupportable mais irait également à l’encontre des engagements RSE. Du coup le nombre d’opérations réalisables par processeur dans un temps imparti est plafonné. Autrement dit, si l’on ajoute des processeurs, on augmente la capacité pour faire travailler de nouveaux utilisateurs en simultané, mais individuellement ils ne pourront pas travailler plus vite !
Nos expériences de déploiements de projets ERP Microsoft Dynamics 365 dans le Cloud et en mode On-Premise nous montrent que le dimensionnement des architectures est la mise en correspondance entre des ressources matérielles et une évaluation méthodique de leur usage par chaque client, car comme évoqué précédemment chaque client est unique. Toutes les parties prenantes du projet ERP doivent donc s’impliquer dans la conception d’une solution performante.
Si la performance de l’ERP déployé est l’affaire de tous, comment mieux l’appréhender ?
L’équipe projet, consultants, développeurs et le client doivent s’y intéresser pendant toute la durée du projet afin de prendre les bonnes décisions et cela commence par se poser des questions toutes simples : combien de commandes reçues par jour ? Avec combien de lignes ? Est-ce qu’il y a des pics d’activité ? Les réponses ne sont pas anodines car elles permettent d’apprécier les volumes et leurs fluctuations, afin de pouvoir ensuite dimensionner correctement la base de données, identifier les traitements machines qui seraient les plus gourmands et proposer au client une solution performante et évolutive.
Je fais souvent le parallèle avec le succès en Formule 1 qui ne repose pas uniquement sur les mains du pilote, ni sur celui qui fait le plein… mais bien sur toute l’équipe qui conçoit et adapte de manière continue la voiture selon tous les cas de figure rencontrés en tenant compte évidemment des contraintes du cahier des charges défini au départ par la Fédération, et de la stratégie de course. Le pilote y participe pleinement pour bien comprendre comment la voiture va fonctionner afin qu’il la conduise parfaitement et gagne la course !
Il en va de même avec l’ERP. Les consultants de l’intégrateur doivent non seulement appréhender les spécificités du client mais également les volumes de données et leur impact à moyen et long terme sur le périmètre qu’il a en charge. Ils doivent également se soucier des utilisateurs qui doivent être formés pour comprendre comment bien exploiter ce nouvel outil et quels seront les impacts de leurs actions sur la performance. C’est également aux consultants métier de définir les profils de sécurité pour présenter aux utilisateurs de son module une interface limitée à leur périmètre de responsabilité, ou encore de paramétrer des espaces de travail optimisés avec des indicateurs, des raccourcis ou des favoris, des listes pré configurées. Pourquoi charger tout l’historique de commandes d’un client à l’ouverture de sa fiche ? que se passera-t-il quand le client aura 200 000 commandes dans 5 ou 10 ans ? on peut restreindre par défaut aux lignes de commandes du mois en cours et non facturées ? et proposer des tuiles avec des indicateurs sur ses chiffres clés ?
« Au même titre qu’on entreprend de plus en plus de projets avec une approche security by design, on devrait également intégrer une démarche de performance by design dans les projets ERP… »
Comment s’y prendre concrètement ? Quels retours d’expérience pouvez-vous partager ?
Il faut toujours commencer par les besoins métier, afin de pouvoir réfléchir aux impacts des requêtes sur les performances, et ensuite utiliser les outils disponibles pour évaluer de manière itérative les indicateurs. Par exemple, si le processus de saisie des commandes à l’ADV doit être optimisé au maximum pour garantir un haut niveau de productivité, il faut analyser les habitudes de saisie pour mieux percevoir l’expérience utilisateur attendue, mais aussi identifier les informations nécessaires et celles inutiles. Est-ce que l’utilisateur doit tout voir quand il enregistre une commande client ? Ou juste le niveau de l’en-cours et la possibilité d’accéder rapidement aux dernières commandes pour aller plus vite ? Concrètement, cela permet d’évaluer si l’on a un formulaire avec 20 sources de données, ou un formulaire avec seulement 2 sources de données et 3 KPI pertinents. Attention il faut aussi que le consultant métier soit en mesure d’expliquer au client que ce qu’il demande ne sera pas performant, c’est son devoir de conseil…
Un point déterminant pour l’obtention des performances est de connaître la volumétrie pour pouvoir la prendre en compte le plus tôt possible. Par exemple, lorsqu’on personnalise le formulaire de saisie de commandes, ce n’est pas la même chose de développer avec dix lignes de données de test alors qu’on sera par la suite à 30.000 lignes par mois en configuration réelle. Les tests ne seront représentatifs que s’ils sont faits sur des volumes de données conséquents et pas seulement au moment de la recette finale avant Go Live.
Dans tous les projets ERP, il y a des processus majeurs pour l’entreprise qui tournent tous les jours et sur lesquels repose 80% de l’activité. Il est important de benchmarker ces processus avec des volumétries réelles et pour y parvenir il faut mettre en œuvre des outils. Microsoft Dynamics 365 propose un outil remarquable et réutilisable à plusieurs étapes du projet, le Task Recorder. Associé à Visual Studio il permet d’automatiser les tests de charge et d’étudier l’impact sur les performances selon différents cas de figure qu’on appelle campagnes de tests : saisie de commande avec 20, 40 ou 50 utilisateurs simultanés, avec un déclenchement de flux EDI, etc. On peut alors simuler la montée en charge de l’application et identifier si l’on est susceptible d’avoir des blocages, comme lorsqu’un batch EDI vient positionner des verrous d’enregistrement et bloquer les utilisateurs dans leur saisie. Ou autre exemple, en poussant les volumes de données injectés dans le processus jusqu’au crash de l’application afin de déterminer précisément les seuils qui pourront poser des problèmes et vérifier dans quel cas d’usage on serait susceptible de les atteindre ou non…
C’est seulement lorsqu’on a validé tous ces tests de performance que l’on peut partir en Go Live. L’investissement que cela représente dans le projet est à prendre en compte mais doit être comparé aux enjeux à la clef : adhésion des utilisateurs, rapidité de conduite du changement, efficacité et productivité dans les processus clés qui garantissent le bon fonctionnement de l’entreprise, satisfaction des clients etc.
Puisque vous parlez d’outils, quels sont ceux qui permettent de répondre aux enjeux de performance autour de l’ERP Microsoft Dynamics 365 ?
Microsoft fournit effectivement de nombreux outils et services d’accompagnement pour mieux maitriser ces problématiques de gestion de la performance. Sur certains projets Dynamics 365, l’équipe des experts infrastructure TVH Consulting bénéficie d’ailleurs de l’aide des architectes Microsoft Fast Track.
D’un point de vue général, on peut commencer par regarder ces vidéos :
- Part 1: Planning for Performance Testing in Microsoft Dynamics 365
- Part 2: Performance Testing: Setup and Execution for Finance and Operations apps
- Optimizing the Experience in Dynamics 365 Finance and SCM
Ensuite, pour la mise en place d’un environnement d’automatisation des tests en continu pendant la phase de Build, on peut lire ces articles et utiliser l’outil RSAT de Microsoft :
- Deploy and use a continuous build and test automation environment
- Testing and validations
- Regression suite automation tool (RSAT)
Pour la partie Benchmark, ces deux vidéos sont également très intéressantes pour mieux comprendre ce qu’il est possible de faire :
- Performance Testing Part 4: Analyze & Mitigate performance issues for Finance & Operations apps
- Part 6: Performance Testing: Day in the Life Testing for Fin/Ops Apps
Il faut enfin garder à l’esprit que les outils de mesure et d’amélioration des performances ne sont pas toujours activés par défaut par Microsoft. Mais au-delà des outils, le plus important est de bien prévoir cette gestion de la performance dans le projet, de l’intégrer au planning afin que les tests soient effectués au fur et à mesure…
« Dans un projet ERP Microsoft Dynamics 365, la performance n’est ni automatique ni optionnelle, aussi bien dans le Cloud qu’en mode On-Premise, d’où l’intérêt de s’y intéresser le plus tôt possible… »
Certifié sur de nombreux produits Microsoft et fort d’une quinzaine d’années d’expérience, je suis impliqué dans toutes les phases techniques des projets d’implémentation de la solution ERP Microsoft Enterprise.
TVH Consulting
Partenaire de référénce des éditeurs Microsoft, SAP et Talend, le groupe TVH Consulting est intégrateur expert de solutions ERP, Data, BI, CRM et Cybersécurité avec plus de 400 collaborateurs qui s’engagent sur 100% de réussite des projets IT.
Ces contenus pourraient vous intéresser :
Pour en savoir plus sur les contenus et outils de Business Intelligence, visitez le site :
Contact
22, rue Guynemer – B.P. 112
78 601 Maisons-Laffitte Cedex
- +33 (0)1 34 93 17 27
- +33 (0)1 34 93 49 49
- infos@tvhconsulting.com