Brevet FR2976694A1 — publié le 20121221

Procédé et dispositif d'aide à la programmation d'une application configurable et d'une application de configuration. Domaine de l'invention L'invention concerne le domaine de la programmation informatique. Elle concerne plus précisément un procédé et un dispositif d'aide à la programmation d'une application configurable et d'une application de configuration. Art antérieur Une application logicielle configurable est une application dont certaines propriétés peuvent être définies par un utilisateur. Il est par exemple possible de configurer une propriété graphique telle qu'une image à afficher en image de fond de l'application, la couleur de fond de l'application ou la couleur du texte. La configuration peut aussi concerner la valeur d'une variable utilisée par l'application : par exemple une adresse de courrier électronique à laquelle doivent être envoyés des messages émis par l'application. Afin de proposer un module de configuration permettant de configurer une application logicielle, les solutions de l'état de l'art utilisent en général un langage de programmation. Grâce au langage de programmation, un développeur de logiciel définit alors une interface homme-machine (IHM) de configuration de l'application logicielle à partir d'une application de configuration. Le développeur doit déclarer les propriétés et/ou variables de l'application qui seront configurables, programmer les sources de configuration de l'application de configuration qui seront utilisées par le module de configuration et programmer le lien entre les sources de configuration du module de configuration et les propriétés configurables de l'application à configurer. Certains langages de programmation proposent des outils qui facilitent la liaison entre ces données. Par exemple, le langage XAML (pour eXtensible Application Markup Language en anglais) développé par la société Microsoft ou le langage MXML (pour Macromedia eXtensible Markup Language en anglais) de la société Adobe sont des langages basés sur le langage XML (pour eXtensible Markup Language en anglais) qui permettent de lier une valeur de configuration à une propriété configurable par une déclaration dans le code XML qui décrit l'interface graphique de l'application à configurer. L'environnement de développement intégré XCode de la société Apple propose également un mécanisme appelé "Cocoa Bindings" qui permet de générer le code de l'application de configuration pour lier les changements de valeur de configuration à une propriété de l'application à configurer à partir de la déclaration de la liaison entre la valeur de configuration et la propriété configurable. Inconvénient de l'art antérieur Les solutions proposées par l'état de l'art nécessitent de l'utilisateur une connaissance et une maîtrise du langage de programmation utilisé pour programmer l'IHM de configuration ainsi que l'application de configuration. Le travail du développeur peut ainsi être long et complexe. Le nombre et le type des valeurs de configuration utilisables par un développeur peuvent aussi créer des sources d'erreur pour le développeur qui peut associer une valeur de configuration d'un type incompatible avec le type de la propriété configurable ou utiliser des identifiants de valeur de configuration incorrects lors de la programmation de la liaison. 1 0 Exposé de l'invention Un des buts de l'invention est d'apporter des améliorations par rapport à l'état de la technique. Elle propose à cet effet un procédé d'aide à la programmation d'une application configurable, à partir d'une application de configuration. L'application de configuration comprend au moins une source de configuration. L'application configurable comprend au moins une propriété configurable. 15 Le procédé comprend : - une étape d'extraction d'un groupe de sources de configuration de l'application de configuration, et pour la au moins une propriété configurable : - une étape d'affichage d'au moins une partie du groupe de sources de configuration, définie en fonction de l'application configurable, et, - une étape d'association à la au moins une propriété configurable d'une source de configuration choisie parmi les sources de configuration contenues dans la au moins une partie définie du groupe de sources de configuration, l'association de la source de configuration choisie à la au moins une propriété configurable permettant de compléter la programmation de l'application configurable et de l'application de configuration. Le procédé permet ainsi de compléter de manière automatique le programme d'une application configurable et celui d'une application de configuration permettant de configurer l'application configurable. Le procédé selon l'invention propose une programmation automatique et simple pour 30 un utilisateur qui n'a pas besoin d'écrire la totalité du code source pour définir l'application configurable ou l'application de configuration. Le procédé selon l'invention permet également d'éviter les erreurs de saisies d'identifiant des sources de configuration ou des propriétés configurables lors de la programmation de l'application configurable et de l'application de configuration. 35 De plus, grâce au procédé selon l'invention, l'application configurable peut être programmée à partir de n'importe quelle application de configuration programmée dans un langage interprétable par le procédé. L'application de configuration est analysée afin d'extraire les sources de configuration proposées par l'application de configuration. - 2 20 25 -3- Le procédé décrit selon l'invention permet de compléter la programmation de l'application de configuration en générant automatiquement le code source de l'application de configuration permettant par exemple d'assurer la persistance des valeurs saisies par un utilisateur lors de la configuration de l'application configurable. Les différents modes ou caractéristiques de réalisation mentionnés ci-après peuvent être ajoutés indépendamment ou en combinaison les uns avec les autres, aux étapes du procédé défini ci-dessus. Selon un mode particulier de réalisation de l'invention, une propriété configurable de l'application configurable correspond à une propriété d'un composant graphique ou à une variable de l'application configurable. Ainsi, le procédé selon l'invention permet de programmer la configuration de tous les types d'éléments composants l'application configurable. Selon un autre mode particulier de réalisation de l'invention, la au moins une propriété configurable fait partie d'un groupe de propriétés associées à un élément de l'application configurable obtenu par une étape préalable d'analyse de l'application configurable permettant d'identifier les éléments et les propriétés desdits éléments de l'application configurable, susceptibles d'être configurés. Ainsi, le procédé selon l'invention permet de rendre configurable n'importe quelle application programmée dans un langage interprétable par le procédé. Selon un autre mode particulier de réalisation de l'invention, la au moins une partie définie des sources de configuration est obtenue par une étape de sélection d'un sous-groupe de sources de configuration compatibles avec la au moins une propriété configurable parmi le-groupe de sources de configuration extrait, la sélection étant effectuée à partir d'une correspondance entre le type de la propriété configurable et le type des sources de configuration du groupe. Ainsi, le procédé selon l'invention permet à un utilisateur d'éviter les erreurs de type lors de l'étape d'association d'une source de configuration à une propriété configurable. Selon un autre mode particulier de réalisation de l'invention, le procédé selon l'invention comprend une étape d'affichage d'au moins une propriété configurable d'au moins un élément configurable de l'application configurable, l'étape d'affichage étant effectuée suite à la sélection de l'élément configurable affiché sur une interface graphique affichant les éléments de l'application configurable. L'utilisateur peut ainsi sélectionner les propriétés de l'application configurable qu'il veut rendre configurable. Selon un autre mode particulier de réalisation de l'invention, l'application de configuration est comprise dans l'application configurable. Ainsi, la configuration de l'application configurable par un utilisateur est facilitée. L'invention concerne également un dispositif d'aide à la programmation d'une application configurable, à partir d'une application de configuration. Le dispositif comprend: - des moyens d'extraction d'un groupe de sources de configuration de l'application de configuration, - des moyens d'affichage d'au moins une partie du groupe de sources de configuration, définie en fonction de l'application configurable, - 4 - des moyens d'association à la au moins une propriété configurable d'une source de configuration choisie parmi les sources de configuration contenues dans la au moins une partie définie du groupe extrait, l'association de la source de configuration choisie à la au moins une propriété configurable permettant de compléter la programmation de l'application configurable et de l'application de configuration. L'invention concerne aussi un programme d'ordinateur comportant des instructions pour l'exécution du procédé selon l'un quelconque des modes particuliers de réalisation cités ci-dessus lorsque le programme est exécuté par un processeur. L'invention concerne aussi un support d'enregistrement lisible par un processeur sur lequel est enregistré un programme comportant des instructions pour l'exécution du procédé selon l'un quelconque des modes particuliers de réalisation cités ci-dessus. Le dispositif, le programme et le support d'informations présentent des avantages analogues à ceux du procédé selon l'invention. Liste des figures D'autres avantages et caractéristiques de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation particulier de l'invention, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels: - la figure 1 illustre des étapes du procédé d'aide à la programmation selon un mode particulier de réalisation de l'invention, - la figure 2 représente de manière schématique un exemple d'une interface graphique d'une application configurable selon un mode particulier de réalisation de l'invention, - la figure 3 représente de manière schématique un exemple d'une interface graphique d'une application de configuration selon un mode particulier de réalisation de l'invention, - la figure 4A représente de manière schématique un exemple d'une interface graphique utilisée dans la mise en oeuvre du procédé d'aide à la programmation selon un mode particulier de réalisation de l'invention, - la figure 4B représente de manière schématique un exemple de modification de l'interface graphique utilisée dans la mise en oeuvre du procédé d'aide à la programmation selon un mode particulier de réalisation de l'invention, - la figure 5 représente de manière schématique un exemple d'une interface graphique de l'application configurable issue du procédé d'aide à la programmation selon un mode particulier de réalisation de l'invention, - la figure 6 illustre une architecture d'un dispositif mettant en oeuvre le procédé d'aide à la programmation selon un mode particulier de réalisation de l'invention. -5- Description d'un mode particulier de réalisation de l'invention L'invention concerne un procédé d'aide à la programmation d'une application configurable et d'une application de configuration. Une application configurable est une application dont une ou plusieurs options peuvent être définies par un utilisateur. Par exemple, un utilisateur peut configurer une propriété graphique telle qu'une image à afficher sur l'interface de l'application, la couleur de fond d'une page Internet ou la couleur du texte. L'application configurable comprend au moins un élément configurable. Un élément configurable peut être un composant graphique de l'application configurable, par exemple: un bouton, une liste déroulante ou encore le fond de l'application configurable. Un élément configurable est composé d'une ou plusieurs propriétés configurables, par exemple: la couleur dominante de l'application, la couleur de fond d'un bouton, le texte d'un bouton, la couleur d'un texte, l'épaisseur d'un cadre. Une propriété configurable peut aussi être une variable de l'application à configurer, par exemple l'URL (pour Uniform Resource Locator en anglais) d'un flux RSS (pour Rich Site Summary en anglais) à afficher pour une application de lecture de flux RSS ou bien une adresse de courrier électronique ou un numéro de téléphone pour une application d'envoi de messages. Une propriété configurable est configurée à l'aide d'une source de configuration. Une source de configuration peut correspondre à un composant graphique par exemple un champ de saisie de texte, un champ de sélection de couleur, une case à cocher, une liste déroulante. Une source de configuration peut aussi correspondre à une variable d'un programme, par exemple un nombre. Dans la suite de ce document, le terme logiciel ou application désignera aussi bien un logiciel, les sous-ensembles d'un logiciel ou des pages Internet. Selon un mode particulier de réalisation, l'invention peut être mise en oeuvre au sein d'un environnement de développement intégré, appelé par la suite EDI. Un EDI permet de définir une interface graphique d'une application et de programmer son fonctionnement au moyen d'un langage de programmation. L'application configurable est programmée à partir d'une application à configurer. L'application configurable correspond à l'application à configurer qui va être rendue configurable grâce au procédé décrit selon l'invention. L'application à configurer peut être créée au moyen de l'EDI. Elle peut par exemple être une application d'envoi de message à un destinataire. Un exemple d'une telle application est illustré par la figure 2. Cette application est par exemple composée de deux éléments graphiques : l'application principale 20 et un bouton à cliquer 21 (ELT1) contenu dans l'application principale 20. Selon le mode de réalisation de l'invention, l'application à configurer peut avoir été créée à l'aide du même environnement de développement EDI que l'application configurable. L'EDI dispose alors du modèle de programmation de l'application à configurer, il connaît les éléments composant l'application à configurer. Selon un autre mode particulier de réalisation de l'invention, l'application à configurer peut aussi avoir été créée à l'aide d'un environnement de développement et/ou d'un langage de -6- programmation différent de ceux utilisés pour la programmation de l'application configurable, l'EDI ne connaît alors pas le modèle de programmation de l'application à configurer. Selon ce mode de réalisation, le code source de l'application à configurer est analysé afin d'identifier tous les éléments composant l'application à configurer. La figure 1 présente des étapes du procédé d'aide à la programmation d'une application configurable selon un mode particulier de réalisation de l'invention. Le procédé utilise des sources de configuration qui seront associées aux éléments de l'application configurable. Les sources de configuration sont extraites d'une application de configuration lors d'une étape 10 (EXTRACT). Lors de l'étape 10, le procédé analyse l'application de configuration afin d'identifier les sources de configuration proposées par l'application de configuration. Un groupe de source de configuration est extrait. Les sources de configuration extraites sont ensuite triées par type : par exemple texte pour un champ de saisie de texte ou une variable de type texte, booléen pour une case à cocher. Selon un mode particulier de réalisation de l'invention, le groupe de sources de configuration peut être affiché lors d'une étape 11 (AFF_S) à un utilisateur qui peut alors sélectionner un sous-groupe de sources de configuration en fonction des éléments composants de l'application configurable. Cette sélection peut être faite de manière graphique par exemple en cliquant sur les sources de configuration ou en les faisant glisser dans l'interface graphique de l'application configurable. Selon un mode particulier de réalisation de l'invention, lors d'une étape 12 (A_APP), le procédé analyse l'application configurable afin d'extraire les composants graphiques de l'interface graphique de l'application et les variables du programme de l'application. Cette analyse peut être effectuée par la recherche de mots-clés identifiant les composants graphiques et les variables contenus dans le code source de l'application configurable. Les composants graphiques et les variables ainsi identifiés constituent les éléments configurables de l'application configurable. Lors d'une étape 13 (AFF_ELT), le procédé affiche à un utilisateur les éléments configurables. Lorsque l'utilisateur choisit un élément configurable, par exemple en cliquant sur un élément affiché à l'aide du pointeur d'une souris, le procédé sélectionne l'élément configurable choisi lors d'une étape 14 (SELECT_ELT). Le procédé affiche alors lors d'une étape 15 (AFF PROF), les propriétés configurables de l'élément sélectionné. Lorsque l'utilisateur choisit une propriété configurable affichée, par exemple en passant ou en cliquant avec le pointeur d'une souris sur la propriété affichée, le procédé sélectionne la propriété configurable choisie lors d'une étape 16 (SELECT PROF). Selon un mode particulier de réalisation de l'invention, lors d'une étape 17 (SELECT GR), le procédé sélectionne un sous-groupe de sources de configuration compatibles avec la propriété sélectionnée à l'étape 16. La sélection du sous-groupe de sources de configuration compatibles est effectuée à partir d'une correspondance entre le type de la propriété configurable et le type des sources de configuration définies. Par exemple, les sources de configuration compatibles sélectionnées peuvent être celles dont le type est identique au type de la propriété configurable, -7 par exemple un type texte. Les sources de configuration compatibles sélectionnées peuvent aussi être celles dont le type n'est pas identique au type de la propriété configurable mais dont le type est compatible avec le type de la propriété configurable: par exemple un type nombre est compatible avec un type texte. Par exemple, si la propriété configurable correspond à un texte à afficher, les champs de saisie alphanumériques et numériques seront sélectionnés, car un nombre peut être affiché dans une zone d'affichage de texte. Le procédé affiche ensuite à l'utilisateur le sous-groupe de sources de configuration compatibles sélectionnées lors d'une étape 18 (AFF_GR). Lorsque l'utilisateur choisit une source de configuration parmi le sous-groupe de sources de configuration affichées pour la propriété sélectionnée, le procédé associe lors d'une étape 19 (ASSOC) la source de configuration choisie à la propriété sélectionnée. Cette association génère le code source de l'application configurable liant la propriété sélectionnée à la source de configuration permettant la configuration ultérieure de la propriété par un utilisateur de l'application configurable. Selon un mode particulier de réalisation de l'invention, une même source de configuration peut être associée à plusieurs propriétés configurables. Ainsi, une modification de la valeur de la source de configuration, entrainera la configuration à l'aide de la nouvelle valeur de la source de configuration de toutes les propriétés qui lui sont associées. Un exemple de codes source générés par le procédé selon l'invention peut par exemple être de la forme suivante, à l'aide du langage de programmation XML (pour eXtensible Markup Language en anglais): Le langage de programmation utilisé pour la programmation de l'application configurable est indépendant du langage de programmation utilisé pour la programmation de l'application de configuration. L'exemple ci-dessus montre les sources de configuration de l'application de configuration, identifiées par le mot-clé "configurationSources". L'application de configuration comprend trois -8- sources de configuration correspondant à des composants graphiques de saisie ou de sélection et une source de configuration correspondant à une variable. Les sources de configuration sont caractérisées par le nom qui leur est associé dans le champ "narre" et le type de la source dans le champ "type". Le mot-clé "configurables" identifie l'ensemble des propriétés configurables de l'application configurable. L'application configurable comprend quatre propriétés configurables identifiées par le mot-clé "designAttribtue" correspondant à des propriétés de composants graphiques et un élément configurable correspondant à une variable du programme de l'application identifiée par le mot-clé "variable". Une propriété configurable est caractérisée : - par le nom de l'élément auquel elle s'applique, par exemple un bouton à cliquer identifié par la valeur "button" du champ "narre", - par le type de la propriété, le type de la propriété correspond à la valeur du champ associé au mot-clé "attribute", - par la source de configuration à laquelle la propriété est associée, la source de configuration est identifiée par la valeur du champ "source", cette valeur correspond au nom associé à une source de configuration définie à l'aide du mot-clé "configurationSources". Par exemple, la propriété "backgroundColor" de l'élément bouton à cliquer "button" est associée à la source de configuration "colour 1". Avantageusement, le procédé selon l'invention permet de fournir rapidement à un utilisateur le code source d'une application configurable sans erreur de programmation. En effet, l'utilisateur n'a pas à écrire le code source de l'application configurable, ni de l'application de configuration. Le code source est généré de manière automatique. La sélection de sources de configuration compatibles à l'étape 16 permet de limiter les erreurs de programmation en ne proposant à l'utilisateur que les sources de configuration compatibles avec la propriété sélectionnée. L'affichage du groupe de sources de configuration compatibles et la sélection par interaction graphique avec l'utilisateur permet de limiter les erreurs de programmation liées à une mauvaise saisie de l'identifiant de la source de configuration ou de la propriété. L'analyse de l'application de configuration à l'étape 10 permet à un utilisateur d'utiliser des sources de configuration issues de n'importe quelle application de configuration programmée dans un langage interprétable par le procédé selon l'invention. Selon un mode particulier de réalisation de l'invention, le procédé génère de manière automatique le code source de persistance des données de configuration sélectionnées par un utilisateur de l'application configurable et de l'application de configuration. Ainsi, lorsqu'un utilisateur configure une propriété d'une application configurable, la configuration choisie par l'utilisateur est sauvegardée et rechargée dans l'application configurable lors des prochaines exécutions de l'application configurable. L'utilisateur n'a pas à configurer à nouveau la propriété qu'il avait préalablement configurée. La génération du code source de persistance des données dépend du type de l'application configurable. Le code source généré relatif à la persistance des données permet d'indiquer à -9- l'application de configuration comment stocker l'information de configuration définie par un utilisateur et d'indiquer à l'application configurable comment lire cette information lors des prochaines exécutions de l'application configurable. Par exemple, le code source généré peut programmer l'enregistrement des valeurs saisies par un utilisateur dans un fichier stocké dans la mémoire du terminal de l'utilisateur ou sur un serveur placé dans un réseau de communication. La figure 3 illustre un exemple d'une interface graphique 30 affichant les sources de configuration extraites d'une application de configuration lors de l'étape 10 de la figure 1 et sélectionnées par un utilisateur pour programmer une application de configuration. L'interface graphique comporte trois sources de configuration: un champ de saisie de texte 32 et deux sélecteurs de couleur 34 et 36. Chaque source de configuration comporte un identifiant 31 (Si), 33 (S2) et 35 (S3), cet identifiant peut être modifié par l'utilisateur afin d'afficher un nom plus explicite pour l'utilisateur. La figure 4A représente de manière schématique un exemple d'une interface graphique 400 utilisée dans la mise en oeuvre du procédé d'aide à la programmation selon un mode particulier de réalisation de l'invention. L'interface graphique 400 comprend un premier cadre 22 comprenant les mêmes éléments que l'interface graphique décrite à la figure 2 et un second cadre 410 affichant pour un élément sélectionné 411, les propriétés configurables (412-416) de cet élément. L'utilisateur peut choisir dans le cadre 22 en cliquant sur un des éléments affichés dans ce cadre l'élément à afficher dans le cadre 410. Par exemple, l'élément sélectionné 411 correspond à ELT1 (21) de l'application configurable affiché dans le cadre 22. Dans cet exemple: - la propriété 412 correspond à la position identifiée par les valeurs en x et y et à la taille identifiée par les valeurs en w et h de l'élément ELT1, - la propriété 413 (P1) correspond par exemple au titre de l'élément ELT1, - la propriété 414 (P2) correspond par exemple à la couleur du titre de l'élément ELT1, - la propriété 415 (P3) correspond par exemple à la couleur de fond de l'élément ELT1, - la propriété 416 (P4) correspond par exemple à la couleur du bord de l'élément ELT1. L'utilisateur peut choisir une de ces propriétés en cliquant par exemple sur une case de sélection positionnée sur le côté gauche du nom de la propriété. Selon un autre mode particulier de réalisation de l'invention, le procédé affiche dans le cadre 410 les propriétés configurables et les propriétés non configurables de l'élément sélectionné. Les propriétés non configurables sont par exemple affichées différemment des propriétés configurables. Par exemple, les propriétés non configurables peuvent être affichées à l'aide d'une couleur plus pâle que les propriétés configurables afin que l'utilisateur les identifie facilement. Selon un autre exemple, la case de sélection d'une propriété non configurable peut être affichée d'une couleur plus claire qu'une case de sélection d'une propriété configurable. -10- Lorsqu'à l'étape 16 de la figure 1, l'utilisateur a choisi une propriété, si la propriété est configurable, une fenêtre affiche alors une liste des sources de configuration pouvant être associées à la propriété sélectionnée. Cet affichage correspond à l'étape 18 de la figure 1. La figure 4B illustre le résultat de cet affichage. La figure 4B montre une modification de l'interface graphique présentée à la figure 4A. La propriété P3 a par exemple été sélectionnée. Les sources de configuration 417 (S2) et 418 (S3) de l'application de configuration présentée à la figure 3 sont affichées. Ces sources de configuration sont issues de la sélection lors de l'étape 17 de la figure 1 d'un groupe de sources de configuration compatibles avec la propriété P3. Ainsi, pour la propriété P3 correspondant à la couleur de fond de l'élément ELT1, le procédé a sélectionné les sources de configuration S2 et S3 correspondant à des sélecteurs de couleur. Le procédé n'a pas sélectionné la source de configuration S1 correspondant à un champ de saisie de texte car la source de configuration S1 n'est pas compatible avec la propriété P3. L'utilisateur choisit par exemple la source de configuration S2. Le procédé génère alors le code source de l'application configurable qui permet d'associer la source de configuration S2 à la propriété P3. Selon un autre mode particulier de réalisation de l'invention, le procédé décrit selon l'invention peut être mis en oeuvre au sein d'un IDE sans représentation graphique des propriétés configurables de l'application configurable. L'utilisateur travaille alors directement à partir du code source de l'application configurable. Par exemple, lorsque l'utilisateur sélectionne un identifiant d'une propriété configurable dans le code source de l'application configurable, le procédé décrit selon l'invention lui affiche les sources de configuration compatibles avec la propriété configurable. L'utilisateur choisit une des sources de configuration affichées et le procédé décrit selon l'invention génère le code source d'association de la source de configuration à la propriété configurable, ainsi que le code de source de persistance des données de l'application configurable. Selon un autre mode particulier de réalisation de l'invention, le code source de persistance des données de l'application de configuration peut être généré à la suite de l'étape 10 de la figure 1 lors de l'extraction des sources de configuration de l'application de configuration. La figure 5 représente de manière schématique un exemple d'une interface graphique 500 de l'application configurable issue du procédé d'aide à la programmation selon un mode particulier de réalisation de l'invention. La figure 5 montre dans une première zone 30 une application de configuration telle que décrite à la figure 3 par exemple. La figure 5 montre également dans une seconde zone 22 les éléments de l'application configurable tels que décrits avec la figure 2. A l'issue du procédé décrit dans l'invention, un utilisateur peut configurer les propriétés des éléments ELT1 et ELT2 de l'application configurable à l'aide des sources de configuration S1, S2 et S3. Par exemple, un utilisateur peut modifier la couleur de fond (propriété P3 de la figure 4B) de l'ELT1 à l'aide du sélecteur de couleur (source de configuration) S2. Selon un mode particulier de réalisation de l'invention, l'application de configuration est comprise dans l'application configurable. Par exemple, l'application de configuration est accessible par un menu ou un onglet de l'application de configuration. -11 - Selon un autre mode particulier de réalisation de l'invention, l'application de configuration est distincte de l'application configurable. L'application de configuration est alors exécutée indépendamment de l'exécution de l'application configurable. La figure 6 illustre une architecture d'un dispositif 60 mettant en oeuvre le procédé d'aide à la programmation selon un mode particulier de réalisation de l'invention. Le procédé selon l'invention est destiné à être mis en oeuvre au moyen d'un logiciel exécuté sur un terminal d'un utilisateur, par exemple un terminal de type ordinateur personnel. Le dispositif comprend une mémoire 62 comprenant une mémoire tampon (MEM), une unité de traitement 61, équipée par exemple d'un microprocesseur (FROC), et pilotée par le programme d'ordinateur (PG) 63, mettant en oeuvre le procédé d'aide à la programmation tel que décrit dans l'invention. A l'initialisation, les instructions de code du programme d'ordinateur 63 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 61. Le microprocesseur de l'unité de traitement 61 met en oeuvre les étapes du procédé d'aide à la programmation selon l'invention décrit précédemment et notamment les étapes d'extraction d'un groupe de sources de configuration d'une application de configuration, d'affichage d'au moins une partie définie du groupe de sources de configuration, d'association à la au moins une propriété configurable d'une source de configuration choisie parmi la au moins une partie définie du groupe de sources de configuration, selon les instructions du programme d'ordinateur 63. Pour cela, le dispositif comprend, outre la mémoire tampon 62, des moyens d'affichage 64 (AFF) tels que par exemple un écran d'affichage et des moyens de sélection 65 (SEL) tels que par exemple un clavier ou une souris. Le procédé selon l'invention peut par exemple être utilisé pour gérer les préférences utilisateur dans un logiciel, la personnalisation d'une application générique, telle que par exemple un lecteur de flux RSS dont l'URL et/ou l'aspect graphique peuvent être configurés, la configuration de logiciels au sein d'une ligne de produit, la personnalisation de pages Internet. REVENDICATIONS1. Procédé d'aide à la programmation d'une application configurable, à partir d'une application de configuration comprenant au moins une source de configuration, l'application configurable comprenant au moins une propriété configurable, le procédé est caractérisé en ce qu'il comprend les étapes suivantes, mises en oeuvre par une unité de traitement d'un dispositif informatique: analyse de l'application de configuration afin d'extraire (10) un groupe de sources 10 de configuration, et pour la au moins une propriété configurable: affichage (18) d'au moins une partie du groupe de sources de configuration, définie en fonction de l'application configurable dans une fenêtre d'interface graphique du dispositif, et association (19) à la au moins une propriété configurable d'une source de configuration choisie parmi les sources de configuration contenues dans la au moins une partie définie du groupe de sources de configuration, l'association de la source de configuration choisie à la au moins une propriété configurable étant effectuée par la génération automatique de code source liant la au moins une propriété configurable à la source de configuration choisie. 2. Procédé selon la revendication 1 caractérisé en ce qu'une propriété configurable de l'application configurable correspond à une propriété d'un composant graphique ou à une variable de l'application configurable. 25 3. Procédé selon l'une quelconque des revendications 1 à 2 caractérisé en ce que la au moins une propriété configurable fait partie d'un groupe de propriétés associées à un élément de l'application configurable obtenu par une étape préalable d'analyse (12) de l'application configurable permettant d'identifier les éléments et les propriétés desdits 30 éléments de l'application configurable, susceptibles d'être configurés. 4. Procédé selon l'une quelconque des revendications 1 à 3 caractérisé en ce que la au moins une partie définie de sources de configuration est obtenue par une étape de sélection (16) d'un sous-groupe de sources de configuration compatibles avec la au moins 35 une propriété configurable parmi le groupe de sources de configuration extrait, la sélection étant effectuée à partir d'une correspondance entre le type de la propriété configurable et le type des sources de configuration du groupe. 15 20-13 5. Procédé selon l'une quelconque des revendications 1 à 4 caractérisé en ce qu'il comprend une étape d'affichage (15) d'au moins une propriété configurable d'au moins un élément configurable de l'application configurable, l'étape d'affichage étant effectuée suite à la sélection (14) de l'élément configurable affiché sur une interface graphique affichant les éléments de l'application configurable. 6. Procédé selon l'une quelconque des revendications 1 à 5 caractérisé en ce que l'application de configuration est comprise dans l'application configurable. 7. Dispositif d'aide à la programmation d'une application configurable, à partir d'une application de configuration comprenant au moins une source de configuration, l'application configurable comprenant au moins une propriété configurable, le dispositif est caractérisé en ce qu'il comprend: des moyens d'analyse de l'application de configuration afin d'extraire un groupe de sources de configuration de l'application de configuration, des moyens d'affichage d'au moins une partie du groupe de sources de configuration, définie en fonction de l'application configurable dans une fenêtre d'interface graphique de l'application configurable, des moyens d'association à la au moins une propriété configurable d'une source de configuration choisie parmi les sources de configuration contenues dans la au moins une partie définie du groupe de sources de configuration, l'association de la source de configuration choisie à la au moins une propriété configurable étant effectuée par la génération automatique de code source liant la au moins une propriété configurable à la source de configuration. 8. Programme d'ordinateur comportant des instructions pour l'exécution du procédé selon l'une quelconque des revendications 1 à 6 lorsque le programme est exécuté par un processeur. 9. Support d'enregistrement lisible par un processeur sur lequel est enregistré un programme comportant des instructions pour l'exécution du procédé selon l'une quelconque des revendications 1 à 6.35