O regu­łach biz­ne­so­wych już nie raz tu napi­sa­łem, mię­dzy inny­mi to, że

Regułą biz­ne­so­wą jest ogra­ni­cze­nie spe­cy­ficz­ne dla danej orga­ni­za­cji, zde­fi­nio­wa­ne dla całe­go jej obsza­ru funk­cjo­no­wa­nia. (Reguły biz­ne­so­we ? czym są?).

Jednym z punk­tów Business Rules Manifesto jest bar­dzo waż­ny zapis: Reguły nie są pro­ce­sa­mi ani pro­ce­du­ra­mi”, o któ­rym tak­że już wspo­mi­na­łem, a wie­lu mode­lu­ją­cych pro­ce­sy zapo­mi­na o tym. Dzięki tej zasa­dzie”, mode­le (dia­gra­my) pro­ce­sów sta­ją się prost­sze i przy­swa­jal­ne. Przyszła kolej na kolej­ne waż­ne uprosz­cze­nie”.

Tablice decyzyjne

Cóż to takiego?

Tablice decy­zyj­ne sta­no­wią, jed­ną z pod­sta­wo­wych tech­nik sto­so­wa­nych w roz­wią­zy­wa­niu pro­ble­mów i podej­mo­wa­niu decy­zji. Dzięki tabli­com decy­zyj­nym moż­na w zwię­zły spo­sób okre­ślić, przy speł­nie­niu z góry okre­ślo­nych warun­ków, jakie czyn­no­ści nale­ży pod­jąć. Tablica decy­zyj­na jest okre­ślo­ną struk­tu­rą opi­su zbio­ru zwią­za­nych ze sobą reguł decy­zyj­nych. (Tablica decy­zyj­na ? Encyklopedia Zarządzania).

Z per­spek­ty­wy mate­ma­ty­ki” war­to wie­dzieć, że tabli­ce decy­zyj­ne to łatwa dro­ga do uprosz­cze­nia opi­sów logi­ki zacho­wań systemu:

Decision tables are a pre­ci­se yet com­pact way to model com­pli­ca­ted logic. (Decision table – Wikipedia, the free encyc­lo­pe­dia).

I bar­dzo waż­ne: regu­ła decy­zyj­na to nie regu­ła biz­ne­so­wa. Ale naj­pierw pro­sty przykład:

Tablica decyzyjna

Tablica decy­zyj­na skła­da się z:

  1. Listy ele­men­tar­nych warun­ków (testów). 
  2. Listy ele­men­tar­nych, moż­li­wych do pod­ję­cia działań.
  3. Tablicy testów – regu­ły decyzyjne.
  4. Tablicy dzia­łań – zacho­wa­nia w odpo­wie­dzi na speł­nio­ne reguły.

Reguły muszą się wza­jem­nie wyklu­czać (jeże­li dopusz­cza­my jed­no­cze­sne zapa­le­nie się świa­teł żół­te­go i czer­wo­ne­go jest to kolej­na, czwar­ta regu­ła czy­li czwar­te inter­pre­to­wa­ne zda­rze­nie). Wystąpienie sytu­acji speł­nia­ją­cej regu­ły, to zdarzenia.

Warto zwró­cić uwa­gę na fakt, że kom­bi­na­cji trzech kolo­rów jest wię­cej, obsłu­gu­je­my” (reagu­je­my na) jed­nak jedy­nie część z nich. Ogólna zasa­da jest taka, że kom­bi­na­cje nie­udo­ku­men­to­wa­ne są igno­ro­wa­ne, jed­nak w warun­kach np. biz­ne­so­wych, chro­ni­my się nie raz przez bez­czyn­no­ścią usta­na­wia­jąc np. regu­łę, jeże­li żad­ne z tych to…” (albo two­rzy­my tak zwa­na tabli­ce zupeł­ną). Często jed­nak dopusz­cza­my brak dzia­ła­nia”, bo gdy na skrzy­żo­wa­niu zapa­lą się jed­no­cze­śnie świa­tło zie­lo­ne i czer­wo­ne, raczej zigno­ru­je­my taki sygnał trak­tu­jąc go jako awa­rię systemu.

