FR2806493A1 - METHOD FOR GRAPHIC PROGRAMMING - Google Patents
METHOD FOR GRAPHIC PROGRAMMING Download PDFInfo
- Publication number
- FR2806493A1 FR2806493A1 FR0003263A FR0003263A FR2806493A1 FR 2806493 A1 FR2806493 A1 FR 2806493A1 FR 0003263 A FR0003263 A FR 0003263A FR 0003263 A FR0003263 A FR 0003263A FR 2806493 A1 FR2806493 A1 FR 2806493A1
- Authority
- FR
- France
- Prior art keywords
- module
- client
- server
- computer
- graphical programming
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Procédé pour la programmation graphique consistant à mémoriser, pendant la phase d'exécution, dans au moins une mémoire d'un serveur et dans la mémoire d'un ou de plusieurs client des objets informatiques autonomes comprenant chacun des interfaces d'entrée et des interfaces de sortie pour communiquer entre eux, la liaison entre les interfaces d'entrée et de sortie étant établie par un module informatique générant les liaisons à partir d'une saisie, certains objets au moins étant constitués par un module informatique autonome constitué de deux composantes, chacune desdites composantes étant indivisibles et aptes à échanger des informations formées par des données numériques avec la composante complémentaire, l'une desdites composantes étant chargée dans la mémoire vive du serveur et l'autre desdites composantes étant chargée dans la mémoire vive du client, et en ce qu'un module est dépourvu de moyens pour accéder à un autre module.Method for graphic programming consisting in storing, during the execution phase, in at least one memory of a server and in the memory of one or more clients, autonomous computer objects each comprising input interfaces and interfaces output to communicate with each other, the link between the input and output interfaces being established by a computer module generating the links from an entry, at least some objects being constituted by an autonomous computer module made up of two components, each of said components being indivisible and capable of exchanging information formed by digital data with the complementary component, one of said components being loaded into the RAM of the server and the other of said components being loaded into the RAM of the client, and in that a module is devoid of means for accessing another module.
Description
ii
PROCEDE POUR LA PROGRAMMATION GRAPHIQUE METHOD FOR GRAPHIC PROGRAMMING
La présente invention concerne le domaine des architectures informatiques, et en particulier un procédé pour le développement d'applications destiné à un fonctionnement en The present invention relates to the field of computer architectures, and in particular a method for the development of applications intended for operation in
réseau, par exemple sur le réseau Internet. network, for example on the Internet.
L'invention se situe dans le domaine de la programmation graphique par composants, permettant à des développeurs d'utiliser des objets informatiques autonomes, et de gérer leurs interactions à l'aide d'outils de développement mettant en oeuvre une interface graphique permettant d'automatiser la création des procédures et des The invention lies in the field of component graphics programming, allowing developers to use autonomous computer objects, and to manage their interactions using development tools implementing a graphical interface allowing automate the creation of procedures and
fichiers de communication inter-objets. inter-object communication files.
Un certain nombre de techniques proposent aujourd'hui un concept de programmation graphique à base de modules indépendants: - on dispose d'un certain nombre de briques (ou modules) qui, comme un circuit intégré, présentent des entrées et des sorties nommées - chaque module n'a aucune connaissance des autres - le développement d'une application consiste à assembler un nombre quelconque de modules en reliant des sorties à des entrées ce principe s'accorde bien avec une représentation graphique, on trouve donc des outils qui permettent à l'utilisateur de placer des modules sur une " feuille ", puis de tracer des flèches entre ces modules, d'une sortie vers une entrée. De plus, certaines technologies présentent un concept de distribution et permettent donc de répartir les modules sur un ensemble de machines. Dans ce cas, le module A certain number of techniques today propose a concept of graphic programming based on independent modules: - we have a certain number of bricks (or modules) which, like an integrated circuit, present named inputs and outputs - each module has no knowledge of others - the development of an application consists of assembling any number of modules by connecting outputs to inputs this principle goes well with a graphical representation, so there are tools that allow the The user places modules on a "sheet", then draw arrows between these modules, from an exit to an entry. In addition, certain technologies present a distribution concept and therefore make it possible to distribute the modules over a set of machines. In this case, the module
reste indivisible et est placé entièrement sur une machine. remains indivisible and is placed entirely on a machine.
Le but de l'invention est d'étendre ces techniques à des sites Internet dans lesquels les visiteurs vont pouvoir interagir. Dans un tel site, le traitement est réparti entre The object of the invention is to extend these techniques to websites in which visitors will be able to interact. In such a site, the processing is distributed between
le serveur et les clients.the server and the clients.
Le serveur est le point de connexion du site: The server is the connection point of the site:
c'est le point auquel on se connecte pour entrer dans le site. this is the point to which we connect to enter the site.
Il est sous le contrôle du propriétaire du site. Les clients sont les utilisateurs qui se connectent à distance sur le site: leur machine n'est pas sous le contrôle du propriétaire du site, et cependant elle va participer au fonctionnement du It is under the control of the site owner. Customers are users who connect remotely to the site: their machine is not under the control of the site owner, and yet it will participate in the operation of the
site en effectuant une partie des traitements. site by performing part of the processing.
La solution classique qui consiste à distribuer des modules trouve ici des limites: - pour un système de saisie de mot de passe: - le client doit afficher l'interface de saisie, crypter le mot de passe et le transmettre au serveur - le serveur reçoit le mot de passe, le décrypte et le vérifie - pour un système de discussion en environnement 3d: - le client calcule et affiche un environnement en 3 dimensions - le serveur informe chaque client de la présence des autres et sert éventuellement de relais et de The classic solution which consists in distributing modules finds limits here: - for a password entry system: - the client must display the entry interface, encrypt the password and transmit it to the server - the server receives the password, decrypts and verifies it - for a discussion system in a 3d environment: - the client calculates and displays an environment in 3 dimensions - the server informs each client of the presence of the others and possibly acts as a relay and
filtre dans les discussions.filter in discussions.
Chaque fonctionnalité devrait donc être découpée en deux objets hétérogènes: un objet fonctionnant sur le Each functionality should therefore be divided into two heterogeneous objects: an object operating on the
serveur, et un objet fonctionnant sur les clients. server, and an object running on clients.
La communication qui résulte entre ces deux composantes d'une même fonctionnalité deviendrait alors visible dans l'outil de création de site, puisqu'elle serait représentée par des liens qui ne présenteraient aucune The communication that results between these two components of the same functionality would then become visible in the site creation tool, since it would be represented by links that would have no
souplesse (il y aurait obligation de les tracer). flexibility (there would be an obligation to trace them).
On rappelle également les deux principes de communication: - principe de sélection: à qui veut-on envoyer un message ? - principe de traduction: que veut-on signifier, et comment le faire comprendre ? On connaît dans l'état de la technique différents We also recall the two communication principles: - selection principle: to whom do we want to send a message? - principle of translation: what do we want to mean, and how to make it understood? We know in the prior art different
brevets concernant de telles architectures. patents relating to such architectures.
Par exemple, le brevet européen EP732834 décrit un système et une méthode pour la détermination et la manipulation de l'information de configuration des serveurs For example, European patent EP732834 describes a system and a method for determining and manipulating the configuration information of servers.
dans un environnement d'objets répartis. in an environment of distributed objects.
Le brevet européen EP546683 décrit un système de traitement de données orienté objet présentant un moyen destiné à produire un module objet chargeable à partir d'une définition d'interface d'objets indépendants d'un langage, comprenant un moyen de mémorisation destiné à mémoriser la définition d'interface d'objets indépendants d'un langage. Les liens de langage comprennent une structure de données de classes externe aux informations binaires, et un moyen destiné à compiler les liens de langage afin de produire un module European patent EP546683 describes an object-oriented data processing system having a means for producing a loadable object module from an interface definition of objects independent of a language, comprising a storage means for storing the interface definition of objects independent of a language. Language links include a class data structure external to binary information, and means for compiling language links to produce a module
objet chargeable.loadable object.
On connaît également le brevet américain US5915113 qui décrit un procédé de programmation-objet qui permet de répartir des objets informatiques et de créer des liens entre eux. Le brevet américain US5724589 décrit un procédé de programmation graphique dans lequel les objets informatiques Also known is the American patent US5915113 which describes an object-programming method which makes it possible to distribute computer objects and to create links between them. US patent US5724589 describes a graphical programming method in which computer objects
sont dépourvus de connaissances mutuelles. are devoid of mutual knowledge.
Le brevet américain US5991535 décrit un autre US patent US5991535 describes another
procédé de programmation objet.object programming process.
Les procédés de l'art antérieur concernent tous des procédés o les objets sont chargés et exécutés soit sur le serveur, soit sur un poste client. Cela implique plusieurs inconvénients. Tout d'abord, il n'est pas possible d'optimiser les ressources informatiques client ou serveur, car les objets sont nécessairement exécutés sur la machine sur laquelle ils sont chargés. D'autre part, le poste client accède aux objets au moment de leur exécution, et il n'est donc pas possible de The methods of the prior art all relate to methods in which the objects are loaded and executed either on the server or on a client station. This has several drawbacks. First of all, it is not possible to optimize client or server IT resources, because objects are necessarily executed on the machine on which they are loaded. On the other hand, the client computer accesses the objects at the time of their execution, and it is therefore not possible to
préserver la confidentialité de ces objets. preserve the confidentiality of these objects.
Le but de l'invention est de remédier à ces inconvénients en proposant un procédé mettant en oeuvre des objets qui sont divisibles dynamiquement en deux ou plusieurs modules complémentaires, qui se créent et se détruisent sur le The object of the invention is to remedy these drawbacks by proposing a method implementing objects which are dynamically divisible into two or more complementary modules, which are created and destroyed on the
poste client de façon dynamique.client workstation dynamically.
Les modules complémentaires d'un même objet Complementary modules of the same object
dialoguent entre eux par des messages circulant sur le réseau. interact with each other by messages circulating on the network.
L'invention concerne dans son acception la plus générale un procédé pour la programmation graphique consistant à mémoriser, pendant la phase d'exécution, dans au moins une mémoire d'un serveur et dans la mémoire d'un ou de plusieurs clients des objets informatiques autonomes comprenant chacun des interfaces d'entrée et des interfaces de sortie pour communiquer entre eux, la liaison entre les interfaces d'entrée et de sortie étant établie par un module informatique générant les liaisons à partir d'une saisie graphique caractérisé en ce que certains objets au moins sont constitués par un module informatique autonome constitué de deux composantes, chacune desdites composantes étant indivisible et apte à échanger des informations formées par des données numériques avec la composante complémentaire, l'une desdites composantes étant chargée dans la mémoire vive du serveur et l'autre desdites composantes étant chargée dans la mémoire vive du client, et en ce qu'un module est dépourvu de moyens The invention relates in its most general sense to a method for graphical programming consisting in storing, during the execution phase, in at least one memory of a server and in the memory of one or more clients of computer objects. autonomous each comprising input and output interfaces for communicating with each other, the connection between the input and output interfaces being established by a computer module generating the connections from a graphical input characterized in that certain at least objects are constituted by an autonomous computer module made up of two components, each of said components being indivisible and capable of exchanging information formed by digital data with the complementary component, one of said components being loaded into the RAM of the server and the other of said components being loaded into the customer's RAM, and in that q a module is devoid of means
pour accéder à un autre module.to access another module.
Chaque objet peut avoir un fonctionnement distribué: une partie du traitement s'effectue sur le serveur, et une autre partie du traitement s'effectue sur le client. Selon une variante, l'ensemble des objets informatiques et des modules sont mémorisés, en dehors des Each object can have a distributed operation: part of the processing is carried out on the server, and another part of the processing is carried out on the client. According to a variant, all of the computer objects and modules are stored, apart from the
phases d'exécution, uniquement dans la mémoire du serveur. execution phases, only in the memory of the server.
Avantageusement, les objets constitués de deux modules informatiques complémentaires comportent un module transféré, au moment de leur exécution, dans la mémoire du poste client et un module complémentaire enregistré seulement dans la mémoire du serveur, les deux modules étant aptes à échanger des données numériques par l'intermédiaire d'un Advantageously, the objects made up of two complementary computer modules comprise a module transferred, at the time of their execution, in the memory of the client station and an additional module recorded only in the memory of the server, the two modules being able to exchange digital data by through a
réseau sur lequel sont connectés le client et le serveur. network on which the client and the server are connected.
Selon un mode de réalisation préféré, le module enregistré dans la mémoire du client est activé par des instructions transmises par le module enregistré dans la According to a preferred embodiment, the module saved in the client's memory is activated by instructions transmitted by the module saved in the
mémoire serveur.server memory.
De préférence, les modules téléchargés par le client sont des fichiers exécutables, écrits dans un Preferably, the modules downloaded by the client are executable files, written in a
quelconque langage informatique.any computer language.
Selon une variante, le module serveur comporte des moyens pour permettre l'échange de données numériques entre According to a variant, the server module includes means for allowing the exchange of digital data between
deux modules téléchargés par le client. two modules downloaded by the client.
Selon un mode de mise en oeuvre particulier, les objets informatiques sont enregistrés, avant leur exécution, dans plusieurs serveurs distincts reliés entre eux par un According to a particular mode of implementation, the computer objects are recorded, before their execution, in several separate servers linked together by a
réseau informatique.computer network.
Avantageusement, les données informatiques échangées entre le ou les serveurs, et le ou les clients sont constitués par un message comportant un identifiant de client Advantageously, the computer data exchanged between the server (s), and the client (s) consists of a message comprising a client identifier
et éventuellement un paramètre.and possibly a parameter.
De préférence, le chargement en mémoire vive d'un module sur le poste client est commandé par la réception d'un Preferably, the loading into RAM of a module on the client station is controlled by the reception of a
message comportant l'identifiant dudit module. message containing the identifier of said module.
L'invention sera mieux comprise à la lecture de la The invention will be better understood on reading the
description qui suit, se référant à des exemples de mise en description which follows, referring to examples of implementation
oeuvre non limitatifs.non-limiting work.
Le procédé selon l'invention est fondé sur le principe qu'une fonctionnalité doit correspondre à un seul objet, car il est plus facile à un non-technicien de manipuler des fonctionnalités complètes plutôt que des bouts de fonctionnalités. Chaque objet se présente donc comme une boîte The method according to the invention is based on the principle that a functionality must correspond to a single object, since it is easier for a non-technician to handle complete functionalities rather than bits of functionality. Each object is therefore presented as a box
possédant des entrées et des sorties. having inputs and outputs.
Chaque fonctionnalité se décompose de manière interne en au plus deux parties: - une partie fonctionnant sur le serveur - une partie fonctionnant éventuellement sur les postes clients (celle-ci n'est pas toujours requise) Cela pose la question de la localisation des entrées et des sorties: chacune peut être localisée sur la Each functionality is broken down internally into at most two parts: - a part operating on the server - a part possibly operating on client workstations (this is not always required) This raises the question of the location of the inputs and outputs: each can be located on the
partie serveur ou sur la partie cliente. server part or on the client part.
On établit une distinction entre: - la communication intra-objet: une partie cliente d'un objet communique avec la partie A distinction is made between: - intra-object communication: a client part of an object communicates with the part
serveur du même module, ou inversement. server of the same module, or vice versa.
- la communication intra-objet: un module communique avec un autre - intra-object communication: a module communicates with another
Communication intra-objet.Intra-object communication.
Le principe de traduction est le suivant: les parties serveur et client d'un même objet sont sensées se The translation principle is as follows: the server and client parts of the same object are supposed to be
connaître et donc parler le même langage. know and therefore speak the same language.
Le principe de sélection est simple dans le sens client vers serveur puisqu'il n'y a qu'une seule partie The principle of selection is simple in the client to server direction since there is only one part
serveur pour un module.server for a module.
Dans le sens serveur vers client, le principe de sélection implique de choisir vers quel module client envoyer In the server to client direction, the selection principle involves choosing which client module to send to
le message.the message.
Communication inter-module Le principe de traduction est résolu par les liens: chaque lien relie une sortie et une entrée nommées, et définit donc une correspondance entre deux noms, ce qui est le Inter-module communication The translation principle is solved by links: each link connects a named output and input, and therefore defines a correspondence between two names, which is the
propre de la traduction.translation clean.
Le principe de sélection est partiellement résolu par les liens: chaque lien définit un objet émetteur et un The selection principle is partially solved by the links: each link defines an emitting object and a
objet récepteur.receiving object.
Il faut encore résoudre le problème de localisation de l'entrée: - si l'entrée est sur la partie serveur de l'objet récepteur, il n'y a pas de question puisque la partie serveur est unique - si l'entrée est sur la partie client de l'objet récepteur, il faut préciser vers quel client le The problem of locating the entry must still be resolved: - if the entry is on the server part of the receiving object, there is no question since the server part is unique - if the entry is on the client part of the receiving object, you must specify to which client the
message doit être transmis.message must be transmitted.
Graphe User-Flow Il en résulte que les messages doivent contenir une information supplémentaire, qui se révèle être l'information User-Flow Graph As a result, messages must contain additional information, which turns out to be the information
fondamentale, à savoir l'indication d'un client. fundamental, namely the indication of a client.
Le site est donc constitué d'un graphe statique de The site therefore consists of a static graph of
modules, dont le principe mobile est les clients. modules, the mobile principle of which is customers.
On généralise les clients à la notion d'utilisateur (user). On associe un unique 'user' à chaque client et on distingue: - les 'users' qui correspondent à un client - les 'users' qui ne correspondent à aucun client Customers are generalized to the concept of user. We associate a unique 'user' with each client and we distinguish: - the 'users' who correspond to a client - the 'users' who do not correspond to any client
et qui résident en permanence dans le serveur. and who reside permanently in the server.
On ne s'interdit pas de faire passer un 'user' d'un état à l'autre: le 'user' d'un client reste dans le système We do not refrain from passing a 'user' from one state to another: the 'user' of a client remains in the system
après déconnexion, et est réattribué au client lorsque celui- after disconnection, and is reassigned to the customer when the latter
ci revient.here comes back.
On définit un message inter-objet comme étant: - un 'user', qui est le user concerné directement par le message, et qui sert à résoudre les questions de routage - éventuellement un paramètre quelconque, permettant de gérer des flux de données entre modules et pas seulement des signaux éventuellement une liste de 'users' indirectement concernés par l'action éventuellement une fonction de réponse On autorise tout objet à émettre de tels messages sur ses sorties. L'architecture selon l'invention prend en charge ce message et le transmet en suivant les liens du graphe. On définit deux types d'entrées de module: - une entrée serveur: l'objet serveur prend en charge les messages qui arrivent sur cette entrée - une entrée client: l'objet client prend normalement en charge les messages qui arrivent sur cette entrée. Le serveur peut également proposer de prendre en charge une telle entrée pour les 'users' qui ne correspondent pas à un client, ainsi que pour les 'users' correspondant à un client mais pour lesquels le module client n'a pas été activé On définit les règles de routage: - message émis par un module serveur - message se dirigeant vers une partie serveur: - pas de question particulière de routage - message se dirigeant vers une partie cliente: - soit le 'user' correspond à un client, et alors le message est envoyé à ce client - soit le 'user' ne correspond pas à un client, et alors le message est quand même transmis au serveur. - message émis par un module client - Un tel message référence obligatoirement le An inter-object message is defined as: - a 'user', which is the user directly concerned by the message, and which serves to resolve routing questions - possibly any parameter, allowing data flows between modules to be managed and not only signals, possibly a list of 'users' indirectly affected by the action, possibly a response function. Any object is authorized to send such messages on its outputs. The architecture according to the invention takes charge of this message and transmits it by following the links in the graph. Two types of module entries are defined: - a server entry: the server object takes care of messages arriving at this entry - a client entry: the client object normally takes care of messages which arrive at this entry. The server can also offer to support such an entry for 'users' who do not correspond to a client, as well as for 'users' who correspond to a client but for whom the client module has not been activated. routing rules: - message sent by a server module - message directed towards a server part: - no particular routing question - message directed towards a client part: - either the 'user' corresponds to a client, and then the message is sent to this client - either the 'user' does not correspond to a client, and then the message is nevertheless transmitted to the server. - message sent by a client module - Such a message necessarily references the
user' associé au client.user 'associated with the client.
- message se dirigeant vers une partie serveur: - pas de question particulière de routage - message se dirigeant vers une partie cliente: le message est transmis localement Activation dynamique De par la structure décrite précédemment, il résulte que le même graphe est utilisé côté serveur et côté client. On parlera d'architecture à copie. Cependant cette copie est partielle et dynamique: pour des raisons d'efficacité et de sécurité, il n'est pas utile que les modules clients soient tous en fonctionnement à un instant donné chez un client donné. Certaines parties du site peuvent - message directed towards a server part: - no particular routing question - message directed towards a client part: the message is transmitted locally Dynamic activation By the structure described above, it follows that the same graph is used on the server side and client side. We will talk about copy architecture. However, this copy is partial and dynamic: for reasons of efficiency and security, it is not useful that the client modules are all in operation at a given time with a given client. Certain parts of the site may
en effet rester inaccessibles à un client. indeed remain inaccessible to a client.
Le principe d'activation dynamique consiste à laisser chaque module serveur décider de l'activation du module client correspondant: il décide lui-même The dynamic activation principle consists in letting each server module decide on the activation of the corresponding client module: it decides for itself
d'activer/désactiver la partie cliente chez un client donné. activate / deactivate the client part for a given client.
C'est à ce moment seulement que le client prendra connaissance It is only at this moment that the client will become aware
de cette partie du graphe.of this part of the graph.
Mise en oeuvre du procédé Le procédé selon l'invention permet la création de sites Internet. Le concepteur du site définit une architecture par la sélection d'objets pré-existant et par l'établissement de liens entre ces objets. Chaque objet gère une ou plusieurs fonctionnalités: log, authentification, espace 3D,... Chaque objet peut avoir un fonctionnement distribué: une partie du traitement s'effectue sur le serveur, et une autre partie du Implementation of the method The method according to the invention allows the creation of Internet sites. The designer of the site defines an architecture by the selection of pre-existing objects and by the establishment of links between these objects. Each object manages one or more functionalities: log, authentication, 3D space, ... Each object can have a distributed operation: part of the processing takes place on the server, and another part of the
traitement s'effectue sur le client. processing takes place on the client.
Chaque objet est divisé en deux partie complémentaires dont l'une fonctionne sur le serveur et l'autre sur les clients. La communication entre la partie client et la partie serveur d'un même objet sera gérée exclusivement par l'auteur du module. La communication entre deux modules se fait exclusivement sous la forme de liens. Les liens sont directionnels: de l'événement vers l'action. A tout moment, un objet peut déclencher un événement. Le système le convertit, selon les liens, en actions pour d'autres modules. Le module concerné par l'action est averti de l'identité de l'émetteur, et peut lui répondre, en utilisant Each object is divided into two complementary parts, one of which works on the server and the other on the clients. The communication between the client part and the server part of the same object will be managed exclusively by the author of the module. Communication between two modules takes place exclusively in the form of links. The links are directional: from the event to the action. At any time, an object can trigger an event. The system converts it, according to the links, into actions for other modules. The module concerned by the action is informed of the identity of the issuer, and can respond to it, using
la fonction de réponse attachée au message. the response function attached to the message.
Un éditeur de site permet de: - sélectionner les modules à intégrer au site - définir les documents serveur et client - définir les liens entre les objets - affecter les zones aux modules: indiquer dans quelle zone afficher la 3D, un bouton, une image - lancer les éditeurs de modules. Chaque module contient un éditeur qui permet de paramétrer le module (définir un espace 3D pour un module de gestion 3D, définir les textes d'un module " bandeau d'affichage ",...) Le serveur joue le rôle de distributeur de ressources. Une ressource correspond à un ensemble de données numériques. Elle appartient à un objet qui est son propriétaire. Les ressources sont les données que les clients vont pouvoir télécharger: fichier contenant le programme du A site editor allows you to: - select the modules to integrate into the site - define the server and client documents - define the links between the objects - assign the zones to the modules: indicate in which zone to display the 3D, a button, an image - launch the module editors. Each module contains an editor which makes it possible to configure the module (define a 3D space for a 3D management module, define the texts of a "display banner" module, ...) The server plays the role of distributor of resources . A resource corresponds to a set of digital data. It belongs to an object which is its owner. Resources are the data that clients will be able to download: file containing the program of the
module client, fichier graphique, 3D, son,... client module, graphic file, 3D, sound, ...
Chaque module enregistre les ressources dont le client peut avoir besoin, afin de garantir les possibilités de mise à jour automatique. Une ressource est normalement accessible à tout client dont le module client correspondant au module propriétaire est activé. Cependant, la ressource peut être sécurisée avec un accès restreint aux seuls clients autorisés. Côté serveur, la ressource peut être présente dans la mémoire du serveur ou stockée sur le disque. Dans le premier cas seulement, elle pourra être compressée avant le téléchargement par le client. Dans le deuxième cas, les données seront transférées directement: il est donc recommandé que le fichier soit déjà compressé (fichier Each module records the resources that the client may need, in order to guarantee the possibilities of automatic updating. A resource is normally accessible to any client whose client module corresponding to the owner module is activated. However, the resource can be secured with access restricted to only authorized clients. On the server side, the resource can be present in the server memory or stored on the disk. In the first case only, it can be compressed before downloading by the client. In the second case, the data will be transferred directly: it is therefore recommended that the file is already compressed (file
graphique jpeg par exemple).jpeg graphics for example).
Côté client, la ressource peut être stockée dans le cache sous un nom donné qui permettra, lors d'un usage l1 ultérieur, de déterminer si la ressource doit être téléchargée ou si elle est présente. La ressource peut également être fournie directement au client, sans passer par un stockage sur On the client side, the resource can be stored in the cache under a given name which will make it possible, during later use, to determine whether the resource should be downloaded or whether it is present. The resource can also be supplied directly to the client, without going through storage on
un disque.a disk.
Le serveur calcule la signature des ressources qu'on lui soumet. Cette signature est transmise au module client lors de sa création. Le module client vérifie la signature du fichier portant le nom de la ressource et si elle The server calculates the signature of the resources that are submitted to it. This signature is transmitted to the client module when it is created. The client module checks the signature of the file bearing the name of the resource and whether it
correspond, il télécharge de nouveau le module. matches, it downloads the module again.
Le serveur peut donc: - enregistrer une ressource en spécifiant son nom et son propriétaire - désenregistrer une ressource en spécifiant son nom désenregistrer toutes les ressources d'un propriétaire donné The server can therefore: - save a resource by specifying its name and owner - deregister a resource by specifying its name deregister all the resources of a given owner
- autoriser un client à accéder à une ressource. - authorize a client to access a resource.
Le client peut: - demander le téléchargement d'une ressource en connaissant son nom et en précisant le nim du module demandeur, en passant par le cache ou non - arrêter le teléchargement d'une ressource - arrêter tous les teléchargements commandé par un The customer can: - request the download of a resource by knowing its name and specifying the nim of the requesting module, via the cache or not - stop the download of a resource - stop all downloads ordered by a
module donné.given module.
Claims (7)
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR0003263A FR2806493A1 (en) | 2000-03-14 | 2000-03-14 | METHOD FOR GRAPHIC PROGRAMMING |
| AU44241/01A AU4424101A (en) | 2000-03-14 | 2001-03-14 | Graphic programming method |
| PCT/FR2001/000756 WO2001069379A2 (en) | 2000-03-14 | 2001-03-14 | Graphic programming method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR0003263A FR2806493A1 (en) | 2000-03-14 | 2000-03-14 | METHOD FOR GRAPHIC PROGRAMMING |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| FR2806493A1 true FR2806493A1 (en) | 2001-09-21 |
Family
ID=8848074
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR0003263A Withdrawn FR2806493A1 (en) | 2000-03-14 | 2000-03-14 | METHOD FOR GRAPHIC PROGRAMMING |
Country Status (3)
| Country | Link |
|---|---|
| AU (1) | AU4424101A (en) |
| FR (1) | FR2806493A1 (en) |
| WO (1) | WO2001069379A2 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20220366393A1 (en) * | 2019-06-21 | 2022-11-17 | Banks And Acquirers International Holding | Service application system for payment terminals |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0497022A1 (en) * | 1991-01-31 | 1992-08-05 | Hewlett-Packard Company | Conference system |
| US5548779A (en) * | 1993-12-21 | 1996-08-20 | Taligent | System for providing system services for a device to a client using stack definition and stack description of a stack having top, intermediate, and bottom service objects |
| EP0780763A1 (en) * | 1995-12-21 | 1997-06-25 | International Business Machines Corporation | Method and means for creating distributed object-oriented applications |
-
2000
- 2000-03-14 FR FR0003263A patent/FR2806493A1/en not_active Withdrawn
-
2001
- 2001-03-14 AU AU44241/01A patent/AU4424101A/en not_active Abandoned
- 2001-03-14 WO PCT/FR2001/000756 patent/WO2001069379A2/en not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0497022A1 (en) * | 1991-01-31 | 1992-08-05 | Hewlett-Packard Company | Conference system |
| US5548779A (en) * | 1993-12-21 | 1996-08-20 | Taligent | System for providing system services for a device to a client using stack definition and stack description of a stack having top, intermediate, and bottom service objects |
| EP0780763A1 (en) * | 1995-12-21 | 1997-06-25 | International Business Machines Corporation | Method and means for creating distributed object-oriented applications |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20220366393A1 (en) * | 2019-06-21 | 2022-11-17 | Banks And Acquirers International Holding | Service application system for payment terminals |
| US12175442B2 (en) * | 2019-06-21 | 2024-12-24 | Banks And Acquirers International Holding | Service application system for payment terminals |
Also Published As
| Publication number | Publication date |
|---|---|
| AU4424101A (en) | 2001-09-24 |
| WO2001069379A2 (en) | 2001-09-20 |
| WO2001069379A3 (en) | 2003-05-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3243176B1 (en) | Method of processing a transaction from a communication terminal | |
| EP1836636A1 (en) | Portable personal mass storage medium and computer system with secure access to a user space via a network | |
| FR2969334A1 (en) | SAFETY EQUIPMENT MODULE AND METHOD FOR DEBUGGING SUCH A MODULE | |
| FR2823932A1 (en) | Application/services distribution over distributed architecture network having agent user terminal resident IRC server communicating user communications layer/protocol interactive link allowing XML message communications. | |
| EP1046108B1 (en) | Internal data exchange method between applications of a multi-application portable object and corresponding portable multi-application object | |
| EP3349160B1 (en) | Method of transmitting data, corresponding device and program | |
| FR2806493A1 (en) | METHOD FOR GRAPHIC PROGRAMMING | |
| CN101156419A (en) | Adaptive business context service facing service structure components | |
| EP2674860A1 (en) | Method for data processing by a navigation module | |
| EP2575327B1 (en) | Method for sharing a web application between a plurality of computer terminals connected to a communication network | |
| EP3349161B1 (en) | Method of handling a payment transaction, corresponding payment terminal and program | |
| EP3987390A1 (en) | Service application system for payment terminals | |
| FR2990667A1 (en) | METHOD FOR MANAGING AN ELECTRONIC INSTALLATION OF A MOTOR VEHICLE AND ELECTRONIC INSTALLATION SO IMPLEMENTED | |
| EP2561454A1 (en) | Information-sharing computer system and corresponding method | |
| FR3038199A1 (en) | METHOD AND DEVICE FOR UPDATING CAPACITIES OF AN OBJECT CONNECTED TO A COMMUNICATIONS NETWORK | |
| FR2901381A1 (en) | Digital personal information and data e.g. software, processing system, has sphere stations each with operating system having contact directory comprising unique preset denomination independent of stations and user and collecting user data | |
| FR3140184A1 (en) | Method and device for allocating an NFT | |
| WO2018029564A1 (en) | System and method for authentication of a user of an application system by a central server, without using a password | |
| FR2947934A1 (en) | METHOD FOR DYNAMIC TRACEABILITY AND ACCOUNTABILITY OF EXCHANGES IN AN INTERNET-TYPE OPEN ENVIRONMENT | |
| FR3031609A1 (en) | METHOD OF PROCESSING A TRANSACTION FROM A COMMUNICATION TERMINAL | |
| WO2006072692A1 (en) | Method for performing cryptographic functions in a computer application written in a mobile code language, and corresponding computer application | |
| FR2901380A1 (en) | Magnetic/optical/electronic/electro-optic type personal external storage medium e.g. universal serial bus key, for e.g. controlling file, has gateway process processing digital information associated to key file belonging to user spaces | |
| WO2018229089A1 (en) | Method for managing loyalty identifiers, method for processing loyalty data, server, transaction device and corresponding programs | |
| FR2878047A1 (en) | Universal serial bus key for controlling access of user to computer, has memory storing identification data related to user access space of authorized user | |
| FR2896059A1 (en) | HTML document creating method for server device, involves creating XML tree, generating HTML document from XML tree, and on-lining HTML document for being accessed by client device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| ST | Notification of lapse |