SOA Version imprimable Suggérer par mail
15
 

Qu’est-ce que SOA ?


SOA comme Service Oriented Architecture n’est ni plus ni moins qu’un style d’architecture. Il peut être pensé comme un catalogue de concepts architecturaux ou un modèle de programmation.

 

BROCHURE(S)
Présentation générale de ARCAD Software PDF

Dans une architecture SOA, toutes les fonctionnalités sont fournies sous forme de services assemblés les uns aux autres par l’intermédiaire d’un « bus applicatif » (ESB : Enterprise Service Bus). Ceci fournit un niveau de flexibilité à déployer et réutiliser des services jusque là jamais atteint.
Lorsque SOA est implémenté, les systèmes d'informations existants peuvent être vus comme des services fournissant des fonctions business. Ces fonctions sont aisément intégrées car elles fournissent des interfaces bien définies et peuvent être accédées via des protocoles de transport standardisés.
On peut distinguer deux points fondamentaux dans SOA :

  • L’interopérabilité concerne plus des services métiers que l’on pourrait qualifier de « vitrine », comme par exemple la saisie d’une commande (que tout acheteur internaute a déjà utilisé). Il faut qu’il communique facilement avec l’extérieur de l’entreprise.
  • La réutilisation se place plus particulièrement sur les petits services unitaires très « consommés » comme un calcul, une règle de gestion de base, un contrôle des droits, un accès au LDAP, … des éléments qui restent « relativement » internes à l’entreprise, mais utilisés par de nombreux services métiers. Certains peuvent être constitutifs d’une couche de service d’infrastructure comme la gestion des utilisateurs, par exemple.

15


Pourquoi migrer vers une architecture SOA ?

Cette architecture est une évolution logique à toutes les formes d’architectures Web qui existaient déjà. Ce qui est nouveau, c’est qu’elle tient compte de l’existant, un existant souvent très large que l’on va pouvoir valoriser.
Cette notion de « bus applicatif », autrement dit la faculté à faire communiquer les applications les unes aux autres de manière standardisée est particulièrement attractive car elle porte tous les principes de l’interopérabilité des applications. C'est cette standardisation qui est porteuse d'avenir.
Imaginez : l'arrivée d'un nouveau partenaire dans votre organisation. Quasi instantanément vous serez en mesure de connecter votre prise de commande à la sienne, son système de facturation au vôtre, et les gains en terme d'efficacité de votre organisation seront évidents.
Imaginez : l'intégration d'un nouveau progiciel de CRM. Il vient se "plugger", grâce à ses Web Services aux divers éléments de gestion déjà existants.
Résultat : plus de doubles saisies, plus de développement de programmes d'interface, une cohérence globale du SI obtenue avec de moindres efforts.

Les outils d'ETL/EAI ont déjà ouvert la voie de cette orientation. Mais SOA va beaucoup plus loin dans le sens où il ne s'agit plus de transférer et/ou transformer des données d'un système à l'autre, mais de connecter des processus. Le challenge est de rendre votre informatique communicante. Après la standardisation des communications réseaux, où TCP/IP s'est imposé de fait sur l'ensemble de la planète, c'est maintenant au tour des applications de standardiser les moyens d'accès aux services qu'elles fournissent.

 


SOA dans le monde System i...

Pour migrer vers une architecture SOA dans le monde System i, il faut impérativement passer par la case ILE (Integrated Language Environment). Seul l’environnement ILE permet de mettre en œuvre les principes de base de SOA, à savoir la modularité du code. Seul l’environnement ILE permet également de mixer les technologies natives RPG ou COBOL avec les technologies web.
En outre, dans l’environnement de développement WDSC, vous pouvez convertir n’importe quel programme ILE en un web service. Une fois développées vos fonctions métiers, il ne vous restera que très peu d’efforts à fournir pour les rendre accessibles sur le web.


Par où commencer ?

