Brevet FR2953611A1 — publié le 20110610

-1- La présente invention concerne un procédé de mise à disposition d'une application-cible sur un terminal. On connaît des applications natives, s'exécutant grâce au système d'exploitation du terminal, formant liaison entre de telles applications et les éléments matériels du terminal, un tel système d'exploitation étant par exemple Windows Vista ou Linux. Un procédé de mise à disposition de telles applications peut comprendre une étape de téléchargement de l'application native depuis un serveur suivi d'une étape d'installation de cette application sur le terminal de l'utilisateur. Durant cette étape, les différents fichiers constituant l'application sont notamment stockés dans la mémoire du terminal et un chemin d'accès vers l'application est créé. Un tel procédé est classique mais est peu pratique car il n'est pas transparent pour l'utilisateur, qui doit effectuer de nombreuses opérations pour pouvoir finalement accéder à l'application. Il est également possible que le nombre de ces opérations découragent l'utilisateur et l'entraîne à renoncer au téléchargement de l'application native. On connaît en outre des applications internet, s'exécutant à l'aide d'un navigateur internet, tel que Internet Explorer, Mozilla Firefox ou Google Chrome par exemple et d'une machine virtuelle, telle que Java, Javascript ou Flash, permettant l'exécution de l'application internet alors que les éléments constituant celle-ci ne sont pas stockés sur le terminal. Les éléments constituant celle-ci sont stockés en grande partie sur un serveur externe auquel le terminal peut accéder par le biais d'un réseau internet. Pour utiliser cette application, le terminal doit en permanence communiquer avec le serveur stockant ces éléments. Le procédé de mise à disposition d'une telle application comprend donc généralement une étape d'accès au serveur, accompagnée d'une authentification de l'utilisateur. De telles applications nécessitent un développement complet et coûteux pour être mises à disposition de l'utilisateur, le code des applications natives ne pouvant être réutilisé, et ne sont donc pas disponibles pour tous les types d'applications natives existantes. L'invention permet de fournir une alternative aux applications internet précitées, en fournissant un procédé de mise à disposition peu contraignant pour l'utilisateur, et ce procédé étant applicable pour tous les types d'applications déjà existantes, sans modification substantielle de celles-ci. A cet effet, l'invention a pour objet un procédé de mise à disposition d'une 35 application-cible sur un terminal, comprenant les étapes suivantes : û transfert depuis un serveur vers le terminal d'une application de déploiement, cette application étant une application internet, 2953611 -2- transfert d'au moins un module de l'application-cible depuis un serveur, déclenché par l'application de déploiement, exécution de l'application-cible, déclenchée par l'application de déploiement, interception d'au moins une requête en provenance de l'application-cible 5 Ainsi, l'application de déploiement permet l'exécution de toutes les étapes en vue de l'utilisation de l'application-cible sans aucune intervention de l'utilisateur, notamment son transfert. Cela diminue donc le nombre d'opérations à effectuer par l'utilisateur, ou « nombre de clics » pour obtenir un accès à l'application-cible et augmente donc son intérêt pour l'application-cible. 10 De plus, conserver l'application-cible sur le terminal entre deux utilisations ne se justifie pas toujours, la mise à disposition de celle-ci étant très simple. Celle-ci peut donc être stockée sur le terminal dans l'emplacement de la mémoire du terminal correspondant au cache du navigateur, et, de ce fait, être supprimée automatiquement au bout d'une période de temps prédéterminée. Cela permet ainsi 15 de minimiser les transferts de données lors de la réutilisation de l'application-cible mais il n'est ainsi pas nécessaire d'effectuer une opération spécifique de désinstallation lorsque l'utilisateur ne souhaite plus se servir de l'application-cible. En outre, l'application-cible n'occupe pas de façon inutile de l'espace de stockage dans le terminal. 20 Du fait de l'interception des requêtes, les possibilités de moduler l'utilisation de l'application-cible, pour l'adapter au mieux aux besoins de l'utilisateur, sont plus importantes. Grâce à cette technique, il est par exemple possible de fournir à l'utilisateur, dans un premier temps, une seule portion d'une application-cible puis, lorsque celui-ci le requière, de déclencher le transfert en vue de l'utilisation de 25 modules supplémentaires de l'application-cible. On peut de ce fait optimiser l'utilisation de l'application-cible. L'application de déploiement est une application internet, c'est à dire une application qui s'exécute grâce à une machine virtuelle, telle que Java, et un navigateur internet, ce qui permet à l'utilisateur de se procurer l'application-cible sans 30 avoir à télécharger et installer préalablement une autre application formant l'application de déploiement. Une application de déploiement formée par une application internet est en outre compatible avec tous les systèmes d'exploitation et tous les navigateurs et peut donc être universellement utilisée. Il n'est également pas nécessaire de mettre à jour une telle application qui est mise à jour automatiquement en ligne. Le procédé selon l'invention permet en outre de mettre à disposition de 2953611 -3- l'utilisateur, de façon non contraignante, de nombreuses applications-cibles déjà existantes sans avoir besoin de modifier celles-ci de façon importante, voire sans avoir à les modifier du tout au préalable. Les outils pour mettre celles-ci à disposition sont en effet indépendants de l'application-cible choisie par l'utilisateur. Ces outils 5 permettent en outre la mise à disposition de nombreuses applications-cibles. Le procédé peut également comprendre l'une ou plusieurs des caractéristiques de la liste suivante : le procédé comprend une étape d'exécution d'un intercepteur, déclenchée par l'application de déploiement, cet intercepteur étant apte à intercepter au moins 10 une requête en provenance de l'application-cible, l'exécution de l'intercepteur déclenchant de préférence à son tour celle de l'application-cible. Ainsi, c'est un intercepteur, formant un programme d'ordinateur distinct de l'application de déploiement, qui effectue les interceptions dans l'application-cible, un tel intercepteur pouvant alors être distinct d'une application internet et être une 15 application native, directement en interaction avec le système d'exploitation du terminal, ce qui permet d'effectuer l'interception des requêtes plus aisément à l'aide des techniques connues, le procédé comprend une étape de transfert de l'intercepteur depuis un serveur, déclenchée par l'application de déploiement. L'intercepteur est ainsi 20 transféré sur le terminal sans que l'utilisateur ait besoin d'effectuer une action supplémentaire, le procédé comprend une étape préalable d'actionnement par un utilisateur du terminal d'un lien situé sur une page Web, le transfert d'au moins un module de l'application-cible et/ou de l'intercepteur 25 est précédé d'une étape de vérification effectuée par l'application de déploiement auprès du terminal et/ou d'un serveur. En particulier, l'étape de vérification peut comprendre une étape de vérification des droits d'accès du terminal au module de l'application-cible. L'utilisateur peut ainsi avoir accès à l'application-cible seulement s'il s'est enregistré auprès d'une autorité et/ou s'il 30 a payé pour bénéficier des droits d'accès. On peut également envisager que l'application de déploiement laisse l'accès libre seulement à une portion de l'application-cible, pour permettre un essai de l'application-cible par l'utilisateur. Cette étape de vérification peut également comprendre une étape de comparaison du module à télécharger et du module éventuellement stocké sur 35 le terminal ou une comparaison d'un nom de fichier avec les noms de fichiers transférés sur le terminal. Ainsi, on peut éviter des opérations de transfert 2953611 -4- inutiles, et ne transférer le cas échéant que les mises à jours de l'application-cible et/ou seulement une partie des modules de l'application-cible, 1. le procédé comprend au moins une étape de redirection de la ou d'au moins une requête vers un système d'exploitation du terminal, et/ou vers l'application 5 de déploiement. Ces opérations de redirection sont notamment effectuées par l'intercepteur. le procédé comprend une étape d'interception d'une requête d'affichage de l'application cible et de modification de cette requête pour que l'application cible s'affiche dans une page web, notamment la page web comprenant le lien. 10 Pour obtenir ce résultat, la requête modifiée est redirigée vers le système d'exploitation. Cela permet d'intégrer l'application-cible à un environnement particulier, adapté à l'utilisateur et à ses besoins, par exemple pour améliorer l'esthétisme de l'environnement présenté à l'utilisateur ou pour diffuser à l'utilisateur des offres en rapport avec ses besoins pendant qu'il utilise 15 l'application-cible, l'application de déploiement ayant déjà transféré vers le terminal un module de base de l'application-cible, le procédé comprend une étape d'interception d'une requête d'ouverture d'un fichier n'appartenant pas au module de base de l'application-cible et une étape de transfert du fichier depuis un serveur vers le 20 terminal, ce transfert étant commandé par l'application de déploiement. On ne transfère alors certains fichiers vers le terminal que lorsque ceux-ci sont demandés par l'utilisateur. Par exemple, si ce dernier utilise un traitement de texte, le module de dessin peut ne pas être transféré vers le terminal lors d'une étape de transfert initial puis être transféré vers le terminal uniquement si ce 25 module est demandé par l'utilisateur. Cela permet d'optimiser l'espace de stockage réservé à l'application sur le terminal et à minimiser le temps de transfert nécessaire pour que l'utilisateur puisse commencer à utiliser l'application-cible, le procédé peut également comprendre une étape lors de laquelle on 30 commande la réalisation d'une action de l'application-cible en fonction d'un lien activé sur une page Web. Cela permet une communication de l'application-cible avec son environnement. L'invention a également pour objet un programme d'ordinateur permettant la mise à disposition d'une application-cible sur un terminal, le programme comprenant 35 des instructions logicielles pour: û commander le transfert d'au moins un module de l'application-cible depuis un - 5 serveur sur lequel elle est stockée, commander l'exécution d'un intercepteur apte à intercepter au moins une requête en provenance de l'application-cible, un tel programme formant une application internet. L'invention a également pour objet un dispositif comprenant une mémoire stockant le programme d'ordinateur selon l'invention ainsi qu'un intercepteur apte à intercepter au moins une requête en provenance de l'application-cible. Un tel dispositif est par exemple un terminal, un serveur ou un ensemble de serveurs. Optionnellement, l'application-cible est également stockée dans la mémoire du dispositif. L'invention a également pour objet un système comprenant un terminal relié par un réseau à au moins un serveur ou un ensemble de serveurs formant un dispositif selon l'invention. L'invention sera mieux comprise à la lecture de la description qui va suivre, donnée uniquement à titre d'exemple et faite en se référant aux dessins dans lesquels - la figure 1 représente un système permettant l'exécution d'un procédé selon un mode de réalisation de l'invention, - la figure 2 est un diagramme représentant une initialisation d'un procédé selon un mode de réalisation de l'invention, - les figures 3A et 3B sont des schémas de la structure respective d'une application de déploiement et d'un intercepteur utilisé pour la mise en oeuvre du procédé selon le mode de réalisation de l'invention, - les figures 4 à 6 sont des diagrammes représentant des étapes du procédé se produisant lors de l'utilisation par un utilisateur de l'application-cible. On a représenté sur la figure 1 un système 10 comprenant un terminal 12 et une pluralité de serveurs 14, 16 reliés au terminal par l'intermédiaire d'un réseau 18, tel qu'un réseau internet. Le terminal 12 et les serveurs 14, 16 comprennent chacun des moyens de stockage de données, respectivement 19, 20, 22, tels qu'une mémoire, ainsi que des moyens d'exécution respectivement 24, 25a, 25b, tels qu'un processeur, de tels moyens permettant notamment l'exécution des applications sur ces appareils et la mise en mémoire de certaines données dans les moyens de stockage de données respectifs de chacun de ces appareils. Chacun des éléments du système comporte également des moyens de communication 26, 28a, 28b, avec les autres éléments du système permettant aux divers éléments de communiquer entre eux par le biais du 2953611 -6 réseau. Le terminal 12 comprend également des moyens d'entrée-sortie 30 permettant l'interaction avec un utilisateur. De tels moyens comprennent notamment un clavier, ou une souris, pour permettre à l'utilisateur de commander le terminal et un écran ou 5 un haut-parleur pour permettre à ce dernier de recevoir les informations du terminal. Le terminal 12 comprend un système d'exploitation SE formant interface avec l'utilisateur et permettant d'exécuter toutes les applications natives situées sur le terminal, notamment stockées dans les moyens de stockage de celui-ci. Un tel système d'exploitation est par exemple Windows Vista ou Linux. Le terminal 12 10 comprend également une application native formant « navigateur» NA, qui permet de communiquer avec d'autres entités par le biais du réseau internet. Des navigateurs connus sont par exemple Internet Explorer ou Mozilla Firefox. Le système d'exploitation et le navigateur sont exécutés sur le terminal à l'aide des moyens 24. Le serveur 14 comprend dans ses moyens de stockage une application de 15 déploiement, qui sera détaillée plus loin dans la description et le serveur 16 comprend dans ses moyens de stockage un intercepteur, également décrit plus en détails ci-après, et l'application-cible à laquelle souhaite accéder l'utilisateur. Avant d'être placée dans la mémoire 22 du serveur 16, l'application-cible est paramétrée manuellement pour être adaptée à l'exécution dans le contexte du 20 procédé. La taille de la fenêtre est par exemple paramétrée. Le fichier des paramètres est ensuite enregistré dans la mémoire du serveur 16 avec les autres fichiers relatifs à l'application cible. Les fichiers peuvent être enregistrés sous forme compressée. On va maintenant décrire le procédé de mise à disposition d'une application à destination du terminal 12, un tel procédé étant effectué à l'aide du système tel que 25 décrit. On va tout d'abord décrire l'initialisation de ce procédé. Lors d'une première étape 40, l'utilisateur 32, ayant accès au terminal 12, commande à ce dernier l'affichage d'une page Web permettant d'accéder à l'application-cible. Il effectue cette étape en cliquant sur un lien d'un moteur de recherche affiché à l'aide du navigateur, par exemple, ou en saisissant l'adresse de la 30 page Web à l'aide des moyens d'entrée-sortie 30 dans l'interface du navigateur. Cette page Web est affichée à l'aide d'un navigateur exécuté par le processeur du terminal. Suite à cette étape, le navigateur NA du terminal 12 requière le chargement de la page Web auprès d'un premier serveur, par exemple le serveur 14, lors d'une étape 42. Cette communication auprès du serveur est effectuée à l'aide de moyens de 35 communication 26, 28a du terminal et du serveur et du réseau 18. Le serveur 14 répond à la requête du navigateur NA en lui fournissant la page Web demandée, stockée dans ses moyens de stockage 20, lors d'une étape 44. La page s'affiche sur 2953611 -7- l'écran du terminal 12, lors d'une étape 46, grâce au navigateur qui permet de la présenter à l'utilisateur. Une telle page Web présente généralement un lien pour commander le transfert et l'exécution d'une application-cible, par exemple une application de traitement de 5 texte, un jeu ou une application de tout autre type. Lors d'une étape 48, l'utilisateur qui souhaite utiliser l'application-cible, clique sur le lien et active celui-ci. Le navigateur NA envoie un message au serveur 14 pour lui indiquer que l'utilisateur 32 a activé le lien lors d'une étape 50 et le serveur retourne lors d'une étape 52 un message d'autorisation à destination de l'utilisateur 32, que le terminal 10 restitue à l'utilisateur, lors d'une étape 54. Les étapes 50-54 permettent d'obtenir la confirmation de l'utilisateur prouvant qu'il souhaite bien obtenir l'application-cible et éviter toute opération inutile de mise à disposition de l'application-cible. Si l'utilisateur 32 souhaite toujours accéder à l'application-cible, il active un lien pour signifier son accord, par exemple en cliquant sur un bouton dans l'interface du 15 navigateur, lors d'une étape 56. Le navigateur signifie alors au serveur 14 que l'utilisateur a activé le lien lors d'une étape 58. En réponse, le serveur 14 initie le transfert, vers le terminal 12, d'une application de déploiement AD, lors d'une étape 60. Le navigateur stocke alors une portion de l'application-cible dans les moyens de stockage du terminal 12, dans 20 l'emplacement correspondant à son « cache », qui est une mémoire dans laquelle les fichiers sont stockés de façon temporaire, lors d'une étape 6. Une telle étape est une étape classique en cas de transfert à l'aide du navigateur. Suite à son enregistrement et également de façon classique, le navigateur commande l'exécution de l'application de déploiement sur le terminal 12, lors d'une étape 62. 25 L'application de déploiement AD est une application internet qui s'exécute à l'aide de la machine virtuelle, par exemple Java, une telle machine virtuelle étant installée sur le terminal 12, et du navigateur du terminal 12, lors de l'étape 62. Elle s'exécute plus particulièrement dans le contexte du navigateur. Dans le mode de réalisation décrit, cette application est une applet Java. 30 La structure de l'application selon ce mode de réalisation de l'invention est représentée de façon schématique à la figure 3. Une telle application comprend une unité d'interface avec l'utilisateur 80, apte à présenter une interface à l'utilisateur et à transformer les actions de l'utilisateur sur l'interface en commandes. Cette interface est embarquée dans une page Web, étant donné que l'application s'exécute à l'aide 35 d'un navigateur internet. Elle comprend également une unité 82 de communication avec une autre application, soit un intercepteur IN, qui sera détaillée plus tard, et une unité de communication 84 avec le navigateur et le système d'exploitation, formée par 2953611 -8 une application Java de type connue. Elle comprend en outre des moyens de gestion du cache 86 du navigateur permettant de contrôler la présence de fichiers relatifs à l'application-cible dans le cache du navigateur et des moyens de gestion des transfert 88, dont l'utilité et le 5 fonctionnement seront détaillés plus tard. Une fois l'application de déploiement AD transférée sur le terminal 12, celle-ci envoie, sans intervention de l'utilisateur, un message vers un deuxième serveur 16 pour commander le transfert depuis ce serveur 16 de l'application-cible AC et d'un intercepteur IN vers le terminal, lors d'une étape 64 effectuée par l'intermédiaire du 10 navigateur et des moyens de communication 26. Cette étape est effectuée en particulier par les moyens de gestion des transferts 88 de l'application de déploiement AD, qui indiquent quels sont les fichiers de l'application-cible à transférer depuis le serveur 16 et par l'unité de communication 84 de l'application de déploiement vers le navigateur permettant de transmettre la requête construite par le gestionnaire des 15 transferts au navigateur. En réponse à cette requête, le serveur 16 transfère à la fois l'intercepteur IN et un module de base de l'application-cible formant une portion de l'application-cible vers le terminal lors d'une étape 66. Le module de base de l'application-cible comprend par exemple les fonctions 20 de mise en page du texte dans un traitement de texte, mais pas celles relatives aux dessins ou aux tableaux. L'application-cible AC et l'intercepteur IN sont des applications natives, qui s'exécutent directement grâce au système d'exploitation du terminal 12, grâce auxquels différentes applications telles que le navigateur de celui-ci s'exécute. 25 Le système d'exploitation enregistre, lors d'une étape 68, l'application-cible AC et l'intercepteur IN à l'emplacement correspondant au cache du navigateur dans les moyens de stockage du terminal, de façon classique. On va maintenant décrire la structure de l'intercepteur tel qu'enregistré dans le terminal 12, à l'aide de la figure 3B. Un tel intercepteur comprend une unité 90 de 30 communication avec l'application de déploiement AD, ainsi qu'un exécuteur d'application-cible 92, qui met en place le contexte d'exécution d'une telle application, soit les données permettant l'exécution de l'application-cible. Il comprend également un injecteur 94 permettant de relier de façon connue l'intercepteur à l'application-cible. Enfin, l'intercepteur comprend également des regisseurs 96a, 96b, 96c, permettant de 35 relier une fonction appelée par l'application-cible à une action à exécuter par l'intercepteur. Dans cet exemple, l'intercepteur comprend trois regisseurs : celui des fenêtres 96a, celui des accès aux fichiers de l'application-cible 96b et celui des 2953611 -9 évènements système 96c. On notera que les unités de communication 82, 90 fonctionnent à l'aide de canaux interprocessus connus tels que des sockets, l'application de déploiement et l'intercepteur ne s'exécutant pas dans le même contexte. 5 L'application de déploiement AD commande ensuite l'exécution de l'intercepteur IN lors d'une étape 70, à l'aide de l'unité de communication 82. Une fois son exécution lancée, l'intercepteur IN crée l'environnement d'exécution de l'application-cible lors d'une étape 72. Puis, l'intercepteur commande l'exécution de celle-ci à l'aide de l'unité 92 et s'injecte dans le contexte de l'application-cible lors d'une étape 74, par des 10 techniques connues et à l'aide de l'injecteur 94. L'application-cible est maintenant prête à être utilisée par l'utilisateur. On va maintenant décrire dans les figures 4 à 6 des séquences du procédé selon le mode de réalisation décrit dans la figure 2, lors de l'exécution de l'application-cible. 15 La figure 4 représente plus particulièrement les échanges entre les différents éléments du terminal 12, lors de l'ouverture de l'application-cible. Lors d'une étape 100, l'application-cible AC émet une requête à destination du système d'exploitation SE du terminal 12. Cette requête est une requête auprès du système d'exploitation pour que celui-ci ouvre une fenêtre d'affichage pour l'interface 20 utilisateur de l'application sur l'écran du terminal. Du fait de l'injection de l'intercepteur dans l'application, celui-ci intercepte la requête à destination du système d'exploitation et modifie celle-ci lors d'une étape 102, conformément aux prescriptions du régisseur 96b. L'intercepteur est notamment programmé pour ajouter des détails sur la localisation de la fenêtre d'affichage de 25 l'application-cible, et indiquer que celle-ci doit se trouver dans la page Web affichée par le navigateur et sur laquelle l'utilisateur a activé le lien. L'intercepteur IN transmet ensuite la requête modifiée de l'application-cible AC au système d'exploitation lors d'une étape 104. Le système d'exploitation SE avec l'aide du navigateur procède ensuite lors d'une étape 106 à l'affichage de la fenêtre de 30 l'application-cible AC. Le fait que le paramètre de taille de fenêtre ait été préalablement paramétré manuellement permet d'augmenter le confort de l'utilisateur, car la fenêtre de l'application-cible peut ainsi être de taille adaptée à la taille de l'espace d'affichage dévolu sur la page Web. Un paramétrage préalable de l'application-cible n'est 35 toutefois pas obligatoire. La fenêtre est alors affichée dans la page Web, ce qui permet de relier l'application-cible au site Web distribuant celle-ci et d'afficher des éléments, par 2953611 -10- exemple des éléments commerciaux, que l'utilisateur peut visualiser en même temps qu'il utilise l'application-cible AC. On va maintenant décrire en référence à la figure 5 les échanges et interactions entre les différents éléments du système, lorsque l'utilisateur requière l'utilisation d'un 5 module supplémentaire non enregistré sur les moyens de stockage du terminal. Lors d'une étape 110, suite à la requête de l'utilisateur, l'application-cible AC émet une requête à destination du système d'exploitation SE pour l'ouverture du fichier de l'application-cible AC, ce fichier est non enregistré dans les moyens de stockage du terminal. 10 L'intercepteur IN intercepte la requête et vérifie si ce fichier a déjà été transféré dans le terminal, à l'aide de ces régisseurs, programmés pour ce faire, lors d'une étape 111. Puis, si ce fichier n'a pas déjà été transféré dans le terminal, il transmet la requête lors d'une étape 112 à l'application de déploiement AD à l'aide des unités de communication respectives 82, 90. Dans le cas contraire, la requête est directement 15 transférée au système d'exploitation. Ce cas n'est pas représenté sur la figure 5. Lors d'une étape 114, l'application de déploiement AD vérifie ensuite que le fichier demandé est disponible sur le serveur 16, à l'aide des moyens de gestion du cache 86 disposant d'une liste des fichiers disponibles et en coopération avec le navigateur. 20 Si cela est le cas, il envoie alors, lors d'une étape 116, une requête vers le serveur 16 par l'intermédiaire du navigateur NA pour obtenir un module comprenant le fichier manquant. Cette étape est effectuée par l'application de déploiement AD à l'aide des moyens de gestion de transfert 88 déterminant quels fichiers doivent être transférés depuis le serveur et de l'unité de communication avec le navigateur 82. 25 Lors d'une étape 118, le serveur 16 retourne au terminal 12, notamment au navigateur; le module supplémentaire manquant. Un tel module correspond par exemple à une fonction supplémentaire de l'application-cible. Le navigateur NA enregistre alors le module dans le cache du navigateur, lors d'une étape 120 et émet un message vers l'application de déploiement AD pour lui 30 indiquer que le téléchargement est terminé. L'application de déploiement communique alors avec l'intercepteur pour lui indiquer que le fichier est disponible, lors d'une étape 123. Cette communication est également effectuée par le biais de l'unité de communication 82. L'intercepteur IN transmet alors la requête d'ouverture du fichier au système d'exploitation lors d'une étape 124. Lors d'une étape 125, le système 35 d'exploitation ouvre ensuite le fichier demandé par l'application-cible et répond à l'application-cible AC, lors d'une étape 126. Cette application-cible peut alors répondre à la requête de l'utilisateur et poursuivre son fonctionnement de façon normale. 2953611 - 11 - On va maintenant décrire en référence à la figure 6 les échanges entre différents éléments du terminal 12 lors de la fermeture de l'application-cible AC. Pour fermer l'application-cible, l'utilisateur peut activer un lien de la page Web mise à disposition par le navigateur et affichant l'application-cible. Il peut par exemple 5 cliquer sur une icône représentant une croix dans cette page Web. Lorsque cela se produit, l'application de déploiement AD est informée que le lien a été activé par l'utilisateur, notamment grâce à l'unité d'interface utilisateur 80. L'application de déploiement AD envoie ensuite un message à l'intercepteur IN pour l'informer que le lien a été activé par l'utilisateur, à l'aide de l'unité de communication 10 avec l'intercepteur 84 et lors d'une étape 130. Ensuite, lors d'une étape 132, lorsque l'application-cible envoie une requête de questionnement d'évènement, requête périodique envoyée au système d'exploitation de façon connue, l'intercepteur IN intercepte cette requête. Comme le signal de fermeture de l'application-cible AC a été reçu depuis l'application de déploiement AD, 15 l'intercepteur IN répond alors directement à l'application-cible par la commande « fermer l'application », conformément à ce qui est prescrit par l'un de ses régisseurs. Un tel procédé permet donc d'utiliser l'application-cible de façon simple pour l'utilisateur, sans pour autant avoir besoin de modifier le code relatif à l'application-cible. 20 On notera que l'invention n'est pas limitée à ce qui a été décrit ci-dessus. Par exemple, le système peut ne pas être conforme à ce qui a été décrit ci-dessus. Le nombre de serveurs peut par exemple être différent de ce qui a été décrit, l'application de déploiement, l'intercepteur et l'application-cible pouvant par exemple être mis à disposition sur un même serveur. 25 Le réseau peut également être un réseau local et non un réseau internet. En outre, l'application de déploiement peut être différente de ce qui a été décrit. Elle peut par exemple ne pas comprendre les moyens de gestion de cache. En outre, elle peut comprendre des modules supplémentaires de ce qui a été décrit, par exemple un module permettant la redirection de l'utilisateur vers un site Web sur 30 lequel il doit s'identifier lorsqu'il compte utiliser une fonction particulière de l'application-cible ou un module permettant de vérifier que les droits d'accès de l'utilisateur sont encore en vigueur dans ce même cas. Elle peut également comprendre des moyens de gestion des mises à jour de l'application aptes à comparer les fichiers stockés dans le cache du navigateur et les 35 fichiers se trouvant sur le serveur et à vérifier s'il est nécessaire de transférer vers le terminal des fichiers mis à jour relativement aux fichiers que celui-ci possède d'ores et déjà. 2953611 -12- L'intercepteur n'est pas non plus limité à ce qui a été décrit. Il peut notamment comprendre des régisseurs supplémentaires lorsqu'il est nécessaire d'intercepter d'autres fonctions de l'application que celles d'ores et déjà décrites. Le procédé n'est pas non plus limité à ce qui a été décrit. Comme cela a été 5 précisé plus haut, il est possible que l'intercepteur soit apte à modifier d'autres fonctions que celles décrites ou uniquement une fonction parmi celles décrites ou parmi d'autres. L'intercepteur peut intercepter toutes les requêtes issues de l'application-cible en retransmettant certaines fonctions vers le système d'exploitation sans les modifier ou intercepter seulement certaines requêtes. 10 II est également possible que l'application de déploiement et/ou l'intercepteur et/ou l'application-cible ne soit pas mise en mémoire dans le cache du navigateur. En outre, l'intercepteur peut ne pas être transféré vers le terminal à chaque initialisation de l'application-cible mais l'application de déploiement peut tout d'abord vérifier s'il est stocké sur le terminal. 15 De même, l'intercepteur et l'application de déploiement ne sont pas forcément transmis lors de la même étape. Toute l'application-cible peut en revanche être transmise lors d'une seule et même étape. Les étapes 50 à 54 sont également optionnelles, même si elles sont préférentielles pour garantir l'accord de l'utilisateur. 20 REVENDICATIONS1. Procédé de mise à disposition d'une application cible (AC) sur un terminal (12), comprenant les étapes suivantes : transfert (60) depuis un serveur (14) vers le terminal d'une application de déploiement (AD), cette application étant une application internet, transfert (66) d'au moins un module de l'application cible depuis un serveur (16), déclenché par l'application de déploiement, exécution (70, 74) de l'application-cible (AC), déclenchée par l'application de déploiement, interception (100, 110, 132) d'au moins une requête en provenance de l'application-cible. 2. Procédé selon la revendication précédente, comprenant une étape (70) d'exécution d'un intercepteur (IN), déclenchée par l'application de déploiement, cet intercepteur étant apte à intercepter au moins une requête en provenance de l'application cible, l'exécution de l'intercepteur déclenchant de préférence à son tour l'étape (70) d'exécution de l'application-cible (AC). 3. Procédé selon la revendication précédente, comprenant une étape (66) de transfert de l'intercepteur (IN) depuis un serveur (16), déclenchée par l'application de déploiement (AD). 4. Procédé selon l'une quelconque des revendications précédentes, dans lequel le transfert (118) d'au moins un module de l'application-cible et/ou de l'intercepteur est précédé d'une étape de vérification (114) de l'application de déploiement (AD) auprès du terminal (12) et/ou d'un serveur. 5. Procédé selon l'une quelconque des revendications précédentes, comprenant au moins une étape (112, 104) de redirection de la ou d'au moins une requête de l'application-cible (AC) vers un système d'exploitation (SE) du terminal (12), et/ou vers l'application de déploiement (AD). 6. Procédé selon la revendication précédente, dans lequel, l'application de déploiement (AD) ayant déjà transféré vers le terminal (12) un module de base de l'application-cible (AC), le procédé comprend une étape d'interception (110) d'une requête d'ouverture d'un fichier n'appartenant pas au module de base de l'application-cible et une étape de transfert (118) du fichier depuis un serveur vers le terminal, ce transfert étant commandé par l'application de déploiement (AD). 7. Procédé selon l'une quelconque des revendications précédentes, dans 35 lequel le procédé comprend une étape d'interception (100) d'une requête d'affichage de l'application cible et une étape de modification (102) de cette requête pour que 2953611 -14- l'application-cible (AC) s'affiche dans une page web, notamment la page web comprenant le lien. 8. Procédé selon l'une quelconque des revendications précédentes, comprenant une étape de réalisation (134) d'une action en fonction d'un lien activé 5 par un utilisateur dans une page Web. 9. Programme d'ordinateur permettant la mise à disposition d'une application-cible sur un terminal, le programme comprenant des instructions logicielles pour: commander le transfert d'au moins un module de l'application cible depuis un 10 serveur sur le terminal, commander l'exécution d'un intercepteur apte à intercepter au moins une requête en provenance de l'application-cible, un tel programme formant une application internet. 10. Dispositif comprenant une mémoire stockant le programme d'ordinateur 15 selon la revendication précédente ainsi qu'un intercepteur apte à intercepter au moins une requête en provenance de l'application-cible.