ビジネスルール管理システム BRMS (1).pdf概要...

Post on 20-Apr-2018

235 views 3 download

Transcript of ビジネスルール管理システム BRMS (1).pdf概要...

ビジネスルール管理システム(BRMS)

2013年6月11日(火)

青山学院大学 社会情報学部

森田武史

1 2013年度 Webインテリジェンス論

概要

▪ ビジネルルール管理システム(BRMS)

▪ JBoss BRMS(Drools,Guvnor)

▪ ES・ルールベースシステム

▪ BRMSの利用方法

▪ EclipseとBRMSの連携方法

▪ 演習問題

▪ JavaアプリケーションからのBRMSルール実行方法

▪ 参考文献

2

概要

▪ ビジネルルール管理システム(BRMS)

▪ JBoss BRMS(Drools,Guvnor)

▪ ES・ルールベースシステム

▪ BRMSの利用方法

▪ EclipseとBRMSの連携方法

▪ 演習問題

▪ JavaアプリケーションからのBRMSルール実行方法

▪ 参考文献

3

ビジネスルール管理システム(BRMS)

▪ BRMS: Business Rule Management System

▪ 業務上の規則や条件、判断基準、経験的な対処パターンをビジネスルールとして定義・登録し、その組み合わせから複雑な業務判断を自動的に行うコンピュータ・システムのこと

▪ ビジネスルールをアプリケーションから切り離して管理可能

▪ 参考URL – http://www.itmedia.co.jp/im/articles/0803/

18/news146.html

4

ES(エキスパートシステム)とBRMSの違い

▪ ill-definedなルール(専門家の暗黙知)からwell-definedなルール(業務ルール)に対象を変更

▪ DSL(Domain Specific Language)を用いた自然言語によるルール入力 – システム部門ではなく利用部門がルールを入力可能

になり,開発スピードが向上

▪ 「業務ルール」をプログラム(Java言語など)に自動変換 – Java言語からルールを実行可能

– Eclipseなどの開発環境との連携

5

BRMSの有無による開発期間の比較

6

要件定義/ 基本設計

詳細設計 プログラミング

単体テスト 結合テスト 総合テスト

BRMSを

使わない場合

要件定義/ 基本設計

結合テスト 総合テスト

BRMSを 使う場合 期間短縮

新規開発

要件定義/ 基本設計

影響分析 詳細設計

プログラミング

単体テスト 結合テスト 総合テスト

BRMSを

使わない場合

要件定義/ 基本設計

結合テスト 総合テスト

BRMSを 使う場合 期間短縮

システム保守

BRMS製品(ビジネスルール特化型)

▪ 韓国イノルールズの「innoRules」 – http://www.earnest-business.com/activity/innorules01.htm

▪ なうデータ研究所の「NaU DSP」 – http://www.nau.co.jp/product/dsp.html

▪ 米フェア・アイザックの「FICO Blaze Advisor」 – http://www.fico.com/jp/Solutions/DMTools/Pages/rules.aspx

▪ 米IBMの「IBM WebSphere Operational Decision Management(旧ILOG JRules) – http://www-06.ibm.com/software/jp/websphere/wodm/

▪ 米スパークリング・ロジックの「Sparkling Logic SMARTS」 – http://my.sparklinglogic.com/index.php/smarts

▪ 米プログレス・ソフトウェアの「Progress Corticon」 – http://www.progress.com/en/corticon/index.html

▪ オープンソースソフトウェアの「JBoss Drools」 – http://www.jboss.org/drools/

▪ など

7

プログラムの自動生成に特化した製品

BRMS製品(オール・イン・ワン型)

▪ GCT研究所の「iRYSHA(イェライシャ)」 – http://gcti.co.jp/achitecture/irysha.html

▪ NTTデータの「TERASOLUNA ViSC」 – http://www.terasoluna.jp/product/tool/visc.html

▪ アトリスの「PEXA(ペクサ)」 – http://www.atrris.com/tech/10

▪ イスラエルのサピエンス・インターナショナルの「Sapiens(サピエンス)」 – http://www.sapiens.com

▪ ウルグアイのアルテッチの「GeneXus(ジェネクサス)」 – http://www.genexus.com/jp

▪ キャノンソフトウェアの「Web Performer」 – http://www.canon-soft.co.jp/product/web_performer/

