FR2846498A1 - METHOD FOR COMMUNICATION BETWEEN SERVERS AND DEVICE FOR IMPLEMENTING SAID METHOD - Google Patents

METHOD FOR COMMUNICATION BETWEEN SERVERS AND DEVICE FOR IMPLEMENTING SAID METHOD Download PDF

Info

Publication number
FR2846498A1
FR2846498A1 FR0213393A FR0213393A FR2846498A1 FR 2846498 A1 FR2846498 A1 FR 2846498A1 FR 0213393 A FR0213393 A FR 0213393A FR 0213393 A FR0213393 A FR 0213393A FR 2846498 A1 FR2846498 A1 FR 2846498A1
Authority
FR
France
Prior art keywords
server
servers
client
application
mcma
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR0213393A
Other languages
French (fr)
Inventor
Jean Paul Carmona
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sema
Original Assignee
Sema
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sema filed Critical Sema
Priority to FR0213393A priority Critical patent/FR2846498A1/en
Priority to AU2003288272A priority patent/AU2003288272A1/en
Priority to PCT/EP2003/050726 priority patent/WO2004039039A1/en
Publication of FR2846498A1 publication Critical patent/FR2846498A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • G06F9/548Object oriented; Remote method invocation [RMI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Abstract

Procédé et dispositif permettant de faire communiquer à l'intérieur d'un système informatique (1) de type distribué, une pluralité de serveurs clients (4) possédant chacun des moyens logiciels et matériels spécifiques avec une pluralité de serveurs d'applications (5) possédant chacun des moyens logiciels et matériels spécifiques et comprenant chacun au moins une application choisie (6), les serveurs clients (4) étant directement connectés à un unique serveur MCMA (7) lequel est à son tour directement connecté à l'ensemble des serveurs d'applications (5), caractérisé en ce que lesdits serveurs client (4) présentent les appels de service sous la forme d'action, ces actions étant des classes en langage de programmation orientée objet qui possèdent une structure de données et une méthode apte à encapsuler l'appel à destination d'un ou plusieurs serveurs d'applications cibles (5) et/ou à prévoir d'éventuels traitements assurés par le serveur MCMA (7).Method and device for communicating within a distributed type computer system (1), a plurality of client servers (4) each having specific software and hardware means with a plurality of application servers (5) each having specific software and hardware means and each comprising at least one chosen application (6), the client servers (4) being directly connected to a single MCMA server (7) which is in turn directly connected to all of the servers applications (5), characterized in that said client servers (4) present the service calls in the form of actions, these actions being classes in object-oriented programming language which have a data structure and a suitable method to encapsulate the call to one or more target application servers (5) and / or to provide for any processing performed by the MCMA server (7).

Description

La présente invention se rapporte à un procédé de communication entreThe present invention relates to a method of communication between

serveurs ainsi qu'à un dispositif pour sa mise en oeuvre.  servers and a device for its implementation.

Dans les systèmes informatiques dits distribués, tels que notamment les 5 systèmes informatiques financiers utilisés par les banques ou encore par les compagnies d'assurance, il existe différents serveurs de natures distinctes destinés à communiquer les uns avec les autres pour gérer et traiter des flux de transactions et d'informations. Un serveur s'entend ici comme la combinaison de matériels informatiques (hardware) et de logiciels 10 appropriés (software).  In the so-called distributed computer systems, such as in particular the 5 financial computer systems used by the banks or by the insurance companies, there are different servers of different natures intended to communicate with each other to manage and process data flows. transactions and information. A server is understood here as the combination of computer hardware (hardware) and appropriate software (software).

Ainsi, un système informatique financier comporte différents serveurs dits clients (ou encore de front office selon la terminologie anglo- saxonne)  Thus, a financial computer system comprises different servers called customers (or front office according to the English terminology)

interconnectés à différents serveurs dits d'application (ou de back office).  interconnected to different so-called application servers (or back office).

Les serveurs d'application sont plus particulièrement destinés à gérer des bases de données et à réaliser des traitements spécifiques encore appelés services. Le terme service est ici défini de façon générale comme tout traitement informatique, ce terme recouvre aussi bien la mise à disposition 20 d'une information particulière comme un numéro de compte, que le calcul  The application servers are more particularly intended to manage databases and to perform specific treatments, also called services. The term service is here defined generally as any computer processing, this term covers both the provision of a particular piece of information such as an account number, the calculation

d'un solde ou encore un virement.a balance or a transfer.

Le système informatique d'une banque comporte généralement un serveur d'application bancaire (exemple: moteur financier commercialisé par la 25 société SAB) qui traite toutes les opérations liées à la gestion de comptes de dépôts, un serveur de crédit qui gère les prêts accordés par la banque à sa clientèle, un serveur boursier de gestion des valeurs mobilières (moteur boursier Investiciel commercialisé par la société SEMA) , un serveur d'assurance, etc. Les serveurs client sont eux destinés à permettre aux employés et aux usagers de la banque d'accéder aux différents serveurs d'application depuis des interfaces et des réseaux de communication spécifiques, encore appelés canaux, pour fournir (opérations de mise à jour, etc.) ou récupérer 5 (opérations d'interrogation, etc.) des données à travers des requêtes appelées appels de services. En effet, chaque requête reçue par un serveur  The computer system of a bank generally comprises a bank application server (example: financial engine marketed by the SAB company) which processes all the operations related to the management of deposit accounts, a credit server which manages the loans granted. by the bank to its clientele, a stock market securities management server (Investiciel exchange engine marketed by SEMA), an insurance server, etc. The client servers are intended to allow employees and users of the bank to access different application servers from specific interfaces and communication networks, also called channels, to provide (update operations, etc.). ) or retrieve 5 (query operations, etc.) data through queries called service calls. Indeed, each request received by a server

d'application génère l'exécution d'un service correspondant par ce dernier.  application generates the execution of a corresponding service by the latter.

Comme serveurs client utilisés par le système informatique d'une banque, 10 on peut citer un serveur gérant les ordinateurs équipant les guichets des banques, un serveur GAB/DAB associés aux guichets/distributeurs automatisés, un serveur vocal qui permet aux usagers d'accéder aux serveurs d'application au moyen d'un téléphone, un serveur Web pour accéder à ces serveurs via l'lnternet, un serveur Minitel, un serveur WAP, 15 les serveurs des partenaires de l'organisme financier, etc. Une telle architecture est indispensable pour permettre d'obtenir par simple appel d'un téléphone numérique interrogeant une institution financière telle qu'une banque, le solde d'un compte courant ou bien encore pour imputer 20 d'un compte courant la somme prélevée lors d'un retrait à un distributeur de billets de banque et fournir à son titulaire l'information quant au nouveau  As client servers used by the computer system of a bank, there may be mentioned a server managing the computers equipping the counters of the banks, a ATM / ATM server associated with ATMs / ATMs, a voice server that allows users to access to the application servers by means of a telephone, a web server for accessing these servers via the lnternet, a Minitel server, a WAP server, the servers of the partners of the financial organization, etc. Such an architecture is essential to obtain by simply calling a digital telephone interviewing a financial institution such as a bank, the balance of a current account or even to charge 20 of a current account the amount taken during a withdrawal to a distributor of banknotes and provide the holder with information on the new

solde après cette opération.balance after this operation.

Historiquement, chacun des serveurs client était directement connecté, au 25 fur et à mesure de sa création, à chacun des serveurs d'application qui le  Historically, each of the client servers was directly connected, as it was being created, to each of the application servers that

concerne par des liaisons dédiées de type point-à-point.  concerned by dedicated point-to-point links.

La multiplication des serveurs d'application et des serveurs client liés à l'apparition de nouveau canaux comme l'lnternet, la téléphonie mobile, mais 30 également au développement de nouvelles prestations financières comme l'assurance, rend une telle architecture point à point extrêmement difficile à  The proliferation of application servers and client servers linked to the emergence of new channels such as the Internet and mobile telephony, but also to the development of new financial services such as insurance, makes such an architecture extremely point-to-point. difficult to

développer, à gérer, maintenir et sécuriser.  develop, manage, maintain and secure.

Ainsi, la mise en place d'un serveur Web suppose l'écriture complète par les 5 équipes informatiques ayant la charge de développer le système informatique, de l'interface et des travaux d'intégration avec chacun des serveurs d'application auxquels il est connecté et ce, sans pouvoir réutiliser  Thus, the setting up of a Web server assumes the complete writing by the 5 IT teams in charge of developing the computer system, the interface and the integration work with each of the application servers to which it is connected and can not reuse

les développements déjà réalisés par exemple pour le serveur Minitel.  developments already made for example for the Minitel server.

Depuis quelques années, l'architecture point à point tend à être remplacé par une architecture de type " hub ". La connexion entre les serveurs client et les serveurs d'application se trouve être alors réalisée par l'intermédiaire d'un serveur particulier dit serveur MCMA pour serveur multi-canal et multiapplication (appelé encore middleware dans la terminologie anglo-saxonne) 15 auxquels sont connectés tous les serveurs client et tous les serveurs d'application. Un tel serveur MCMA assure le routage des données entre les serveurs mais également est à même de réaliser un certain nombre de fonctionnalités 20 supplémentaires. Le serveur MCMA fait donc office d'unique serveur d'application pour les serveurs client et d'unique serveur client pour les  In recent years, point-to-point architecture has tended to be replaced by a hub-type architecture. The connection between the client servers and the application servers is then carried out via a particular server called MCMA server for multi-channel server and multiapplication (also called middleware in the English terminology) 15 which are connected all client servers and all application servers. Such an MCMA server provides routing of data between the servers but is also able to perform a number of additional features. The MCMA server acts as a single application server for client servers and a single client server for

