Salesforce.com (NYSE : CRM), le leader du marché de la gestion de la relation client (CRM) à la demande, présente Salesforce SOA, la première technologie SOA à la demande (Service Oriented Architectures). Cette nouvelle offre innove en proposant une nouvelle architecture orientée Web Service en alternative aux architectures SOA Client/Serveur traditionnelles qui sont des systèmes logiciels complexes et coûteux. Basée sur le futur Apex code, Salesforce SOA est une approche novatrice, permettant aux développeurs de se concentrer sur l'innovation, et non sur l'infrastructure, en créant de nouvelles générations d'applications à la demande. Salesforce SOA a été présentée lors de la conférence développeurs de salesforce.com par Marc Benioff, chairman et CEO, comme l'outil “qui va permettre d'accélérer radicalement le développement et la disponibilité des applications à la demande sur Internet, qui ont été freinés par les infrastructures des grands éditeurs”.
Salesforce SOA: la combinaison SaaS et SOA est désormais possible
Salesforce SOA tournera sur la plateforme à la demande de salesforce.com, allégeant les coûts et la complexité associés habituellement au développement et à la gestion d'une telle infrastructure. Salesforce SOA fournira la possibilité de créer des mash-ups des services à la demande multi-tenants de salesforce.com avec les processus de workflow et les processus métiers des entreprises.
Avec Salesforce SOA, les développeurs pourront :
utiliser Apex pour développer des applications SOA intégrant des services Web depuis la facturation, jusqu'à l'enregistrement de commandes sur les systèmes en passant par l'inventaire du stock,
faire des appels (Call out) vers des services Web internes mais aussi vers des backoffice tels que Oracle Financials et SAP Order Management ou des services Web externes tels que FedEx, Hoovers et Yahoo !
développer des applications riches à la demande pour tout processus d'entreprise.
La plateforme multi-tenant de salesforce.com regroupe une multitude de fonctionnalités pour développer des applications métiers telles que des modèles ou des objets pour la gestion de données, un moteur de workflow pour gérer le travail collaboratif, un modèle d'interface utilisateurs pour travailler sur des formulaires (UI). L'API Salesforce permettra, par ailleurs, des extensions avec de nouvelles fonctionnalités telles que les mash-ups mais aussi l'élaboration de connecteurs intégrant le système d'information. Ces API sont exploitable via APEX Code ainsi que par divers autres langages (Java, C#, Php etc…).
Les caractéristiques du langage de programmation Apex incluent notamment:
le modèle d'événement Apex : Apex peut être utilisé pour la gestion et le pilotage de tous les objets. Les développeurs peuvent ainsi paramétrer et créer leurs propres processus métiers basée sur des objets standards comme compte contact et opportunité mais aussi les nouveaux objets tel que projet, note de frais etc…
le contrôle des transactions : La proximité entre les différentes composantes (Données, Code et plateforme) fruit de cette architecture permettra aux développeurs de contrôler très facilement toutes les transactions sur tous les objets (Standard et nouveau). La création de « trigger à la demande » et de « procédures stockées à la demande» devient une tache facile.
libraires réutilisables et Services Web : Apex utilise un modèle standard similaire à Java, dans lequel des paquets (Package) de librairies ré-utilisables peuvent être invoqués depuis des procédures ou des triggers .
Apex et AppExchange : ils permettent aux développeurs de redistribuer leurs applications développées sous Apex dans l'annuaire AppExchange
Pour toute information sur le langage de programmation Apex et Salesforce SOA : http://wiki.apexdevnet.com/index.php/Salesforce_SOA.
Le réseau de développeurs « Salesforce Developer Network »
Salesforce.com met à la disposition des développeurs des programmes et codes sources, sur son site Wiki : http://developer.salesforce.com.
Disponibilité
Il est prévu une version avancée de Salesforce SOA sur Apex en août 2007. Le langage de programmation Apex est actuellement planifié pour décembre 2007.