▪ ジャスミンソフトの「Wagby(ワグビィ)」 – http://wagby.com

▪ など 8

業務ルールの実行プログラムに加え,画面プログラムや データベースのスキーマも自動生成する

概要

▪ ビジネルルール管理システム(BRMS)

▪ JBoss BRMS(Drools,Guvnor)

▪ ES・ルールベースシステム

▪ BRMSの利用方法

▪ EclipseとBRMSの連携方法

▪ 演習問題

▪ JavaアプリケーションからのBRMSルール実行方法

▪ 参考文献

9

JBoss BRMS Platformとは

▪ ビジネスルールやビジネスプロセスの管理,格納,作成,変更,デプロイを行うためのビジネスルール管理システム

▪ JBoss Enterprise BRMS Platformはレッドハットが提供している製品版 – ユーザ登録を行うことにより30日間無料で利用可能

• https://access.redhat.com/downloads#eval

▪ JBoss Drools(ドゥルールズ)はコミュニティ版で無料で利用可能 – http://www.jboss.org/drools

10

BRMSを利用するタイミング

▪ ルールのデプロイや変更の仕組みを管理する必要がある

▪ 様々なスキルレベルを持つ複数のユーザーがルールにアクセスし編集する必要がある

▪ ルール管理に関する既存のインフラストラクチャーがない

▪ アプリケーションの一部となっている技術的なルールではなく、「ビジネス」ルールを多数管理する必要がある

11

BRMSの利用者

▪ ビジネスアナリスト

▪ ルールのエキスパート

▪ 開発者

▪ ルール管理者

12

BRMSの機能概要

▪ BRMS の Web ユーザーインターフェースは、現時点で米英語、日本語、簡体中国語など、複数の言語に対応

▪ ルールエディターの種類が豊富 (グラフィックおよびテキストベースの両方)

▪ バージョン管理 (過去のアセット)

▪ カテゴリー化

▪ 構築およびデプロイ

▪ 複数のルール「アセット」を 1 つのパッケージに格納

13

BRMSのアーキテクチャー

14 http://en.wikipedia.org/wiki/Apache_Jackrabbit

概要

▪ ビジネルルール管理システム(BRMS)

▪ JBoss BRMS(Guvnor)

▪ ES・ルールベースシステム

▪ BRMSの利用方法

▪ EclipseとBRMSの連携方法

▪ 演習問題

▪ JavaアプリケーションからのBRMSルール実行方法

▪ 参考文献

15

ESの構造

16

KB

KA WS

DI

EF

(Domain Expert)

User

IE

ESの構造

17

KB

KA

IE

WS

DI

EF

(Domain Expert)

User

骨格部

Knowledge Base

Inference Engine

Working Space

周辺部

Knowledge Acquisition

Explanation Facility

Dialog Interface

略語の説明

▪ KB:Knowledge Base:知識ベース

▪ IE:Inference Engine:推論エンジン

▪ EF:Explanation Facility:説明機能

▪ DI:Dialog Interface:対話インタフェース

▪ KA:Knowledge Acquisition:知識獲得

▪ WS:Working Space:作業領域

18

認知-実行サイクル

第1サイクル:照合(Matching) WM matching All LHS

照合したルール集合→競合ルール集合(Conflict Set)

第2サイクル:競合解消(Conflict Resolution)

競合解消戦略に従って,一つのルールを選出

第3サイクル: 実行(Execution)

選択されたルールのRHSを実行

19

競合解消戦略

1.できるだけ新しいWM要素照合ルールを優先

2.1で競合解消されない場合,条件節数が多い(複雑な)ルールを優先

3.2で競合解消されない場合,ルールの定義順

業務ルールの場合には,担当者が個々のルールに対して,優先順位を指定することが多い

20

簡単なルールベースシステムの構成

21

ルールベース

推論エンジン

ワーキング メモリ

インタフェース

ユーザ

用語の説明

▪ ワーキングメモリ – 複数のアサーション(本実験システムでは,変数=値)が保持されて

いる

▪ ルールベース – 複数のルールを保持

– ルールは,条件部(IF部)と結論部(THEN部)から構成される

– ルールの条件部にはいくつかのパターン(1つ以上のアサーションにマッチングさせることのできる文字列)が記述され,結論部は新たにワーキングメモリに加えるアサーションが記述される

