L'opportunité d'améliorer les performances des applications
Les performances des applications sont l'un des facteurs clés qui ont un impact sur une expérience utilisateur fluide et agréable. Dans l'environnement actuel en constante évolution, les utilisateurs ont peu de patience pour les temps de chargement lents et les problèmes de connexion.
Bien que les performances des applications dépendent de nombreux facteurs, il existe plusieurs Mendix-des modèles de développement spécifiques et communs qui peuvent être suivis pour éviter la dégradation des performances une fois qu'un Mendix l'application est déployée. Ce sont les meilleures pratiques durement apprises et glanées au fil des ans par le Mendix communauté et fait écho dans différents endroits tels que Mendix les cours de l'académie, le forum, les formations et autres documents.
On voit souvent Mendix Les équipes de développement consacrent beaucoup de temps à la formation et à l'application de ces meilleures pratiques. Même dans ce cas, les nouveaux développeurs créeront régulièrement des anti-modèles difficiles ou chronophages à repérer. L'analyse statistique de milliers de données anonymisées Mendix montre que beaucoup d'entre elles disposent d'une marge de manœuvre considérable pour appliquer les meilleures pratiques en matière de performances. Par exemple, 70 % des Mendix les applications ont un ou plusieurs anti-modèles « commettre chaque objet modifié dans une boucle », et environ 45 % d'entre elles Mendix les projets comportent plusieurs microflux qui peuvent être convertis en nanoflux pour de meilleures performances.
Pour remédier à ce, Mendix Les équipes de développement utilisent des processus d'évaluation par les pairs coûteux. Mendix Le client a même évoqué le principe des quatre yeux, selon lequel un membre de l'équipe doit examiner le travail de chaque développeur pour rechercher des anti-modèles avant de le valider. Cela implique un temps de révision considérable, généralement de la part de développeurs expérimentés et coûteux.

Présentation du bot de performance MxAssist
Et si nous pouvions automatiser cette évaluation par les pairs ou au moins une partie de celle-ci ? Et s'il y avait un co-développeur virtuel, au lieu de votre collègue occupé et expérimenté, qui pourrait surveiller vos progrès pour repérer et même résoudre ces problèmes ? C'est ce que nous visons en créant MxAssist Performance Bot dans Mendix 9.
MxAssist Performance Bot est un bot de co-développement virtuel intelligent qui vous aide à améliorer les performances de votre application. Pour ce faire, il inspecte votre modèle de projet par rapport à Mendix meilleures pratiques de développement en temps réel pendant que vous créez votre application dans Mendix Studio Pro.
Il est construit à partir de l'analyse statistique de milliers de données anonymisées. Mendix des applications pour apprendre les anti-modèles courants ainsi que les meilleures pratiques affinées par Mendix Services d'experts et Mendix Partenaires les plus précieux (MVP) lors du développement de microflux, de modèles de domaine, de pages, etc.
Ronald Catersels, un Mendix MVP chez Daywize, estime que « l'avantage de ce type d'outils est que vous formez déjà vos développeurs, car un développeur junior, après avoir développé quelque chose, va probablement parcourir le bot de performance et voir les statistiques sur le travail qu'il a effectué. Je pense que les modélisateurs juniors aimeraient vraiment des choses comme ça… c'est vraiment utile de les aider. »
Comment fonctionne MxAssist Performance Bot ?
En général, il propose trois types ou niveaux d’assistance :

La première et peut-être la plus cruciale des aides est la détection. Une fois déclenché, le bot inspecte le modèle de projet et identifie les anti-modèles de performance ou, en d'autres termes, les bonnes pratiques de performance manquées. Pour faciliter les choses, le bot permet au développeur de localiser et de naviguer vers le document/élément spécifique qui contient l'anti-modèle, ainsi que tous les documents/éléments qui sont impactés par cet anti-modèle. Cela permet au développeur de trouver rapidement les problèmes et d'analyser en profondeur les causes profondes et les zones affectées.
Au cours de nos tests bêta privés, les clients ont utilisé le bot pour découvrir de grandes Mendix des projets qu'ils avaient construits sur plusieurs années. Le robot a détecté des centaines de cas de bonnes pratiques manquants, et dans un projet, des milliers d'entre eux !
Ronald Catersels, un Mendix MVP chez Daywize avait ceci à dire :
« Ce que j'aime le plus dans le robot de performance, c'est la vue et le fait qu'il puisse me donner un aperçu de tous les éléments qu'il me dit que je dois examiner. C'était vraiment utile car notre modèle a été lancé en Mendix 2.3, et a depuis migré vers Mendix 3, 4, 5, 6, 7, 8 et 9 ! »