serveurs d'application.application servers.

Grâce à cette architecture, le développement d'un nouveau serveur client ne 25 nécessite qu'un seul travail de connexion au serveur MCMA. Le serveur MCMA est alors apte à fournir à ce nouveau serveur client l'ensemble des services disponibles sur les serveurs d'application, selon un procédé de communication choisi. Il en est bien évidemment de même, lorsqu'il s'agit d'ajouter un nouveau serveur d'application. 30  With this architecture, the development of a new client server requires only one connection job to the MCMA server. The MCMA server is then able to provide this new client server with all the services available on the application servers, according to a chosen communication method. It is obviously the same when it comes to adding a new application server. 30

Le document WO-A-98/24040 décrit un tel serveur.  The document WO-A-98/24040 describes such a server.

Une telle solution permet d'accéder à chaque serveur d'application de manière indépendante des connexions reliant le serveur MCMA aux serveurs client. Toutefois, le procédé de communication proposé entre les serveurs client et les serveurs d'application via le serveur MCMA n'est pas totalement satisfaisant dans la mesure o il est de mise en oeuvre relativement 10 complexe, notamment en ce qui concerne: - la mise en commun de fonctionnalités mises en oeuvre par le serveur  Such a solution provides access to each application server independently of the connections connecting the MCMA server to the client servers. However, the communication method proposed between the client servers and the application servers via the MCMA server is not entirely satisfactory since it is relatively complex to implement, in particular as regards: common features implemented by the server

MCMA pour le compte des serveurs client.  MCMA on behalf of the client servers.

- l'intégration d'un serveur client ayant des contraintes technologiques spécifiques; - les modifications régulières dans les serveurs d'application (évolutions, remplacement, dédoublement, etc.); Par ailleurs le système proposé dans l'art antérieur ne traite pas de l'importlexport de données vers ou provenant des serveurs d'application, 20 dans le cadre d'un projet de migration de données issues d'autres systèmes  - the integration of a client server with specific technological constraints; - regular changes in the application servers (evolutions, replacement, duplication, etc.); Furthermore, the system proposed in the prior art does not deal with the importlexport of data to or from application servers, 20 as part of a project for migrating data from other systems.

informatiques par exemple.computer for example.

Traditionnellement, lorsque qu'une migration de données entre deux systèmes informatiques doit se faire (par exemple la migration des clients 25 d'une banque rachetée dans le système informatique de la banque  Traditionally, when a data migration between two computer systems is to be done (for example the migration of customers 25 from a redeemed bank into the bank's computer system.

acheteuse). Le procédé de migration consiste à extraire du système informatique source les données sous forme de fichier puis à insérer ses données directement dans les bases de données des différents serveurs d'applications hébergeant des données clients (portefeuille boursier des 30 clients, soldes de comptes etc.).  buyer). The migration process consists of extracting the data from the source computer system as a file and then inserting its data directly into the databases of the different application servers hosting client data (stock portfolio of the 30 clients, account balances, etc.). ).

Les programmes d'extraction sont faits de façon spécifique en fonction des possibilités offertes par le système source, ils produisent généralement des fichiers d'extraction textes " à plat " image des tables des bases de  The extraction programs are made specifically according to the possibilities offered by the source system, they generally produce extraction files texts "flat" image of the tables of the bases of

données du système de la banque achetée.  data from the system of the bank purchased.

Les programmes d'extraction sont également faits de façon spécifique pour répartir les données des fichiers d'extraction dans les tables correspondantes des différents serveurs d'applications hébergeant des  Extraction programs are also made specifically to distribute the extraction file data in the corresponding tables of the different application servers hosting applications.

données clients (portefeuille boursier des clients, soldes de comptes etc. ).  customer data (customer portfolio, account balances, etc.).

Ces travaux de migration se font souvent également dans le cadre de la centralisation au niveau national, des systèmes informatiques (souvent différents) de chaque filiale régionale ou lors de la mise en place de flux de données périodiques avec le système informatique d'une société partenaire 15 (B2B, ex: rachat du fichier client d'une société de vente par correspondance). A chaque migration, les programmes de création des fichiers d'extraction sont à faire, mais la diversité des données à migrer  Migration work is also often done in the context of centralization at the national level, computer systems (often different) of each regional subsidiary or when setting up periodic data flows with the IT system of a partner company. 15 (B2B, ex: redemption of the client file of a mail order company). With each migration, the programs of creation of the files of extraction are to be made, but the diversity of the data to be migrated

oblige le plus souvent à réécrire les programmes d'insertion des données.  most often requires rewriting the data insertion programs.

La présente invention vise donc à remédier à tous ces inconvénients.  The present invention therefore aims to remedy all these disadvantages.

Elle porte sur un procédé de communication entre serveurs et sur le  It relates to a method of communication between servers and on the

système de mise en oeuvre correspondant.  corresponding implementation system.

La présente invention concerne un procédé permettant de faire communiquer une pluralité de serveurs client possédant chacun des moyens logiciels et matériels spécifiques avec une pluralité de serveurs d'application possédant chacun des moyens logiciels et matériels spécifiques et comprenant chacun au moins une application choisie. 30 Selon ce procédé, les serveurs client sont directement connectés à un unique serveur MCMA lequel est à son tour directement connecté à l'ensemble des serveurs d'application, de sorte que tout appel de service d'un serveur client à destination d'un serveur d'application donné, est 5 d'abord adressé par ledit serveur client au serveur MCMA à charge de ce dernier de le router au serveur d'application concerné et de faire remonter en retour d'éventuelles informations du serveur d'application vers le serveur client. Selon une définition générale de l'invention, le procédé de communication consiste à présenter chaque appel de service sous la forme d'une action qui est une classe en langage de programmation orientée objet, possédant des attributs/champs d'entrée représentant les paramètres de l'appel de service et d'éventuels attributs/champs de sortie représentant le résultat du service 15 destiné à être retourné au dit serveur client et une méthode apte à encapsuler l'appel à destination d'un ou plusieurs serveurs d'application  The present invention relates to a method for communicating a plurality of client servers each having specific software and hardware means with a plurality of application servers each having specific software and hardware means and each comprising at least one chosen application. According to this method, the client servers are directly connected to a single MCMA server which is in turn directly connected to all the application servers, so that any service call from a client server to a server given application server, is first sent by said client server to the MCMA server by the latter to route it to the application server concerned and to return any information from the application server to the server. client server. According to a general definition of the invention, the communication method consists in presenting each service call in the form of an action which is a class in object-oriented programming language, having attributes / input fields representing the parameters of the service call and any attributes / output fields representing the result of the service 15 to be returned to said client server and a method capable of encapsulating the call to one or more application servers

cibles et/ou à prévoir d'éventuels traitements assurés par le serveur MCMA.  targets and / or to provide for possible treatments provided by the MCMA server.

Le serveur MCMA dès réception de l'action exécute cette dernière en mode 20 synchrone ou asynchrone en déroulant la méthode associée à cette action pour opérer d'éventuels traitements sur les attributs/champs d'entrée et/ou envoyer au(x) serveur(s) d'application cible(s) concerné(s) l'appel de service dans le format et protocole spécifique attendu par ledit ou lesdits serveurs d'application.  The MCMA server upon receipt of the action executes the latter in synchronous or asynchronous mode by scrolling the method associated with this action to make possible processing on the attributes / input fields and / or send to the server (s). s) target application (s) concerned the service call in the format and specific protocol expected by said application server or servers.

Chaque serveur d'application appelé opère son traitement et fournit le service attendu, dans son format spécifique, au serveur MCMA, lequel opère alors d'éventuels traitements sur les données ainsi retournées par le ou les serveurs d'application et valorise les attributs de sortie de l'action qui est 30 ensuite remontée au serveur client émetteur.  Each called application server performs its processing and provides the expected service, in its specific format, to the MCMA server, which then processes any processing on the data thus returned by the application server (s) and values the output attributes. of the action which is then sent back to the sending client server.

Plusieurs serveurs d'application peuvent être sollicités lors de l'exécution d'une même action. Dans ce cas, les différents serveurs d'application peuvent être appelés successivement ou simultanément en fonction du  Several application servers can be requested when performing the same action. In this case, the different application servers can be called successively or simultaneously depending on the

service fournis.service provided.

L'utilisation d'action pour communiquer entre les serveurs clients et le serveur MCMA, a l'avantage, dans un contexte de programmation orientée objet, d'être de mise en oeuvre simple et facile o l'on souhaite: bénéficier, grâce à l'héritage entre les classes, d'une mise en 10 commun de fonctionnalités présentes de façon récurrente dans les appels de services et qui peuvent ainsi être mises en couvre de façon simple directement par le serveur MCMA, comme par exemple: l'identification de l'usager, le contrôle d'habilitation, l'audit des appels de service ou encore leur tarification; - uniformiser le procédé de communication avec les serveurs clients; - les modifications régulières dans les serveurs d'applications  The use of action to communicate between the client servers and the MCMA server, has the advantage, in an object-oriented programming context, of being simple and easy to implement where it is desired: to benefit, thanks to the inheritance between classes, of a pooling of features that are recurrently present in the service calls and which can thus be simply covered directly by the MCMA server, for example: the identification of the user, the authorization control, the audit of service calls or their pricing; - standardize the communication process with the client servers; - regular changes in application servers

