Ana içeriğe geç

Karar Modelleri

İş kurallarının açıkça gösterilmesi, süreç mantığı genelinde paylaşılması veya komut dizilerinden ve REST hizmetlerinden değerlendirilmesi gerektiğinde karar modellerini kullanın. Emakin karar modelleri DMN standardına dayanır.

Karar modelleri, tüm iş kullanıcılarının kolayca anlayabileceği ortak bir gösterim sunar. Başlangıçtaki karar gereksinimlerini tasarlaması gereken iş analistleri ile süreçlerdeki kararları otomatikleştirmekten sorumlu teknik geliştiriciler ve bu kararları izleyecek ve yönetecek iş profesyonelleri bu mekanizmanın hedef kitlesidir. Emakin karar modeli, Object Management Group tarafından yayımlanan DMN standartlarını temel alır.

Bir karar bir veya daha fazla girdi değerinden bir çıktı değeri belirleme eylemidir. Bu mantık, bir veya daha fazla girdi değerini kullanabilir. Kurallar, formüller veya harici karar yetkisini ifade etmek için bu mantıkta iş bilgisi modelleri ve bilgi kaynakları kullanılabilir.

Karar Modeli

Temel yapı, aşağıdaki gibi grafiksel bir dille modellenebilir:

Kararları, girdileri ve gerekli ilişkileri gösteren temel DMN karar modeli.

Karar girdileri, girdi verileri veya diğer kararların çıktıları olabilir. Bir kararın girdileri içeriyorsa, başka bir kararın çıktısını “gerektirir”. Bu nedenle kararlar,, içeriyorsa, Decision1 “gerektirir”. Bu nedenle kararlar,karar modeli grafiği adı verilen bir ağda birbirine bağlanabilir..

Aşağıda yalnızca iki karar içeren basit bir karar modeli örneği gösterilmiştir:

Bağımlı kararları ve girdi verilerini içeren basit karar modeli.

Bu örnekte "Decision2", "Input Data2" girdisini gerektirir; benzer şekilde "Decision1", "Input Data 1" ve "Decision 2" öğelerini gerektirir; dolayısıyla "Input Data 2" de "Decision 1" için gereklidir.

Model Gösterimi

Gösterim Öğe Açıklama
Bir karar düğümünün DMN gösterimi. Karar Karar, bir veya daha fazla iş bilgisi modeline başvurabilen karar mantığını kullanarak çeşitli girdilerden bir çıktı belirleme eylemini ifade eder.
Bir iş bilgisi modelinin DMN gösterimi. İş Bilgisi Modeli İş bilgisi modeli, iş kuralları, karar tablosu veya analitik model gibi biçimlerde iş bilgisini kapsayan bir işlevi ifade eder.
Bir girdi verisi düğümünün DMN gösterimi. Girdi Verisi Girdi verisi öğesi, bir veya daha fazla karar tarafından girdi olarak kullanılan bilgiyi ifade eder. Bir bilgi modelinin içinde yer aldığında, bilgi modelinin parametrelerini ifade eder.
Bir bilgi kaynağının DMN gösterimi. Bilgi Kaynağı Bilgi kaynağı, bir iş bilgisi, modeli veya kararı için yetki kaynağını ifade eder.

Karar Modeli Yapıları

Girdi Verisi

Girdi verisi, diğer öğelere yönelik gereksinimleri belirtir ve aşağıdaki özelliklere sahiptir:

Ad
Girdi verisinin metinsel açıklamasının adı.

Değişken Adı
Diğer öğelerde başvurulacak girdinin adı.

Değişken Türü
İsteğe bağlı girdi türü (ör. dize, sayı, tarih, herhangi bir tür..)

İzin Verilen Değerler
Kabul edilebilir girdi verisi aralığının ifadesi; bu, dizelerin ("A","B","C") veya sayı aralığının (1...50) numaralandırılmış listesi olabilir. Girdi izin verilen aralıkta değilse InputNotAllowed özel durumu oluşturulur.

Karar

Şu anda karar mantığı, girdi verilerinden çıktılar oluşturmak için yalnızca karar tablosu ifadeleri olarak desteklenmektedir. Daha fazla bilgi için karar tablosu bölümüne bakın. Karar öğesi aşağıdaki özelliklere sahiptir:

Ad

Kararın metinsel açıklamasının adı.

İş Bilgisi Modeli

İş bilgisi modelleri, başvurulan belgeleri uygulamak için kullanılan matematiksel formülasyonlardır. BKM işlevleri FEEL sözdizimiyle yazılır. Örneğin, bir kredinin ödemesini hesaplayan PMT işlevi, BKM işlevi olarak tanımlanabilir.

1
(amount * rate / 12) / (1 – (1 + rate / 12) ** -term)

İş bilgisi modeli aşağıdaki özelliklere sahiptir:

Ad
Kararın metinsel açıklamasının adı.

Değişken Adı
Diğer öğelerde başvurulacak sonucun adı.

Değişken Türü
İsteğe bağlı sonuç türü.

FEEL

Karar mantığını modellemek için karar tablolarını, hesaplamaları, mantığı ve basit veri yapılarını tanımlayıp bir araya getirmeye yönelik FEEL adlı bir dil vardır. if/then/else Daha fazla bilgi için FEEL başvurusuna bakın.

Karar Tablosu

Karar tablosu, modeldeki karar öğeleri için mantıksal bir ifadedir. Daha fazla bilgi için Karar Tablosu bölümüne bakın.

Kararları Çalıştırma

Kararlar, komut dizisi ortamından "karar hizmeti" olarak çağrılabilir ve ayrıca emakin rest hizmetinden.

Komut Dizisi Ortamı

Komut dizisinden karar çağırmak için kullanılan kural şöyledir:

1
var result = $Decisions.<DecisionName>( inputData );

DecisionName grafikteki bir kararın adını belirtir.

InputData bir JavaScript nesnesi veya XML verisi olabilir. XML verileriyle JSON nesnelerinin birleştirilmesi de desteklenir.

Kararın yalnızca bir çıktı ifadesi varsa sonucun, çıktı değerinin doğrudan değeri olduğunu unutmayın. Kararın birden fazla çıktı ifadesi varsa sonuç her zaman bir JavaScript nesnesidir ve çıktı ifadeleri bu sonuç nesnesinin özellikleridir.

JavaScript Nesnesi Örneği

1
2
3
4
var result = $Decisions.MyDecision({
  Product : 'Candy',
  Units : 30
});

XML Verisi Örneği

1
var result = $Decisions.MyDecision( $Xml.SelectSingle('Order') );

Daha fazla bilgi ve örnek için komut dizisi başvurusuna bakın.

REST Hizmeti

Uzaktan yürütme ayrıntıları için REST karar hizmeti belgelerine bakın.

Karar Modeli Örneği

Yemek seçimi mantığında kullanılan örnek karar modeli.

Yemek Karar Tablosu

Yemek karar tablosu örneği.

İçecekler Karar Tablosu

İçecekler karar tablosu örneği.