▪ 推論エンジン – ワーキングメモリの状態により起動可能なルールをルールベースか

ら選択し,解釈実行する

– ルールは,条件部におけるすべてのパターンがワーキングメモリにおける要素との照合が成功した場合に起動可能となる

22

例:下記の条件で前向き推論を実行

23

sample_rule1: IF A==true THEN B=true THEN C=true sample_rule2: IF A==true AND B==true AND G==true THEN D=true sample_rule3: IF A==true AND B==true AND Z==true THEN H=true sample_rule4: IF A==true AND C==true THEN E=true sample_rule5: IF A==true AND B==true AND C==true THEN F=true

ルールベース Z=true G=true A=true

ワーキングメモリ

推論エンジン(IE) 競合解消戦略(戦略1→戦略2→戦略3)

但し,同じルールを2度適用しない

前向き推論実行1

24

sample_rule1: IF A==true THEN B=true THEN C=true sample_rule2: IF A==true AND B==true AND G==true THEN D=true sample_rule3: IF A==true AND B==true AND Z==true THEN H=true sample_rule4: IF A==true AND C==true THEN E=true sample_rule5: IF A==true AND B==true AND C==true THEN F=true

ルールベース Z=true G=true A=true

ワーキングメモリ

照合: sample_rule1 解消: なし

C=true B=true Z=true G=true A=true

ワーキングメモリ

追加

更新

前向き推論実行2

25

sample_rule1: IF A==true THEN B=true THEN C=true sample_rule2: IF A==true AND B==true AND G==true THEN D=true sample_rule3: IF A==true AND B==true AND Z==true THEN H=true sample_rule4: IF A==true AND C==true THEN E=true sample_rule5: IF A==true AND B==true AND C==true THEN F=true

ルールベース C=true B=true Z=true G=true A=true

ワーキングメモリ

照合: sample_rule2,3,4,5 解消: sample_rule5 (戦略1+戦略2)

F=true C=true B=true Z=true G=true A=true

ワーキングメモリ

追加

更新

前向き推論実行3

26

sample_rule1: IF A==true THEN B=true THEN C=true sample_rule2: IF A==true AND B==true AND G==true THEN D=true sample_rule3: IF A==true AND B==true AND Z==true THEN H=true sample_rule4: IF A==true AND C==true THEN E=true sample_rule5: IF A==true AND B==true AND C==true THEN F=true

ルールベース F=true C=true B=true Z=true G=true A=true

ワーキングメモリ

照合: sample_rule2,3,4 解消: sample_rule4 (戦略1)

E=true F=true C=true B=true Z=true G=true A=true

ワーキングメモリ

追加

更新

前向き推論実行4

27

sample_rule1: IF A==true THEN B=true THEN C=true sample_rule2: IF A==true AND B==true AND G==true THEN D=true sample_rule3: IF A==true AND B==true AND Z==true THEN H=true sample_rule4: IF A==true AND C==true THEN E=true sample_rule5: IF A==true AND B==true AND C==true THEN F=true

ルールベース E=true F=true C=true B=true Z=true G=true A=true

ワーキングメモリ

照合: sample_rule2,3 解消: sample_rule2 (戦略3)

D=true E=true F=true C=true B=true Z=true G=true A=true

ワーキングメモリ 追加

更新

前向き推論実行5

28

sample_rule1: IF A==true THEN B=true THEN C=true sample_rule2: IF A==true AND B==true AND G==true THEN D=true sample_rule3: IF A==true AND B==true AND Z==true THEN H=true sample_rule4: IF A==true AND C==true THEN E=true sample_rule5: IF A==true AND B==true AND C==true THEN F=true

ルールベース D=true E=true F=true C=true B=true Z=true G=true A=true

ワーキングメモリ

照合: sample_rule3 解消: なし

追加

更新

H=true D=true E=true F=true C=true B=true Z=true G=true A=true

ワーキングメモリ

前向き推論実行6

29

sample_rule1: IF A==true THEN B=true THEN C=true sample_rule2: IF A==true AND B==true AND G==true THEN D=true sample_rule3: IF A==true AND B==true AND Z==true THEN H=true sample_rule4: IF A==true AND C==true THEN E=true sample_rule5: IF A==true AND B==true AND C==true THEN F=true

ルールベース H=true D=true E=true F=true C=true B=true Z=true G=true A=true