(remplacement, dédoublement, évolutions).  (replacement, duplication, evolutions).

Selon un mode de réalisation particulier de l'invention, chaque action est 20 transférable du serveur client vers le serveur MCMA ou du serveur MCMA vers le serveur client sous la forme de fichiers texte écrits en langage de  According to a particular embodiment of the invention, each action is transferable from the client server to the MCMA server or from the MCMA server to the client server in the form of text files written in the language of the client server.

balisage extensible du type XML ou analogue.  Extensible markup of the XML type or the like.

D'autres caractéristiques et avantages de l'invention apparaîtront à la 25 lumière de la description détaillée ci-après et des dessins dans lesquels:  Other features and advantages of the invention will become apparent from the following detailed description and drawings in which:

- la figure 1 est une représentation schématique d'un système informatique mettant en couvre le procédé de communication entre serveurs client et serveurs d'application selon l'invention; - la figure 2 illustre le procédé de communication selon l'invention; et - la figure 3 est un schéma précisant la structure du serveur MCMA mis en  FIG. 1 is a schematic representation of a computer system covering the method of communication between client servers and application servers according to the invention; FIG. 2 illustrates the communication method according to the invention; and FIG. 3 is a diagram specifying the structure of the MCMA server set in

oeuvre dans le système informatique de la figure 1.  in the computer system of Figure 1.

En référence à la figure 1, le système informatique décrit est un système 5 informatique d'une institution financière telle qu'une banque. Ce système informatique référencé 1 fournit une pluralité de services financiers gérés par des serveurs d'application spécialisés et accessibles par les employés ou  With reference to FIG. 1, the computer system described is a computer system of a financial institution such as a bank. This computer system referenced 1 provides a plurality of financial services managed by specialized application servers and accessible by employees or

les usagers à travers une pluralité d'interfaces clients 2.  users through a plurality of client interfaces 2.

Par exemple, les interfaces clients 2 appartiennent au groupe formé par des téléphones numériques fixes 2a ou mobiles 2b, des guichets automatiques GAB (non représentés), des succursales recevant du courrier 2c ou des télécopies 2d, des bureaux de vente de succursale (non représentés), des distributeurs de billets en libre-service DAB (non représentés), des 15 ordinateurs personnels pour banque à domicile utilisant une connexion de type Internet 2f ou minitel 2g, des télévisions interactives 2e, etc. Ces interfaces clients 2 sont connectées par des réseaux appropriés 3, individualisé en 3-1 à 3-6, à des serveurs client 4, individualisés en 4-1 à 420 6. Les serveurs 4 sont développés de façon spécifique en fonction des  For example, the client interfaces 2 belong to the group consisting of fixed digital 2a or mobile 2b telephones, GAB ATMs (not shown), branches receiving 2c mail or 2d faxes, branch sales offices (not shown). ), DAB self-service cash dispensers (not shown), personal computers for home banking using an Internet 2f or Minitel 2g connection, interactive 2nd televisions, etc. These client interfaces 2 are connected by appropriate networks 3, individualized in 3-1 to 3-6, to client servers 4, individualized in 4-1 to 420 6. The servers 4 are developed specifically according to the

possibilités techniques de chaque interface 2 et de chaque réseau 3.  technical possibilities of each interface 2 and each network 3.

Chaque interface et son réseau associé sont encore appelés canal.  Each interface and its associated network are still called channels.

Le système informatique 1 comprend en outre une pluralité de serveurs 25 d'application 5 comprenant chacun au moins une application choisie 6, individualisée en 6a à 6e. Par exemple, les serveurs sont du type serveur  The computer system 1 further comprises a plurality of application servers 5 each comprising at least one selected application 6, individualized at 6a to 6e. For example, the servers are of the server type

bancaire 5a, serveur boursier 5b, assurance 5c, crédit 5d, ou autre 5e.  bank 5a, stock server 5b, insurance 5c, credit 5d, or other 5th.

Par ailleurs, un serveur 7 est intercalé entre les serveurs client 4 et les 30 serveurs d'application 5. Ce serveur de type MCMA (multi-canal et multi-  Moreover, a server 7 is interposed between the client servers 4 and the 30 application servers 5. This server of the MCMA type (multi-channel and multi-client)

application) est directement commun à l'ensemble des serveurs client 4 et est apte à leur fournir l'ensemble des services disponibles 6 sur les serveurs d'application 5 auxquels il est également connecté, selon un procédé de  application) is directly common to all the client servers 4 and is able to provide them with all the services available 6 on the application servers 5 to which it is also connected, according to a method of

communication choisi.chosen communication.

Il est à noter que de préférence, le serveur MCMA 7 ne sert pas uniquement à router des données des serveurs client vers les serveurs d'application et vice-versa mais également sert à opérer différents traitements, comme par exemple l'identification/authentification de l'utilisateur final et/ou du serveur 10 d'application, la gestion de mode dégradé (par exemple gestion de bases répliquées permettant de fournir des informations malgré l'indisponibilité des serveurs d'application concernés), le contrôle d'habilitation, l'audit des  It should be noted that, preferably, the MCMA server 7 is not only used to route data from the client servers to the application servers and vice versa but also serves to perform various processing, such as for example the identification / authentication of the end user and / or the application server 10, the degraded mode management (eg management of replicated databases to provide information despite the unavailability of the relevant application servers), the authorization check, the audit of

appels de service ou encore leur tarification,...  service calls or their pricing, ...

Chaque serveur client adapte l'appel émis par son canal correspondant, comme par exemple le serveur client WAP à partir d'un message émis par un téléphone mobile, sous une forme prédéterminée et l'envoi au serveur  Each client server adapts the call transmitted by its corresponding channel, such as for example the WAP client server from a message sent by a mobile phone, in a predetermined form and sending it to the server

MCMA 7 selon un format et protocole attendu par le serveur MCMA 7.  MCMA 7 according to a format and protocol expected by the MCMA server 7.

Le serveur MCMA propose plusieurs formats et protocoles afin de s'adapter aux contraintes technologiques d'un serveur client 4 et d'un canal 3 quelconque. Les formats proposés par le serveur MCMA 7 peuvent être fichier texte ou binaire " à plat ", fichier XML, sérialisation d'objet (java, C++, Visual Basic, etc.). Les protocoles proposés par le serveur MCMA 7 peuvent 25 être IP, HTTP, CORBA/IIOP, JRMP, DCOM, COM, COM+, etc.  The MCMA server offers several formats and protocols to adapt to the technological constraints of a client server 4 and any channel 3. The formats proposed by the MCMA 7 server can be text file or binary "flat", XML file, object serialization (java, C ++, Visual Basic, etc.). The protocols proposed by the MCMA server 7 can be IP, HTTP, CORBA / IIOP, JRMP, DCOM, COM, COM +, etc.

Selon l'invention, le procédé de communication entre les serveurs client 4 et les serveurs d'applications 5 du système informatique distribué 1 est articulé autour de la notion d'action. Ce procédé consiste plus particulièrement à 30 présenter chaque appel de service sous la forme d'une action.  According to the invention, the communication method between the client servers 4 and the application servers 5 of the distributed computer system 1 is articulated around the notion of action. This method consists more particularly of presenting each service call as an action.

Une action est une classe en langage de programmation orientée objet (Java, C++, etc.), possédant des attributs/champs d'entrée représentant les paramètres de l'appel de service et d'éventuels attributs/champs de sortie représentant le résultat du service destiné à être retourné audit serveur 5 client et une méthode apte à encapsuler l'appel à destination d'un ou plusieurs serveurs d'application cibles et/ou à prévoir d'éventuels traitements  An action is a class in object-oriented programming language (Java, C ++, etc.), having attributes / input fields representing the parameters of the service call and any attributes / output fields representing the result of the service intended to be returned to said client server 5 and a method able to encapsulate the call destined for one or more target application servers and / or to provide for possible treatments

assurés par le serveur MCMA.provided by the MCMA server.

Ainsi, selon l'invention, à chaque service correspond une action qui 10 encapsule l'appel à destination du ou des serveurs d'application cibles via le serveur MCMA 7 ou encore des traitements mis en oeuvre directement par le  Thus, according to the invention, each service has an action that encapsulates the call intended for the target application server (s) via the MCMA server 7 or else processing implemented directly by the server.

serveur MCMA.MCMA server.

Le serveur d'application 5 logeant le service cible 6 reçoit l'appel du service 15 cible, émis par le serveur MCMA, selon les formats et protocoles spécifiques du serveur d'application 5 et renvoie la réponse (résultat de service ou erreur) au serveur MCMA toujours selon ses formats et protocoles  The application server 5 housing the target service 6 receives the target service call, issued by the MCMA server, according to the specific formats and protocols of the application server 5 and returns the response (service result or error) to the target server. MCMA server always according to its formats and protocols

