Rapport sur le développement du didacticiel Jeux de Mots

Rapport de production

Ce rapport prend sa source dans la tenue d'un journal de développement s'échelonnant sur près d'une année. Si le journal est écrit de façon ponctuelle, à la suite des diverses avancées réalisées dans le développement du produit, le rapport quant à lui, basé sur l'étude et le dépouillement du journal, tente de regrouper les récurences de façon à pouvoir présenter le développement de parties du produit. Nous espérons que cette approche permettra de mieux saisir le travail accompli.







Conversion

La première étape est la réappropriation des routines développées en VB (Visual Basic) et leur implantation dans l'environnement de travail de Delphi qui offre ici plus de souplesse dans la modularisation des diverses constituantes ainsi que certaines fonctionnalités techniques justifiant ce travail.

Ce travail de réappropriation demande une refonte de tous les constituants. Cette tâche appellera à son tour une réflexion sur l'efficacité des solutions adoptées et permettre à l'occasion la dévouverte de nouvelles approches plus efficaces pour la tâche en cours ou même parfois, une approche autre amenant de nouvelles tâches.

Ce logiciel étant basé sur l'utilisation d'un lexique précis, un utilitaire spécifique servant à fixer et rendre disponible les propriétés du lexique devra être l'un des premiers constituants à voir le jour. La présence de cet éditeur peut permettre une certaine flexibilité du lexique, supposant l'ajout ou le retrait de mots dans la banque accessible.


L'éditeur de lexique


L'éditeur de lexique (LexMakr) est l'un des premiers composants à devoir être développé puisque la création et l'utilisation d'un lexique se trouvent à la base des opérations que réalise le logiciel. Dans les premières versions, l'éditeur est intégré dans l'application elle-même. Un onglet permet le basculement de la tâche d'édition du lexique à celle de l'utilisation du lexique. Cette version en est uniquement une de développement et les deux applications seront par la suite séparées (voir journal), permettant de mettre l'accent sur l'interface et les routines propres à l'utilisation du lexique. Dans cette optique, la création du lexique et sa gestion (ajustement de la propriété des mots) n'est pas du ressort de l'utilisation du lexique.

Sur le plan technique, le but de l'éditeur de lexique est de

la zone liste de l'éditeur de lexique Dans sa forme actuelle il utilise donc une zone liste, associée à une zone de sélection de catégorie permettant le passage d'une catégorie à l'autre. Cette façon de procéder est adaptée du travail réalisé dans la version antérieure du programme, représentant une économie de contrôles à l'écran.

Les deux onglets sous la zone de sélection permettent le passage du groupe des catégories lexicales(3) ou groupe des catégories grammaticales(4). L'ensemble permet donc d'atteindre 7 catégories distinctes.

Dans sa forme actuelle cet éditeur de lexique est relativement simple, permettant la réalisation du lexique nécessaire au fonctionnement du programme JdM. Des prolongements sont envisagés qui permettront:



propriétés du mot

L'illustration suivante affiche les propriétés du mot assiette, appartenant à la catégorie nom, telles que présentées par l'éditeur. L'auteur du lexique a pour tâche de cocher les propriétés appropriées au mot choisi. L'accord en genre et en nombre des mots ainsi que la conjuguaison des verbes seront réalisés par JdM qui possède une base de règles grammaticales capables de traiter les exceptions propres à la langue.

L'ajout de mots au lexique se fait en utilisant une case prévue à cet effet, laquelle inscrit le mot choisi dans la catégorie en cours. L'auteur n'a plus qu'à assigner les propriétés du mot ajouté.

Une dernière illustration permet de voir les propriétés de la catégorie verbe. Dans cette catégorie, les mots possèdent un nombre plus important de propriétés, vu le rôle fonctionnel qu'ils jouent au sein de la phrase.

propriétés du  verbe
Propriétés du verbe

Cette catégorie doit encore recevoir quelques modifications permettant, comme mentionné plus tôt, l'ajout de marqueurs syntaxiques propres à l'expansion des groupes verbaux attachés aux verbes spécifiques.


Le mot, unité minimale

