Comment faire des intégrations complexes avec Workday ?

Vous vous engagez dans une mission sur Workday ? Vous allez travailler sur des intégrations de données liées à Workday ? Que vous gériez des projets ou que vous développiez directement des programmes informatiques, découvrez Workday Studio, le logiciel d’intégrations de Workday.

Stratégie IT

Intégration avec Workday Studio

Consultante SI chez SQORUS

Qu’est-ce que la plateforme d’intégration de Workday ?

Workday est un logiciel SaaS* de gestion des ressources humaines et financières. La gestion des données s’effectue essentiellement à travers des rapports et des intégrations de données.

Workday Studio, qui sera présenté ici, est un outil permettant de créer des intégrations complexes de données pour Workday. Il s’agit d’un environnement unifié, basé sur Eclipse**, pour développer, déployer et mettre à jour des intégrations complexes, s’exécutant dans le cloud de Workday.

Workday Studio est un parfait exemple d’outil Low code***, dans lequel on crée des assemblages de blocs réutilisables.

Le code source des intégrations est basé sur le protocole XML, mais tel un module d’Eclipse, Studio supporte aussi la customisation Java.

Trois outils de Workday pour réaliser des intégrations

Dans Workday, il existe trois types d’intégration : Cloud Connect, Enterprise Interface Builder et Workday Studio. Chacun ayant ses bénéfices et ses limites.

schéma intégration Workday Cloud

 

Premier outil de Workday : Cloud Connect

Le premier type constitue les intégrations Cloud Connect.

Il s’agit d’intégrations prédéfinies standardisées, appelées connecteurs, supportées et maintenues par Workday. Il existe un certain nombre de connecteurs utiles pour de nombreux cas d’utilisation. Ils permettent de réduire considérablement le temps de développement nécessaire pour construire une intégration complète. Chaque connecteur est configurable pour s’adapter aux différents besoins.

Les bénéfices de cette approche sont :

  • L’accès à un ensemble d’intégrations prédéfinies ;
  • Un faible coût, faible risque, et une rapidité à déployer sans nécessité de coder ;
  • Des intégrations supportées intégralement par Workday, certifiées et testées à travers des mises à jour et corrections régulières.

Ces modèles d’intégrations doivent être le premier choix lors de construction de nouvelles intégrations, si le modèle souhaité existe. Ces intégrations peuvent ensuite être enrichies par des transformations de données ou des intégrations Studio.​

 

Deuxième outil de Workday : Enterprise Interface Builder

Le deuxième type d’intégration constitue les Enterprise Interface Builder (EIB).

L’outil EIB fournit une interface graphique et guidée, facile à utiliser, permettant de paramétrer les intégrations avec peu, voire pas de programmation. Cet outil est utilisé pour la création d’intégrations simples d’entrée ou de sorties de données. Elles constituent entre 40 et 50 % de toutes les intégrations utilisées. Parmi celles-ci, jusqu’à 90 % sont des intégrations sortantes et utilisent des rapports Workday comme sources de données. Les EIB sont cependant limitées. Chaque intégration supporte seulement une seule source de données et une seule transformation. Les EIB sont à utiliser pour créer des intégrations à faible volume de données et faible complexité.

schéma EIB

 

Troisième outil de Workday : Workday Studio

Workday Studio, le troisième type, est utilisé dans les autres cas d’intégrations, souvent plus complexes. Il permet une grande flexibilité de création. Généralement, on peut citer les cas suivants d’utilisation de Studio :

  • plusieurs sources de données ;
  • processus efficace et extensible ;
  • contrôle des sources, tests unitaires, debug… ;
  • manipulation d’erreurs complexes, réaction différente en fonction de conditions ;
  • boucles complexes, logiques, dépendant de variables externes ou de données dynamiques ;
  • jeux de données volumineux à transférer.

Workday Studio : l’outil d’intégration le plus complet