spécifiques du serveur d'application 5.  specific to the application server 5.

En référence à la figure 2, le procédé de communication comprend les étapes suivantes: - étape (i), instanciation Il s'agit de créer, par exemple par le serveur minitel 4-6, une instance de 25 classe (selon la terminologie de la programmation orientée objet) de type action qui correspond au service " solde du compte courant N " suite à une demande d'appel (request) émanant d'une interface cliente 2g, en l'occurrence d'un minitel utilisé par un usager lequel souhaite connaître le solde de son compte courant; il - étape (ii), le serveur minitel 4-6 valorise les attributs d'entrée de l'action en fonction des données fournies par l'usager et envoi l'action au serveur MCMA selon le protocole et le format de son choix parmi ceux proposés par ce dernier (" uneAction " est une instance (un objet, une variable) de la 5 classe (du type) " FxAction " (une FxAction est le nom technique qui désigne action générique); - étape (iii), le serveur MCMA 7 reçoit l'action et l'exécute en déroulant la méthode associée. Cette méthode associée a un comportement qui varie en 10 fonction des valeurs de tout ou partie des attributs d'entrées. C'est entre autre ici que peuvent être fournies des fonctionnalités supplémentaires tels que l'identification de l'usager, le contrôle d'habilitation, l'audit des appels de service, etc.; - étape (iv), la couche d'intégration que l'on décrira plus en détail ci après du serveur MCMA 7 est sollicitée par l'action "solde compte courant" pour qu'elle effectue l'appel de service cible correspondant sur le serveur d'application concerné (ici le serveur bancaire 5a) selon les formats et protocoles de communication spécifiques de ce dernier. 20 (entryPoint. invoke(uneAction) est une instruction en langage objet, en l'occurrence c'est l'instruction qui provoque le déroulement de la méthode associée à l'action quelconque " uneAction " dans le serveur MCMA); - étape (v), le serveur d'application exécute le service demandé décrit par 25 l'appel à savoir la lecture ou le calcul du solde du compte et retourne le résultat correspondant au serveur MCMA 7 selon les format et protocole de communication spécifiques du serveur d'application; - étape (vi), la couche d'intégration du serveur MCMA 7 restitue les données 30 résultats fournis par le serveur d'application à la méthode associée à l'action. Celle-ci valorise donc les attributs résultats de l'action, en fonction des données reçues par le serveur d'application 5a. C'est entre autre ici que peuvent être fournies des fonctionnalités supplémentaires tels que l'audit des réponses de service, la tarification, le mode dégradé (ex: en cas 5 d'erreur, lire le solde en base de données répliquées quotidiennement), etc.; - étape (vii), Lorsque la méthode associée à l'action est terminée, le serveur MCMA retourne l'action vers le minitel 2g via le serveur minitel 4-6; - étape (viii), le minitel reçoit et affiche le résultat En se reportant à la figure 3, la structure du serveur MCMA 7 va être plus  With reference to FIG. 2, the communication method comprises the following steps: step (i), instantiation It is a question of creating, for example by the minitel server 4-6, an instance of class (according to the terminology of object-oriented programming) of action type which corresponds to the service "balance of the current account N" following a request for a request (request) from a client interface 2g, in this case a minitel used by a user which wants to know the balance of his current account; it - step (ii), the minitel server 4-6 values the input attributes of the action according to the data provided by the user and sends the action to the MCMA server according to the protocol and the format of his choice among those proposed by the latter ("anAction" is an instance (an object, a variable) of the class (of the type) "FxAction" (an FxAction is the technical name which designates generic action); - step (iii), the The MCMA server 7 receives the action and executes it by unwinding the associated method, which method has a behavior that varies according to the values of all or some of the input attributes. additional functionalities such as the identification of the user, the authorization check, the audit of service calls, etc. - step (iv), the integration layer that will be described in greater detail hereinafter after the server MCMA 7 is requested by the action "current account balance" to make it perform the corresponding target service call on the application server concerned (here the bank server 5a) according to the specific communication formats and protocols of the latter. 20 (entryPoint. Invoke (anAction) is an instruction in object language, in this case it is the instruction that causes the method associated with any action "anAction" in the MCMA server) to proceed; step (v), the application server executes the requested service described by the call namely reading or calculating the account balance and returns the result corresponding to the MCMA server 7 according to the specific communication format and protocol of the application server; step (vi), the integration layer of the MCMA server 7 renders the results data provided by the application server to the method associated with the action. This therefore values the result attributes of the action, according to the data received by the application server 5a. It is here, among others, that additional functionalities can be provided such as the audit of service responses, pricing, degraded mode (eg in case of error, read the balance in database replicated daily), etc .; step (vii), When the method associated with the action is completed, the MCMA server returns the action to the minitel 2g via the minitel server 4-6; step (viii), the minitel receives and displays the result Referring to Figure 3, the structure of the MCMA server 7 will be more

particulièrement détaillée.particularly detailed.

De façon préférentielle, l'architecture logicielle du serveur MCMA 7 est notamment constituée de deux couches logicielles distinctes: la couche  Preferably, the software architecture of the MCMA 7 server consists in particular of two distinct software layers: the layer

usage 10 et la couche intégration 12.  use 10 and the integration layer 12.

Selon une définition de l'invention, la couche d'usage 10 est une couche 20 intermédiaire qui complète, simplifie et facilite l'utilisation des services fournis par les serveurs d'applications 5. C'est la couche d'usage 10 qui est utilisée comme interface pour accéder à la couche d'intégration 12 depuis  According to one definition of the invention, the usage layer 10 is an intermediate layer which completes, simplifies and facilitates the use of the services provided by the application servers 5. It is the usage layer 10 which is used as an interface to access the integration layer 12 since

les serveurs client 4.the client servers 4.

La couche d'usage 10 est constituée notamment de l'ensemble des actions  The usage layer 10 consists in particular of the set of actions

disponibles depuis le serveur MCMA (voir description ci-avant) et de classes  available from the MCMA server (see description above) and classes

de type " objet d'usage ".of type "object of use".

Un objet d'usage peut être considéré comme une vue d'une ou plusieurs 30 structures de données utilisées par les serveurs d'application 5. Cette vue est une représentation commune à toutes les structures de données équivalentes dans les serveurs d'applications concernées. Par exemple, l'objet d'usage " UsageCompte " pourra être utilisé pour représenter un compte de dépôt d'un serveur bancaire 5a, ou encore un compte titres du serveur bourse 5b. Le mécanisme d'héritage apporté par le concept de classe (programmation orientée objet) permet encore de renforcer la mise en commun des informations. Par exemple, les comptes de dépôt pourront être représentés 10 par des objets d'usage " UsageCompteDepôt " qui héritent des attributs (données membres) de l'objet d'usage " UsageCompte " et qui ne possèdent que les attributs supplémentaires spécifiques à un compte de dépôts par rapport à un compte abstrait et générique " UsageCompte ". Ce dernier pourra également être hérité par plusieurs autre type d'objet d'usage 15 (dit " fils ") tels que " UsageCompteEpargne ", " UsageCompteTitres ", etc. Ainsi une action représentant le service " liste des comptes d'un client " pourra fournir la liste de tous les types de comptes hébergés par tous les serveurs d'applications gérant des comptes. Une telle action possède un attribut de sortie de type " tableau de UsageCompte " qui contiendra, par 20 exemple en résultat pour un client, par polymorphisme (concept de la programmation orienté objet): un compte de dépôt, un compte d'épargne et  A usage object can be viewed as a view of one or more data structures used by the application servers 5. This view is a representation common to all equivalent data structures in the relevant application servers. For example, the usage object "UsageAccount" can be used to represent a deposit account of a bank server 5a, or a securities account of the stock exchange server 5b. The inheritance mechanism provided by the class concept (object-oriented programming) further enhances the sharing of information. For example, the deposit accounts could be represented by "UsageDateDotDuty" objects that inherit attributes (member data) from the "UsageAccount" usage object and that only have the additional attributes specific to an account. of deposits against an abstract account and generic "UsageAccount". The latter can also be inherited by several other types of object of use 15 (called "son") such as "UsageCompteEpargne", "UsageCompteTitres", etc. Thus an action representing the service "list of accounts of a client" can provide a list of all types of accounts hosted by all application servers managing accounts. Such an action has an output attribute of "UsageCountTable" which will contain, for example as a result for a client, by polymorphism (concept of object-oriented programming): a deposit account, a savings account and

un compte titres, chacun géré par des serveurs d'applications différents.  a securities account, each managed by different application servers.

Ainsi l'ensemble des objets d'usage facilite et simplifie la représentation des 25 structures de données qui sont par définition variables selon le serveur d'application. Les objets d'usage permettent la mutualisation des formats d'échanges entre les serveurs clients et le serveur MCMA quel que soit le  Thus the set of usage objects facilitates and simplifies the representation of the data structures which are by definition variable according to the application server. The objects of use allow the sharing of the exchange formats between the client servers and the MCMA server whatever the

serveur d'application concerné.application server concerned.

La couche d'usage 10 permet également de stabiliser les formats fournis aux serveurs client en cas de modification dans un serveur d'application 5, ou le remplacement de l'un d'eux par un nouveau serveur d'application. Par exemple, si l'on considère que le serveur bancaire 5a possède une structure 5 de donnée " solde de compte " qui agrège les soldes comptables, valeur et espèce d'un compte, et ces différents soldes sont donc représentés dans la classe " UsageSolde " afin d'être disponibles aux serveurs clients. Le remplacement du serveur bancaire 5a par un nouveau serveur d'application qui ne possède pas de solde espèce, n'entraînera pas de modification de 10 l'objet d'usage " UsageSolde " et donc ne nécessitera pas la modification des serveurs clients. L'information manquante sera soit renseignée à une  The usage layer 10 also makes it possible to stabilize the formats provided to the client servers in the event of modification in an application server 5, or the replacement of one of them by a new application server. For example, if we consider that the bank server 5a has a data structure "account balance" which aggregates the accounting balances, value and cash of an account, and these different balances are therefore represented in the class "UsageSolde "to be available to client servers. The replacement of the bank server 5a by a new application server which does not have a cash balance, will not result in a modification of the "UsageSold" usage object and therefore will not require the modification of the client servers. Missing information will either be filled out at a

valeur par défaut, soit calculée par le serveur MCMA.  default value, calculated by the MCMA server.

Il est à noter que si le nouveau serveur d'application bancaire possède de 15 nouvelles informations concernant le solde (ex: solde fin de mois précédent), on pourra enrichir l'objet d'usage " UsageSolde " d'un nouvel attribut. La couche d'usage 10, par ces apports en simplification et stabilisation des 20 formats d'échanges avec les serveurs client, facilite ainsi la prise en charge de modifications régulières dans les serveurs d'applications (remplacement,  It should be noted that if the new bank application server has 15 new information concerning the balance (ex: end balance of the previous month), we can enrich the "UsageSolde" usage object with a new attribute. The usage layer 10, by these contributions simplifying and stabilizing the 20 exchange formats with the client servers, thus facilitates the support of regular changes in the application servers (replacement,

dédoublement, évolutions).duplication, evolutions).

