Ana içeriğe geç

Karar Modelleri

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

Karar modelleri, tüm iş kullanıcılarının kolayca anlayabileceği ortak bir gösterim sunar. İlk 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ına dayanır.

Bir karar işlemi, bir veya daha fazla girdi değerinden bir çıktı değeri belirlemektir. Bu mantık, kuralları, formülleri veya harici karar yetkisini ifade etmek için iş bilgisi modellerini ve bilgi kaynaklarını kullanabilir.

Karar Modeli

Temel yapı, aşağıdaki gibi grafiksel bir dilde 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”, içeriyorsa, Decision1 “gerektirir”. Bu nedenle kararlar, karar modeli grafiği.

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", "Decision 1" için de gereklidir.

Model Gösterimi

Gösterim Öğe Açıklama
Karar düğümü için 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.
İş bilgisi modeli için DMN gösterimi. İş Bilgisi Modeli İş bilgisi modeli; iş kuralları, karar tablosu veya analitik model gibi biçimlerdeki iş bilgisini kapsayan bir işlevi ifade eder.
Girdi verisi düğümü için DMN gösterimi. Girdi Verisi Girdi verisi öğesi, bir veya daha fazla kararın girdi olarak kullandığı bilgiyi ifade eder. Bir bilgi modelinin içinde yer aldığında, bu modelin parametrelerini ifade eder.
Bilgi kaynağı için DMN gösterimi. Bilgi Kaynağı Bilgi kaynağı, bir iş bilgisi, modeli veya kararı için yetkili kaynağı ifade eder.

Karar Modeli Yapı Taşları

Girdi Verisi

Girdi verisi, diğer öğelerin gereksinimlerini 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. string, number, date, any...).

İzin Verilen Değerler
Girdi verisinin kabul edilebilir aralığını belirten ifade; bu, bir dizge listesi ("A","B","C") veya sayı aralığı (1...50) 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 tablosuna 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ü
Sonucun isteğe bağlı türü.

FEEL

Karar mantığını modellemek için karar tablolarını, hesaplamaları, if/then/else mantığı ve basit veri yapılarını tanımlayıp bir araya getirmeye yönelik FEEL adlı bir dil vardır. Daha fazla bilgi için FEEL başvuru kaynağına 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ı Yürütme

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

Komut Dosyası Ortamı

Bir kararı komut dosyasından çağırma biçimi şöyledir:

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

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

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

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

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 dosyası başvuru kaynağına bakın.

REST Hizmeti

Uzaktan yürütme ayrıntıları için REST karar hizmeti bölümüne 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.