Untitled Document
Service Gateway Pattern

En savoir plus

 

Consommer une ressource externe oblige à trouver un équilibre consensuel des contraintes en présences :

- Implémenter les responsabilités figurant dans le contrat du consommateur, exige l'introduction de mécanismes de sécurité et de communication comme l'authentification, le cryptage et l'acheminement des messages. Chaque mécanisme accentue la dépendance entre la solution et la ressource.

Le contrat peut spécifier des formats de données qui diffèrent de la représentation interne de l'application

- En général, le canal de communication qui assure la connectivité expose à l'application une interface d'application (API) générique de bas niveau. Cette API peut inclure des méthodes génériques comme SendData. Dans la plupart des cas, nous souhaitons que l'application utilise une interface sémantiquement plus riche et adaptée, grâce à des méthodes telles que getCustomerPortfolio ou getCustomerAddress.

- Le contrat peut spécifier des formats de données qui diffèrent de la représentation interne de l'application. Dans ce cas, les données doivent être converties. Parfois, cette conversion se limite à la modification du nom d'un champ ou à la conversion du type de données, mais il arrive qu'elle exige des transformations structurelles et sémantiques complexes.

- Tests de la solution implique aussi bien l'application interne que la ressource externe. Parfois celle-ci n'est pas accessible à partir de l'environnement de test. Inclure le service consommé dans les plans de tests est primordial afin d'éviter les erreurs et les effets de bords.


JDN Développeur Envoyer Imprimer Haut de page