Les intégrations Workday Studio sont développées en suivant des phases distinctes :

  • Design : construction d’assemblages dans Studio
  • Déploiement : connexion au répertoire Cloud et déploiement de l’intégration dans Studio
  • Configuration : configuration des services requis par le système d’intégration de Studio, comme les cartes d’intégration, les transports, les permissions ou les notifications, à effectuer dans l’application Workday
  • Lancement : lancement de l’intégration soit à partir de Studio, soit à partir de l’application Workday
  • Contrôle : suivi de la progression de l’intégration à partir de Workday Studio ou de l’application Workday. Il est également possible d’avoir accès à un rapport consolidé du processus d’intégration une fois celui-ci terminé.
schéma intégration Workday Studio

La phase de design est la plus longue, car il s’agit de l’ensemble de la construction de l’intégration. Les phases suivantes s’enchaînent assez rapidement.

Voici les différents outils permettant l’assemblage présentés ci-dessous.

 

Workday Studio : connexion API

Une des principales ressources de Workday Studio comprend les connexions aux API**** de Workday.

La première méthode d’utilisation des API Workday passe par les services web et le protocole SOAP. Les services web de Workday sont utilisés pour recueillir et mettre à jour des données dans Workday. Exemple : le service web Change Job permet de changer une personne d’affectation. Studio fournit les outils pour configurer, tester et déclencher les requêtes des services web. Les requêtes SOAP fournissent l’accès aux données de Workday et sont sécurisées par le protocole de sécurité de Workday.

La deuxième méthode d’utilisation des API Workday passe par les rapports Workday comme sources de données. Cela permet, grâce au principe des RaaS (Report as a Service), d’utiliser les rapports Workday en tant que services web. Ils peuvent être appelés directement dans les intégrations Studio grâce à des requêtes REST.

La troisième méthode d’utilisation des API Workday consiste en un transport requête/réponse synchrone qui envoie des requêtes de Workday vers un URL à travers un protocole HTTP. Cette méthode peut se faire via des requêtes SOAP ou REST.

 

Workday Studio : utilisation de blocs

Dans Workday Studio, une intégration est développée grâce à un assemblage à l’aide de l’éditeur visuel d’assemblage de Workday Studio.

Un assemblage est une représentation graphique d’un système d’intégration. Il est composé de différents composants (ou blocs) configurables ayant chacun une fonctionnalité : la création et manipulation de variables, la transformation de format, le traitement des erreurs, etc.

Les composants individuels sont reliés ensemble pour former des chaînes de traitement, et définir l’intégration. Le message sortant de chaque composant devient l’entrée du composant auquel il est connecté. L’éditeur d’assemblage offre une liberté complète sur la façon de relier les composants ensemble.

Les composants élémentaires fournissent un moyen de connecter les étapes de traitement ensemble dans les chaînes de traitement. Les composants avancés fournissent un moyen de contrôler dynamiquement comment l’exécution de l’assemblage traverse la chaîne de traitement.

Blocs Hello Cloud

L’éditeur d’assemblage fournit une vaste palette de composants pour manipuler des messages et communiquer avec d’autres systèmes à travers des protocoles variés comme FTP, SFTP, SMTP (email), HTTP et HTTPS. L’éditeur d’assemblage supporte également des transformations de messages en utilisant XSLT (Extensible Stylesheet Language Transformations). XSLT est une forme de mapping XML-to-Text appelé Text Schema.

Il existe deux représentations de l’assemblage. La première est une représentation graphique, affichée dans l’onglet Design par défaut. Un onglet Source existe aussi, et représente le code source XML de l’intégration. Il est préférable d’ajouter et configurer les composants de l’assemblage en utilisant l’éditeur, et non directement en modifiant les composants XML dans l’onglet Source.

Une fois l’assemblage complété et sauvegardé, il est déployé vers Workday. Puis l’intégration est lancée en choisissant les paramètres de lancement, soit dans Studio soit dans l’application Workday.

Les assemblages fournissent un nombre de caractéristiques pour permettre la création d’intégrations extensibles. Toutes les intégrations doivent être développées d’une manière extensible et adaptable. Il doit être supposé que les sources de données qu’elles traitent puissent être arbitrairement volumineuses. Par exemple, à chaque traitement d’informations de postes, il faut supposer que le nombre de postes peut augmenter jusqu’à un nombre arbitraire. L’approche fondamentale pour s’assurer que les intégrations soient extensibles est d’utiliser des composants appelés splitters et aggregators. Ils permettent de fractionner la source de données en des enregistrements individuels (exemple : un poste).