Les informations contenues par les classes de données d'usage proviennent 25 des serveurs d'application 5. Par exemple, la donnée solde comptable de  The information contained in the usage data classes comes from the application servers 5. For example, the accounting balance data of

l'objet d'usage compte provient du serveur bancaire 5a. Pour valoriser leurs attributs de sortie, les actions de la couche d'usage appellent la couche d'intégration 12 (et la couche de services supplémentaires 11 pour les fonctionnalités du serveur MCMA qui ne sont pas disponibles dans les 30 serveurs d'applications).  the object of use account comes from the bank server 5a. To value their output attributes, the usage layer actions call the integration layer 12 (and the supplementary services layer 11 for MCMA server features that are not available in the application servers).

Ainsi, ce n'est pas la couche d'usage 10 qui est en charge de la communication avec les serveurs d'applications 5 mais la couche  Thus, it is not the usage layer 10 which is in charge of the communication with the application servers 5 but the layer

d'intégration 12.integration 12.

La couche d'intégration 12 est compartimentée en modules, un module de routage 13 et un module d'intégration 14 pour chaque serveur d'application 5. Le module de routage 13 est le point d'entrée des actions de la couche 10 d'usage 10. Il est chargé de déterminer en fonction des données  The integration layer 12 is compartmentalized into modules, a routing module 13 and an integration module 14 for each application server 5. The routing module 13 is the entry point for the actions of the layer 10 of 10. It is responsible for determining according to the data

représentées par un objet d'usage (ex: type de compte, n0 du compte, n0 du client) le ou les serveurs d'applications concernés et donc le ou les module d'intégrations 14 à qui déléguer la communication. Pour chaque module d'intégration 14 concerné, le module de routage 13 fourni l'objet d'usage et 15 le service à appeler dans le serveur d'application.  represented by a usage object (ex: type of account, account n0, client n0) the application server or servers concerned and therefore the integration module or modules 14 to whom to delegate the communication. For each integration module 14 concerned, the routing module 13 provides the object of use and the service to be called in the application server.

Chaque module d'intégration 14 est chargé de la communication avec un moteur d'application spécifique selon les formats et protocoles attendus par ce serveur d'application. Il est également capable de convertir des structures 20 de données spécifiques provenant du serveur d'application en objet d'usage  Each integration module 14 is responsible for communication with a specific application engine according to the formats and protocols expected by this application server. It is also able to convert specific data structures from the application server into a purpose object.

et inversement.and vice versa.

Le travail effectué par chaque composant du serveur MCMA 7 va être illustré dans l'exemple suivant: consultation du compte X d'un client Y sur le 25 serveur d'application 5a.  The work done by each component of the MCMA server 7 will be illustrated in the following example: consulting the X account of a client Y on the application server 5a.

L'action " liste des soldes de tous les comptes d'un client " va d'abord rechercher, via un service dit de " CRM " ( acronyme de Customer Relation Management, c'est-à-dire Gestion de la Relation Client) de la couche de 30 service supplémentaire 11, la liste des numéros de comptes détenus dans la dans la base de données 15. Puis pour chaque numéro de compte, va demander à la couche d'intégration 12 le solde correspondant en lui fournissant un objet d'usage " UsageSolde " avec des soldes non renseignés. Le module de routage 13 va, en fonction du numéro de compte 5 et du type de compte, déterminer le module d'intégration 14 concerné et lui demander de faire l'appel du service cible adéquat en lui fournissant l'objet d'usage vide. Le module d'intégration 14 va appeler le service cible via les formats et protocoles attendus par le serveur d'application concerné, remplir l'objet d'usage avec les résultats fournis par le serveur d'application et 10 retourner l'objet d'usage ainsi renseigné au module du routage 13 qui le lui  The action "list of balances of all accounts of a customer" will first search through a service called "CRM" (acronym for Customer Relation Management, that is to say Customer Relationship Management) of the supplementary service layer 11, the list of the account numbers held in the database 15. Then for each account number, will ask the integration layer 12 the corresponding balance by providing an object d 'UsageSolde' use with unspecified balances. The routing module 13 will, depending on the account number 5 and the type of account, determine the integration module 14 concerned and ask him to make the appropriate target service call by providing the empty use object . The integration module 14 will call the target service via the formats and protocols expected by the application server concerned, fill the object of use with the results provided by the application server and return the object of use thus informed to the module of routing 13 which him

retournera à l'action demanderesse.  will return to the plaintiff action.

Pour transmettre les actions formant appel de service entre les différents serveurs du système informatique 1, on utilise des fichiers écrits de 15 préférence avec un langage de structuration encore appelé langage de balisage extensible, tel que le XML (acronyme anglo-saxon pour extensible  In order to transmit the service call actions between the different servers of the computer system 1, files preferably written with a structuring language also called extensible markup language, such as XML (expandable acronym) are used.

Markup Language).Markup Language).

Un document structuré est une collection d'ensembles d'informations 20 associés chacun à un type et des attributs, et composés entre eux selon des  A structured document is a collection of information sets each associated with a type and attributes, and composed between them according to

relations principalement hiérarchiques. Un tel document permet notamment de distinguer les différents sous-ensembles d'informations composant le document. Par opposition, dans un document dit linéaire, les informations de contenu du document sont mélangées aux informations de présentation et 25 de typage. Un document structuré inclut des repères de séparation des différents  primarily hierarchical relationships. Such a document makes it possible in particular to distinguish the different subsets of information composing the document. In contrast, in a so-called linear document, the content information of the document is mixed with the presentation and typing information. A structured document includes benchmarks for separating different

ensembles d'informations du document. Dans le cas du format XML, ces repères appelées " balises " sont de la forme " <b> " (balise ouvrante) et " </b> " (balise fermante), le premier repère indiquant le début d'un  sets of information from the document. In the case of the XML format, these markers called "tags" are of the form "<b>" (opening tag) and "</ b>" (closing tag), the first mark indicating the beginning of a

ensemble d'informations nommé " b " et le second la fin de cet ensemble.  set of information named "b" and the second the end of this set.

Contrairement au langage HTML (HyperText Markup Language), le langage 5 XML n'est pas sémantiquement figé. Il permet de définir ses propres balises, ce qui le rend adaptable et donc à même de stocker tout types d'informations. Un document structuré est associé à ce que l'on appelle un schéma de 10 structure ou DTD (Document Type Definition) définissant sous la forme de  Unlike HTML (HyperText Markup Language), the XML language is not semantically fixed. It allows to define its own tags, which makes it adaptable and therefore able to store all types of information. A structured document is associated with what is called a document type definition (DTD) structure defining

règles la structure et le type d'information de chaque ensemble d'informations du document. Un schéma est constitué de groupes imbriqués de structures d'ensembles d'informations, ces groupes pouvant être des séquences ordonnées, des groupes d'éléments alternatifs ou des groupes 15 d'éléments nécessaires, ordonnés ou non ordonnés.  rules the structure and type of information of each set of information in the document. A schema consists of nested groups of information set structures, which groups can be ordered sequences, groups of alternative elements, or groups of necessary, ordered, or unordered elements.

Les documents XML reçus par les serveurs du système informatique 1 sont traités par une interface de programmation d'application correspondante (API, Application Programming Interface) écrite en langage orienté objet et 20 servant d'analyseur XML (ou XML parser) pour analyser et décoder les  The XML documents received by the servers of the computer system 1 are processed by a corresponding Application Programming Interface (API) written in an object-oriented language and serving as an XML parser (or XML parser) for analyzing and decoding. the