Powyższy przy­kład to zestaw dozwo­lo­nych zacho­wań na skrzy­żo­wa­niu o ruchu kie­ro­wa­nym sygna­li­za­cją świetl­ną. Przykład pro­sty ale pro­szę sobie wyobra­zić, że widu­ję mode­le pro­ce­sów biz­ne­so­wych, na któ­rych podob­ne regu­ły” są mode­lo­wa­ne z pomo­cą bra­mek decy­zyj­nych i prze­pły­wów. Nie podej­mę się tu nawet nary­so­wa­nia tego jako przy­kła­du, zda­ję się na Państwa wyobraźnię :).

Tak więc, regu­ły biz­ne­so­we to ogól­no-orga­ni­za­cyj­ne ogra­ni­cze­nia. Tablice decy­zyj­ne to rodzaj wie­dzy” wpi­sa­nej w punk­ty podej­mo­wa­nia decy­zji. Na mode­lach (dia­gra­mach) pro­ce­sów biz­ne­so­wych mode­lu­je­my jedy­nie skut­ki, czy­li reak­cje na pod­ję­te – zgod­nie z tabli­cą – decyzje.

Użycie opi­sa­nej tabli­cy na dia­gra­mie np. BPMN, pole­ga­ło by na uży­ciu bram­ki XOR z czte­re­ma wyj­ścia­mi, każ­de wyj­ście repre­zen­to­wał by wiersz Działań. Jak widać spo­dzie­wać się nale­ży tu bra­mek XOR (alter­na­ty­wa wyłącz­na) lub OR (alter­na­ty­wa zwy­kła”). Na dia­gra­mach BPMN za bram­ką były­by czyn­no­ści nazwa­ne tak jak dzia­ła­nia w wier­szach. Aby nie kom­pli­ko­wać nazew­nic­twa tych dia­gra­mów, tabli­ca decy­zyj­na uży­ta z dia­gra­mem BPMN mia­ła by wier­sze Działań nazwa­ne np. odpo­wied­nio Wariant‑1, Wariant‑2 itd. a czyn­no­ści były by umiesz­czo­ne już na diagramie.

Tego typu tabli­ce dosko­na­le nada­ją się do mode­lo­wa­nia sys­te­mów raba­to­wych, lojal­no­ścio­wych, war­to­ści kre­dy­tów kupiec­kich, wag sco­rin­gu kre­dy­tów i wie­lu innych, w któ­rych kom­bi­na­cje skoń­czo­nej licz­by czyn­ni­ków two­rzą deter­mi­ni­stycz­ną, skoń­czo­ną licz­bę dopusz­czal­nych zacho­wań. Na dia­gra­mie pro­ce­su powo­łu­je­my się wyłącz­nie na nazwę tabli­cy (np. koja­rząc ją z kon­kret­ną czyn­no­ścią) zamiast mode­lo­wać skom­pli­ko­wa­ne prze­bie­gi. Dlaczego? Bo war­to pamię­tać, że

decy­zja – nawet bar­dzo skom­pli­ko­wa­na – nie jest pro­ce­sem a zaist­nia­łym fak­tem, odpo­wie­dzią na zasta­ne warunki

Jak widać, reak­cja kie­row­cy na sygna­li­za­tor, to nie pro­ces a fakt. Jest to kon­kret­na reak­cja na kon­kret­ną kom­bi­na­cję kolo­rów świa­teł na sygnalizatorze.

W przy­pad­ku ana­li­zy wyma­gań, sto­so­wa­nie tablic decy­zyj­nych, jako narzę­dzia spe­cy­fi­ko­wa­nia pew­nych zacho­wań sys­te­mu, jest bar­dzo wygod­ne bo po pierw­sze: jest jed­no­znacz­ne, po dru­gie tabli­ce decy­zyj­ne to już stan­dar­do­we narzę­dzie w inży­nie­rii opro­gra­mo­wa­nia i nie trze­ba wymy­ślać ich imple­men­ta­cji (sto­su­je się np. maszy­nę sta­no­wą: regu­ły to zda­rze­nia a dzia­ła­nia do przej­ścia). Tablice te jed­nak, by je popraw­nie two­rzyć, wyma­ga­ją wni­kli­wej ana­li­zy i wie­dzy z zakre­su logi­ki. Zapewne jesz­cze o nich tu napiszę.

(war­to mieć narzę­dzie CASE wspie­ra­ją­ce budo­wa­nie tablic decy­zyj­nych i koja­rze­nie ich z mode­la­mi pro­ce­sów czy mode­la­mi dzie­dzi­ny, pakiet Visual-Paradigm ma takie narzędzie)

