Normalisation des règles communes

Lorsque vous développez votre jeu de règles, vous pouvez remarquer des règles qui sont similaires sur différentes parties de votre fonctionnalité de jeu de règles.

Veillez à identifier les règles communes et à les centraliser.

En règle générale, deux options sont disponibles lors de la centralisation des règles communes :

Parfois, il peut être difficile d'identifier le mécanisme à utiliser lors de la centralisation des règles communes. En règle générale, vous devez utiliser l'héritage avec prudence et uniquement lorsque la classe de sous-règle représente un concept métier qui "est" véritablement une instance du concept métier représentée par la super-classe. En particulier, CER ne prend pas en charge l'héritage multiple.

Comme exemple d'héritage, citons une personne possédant des ressources, chacune d'elles étant un bâtiment ou un véhicule. Les classes de règles Building et Vehicle étendent chacune une classe de règles Resource abstraite. Voir la liste dans Classes de règles.

Vous devez utiliser le confinement lorsque le concept métier représenté par une classe de règles "a une" instance du concept métier représentée par la classe de règles confinée.

Comme exemple de confinement, citons une personne pour laquelle plusieurs tests de plage d'âge sont appliqués. La classe de règles Person crée des instances de AgeRangeTest.

Si vous constatez que des classes de règles similaires se trouvent dans différents jeux de règles, pensez à utiliser les fonctions CER (depuis Cúram V6) pour permettre à un jeu de règles de référencer des artefacts dans un autre. Placez les classes de règles communes dans un ou plusieurs jeux de règles et placez les classes de règles qui ne sont pas communes dans d'autres jeux de règles.