ワーキングメモリ

照合: なし 解消: なし

終了

概要

▪ ビジネルルール管理システム(BRMS)

▪ JBoss BRMS(Drools,Guvnor)

▪ ES・ルールベースシステム

▪ BRMSの利用方法

▪ EclipseとBRMSの連携方法

▪ 演習問題

▪ JavaアプリケーションからのBRMSルール実行方法

▪ 参考文献

30

BRMSのインストール方法

▪ Webインテリジェンス講義Webページの「BRMS_install.docx」を参照

▪ TomcatまたはJBoss AS ▪ GuvnorまたはJBoss Enterprise BRMS

▪ Eclipseと連携する場合

– Eclipse – drools-distribution

• ライブラリ

– droolsjbpm-tools • Eclipseプラグイン

31

ログイン方法(JBoss Enterprise BRMSの場合)

32

BRMS Consoleを選択

ログイン方法(JBoss Enterprise BRMSの場合)

33

brms-users.propertiesで 有効にしたIDとパスワードを入力

初期画面

34

用語の説明

▪ アセット – リポジトリにバージョンとして格納できるものすべて – ルール,決定表,モデル,テスト,DSL

▪ カテゴリ – ルール(アセット)を分類するためにユーザが付与可能なラベル – 1つのルールに複数のカテゴリを設定可能

▪ アセットエディター(Guided Editor) – ルールを編集可能なエディタ

– 条件,制約,アクション,フィールド,オプションの追加・削除などが可能

– ルールの検証と確認,ルールソースの参照などが可能 – Business Rules Language (BRL) 形式でルールを編集

35

カテゴリの作成

36

初期状態ではHome Mortgageと Commercial Mortgageなどのカテゴリ が作成されている

Knowledge Bases

37

Knowledge Bases

▪ Business rule assets – ビジネルルールを定義 – Guided Editorを利用して作成するルールと決定表

▪ Technical rule assets ▪ DSL configurations

– DSL(Domain Specific Language)の設定

▪ Model – データ構造を定義

▪ Enumerations – データ列挙(ドロップダウンリストの設定)

▪ Test Scenarios – ルールが正しく動作するかどうかのテストシナリオの作成と実行

▪ Other assets, documentation

38

Model

39

クラスとそのフィールド データベースのテーブルとカラム のようなもの

Business rule assets

40 スプレッドシート形式 BRL(Business Rule Language)形式

ルールの構成

▪ When

– ルールの満たすべき条件を入れる

– 例:申請者が21歳未満の場合

▪ Then

– ルールの条件部分が満たされた場合に実行すべきアクションが入る

– 例:申請者は年齢制限に達していないため、ローンは却下

41

CreditApprovalルール

42

ソースコード Model: Applicant

mvel: http://mvel.codehaus.org/

DSL configurations

43

ルールを作成する際に,WhenとThenで選択可能なテンプレートを作成.

Enumerationsで定義

Enumerations

44

DSL configurations

Business rules assets

BankruptcyHistoryルール

45

Model

ルールの優先順位を示す数値

BankruptchyHistoryルールの 作成手順

46

BankruptchyHistoryルールの 作成手順

47

BankruptchyHistoryルールの 作成手順

48

変数名の設定が必要

BankruptchyHistoryルールの 作成手順

49

デモで説明

BankruptchyHistoryルールの 作成手順

50

Pricing loans決定表

51

条件

結論

1行に1つのルールが定義可能

Pricing loans決定表の 作成手順

52

Pricing loans決定表の 作成手順

53

Test Scenarios

54

21歳よりも若い場合にはローンできないルールがある. ある志願者が17歳の場合にローンできないことを

期待するテストシナリオを作成して,実行が正しくできていることが確認できる.

Package snapshots

55

パッケージのスナップショットを 保存できる.

概要

▪ ビジネルルール管理システム(BRMS)

▪ JBoss BRMS(Drools,Guvnor)

▪ ES・ルールベースシステム

▪ BRMSの利用方法

▪ EclipseとBRMSの連携方法

▪ 演習問題

▪ JavaアプリケーションからのBRMSルール実行方法

▪ 参考文献

56

Eclipse Guvnor Tools (EGT)

▪ JBoss BRMS(Guvnor)からアセットの参照や実行を可能にするEclipseプラグイン

