L'architecture SCA (Service Component Architecture ) se compose d'un ensemble de spécifications décrivant un modèle pour la création d'applications et de systèmes à l'aide d'une approche SOA (Service Oriented Architecture).
L'architecture SOA est une infrastructure combinant des fonctions et des processus métier individuels, appelés services, servant à implémenter des applications et des processus métier sophistiqués. Dans une infrastructure SOA, les composants métier à granularité brute sont exposés en tant que services. L'architecture SOA structure les actifs informatiques en tant que série de services réutilisables généralement couplés et neutres par rapport à la plateforme et l'implémentation. L'architecture SOA conçoit des solutions comme des assemblages de services, connectés à l'aide d'interfaces et de contrats correctement spécifiés.
L'architecture SCA favorise une organisation SOA de code d'application de gestion en fonction des composants implémentant une logique métier, offrant leurs fonctions à l'aide des interfaces orientées service et utilisant les fonctions offertes par d'autres composants à l'aide des interfaces orientées service appelées références de service.
La spécification SCA définit simplement la méthode de modélisation d'une interface de service. Une interface de service représente la séparation enter les deux parties d'une application SOA. L'interface de service indique ce que le fournisseur (SOA-SP) doit implémenter et ce que le coordinateur (SOA-SC) peut appeler. Une interface de service SCA correspond à une interface à part entière réalisée en fin de compte comme document WSDL (Web Services Definition Language) ou interface Java™.
Les implémentations du fournisseur de services dans une architecture SCA sont appelées "composants de service". Une implémentation de composant de service peut être :
Implémentations de services et des clients de service
Les implémentations de service sont des implémentations concrètes de logique métier qui offrent et/ou utilisent des services. Ces implémentations utilisent une des nombreuses technologies d'implémentation, telles que Java ou C++. L'implémentation est le servant du processus métier. Une implémentation peut fournir un service, qui est un ensemble d'opérations définies par une interface utilisée par d'autres composants.
Les implémentations peuvent également utiliser d'autres services, appelés "références de service", qui indiquent la dépendance de l'implémentation aux services fournis autre part. Une implémentation peut également posséder une ou plusieurs propriétés configurables. Une propriété est une valeur de données pouvant être configurée en externe ; elle affecte la fonction métier de l'implémentation.
Les services de l'architecture SCA utilisent habituellement les données de gestion de type document pour les paramètres et les valeurs de retour. Ces paramètres sont de préférence représentés en tant qu'objets SDO (voir la section Ressources pour plus d'informations). Les services, les références et les propriétés représentent les aspects configurables d'une implémentation. L'architecture SCA en fait référence de manière collective en tant que type de composant.
Pour configurer une référence, attachez la référence à un service cible. Celui-ci est ensuite utilisé par l'implémentation lorsqu'elle appelle la référence. La configuration d'une propriété implique le paramétrage d'une valeur de données spécifique pour la propriété. Dans une infrastructure préfabriquée SCA, une implémentation peut être utilisée pour créer divers composants différents, chaque composant ayant une configuration des références et des propriétés différentes. Les composants et leurs services sont utilisés par d'autres composants locaux ou les composants peuvent être utilisés pour un accès distant.
Assemblage de modules
Un module SCA est la composition la plus étendue des composants à configuration groupée qui sont développés et déployés ensemble dans un système SCA. Il s'agit de l'unité de base d'une composition généralement liée dans un système SCA. Un module SCA contient un ensemble de composants, de services externes, de points d'entrée et de connexions les reliant. Les modules contribuent aux implémentations de services sur un système SCA.
Les points d'entrée définissent les services publics fournis par le module pouvant être utilisés par d'autres composants du même module ou rendus disponibles pour une utilisation externe au module. Ils permettent de publier les services fournis par un module à l'aide d'une liaison spécifique.
Les services externes d'un module représentent les fonctions à distance fournies par d'autres modules. Ils sont externes au module SCA utilisant le service. Les composants du module peuvent accéder aux services externes, similairement à tout service fourni par un composant SCA. Les services externes utilisent les liaisons pour décrire l'accès aux services externes.
Création d'un projet SCA
Tous les projets SCA sont créés dans le système WebSphere Integration Developer. Se référer au centre d'informations WebSphere Integration Developer sur le site http://publib.boulder.ibm.com/infocenter/dmndhelp/v6rxmx/index.jsp pour plus d'informations.