Réserver une Démo
Pré. Proc.

Exemple - Calcul des mensualités d'un prêt

Le calcul des versements Métier Knowledge Modèle (BKM) est implémenté sous forme de contexte encadré.

  • Le BKM définit quatre paramètres : Type de produit, le taux, la durée et le montant
  • Le contexte encadré définit deux entrées de paires variable-expression ; ces variables servent de « variables locales » qui peuvent être utilisées dans des expressions ultérieures
  • valeur de retour : L'expression peut utiliser la valeur des « variables locales »
  • Toutes les expressions dans un contexte encadré peuvent utiliser des fonctions intégrées, qui sont définies dans la bibliothèque personnalisable Gabarit — Bibliothèque ; les fonctions PMT(...) et decimal(...) sont utilisées dans cet exemple

Spécifier Type de variable d'entrée de contexte

En général, l'expression et les variables n'ont pas besoin de spécifier un type, qui est déduit de la valeur fournie. Cette fonctionnalité est prise en charge de manière générique par JavaScript , qui est utilisé pour Simulation DMN d' Enterprise Architect .

Cependant, si vous souhaitez générer du code à partir d'un modèle DMN vers des langages compilés tels que Java, C++ ou C# , vous devrez spécifier le type de chaque variable d'entrée de contexte. Sinon, si vous validez le modèle, vous verrez des avertissements tels que :

Cliquez-droit sur la variable d'entrée de contexte (frais mensuels, remboursement mensuel) dans ce modèle.

Sélectionnez l'option « Afficher Type variable ».

Tapez maintenant le type de variable, en l'ajoutant au nom de la variable et en le séparant par deux points, comme indiqué ici.

Cliquez ensuite sur le bouton Enregistrer de la barre d’outils pour enregistrer l’expression, puis cliquez sur le bouton pour valider à nouveau le modèle.

Éditeur d'expressions et Support d'Intelli-sense

Le paramètre et le nom de la variable d'entrée de contexte peuvent contenir des espaces, conformément à la spécification du langage FEEL. Cette fonctionnalité facilite la lecture de l'expression. Afin de vous aider à modifier les expressions avec moins de saisie et en faisant moins d'erreurs, Enterprise Architect fournit support Intelli-sense pour la modification des expressions :

Pour éditer une expression, cliquez-droit sur l'expression (dans le champ de droite) et sélectionnez l'option de menu « Modifier les expressions ». La dialogue « Expression » s'affiche. Cliquez sur la ligne requise et appuyez sur Ctrl+Espace pour afficher le menu Intelli-sense :

  • Toutes les variables d'entrée de contexte antérieures à la variable actuelle seront incluses (les variables d'entrée de contexte postérieures à la variable actuelle sont exclues)
  • Pour un Métier Knowledge Modèle (BKM), tous les paramètres seront inclus
  • Pour une Décision , toutes les décisions requises seront incluses
Le modèle DMN peut être généré sous forme de code source pour JavaScript , Java, C# et C++. Étant donné que certains langages peuvent avoir une syntaxe différente pour certaines expressions, Enterprise Architect fournit des pages de remplacement de langage pour chaque langage. Si aucun code de remplacement n'est spécifié pour un langage, l'expression définie pour le langage FEEL sera utilisée.

Dans le code généré, l'espace à l'intérieur d'un nom de variable sera remplacé par un trait de soulignement.

Simulation du Modèle de Connaissance Métier

Sélectionnez l’onglet « Valeurs des paramètres d’entrée pour Simulation » et remplissez chaque champ.

Cliquez sur le bouton Enregistrer puis sur le bouton Simulation dans la barre d'outils ; le résultat du test sera présenté dans l'expression de contexte encadrée.

  • La valeur du paramètre d'exécution sera affichée ; par exemple, « Taux = 0,00375 »
  • La valeur d'exécution de la variable « Entrée de contexte » sera affichée ; par exemple, « Remboursement mensuel = 1 520,06 »
  • Le résultat du Métier Knowledge Modèle (BKM) sera évalué par la dernière entrée et les valeurs affichées sur la ligne de déclaration ; par exemple, « retour = 1540,06 »
Vous pouvez utiliser cette fonctionnalité pour tester unitairement un BKM sans connaître le contexte afin qu'il puisse être invoqué ultérieurement par un Décision ou un autre BKM.