balises de ces documents.tags of these documents.

Ainsi, à chaque action (représentant un service d'usage et les données d'usage utilisées le cas échéant) est associée une description écrite en 25 langage XML.  Thus, for each action (representing a usage service and the usage data used where appropriate) is associated a description written in XML.

Un tel langage de balisage permet de fournir des formats de données sans se restreindre à une plate-forme technique quelle soit matérielle ou logicielle.  Such a markup language makes it possible to provide data formats without being limited to a technical platform that is either hardware or software.

De plus, la représentation sous forme de texte écrit en langage XML de chaque action permet de créer simplement, via un simple éditeur de texte,  In addition, the representation in the form of text written in XML language of each action makes it possible to simply create, via a simple text editor,

un fichier XML décrivant une ou plusieurs actions d'appel de services.  an XML file describing one or more service call actions.

Le résultat de ses actions, également écrit en XML sera également facile à interpréter depuis un simple éditeur de texte. Il est intéressant de s'appuyer sur un langage de balisage extensible du type XML dans le cadre de fonctions d'import/export de données en association 10 avec les demandes d'appel (respectivement attributs d'entrée et attributs de sortie). La mise en oeuvre d'un tel langage de type XML se fait donc en associant une balise XML à chaque action, ces balises contenant elles même une 15 balise pour chaque attribut d'entrée et pour chaque attribut de sortie des actions. Très avantageusement, les attributs d'entrée des actions qui correspondent à des traitements d'écriture, création ou modification de données, sont 20 transférés (injectées/importées) dans les serveurs d'application via le serveur MCMA sous la forme d'un fichier texte écrit en langage de balisage  The result of his actions, also written in XML will also be easy to interpret from a simple text editor. It is interesting to rely on an XML-type extensible markup language in the context of data import / export functions in association with the call requests (respectively input attributes and output attributes). The implementation of such an XML-type language is therefore done by associating an XML tag with each action, these tags themselves containing a tag for each input attribute and for each output attribute of the actions. Very advantageously, the input attributes of the actions that correspond to write, create or modify data processing operations are transferred (injected / imported) into the application servers via the MCMA server in the form of a file. text written in markup language

extensible du type XML ou analogue.extensible XML or similar type.

Ainsi les migrations de données vers un système informatique utilisant un 25 procédé de communication par action et par XML nécessiterons seulement la réécriture de programme d'extraction des données du système source sous forme de fichier d'extraction XML correspondant à des actions du  Thus migrations of data to a computer system using an action communication method and XML will only require rewriting of the source system's data retrieval program as an XML retrieval file corresponding to actions of the system.

serveur MCMA.MCMA server.

De plus, toute création de nouvelle action qui correspond à un traitement d'écriture sera une solution d'importation de données supplémentaire dans le cadre d'une prochaine migration. Par exemple la création d'une nouvelle action, suite à un nouveau besoin d'un serveur client WEB, destiné à la 5 création d'adresse, facilitera les futures importations des adresses email d'un système informatique source ou permettra de compléter le flux de données provenant d'une société partenaire fournissant des données de  In addition, any new action creation that corresponds to a write process will be an additional data import solution for a future migration. For example, the creation of a new action, following a new need for a WEB client server, for the creation of an address, will facilitate future imports of the email addresses of a source computer system or will make it possible to complete the flow. data from a partner company supplying data from

personnes à prospecter.people to prospect.

De même, les attributs de sortie des actions qui correspondent à des traitements de lecture, recherche ou consultation de données sont transférés (extraites/exportées) des serveurs d'application correspondants via le serveur MCMA sous la forme d'un fichier texte écrit en langage de balisage  Likewise, the output attributes of the actions that correspond to read, search or data lookup processes are transferred (extracted / exported) from the corresponding application servers via the MCMA server in the form of a text file written in language markup

extensible du type XML ou analogue.extensible XML or similar type.

Les avantages fournis par les actions descriptibles en XML sont donc également valables dans le cadre d'export de données, lors du rachat de la banque ou de la mise en place de flux de données périodiques avec le  The benefits provided by actions that can be described in XML are therefore also valid in the context of data export, when the bank is bought or when periodic data flows are set up with the bank.

système informatique d'une société partenaire (B2B).  computer system of a partner company (B2B).

Lorsque que l'action courante (demande d'appel contenant des nouvelles données à écrire dans le service cible demandé) correspond à un service d'écriture dans le système (création, modification, etc.), l'opération est alors dite " import multi-moteur ", car les données dans le fichier XML fournies en 25 entrée sont injectées dans le système via le serveur intermédiaire MCMA 7.  When the current action (call request containing new data to be written in the requested target service) corresponds to a write service in the system (creation, modification, etc.), the operation is then called "import". multi-engine "because the data in the input XML file is fed into the system via the MCMA intermediate server 7.

Inversement, lorsque que l'action utilisée correspond à un service de lecture dans le système (recherche, consultation, etc.), l'opération est alors dite " export multi-moteur ", car le fichier XML résultat contient une extraction 30 des données du système via le serveur intermédiaire MCMA 7.  Conversely, when the action used corresponds to a read service in the system (search, consultation, etc.), the operation is then called "multi-engine export" because the result XML file contains a data extraction 30 from the system via the MCMA 7 Intermediate Server.

Un tel importlexport de données en XML a l'avantage de simplifier le traitement des actions dans un environnement informatique à plusieurs  Such importlexport of data in XML has the advantage of simplifying the processing of the actions in a multi-computer environment

serveurs client et plusieurs serveurs de services, via un serveur MCMA 7.  client servers and multiple service servers via an MCMA 7 server.

Pour illustrer cet aspect de l'invention, considérons l'exemple suivant d'action écrite en langage XML. Message décrivant l'appel de l'action <MessageXML version="V5R2" sens="appel"> 10 <ListeActions type="array"> <Action_ListeSoldesTousCom ptes array="ListeActions"> <numeroClient> 5010328</numeroClient> <codeConfidentielCrypte> sYO3u</codeConfidentielCrypte> <lIireDetailContrat> FALSE</IireDetailContrat> 15 </Action_ListeSoldesTousComptes> <IListeActions> </MessageXML> Ce message XML d'appel contient une seule action, il pourrait cependant en 20 contenir plusieurs en une seule fois (utile dans le cas de migration par exemple). L'action appelée est " Action_ListeSoldesTousComptes " pour le client numéro " 5010328 " qui s'est identifié (présence du code confidentiel crypté). La fonction d'identification n'est pas fournie par l'action " Action_ListeSoldesTousComptes ", mais par l'action  To illustrate this aspect of the invention, consider the following example of action written in XML. Message describing the call of the action <MessageXML version = "V5R2" meaning = "call"> 10 <ActionList type = "array"> <ActionListSalesAllCom ptes array = "ActionList"> <clientNumber> 5010328 </ clientNumber> <trustConfigCrypt > sYO3u </ codeConfidentielCrypte> <lIireDetailContrat> FALSE </ IireDetailContract> 15 </ Action_ListeSoldesAllAccount> <IListActions> </ MessageXML> This call XML message contains only one action, but it could contain several actions at one time (useful in the case of migration for example). The action called is "Action_ListSoldAllAccount" for the customer number "5010328" who has identified himself (presence of the encrypted PIN). The function of identification is not provided by the action "Action_ListSoldesAllCounts", but by the action

" ActionIdentificationClient " dont elle hérite.  "ActionIdentificationClient" it inherits.

L'action possède également une option " lire détail du contrat correspondant  The stock also has an option "read detail of the corresponding contract

aux compte demandés " qui n'est pas ici demandée.  to the requested account "which is not requested here.