Et si le bot énumère tous ces problèmes ? Les développeurs, en particulier les novices, pourraient alors commencer à se demander : « Pourquoi ces cas sont-ils un anti-modèle en premier lieu ? Et que devrions-nous faire à ce sujet ? »
Nous pensons que toute détection (diagnostic) doit être accompagnée d'une bonne explication et d'une recommandation (prescription). C'est pourquoi le bot MxAssist Performance explique un problème identifié ainsi que son impact potentiel et fournit une ligne directrice étape par étape pour résoudre le problème.
Ivo Sturm, un Mendix MVP chez Firstconsulting, pense que l'explication « …aide à comprendre la recommandation, est utile pour les développeurs juniors et donne beaucoup de contexte. »
Ronald Catersels, un Mendix MVP chez Daywize, trouve cela également très intéressant : « Ce que j'ai vraiment apprécié, c'est que je pouvais simplement cliquer sur le lien dans la fenêtre contextuelle, et j'étais immédiatement redirigé vers la documentation et ce que vous avez écrit à ce sujet ainsi que l'explication des raisons pour lesquelles ces problèmes sont mis en évidence. C'est vraiment sympa ! »

Et si le bot pouvait même résoudre le problème à votre place pendant que vous buvez une tasse de café ? Eh bien, le bot de performance MxAssist, après accord du développeur, peut, dans certains cas, mettre en œuvre automatiquement la meilleure pratique et résoudre le problème en refactorisant le modèle de projet.

Une autre fonctionnalité intéressante est le panneau de configuration, dans lequel vous pouvez choisir un module ou un document et l'inspecter par rapport à une bonne pratique particulière. Toutes les combinaisons sont possibles ! Supposons qu'un développeur souhaite comparer un microflux à une bonne pratique spécifique. Il accède à la section des microflux, clique pour vérifier le microflux en question, puis sélectionne une bonne pratique de microflux particulière qui l'intéresse. Après avoir cliqué sur OK, il revient au panneau Performance Bot et clique sur « Inspecter » pour détecter tout anti-modèle potentiel pour le microflux choisi et la bonne pratique dans la configuration.
Des fonctionnalités telles que le panneau de configuration vous permettent d'utiliser le bot comme bon vous semble, vous donnant ainsi le pouvoir de créer la meilleure application possible tout en réduisant le temps passé à réparer et à déboguer après coup.

Quand devez-vous utiliser MxAssist Performance Bot dans votre cycle de développement d'applications ?
Vous vous demandez peut-être quand et comment utiliser le bot dans votre processus de développement d'applications. Bien sûr, c'est à vos équipes de décider. Voici comment certains d'entre eux Mendix les développeurs y réfléchissent :
Mohammed Siddiqui, un Mendix MVP chez Auraq nous a dit : « Si je l’utilise réellement dans un projet, alors ce que je ferais, c’est avant de faire un commit, une fois que j’ai terminé la fonctionnalité, alors je ferais juste un test rapide pour voir s’il y a quelque chose qui pourrait être amélioré. Et si c’est le cas, alors je ferais simplement ces changements et je les ferais valider. Mais peut-être pas à chaque commit, car je fais des commits assez souvent, peut-être après chaque histoire ou après chaque fonctionnalité. »
Ibrahim, un Mendix Un développeur chez Emagiz pense que l'utilisation de MxAssist Performance Bot « … devrait faire partie de la définition de « terminé ». Nous pouvons ajouter une étape pour utiliser PB avant que les stories ne soient transférées vers « terminé ». La vérification avec Performance Bot fera partie de la liste de contrôle qui pourrait être utilisée dans notre équipe. »
Tudor Neacsu, un Mendix développeur chez Capegroep, partage un point de vue similaire : « Une fois mon histoire terminée, et je pense que je suis prêt pour une révision, j'utiliserais d'abord le bot de performance, puis je demanderais une révision si rien n'apparaît du bot de performance... Je pense qu'il devrait y avoir une histoire dans le sprint pour les parcourir, les enquêter, puis les corriger. »
Quelle valeur MxAssist Performance Bot peut-il apporter ?
Tout d’abord, le bot de performance MxAssist peut rendre les équipes plus efficaces et productives en détectant automatiquement les anti-modèles de performance et en réduisant le besoin d’évaluations par les pairs tout en formant les nouveaux Mendix développeurs sur les meilleures pratiques.
Mohammed Siddiqui, un Mendix MVP chez Auraq, pense que « Globalement, cela facilitera la vie du développeur, en particulier des juniors, ainsi que des seniors et des experts également. »
Deuxièmement, le MxAssist Performance Bot peut augmenter les performances et la qualité de Mendix applications. Nous avons effectué quelques mesures d'amélioration des performances à l'aide de Cadre Gatling vers Mendix runtime en exécutant un réel Mendix application de projet. Par exemple, nous observons des niveaux d'héritage excessifs pour les entités, un anti-modèle détecté par le bot, pouvant potentiellement conduire à une dégradation significative des performances – jusqu'à 25 % par spécialisation.

Comme Ivo Sturm, un Mendix Selon MVP chez Firstconsulting, MxAssist Performance Bot peut être utilisé « comme un outil d'apprentissage pour les développeurs juniors et comme un rappel pour les développeurs seniors ».
Pourquoi ne pas essayer ? La prochaine fois que vous serez mannequin, StudioPro 9, lancez le bot de performance MxAssist. Cela pourrait vous faire sourire. 🙂