(na pod­sta­wie: Solomon L. Pollack, Harry T. Hicks, Jr, William J. Harrison: Tablice decy­zyj­ne, PWN Warszawa 1975, oraz: Tablice decy­zyj­ne | | Jarosław Żeliński IT-Consulting) 

Jarosław Żeliński

BIO: Od roku 1991 roku, nieprzerwanie, realizuję projekty z zakresu analiz i projektowania systemów, dla urzędów, firm i organizacji. Od 1998 roku prowadzę także samodzielne studia i prace badawcze z obszaru analizy systemowej i modelowania (modele jako przedmiot badań: ORCID). Od 2005 roku, jako nieetatowy wykładowca akademicki, prowadzę wykłady i laboratoria (ontologie i modelowanie systemów informacyjnych, aktualnie w Wyższej Szkole Informatyki Stosowanej i Zarządzania pod auspicjami Polskiej Akademii Nauk w Warszawie. Oświadczenia: moje badania i publikacje nie mają finansowania z zewnątrz, jako ich autor deklaruję brak konfliktu interesów.

Ten post ma 6 komentarzy

  1. Henryk

    Jarku, pre­zen­tu­jesz tutaj jeden punkt widze­nia opar­ty na kil­ku zało­że­niach. Upraszczanie zawsze było mi bli­skie, jed­nak takie podej­ście ma też swo­je ogra­ni­cze­nia. Można je sto­so­wać do nie­zbyt skom­pli­ko­wa­nych sys­te­mów, w któ­rych – jak sam napi­sa­łeś – skoń­czo­na licz­ba czyn­ni­ków umoż­li­wia przy­go­to­wa­nie wspo­mnia­nej tabli­cy decy­zyj­nej. Dodam jesz­cze, że przy­dat­ne to jest w przy­pad­ku sys­te­mów o cha­rak­te­rze tech­nicz­nym”, w któ­rych tzw. czyn­nik ludz­ki” nie odgry­wa istot­nej, bądź nawet żad­nej roli.

    Zmodyfikowałbym nato­miast defi­ni­cję, w któ­rej mowa o tym, że 9cytuję): Tablice decy­zyj­ne sta­no­wią, jed­ną z pod­sta­wo­wych tech­nik sto­so­wa­nych w roz­wią­zy­wa­niu pro­ble­mów i podej­mo­wa­niu decy­zji.” Usunąłbym z niej sło­wo pod­sta­wo­wych”. To jedy­nie inter­pre­ta­cja auto­ra tej defi­ni­cji”.

    Pozdrawiam

    1. Jarek Żeliński

      Oczywiście, że tabli­ce te igno­ru­ją” czło­wie­ka bo ich celem jest auto­ma­ty­za­cja (uzy­ska­nie 100% powta­rzal­no­ści odpo­wie­dzi na zna­ne bodź­ce). Co do ogra­ni­cze­nia stop­nia kom­pli­ka­cji to nie sądzę 🙂 by takie było bo każ­da tabli­ca jest skoń­czo­na. Ograniczeniem jest w moich oczach jest to, że nie zawsze jest sens zastę­po­wa­nia czło­wie­ka taką tabli­cą”, gdyż koszt jej opra­co­wa­nia może wie­lo­krot­nie prze­wyż­szać koszt oso­by z nie­zbęd­nym doświad­cze­niem a nawet może nie być to moż­li­we (nie tyl­ko w spo­rcie pozo­sta­ną jed­nak sędziowie).

      Racje masz na pew­no, zga­dzam się, pisząc że to spo­sób tech­nicz­ny, w któ­rym rola czło­wie­ka jest zero­wa. Moim zda­niem taki jest wła­śnie cel sto­so­wa­nia takich tablic, mój przy­kład ze świa­tła­mi na skrzy­żo­wa­niu to nic inne­go jak unie­moż­li­wie­nie, wręcz zaka­za­nie czło­wie­ko­wi, podej­mo­wa­nia uzna­nio­wych decy­zji o bez­pie­czeń­stwie prze­je­cha­nia przez skrzy­żo­wa­nie. System sco­rin­go­wy, to tabli­ca decy­zyj­na, ma nie tyl­ko za zada­nie zauto­ma­ty­zo­wać pro­ces udzie­la­nia kre­dy­tów ale tak­że wyeli­mi­no­wać czyn­nik ludz­ki podat­ny na nad­uży­cia 🙂 (arbi­tral­ne udzie­la­nie kre­dy­tów za korzy­ści mająt­ko­we, bli­skim itp.).

      Tak więc fak­tycz­nie tabli­ce decy­zyj­ne to mecha­ni­za­cja ale taka jest, tak to postrze­gam ja i nie tyl­ko, rola. Czy to pod­sta­wo­wy” spo­sób? Hm… myślę, że jeden z pod­sta­wo­wych, tak w dużym stop­niu dzia­ła tak­że ludz­ki mózg 🙂 (zbie­ra­nie doświad­cze­nia to kolek­cjo­no­wa­nie par: bodziec – sku­tek o naj­więk­szym praw­do­po­do­bień­stwie wystą­pie­nia). Zwróć tak­że uwa­gę, że tabli­ca jaką opi­sa­łem, nie tłu­ma­czy dla­cze­go aku­rat zie­lo­ne zna­czy jechać, usta­la, tyl­ko, że zie­lo­ny. Rzecz w tym, by w dużym ruchu kie­row­ca nie musiał ana­li­zo­wać sytu­acji wokół sie­bie, a zare­ago­wał jak mał­pa” nie poświę­ca­jąc na tę decy­zje cza­su i nie wymu­sza­jąc pierwszeństwa. 

  2. Henryk

    Przykład z sygna­li­za­cją świetl­ną i zaka­zy­wa­niem czło­wie­ko­wi podej­mo­wa­nia uzna­nio­wych decy­zji jest o tyle cie­ka­wy, że – no wła­śnie: sygna­li­za­cja świetl­na oka­zu­je się zbęd­na. Eksperyment sha­re spa­ce”, któ­ry wymy­ślił holen­der­ski eks­pert ruchu dro­go­we­go Hans Monderman poka­zu­je, że pozo­sta­wie­nie czło­wie­ko­wi moż­li­wo­ści podej­mo­wa­nia decy­zji przy zre­du­ko­wa­nych do mini­mum (do dwóch) zasa­dach, daje efekt w posta­ci zna­czą­ce­go zmniej­sze­nia licz­by wypadków.
    Przykład ten poka­zu­je, że auto­ma­ty­za­cja nie jest pana­ceum na wszel­kie pro­ble­my, nawet tam, gdzie da się ją zastosować.
    Wracając do głów­ne­go wąt­ku: myślę, że to kwe­stia odpo­wied­niej defi­ni­cji: co jest, a co nie jest pro­ce­sem, czy pro­ce­du­rą, oraz w jakim przy­pad­ku tabli­ce decy­zyj­ne się sprawdzą.

    Pozdrawiam

    1. Jarek Żeliński

      Masz rację, auto­ma­ty­za­cja nie jest pana­ceum, co do eks­pe­ry­men­tu, potwier­dza on jedy­nie, że spro­wa­dze­nie decy­zji do alter­na­ty roz­wią­zu­je pro­blem” (nie pamię­tam gdzie to czy­ta­łem). Moim zda­niem tabli­ca decy­zyj­na nie zastą­pi czło­wie­ka. Ja «pole­cam ją» tam, gdzie dopusz­cza­my bez­dusz­ne decy­zje dla­te­go że są szyb­kie i tanie lub gdzie chro­ni ona (bez­dusz­ność) innych przed nad­mia­rem duszy” czło­wie­ka (nad­uży­cia). Prezes fir­my ma dwa wyj­ścia: zatrud­nić do podej­mo­wa­nia decy­zji kogoś mądre­go lub prze­jąc część na sie­bie a resz­tę zle­cić auto­ma­to­wi. Obie wer­sje znaj­du­ją zasto­so­wa­nie. Dlatego kre­dy­ty powy­żej pew­nej wyso­ko­ści prze­ka­zy­wa­ne są do nego­cja­cji ludziom :). 

      Moim zda­niem na pew­no masz rację pisząc, że zawsze decy­zje o uży­ciu tablic decy­zyj­nych powin­ny być decy­zją człowieka 🙂

  3. Tak prze­czy­ta­łem ten wpis i zaczą­łem się zasta­na­wiać nad rela­cją mię­dzy tabli­cą decy­zyj­ną, regu­ła­mi decy­zyj­ny­mi a regu­łą biz­ne­so­wą. Jakiś czas temu napi­sa­łem na swo­im blo­gu wpis: http://​mode​lo​wa​nie​.word​press​.com/​2​0​1​2​/​0​7​/​1​6​/​z​a​d​a​n​i​e​-​r​e​g​u​l​a​-​b​i​z​n​e​s​o​wa/ i teraz zaczą­łem się nad tym zasta­na­wiamć. Kiedy jesz­cze DMN moż­na było­by wyko­rzy­stać do repre­zen­ta­cji tabli­cy. Ale rów­no­cze­śnie jest to ele­ment reali­za­cji regu­ły biz­ne­so­wej. Może war­to w kon­tek­ście powyż­sze­go przy­kła­du podać przy­kład regu­ły biznesowej?

    1. Jarek Żeliński

      Przede wszyst­kim regu­ły biz­ne­so­we są ogól­no­fir­mo­we, np. każ­da fak­tu­ra kosz­to­wa musi być poprze­dzo­na wnio­skiem zaku­po­wym”. Reguły biz­ne­so­we to pra­wo orga­ni­za­cji”. System upu­stów dla klien­tów czy wyso­ko­ści (sco­ring) przy­dzie­la­nych kre­dy­tów to tabli­ce decy­zyj­ne podob­nie jak przy­kład z sygna­li­za­cją świetl­ną. Innymi sło­wy regu­ły biz­ne­so­we stwa­rza­ją w orga­ni­za­cji ogra­ni­cze­nia, tabli­ce decy­zyj­ne auto­ma­ty­zu­ją podej­mo­wa­nie kon­kret­nych decy­zji w kon­kret­nych warun­kach. Granica jest cien­ka” ale jest w moich oczach jed­no­znacz­na. Co do DMN to jest to pro­ce­so­we” podej­ście do podej­mo­wa­nia decy­zji: tu decy­zja jest efek­tem serii kro­ków. Jest to raczej model (ścież­ka) wnio­sko­wa­nia a nie podej­mo­wa­nia decy­zji”. Decyzja o tym czy jechać na skrzy­żo­wa­niu podej­mo­wa­na jest w momen­cie” zmia­ny kom­bi­na­cji świa­teł, jest zaist­nia­łym fak­tem. Ocena tego z jaka pręd­ko­ścią jechać w warun­kach pogor­sze­nia warun­ków może być pro­ce­sem podej­mo­wa­nia decy­zji: 1. Jaka mamy tem­pe­ra­tu­rę? Poniżej zera. 2. Czy są opa­dy? Tak. 3. Czy posy­pa­no solą? Nie -> jadę nie wię­cej niż 30km/h. To samo moż­na osią­gnąć z pomo­cą tabli­cy decy­zyj­nej zawie­ra­ją­cej wszyst­kie, moż­li­we, sytu­acje pogo­do­we (Warunki czy­li prze­dzia­ły tem­pe­ra­tur, sypią nie sypią, pada nie pada itp.). Moim zda­niem tabli­ca decy­zyj­na spo­koj­nie może zastą­pić drze­wo decy­zyj­ne czy DMN, może być (jako macierz) bar­dzo zło­żo­na to może być powo­dem wybo­ru innej meto­dy podej­mo­wa­nia decy­zji. Jednak w przy­pad­ku pro­jek­to­wa­nia opro­gra­mo­wa­nia (kom­pu­ter szyb­ko liczy ;)), to ogra­ni­cze­nie jak by sta­je się słabe.

      W związ­ku z tym, przy­kład z wybo­rem zwro­tu do osoby:

      Płeć: męż­czy­zna ? powi­ta­nie: Pan;
      Płeć: kobie­ta oraz Stan: mężat­ka ? powi­ta­nie: Pani;
      Płeć: kobie­ta oraz Stan: wol­ny ? powi­ta­nie: Panna;

      to decy­zja (mate­riał na tabli­cę) a nie regu­ła biz­ne­so­wa. Regułą biz­ne­so­wą było by raczej: zawsze w listach adre­so­wa­nych do oso­by nale­ży jej imię i nazwi­sko poprze­dzać wła­ści­wym zwro­tem grzecz­no­ścio­wym”, powyż­sze zaś to sys­tem podej­mo­wa­nia decy­zji o tym, jaki to powi­nien być zwrot. jest to o tyle istot­ne, że ta regu­ła biz­ne­so­wa w nie­zmie­nio­nym brzmie­niu będzie obo­wią­zy­wa­ła np. wszyst­kie oddzia­ły w innych kra­jach, ale tabli­ca decy­zyj­na będzie inna dla każ­de­go kra­ju (a kon­kret­nie każ­de­go języka). 

Dodaj komentarz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.