Point d'ouverture "CaseBase"

separator line

Point d'ouverture précédent white background Point d'ouverture suivant

separator line


Description

Le point d'ouverture CaseBase permet la structuration et le stockage des cas. Il permet de gérer l'organisation des cas.


Conception

Dans cette modélisation, il existe un point d'ouverture pour l'organisation hiérarchique des bases de cas suivant, d'une part leurs caractéristiques logiques liées au cycle de vie des cas et, d'autre part leur localisation physique. Dans ce but on applique le patron de conception Composite (cf. Figure 1) : la classe CaseBase est alors la classe de base d'une hiérarchie de classes séparant les bases de cas composées (classe CompoundCaseBase ) et les bases de cas simples (classe SimpleCaseBase ). Chaque base de cas peut être ouverte en deux modes (en lecture seule ou en modification) et possède des informations sur les données (classe CaseBaseMetadata ). L'ajout d'un nouveau cas dans une base n'est correct que s'il est compatible (méthode isCaseCompatible ). Ce critère est utilisé pour ajouter un nouveau cas par classification dans la hiérarchie formée par des bases de cas composées.

hiérarchie de bases de cas

Figure 1 : hiérarchie de bases de cas


Plusieurs types de bases de cas simples peuvent alors être définis en spécialisant la classe SimpleCaseBase : bases de cas volatiles (classe TransientSimpleCaseBase ), bases de cas avec sauvegarde sur un fichier (classe FileSimpleCaseBase ), ou bases de cas distantes (classe RemoteSimpleCaseBase ). Les bases de cas composées servent à regrouper les bases de cas suivant une sémantique liée à l'application. Les bases de cas doivent assurer l'unicité de l'affectation des identificateurs aux nouveaux cas. Dans ce but, nous fournissons des objets chargés du calcul des identificateurs (classe IdentifierGenerator ). Soit les bases de cas utilisent des générateurs de type différent, l'unicité est alors garantie de par la conception des bases, soit plusieurs bases utilisent le même générateur.

exemple d'une structuration de bases de cas

Figure 2 : exemple d'une structuration de bases de cas

La Figure 2 donne un exemple dans lequel deux principales bases de cas sont réunies : la base de cas personnelle de l'utilisateur et la base de cas centrale. La base de cas personnelle est à son tour décomposée en une base de cas temporaire et une base de cas privée. La base de cas temporaire contient les cas créés lors d'une session de raisonnement. La base de cas privée contient les cas dont l'utilisateur ne souhaite pas une utilisation générale. D'un autre côté, la base de cas centrale contient d'une part les cas publiés par les utilisateurs et n'ayant pas encore été validés (base de cas partagée), et d'autre part les cas acceptés et vérifiés par l'administrateur ou les experts de l'application (base de cas validée). Cet exemple met en évidence l'apport de cette structuration pour mieux suivre les cas dans leur cycle de vie et de validation, tout en montrant l'utilisation des différents types de bases de cas simples. Grâce au patron Composite cette structuration est transparente pour le raisonnement.
 

API

separator line

Valid XHTML 1.0!

Valid CSS!

Brigitte Trousse

Last modified: Wed Jul 25 14:35:37 MEST 2001