RENNES, 35000
+33644312205
contactATdmi-tech.com

TIBCO ESB – Cas d’étude pratique

Ingénierie & Services

Cahier des charges

L’idée du projet est de considérer un système de gestion des formations accessibles par des personnes désireuses de se perfectionner. 3 centres proposent chacun une formation de perfectionnement à numerus clausus. Les 3 formations de perfectionnement sont sur Broker de messages : 1 – Apache Kafka, 2 – TIBCO EMS, 3 – Active MQ. Toute personne peut faire une demande d’admission à chacune des formations en utilisant un service disponible sur internet. Toute personne qui envoie une demande d’admission devient un candidat. La demande d’admission du candidat est envoyée une seule fois aux 3 centres et doit comporter le choix de la formation visée classés par ordre (par exemple 1,2,3 ou 3,1,2 …). Le système reçoit la demande et l’envoie aux différents centres en respectant l’ordre de choix du candidat. Si toutefois, un centre accepte la demande, celle-ci ne doit plus être envoyée aux autres centres. En d’autres termes, la demande est envoyée au centre de premier choix. Si ce centre accepte la demande du candidat, alors les autres centres ne reçoivent pas la demande pour ce candidat. En revanche, si le centre de premier choix rejette la demande, alors le système envoie la demande successivement au centre de 2° choix, puis de 3° choix si le centre de 2° choix rejette aussi la demande.

Lorsqu’une demande de formation est acceptée par un centre ou alors lorsque la demande de formation a été refusée par tous les 3 centres, alors le système informe le service d’envoi des e-mails aux candidats. Ce service se charge d’informer le candidat de l’issue de sa demande de formation.

Une fois une demande envoyée par un candidat, il est possible de suivre l’évolution de la demande en utilisant le service de suivi des demandes disponible sur internet.

Chaque centre de formation gère les admissions pour ses formations avec des critères qui lui sont propres. Les autres centres n’ont pas connaissance de ces critères, même pas le système central de gestion des demandes. En cas de refus d’une demande de formation, aucune explication n’est donnée sauf en cas de quotas atteint.

Le système central doit tracer l’évolution du traitement de chaque demande pour être en mesure de répondre à tout moment à une demande de statut de suivi de la demande de la part d’un candidat.

Les demandes sont traitées selon l’ordre de réception par le système central et une demande doit être traitée une et une seule fois.

Lorsque la demande est correctement envoyée par le candidat et reçue par le système, le candidat est immédiatement informé de la prise en charge de sa demande. Une demande prise en charge est traitée dans les 24h qui suivent, et la réponse doit parvenir au candidat au plus tard dans les 48h après sa demande de formation. Chaque centre dispose d’un maximum de 8h pour traiter la demande. Au-delà de 8h sans retour d’un centre, le système considère que la demande n’a pas été retenue.

Contraintes SI

Les centres de formations pour gérer les demandes de formation utilisent chacun une base de données et un serveur d’échange de messages basé sur l’API JMS.

  • Centre 1 : PostgreSQL + Apache Kafka
  • Centre 2 : SQL Server + TIBCO EMS
  • Centre 3 : Oracle DB + ActiveMQ

Objectif

Dans ce document, nous vous présentons l’étude de cas TIBCO BusinessWorks 6 qui traite différents sujets d’intégration. Le document est présenté sous forme de plusieurs cas d’utilisation constituant un vrai projet d’intégration en entreprise.

Ce que vous allez apprendre dans ce super tutoriel, l’intégration des données avec différentes bases de données

  • SQLServer
  • Oracle DB
  • PostgreSQL

Vous allez aussi apprendre comment intégrer des données avec les brokers de messages suivants :

  • Kafka
  • ActiveMQ
  • TIBCO EMS

En plus de ces technologies, vous allez aussi apprendre et mettre en œuvre les notions comme Médiation

  • Orchestration
  • Routage simple et complexe
  • Parallélisme
  • Filtrage
  • Enrichissement
  • Séquentialité

Et pour terminer, j’ai mis en œuvre dans ce super tutoriel plusieurs patterns d’implémentation qui vous permettront d’avoir des projets avec un haut niveau de standard. Ce sont des patterns les plus connus et les plus utilisés par les professionnels de l’intégration. 

  • Fire and Forget
  • Request-Reply
  • Subscriber Publisher

Présentation des outils

Cette section présente l’ensemble des outils utilisés dans le cadre de ce tutoriel

  • TIBCO BusinessWorks 6
  • TIBCO EMS
  • ActiveMQ 5.16
  • Apache Kafka 2.6.0
  • GEMS
  • SQL Server 2019 Express
  • Oracle Database 18 C Express
  • PostgreSQL
  • SOAPUI 5
  • FileZilla Client
  • FileZilla Server FTP solution
  • SQL Developer
  • PG Admin
  • DBeaver

Liste des patterns mis en œuvre dans ce tutoriel

  • Content Filter
  • Content-based Router
  • Correlation Identifier
  • Dynamic Router
  • Event Message
  • File Transfert
  • Message Broker/Filter
  • Request-Reply
  • Point-to-Point channel
  • Publish-Subscriber Channel

Présentation du projet

Dans le cadre de ce super tutoriel, j’ai tenu à concevoir et implémenter un vrai projet d’intégration d’entreprise avec un double objectif. Premièrement je veux vous montrer comment la mise en place d’un ESB dans une entreprise facilite l’intégration des données et accélère le build. En second point, je vais vous fournir un projet clé en main avec des configurations prêtes à l’emploi pour tous vos projets d’intégration avec TIBCO BusinessWorks. Ce projet ambitieux va mettre en œuvre les protocoles d’échange les plus utilisés dans l’intégration des données.

Implémentation de la solution

Diagramme des cas d’utilisation

Diagramme des séquences

Diagramme des séquences

Mise en œuvre de la solution

Veuillez nous contacter pour avoir la solution complète de ce cas d’étude.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *