Bonjour à tous,

Je travail sur un logiciel qui permet de lancer des publications d'avis d'appel d'offre à la concurrence (AAPC). C'est à dire que le client va saisir son marché (date limite de réponse, type d'appel d'offre, si c'est un marché alloti, nom et coordonnées de différents protagoniste, etc...).

Avant de publier son avis d'appel d'offre, nous aimerions lancer des alertes si une donnée saisie semble erronée (code postale qui contient des caractères alpha numérique, adresse non communiquée, date limite déjà dépassée, etc...) sachant que la saisie d'une donnée peut intervenir sur la validation d'une autre donnée (ex: pour tel type d'AAPC, il faut telle type d'information).

Dans un premier temps, je voulais construire un système de validation assez générique pour ne pas trop s'embêter à en ajouter/modifier/supprimer.

Dans un second temps, compte tenu que ces règles vont dépendre du code des marché publics (qui change régulièrement) mais aussi du choix de l'utilisateur (puisqu'en temps que responsable, il pourra activer/désactiver/modifier tel règle), il serait souhaitable de les fixer dans un fichier de config, ou XML afin de les modifier sans recompilation.


En terme de conception, vers quelle méthode je peux m'aiguiller?

Là à froid, j'ai pensé, rapidement, à faire une classe de propriété (abstraite) encapsulant une donnée ainsi qu'une liste de validateurs (tous issus d'un validateur abstrait). Puis depuis avec XML, on injecte les données dans les validateurs des propriétés.

Bon en pensant que dériver les propriétés pour chaque type déjà... on peut utiliser les templates, pareil pour les validateurs.

Est-ce que vous pourriez me faire un p'tits schéma UML ou me rediriger vers une solution à un problème similaire?


Ca me paraît intéressant ce projet.


Merci beaucoup

A bientôt