FR2888444A1 - METHOD FOR GENERATING SOFTWARE OF CONTEXTUALIZED SERVICE PROVIDING APPLICATIONS AND SYSTEM FOR IMPLEMENTING THE METHOD - Google Patents
METHOD FOR GENERATING SOFTWARE OF CONTEXTUALIZED SERVICE PROVIDING APPLICATIONS AND SYSTEM FOR IMPLEMENTING THE METHOD Download PDFInfo
- Publication number
- FR2888444A1 FR2888444A1 FR0552109A FR0552109A FR2888444A1 FR 2888444 A1 FR2888444 A1 FR 2888444A1 FR 0552109 A FR0552109 A FR 0552109A FR 0552109 A FR0552109 A FR 0552109A FR 2888444 A1 FR2888444 A1 FR 2888444A1
- Authority
- FR
- France
- Prior art keywords
- terminal
- software components
- services
- module
- contexts
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
L'invention concerne un procédé de génération automatique d'un logiciel d'applications pour fournir à un terminal mobile un accès à au moins un service contextualisé.Le procédé selon l'invention comporte les étapes suivantes :- analyser les contextes d'utilisation dudit terminal,- déduire à partir de ladite analyse un ou plusieurs services adaptés aux contextes analysés,- rechercher une combinaison de composants logiciels adaptée pour gérer l'accès dudit terminal à l'un au moins desdits services,- générer automatiquement un modèle topologique d'exécution desdits composants logiciels.The invention relates to a method for automatically generating an application software for providing a mobile terminal with access to at least one contextualized service.The method according to the invention comprises the following steps: analyzing the contexts of use of said terminal, - derive from said analysis one or more services adapted to the contexts analyzed, - search a combination of software components adapted to manage the access of said terminal to at least one of said services, - automatically generate a topological model of execution of said software components.
Description
PROCÉDÉ DE GÉNÉRATION DE LOGICIEL D'APPLICATIONS DEMETHOD FOR GENERATING THE APPLICATION SOFTWARE
FOURNITURE DE SERVICES CONTEXTUALISÉS ET SYSTÈME DE MISE EN UVRE DU PROCÉDÉ PROVISIONING CONTEXTUALIZED SERVICES AND SYSTEM FOR IMPLEMENTING THE METHOD
DESCRIPTION 5 DOMAINE TECHNIQUEDESCRIPTION 5 TECHNICAL FIELD
L'invention concerne un procédé de génération automatique d'un logiciel d'application pour fournir à un terminal mobile un accès à au moins un service contextualisé. The invention relates to a method for automatically generating an application software for providing a mobile terminal with access to at least one contextualized service.
L'invention concerne également un système de mise en oeuvre du procédé, un logiciel d'application mémorisé sur un support et destiné, lorsqu'il est exécuté, à fournir à un terminal mobile un accès à au moins un service contextualisé. The invention also relates to a system for implementing the method, an application software stored on a medium and intended, when executed, to provide a mobile terminal access to at least one contextualized service.
L'invention concerne également une architecture logicielle supportant ledit logiciel d'application. The invention also relates to a software architecture supporting said application software.
ÉTAT DE LA TECHNIQUE ANTÉRIEURE L'augmentation croissante du débit de transmissions via des terminaux, tel que des téléphones mobiles, des PDA (pour Portable Digital Agenda) ou encore des ordinateurs portables, permet aux utilisateurs de ces terminaux de recevoir une gamme de plus en plus riche de services mobiles (données, voix, vidéo...). Ces services peuvent être fournis sur requête de l'utilisateur du terminal (mode pull) ou suggérés à ce dernier en fonction de son profil (mode push). STATE OF THE PRIOR ART The increasing increase in the transmission rate via terminals, such as mobile phones, PDAs (Portable Digital Agenda) or even laptops, allows the users of these terminals to receive a wider range of transmissions. richer mobile services (data, voice, video ...). These services can be provided on request of the terminal user (pull mode) or suggested to the latter according to his profile (push mode).
Dans le premier cas, l'utilisateur formule une requête qui est analysée puis transmise à un ou plusieurs serveurs susceptibles de fournir le service demandé. Dans le deuxième cas, des services sont suggérés à l'utilisateur du terminal en fonction de son profil. In the first case, the user formulates a request that is analyzed and transmitted to one or more servers that can provide the requested service. In the second case, services are suggested to the terminal user according to his profile.
Un troisième mode de fourniture de service consiste à tenir compte du contexte dans lequel se trouve l'utilisateur du terminal. Dans ce mode, un contexte peut être défini par la localisation, l'identification des personnes et/ou des objets qui sont proches de l'utilisateur et les changements de tels objets. Il peut également être défini par n'importe quelles informations utilisées pour décrire une situation d'une entité représentant une personne, un lieu ou un objet. A third mode of service provision consists in taking into account the context in which the user of the terminal is located. In this mode, a context can be defined by the location, the identification of people and / or objects that are close to the user and the changes of such objects. It can also be defined by any information used to describe a situation of an entity representing a person, place, or object.
Les techniques mises en oeuvre dans ce troisième mode de fourniture de services prennent en compte essentiellement des paramètres fixes, prédéfinis se rapportant essentiellement à l'utilisateur du terminal. Ces paramètres sont généralement définis statistiquement en analysant les comportements des utilisateurs afin d'établir des profils types utilisés pour cibler les services à fournir. The techniques implemented in this third service delivery mode essentially take into account fixed, predefined parameters essentially relating to the user of the terminal. These parameters are usually statistically defined by analyzing user behaviors to establish typical profiles used to target the services to be provided.
Un inconvénient de ces techniques provient du fait qu'ils ne s'adaptent pas aux changements de besoins d'application de fourniture de service. A disadvantage of these techniques is that they do not adapt to changing service delivery application requirements.
Ainsi, un premier exemple d'application peut consister à fournir à un automobiliste la liste des restaurants les plus proches en fonction de sa position. Un deuxième exemple d'application peut consister à fournir à un médecin des informations relatives à un type particulier de patients dans un hôpital en fonction, par exemple, du profil du médecin, du terminal dont il dispose et éventuellement de paramètres sélectionnés par le médecin (degrés d'urgence, type d' intervention à effectuer...). Thus, a first example of application may consist in providing a motorist with the list of the closest restaurants according to his position. A second example of application may consist in providing a doctor with information relating to a particular type of patient in a hospital depending, for example, on the profile of the doctor, the terminal at his disposal and possibly parameters selected by the physician ( degrees of urgency, type of intervention to be performed ...).
La réalisation de ces deux applications nécessite un temps de développement important et des compétences pluridisciplinaires. The realization of these two applications requires a significant development time and multidisciplinary skills.
Dans les méthodes de l'art antérieur, chaque application doit être développée de façon indépendante, en tenant compte d'un environnement technologiques spécifique (appareil de réception, protocole de communication, ....). Aussi, ces méthodes ne permettent pas de s'adapter au type d'application envisagé. In the methods of the prior art, each application must be developed independently, taking into account a specific technological environment (reception apparatus, communication protocol, ....). Also, these methods do not allow to adapt to the type of application envisaged.
En outre, l'absence de normes régissant la fourniture de services mobiles contextualisés conduit les concepteurs de ces applications à développer des programmes propriétaires limitant ainsi leur interopérabilité avec des systèmes utilisant des bases de données hétérogènes, dans différentes localisations, sous différents réseaux, et avec différentes qualités du service. In addition, the lack of standards governing the provision of contextualized mobile services leads developers of these applications to develop proprietary programs, thus limiting their interoperability with systems using heterogeneous databases, in different locations, under different networks, and with different qualities of the service.
Le but de l'invention est de pallier les inconvénients de l'art antérieur en générant automatiquement des logiciels d'applications de fourniture de services contextualisés en tenant compte des changements des besoins en applications qui prennent en considération non seulement le profil de l'utilisateur, mais également le contexte technologique dans lequel un service peut être fourni. Ce contexte est défini notamment par les paramètres suivants: - le système d'exploitation, - le processeur équipant le terminal, - la mémoire disponible dans le terminal, - les interfaces réseaux, - les équipements périphériques reliés au terminal, - les protocoles de communication utilisés, - la bande passante disponible à un instant donné, - le niveau de batterie du terminal, etc. Ces paramètres peuvent être fournis par l'utilisateur ou détectés par des modules intelligents équipant le terminal. The object of the invention is to overcome the drawbacks of the prior art by automatically generating software applications contextualized service delivery taking into account changes in application requirements that take into account not only the profile of the user but also the technological context in which a service can be provided. This context is defined in particular by the following parameters: the operating system, the processor equipping the terminal, the memory available in the terminal, the network interfaces, the peripheral equipment connected to the terminal, the communication protocols. used, - the bandwidth available at a given moment, - the battery level of the terminal, etc. These parameters can be provided by the user or detected by intelligent modules equipping the terminal.
Un deuxième but de l'invention est d'améliorer la qualité des applications logicielles destinées à générer des services contextualisés. A second object of the invention is to improve the quality of software applications intended to generate contextualized services.
Un autre but de l'invention est de fournir un outil logiciel permettant de faciliter la coopération entre les différents acteurs qui interviennent dans le processus de fourniture de service, (éditeurs de SIG (Système d'informations géographiques), opérateurs de télécommunications, sociétés de service informatiques (SSII) spécialisées) . Another object of the invention is to provide a software tool to facilitate cooperation between the various actors involved in the service provision process, (GIS (geographic information system) editors, telecommunications operators, telecommunications companies, specialized computer services (SSII)).
EXPOSÉ DE L'INVENTION A cet effet, l'invention préconise un procédé de génération automatique d'un logiciel d'application pour fournir à un terminal mobile un accès à au moins un service contextualisé comportant les étapes suivantes. SUMMARY OF THE INVENTION For this purpose, the invention recommends a method for automatically generating an application software for providing a mobile terminal with access to at least one contextualized service comprising the following steps.
- analyser les contextes d'utilisation dudit terminal, - déduire à partir de ladite analyse un ou plusieurs services adaptés aux contextes analysés, - rechercher une combinaison de composants logiciels adaptée pour gérer l'accès dudit terminal à l'un au moins desdits services, -générer automatiquement un modèle topologique d'exécution desdits composants logiciels. analyzing the contexts of use of said terminal, deriving from said analysis one or more services adapted to the analyzed contexts, searching for a combination of software components adapted to manage the access of said terminal to at least one of said services, automatically generate a topological model for executing said software components.
Selon l'invention, le modèle topologique d'exécution desdits composants logiciels est généré à partir de l'analyse des services, contextes et règles prédéfinis et lesdits composants logiciels sont extraits d'une ou de plusieurs librairies de programmes prédéfinies agencées localement dans le terminal ou agencées dans des serveurs distants. According to the invention, the topological model for executing said software components is generated from the analysis of the services, contexts and predefined rules and said software components are extracted from one or more predefined program libraries arranged locally in the terminal. or arranged in remote servers.
Le procédé selon l'invention comporte en outre les étapes préalables suivantes: a) spécifier au moins un service à fournir à un utilisateur du terminal, b) spécifier un ensemble de contextes élémentaires de fourniture de services, c) associer à chaque contexte élémentaire au moins une règle élémentaire régissant la fourniture d'au moins un service parmi les services spécifiés dans ce contexte élémentaire. The method according to the invention furthermore comprises the following preliminary steps: a) specifying at least one service to be provided to a user of the terminal, b) specifying a set of basic service delivery contexts, c) associating with each elementary context with less a basic rule governing the provision of at least one service among the services specified in this basic context.
Préférentiellement, un contexte élémentaire comporte notamment les paramètres suivants: - la position géographique du terminal, - l'instant d'utilisation du terminal, - le profil de l'utilisateur du terminal, - le type de périphériques reliés au terminal, - le type de protocoles de communication utilisés par le terminal, - des contextes physiques extérieurs au terminal. Preferably, an elementary context comprises in particular the following parameters: the geographical position of the terminal, the time of use of the terminal, the profile of the user of the terminal, the type of peripherals connected to the terminal, the type of terminal. communication protocols used by the terminal, - physical contexts outside the terminal.
Selon une caractéristique de l'invention, à chaque paramètre est associée une règle élémentaire, et à chaque combinaison de paramètres est associée une combinaison de règles élémentaires régissant l'accès aux services. According to one characteristic of the invention, each parameter is associated with an elementary rule, and each combination of parameters is associated with a combination of elementary rules governing access to the services.
Dans un mode préféré de mise ne oeuvre de l'invention, la génération du modèle topologique d'exécution comporte les étapes suivantes: - exprimer les spécifications des services, contextes et règles dans un format de données exploitable par lesdits composants logiciels, -mémoriser les formats obtenus dans une base de données, - générer une architecture logicielle indépendante des technologies mises en oeuvre pour accéder au service. In a preferred mode of implementation of the invention, the generation of the topological execution model comprises the following steps: express the specifications of the services, contexts and rules in a data format exploitable by said software components; formats obtained in a database, - generate a software architecture independent of the technologies implemented to access the service.
Dans une variante de mise en oeuvre du procédé selon l'invention, ladite architecture logicielle s'adapte automatiquement au changement du contexte d'utilisation dudit terminal mobile. In an alternative embodiment of the method according to the invention, said software architecture automatically adapts to changing the context of use of said mobile terminal.
L'invention concerne également un logiciel d'application mémorisé sur un support d'enregistrement et susceptible d'être exécuté sur un terminal mobile pour fournir audit terminal un accès à au moins un service contextualisé. The invention also relates to an application software stored on a recording medium and capable of being executed on a mobile terminal to provide said terminal access to at least one contextualized service.
Ce logiciel d'application comporte: - un module d'analyse des contextes spatio-temporels et technologiques d'utilisation dudit terminal, - un module d'inférence destiné à déterminer à partir de ladite analyse un ou plusieurs services adaptés aux contextes analysés, - un module de recherche d'une combinaison de composants logiciels adaptée pour gérer l'accès dudit terminal à l'un au moins desdits services, - un module de génération automatique d'un modèle topologique d'exécution desdits composants logiciels. This application software comprises: a module for analyzing the spatio-temporal and technological contexts of use of said terminal; an inference module for determining from said analysis one or more services adapted to the analyzed contexts; a search module of a combination of software components adapted to manage the access of said terminal to at least one of said services, - a module for automatically generating a topological model for executing said software components.
Ce logiciel comporte en outre un module de traduction desdits contextes spatio-temporels et technologiques dans un langage formel de mémorisation exploitable par lesdits composants logiciels. This software further comprises a module for translating said spatio-temporal and technological contexts into a formal memory language that can be used by said software components.
L'invention est mise en oeuvre dans un système comportant: - au moins une librairie de composants logiciels élémentaires, - au moins une librairie de modèles de combinaisons desdits composants logiciels élémentaires, - un module d'acquisition de spécifications relatives aux contextes spatiotemporel et technologique d'utilisation du terminal mobile, - un module de stockage desdites spécifications, - un module de génération d'une architecture logique d'exécution d'au moins une des combinaisons de composants logiciels prédéfinies, - un module de génération d'une architecture physique d'exécution de ladite combinaison de composants logiciels. The invention is implemented in a system comprising: at least one library of elementary software components, at least one library of models of combinations of said elementary software components, a module for acquiring specifications relating to the spatiotemporal and technological contexts. of use of the mobile terminal, - a storage module of said specifications, - a module for generating a logical architecture for executing at least one of the predefined software component combinations, - a module for generating a physical architecture executing said combination of software components.
L'invention concerne en outre une architecture comportant: - une première couche destinée à gérer l'acquisition des informations relatives aux contextes spatio-temporels et technologiques d'utilisation du terminal, une deuxième couche destinée à analyser les informations acquises, - une troisième couche destinée à rechercher une combinaison de composants logiciels adaptés pour gérer l'accès dudit terminal à l'un au moins desdits services, - une quatrième couche destinée à générer automatiquement un modèle topologique d'exécution desdits composants logiciels. The invention furthermore relates to an architecture comprising: a first layer intended to manage the acquisition of information relating to the spatio-temporal and technological contexts of use of the terminal, a second layer intended to analyze the information acquired, a third layer; for searching a combination of software components adapted to manage the access of said terminal to at least one of said services, - a fourth layer for automatically generating a topological model of execution of said software components.
BRÈVE DESCRIPTION DES DESSINSBRIEF DESCRIPTION OF THE DRAWINGS
D'autres caractéristiques et avantages de l'invention ressortiront de la description qui va suivre, prise à titre d'exemple non limitatif, en référence aux figures annexées dans lesquelles: - la figure 1 illustre schématiquement un système selon l'invention, - la figure 2 représente un organigramme illustrant schématiquement les étapes essentielles du procédé selon l'invention, - la figure 3 représente un organigramme illustrant un mode préféré de mise en oeuvre du procédé selon l'invention, - la figure 4 représente un exemple d'application du procédé selon l'invention, - la figure 5 est un schéma bloc illustrant la mise en oeuvre du procédé selon l'invention dans l'application de la figure 4. Other characteristics and advantages of the invention will emerge from the description which follows, taken by way of non-limiting example, with reference to the appended figures in which: FIG. 1 schematically illustrates a system according to the invention; FIG. 2 represents a flowchart schematically illustrating the essential steps of the method according to the invention; FIG. 3 represents a flowchart illustrating a preferred embodiment of the method according to the invention; FIG. 4 represents an example of application of FIG. method according to the invention, - Figure 5 is a block diagram illustrating the implementation of the method according to the invention in the application of Figure 4.
EXPOSÉ DÉTAILLÉ DE MODES DE RÉALISATION PARTICULIERS La figure 1 représente un système de génération d'un logiciel d'application pour fournir à un terminal mobile un accès à au moins un service contextualisé comportant un module central de coordination 1, une librairie 2 de composants logiciels élémentaires, une librairie 4 de modèles de combinaisons desdits composants logiciels élémentaires, un module d'acquisition 6 des spécifications relatives au contexte spatio-temporel et technologique d'utilisation du terminal mobile, un module de stockage 8 desdites spécifications, un module de génération 10 d'une architecture logique d'exécution d'au moins une des combinaisons de composants logiciels prédéfinies, un module de génération d'une architecture physique 12 d'exécution de ladite combinaison de composants logiciels. DETAILED DESCRIPTION OF PARTICULAR EMBODIMENTS FIG. 1 represents a system for generating an application software for providing a mobile terminal with access to at least one contextualized service comprising a central coordination module 1, a library 2 of software components elementary, a library 4 of models of combinations of said basic software components, an acquisition module 6 specifications relating to the space-time and technological context of use of the mobile terminal, a storage module 8 of said specifications, a generation module 10 a logical architecture for executing at least one of the predefined software component combinations, a module for generating a physical architecture 12 for executing said combination of software components.
Le module d'acquisition 6 assure l'interface du système avec des utilisateurs tels que par exemple des concepteurs d'applications pour accéder à des services contextualisés ou des experts spécialisés dans des domaines spécifiques tels que par exemple des concepteurs de système d'information géographique ou encore des concepteurs de système d'informations médicales ou touristiques. Ce module reçoit les spécifications fournies par l'utilisateur et génère un fichier descriptif de ces spécifications. The acquisition module 6 provides the interface of the system with users such as, for example, application designers to access contextualized services or experts specialized in specific fields such as, for example, geographical information system designers. or even medical or tourist information system designers. This module receives the specifications provided by the user and generates a descriptive file of these specifications.
Le module de stockage 8 est destiné à mémoriser les fichiers des spécifications traduites dans un format de données intermédiaire afin qu'elles soient exploitables par les modules de générations d'architecture logicielle. The storage module 8 is intended to store the translated specifications files in an intermediate data format so that they can be used by the modules of software architecture generations.
Le module 10 de génération d'architecture logique communique avec le module de stockage 8, le module de génération d'architecture physique 12, la librairie de composants logiciels élémentaires 2 et avec la librairie de modèles 4. Ce module 10 reçoit les spécifications traduites du module de stockage 8, identifie un modèle dans la librairie de modèles 4 ou combine des composants logiciels élémentaires de librairie 2 pour créer un nouveau modèle, instancie le modèle choisi ou créé et fournit une architecture logicielle prenant en compte les contextes et les règles définies dans les spécifications. The logical architecture generation module 10 communicates with the storage module 8, the physical architecture generation module 12, the library of elementary software components 2 and with the model library 4. This module 10 receives the translated specifications of the storage module 8, identifies a model in the library of models 4 or combines basic software components of library 2 to create a new model, instantiates the model chosen or created and provides a software architecture taking into account the contexts and rules defined in the specifications.
Notons que les composants logiciels élémentaires de librairie 2 peuvent être paramétrables ou auto adaptatifs. Note that the basic software components of library 2 can be parameterizable or auto-adaptive.
Notons également que les modèles générés par combinaison de composants élémentaires sont mémorisés dans le module de stockage 8 et peuvent être réutilisés tels quels si le terminal et l'utilisateur de ce terminal se trouvent dans le contexte ou la combinaison de contextes élémentaires à partir desquels ces modèles ont été générés. Note also that the models generated by combination of elementary components are stored in the storage module 8 and can be reused as is if the terminal and the user of this terminal are in the context or the combination of elementary contexts from which these models were generated.
Le module 12 de génération d'architecture physique reçoit les spécifications relatives à l'environnement technologique d'utilisation du terminal telles que par exemple les différents langages de programmation côté clients et côté serveurs, les protocoles de communication supportés par le terminal, les différents types de matériels concernés (téléphones cellulaires, ordinateurs portables, PDA...), et génère automatiquement une architecture logicielle en agençant les composants logiciels élémentaires appropriés. L'architecture ainsi générée est sensible au contexte d'utilisation du terminal. The physical architecture generation module 12 receives the specifications relating to the technological environment of use of the terminal such as, for example, the different programming languages on the client side and the server side, the communication protocols supported by the terminal, the different types relevant hardware (cell phones, laptops, PDAs ...), and automatically generates a software architecture by arranging the appropriate basic software components. The architecture thus generated is sensitive to the context of use of the terminal.
La figure 2 illustre schématiquement les étapes essentielles pour permettre au système de la figure 1 de générer automatiquement un logiciel d'application destiné à fournir à un terminal mobile un accès à un service contextualisé. Figure 2 schematically illustrates the essential steps to allow the system of Figure 1 to automatically generate application software for providing a mobile terminal access to a contextualized service.
L'étape 20 consiste à définir formellement des spécifications qui vont être utilisées par le module 10 pour générer un modèle d'architecture logique. Ces spécifications concernent essentiellement les services à proposer et les contextes élémentaires dans lesquels un ou plusieurs services sont susceptibles d'être proposés. Step 20 consists of formally defining specifications that will be used by the module 10 to generate a logical architecture model. These specifications essentially concern the services to be offered and the basic contexts in which one or more services are likely to be offered.
Dans un exemple de réalisation, les spécifications définissent notamment: - des paramètres géographiques, - des paramètres temporels, -des profils utilisateurs, - des contextes techniques d'utilisation du terminal (type de matériel périphérique, type de réseau supporté, type de connectiques supportées...), - des règles permettant de déduire un ou plusieurs services pour un contexte élémentaire ou une combinaison de contextes élémentaires et/ou une requête de l'utilisateur, - des contextes physiques extérieurs au terminal tel que par exemple les conditions météorologiques, - des contraintes fonctionnelles telles que par exemple des restrictions sur les communications. In one exemplary embodiment, the specifications define in particular: geographic parameters, temporal parameters, user profiles, technical contexts of use of the terminal (type of peripheral equipment, type of network supported, type of connections supported) ...), - rules making it possible to deduce one or more services for a basic context or a combination of elementary contexts and / or a request from the user, - physical contexts outside the terminal such as, for example, meteorological conditions, functional constraints such as, for example, restrictions on communications.
A l'étape 22, le module central de coordination 1 analyse les spécifications définies à l'étape 20 et fournit le résultat de cette analyse au module de génération d'architecture logique 10 qui génère (étape 24) un modèle d'architecture logique prenant en compte les services et les contextes élémentaires ainsi que les règles contextes/services définis à l'étape 20. L'architecture logicielle ainsi générée comporte des références de composants logiciels dont la combinaison est susceptible d'être utilisée (étape 26) par le module de génération d'architecture physique 12 pour générer une architecture physique comportant une combinaison des composants logiciels référencés. In step 22, the central coordination module 1 analyzes the specifications defined in step 20 and provides the result of this analysis to the logical architecture generation module 10 which generates (step 24) a logical architecture model taking the services and the basic contexts as well as the context / service rules defined in step 20. The software architecture thus generated comprises references of software components whose combination is likely to be used (step 26) by the module. physical architecture generation system 12 for generating a physical architecture comprising a combination of the referenced software components.
La figure 3 illustre schématiquement un mode préféré de mise en oeuvre du procédé de la figure 2. FIG. 3 schematically illustrates a preferred embodiment of the method of FIG. 2.
Dans ce mode de réalisation, avant d'être analysées par le module 10, les spécifications définies à l'étape 20 sont traduites à l'étape 30 dans un langage intermédiaire de mémorisation. Les spécifications traduites sont ensuite mémorisées dans le module de stockage 8. In this embodiment, before being analyzed by the module 10, the specifications defined in step 20 are translated in step 30 in an intermediate memory language. The translated specifications are then stored in the storage module 8.
Comme on peut le voir sur cette figure, l'étape 24 comporte une première sous étape 32 consistant à rechercher des composants logiciels à combiner dans la librairie 2 ou un modèle de combinaison 4 de composants logiciels dans la librairie 4. La combinaison de composants logiciels ou le modèle trouvé constituera l'architecture logicielle sensible aux spécifications de l'environnement technologique du terminal. En effet, cette architecture est composée de références à des composants logiciels dont les paramètres de calculs sont les éléments caractéristiques de ce contexte technologique. Ces paramètres peuvent être soit mesurés par des éléments sensibles intégrés au terminal, tels que par exemple un thermomètre, une horloge, soit fournis au terminal par des dispositifs externes, tels que par exemple un dispositif de localisation (GPS, pour Global Positionning System). L'acquisition de ces paramètres permet au module 12 de générer (sous étape 34) l'architecture physique comportant les composants logiciels référencés. As can be seen in this figure, the step 24 includes a first substep 32 of searching for software components to be combined in the library 2 or a combination model 4 of software components in the library 4. The combination of software components or the model found will be the software architecture sensitive to the specifications of the terminal's technological environment. Indeed, this architecture is composed of references to software components whose calculation parameters are the characteristic elements of this technological context. These parameters can be either measured by sensitive elements integrated into the terminal, such as for example a thermometer, a clock, or provided to the terminal by external devices, such as for example a positioning device (GPS, for Global Positioning System). The acquisition of these parameters enables the module 12 to generate (in step 34) the physical architecture comprising the referenced software components.
La figure 4 illustre un exemple de fourniture de services à un utilisateur 40 muni d'un terminal mobile dans un espace subdivisé en trois zones, zone 1, zone 2 et zone 3 comportant respectivement un gestionnaire de service 42, 44 et 46. Le terminal de l'utilisateur 40 est équipé d'un module intelligent 48 destiné à gérer les traitements qui doivent s'exécuter dans le terminal pour accéder aux services disponibles. Ces traitements comportent notamment: - la gestion de l'IHM (pour Interface Homme Machine) - l'acquisition du contexte spatial (par GPS par exemple), - l'acquisition du contexte temporel (date et heure), - l'acquisition du contexte physique (température, taux d'humidité, pression atmosphérique, ...), l'acquisition du contexte technique (type de matériel, caractéristiques techniques d'affichage, type de processeurs, type de mémoire, ...), l'acquisition du profil utilisateur, - l'acquisition de l'état de mobilité du terminal, - l'acquisition des paramètres de mobilité (vitesse, trajectoire, sens de déplacement, ...) . Le module 48 communique avec un serveur mandataire 49 situé côté serveurs sur une ou plusieurs machines et qui est destiné à recueillir les informations contextuelles ainsi que les éventuelles demandes de requête (mode pull) et à transmettre ces informations notamment à un module 50 de gestion de contexte et à un module 52 de gestion de services (voir figure 5). FIG. 4 illustrates an example of providing services to a user 40 equipped with a mobile terminal in a space divided into three zones, zone 1, zone 2 and zone 3 respectively comprising a service manager 42, 44 and 46. The terminal of the user 40 is equipped with an intelligent module 48 for managing the processing that must be executed in the terminal to access the available services. These treatments include in particular: - the management of the HMI (for Human Machine Interface) - the acquisition of the spatial context (by GPS for example), - the acquisition of the temporal context (date and time), - the acquisition of the physical context (temperature, humidity, atmospheric pressure, ...), the acquisition of the technical context (type of equipment, technical characteristics of display, type of processors, type of memory, ...), the acquisition of the user profile, - acquisition of the mobility status of the terminal, - acquisition of the mobility parameters (speed, trajectory, direction of movement, etc.). The module 48 communicates with a server-side proxy server 49 on one or more machines and which is intended to collect the contextual information as well as any request requests (pull mode) and to transmit this information in particular to a management module 50 context and to a service management module 52 (see FIG. 5).
Le module 50 de gestion de contexte comporte un logiciel apte à déduire à partir des règles de contextes élémentaires, en fonction du contexte d'utilisation et, éventuellement, en fonction de la demande de service exprimée par l'utilisateur, la liste des services susceptibles d'être fournis à l'utilisateur. The context management module 50 includes software capable of deriving from the rules of basic contexts, depending on the context of use and, possibly, depending on the service request expressed by the user, the list of services likely to to be provided to the user.
Le module 52 de gestion de services comporte un logiciel apte à décomposer les services disponibles en services élémentaires, à rechercher les adresses des services dans un annuaire de services local ou demander ces adresses à d'autres serveurs. The service management module 52 includes software capable of breaking down the services available in basic services, searching for the addresses of the services in a local service directory or requesting these addresses from other servers.
La figure 5 illustre schématiquement les interaction entre les éléments 48, 49, 50, 52 pour fournir un service contextualisé à l'utilisateur. Figure 5 schematically illustrates the interaction between the elements 48, 49, 50, 52 to provide a contextualized service to the user.
Le module 48 fournit au serveur mandataire 49 (flèche 60) les informations sur le contexte d'utilisation du terminal et éventuellement une demande de service. Le serveur mandataire 49 transmet (flèche 62) les informations sur le contexte au module 50. Ce dernier détermine la liste des services susceptibles d'être fournis à l'utilisateur et transmet (flèche 64) cette liste au serveur mandataire 49. Le serveur mandataire 49 transmet cette liste au module 52 (flèche 66) qui recherche les adresses des serveurs susceptibles de fournir ces services et transmet (flèche 68) la liste des adresses trouvées au serveur mandataire 49. Le serveur mandataire 49 transmet (flèche 70) la liste des adresses reçues au module 48. Ce dernier se connecte aux adresses indiquées dans la liste pour recevoir les services disponibles. The module 48 provides the proxy server 49 (arrow 60) information on the context of use of the terminal and possibly a service request. The proxy server 49 transmits (arrow 62) the information on the context to the module 50. The latter determines the list of services that may be provided to the user and transmits (arrow 64) this list to the proxy server 49. The proxy server 49 transmits this list to the module 52 (arrow 66) which searches the addresses of the servers likely to provide these services and transmits (arrow 68) the list of addresses found to the proxy server 49. The proxy server 49 transmits (arrow 70) the list of addresses received at module 48. The latter connects to the addresses indicated in the list to receive the available services.
2888444 162888444 16
Claims (14)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0552109A FR2888444B1 (en) | 2005-07-08 | 2005-07-08 | METHOD FOR GENERATING SOFTWARE OF CONTEXTUALIZED SERVICE PROVIDING APPLICATIONS AND SYSTEM FOR IMPLEMENTING THE METHOD |
PCT/EP2006/063967 WO2007006721A1 (en) | 2005-07-08 | 2006-07-06 | Method for generating software applications for supplying contextualized services and system for implementing said method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0552109A FR2888444B1 (en) | 2005-07-08 | 2005-07-08 | METHOD FOR GENERATING SOFTWARE OF CONTEXTUALIZED SERVICE PROVIDING APPLICATIONS AND SYSTEM FOR IMPLEMENTING THE METHOD |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2888444A1 true FR2888444A1 (en) | 2007-01-12 |
FR2888444B1 FR2888444B1 (en) | 2007-10-12 |
Family
ID=36162562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0552109A Expired - Fee Related FR2888444B1 (en) | 2005-07-08 | 2005-07-08 | METHOD FOR GENERATING SOFTWARE OF CONTEXTUALIZED SERVICE PROVIDING APPLICATIONS AND SYSTEM FOR IMPLEMENTING THE METHOD |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR2888444B1 (en) |
WO (1) | WO2007006721A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114826919B (en) * | 2022-03-21 | 2023-09-22 | 浪潮思科网络科技有限公司 | SDN-based load balancing software nanotube method, device, equipment and medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003067396A2 (en) * | 2002-02-07 | 2003-08-14 | Sap Aktiengesellschaft | Integrating geographical contextual information into mobile entreprise applications |
US20030237050A1 (en) * | 2002-03-22 | 2003-12-25 | Eran Davidov | Markup compiler that outputs MIDlets |
US20040169661A1 (en) * | 2001-12-06 | 2004-09-02 | Ahmed Lbath | Method and device for automatic generation of geomatic applications |
-
2005
- 2005-07-08 FR FR0552109A patent/FR2888444B1/en not_active Expired - Fee Related
-
2006
- 2006-07-06 WO PCT/EP2006/063967 patent/WO2007006721A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040169661A1 (en) * | 2001-12-06 | 2004-09-02 | Ahmed Lbath | Method and device for automatic generation of geomatic applications |
WO2003067396A2 (en) * | 2002-02-07 | 2003-08-14 | Sap Aktiengesellschaft | Integrating geographical contextual information into mobile entreprise applications |
US20030237050A1 (en) * | 2002-03-22 | 2003-12-25 | Eran Davidov | Markup compiler that outputs MIDlets |
Also Published As
Publication number | Publication date |
---|---|
WO2007006721A1 (en) | 2007-01-18 |
FR2888444B1 (en) | 2007-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9954746B2 (en) | Automatically generating service documentation based on actual usage | |
CN104823169B (en) | For the index configurations that can search for data in network | |
US9225840B2 (en) | System and method for providing a communication endpoint information service | |
US20110314482A1 (en) | System for universal mobile data | |
EP2200258B1 (en) | Method for distributing content to a user | |
EP3610375B1 (en) | Platform selection for performing requested actions in audio-based computing environments | |
US20180267995A1 (en) | Contextual and cognitive metadata for shared photographs | |
Hachem et al. | Service-oriented middleware for the mobile internet of things: A scalable solution | |
US20150134798A1 (en) | Standardized Crowd Sourcing | |
FR2888444A1 (en) | METHOD FOR GENERATING SOFTWARE OF CONTEXTUALIZED SERVICE PROVIDING APPLICATIONS AND SYSTEM FOR IMPLEMENTING THE METHOD | |
Klus et al. | Crowdsourcing solutions for data gathering from wearables | |
EP1892638A1 (en) | Epidemiological monitoring procedure implemented using a community of network services | |
Li et al. | Advances, challenges and future directions in web-based GIS, mapping services and applications | |
EP3475847B1 (en) | Statistics server for optimising client-server queries | |
EP2806386A1 (en) | Method and system for automatically indicating an event from files received on a computer server | |
FR3098625A1 (en) | Confidential commercial information distribution system, implementing a computer platform and a USB type memory key capable of communicating with the platform | |
WO2014154742A1 (en) | Method for placing smart objects that store user profiles in communication with one another, and corresponding smart object | |
Ntawanga et al. | An integrated logical context sensor for mobile web applications | |
EP3110109A1 (en) | Method and device for updating the capabilities of an object connected to a communications network | |
WO2022268741A1 (en) | Method and assembly for enabling user terminals to confidentially exchange personal data items with a server platform | |
CN117714479A (en) | Data analysis method and device based on Internet of things equipment and Internet of things equipment | |
CN117171119A (en) | Smart sharing options for populating a shared digital asset library | |
CN114139026A (en) | Method and device for viewing application data | |
EP2355452A1 (en) | Assistance for accessing information located on a content server from a communication terminal | |
WO2010149901A1 (en) | Storage of digital content in a storage system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 12 |
|
ST | Notification of lapse |
Effective date: 20180330 |