▪ Eclipse Guvnor Tools (EGT) – https://github.com/droolsjbpm/droolsjb

pm-tools/tree/master/drools-eclipse

– http://www.jboss.org/drools/downloads • droolsjbpm-tools-distribution-5.5.0.Final.zip

▪ インストール方法は「BRMS_install.docx」を参照

57

EGTの設定

▪ EclipseのWindow->Open Perspective->Otherから「Guvnor Repository Exploring」を選択

▪ 画面左側の「Guvnor Repositories」の「Add a guvnor repository connection」を選択し,以下を入力し,「Finish」ボタンを押す

58

/guvnor-5.5.0.Final-tomcat-6.0/org.drools.guvnor.Guvnor/webdav/

Tomcatの場合: Repository

EGTの設定

59

REST API ▪ パッケージの取得

– http://localhost:8080/jboss-brms/rest/packages/ – http://localhost:8080/guvnor-5.5.0.Final-tomcat-6.0/rest/packages/ – http://localhost:8080/guvnor-5.5.0.Final-jboss-as-7.0/rest/packages/

▪ アセットの取得 – http://localhost:8080/jboss-brms/rest/packages/mortgages/assets/ – http://localhost:8080/guvnor-5.5.0.Final-tomcat-

6.0/rest/packages/mortgages/assets/ – http://localhost:8080/guvnor-5.5.0.Final-jboss-as-

7.0/rest/packages/mortgages/assets/

▪ BankruptchyHistoryルールのソースの取得 – http://localhost:8080/jboss-

brms/rest/packages/mortgages/assets/No%20bankruptcies/source – http://localhost:8080/guvnor-5.5.0.Final-tomcat-

6.0/rest/packages/mortgages/assets/No%20bankruptcies/source – http://localhost:8080/guvnor-5.5.0.Final-jboss-as-

7.0/rest/packages/mortgages/assets/No%20bankruptcies/source

▪ ドキュメント – http://docs.jboss.org/drools/release/5.5.0.Final/drools-guvnor-

docs/html_single/index.html#d0e3485

60

概要

▪ ビジネルルール管理システム(BRMS)

▪ JBoss BRMS(Drools,Guvnor)

▪ ES・ルールベースシステム

▪ BRMSの利用方法

▪ EclipseとBRMSの連携方法

▪ 演習問題

▪ JavaアプリケーションからのBRMSルール実行方法

▪ 参考文献

61

旅費規程

▪ 旅費規程 – 1日の出張時間が4時間未満のとき 日当なし – 4時間以上,8時間未満のとき日当Cで1000円 – 8時間以上,12時間未満のとき日当Bで2000円 – 12時間以上のとき日当Aで3000円

▪ if-thenルール – if 1日の出張時間 < 4.0時間 then 日当なし – if 4.0時間 <= 1日の出張時間 < 8.0時間

then 日当C:1000円 – if 8.0時間 <= 1日の出張時間 < 12.0時間

then 日当B:2000円 – 12.0時間 <= 1日の出張時間 then 日当A:

3000円

63

パッケージの作成

▪ Knowledge BasesのCreate New->New Packageから「businessTrip」パッケージを作成

64

モデルの作成

▪ Knowledge BasesのCreate New->New Declarative Modelから「BusinessTrip」モデルを作成

65

モデルの作成 ▪ Add new fact typeから「BusinessTrip」を追加 ▪ フィールドに,name(Text),hour(Decimal number),dailyAllowance

(Decimal number)を追加

66

モデルの作成 ▪ File -> save changesを選択し保存する

– 保存をしないとルールの作成時にモデルが参照できないので注意

67

ルールの作成 rule "日当なし" when BusinessTrip ( h:hour < 4.0B , n:name) then System.out.println(n+"さんの出張時間は、"+h+"時間なので、日当はありません。 (ルール:日当なし)"); bt.setDailyAllowance( 0B );

retract( bt );

endrule "日当C" when BusinessTrip ( h:hour >= 4.0B , hour < 8.0B ,n:name) then System.out.println(n+"さんの出張時間は、"+h+"時間なので、日当は1000円です。 (ルール:日当C)"); bt.setDailyAllowance( 1000B );

retract( bt );

endrule "日当B" when BusinessTrip ( h:hour >= 8.0B , hour < 12.0B, n:name ) then System.out.println(n+"さんの出張時間は、"+h+"時間なので、日当は2000円です。 (ルール:日当B)"); bt.setDailyAllowance( 2000B );

