Les bonnes pratiques pour automatiser avec Enfocus Switch
Quand on commence à se lancer dans l’automatisation de process, RPA (Robotic Process Automation) pour les intimes, on se heurte quasiment tous aux mêmes difficultés. Voici donc quelques conseils et bonnes pratiques pour simplifier et améliorer vos projets d’automatisation.
Préparer le terrain
L’étape la plus importante et parfois la plus longue pour le développement d’un nouveau flux est souvent la préparation en amont. En effet, il sera d’autant plus facile de créer le flux si cette étape est particulièrement soignée.
Choisir le bon process pour démarrer
Le principal objectif de l’automatisation est souvent le gain de temps, c’est pourquoi il est important de sélectionner le processus qui est le plus récurrent au sein de l’entreprise. Cela peut concerner le type de produit le plus imprimé dans votre entreprise ou la tâche la plus récurrente dans votre service.
Ainsi, le bénéfice sera immédiat, visible de tous et permettra donc de valoriser l’automatisation.
Faire un schéma fonctionnel
Une bonne image vaut souvent mieux que mille mots, il est donc préférable de commencer par un schéma fonctionnel synthétique. L’idée est de définir les différentes étapes du flux à créer. Dans un premier temps, il est préférable de ne prendre en compte que le cas idéal : le fichier « parfait » qui arrive du point A au point Z sans interruption ni erreur.
Les erreurs et exceptions seront ajoutés par la suite car ce schéma va évoluer au fur et à mesure du développement du flux.
Et n’hésitez pas à utiliser Switch pour faire vos schémas !
Si vous bloquez à cette étape, il suffit juste de partir du process existant : comment est traité le fichier manuellement ? Un flux n’est en réalité que l’automatisation d’un processus manuel.
Faire un arbre de métadonnées
Les métadonnées sont toutes les informations concernant le fichier ou la commande qui vont permettre d’automatiser des traitements dynamiques. Cela peut être le nom du client, le numéro de commande, le format, le type de produit, … Ces informations peuvent être récupérés dans le nom du fichier, dans un fichier XML, une base de données ou via un formulaire Switch Client.
Il est donc très important de lister les métadonnées nécessaires en partant du schéma fonctionnel et en indiquant la source et l’utilisation. Pour représenter ces métadonnées, on peut utiliser une vue hiérarchique qui ressemble à un arbre.
Encore une fois, Switch peut être utile pour schématiser les métadonnées.
On peut aussi déjà lister le nom des variables afin de pouvoir les retrouver plus facilement lors de la création du flux. Ce schéma est très important également car il liste toutes les actions que l’on va devoir ajouter dans les flux.
Préparer des exemples
Afin de pouvoir tester les flux lors de leur création, il est nécessaire de préparer un jeu de fichiers de test pour les différents cas de figure. Cela comprend bien entendu les fichiers mais également les métadonnées correspondantes. L’idéal est de prendre des fichiers réels plutôt que des fichiers tests créés pour l’occasion : la phase de test sera plus réaliste.
Pour les étapes de vérification, il faut évidement prévoir des fichiers avec et sans erreur afin de prévoir les premières exceptions au flux « idéal ».
Pour les étapes de traitement, la préparation d’un fichier avant et après traitement permet de définir le résultat attendu d’un traitement automatique (qui est encore une fois le même que le résultat manuel).
Créer les flux dans Switch
Après tout ce travail en amont, il est temps de se mettre à développer concrètement les flux dans Switch. Plus de stress de la page blanche possible car tout est déjà écrit ! Par contre, ces quelques bonnes pratiques vont vous permettre d’obtenir des flux propres, lisibles, évolutifs et donc plus efficaces.
Lisibilité des flux : nommage / couleurs
Même si cela semble futile, l’aspect esthétique d’un flux est très important. Cela permet d’avoir une bonne lisibilité au combien utile quand il s’agit de revenir sur un flux quelques semaines ou mois après sa création. Ainsi, il existe dans Switch plusieurs fonctions pour améliorer l’esthétique.
Le pire flux de la terre
Le même flux mais en version « Pretty Woman »
Nommer les éléments le plus possible : nommer les outils avec le traitement qui sera effectué, les dossiers avec le type de fichiers qui y arrivent, les conditions sur le nom des flèches. Cela permet de comprendre immédiatement le sens du flux mais aussi à avoir l’information de l’élément concerné dans les Messages.
Utiliser des couleurs pour différencier les dossiers d’entrée et de sortie, les rapports, les statuts du fichier (erreur, avertissement, succès), …
Aligner vos éléments horizontalement et verticalement, créer des flèches en angle droit : don’t cross the stream !!!
Découper vos flux en étapes
Même si les écrans sont de plus en plus larges, il ne le seront jamais assez pour tout bon flux qui se respecte. Si vous en avez assez de scroller vers le bas ou la droite à la recherche du petit bout de flux qu’il vous faut modifier puis attendre 10min que Switch active cette énorme bête alors il n’existe qu’une solution : le découpage.
record du monde du flux le plus long (dit la Grosse Bertha)
En utilisant le schéma fonctionnel du départ, il suffit juste de découper le flux en plusieurs étapes successives. Ainsi, on pourra accéder plus facilement à la zone souhaitée, activer plus rapidement les flux et même travailler sur une partie du flux sans bloquer toute la production.
Pour cela, on peut se servir de dossiers temporaires : le dossier de sortie du flux 1 est le dossier d’entrée du flux 2 et ainsi de suite. Attention de bien conserver le nom unique dans le dossier de sortie sous peine de perdre toutes les métadonnées !
On peut aussi utiliser les applications de l’Enfocus AppStore comme Portals ou Flow Links.
Tester au fur et à mesure puis une fois en production
Une grosse partie du temps de déploiement d’un flux concerne le test. L’idéal pour maitriser au mieux cette partie est de lancer des tests au fur et à mesure de l’avancement du flux.
Je créé un point d’envoi avec un formulaire, je teste pour voir si l’affichage me convient. J’ajoute un tri à l’aide d’une condition avec des variables, je teste avec plusieurs fichiers pour voir si toutes les conditions sont bonnes. Pour simplifier les tests, il est important de penser à conserver le nom unique dans le dernier dossier du flux en cours de création afin de pouvoir reprendre le fichier tel quel sans perdre ses métadonnées.
Une fois le flux réalisé, il faut aussi envisager un retour des utilisateurs quelque temps après la mise en place afin de régler les problèmes restants (et il y en aura forcément !).
Sauvegarder vos flux régulièrement
Cela parait une évidence mais on se rend souvent compte que les flux ne sont pas sauvegardés régulièrement. En cas de crash ou d’erreur de manipulation, tout le temps passé sur Switch sera perdu.
Manuellement, il est possible de sauvegarder les groupes de flux rapidement et sans les éteindre avec un clic droit / Exporter le groupe. Les flux exportés pourront alors être enregistrés dans un dossier réseau ou sur un cloud.
En automatique, il existe plusieurs méthodes détaillées dans cet article : One flow to save them all
Astuces d’expert
Vos flux fonctionnent désormais correctement mais il est déjà temps de préparer la suite, les évolutions, les intégrations plus complexes. Avec un peu d’anticipation et des méthodes empruntées au développement informatique, ces quelques astuces feront passer le développement de vos flux à la vitesse supérieure.
Utiliser le mappage des métadonnées
On débute souvent la création des flux par la soumission des métadonnées en provenance d’un point d’envoi de Switch Client. Le formulaire est facilement personnalisable et on peut ajouter toutes les métadonnées nécessaires pour une automatisation complète. Mais très souvent également, dans un second temps, on souhaite intégrer des métadonnées en provenance d’autres sources comme un ERP ou un Web2Print. Comme la structure des métadonnées ne sera pas identique, il va donc falloir trouver un moyen d’uniformiser les variables afin d’obtenir un flux commun.
Le mappage des métadonnées via la déclaration de données privées ou avec l’outil Data Mapper de l’Enfocus AppStore, permet de créer un jeu de variables identiques pour chaque source de données : Switch Client, ERP, Web2Print, … et d’envoyer tous les fichiers dans un flux commun.
Séparer flux de Production et flux de Développement
Selon moi, le principal axe d’amélioration d’Enfocus Switch concerne le déploiement et l’évolution des flux. En effet, une fois les flux d’automatisation en production, il est assez complexe de les arrêter afin de procéder aux modifications, corrections ou évolutions.
En attendant une solution interne à Switch, une bonne pratique est de séparer les flux de production et de développement en utilisant les mêmes méthodes que le développement informatique classique.
Pour cela, on peut déjà créer deux groupes de flux distincts : PRODUCTION et DEVELOPPEMENT. Ainsi, tous les flux contenus dans le groupe PRODUCTION doivent être actifs. On peut aussi utiliser les marqueurs pour les identifier.
La méthode ultime pour la gestion des flux est d’avoir un « flux principal » qui fait appel à des « flux étapes ». On peut déjà faire une copie de tous les fichiers vers un flux DEV très facilement en ajoutant une sortie et en redirigeant le retour vers un dossier temporaire. Une fois le nouveau flux prêt, il suffit de modifier le lien vers la nouvelle version du flux étape.
Flux principal
Flux étape : Contrôle prépresse
Pensez à nommer vos flux avec le numéro de version et conserver vos anciennes versions en les déplaçant vers un groupe ANCIENS FLUX ou en les exportant dans un dossier de sauvegarde.
Bon flux @tous
Retrouvez l’ensemble des articles sur Enfocus sur notre site technique en suivant ce lien…
It’s a bird ? It’s a plane ? No, it’s FluxMan. Le super-pouvoir de Cédric Sintes c’est d’éradiquer avec soin tous vos problèmes de fichiers et d’automatisation des tâches. Peu avare de ces connaissances, il utilisera sa pédagogie légendaire pour vous transmettre son savoir. Il aime naviguer au grand large et cuisiner des petits plats, parfois les deux en même temps.
Sa devise : quand on souhaite faire quelque chose, on le fait bien ou on ne le fait pas !