Message décrivant le résultat de l'action: <MessageXML version="V5R2" sens="resultat"> <ListeActions type="array"> <ActionListeSoldesTousComptes array="ListeActions"> <numeroClient> 5010328</numeroClient> <codeConfidentielCrypte> sYO3u</codeConfidentielCrypte> <designationClient>M Jean-Paul Carmona</designationClient> <lireDetailContrat>FALS E</l ireDetailContrat> <banqueKO></banqueKO> <titresKO></titresKO> <cumulValorisation>0. 00</cumulValorisation> <deviseCumulValorisation> 2</deviseCumulValorisation> 10 <listeSoldes type="array"> <UsageSolde array="listeSoldes"> <cleRIBCompte/> <codeAnnonce>0</codeAn nonce> <codeGuichet/> <codeTypeCompte>2</codeTypeCompte> <numeroCompte>01 501032801 </numeroCompte> <numeroContratCompte>01501032801 </n umeroContratCompte> <messageAnomalie/> <cessions>0.00</cessions> <cumulValue>0.00</cumulValue> <soldeComptable>0.00</soldeComptable> <soldeComptableOrigine>0.00</soldeComptableOrigine> <soldeEspece>0. 00</soldeEspece> <soldeValeur>0.00</soldeValeur> <dateSoldeDepot>19-Aug2002 13:00:00</dateSoldeDepot> <deviseSoldeDepot>2 </deviseSoldeDepot> <deviseSoldeDepotOrigine>0</deviseSoldeDepotOrigine> <deviseSoldeTitres> 0</deviseSoldeTitres> <portefeuillelnvesti>0.00</portefeuillelinvesti> 30 <revenus>0.00</revenus> <soldeFinMois moins1 >0.00</soldeFinMois moins1 > <soldeFinMoismoins2>0.00</soldeFinMoismoins2> <soldeFinMoismoins3>0. 00</soldeFinMoismoins3> <soldeValeurFinMois_moins1 >0. 00</soldeValeurFinMois_moins1 > 35 <soldeValeurFinMois_moins2>0. 00</soldeValeurFinMois_moins2> <soldeValeurFinMois_moins3>0. 00</soldeValeurFinMois moins3> <valorisationGlobale>0. 00</valorisationGlobale> <valorisationTitres>O.00</valorisationTitres> <valorisationTitresBloques>O.00</valorisationTitresBloques> <valueLatente> O.0O</valueLatente> 5 <valueRealise>O.00</valueRealise> <valueRealiseRM>O. 00</valueRealiseRM> <liquidite type="array"/> </UsageSolde> </listeSoldes> </Action_ListeSoldesTousComptes> </ListeActions> </MessageXML> Ci-dessus le message XML de réponse contient l'action demandée 15 précédemment avec les attributs résultats renseigné. Ici l'attribut de sortie ne donne pour résultat qu'un seul objet d'usage " UsageSolde " (car le client  Message describing the result of the action: <MessageXML version = "V5R2" meaning = "result"> <ActionList type = "array"> <ActionListSalesAllAccount array = "ActionList"> <clientNumber> 5010328 </ clientNumber> <trustCryptKey> sYO3u </ codeConfidentialCrypt> <designationClient> M John Paul Carmona </ nameClient> <readContractDetail> FALS E </ ContractLease> <KOBack> </KOBack> <KOtacks> </KOtacks> <WrapUpValue> 0. 00 </ accorValue> <recalculationValue> 2 </ recalendCalculator> 10 <solverList type = "array"> <UsageSolder array = "listSolder"> <recCountAccount /> <advertCode> 0 </ yearCode nc> <forumCode /> <accountTypeCode> 2 </ accountTypeCode> <accountNumber> 01 501032801 </ accountNumber> <accountControlNumber> 01501032801 </ n accountControlUn> <defectMessage /> <assignments> 0.00 </ assignments> <cumulValue> 0.00 </ accumValue> <balanceSave> 0.00 </ balanceAccountable > <balanceCountableOrigin> 0.00 </ balanceCountableOrigin> <SpecSet> 0. 00 </ balanceSpec> <balanceValue> 0.00 </ balanceValue> <dateSolderDepot> 19-Aug2002 13:00:00 </ dateSolderDepot> <billDateOut> 2 </ billOutPlot> <signOutputOpticDom> 0 </ targetOpbitOutput> <billOurDemory> 0 </ currencySolderTitles> <netfile> 0.00 </ netfileillinvesti> 30 <revenue> 0.00 </ revenue> <balanceMore minus1> 0.00 </ balanceFinMinutes1> <balanceFinMonth2> 0.00 </ balanceFinOver2> <balanceFinOver3> 0. 00 </ balanceFinOver3> <balanceValueEndMinutes1 <0. 00 </ balanceValueEndMonths <1> 35 <balanceValueEndMinutes <2> 0. 00 </ balanceValueEndMonths <2> <balanceValueEndMinutes <3> 0. 00 </ balanceValueEnd less3> <globalValue> 0. 00 </ globalValuation> <valuationTitles> O.00 </ valuationTitle> <valuationTitleBlock> O.00 </ valuationTitleBlock> <valueLatente> O.0O </ valueLatente> 5 <valueRealise> O.00 </ valueRealise> <valueRealiseRM> O . 00 </ valueRealiseRM> <liquidite type = "array" /> </ UsageSolid> </ listSoldes> </ Action_ListSoldAllAccount> </ ActionList> </ MessageXML> Above the response XML message contains the previously requested action with the attributes results filled. Here the output attribute results in only one usage object "UsageSold" (because the client

concerné ne possède qu'un seul compte).  concerned has only one account).

Les attributs dans l'objet " UsageSolde " représentent des soldes 20 concernant des comptes de dépôt (solde comptable, valeur, etc.) ou titres (portefeuille Investi, plus value latente, etc.) sont tous vides car le compte ne possède pas d'argent. Des informations concernant le compte concerné sont  The attributes in the "UsageSold" object represent balances 20 relating to deposit accounts (balance, value, etc.) or securities (invested portfolio, unrealized gain, etc.) are all empty because the account does not have 'money. Information concerning the account concerned is

fournies (type, numéro).provided (type, number).

Les attributs résultat utilisés dans le cadre du mode dégradé (balises " banqueKO ", " titresKO ") sont vides, indiquant que les serveurs d'applications concernés (potentiellement de type banque ou titres) sont opérationnels (sinon, un message d'erreur aurais été renseigné ici, I'action pouvant dans ce cas, en fonction du type de compte, effectuer la recherche 30 de solde dans une base de données de secours via la couche de service  The result attributes used in the context of the degraded mode (tags "bankKO", "titlesKO") are empty, indicating that the concerned application servers (potentially of type bank or titles) are operational (otherwise, an error message would have Here, the action can, depending on the type of account, carry out the search for a balance in a backup database via the service layer.

supplémentaires 11 du serveur MCMA).  additional 11 of the MCMA server).

Une balise " messageAnomalie " est également présente au niveau de l'objet " UsageSolde " pour décrire le cas échant le problème spécifique à  A tag "messageAnomalie" is also present at the object "UsageSolde" to describe the case specific problem to

un compte.an account.

L'attribut de sortie " cumulValorisation " représente le cumul des soldes  The output attribute "cumulEvaluation" represents the cumulative balances

