Chaque semaine, découvrez de nouvelles astuces et bonnes pratiques pour devenir un expert !
Voir l'indexCela fait une semaine que je travaille sur ce projet, je viens de terminer mon workflow, j’ai validé la mise en production de celui-ci avec mes collègues, et c’est parti, terminé pour ce projet. Place à la suite !
En réalité pas tout à fait, la mise en production d’un workflow peut parfois être plus complexe, mais il est très important de vérifier quelques points. Voici ma checklist des points que j’aime vérifier et quelques astuces qui peuvent permettre de gagner un temps précieux une fois le workflow en production. Bien sûr, ces éléments sont à adapter à chaque environnement et organisation, mais cela peut vous donner des idées !
Documenter :
Oui, c’est bête, mais c’est la première étape à réaliser avant la mise en production. Il faut profiter d’avoir tous les éléments en tête pour bien documenter son workflow. En fonction de la complexité, on peut soit utiliser la palette documentation dans Alteryx soit rédiger un document à part qui détaille les règles utiles et les raisons de ces choix. Dans le même ordre d’idées, on peut organiser son workflow en mettant par exemple les entrées de données à un endroit spécifique (en haut à gauche par exemple) et les sorties à un autre endroit (en haut à droite par exemple). Faire ce travail n’est pas la partie que je préfère, mais cela permet de s’y retrouver plus facilement si on doit retourner sur ce travail plus tard ou encore si un collègue était amené à devoir travailler dessus. En résumé, documentez, documentez, documentez ! Et surtout profitez d’avoir toutes les informations en tête pour le faire (ce sera beaucoup moins pénible plutôt que de devoir se replonger dedans plus tard !).
Mettre en place des contrôles et alerter :
Il est important de mettre en place des contrôles avant la mise en production, quand on parle de contrôle, il y en a beaucoup qui peuvent être différents d’un cas à un autre. Il est aussi possible d’arrêter le workflow si jamais il y a une erreur. En utilisant les bons outils, on peut vérifier plusieurs éléments simplement. En voici quelques exemples :
Pour l’ensemble de ces tests, j’utilise généralement les outils Message et Test de la catégorie développeur (ainsi que le Block Until Done pour m’assurer que mon contrôle se fasse avant que le reste du workflow s’exécute). En fonction de la criticité du test, je vais cocher l’option du workflow permettant « Cancel Running Workflow on error », si je veux que le workflow ne s’exécute pas du tout, ou si je préfère simplement en être informé.
En bref, prenez le temps de mettre en place quelques contrôles, ils peuvent éviter des drames et vous permettre de réagir de manière pro-active par rapport à vos clients (internes ou externes) et de leur dire si il y a eu un problème. De mon expérience, ceux-ci seront beaucoup plus compréhensifs si vous les alertez que ce n’est pas à jour avant qu’ils ne le découvrent !
Enlever le superflu
Votre workflow a été documenté et vous avez ajouté des contrôles. Maintenant, pensez à enlever tout ce qui est superflu, les Browse/Explorateur qu’on a mis partout pour regarder les données lors du développement, on enlève, ça prend du temps pour réaliser le traitement et on ne devrait plus en avoir besoin (en théorie) et si jamais j’en ai de nouveau besoin, je les ajouterai ! De même pour ce fichier intermédiaire que j’ai voulu regarder ou envoyer à un collègue, on enlève, on ne va pas écrire un fichier qui ne sert à rien ! Et c’est la même chose pour ce filtre qu’on a mis pour vérifier les données d’une journée spécifique. On va enlever tout ce qui ne sert pas pour ne garder que l’essentiel, c’est-à-dire ce qui permet au workflow de fonctionner correctement !
Vérifier les chemins d’accès aux fichiers (s’applique quand on va publier sur un serveur):
Un oubli qui peut se révéler coûteux dans certains cas, bien vérifier les chemins d’accès aux différents fichiers utilisés (que ce soit pour écrire sur un fichier ou en lire un), vérifier que les fichiers ne sont pas sur le disque de votre ordinateur, ou que les connexions aux différentes bases de données fonctionnent sur le serveur.
Première étape, vérifier les chemins d’accès aux fichiers :
Aller dans les options, puis options avancées, et dépendances du workflow
Puis vérifier les différents fichiers utilisés
On voit ici la liste des chemins utilisés ainsi que le nombre d’éléments qui les utilisent, c’est un moyen rapide et il est facile de le faire.
On voit aussi dans ce menu les connexions aux bases de données, si il y en a.
Ici on vérifie donc que le workflow écrit bien sur des répertoires réseau et non sur le disque local de son poste.
Deuxième étape :
On va ensuite vérifier si le serveur a bien accès à ces répertoires et ces connexions. Pour cette partie, cela dépend vraiment de votre organisation, mais une méthode pour le faire est d’utiliser des versions simplifiées du workflow, de le publier et de lancer celui-ci pour voir si le fichier est bien écrit ou non. Une autre possibilité serait de demander à l’informatique ou aux personnes en charge du serveur si celui-ci a bien accès à ces éléments.
Dernière étape avant la mise en production, la programmation du workflow et la mesure de la charge.
Pour cette dernière étape on va lancer le workflow en local mais avant, on va aller dans les options du workflow (cliquer sur le canevas pour voir cette fenêtre dans la partie configuration), puis on va cocher « Enable Performance Profiling ».
Activer cette option va permettre de mesurer outil par outil le temps pour l’exécution et va permettre de voir s’il y a un goulot d’étranglement. On peut par exemple voir une jointure chronophage suivie d’un filtre, dans ce cas, peut-être, faire le filtre avant de faire la jointure. Dans certains cas, on ne peut pas optimiser mais au moins, on est au courant de ce qui se passe dans la machine et on peut donc estimer le temps d’exécution.
Un dernier pour la fin, si je veux être sûr de ne pas ajouter de champs ou plutôt que si un nouveau champ venait à être créé dans la base, j’ajoute un outil select au début de mon workflow et je décoche le « * Unknown » ce qui fait que si un nouveau champ venait à apparaître, celui-ci ne sera pas automatiquement sélectionné.
Enfin, la dernière étape, si je peux la réaliser, si par exemple j’ai accès à une autre application d’où viennent les informations, consiste à faire un échantillonnage aléatoire pour faire mes derniers contrôles .
Voici les éléments de ma checklist avant la mise en production .
En espérant que cela vous aide ! N’hésitez pas à ajouter en commentaire les contrôles que vous réalisez !
Pour ajouter un commentaire ici, vous devez être inscrit. Si vous êtes déjà inscrit, connectez-vous. Dans le cas contraire, inscrivez-vous puis connectez-vous.