Dans cette première approche, le mot représente l'unité minimale de base qui mènera par expansions successives, à la création de la phrase. Puisqu'il faudra ajuster certaines des propriétés du mot à l'écran, ce mot doit avoir une représentation graphique dont le lexique n'est que l'un des éléments considérés. Le changement d'environnement de développement a donc demandé de revoir la structure et l'organisation des éléments de ce composant de base.

Le choix du composant qui sera utilisé pour produire la représentation graphique du mot se nomme TLabel. C'est un composant relativement dénudé qui posséde entre autres les propriétés suivantes:

Les routines de déplacement et d'édition des propriétés seront acessibles depuis la méthode onMouse du composant.

Puisque le composant original ne posséde pas de contour, notre premier travail a été de permettre le dessin d'une telle bordure, permettant à l'utilisateur de repérer les limites de la boîte mot. Cette première version possède aussi une ombre portée, qui disparaîtra dès la version suivante. représentaton 1 du mot Nous avons de plus fixé la taille de caractère utilisé à 12 points pour accomoder nos jeunes utilisateurs. Le résultat de ce travail ne présente pas beaucoup de différence à l'écran d'avec la version antérieure. Les différences sont plutôt contenues dans la structure interne et seront sensibles dans les expansions que subira ce composant lors de la création des groupes nominaux et verbaux.

Jumelé avec la zone de travail sur lequel il peut être déposé, ce mot utilise déjà les méthodes permettant de le déplacer et d'en modifier les propriétés.


Le groupe: expansion du mot

L'un des points important de cette version est l'utilisation des groupes.

Ce point constitue probablement l'apport le plus important de cette version puisqu'il modifie l'organisation des rapports entre les mots réduisant à deux les catégories de base nécessaires à la production de la phrase. Ces deux catégories, le groupe nominal (GN) et le groupe verbal (GV), peuvent ainsi, par expansions successives, permettre la représentation d'une phrase. expansion du mot, 
représentation du groupe

Pour être perceptible à l'écran, l'opération d'expansion du mot vers le groupe doit avoir une représentation à l'écran. La première représentation graphique étudiée permet l'affichage de divers états du mot selon

Ainsi, l'ajout du déterminant le au nom bateau, crée un GN modifiant l'apparence de la boîte par l'ajout d'extrémités. Le verbe amuser devient GV par la conjuguaison à l'indicatif lui accordant graphiquement des attributs qui lui permettront de s'associer un sujet. relation de sujet

La relation de sujet entre un GN et un GV pourra alors prendre la forme ci-contre où les deux extrémités se joignent.

Cette approche aura ses limites et sera par la suite questionnée, en particulier pour l'enchaînement linéaire obligé qu'elle demande ainsi que la lourdeur graphique de la représentation des extrémités et l'efficacité douteuse du repérage de la nature des groupes. Mais en tant que telle elle constitue une étape importante de la démarche de développement et doit par conséquent figurer au rapport.


La modification des propriétés

Si nous avons vu les divers aspects que peut revêtir la représentation du mot, il nous faut maintenant parler de la réalisation de cette modification. Nous avons vu que le mot possède comme méthode, l'événement onMouse. C'est cet événement qui commande l'appel des diverses boîtes de dialogues modales qui permettront l'ajustement des propriétés du mot. Ces boîtes de dialogue afficheront divers aspects selon qu'elles s'appliquent à la transformation d'un nom ou d'un verbe.

le groupe nominal

La transformation du nom en GN permet:

l'ajout du déterminant
L'ajout du déterminant

L'illustration précédente représente la modification du nom par l'ajout d'un déterminant. Seuls les déterminants qui répondent à l'accord en genre apparaissent dans la liste des déterminants. La modification du nombre du groupe réaliserait de même, l'accord du nom et du déterminant. l'ajout d'un adjectif

L'ajout des adjectifs utilise le même procédé et ne devient accessible qu'après l'ajout du déterminant. Le cas des adjectifs possède toutefois certaines particularités comme sa position dans le groupe.