(comptables pour les comptes de dépôt ou d'épargne et valorisation titres pour les comptes titres) de tous les comptes du client. C'est une fonctionnalité supplémentaires fournie par l'action car chaque serveur d'application ne connaît pas les positions des comptes gérés par les autres 10 serveurs.  (accounting for deposit or savings accounts and securities valuation for securities accounts) of all customer accounts. This is an additional feature provided by the action because each application server does not know the positions of the accounts managed by the other 10 servers.

Bien évidemment, les modes de réalisation illustrés n'ont été donnés qu'à titre d'exemples et ne sont absolument pas limitatifs de l'ensemble des  Of course, the illustrated embodiments have been given only by way of examples and are not absolutely limiting of all the

solutions pouvant être mises en oeuvre grâce à la présente invention.  solutions that can be implemented by virtue of the present invention.

Claims (10)

REVENDICATIONS 1. Procédé permettant de faire communiquer à l'intérieur d'un système 5 informatique (1) de type distribué, une pluralité de serveurs client (4) possédant chacun des moyens logiciels et matériels spécifiques avec une pluralité de serveurs d'applications (5) possédant chacun des moyens logiciels et matériels spécifiques et comprenant chacun au moins une application choisie (6), les serveurs clients (4) étant directement connectés à 10 un unique serveur MCMA (7) lequel est à son tour directement connecté à l'ensemble des serveurs d'applications (5), de sorte que tout appel de service d'un serveur client à destination d'un serveur d'application donné, est d'abord adressé par ledit serveur client au serveur MCMA (7) à charge de ce dernier de le router au serveur d'application (5) concerné et de faire 15 remonter en retour d'éventuelles informations du serveur d'application (5) vers le serveur client (4), caractérisé en ce que lesdits serveurs clients (4) présentent les appels de service sous la forme d'actions, ces actions étant des classes en langage de programmation orientée objet qui possèdent une structure de données et une méthode apte à encapsuler l'appel à destination 20 d'un ou plusieurs serveurs d'applications cibles (5) et/ou à prévoir  A method for communicating within a distributed type computer system (1) a plurality of client servers (4) each having specific software and hardware means with a plurality of application servers (5). ) each possessing specific software and hardware means and each comprising at least one chosen application (6), the client servers (4) being directly connected to a single MCMA server (7) which is in turn directly connected to the set application servers (5), so that any service call from a client server to a given application server is first addressed by said client server to the MCMA server (7) with the latter to route it to the application server (5) concerned and to return any information from the application server (5) to the client server (4), characterized in that said client servers (4) ) presen Initiate service calls in the form of actions, which actions are object-oriented programming language classes that have a data structure and method capable of encapsulating the call to one or more application servers. targets (5) and / or to be d'éventuels traitements assurés par le serveur MCMA (7).  possible processing by the MCMA server (7). 2. Procédé selon la revendication 1, caractérisé en ce que lesdits serveurs d'applications (5) utilisent une couche logicielle d'intégration et que les 25 serveurs clients (4) utilisent une couche logicielle d'usage (10) déduite de ladite couche d'intégration (12) et en ce que la structure de données d'une  2. Method according to claim 1, characterized in that said application servers (5) use an integration software layer and that the client servers (4) use a usage software layer (10) deduced from said layer (12) and that the data structure of a action formant appel de service coopère avec ladite couche d'usage (10).  service call action cooperates with said usage layer (10). 3. Procédé selon la revendication 1 ou la revendication 2, caractérisé en ce que l'action formant appel comprend un identifiant correspondant à l'identifiant du service d'application cible (5), des attributs d'entrée représentant les paramètres de l'appel de service et d'éventuels attributs de 5 sortie représentant le résultat du service destiné à être retourné audit serveur client (4).  3. Method according to claim 1 or claim 2, characterized in that the calling action comprises an identifier corresponding to the identifier of the target application service (5), input attributes representing the parameters of the service call and any output attributes representing the result of the service to be returned to said client server (4). 4. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que chaque action formant appel de service est transférée 10 entre serveurs (4 et 5) sous la forme d'un document textuel structuré écrit en  4. A method according to any one of the preceding claims, characterized in that each service call action is transferred between servers (4 and 5) in the form of a structured text document written in langage de balisage extensible du type XML ou analogue.  Extensible markup language of the XML type or the like. 5. Procédé selon la revendication 3 et la revendication 4, caractérisé en ce que les attributs d'entrée correspondant à un service écriture du type 15 création ou modification sont importés dans les serveurs d'applications correspondants (5) au format d'un fichier XML et ce, via le serveur MCMA (7).  5. Method according to claim 3 and claim 4, characterized in that the input attributes corresponding to a write service of the type 15 creation or modification are imported into the corresponding application servers (5) in the format of a file. XML via the MCMA server (7). 6. Procédé selon la revendication 3 et la revendication 4, caractérisé en ce 20 que les attributs de sortie correspondant à un service lecture du type recherche ou consultation sont exportés des serveurs d'applications correspondants (5) au format d'un fichier XML et ce, via le serveur MCMA (7).6. Method according to claim 3 and claim 4, characterized in that the output attributes corresponding to a read service of the search or consultation type are exported from the corresponding application servers (5) to the format of an XML file and this, via the MCMA server (7). 7. Procédé selon l'une quelconque des revendications précédentes,  7. Method according to any one of the preceding claims, caractérisé en ce que le système informatique (1) est du type à offrir des  characterized in that the computer system (1) is of the type to provide services financiers.financial services. 8. Procédé selon la revendication 7, caractérisé en ce que les serveurs clients (4) coopèrent avec des interfaces clientes (2) constituées notamment par des téléphones numériques, des guichets automatiques, des succursales, des bureaux de vente de succursale, des terminaux de vente 5 en libre-service, des ordinateurs personnels pour banque à domicile, des télévisions interactives.  8. Method according to claim 7, characterized in that the client servers (4) cooperate with client interfaces (2) constituted in particular by digital telephones, automated teller machines, branches, branch sales offices, terminal terminals, sale 5 self-service, personal computers for home banking, interactive TVs. 9. Procédé selon la revendication 7, caractérisé en ce que les serveurs d'applications (5) appartiennent au groupe formé par des gestionnaires de 10 bases de données clients, des centres téléphoniques financiers, des bases  9. Method according to claim 7, characterized in that the application servers (5) belong to the group formed by managers of 10 customer databases, financial telephone centers, databases. de données financières externes, des applications de type crédit, dépôtépargne, titres, assurance, et finance.  external financial data, credit, deposit savings, securities, insurance, and finance applications. 10.Dispositif de communication pour la mise en òuvre du procédé selon 15 l'une quelconque des revendications 1 à 9, et apte à faire communiquer à  10. Communication device for implementing the method according to any one of claims 1 to 9, and able to communicate to the l'intérieur d'un système informatique (1) de type distribué, une pluralité de serveurs client (4) possédant chacun des moyens logiciels et matériels spécifiques avec une pluralité de serveurs d'application (5) possédant chacun des moyens logiciels et matériels spécifiques et comprenant chacun 20 au moins une application choisie (6), les serveurs client (4) étant directement connectés à un unique serveur MCMA (7) lequel est à son tour directement connecté à l'ensemble des serveurs d'application (5), de sorte que tout appel de service d'un serveur client à destination d'un serveur d'application donné, est d'abord adressé par ledit serveur client au serveur MCMA (7) à 25 charge de ce dernier de le router au serveur d'application concerné et de faire remonter en retour d'éventuelles informations du serveur d'application (5) vers le serveur client (4), caractérisé en ce que lesdits serveurs client (4) sont aptes à présenter les appels de service sous la forme d'action, ces actions étant des classes en langage de programmation orientée objet qui 30 possèdent une structure de données et une méthode apte à encapsuler  within a distributed type computer system (1), a plurality of client servers (4) each having specific hardware and software means with a plurality of application servers (5) each having specific hardware and software means and each comprising at least one selected application (6), the client servers (4) being directly connected to a single MCMA server (7) which is in turn directly connected to all the application servers (5), so that any service call from a client server to a given application server is first addressed by said client server to the MCMA server (7) in charge of the latter to route it to the server. concerned application and to return back any information from the application server (5) to the client server (4), characterized in that said client servers (4) are able to present the service calls in the form ac these actions being object-oriented programming language classes which have a data structure and a method capable of encapsulating l'appel à destination d'un ou plusieurs serveurs d'application cibles (5) et/ou à prévoir d'éventuels traitements assurés par le serveur MCMA (7).  the call to one or more target application servers (5) and / or to provide for possible processing provided by the MCMA server (7).
FR0213393A 2002-10-25 2002-10-25 METHOD FOR COMMUNICATION BETWEEN SERVERS AND DEVICE FOR IMPLEMENTING SAID METHOD Pending FR2846498A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FR0213393A FR2846498A1 (en) 2002-10-25 2002-10-25 METHOD FOR COMMUNICATION BETWEEN SERVERS AND DEVICE FOR IMPLEMENTING SAID METHOD
AU2003288272A AU2003288272A1 (en) 2002-10-25 2003-10-16 Method for communication between servers and device therefor
PCT/EP2003/050726 WO2004039039A1 (en) 2002-10-25 2003-10-16 Method for communication between servers and device therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0213393A FR2846498A1 (en) 2002-10-25 2002-10-25 METHOD FOR COMMUNICATION BETWEEN SERVERS AND DEVICE FOR IMPLEMENTING SAID METHOD

Publications (1)

Publication Number Publication Date
FR2846498A1 true FR2846498A1 (en) 2004-04-30

Family

ID=32088288

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0213393A Pending FR2846498A1 (en) 2002-10-25 2002-10-25 METHOD FOR COMMUNICATION BETWEEN SERVERS AND DEVICE FOR IMPLEMENTING SAID METHOD

Country Status (3)

Country Link
AU (1) AU2003288272A1 (en)
FR (1) FR2846498A1 (en)
WO (1) WO2004039039A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020038340A1 (en) * 2000-08-14 2002-03-28 I2 Technologies Us, Inc. Network application program interface facilitating communication in a distributed network environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020038340A1 (en) * 2000-08-14 2002-03-28 I2 Technologies Us, Inc. Network application program interface facilitating communication in a distributed network environment

Also Published As

Publication number Publication date
WO2004039039A1 (en) 2004-05-06
AU2003288272A1 (en) 2004-05-13

Similar Documents

Publication Publication Date Title
US9922345B2 (en) Increased visibility during order management in a network-based supply chain environment
US7716077B1 (en) Scheduling and planning maintenance and service in a network-based supply chain environment
US6606744B1 (en) Providing collaborative installation management in a network-based supply chain environment
US7130807B1 (en) Technology sharing during demand and supply planning in a network-based supply chain environment
US8032409B1 (en) Enhanced visibility during installation management in a network-based supply chain environment
Hilley Cloud computing: A taxonomy of platform and infrastructure-level offerings
KR100368353B1 (en) Kiosk and server connected to computer network
Hansen et al. Data integration using web services
US20140040044A1 (en) Personalized Interactive Network with Knowledge Management System
EP1261931A2 (en) Electronic bill presentment and payment systems and processes
WO2001039029A2 (en) Collaborative capacity planning and reverse inventory management during demand and supply planning in a network-based supply chain environment and method thereof
Cetin et al. Legacy migration to service-oriented computing with mashups
EP1248999A2 (en) Technique for facilitating customer transactions over a computer network using customized information from a backend computing system
WO2001039086A2 (en) Technology sharing during asset management and asset tracking in a network-based supply chain environment and method thereof
WO2001039082A2 (en) Scheduling and planning before and proactive management during maintenance and service in a network-based supply chain environment
EP1244974A1 (en) Method for affording a market space interface between a plurality of manufacturers and service providers and installation management via a market space interface
WO1999003243A1 (en) System and method for managing transactions between service suppliers and customers on a communication network
Eriksson et al. MarketSpace’96-An Open Agent-Based Market Infrastructure
Pintado Gluons: a support for software component cooperation
FR2848759A1 (en) Client and application server communicating method for e.g. financier computer system, involves converting call responses written in client or application format into format written in multi-channel multi-application server format by string
FR2846498A1 (en) METHOD FOR COMMUNICATION BETWEEN SERVERS AND DEVICE FOR IMPLEMENTING SAID METHOD
EP1275052A2 (en) Network and life cycle asset management in an e-commerce environment and method thereof
WO2004057825A2 (en) Method for communication between servers with data format conversion and device therefor
WO2006041754A2 (en) System and method for increasing pay-per-download revenues
FR2842927A1 (en) METHOD OF LOYALIZING THROUGH THE AWARD OF AN INDIVIDUAL IN COMPENSATION FOR AN ACTION PROVIDING AN ADVANTAGE TO A COMPANY