4

JBoss Drools を使用して、構築中の一部のサービスのビジネス ロジックを特に変更しやすいものを外部化しています。

これらのルールを開発者が作成および維持できる場合、これは非常にうまく機能しており、適切なレベルの統合と統合されたワークフローがあります。

非常に高度なカスタマイズが必要な新しいサービスへの使用を拡大することを検討しています。基本的に、「エキスパート ユーザー」は、次の 2 種類のルールを設定できる必要があります。

  1. 「標準」ルール - これらはほぼ暗黙のルールであり、一般的な要件であることがわかっており、UI を構築して設定することができます。たとえば、2 つの日付間で特定の操作のみを許可するなどです。

  2. 「カスタム」ルール - 完全に壁から離れたリクエストで、試して予想することはできますが、むしろ人々に独自のルールを作成してテストさせたいと思っています :)

私の質問は、Drools を 1 と 2 の両方に使用することは可能ですか (実際に例として何かありますか) ? 基本的に、固定 UI アプリケーションで Drools ルールを効果的に作成し、「フリー テキスト」ルール エディターを UI に埋め込むには?

どんな提案でも大歓迎です!

4

1 に答える 1

7

いくつかのオプションがあります。

(2)の場合、GuvnorのルールエディタをWebアプリケーションに簡単に埋め込むことができます。Guvnorのすべてのエディターは埋め込み可能なコンポーネントであるため、使用するものと使用しないものを選択できます。このアプローチで私が目にする問題は、ユーザーに過度の電力を与えている可能性があることです:)。言い換えると、モデルに基づいてルールを作成するには、通常は技術ユーザーだけが知っている分野が必要です。たとえば、ルールを検証するためのテストを作成します。一部のビジネスユーザーはそのための十分な技術的知識を持っていますが、それはおそらく例外であり、規則ではないと思います。

私が最も好んで推奨するのは、ビジネスユーザーに馴染みのある概念と用語を使用/公開し、特定の仕事に「意味のある」ルールを作成する方法を使用する、独自のドメイン固有GUIを開発することです。時々、彼らは彼らが「ルール」を書いていることさえ知らないでしょう、しかし彼らはそうします。舞台裏では、アプリケーションはドメイン固有GUIから入力を受け取り、droolsAPIまたは文字列ベースのテンプレートを使用して動的にルールを生成します。これにより、(1)の要件は解決されますが、(2)も解決できるほど強力な場合があります。

于 2012-08-09T18:41:08.270 に答える