Ces composants sont nécessaires à utiliser. En effet, tel un logiciel SaaS*, il n’y a pas d’accès direct à la base de données de Workday. Il faut donc compenser par le maximum de bonnes pratiques d’optimisation. De plus, une intégration sera arrêtée au bout de quatre heures de traitement. Il faut donc pouvoir faire tourner les intégrations en moins de quatre heures, même avec de gros volumes de données.

 

Workday Studio : contrôle et gestion des erreurs

Les événements d’intégration incluent un ensemble de logs utilisés pour le diagnostic d’erreurs dans les intégrations. Cela inclut la requête de lancement, le log de la console du serveur, et le log de profile de performance en format CSV. Le rapport consolidé résume tout cela en format XML. Il est disponible pour les EIB et certains connecteurs mais est plus utile pour les erreurs des intégrations Studio.

Ces éléments de contrôle peuvent se retrouver sur Workday Studio aussi bien que dans l’application Workday.

controle et gestion des erreurs

De plus, Workday Studio contient un debugger permettant de détecter et d’identifier les erreurs dans un programme. Il permet de visualiser l’exécution du programme en plaçant des points d’arrêts (ou breakpoints), ce qui suspend l’intégration lancée. En avançant étape par étape, il est possible d’examiner le contenu des variables et ainsi trouver d’où viennent les erreurs.

 

Workday Studio : support

Workday Studio peut être un outil difficile à appréhender et utiliser, surtout sans certification. Il n’y a pas beaucoup de contenu (sur Stack Overflow par exemple) pour nous aider. Il existe deux moyens principaux pour trouver les réponses à nos interrogations, outre les vidéos YouTube et les formations.

Le premier est Workday Community. Il s’agit d’un espace collaboratif où l’on peut :

  • Poster/Lire des articles recensant des bonnes pratiques
  • Trouver de nombreux problèmes résolus, à l’instar de Stack Overflow, sur le forum
  • Poser une question sur le forum, si elle n’existe pas déjà
  • Poser une question directement au support Workday qui pourra donner individuellement des éléments de réponse, en répondant au ticket, ou par appel
  • Payer des Office Hours, qui permettent un entretien avec des experts Studio

Le second est le Help Contents. Il s’agit d’une rubrique directement dans Studio qui donne certaines syntaxes et utilisations de fonctions.

Conclusion sur l’intégration des données avec Workday Studio

Ce que j’apprécie le plus avec Workday Studio, c’est la diversité des blocs qui regroupent de très nombreuses fonctionnalités. La liberté d’utilisation de ces blocs permet de créer des intégrations précises et complètes.

Cependant, la prise en main de Studio n’est pas complètement intuitive, et l’aide n’est pas assez complète sur internet, ce qui nécessite de nombreux tests empiriques. Il faut également faire attention à l’optimisation des intégrations qui nécessite l’utilisation de bonnes pratiques et une bonne connaissance de Studio.

N’attendez plus, contactez-nous dès maintenant pour en savoir plus sur la façon dont nous pouvons vous aider à tirer le meilleur parti de Workday Studio.

Avec les consultants de SQORUS, utilisez Workday efficacement et prenez des décisions éclairées pour atteindre vos objectifs.

 

* SaaS : Software as a Service = Solution logicielle applicative hébergée dans le cloud

** Eclipse : IDE*** écrit en Java, devenu multi-langages et multi-plateformes

*** Low code : Mode de développement logiciel qui masque tout ou partie de la complexité du code source de l’application

**** API : Application Programming Interface = Interface logicielle qui permet de connecter un logiciel ou un service à un autre logiciel ou service afin d’échanger des données et des fonctionnalités

***** IDE : Integrated Development Environment

TÉLÉCHARGEZ GRATUITEMENT NOTRE LIVRE BLANC

« TOUT SUR LA GOUVERNANCE DE PROJET IT »

À lire également dans notre dossier “gouvernance projet IT ” :

Share This