L’Architecture d’Intégration se compose d’un ensemble d’éléments permettant l’interopérabilité des composants informatiques.
Dans les architectures actuelles, il est courant de devoir faire cohabiter des anciennes applications et des nouvelles, basées sur des technologies différentes et des progiciels propriétaires parfois. Les entreprises tentent de casser les silos applicatifs pour améliorer la fluidité et l’agilité des processus. Cela permet aussi plus facilement de réconcilier les données pour les exploiter, même sur de gros volumes avec le Big Data.
En outre, les intéractions entre le système d’information (SI) et l’extérieur se multiplient
- pour les relations avec les clients et les prospects,
- pour les relations avec les fournisseurs technologiques, les services financiers, les prestations de ressources humaines… (applications SaaS par exemple),
- pour les différents systèmes d’une entreprise distribuées,
- pour les partenaires industriels et technologiques (Cloud).
Et chacun des acteurs peut faire évoluer son environnement technologique et ses services.
De même, il est commun de changer de fournisseurs régulièrement pour obtenir une meilleure offre.
Tous ces aspects amènent des besoins de communication, de sécurité et d’audit.
En effet, l’importance du respect des réglementations financières, médicales, alimentaires et autres impose des contraintes de traçabilité des échanges et d’historisation des données.
Le meilleur moyen de répondre à toutes ces problématiques est d’offrir une architecture d’intégration globale et indépendante des systèmes, facilement évolutive et sécurisée.
Il n’y a pas de réponse unique et universelle pour proposer une Architecture d’Intégration.
En revanche, il existe des grands principes à respecter et des patrons à sélectionner et appliquer.
Pour désigner les composants d’intégration, on parle souvent de middlewares qui s’interposent entre les interfaces des logiciels applicatifs et des bases de données.
On désigne aussi l’ensemble de ces composants d’intégration par les termes de couche d’intégration, de bus applicatif, de bus d’entreprise, de zone d’intégration ou de couche de services. Chaque entreprise peut avoir son vocabulaire.
De manière générale, l’Intégration d’Applications d’Entreprise ou Échange Inter-applicatifs de Données ou Enterprise Application Integration (EAI) est un ensemble de technologies permettant à des applications hétérogènes de dialoguer entre elles.
L’Architecture d’Intégration intervient alors à plusieurs niveaux dans le fonctionnement du système d’information:
entre différents systèmes d’information pour des relations avec des partenaires, des fournisseurs ou des filiales indépendantes (API, EDI, fichiers, messages queues, Web Service)
à l’intérieur d’un systèmes d’information
- entre des applications: synchronisation, reporting (BI), réconciliation de données (algorithmes d’intelligence artificielle), transactions
- entre les composants d’une application
- communication Frontend-Backend
- Backend-Backend (produits hétérogènes, microservices, volonté de séparer les briques pour faciliter la maintenance et l’évolution)
Pour arriver à faire communiquer tous les applicatifs, l’Architecture d’Intégration va s’appuyer sur des briques technologiques telles que:
- échanges d’informations groupées: fichiers, ESB, ETL, EDI
- échanges d’informations en continue: streaming (Kafka…), big data
- normalisation du contenu des échanges: Master Data, référentiel de données
- mise à disposition d’informations: data lake, datawarehouse, ODS, NOSQL
- transformation des données: ETL, staging, SQL, NOSQL
Merci pour votre lecture, n’hésitez pas à partager cet article.
Je peux être amené à citer des marques (produits, solutions, entreprises) par choix rédactionnel. Mais sans indication explicite de ma part, cela ne préjuge en rien d’un quelconque partenariat ou placement de produit.
N’hésitez pas à faire part de vos connaissances et expériences pour compléter cette fiche. Utilisez les commentaires mais toujours avec bienveillance et courtoisie 😃. Au plaisir de vous lire.