Concepts

Notions principales à comprendre afin d’appréhender les objectifs et la plus value de la solution.

Pour obtenir le résultat présenté dans les fonctionnalités, il convient de prendre connaissance des notions essentielles de Enterprise Flows Repository.

  1. Les notions d’échanges, de flux et de médiations qui permettent aux acteurs d’obtenir une vision cohérente des transports,
  2. La démarche d’urbanisation qui permet le lien entre les échanges, les flux et les médiations,
  3. Les traces qui sont envoyées à EFR par les outils d’intermédiations.

1 - Echange, Flux et Médiations

Description d’un échange dans les couches de l’urbanisation.

EFR représente les échanges entre les systèmes. Son objectif peut être résumé à cela. Ces échanges sont représentés pour:

  1. Les métiers
  2. Les acteurs techniques.

De ce fait, leur définition se suppertosent mais sur des axes différents:

  • la vision métier sur la couche “fonctionnelle” (cf. Urbanisation)
  • la vision technique sur la couche “médiations”.

Echange

Un échange est un transfert de données d’un système source vers N systèmes cibles. Il est une vision simplifiée du transport d’information.

La vision fonctionnelle permet de gouverner les échanges d’un point de vue fonctionnel.

Un échange est caractérisé par

  • un système source,
  • un ou plusieurs systèmes cibles,
  • une ou plusieurs informations transportées,
  • un état d’exécution.

Exemple:

Flux

Un flux est le trasnport entre 2 interfaces techniques. Un flux peut être composé, intermédiaire ou direct. Il est souvent utilisé le terme de demi-flux lors de la succession de flux.

Un flux est caractérisé par :

  • Une application source,
  • Une ou plusieurs application cibles,
  • une ou plusieurs données transportées.
  • une technologie de mise en oeuvre
  • une chorégraphie de médiations,
  • un état d’exécution.

Exemple:

Médiation

La mise en oeuvre d’un flux est ensemble de fonctions, de services ou de routes (pour camel par exemple).

Ces médiations réalisent des transformations protocolaires, des routages, des publcations, des enrichissements, etc. lors du traitement des messages.

Chaque médiation est caractérisée par:

  • une interface source
  • une ou plusieurs interfaces cibles,
  • un code,
  • un état d’exécution.

Ce sont les médiations qui génèrent des traces à destination de EFR.

2 - Urbanisation

Organisation et structuration générale.

Visions urbanisés du Système d’Information

‘Enterprise Flows Repository’ respecte l’organisation mise en place lors des travaux d’urbanisation.

Bien que les éléments soient volontairement simplifiés, on retrouve les “couches” traditionnelles:

  1. Entreprise
  2. Fonctionnel ou Métier
  3. Application
  4. Infrastructure

Lors de l’analyse de ces travaux, il est très difficile de décrire les notions de flux, d’interfaces voir de médiation applicative.

Bien qu’indispensable à la gouvernance et à la modélisation du Système d’Information, l’urbanisation est limitée sur la partie d’interconnexion entre les applications.

La particularité et la plus-value de EFR est d’avoir “ajoutée” une couche intermédiaire dite de “médiations”. Ainsi cette couche porte la définition des éléments plus fins et spécifiques à l’interconnection des applications.

Pour EFR, les couches manipulées plus fines et plus opérationnelles avec :

  1. Entreprise
  2. Processus (spécifique)
  3. Fonctionnel
  4. Applications
  5. Médiations (spécifique)
  6. Déploiement (spécifique)
  7. Infrastructure

Modélisation

Il est nécessaire de définir les concepts du Système d’information au sein de EFR afin que celui-ci puisse corréler les traces qui lui sont envoyées.

Utiliser EFR implique donc une part de modélisation.

Manipulation par API

Toutes les couches d’urbanisation de EFR sont exposées sous la forme d’API.

Les usages transverses et connexes sont alors possibles lors de:

  • l’urbanisation avec des outils spécialisés (MEGA OPEX, Ardoq, LeanIX etc)
  • l’intégration continue

La collaboration avec les écosystèmes existants est facilitée par les API.

3 - Trace

Collecte des traces de transport de données.

EFR est une solution qui analyse, aggrège et adapte des traces produites lors des transferts de données.

La portabilité de cette trace garantie que EFR n’est pas dépendant d’un éditeur.

EFR reçoit indépendamment des traces des plateformes d’interconnexion comme les API Management, Gateway, Micro-Services, ESB, ETL, Scripts, etc.

Pour compléter les visions, les outils comme les ERP peuvent aussi envoyer des traces de transport.

Contenu

Une trace indique le transport d’un message dont un contexte logiciel et infrastructure.

Chaque trace porte:

  • l’état de la trace
  • le message:
    • le corps au format texte,
    • les entêtes techniques
    • la date de production,
    • l’état au moment
  • la médiation qui a pris en charge:
    • son identifiant,
    • son étape,
    • sa version
  • le contexte métier
    • les données transportées
  • l’infrastructure

Format

Le format respecte le standard API:

  • JSON

Exemple

  {
    "state": "success",
    "environment": "production",
    "message": {
      "created": "2022-05-30",
      "correlationId": "abcd-efgh-ijkl-mnop",
      "headers": [
        {
          "name": "EnteteA",
          "value": "123"
        }
      ],
      "body": "Texte transporté.",
      "type": "business",
      "level": "INFO",
    },
    "route": {
      "name": "ServiceABC",
      "version": "1.0.0",
      "id": "serviceA-123",
      "step": "Lecture du message",
      "description": "Message de ..."
    },
    "business": [
      {
        "name": "COMMANDE",
        "value": "1234"
      },
      {
        "name": "CLIENT",
        "value": "78945"
      }
    ],
    "infrastructure": {
      "instance": "GatewayAPI-abc",
      "hostname": "gateway1",
      "datacenter": "paris"
    }
  }

4 - Environnement

Environnement d’éxécution.

EFR est une solution qui analyse, aggrège et adapte des traces produites lors des transferts de données.

Standard

Les environnements sont habituellement les suivants:

  • Production
  • Staging ou Pré-Production
  • Qualification ou Recette
  • Intégration

Contenu d’un environnement

Chaque environnement comporte:

  1. Les serveurs nécessaires au traitement des traces.
  2. Les bases de données de stockage.

Chaque environnement est dimensionnée en fonction de la performance nécessaire et de la criticité des données.