Seule la dernière solution retenue est ici affichée. Le problème de la position de l'adjectif dans le GN se double de celui de la présence des mots commençant par une voyelle. En effet l'accord du déterminant doit prendre en compte l'insertion d'un adjectif avant le mot et savoir répondre à la présence de la voyelle comme première lettre du mot. Des détails supplémentaires sont donnés sur le traitement de cette situation dans le journal de développement.

le groupe verbal

La création du GV, repose sur la modification de la propriété de temps du verbe, seule propriété affichée lors du dépôt du mot dans la zone de travail. Création du Groupe Verbal

Le choix d'un temps de verbe autre que l'infinitif permet l'accord en nombre du verbe choisi, le choix de la personne ou d'un sujet. Le choix de la personne s'accompagne du choix du nombre permettant la conjuguaison aux diverses personnes.

Le choix du sujet fait apparaître une liste déroulante où se trouvent énumérés les divers candidats possibles. Tout nom déposé dans la zone de travail peut devenir candidat. Le verbe s'accorde alors en nombre avec le sujet.

Un mot sur la conjuguaison du verbe qui utilise une technique s'apparentant de l'accord de l'adjectif. Le radical du mot est d'abord indiqué, à partir de l'infinitif. Cette technique s'emploie telle quelle pour les verbes des deux premiers groupes et demande quelques aménagements pour les verbes irréguliers dont l'indication préalable du radical. L'ajout des désinences appropriées est alors réalisée en accord avec les nombre et personnes choisis. modification du Groupe Verbal

En principe, ces diverses décisions et implémentations rendent possible la création de la phrase dans la zone de travail, laquelle n'a plus qu'à être déposée dans le chevalet pour permettre son ajout au paragraphe en cours. En pratique des questions surgissent qui devraient permettre de traiter des diverses modalités de la phrase ainsi que le passage d'un mode à l'autre. Voir ces réflexions sur la classe des verbes, dans le journal de développement.

La case à cocher Afficher le pronom, remplace le sujet, s'il y en a un de désigné, par le pronom choisi. L'ajout du complément se réalise de la même façon.


La zone de travail

La zone de travail est un composant en soi, de la famille des panneaux (TPanel), capable de recevoir d'autres composants. De par sa nature c'est elle qui garde le compte des divers groupes qui y sont déposés et qui possède les diverses méthodes permettant d'agir sur ces composants.

Le travail de cette étape a peu fait pour modifier l'allure graphique du composant mais a surtout implanté des structures d'organisation spécifiques permettant l'expansion des groupes vers la constitution de la phrase. ouverture de la corbeille

C'est aussi au niveau de ce composant que se réalisent la sauvegarde et la récupération des sessions de travail. Le dernier élément à y avoir été implanté est la corbeille permettant la suppression et le recyclage des mots qui y sont déposés.

Dans cette version la corbeille devient un espace transitoire, où des mots peuvent être écartés temporairement d'abord, permettant leur récupération, puis définitivement supprimés avec la commande adéquate. La corbeille est vidée en l'ouvrant d'abord avec la technique de souris appropriée (double-clic). Plus de détails techniques sont donnés dans le journal.


Une hiérarchie de classes

Concevoir le mot comme unité minimale dans la construction de la phrase, demande une organisation hiérarchique des contenus qui fasse en sorte que la classe inférieure hérite des propriétés de la classe supérieure et lui ajoute des propriétés qui lui sont spécifiques. Cette structure minimise les redondances permettant une économie de moyens et une efficacité dans le partage des tâches.

L'illustration suivante décrit cette organisation des classes telle qu'elle est utilisée dans le logiciel. Ce schéma représente la dernière organisation de l'ensemble. D'autres organisations l'ont précédé qui n'offraient pas tous la même flexibilité.

la hiérarchie des classes de mots
la hiérarchie des classes de mots

Notez la classe des noms qui n'apporte aucune nouvelle propriétés et est par conséquent semblable à la classe qui lui est hyperonyme (TLexWord). Cet expédient était nécessaire pour éviter d'avoir une classe verbe qui descende de la classe nom. Ainsi la classe TLexWord n'apporte à la classe qui lui est hyperonyme(TWord) que les propriétés genre et nombre. Elle est le parent de toutes les classes de mots utilisant le genre et le nombre.


retour