1 PROCEDE DE GENERATION ET MISE A DISPOSITION D'UNE INTERFACE UTILISATEUR AUTO-ADAPTABLE DOMAINE TECHNIQUE DE L'INVENTION [0001]La présente invention concerne un système de génération et de lecture d'objets hybrides procéduraux. Elle concerne également un système d'interface utilisateur auto-adaptable en fonction du type d'objet à fournir. L'invention concerne par ailleurs les procédés correspondants.
ETAT DE LA TECHNIQUE ANTERIEURE [0002]La demande de brevet W02011123122 propose une interface utilisateur contextuelle. Cette interface dite contextuelle est destinée à un système informatique comportant une base de données et un processeur. Une pluralité d'activités sont associées à une demande et sont mémorisées dans la base de données. De plus, un certain nombre d'activités sont affichées sur l'interface utilisateur. Après réception d'une sollicitation d'une activité souhaitée par un utilisateur, le processeur détermine l'application associée à l'activité souhaitée. Des données d'identification permettent de rendre l'application accessible. L'interface utilisateur contextuelle est configurée pour lancer automatiquement l'application par les données identifiées. Une telle interface permet de prendre en compte les activités prévues pour certaines applications correspondantes préalablement sélectionnées et intégrées au système. [0003]Le document US20120259868 décrit un système de commande permettant de fournir une interface efficace pour les utilisateurs de technologies d'assistance, en se focalisant sur les différentes tâches qu'une application peut effectuer plutôt que sur l'interface générale de l'application pertinente. L'interface de commande fournit un mécanisme de recherche qui permet de rechercher des fonctions spécifiques liées et met à jour les résultats de la recherche. L'interface de Atome inter auto FR div 3Ô33424 2 commande peut également prioriser les résultats issus de la recherche en se basant sur des données de contexte, en incluant les principaux termes de recherche, les principales actions, ainsi que le contexte d'interaction entre l'utilisateur et le programme de l'application. L'interface de commande permet également à 5 l'utilisateur de filtrer les fonctions et fonctionnalités présentées à travers l'interface de commande, en tenant compte du type d'activités effectuées par l'utilisateur. Le système décrit dans ce document est adapté aux applications de recherche de données. 10 [0004]La demande US20120272169 concerne un procédé permettant une interaction avec un utilisateur. Le procédé comprend la réception d'informations provenant d'un utilisateur vers un outil de configuration. L'information est liée à une demande faite par un utilisateur afin de mettre en oeuvre une interface utilisateur pour une demande de service bilatérale spéciale. La mise en oeuvre est effectuée en 15 utilisant les informations reçues (par exemple le nom d'enregistrement d'un passager) et l'ajout d'une interface utilisateur adaptée. Ce système est par conséquent configuré afin de réaliser différentes étapes avec l'utilisation d'au moins un processeur d'informations. Le système décrit dans cette demande est spécifiquement conçu pour une application de réservation de billets de transport. 20 [0005]Le document US20130326376 propose une interface utilisateur contextuelle. Cette interface est basée sur une analyse de contexte dans lequel un utilisateur interagit avec l'interface, qui optimise automatiquement le contexte. Les modes de commande ou de contrôle qui sont sélectionnés par l'utilisateur, peuvent en partie 25 définir le contexte. Des exemples de modes de contrôle peuvent être les commandes audio, l'utilisation de dispositifs d'accompagnement, l'utilisation de dispositifs de contrôle dédié, tels que les contrôleurs de jeu et les télécommandes. Les différents dispositifs d'entrée sont conçus pour des tâches différentes. Cependant, un utilisateur va souvent essayer d'effectuer une tâche à l'aide d'une 30 entrée de commande qui n'est pas adaptée à la tâche. Différents modes de réalisation de cette invention peuvent permettre de modifier les caractéristiques de l'interface utilisateur afin de permettre à l'utilisateur d'effectuer plus facilement des Atome inter auto FR div 3033424 3 tâches à l'aide du dispositif d'entrée. Le système ici décrit est prévu afin d'adapter l'interface en fonction de l'environnement de l'utilisateur. [0006]La demande US20130151938 décrit des systèmes et méthodes de 5 programmes d'ordinateur et plus précisément les éléments relatifs à l'ordre et à la composition des éléments de l'écran de l'interface utilisateur. Les différents modes de réalisation de l'invention sont l'utilisation de données historiques et/ou l'utilisation de données contextuelles, qui permettent d'augmenter, réorganiser ou reconfigurer les menus et/ou flux d'écran et d'ajouter, cacher ou supprimer le contenu et les 10 fonctionnalités pour les utilisateurs. Les ajustements de flux d'écran sont basés sur les données historiques et/ou contextuelles relevées. Les ajustements formulés facilitent l'accès plus pertinent à des éléments spécifiques de l'interface utilisateur dans un menu d'éléments identifiés pertinents de l'interface utilisateur. Le flux de l'écran est réglé conformément aux ajustements formulés pour faciliter un accès plus 15 approprié aux éléments spécifiques de l'interface utilisateur. Le système est conçu sur la base des données historiques de l'utilisateur. [0007]Un autre exemple est décrit dans le document FR2927217. Ce document propose un procédé de communication exécuté par un terminal mobile interactif 20 dans son environnement. Ce terminal permet de commander de façon simplifiée des appareils environnants notamment grâce à une étape de détection, par le terminal mobile, d'au moins un appareil communiquant avec le terminal, par le second composant de communication, comprenant la mémorisation d'un identifiant de cet appareil. La commande est permise ensuite par une étape de consultation d'une 25 bibliothèque d'interfaces logicielles du terminal mobile, puis d'activation d'au moins une des interfaces logicielles correspondante à une référence associée au terminal et d'association de cette interface logicielle à l'identifiant de l'appareil distant. Le procédé prévoit enfin une étape d'affichage, en fonction d'au moins l'interface activée, d'un menu de commande et d'information, activable par l'utilisateur du 30 terminal mobile. L'interface est ici conçue et adaptée pour un appareil de télécommunication tel qu'un téléphone cellulaire. [0008]La demande FR2853116 décrit une interface conçue pour le dialogue entre un utilisateur et une borne interactive, notamment un horodateur pour le Atome inter auto FR div 3033424 4 stationnement d'un véhicule automobile, du type comportant au moins un organe de sélection pour permettre à l'utilisateur de choisir la valeur d'au moins un paramètre parmi une liste de valeurs associée, un organe de validation pour permettre à l'utilisateur de valider son choix, un organe d'annulation pour permettre à l'utilisateur 5 d'annuler son choix, et un écran d'affichage pour permettre à l'utilisateur de visualiser la valeur du paramètre, et du type dans lequel la borne interactive effectue une opération déterminée en fonction du choix du paramètre, dans lequel l'organe de sélection forme aussi l'organe de validation. Cette interface est par conséquent conçue et adaptée à un appareil tel qu'une borne interactive, par exemple une borne 10 de péage et stationnement. [0009]Le document FR2991077 concerne un procédé de traitement d'une saisie en langage naturel comprenant plusieurs étapes. La première étape est la saisie d'une phrase via une interface de saisie d'un équipement informatique. La deuxième étape 15 est le découpage, par des moyens de traitement de l'équipement de la phrase, afin d'en extraire une pluralité d'entités sémantiques étant identifiées comme une action, et les autres étant identifiées comme des valeurs d'au moins un attribut associé à l'action identifiée. La troisième étape consiste en la proposition d'une valeur par les moyens de traitement pour au moins un attribut associé à l'action pour laquelle 20 aucune valeur n'a encore été identifiée et/ou proposée, en fonction des valeurs déjà identifiées et/ou proposées et d'éléments contextuels dont dispose l'équipement. La dernière étape concerne la validation, par l'utilisateur, des solutions identifiées et/ou proposées. L'invention concerne en outre un programme d'ordinateur. Le procédé décrit est particulièrement adapté à des applications spécifiquement conçues pour 25 recevoir des données à enregistrer, tel qu'un répertoire téléphonique, un agenda, etc... [0010]Aucun des système ou procédé préalablement décrit n'est prévu pour constituer un système susceptible de traiter de façon simple plusieurs types d'objets.
30 Les systèmes sont spécifiquement prévus en fonctions de tâches ou d'objets précis. [0011]Pour pallier ces différents inconvénients, l'invention prévoit différents moyens techniques. Atome inter auto FR div 3 d33424 5 EXPOSE DE L'INVENTION 5 [0012] Tout d'abord, un premier objet de l'invention consiste à prévoir un système de génération et de lecture d'objets permettant à un utilisateur de travailler sur des objets sans devoir se préoccuper du type d'objet concerné et s'il a à sa disposition le logiciel dédié (traitement de texte pour un objet texte, tableur pour du calcul, 10 traitement d'image pour une image, etc). [0013]Encore un autre objet consiste à prévoir un système permettant de modifier un objet à tout moment en remontant sans restriction dans la chaîne des ordres ayant permis de le générer ou modifier, évitant ainsi de devoir refaire tout ou partie 15 de cet objet. [0014] Un autre objet de l'invention consiste à prévoir une interface utilisateur simple, standard et universelle, peu importe le type d'objet en cours de travail. 20 [0015]Pour ce faire, l'invention prévoit un procédé de génération et mise à disposition d'une interface utilisateur auto-adaptable en fonction du type d'objet en cours de travail, ledit type d'objet étant compris parmi : image, texte, son, vidéo, paramètre physique, paramètre de machine, paramètre d'outil, considérés seuls ou en combinaison, dans lequel un module interface utilisateur génère et met à 25 disposition d'un utilisateur sur un périphérique visuel une interface d'un générateur d'ordres auto-adaptable en fonction dudit type d'objet à traiter. [0016]De manière avantageuse, le procédé comprend également les étapes suivantes, dans lesquelles : 30 - un moteur d'hybridation d'objets procéduraux reçoit les données de référence d'une pluralité d'objets inter-reliés et prévoit la génération de ces objets ; - un moteur de génération d'objet procédural reçoit les données des objets à générer, et pour chacun des objets, reçoit les données d'enchaînement d'ordres, des ordres correspondants, des données de contenus d'objets correspondants afin 35 de générer l'objet défini par ces éléments ; Atome inter auto FR div 3033424 6 - le moteur d'hybridation effectue l'hybridation des objets procéduraux obtenus ; - un moteur de rendu effectue le rendu de l'objet hybride obtenu à des fins de mise à disposition de l'utilisateur. 5 [0017]Egalement de manière avantageuse, le procédé comprend également une étape dans laquelle, suite à une modification d'un objet, le moteur hybride, en fonction des références de cet objet, affecte les modifications aux objets hybrides auxquels l'objet est lié par référence. 10 [0018]Selon encore un mode de réalisation avantageux, le procédé comprend également une étape dans laquelle un module de retour d'enchaînements permet à un utilisateur de sélectionner un enchaînement antérieur d'un objet, afin que le moteur procédural d'objet adapte l'objet en cours en fonction de l'enchaînement antérieur sélectionné par l'utilisateur.
15 DESCRIPTION DES FIGURES [0019]Tous les détails de réalisation sont donnés dans la description qui suit, 20 complétée par les figures 1 à 4, présentées uniquement à des fins d'exemples non limitatifs, et dans lesquelles : - la figure 1 est une représentation schématique d'un exemple de système de génération et de lecture d'objets hybrides procéduraux selon l'invention ; - la figure 2 est une représentation schématique d'un exemple de système 25 d'interface utilisateur auto-adaptable en fonction du type d'objet à fournir selon l'invention; - la figure 3 est un organigramme fonctionnel illustrant les étapes phares d'un exemple de procédé de génération et de lecture d'objets hybrides procéduraux selon l'invention ; 30 - la figure 4 est un organigramme fonctionnel illustrant les étapes phares d'un exemple de procédé de génération et mise à disposition d'une interface utilisateur auto-adaptable en fonction du type d'objet à fournir selon l'invention. Atome inter auto FR div 3033424 7 DESCRIPTION DETAILLEE DE L'INVENTION Définitions : 5 [0020]Dans le présent document, par le terme « objet », on entend un élément complexe résultant d'une suite d'opérations ou enchaînement d'ordres appliqués à des données de base et des paramètres d'objet, le résultat étant obtenu par la mise à disposition de la suite d'opérations par un moteur procédural. 10 [0021]Par « ordre », on entend une instruction ou une suite d'instructions participant à la génération ou modification d'un objet, avec un effet direct sur ce dernier. En outre, un « enchaînement » d'ordres exécutables par un moteur procédural permet de générer un objet. [0022]Par « fonction », on entend une ou plusieurs instructions agissant au niveau 15 de l'interface utilisateur, mais sans effet sur la génération ou modification de l'objet en tant que tel. [0023]Par « objet hybride », on entend un objet complexe ou multiple constitué d'une pluralité d'objets reliés entre eux, sur le plan procédural, par au moins une référence et, sur le plan visuel, par un agencement dans lequel les objets coopèrent 20 entre eux. [0024]Une des particularités du présent système concerne la façon de conserver la totalité des ordres et les enchaînements de ces ordres plutôt que les objets eux-mêmes. [0025] De cette façon, les objets et combinaisons d'objets sont constamment mis en 25 relation avec les évolutions d'enchaînements et évoluent simultanément. Le traditionnel module de stockage des objets, avec toutes les données correspondant à l'état d'un objet à un instant donné, est avantageusement supprimé ou dimensionné de façon minimaliste uniquement dans le but de conserver des objets susceptibles d'être transmis à d'autres systèmes. Atome inter auto FR div 3033424 8 [0026]Si un objet apparaît dans une pluralité de combinaisons, il évolue automatiquement dans chacune de ces combinaisons. En fonction des autorisations, un objet ou une combinaison peut évoluer. En outre, dans le cas où plusieurs utilisateurs travaillent sur un objet unique traité sur un système centralisé, les 5 modifications et évolutions effectuées par l'un ou l'autre des utilisateurs sont prises en compte par tous les autres. [0027]La figure 1 illustre un exemple de réalisation d'un système 20 de génération et de lecture d'objets hybrides procéduraux (comprenant par exemple des données d'images, de textes, de sons, de vidéos, de paramètres physiques, de machines, 10 d'outils, etc, seuls ou en combinaison). Le système comprend une pluralité de module mémoires : - un module d'ordres 21, pour conserver l'ensemble des ordres mis en oeuvre pour créer ou modifier un objet, - un module d'enchaînements 22, en relation avec le module d'ordres, pour 15 conserver l'ensemble des enchaînements d'ordres pour chaque objet, - un module de données de contenu d'objets 23, pour conserver les éléments de contenu distincts des ordres tels que les caractères et chiffres pour un objet texte, les données d'images, les contenus sonores, etc. - un module de références 24, pour conserver les références entre les objets, 20 permettant de générer des ensembles hybrides. [0028]Un moteur procédural 25 d'objets est prévu afin de générer les objets correspondants à un enchaînement d'ordres appliqués à des contenus d'objet. [0029]Un moteur hybride 26, également procédural, est prévu afin de générer les ensembles hybrides en combinant certains objets en fonction des références 25 éventuelles entre certains objets. [0030]Un moteur de rendu 27 est prévu afin de mettre à disposition d'un utilisateur dans un format visualisable une pluralité d'objets hybrides générés par le moteur hybride. [0031]Un module de reconnaissance 32 du type d'objet est prévu afin d'identifier le 30 type d'objet sélectionné par l'utilisateur. Les données de type d'objet sont fournies au générateur d'ordres auto-adaptable 33, prévu pour fournir et mettre en oeuvre les Atome inter auto FR div 3033424 9 ordres utiles à la construction ou modification des objets en fonctions des souhaits de l'utilisateur. Le générateur d'ordre 33 reçoit du module de reconnaissance 32 les données de type d'objet. En fonction de ces données, le générateur d'ordres 33 met à disposition de l'utilisateur des ordres susceptibles d'être appliqués sur l'objet en 5 question. Par exemple, pour un objet texte, les ordres peuvent porter sur l'ajustement du format des caractères, pour un objet image, les ordres peuvent porter sur la modification des données de coloration, de teinte, de netteté, etc. [0032]Un décrypteur 30 est prévu afin de déterminer le type d'élément reçu d'une application en cours de travail. Le décrypteur permet de trier les données en 10 provenance du générateur d'ordres, afin de diriger les données à conserver vers le module mémoire adapté au type de donnée. Le décrypteur reconnaît les données reçues du générateur d'ordres 33, par exemple les données de contenu d'objet, les ordres, les références entre des objets, etc. [0033] La figure 2 illustre un exemple de mise en oeuvre d'une interface utilisateur 10 15 auto-adaptable selon l'invention. Une zone 11 d'objets actifs permet de disposer les objets en cours de travail. Dans l'exemple illustré, les objets A, B, C et D formant un objet hybride sont présents sur la zone d'objets actifs. L'objet E, autonome, est également présent. Un générateur d'ordres auto-adaptable 12 est mis à disposition de l'utilisateur. Dans l'exemple illustré, le générateur d'ordres auto-adaptable 12 met 20 à disposition de l'utilisateur une zone de sélection 16 et une pluralité de fonctions, comme par exemple des fonctions de recherche 13, de classement 15, de déplacement 18, de fermeture 19, de retour 17, et un ou plusieurs ordres 14. Les ordres 14 mis à disposition dépendent du type d'objet en cours de travail. [0034] La figure 3 illustre les principales étapes pour générer et/ou modifier un objet 25 après lecture des données utiles à cet effet. Le moteur procédural 25 d'objet effectue la lecture des données requises. A l'étape 50, les données d'enchaînements sont lues. A l'étape 51, les données d'ordres sont lues, puis les données de contenu d'objets sont lues à l'étape 52. Le moteur procédural 25 d'objet peut alors générer l'objet correspondant (étape 53). A l'étape 54, le moteur hybride 30 26 reçoit les données des références susceptibles de concerner le ou les objets en cours afin de procéder au jumelage ou hybridation (étape 55) des objets inter-reliés Atome inter auto FR div 3033424 10 entre eux. Le moteur de rendu 27 peut ensuite effectuer le rendu correspondant à l'étape 56, avec le ou les objets, hybrides ou non. L'affichage des objets rendus est effectué à l'étape 57. La carte graphique 28 est typiquement sollicitée pour cette dernière opération. La figure 2 illustre un exemple de mise en oeuvre dans lequel 5 une pluralité d'objets A, B, C, D et E sont rendus et affichés. Les objets A, B, C et D sont inter-reliés et forment un objet hybride, tandis que l'objet E est autonome, sans référence à d'autres objets. [0035]La figure 4 illustre les principales étapes permettant de créer et de mettre à jour un objet à l'aide d'un outil auto-adaptable selon l'invention. Une interface 10 utilisateur 10 telle que celle illustrée à titre d'exemple à la figure 2 est mise à disposition de l'utilisateur. La zone de sélection 16 permet à l'utilisateur de sélectionner un objet. A l'étape 40, la sélection effectuée par l'utilisateur est reçue par le générateur d'ordres auto-adaptable 33. Ce dernier met ensuite à disposition de l'utilisateur un ou plusieurs ordres susceptibles d'être exécutés (étape 41).
15 L'utilisateur, en fonction des besoins et du contexte, sélectionne un ordre qui est ensuite appliqué (étape 42) à un ou plusieurs objets préalablement sélectionnés et en cours de travail. L'étape 43 concerne la génération ou modification de l'objet en fonction de l'ordre appliqué par le moteur procédural 25 d'objet. Le module de reconnaissance de type d'objet 32 reçoit les données correspondantes de 20 génération/modification à l'étape 44 et décrypte ou détecte (étape 45) le type de données concernées, comme par exemple des données d'ordre, d'enchaînement, de contenu d'objet ou de référence. Le module de reconnaissance de type d'objet 32 effectue ensuite un routage des données vers les modules correspondants (étape 46), pour sauvegarde des données par les modules mémoires concernés à l'étape 25 47. [0036]De façon classique, le système selon l'invention utilise les organes fonctionnels de l'ordinateur de l'utilisateur, par exemple le processeur 34 et/ou la carte graphique 28, et une mémoire 35 pourvus des instructions de commande et de calcul appropriées. Selon diverses variantes de réalisation, les moyens de calcul, les 30 divers modules fonctionnels et de stockage peuvent être partiellement combinés ou centralisés pour tous les modules ou encore être agencés de façon externe, avec connexion aux différents modules. Atome inter auto FR div 3033424 11 Numéros de référence employés sur les figures (sauf étapes de procédé) 10 Interface utilisateur 11 Zone d'objets actifs 12 Interface de générateur d'ordres auto-adaptable 13 Zone de fonction recherche 14 Zone d'ordres 15 Zone de classement 16 Zone de sélection 17 Zone de retour 18 Zone de déplacement 19 Zone de fermeture 20 Système de génération et de lecture d'objets hybrides procéduraux 21 Module de stockage d'ordres 22 Module de stockage d'enchaînements 23 Module de stockage de contenu d'objets 24 Module de stockage de référence 25 Moteur procédural d'objets 26 Moteur hybride 27 Moteur de rendu 28 Carte graphique 29 Périphérique visuel 30 Décrypteur 31 Module interface 32 Module de reconnaissance de type d'objet 33 Générateur d'ordres auto-adaptable 34 Microprocesseur Module instructions de mise en oeuvre Atome inter auto FR div