Comment migrer vers une architecture SOA lorsque son système d’informations est principalement constitué de grandes applications monolythiques et peu ouvertes sur le monde extérieur ? Nous conseillons vivement à notre clientèle d’adopter une approche très pragmatique. Elle consiste à partir d’un projet fonctionnel précis qui apportera rapidement une vraie plus-value au SI. Cela peut être, par exemple, la possibilité de saisie via le web des informations d’un nouveau client. Cette fonction pourrait être mise à disposition des utilisateurs via un site web, puis alimenter simultanément toutes les applications qui en ont besoin. Partant d’un cas comme celui-ci, il va falloir isoler toutes les fonctions « saisie d’un nouveau client » pour les transformer en un service web unique. Il faudra profiter d’un projet précis comme celui-ci pour absorber les spécificités techniques d’une architecture SOA et redéfinir vos standards de programmation.
L’équipe ARCAD Software peut vous fournir toute cette expertise technique dont vous avez besoin pour “mettre le pied à l’étrier”. Pour de plus amples informations, veuillez vous reporter à la rubrique « services » de notre site.


SOA et les suites ARCAD Software

L'outillage ARCAD qui va pouvoir aider les entreprises à intégrer l'architecture SOA est composé de trois dispositifs:

  • Le référentiel ARCAD-Open Repository. Véritable base de connaissances du SI existant, il sera le gardien du patrimoine et la mémoire de son évolution,
  • La suite ARCAD-Observer, interviendra dans les processus de maintien et de transfert de la connaissance technique du SI existant,
  • La suite ARCAD-Skipper permettra d'intégrer plus facilement les nouvelles technologies nécessaires à l'implémentation de SOA.

 

Le référentiel Arcad Open-Repository
La notion de référentiel est indispensable dans une démarche SOA. Qui dit modularité du code, dit foisonnement de nouveaux composants. Des composants qui ne tournent forcément pas sur les même plateformes. Comment disposer alors d'une vision d'ensemble des applications ? Le référentiel Arcad est une réponse pragmatique à ce besoin. Il permet de référencer n'importe quel type de composant, qu'il se trouve sur le System i ou sur un serveur déporté, qu'il s'agisse d'un composant System i, Unix, Linux ou Windows.
L'autre volet fondamental du référentiel Arcad, c'est qu'il recense toutes les dépendances inter-composants (ce que les développeurs appellent communément les références croisées). Cette source d'information est essentielle pour bien maîtriser les évolutions des applications.

La suite ARCAD-Observer
L’étape initiale d’une démarche SOA, c’est tout naturellement l’analyse de l’existant. Il va falloir procéder à un inventaire des fonctions déjà contenues dans le SI et qui pourront être transformées en services. La suite de cartographie d'applications ARCAD-Observer est vraiment l'outil idéal pour ce genre de tâche. Elle offre une batterie d'outils variés qui permettent de descendre dans l'architecture interne des applications pour en comprendre les liants.
On peut commencer par la reconstitution du modèle de données, élément de base fondamental à partir duquel on va pouvoir remonter dans les traitements pour isoler les règles de gestion. ARCAD-Observer dispose de tous ces éléments: il reconstitue en automatique les liens base de données et les présente sous forme de diagrammes.
On peut ensuite remonter directement aux cascades d’appels de programmes à l'aide des « chaines d'appels ». Chaque zone peut être suivei de composants en composants jusque dans le code source. L'analyseur de code source permet alors de présenter la logique interne des programmes.
A un échelon plus macroscopique, on peut utiliser les « vues macroscopiques » pour obtenir une vision par grands domaines fonctionnels du SI.

La suite ARCAD-Skipper
ARCAD-Skipper est une suite de gestion de configuration logicielle multi-plateformes. Adossée au référentiel ARCAD, elle permet d'organiser de manière rigoureuse et cohérente tous les processus de changement des composants logiciels, quelle que soit leur plateforme d'origine. Son point fort majeur réside dans sa capacité à déployer des composants sur des serveurs hétérogènes au travers des même process. Mais par delà ces fonctions « classiques », ARCAD-Skipper se positionne comme un système structurant permettant d'intégrer sans douleur les nouvelles technologies de développement. Ceci est particulièrement vrai pour les deux socles de SOA: ILE et SQL.

 

2008 ARCAD SOFTWARE | Mentions légales