Les items du menu de développement (BASIC DIESE ou CONTROL DIESE) permettent de développer les classes propres à la base de connaissances. Quel que soit l'item, sa sélection provoque l'apparition d'une fenêtre dite de choix, telle que celle ci-dessous pour les entités.
Cette fenêtre montre la liste, éventuellement vide, des noms C++ des classes déjà développées, et une série de boutons, qui ont toujours les rôles suivants :
Quitter : abandon du développement d'une classe de la catégorie considérée, et fermeture de lq fenêtre de choix.
Visualiser : simple visualisation des propriétés de la classe séllectionnée dans la liste, sans possibilité de modification.
Supprimer : suppression de la classe séllectionnée dans la liste, après réponse positive à une invite de confirmation.
Modifier : modification de la classe séllectionnée dans la liste.
Ce bouton provoque l'apparition d'une fenêtre dite de modification, avec des champs et des boîte exhibant les valeurs courantes des propriétés de la classe.
Créer : création d'une nouvelle classe, quelle que soit la classe éventuellement séllectionnée dans la liste.
Ce bouton provoque l'apparition d'une fenêtre de modification, avec des champs et des boîte pour encoder les propriétés de la nouvelle classe. Ces éléments graphiques sont vides.
Toute fenêtre de modification est structurée comme celle ci-dessous pour les événements :
La fenêtre est constituée ...
d'un empilement d'onglets découvrables et recouvrables, chacun dédié à un sous-ensemble cohérent d'informations sur la classe.
d'un champ destiné à recevoir un texte court qui sera un commentaire attaché à la classe. Ce champ n'est pas utilisé pour toutes les classes.
d'une série de boutons, qui ont toujours les rôles suivants :
Appliquer : les informations contenues dans les onglets sont enregistrées en mémoire, et non pas sur la mémoire externe, puis la fenêtre est fermée. L'enregistrement sur la mémoire externe doit être opérée par l'item Enregistrer du menu Bases de connaissancs.
Contrôler les zones : vérifie que les informations dans les onglets sont syntaxiquement valides.
Aide BASIC DIESE : renvoie à la documentation en ligne sur la classe de BASIC DIESE correspondante.
Abandonner : ferme la fenêtre sans enregistrer les informations nulle part.
Standard de dénomination des objets :
Une fenêtre de modification comporte toujours un onglet Identité, dans lequel on renseigne le nom C++ de la classe d'objet, le nom de classe de toutes ses instances et, le plus souvent, le symbole de classe (lui aussi hérité par toutes les instances). Il est recommandé d'adopter une attitude standard et constante pour l'attribution de ces noms et symboles. Le même conseil vaut pour l'attribution d'un nom aux fonctions des divers types.
Pour le nom C++ de la classe,
s'il n'est pas l'assemblage de plusieurs mots (par exemple "robinet", on recommande que le nom de classe soit ce mot en miniscules, avec la première lettre seulement en majuscules, ici : Robinet.
s'il est l'assemblage de plusieurs mots (par exemple "robinet d'alimentation", on recommande que le nom de classe soit la concaténation de ces mots en miniscules, sans articles, avec la première lettre seulement de chaque mot en majuscules, ici : RobinetAlimentation.
Pour le nom de classe, on recommande qu'il soit le nom C++ de la classe, à l'exception de la toute première lettre qui passe en minuscule. Dans les exemples ci-dessus : robinet et robinetAlimentation.
Pour le symbole de classe, on recommande qu'il soit le nom C++ de la classe, avec toutes les lettres passées en majuscules, et les constituants éventuels séparés par le signe "_" (souligné). Dans les exemples ci-dessus : ROBINET et ROBINET_ALIMENTATION.
Le rôle de la zone Nommage automatique est justement d'appliquer ce standard : il suffit, après avoir choisi le nom C++, de cliquer sur le bouton (comme dans la fenêtre ci-dessus) pour voir apparaître automatiquement le terme répondant au standard.
Le développement des différentes classes d'objets :
Les descripteurs des entités Un descripteur est un objet attaché à une entité. Il modélise une variable d'état ou bien une valeur constante caratéristique de l'entité.
Les démons Un démon (ou moniteur) est un mécanisme attaché à certains descripteurs, déclenché lorsqu'on accède à la valeur du descripteur, ou bien lorsqu'on change sa valeur, ou bien quand on change la structure d'une entité.
Les entités Les entités sont les briques de base de la structure du système à modéliser. Les entités sont atomiques ou bien composées, ou bien encore des ensembles d'entités atomiques ou composées.
Les processus Les processus modélisent l'aspect fonctionnel du système, c'est-à-dire les mécanismes qui modifient son état, de manière ponctuelle ou étalée dans le temps.
Les événements Un événement modélise quelque chose qui intervient dans l'environnement du système et qui déclenche un processus, ou bien l'arrê temporairement ou définitivement.
Les spécifications d'ensembles de valeurs Par un tel objet, on définit un ensemble de valeurs (notamment pour un descripteur) de manière fonctionnelle, sans les énumérer explicitement.
Les arguments des méthodes Un argument est une donnée recue par une méthode, de la part d'un programme client, et qui sert de paramètre à la procédure qui est le corps de la méthode.
Les méthodes non prédéfinies Une méthode est un objet qui encapsule une procédure. Elle peut être attachée à une entité, un processus, un événement ou un démon. On ne traite pas ici les méthodes prédéfinies dans les objets des bibliothèques BASIC DIESE ni CONTROL DIESE.
Les fichiers de données séquentielles Cet objet conceptuel est la représentation d'un objet physique : un fichier sur un volume physque constitué d'un certain nombre d'enregistrements (de format spécifié), tel que le prochain enregistrement lu ne peut être que celui qui suit le dernier déjà lu.