retract( bt );

endrule "日当A" when BusinessTrip ( h:hour >= 12.0B ,n:name) then System.out.println(n+"さんの出張時間は、"+h+"時間なので、日当は3000円です。 (ルール:日当A)"); bt.setDailyAllowance( 3000B );

retract( bt );

end

68

ルールの作成

69

▪ Knowledge BasesのCreate New->New Ruleから「日当なし」,「日当A」,「日当B」,「日当C」の4つのルールを作成

日当A,B,Cについても 同様

「日当なし」ルールの作成

▪ ルール ▪ 1日の出張時間が4時間未満のとき 日当なし

70

「日当なし」ルールの作成

▪ ルール ▪ 1日の出張時間が4時間未満のとき 日当なし

71

「日当なし」ルールの作成

72

「日当なし」ルールの作成

73

System.out.println(n+"さんの出張時間は、"+h+"時間なので、日当はありません。 (ルール:日当なし)");

「日当なし」ルールの作成

74

「日当なし」ルールの作成

75

「日当なし」ルールの作成

76

「日当なし」ルールの作成

77

ルールの作成

▪ 日当A,B,Cについてもほぼ同様の手順で作成していく

78

日当A

日当B

日当C

テストシナリオの作成

▪ Knowledge BasesのCreate New->New Test Scenarioから「BusinessTripTest」テストシナリオを作成

79

名前(name)

出張時間(hour)

野中 3.5h

大前 5.0h

米倉 8.0h

嶋口 10.0h

伊丹 13.0h

テストシナリオの作成と実行

80

実行結果

GIVENボタンを押して以下を追加 Add a fieldからnameとhourを追加

Run scenarioボタンを押す

EXPECTボタンを押して,Fact valueの Addボタンを押す

More...ボタンを押して,繰り返し入力

テストシナリオの実行(失敗例)

81

0とすべきところを 1000に変更すると テストが通らない

Package snapshotの作成

82

Package snapshotの作成

83

http://localhost:8080/guvnor-5.5.0.Final-jboss-as-7.0/org.drools.guvnor.Guvnor/package/businessTrip/TEST

リンクのURLをコピー

概要

▪ ビジネルルール管理システム(BRMS)

▪ JBoss BRMS(Drools,Guvnor)

▪ ES・ルールベースシステム

▪ BRMSの利用方法

▪ EclipseとBRMSの連携方法

▪ 演習問題

▪ JavaアプリケーションからのBRMSルール実行方法

▪ 参考文献

84

BRMS(Guvnor)のパッケージを Eclipse上で実行する方法

85

Guvnorを利用している場合には,drools-distributionを 解凍したフォルダの中のbinariesフォルダを指定. JBoss Enterprise BRMSを利用している場合には, brms-standalone-5.3.1/jboss-as/client/droolsを指定.

Droolsプロジェクトの作成

86

演習問題で作成したBRMS上のルールをJavaアプリケーションから呼び出して実行するサンプルプログラム

87

Package snapshots で保存したURLを指定

ビジネスルール名を 取得して表示

ワーキングメモリに データ(インスタンス)を追加

88

ルール実行時に 保存されたdailyAllowance 変数の値を表示

ルールを実行

Eclipse上でのBusinessTripルール実行結果

89

概要

▪ ビジネルルール管理システム(BRMS)

▪ JBoss BRMS(Drools,Guvnor)

▪ ES・ルールベースシステム

▪ BRMSの利用方法

▪ EclipseとBRMSの連携方法

▪ 演習問題

▪ JavaアプリケーションからのBRMSルール実行方法

▪ 参考文献

90

参考文献

▪ 日経コンピュータ 2012年3月15日号 – 特集 「超高速開発」 が日本を救う – http://ec.nikkeibp.co.jp/item/backno/NC0804.

html

▪ JBoss Enterprise BRMS Platformドキュメント – https://access.redhat.com/site/documentation

/JBoss_Enterprise_BRMS_Platform/?locale=ja-JP

▪ Guvnor User Guide – http://docs.jboss.org/drools/release/5.5.0.Fina

l/drools-guvnor-docs/html_single/index.html

▪ ビジネスルールの館 – http://www.iluminado.jp/home-mainmenu-

1.html

91