Výrazy v produktu Rational Focal Point jsou
vyhodnoceny asynchronně použitím fronty výrazů. Jakýkoli uzel může mít výrazy
z fronty, a může je vyhodnotit.
Poznámka: Chcete-li si prohlédnout frontu výrazů, musíte být buď globální administrátor, nebo mít globální oprávnění pro
Obchodní pravidla.
Výrazy mohou naslouchat změnám na určitých atributech tak, že jsou vyhodnoceny kdykoliv, když je atribut změní. Když je výraz vyhodnocený, hodnota je obvykle nastavena na atributu, na kterém je výraz zadán. Některá obchodní pravidla mohou také změnit hodnoty atributů. Mohl by existovat řetězec závislosti mezi výrazy.
Příklad 1: V tomto příkladu závisí atribut C na atributu B a
atribut B závisí na atributu A. Změna na atributu A hodnoty
2 by spustila vyhodnocení výrazu na atributu B. Výraz atributu B je umístěný ve frontě výrazů. Případně,
když je výraz
A+1 vyhodnocen a hodnota
3 je zadána v hodnotě atributu B, pak je spuštěn výraz pro atribut
C, a je umístěný ve frontě. Řetězec je úplný, když je vyhodnocen a zadán výraz
atributu C.
| Atribut |
Výraz |
Hodnota |
| A |
(žádný) |
1 |
| B |
A+1 |
2 |
| C |
B+1 |
3 |
Příklad 2: Změna v hodnotě A umístí
v jedné operaci 10000 výrazů na frontě výrazů.
Toto může mít významný vliv na výkon produktu
Rational Focal Point na základě
na komplikovanosti výrazů.
Poznámka: Pokud jsou výrazy přidávány do fronty vyšší rychlostí, než jsou vyhodnoceny, pak fronta natrvalo vzroste. To by mohlo vést k dlouhé době čekání na šíření změn.
| Atribut |
Výraz |
Hodnota |
| A |
(žádný) |
1 |
| B1 |
A+1 |
2 |
| B2 |
A+1 |
2 |
| B3 |
A+1 |
2 |
| - |
A+1 |
2 |
| - |
A+1 |
2 |
| B10000 |
A+1 |
2 |