JP6247976B2 - Rule management support device and rule management support method - Google Patents

Rule management support device and rule management support method Download PDF

Info

Publication number
JP6247976B2
JP6247976B2 JP2014067740A JP2014067740A JP6247976B2 JP 6247976 B2 JP6247976 B2 JP 6247976B2 JP 2014067740 A JP2014067740 A JP 2014067740A JP 2014067740 A JP2014067740 A JP 2014067740A JP 6247976 B2 JP6247976 B2 JP 6247976B2
Authority
JP
Japan
Prior art keywords
rule
condition
output
result
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014067740A
Other languages
Japanese (ja)
Other versions
JP2015191418A (en
Inventor
伊藤 信治
信治 伊藤
佐藤 直人
直人 佐藤
宮崎 邦彦
邦彦 宮崎
栄孝 金藤
栄孝 金藤
山口 潔
潔 山口
木村 誠
誠 木村
浩起 森
浩起 森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2014067740A priority Critical patent/JP6247976B2/en
Publication of JP2015191418A publication Critical patent/JP2015191418A/en
Application granted granted Critical
Publication of JP6247976B2 publication Critical patent/JP6247976B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、ルール管理支援装置、およびルール管理支援方法に関する。   The present invention relates to a rule management support device and a rule management support method.

ソフトウェアは、処理対象となる製品、サービス等の業務に関する法的な規制、種々の業務上の規則、基準等に従って仕様が決定され設計される。ソフトウェアの仕様を、IF−THEN形式で整理する場合がある。IF−THEN形式の仕様は、ビジネスルール、システムルール、チェックルールなど利用するフェーズに応じて様々な呼び名がある(本願では以下、これらをすべて「ルール」と呼称する。)。ルールは、「もし〜ならば〜である」というように自然文で記述したり、条件と結果の対応関係を表形式で定義した決定表で記述したりなどさまざまな形態で表現される。例えば、命題形式の記述と決定表とを連携させてルールを定義する方法が、特許文献1で開示されている。また、特許文献1では、決定表から命題形式のルールを出力する方法が開示されている。   The specifications of software are determined and designed in accordance with legal regulations regarding business such as products and services to be processed, and various business rules and standards. Software specifications may be organized in IF-THEN format. The specifications of the IF-THEN format have various names depending on the phases to be used such as business rules, system rules, check rules, etc. (hereinafter, these are all referred to as “rules” in the present application). A rule is expressed in various forms such as “natural if” and “rule” is described in a natural sentence, or is described in a decision table in which a correspondence relation between a condition and a result is defined in a table format. For example, Patent Document 1 discloses a method for defining a rule by linking a propositional format description and a decision table. Patent Document 1 discloses a method for outputting a propositional rule from a decision table.

特開2012−190203号公報JP 2012-190203 A

ソフトウェア開発では、順守すべき法令等の改正や業務変更に伴う保守開発が多数発生する。保守開発においては、法改正や業務変更に伴い、既存のソフトウェアのどこを修正しなければならないかを特定し、次に、どう修正すべきかを設計し、それに基づきソフトウェアを改修する必要がある。このような保守開発の効率化においては、法令や業務仕様とシステム仕様の追跡性の確保が非常に重要である。例えば、法令に基づいて開発されるソフトウェアは、法令とソフトウェア仕様との追跡性を確保しておくことで、法改正が発生した場合にソフトウェアのどこを修正すれば良いかを容易に特定できる。また、ソフトウェアの仕様は、法令のみに基づいているわけではなく、様々な要件が加わっている。法令からの要件とその他の要件を明確に区別しておくことが保守性確保において有用である。   In software development, many maintenance developments occur due to revisions to laws and regulations to be observed and business changes. In maintenance and development, it is necessary to specify where existing software should be corrected in accordance with legal revisions and business changes, and then design how to correct and then modify the software based on that. In order to improve the efficiency of such maintenance and development, it is very important to ensure traceability of laws, business specifications, and system specifications. For example, software that is developed based on laws and regulations can easily identify where software should be corrected when legal revision occurs by ensuring traceability between laws and software specifications. In addition, software specifications are not based on laws and regulations, but various requirements are added. It is useful in ensuring maintainability to clearly distinguish between the requirements from the law and other requirements.

また、保守性確保では、ルールの統廃合によりルール数を最小化することも有用である。ルール数が少なくなることで、ソフトウェアの規模を抑えることができ、仕様変更時の影響範囲を極小化できる。この点、特許文献1の決定表からの命題形式のルール出力は、適用法令等に対する追跡性、ルール数の減少といったことに関しては一定の効果を有すると考えられるものの、ソフトウェアの仕様変更に伴い、どのようにルールを修正すれば良いかについては十分に手当てができていると言えない。   In order to ensure maintainability, it is also useful to minimize the number of rules by integrating and abolishing rules. By reducing the number of rules, it is possible to reduce the scale of software and minimize the scope of influence when changing specifications. In this regard, the rule output in the proposition format from the decision table of Patent Document 1 is considered to have a certain effect with respect to the traceability to the applicable laws and the like, and the reduction in the number of rules, but with the software specification change, I can't say that I have enough treatment about how to modify the rules.

上記のおよび他の課題に鑑み、本発明では、根拠情報との追跡性確保、ルール数の最小化を実現しつつ、仕様変更に伴う修正を容易に実行できるようにするルール管理支援装置、およびルール管理支援方法を提供することを目的とする。   In view of the above and other problems, in the present invention, a rule management support device that makes it possible to easily execute correction accompanying a specification change while ensuring traceability with rationale information and minimizing the number of rules, and An object is to provide a rule management support method.

上記のおよび他の課題を解決するために、本発明の一実施態様は、ソフトウェア仕様の開発におけるルールの管理を支援するための装置であって、前記ルールが成立するための条件を格納する条件部と前記条件が成立した場合の結果を格納する結果部とを含む1以上の入力ルールを受け付けるための入力ルール受付部と、出力するルールが成立するための条件であるルール出力条件を受け付けるルール出力条件受付部と、前記入力ルールと前記ルール出力条件とに基づきルールを出力するためのルール出力部とを備え、前記ルール出力条件受付部は、前記入力ルール毎または全部に対して、当該入力ルールをそのまま出力することを指示するための修正不可オプション、当該入力ルールの修正を許可することを指示するための修正可オプション、および当該入力ルールの形式を考慮しない未活用オプションのうち1以上のオプションについて、適用する前記オプションを指定するためのオプション指定部を備え、前記ルール出力部は、前記オプション指定部を参照して、前記修正不可オプションが指定されていると判定した場合、前記入力ルールをそのまま出力し、1の前記修正可オプションが指定されていると判定した場合、当該修正可オプションが指定されている前記入力ルールと、前記未活用オプションが指定されている前記入力ルールの一部または全部と等価となるルールとを結合した結果を、前記修正可オプションが指定された前記入力ルールの修正可否の判定条件である類似度判定条件に基づいて判定し、前記類似度が許容範囲内であって修正可能と判定された場合に前記入力ルールに修正を加えたルールを出力し、前記未活用オプションが指定されていると判定した場合、当該未活用オプションが指定されている前記入力ルールの一部または全部と等価となるルールを出力することを特徴とする。   In order to solve the above-mentioned and other problems, an embodiment of the present invention is an apparatus for supporting rule management in software specification development, and stores a condition for satisfying the rule And an input rule receiving unit for receiving one or more input rules including a result unit for storing a result when the condition is satisfied, and a rule for receiving a rule output condition which is a condition for establishing the output rule An output condition receiving unit; and a rule output unit for outputting a rule based on the input rule and the rule output condition, wherein the rule output condition receiving unit is configured to input the input for each or all of the input rules. A non-modifiable option for instructing to output the rule as it is, a modifiable option for instructing to permit modification of the input rule And an option designating unit for designating the option to be applied to one or more of the unused options that do not consider the format of the input rule, and the rule output unit refers to the option designating unit. If it is determined that the uncorrectable option is specified, the input rule is output as it is, and if it is determined that one of the correctable options is specified, the input in which the correctable option is specified The result of combining a rule and a rule that is equivalent to a part or all of the input rule for which the unutilized option is specified is a judgment condition for whether or not the input rule for which the correctable option is specified can be corrected. When it is determined based on a certain similarity determination condition, and it is determined that the similarity is within an allowable range and can be corrected. When a rule with a modification to the input rule is output and it is determined that the unused option is specified, a rule that is equivalent to a part or all of the input rule for which the unused option is specified It is characterized by outputting.

本発明の実施形態によれば、根拠情報との追跡性確保、ルール数の最小化を実現しつつ、仕様変更に伴う修正を容易に実行できるようにするルール管理支援装置、およびルール管理支援方法を提供することができる。   According to the embodiment of the present invention, a rule management support device and a rule management support method that can easily perform correction accompanying a specification change while ensuring traceability with ground information and minimizing the number of rules Can be provided.

図1は、本発明の第一の実施形態に係るルール管理支援装置100の構成図の例である。FIG. 1 is an example of a configuration diagram of a rule management support apparatus 100 according to the first embodiment of the present invention. 図2は、ルール出力条件指定部105におけるルール出力条件の設定画面の例である。FIG. 2 is an example of a rule output condition setting screen in the rule output condition specifying unit 105. 図3は、条件項目、結果項目、条件要素値、結果要素値、および、ユーザ定義ルールの例である。FIG. 3 is an example of condition items, result items, condition element values, result element values, and user-defined rules. 図4は、決定表400の表示例である。FIG. 4 is a display example of the determination table 400. 図5は、修正可オプション設定画面の例である。FIG. 5 is an example of a modifiable option setting screen. 図6は、ユーザ定義ルール個別オプション設定画面の例である。FIG. 6 is an example of a user-defined rule individual option setting screen. 図7は、ユーザ定義ルール保持部153のデータ構造の例である。FIG. 7 shows an example of the data structure of the user-defined rule holding unit 153. 図8は、ルール出力条件保持部154のデータ構造の例である。FIG. 8 is an example of the data structure of the rule output condition holding unit 154. 図9は、決定表保持部152のデータ構造の例である。FIG. 9 is an example of the data structure of the decision table holding unit 152. 図10は、決定表修正ルール保持部151のデータ構造の例である。FIG. 10 shows an example of the data structure of the decision table correction rule holding unit 151. 図11は、出力ルール保持部155のデータ構造の例である。FIG. 11 shows an example of the data structure of the output rule holding unit 155. 図12は、ルール出力部106の処理を示すフローチャートの例である。FIG. 12 is an example of a flowchart showing the processing of the rule output unit 106. 図13は、ルール出力部106の結果項目単位のルール生成の処理を示すフローチャートの例である。FIG. 13 is an example of a flowchart illustrating a rule generation process for each result item in the rule output unit 106. 図14は、ルール出力部106の結果項目組合せ単位のルール生成の処理を示すフローチャートの例である。FIG. 14 is an example of a flowchart showing a rule generation unit rule generation process of the rule output unit 106. 図15は、出力ルール保持部155の変更ありルールの生成の処理を示すフローチャートの例である。FIG. 15 is an example of a flowchart illustrating a process for generating a rule with a change in the output rule holding unit 155. 図16は、出力ルール表示部107における出力ルールの表示画面の例である。FIG. 16 is an example of an output rule display screen in the output rule display unit 107. 図17は、ルール出力部106の処理例を説明するためのインプットとなる情報例を示す図である。FIG. 17 is a diagram illustrating an example of information serving as an input for explaining a processing example of the rule output unit 106. 図18は、本発明の第二の実施形態に係るルール管理支援装置100の構成図の例である。FIG. 18 is an example of a configuration diagram of the rule management support apparatus 100 according to the second embodiment of the present invention.

以下、本発明について、その実施形態に則して、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている諸要素およびその組み合わせの全てが発明の解決手段に必須であるとは限らない。   Hereinafter, the present invention will be described with reference to the drawings in accordance with the embodiment. The embodiments described below do not limit the invention according to the claims, and all the elements and combinations described in the embodiments are essential for the solution of the invention. Is not limited.

第1の実施形態
本実施形態では、ユーザが定義したルールと前記ルールに基づき生成した決定表の管理を支援する装置の例を説明する。
First Embodiment In this embodiment, an example of an apparatus that supports management of a rule defined by a user and a decision table generated based on the rule will be described.

図1は、本実施形態に係るルール管理支援装置100の構成図の例である。本実施例では、1つのチェックロジックや推論ロジックなどのルール機能ロジックを実現する1以上のルールを管理する構成を説明する。システム機能の点では、ある入力に対して、ルール機能ロジックを実行すると、ある結果が返ってくる。このとき、ルールは、入力や出力に対する条件判断や制約などである。以降の説明では、ルール管理支援装置100が管理するルール機能ロジックは1つを前提としているが、複数のルール機能ロジックを管理するように構成してもよい。   FIG. 1 is an example of a configuration diagram of a rule management support apparatus 100 according to the present embodiment. In the present embodiment, a configuration for managing one or more rules that realize rule function logic such as one check logic and inference logic will be described. In terms of system function, a rule function logic is executed for a certain input, and a certain result is returned. At this time, the rules are condition judgments and restrictions on input and output. In the following description, one rule function logic managed by the rule management support apparatus 100 is assumed. However, a plurality of rule function logics may be managed.

ルール管理支援装置100は、少なくともCPU(Central Processing Unit)等のプロセッサ160、RAM(Random Access Memory)、ROM(Read Only Memory)等のメモリ170、およびキーボード、表示モニタ等の入出力装置180を備えたコンピュータである。ルール管理支援装置100は、ユーザ定義ルール入力部101(入力ルール受付部)、決定表変換部102、決定表表示部103、決定表編集部104、ルール出力条件指定部105(ルール出力条件受付部)、ルール出力部106、出力ルール表示部107、および出力ルール反映部108などの機能ロジックを備える。これらの機能ロジックはコンピュータプログラムとして実現されており、メモリ170上でプロセッサ160により実行される。また、ルール管理支援装置100は、決定表修正ルール保持部151、決定表保持部152、ユーザ定義ルール保持部153、ルール出力条件保持部154、および出力ルール保持部155などのデータを、図示を省略するハードディスクドライブ等の補助記憶装置に保管している。これらのデータはプロセッサ160が前記機能ロジックを実行する際に補助記憶装置から読みだして使用する。   The rule management support apparatus 100 includes at least a processor 160 such as a CPU (Central Processing Unit), a memory 170 such as a RAM (Random Access Memory) and a ROM (Read Only Memory), and an input / output device 180 such as a keyboard and a display monitor. Computer. The rule management support apparatus 100 includes a user-defined rule input unit 101 (input rule reception unit), a determination table conversion unit 102, a determination table display unit 103, a determination table editing unit 104, a rule output condition specification unit 105 (rule output condition reception unit) ), Functional logic such as a rule output unit 106, an output rule display unit 107, and an output rule reflection unit 108. These functional logics are realized as computer programs, and are executed by the processor 160 on the memory 170. The rule management support apparatus 100 also illustrates data such as the decision table correction rule holding unit 151, the decision table holding unit 152, the user-defined rule holding unit 153, the rule output condition holding unit 154, and the output rule holding unit 155. It is stored in an auxiliary storage device such as a hard disk drive that is omitted. These data are read from the auxiliary storage device and used when the processor 160 executes the functional logic.

ユーザ定義ルール入力部101は、条件項目、結果項目、各条件、結果項目に対する要素値(以下、条件項目に対する要素値を「条件要素値」、結果項目に対する要素値を「結果要素値」という。)、およびルール(以下、「ユーザ定義ルール」という。)を受け付け、ユーザ定義ルール保持部153に登録する。条件項目は、当該ユーザ定義ルールが組み込まれるルール機能ロジックの入力項目であり、結果項目は、当該ルール機能ロジックの出力項目である。ユーザ定義ルールは、条件項目、結果項目、条件要素値、結果要素値、および論理演算子などの組合せで構成される。図2を参照して、条件項目、結果項目、条件要素値、結果要素値、およびユーザ定義ルールの例を説明する。   The user-defined rule input unit 101 refers to element values for condition items, result items, conditions, and result items (hereinafter, element values for condition items are referred to as “condition element values”, and element values for result items are referred to as “result element values”. ) And a rule (hereinafter referred to as a “user-defined rule”), and registers them in the user-defined rule holding unit 153. The condition item is an input item of the rule function logic in which the user-defined rule is incorporated, and the result item is an output item of the rule function logic. The user-defined rule is composed of a combination of a condition item, a result item, a condition element value, a result element value, and a logical operator. With reference to FIG. 2, examples of condition items, result items, condition element values, result element values, and user-defined rules will be described.

図2は、条件項目、結果項目、条件要素値、結果要素値、およびユーザ定義ルールの例である。図2の例では、条件項目データ210は、条件項目として、「年齢」「免許証の色」および「使用目的」を含み、それぞれ、条件要素値に示す値を取り得る。例えば、条件項目「年齢」は、「35歳未満」と「35歳以上」の2つの条件要素値を持つ。次に、結果項目データ220は、結果項目として、「他者運転特約」と「割引率」を含み、それぞれ、結果要素値に示す値を取り得る。例えば、結果項目「他者運転特約」は、「指定可」と「指定不可」の2つの結果要素値を持つ。次に、ユーザ定義ルールデータ230は、条件部231と結果部232から構成される。例えば、ユーザ定義ルール233は、「免許証の色がブルーであり、かつ、使用目的が通勤であるならば、他者運転特約は指定不可で、割引率は5%である」という意味を表す。   FIG. 2 is an example of condition items, result items, condition element values, result element values, and user-defined rules. In the example of FIG. 2, the condition item data 210 includes “age”, “license color”, and “purpose of use” as the condition items, and can take values indicated by the condition element values. For example, the condition item “age” has two condition element values of “under 35 years old” and “over 35 years old”. Next, the result item data 220 includes “other driving special contract” and “discount rate” as result items, and can take values indicated in the result element values. For example, the result item “other person driving special contract” has two result element values of “specifiable” and “not specifiable”. Next, the user-defined rule data 230 includes a condition part 231 and a result part 232. For example, the user-defined rule 233 represents the meaning that “if the license color is blue and the purpose of use is commuting, the special driving policy for others cannot be specified and the discount rate is 5%”. .

次に、図1に戻ると、決定表変換部102は、ユーザ定義ルール保持部153からユーザ定義ルールを取得し、決定表に変換し、変換した決定表の情報を決定表保持部152に登録する。   Next, returning to FIG. 1, the decision table conversion unit 102 acquires the user definition rules from the user definition rule holding unit 153, converts them into decision tables, and registers the converted decision table information in the decision table holding unit 152. To do.

次に、決定表表示部103は、決定表保持部152と決定表修正ルール保持部151から決定表の情報を取得し、入出力装置180の表示画面に決定表を表示する。図3に、決定表の表示例を示す。決定表300は、条件部表示エリア301と結果部表示エリア302から構成される。条件部表示エリア301は、各条件項目の条件要素値の組合せを表示するエリアである。結果部表示エリア302は、前記各条件項目の条件要素値の組合せに対する各結果項目の結果要素値を表示するエリアである。結果部表示エリア302中の白丸「○」は決定表保持部152の情報に基づき表示した内容であり、結果部表示エリア302中の黒丸「●」は決定表修正ルール保持部151の情報に基づき表示した内容である。これにより、各条件項目の条件要素値の組合せに対する各結果項目の結果要素値が、ユーザ定義ルールに基づくもの(○印)か、ユーザが決定表上で修正を加えたもの(●印)かを、ユーザが区別できる。   Next, the decision table display unit 103 acquires information on the decision table from the decision table holding unit 152 and the decision table correction rule holding unit 151 and displays the decision table on the display screen of the input / output device 180. FIG. 3 shows a display example of the determination table. The decision table 300 includes a condition part display area 301 and a result part display area 302. The condition part display area 301 is an area for displaying a combination of condition element values of each condition item. The result part display area 302 is an area for displaying the result element value of each result item for the combination of the condition element values of each condition item. The white circle “◯” in the result portion display area 302 is the content displayed based on the information in the decision table holding unit 152, and the black circle “●” in the result portion display area 302 is based on the information in the decision table correction rule holding unit 151. It is the displayed content. As a result, whether the result element value of each result item for the combination of the condition element values of each condition item is based on the user-defined rule (○ mark) or modified by the user on the decision table (● mark) Can be distinguished by the user.

次に、決定表編集部104は、決定表300の結果部表示エリア302の修正内容を受け付け、その修正内容をルール形式に変換し(以下、変換したルールを「決定表修正ルール」という。)、決定表修正ルールを決定表修正ルール保持部151に登録する。これにより、ユーザは、表示された決定表300を確認しながら、誤りなどがある場合に、決定表を直接修正できる。   Next, the decision table editing unit 104 receives the correction content of the result part display area 302 of the decision table 300 and converts the correction content into a rule format (hereinafter, the converted rule is referred to as “decision table correction rule”). Then, the determination table correction rule is registered in the determination table correction rule holding unit 151. Thus, the user can directly correct the decision table when there is an error while checking the displayed decision table 300.

次に、ルール出力条件指定部105は、ユーザ定義ルール保持部153に登録されているユーザ定義ルールと決定表修正ルール保持部151に登録されている決定表修正ルールから、ルールを出力するための条件(以下、「ルール出力条件」という。)を受け付け、ルール出力条件をルール出力条件保持部に登録する。これにより、ユーザは、ルール出力の用途に応じて、ルール出力部106により出力されるルールの形式などをコントロールできる。   Next, the rule output condition designating unit 105 outputs a rule from the user definition rule registered in the user definition rule holding unit 153 and the decision table correction rule registered in the decision table correction rule holding unit 151. A condition (hereinafter referred to as “rule output condition”) is received, and the rule output condition is registered in the rule output condition holding unit. Thereby, the user can control the format of the rule output by the rule output unit 106 according to the use of the rule output.

次に、ルール出力部106は、ユーザ定義ルール保持部153に登録されているユーザ定義ルール、決定表修正ルール保持部151に登録されている決定表修正ルール、およびルール出力条件保持部154に登録されているルール出力条件を取得し、ユーザ定義ルールと決定表修正ルールからルール出力条件に基づきルールを出力する(以下、出力したルールを「出力ルール」という。)。ルール出力部106は、出力ルールを出力ルール保持部155に登録する。   Next, the rule output unit 106 registers the user definition rule registered in the user definition rule holding unit 153, the decision table correction rule registered in the decision table correction rule holding unit 151, and the rule output condition holding unit 154. The rule output condition is acquired, and the rule is output based on the rule output condition from the user-defined rule and the decision table correction rule (hereinafter, the output rule is referred to as “output rule”). The rule output unit 106 registers the output rule in the output rule holding unit 155.

次に、出力ルール表示部107は、出力ルール保持部155に登録されている出力ルールを入出力装置180の表示モニタ等の画面に表示する。これにより、ユーザは、どのようにユーザ定義ルールを修正すればよいか、意図した通りにユーザ定義ルールが定義されているかなどを確認できる。   Next, the output rule display unit 107 displays the output rule registered in the output rule holding unit 155 on a screen such as a display monitor of the input / output device 180. Thereby, the user can confirm how to modify the user-defined rule, whether the user-defined rule is defined as intended, or the like.

次に、出力ルール反映部108は、出力ルール保持部155に登録されている出力ルールを、ユーザ定義ルール保持部153に追加、もしくは既存のユーザ定義ルールを変更、あるいは削除する。これにより、ユーザは、効率よく出力ルールをユーザ定義ルールに反映できる。   Next, the output rule reflection unit 108 adds the output rule registered in the output rule holding unit 155 to the user-defined rule holding unit 153, or changes or deletes the existing user-defined rule. Thereby, the user can reflect an output rule in a user definition rule efficiently.

続いて、図4を参照して、ルール出力条件指定部105におけるルール出力条件の設定画面について説明する。   Next, a rule output condition setting screen in the rule output condition specifying unit 105 will be described with reference to FIG.

図4は、本実施形態に係るルール管理支援装置100のルール出力条件指定部105におけるルール出力条件の設定画面の例である。ルール出力条件設定画面400は、出力範囲指定領域410、ユーザ定義ルール活用モード指定領域420、出力単位指定領域430、および出力ルール制約指定領域440などの領域を含む。   FIG. 4 is an example of a rule output condition setting screen in the rule output condition specifying unit 105 of the rule management support apparatus 100 according to the present embodiment. The rule output condition setting screen 400 includes areas such as an output range designation area 410, a user-defined rule utilization mode designation area 420, an output unit designation area 430, and an output rule constraint designation area 440.

出力範囲指定領域410は、出力対象のルールの範囲を指定する領域であり、すべての範囲411、結果定義済み範囲すべて412、ユーザ選択範囲413、結果未定義範囲414、条件範囲指定415、および結果範囲指定416などの選択子を有する。ユーザ選択範囲413には、範囲選択ボタン417があり、範囲選択ボタン417を押下することで、ユーザ定義ルール、または決定表の範囲、またはそれらの組合せで出力範囲を指定できる。条件範囲指定415には、条件項目の範囲を受け付けるテキストボックス418がある。テキストボックス418には、条件項目、条件値候補、および論理演算子などを組合せて条件項目の範囲を指定できる。結果範囲指定416は、結果項目の範囲を受け付けるテキストボックス419を有する。テキストボックス419には、結果項目、結果値候補、および論理演算子などを組合せて条件項目の範囲を指定できる。   The output range designation area 410 is an area for designating the range of the rule to be output. All ranges 411, all result defined ranges 412, user selection range 413, result undefined range 414, condition range designation 415, and result It has a selector such as a range specification 416. The user selection range 413 includes a range selection button 417. By pressing the range selection button 417, an output range can be specified by a user-defined rule, a range of a decision table, or a combination thereof. The condition range specification 415 includes a text box 418 for receiving a range of condition items. In the text box 418, a range of condition items can be specified by combining condition items, condition value candidates, logical operators, and the like. The result range designation 416 has a text box 419 that accepts a range of result items. In the text box 419, a range of condition items can be specified by combining result items, result value candidates, logical operators, and the like.

次に、出力範囲指定領域410の各選択子が選択された場合のルール出力部106の振る舞いを説明する。すべての範囲411が選択された場合、ルール出力部106は、出力ルールのすべての条件部を論理和結合した集合(以下、「出力ルール条件集合」という。)が、条件項目のすべての組合せ集合と一致するルールを出力する。すべての範囲411を選択することで、例えば、ユーザは、ルール全体について冗長性の排除、結果定義済みの範囲と未定義範囲の把握などが可能となる。ルール全体についての冗長性を排除した結果は、例えば、プログラム記述の際に役に立つ。   Next, the behavior of the rule output unit 106 when each selector in the output range designation area 410 is selected will be described. When all the ranges 411 are selected, the rule output unit 106 sets a combination of all condition parts of the output rule (hereinafter referred to as “output rule condition set”) as a combination set of all condition items. Output rules that match By selecting all the ranges 411, for example, the user can eliminate the redundancy for the entire rule, grasp the range where the results are defined, and the undefined range. The result of eliminating redundancy for the entire rule is useful, for example, when writing a program.

結果定義済み範囲すべて412が選択された場合、ルール出力部106は、出力ルール条件集合が、結果が定義されている条件集合と一致するルールを出力する。結果定義済み範囲すべて412を選択することで、例えば、ユーザは、結果定義済みの範囲に着目したルールの最適化などが可能となる。   When all the result defined ranges 412 are selected, the rule output unit 106 outputs a rule in which the output rule condition set matches the condition set in which the result is defined. By selecting all the result defined ranges 412, for example, the user can optimize a rule focusing on the result defined ranges.

ユーザ選択範囲413が選択された場合、ルール出力部106は、出力ルール条件集合が、範囲選択ボタン417の押下によりユーザが指定したユーザ定義ルールと決定表の範囲の条件部の集合と一致するルールを出力する。ユーザ選択範囲413を選択することで、例えば、ユーザは、冗長性を排除したいユーザ定義ルールのみの最適化などが可能となる。   When the user selection range 413 is selected, the rule output unit 106 determines that the output rule condition set matches the user-defined rule specified by the user by pressing the range selection button 417 and the set of condition parts in the range of the decision table. Is output. By selecting the user selection range 413, for example, the user can optimize only the user-defined rule for which redundancy is to be excluded.

結果未定義範囲414が選択された場合、ルール出力部106は、出力ルール条件集合が、結果が未定義の条件の集合と一致するルールを出力する。結果未定義範囲414を選択することで、ユーザは各条件項目の条件要素値の組合せの検討漏れの範囲を把握できる。結果未定義範囲414を選択して、ルールが出力されないことを確認することで、検討漏れがないことを確認できる。   When the result undefined range 414 is selected, the rule output unit 106 outputs a rule whose output rule condition set matches a set of conditions whose result is undefined. By selecting the result undefined range 414, the user can grasp the range of examination failure of the combination of the condition element values of each condition item. By selecting the result undefined range 414 and confirming that the rule is not output, it can be confirmed that there is no examination omission.

条件範囲指定415が選択された場合、ルール出力部106は、出力ルール条件集合が、テキストボックス418で指定された条件集合と一致するルールを出力する。条件範囲指定415を選択することで、ユーザは、指定した条件範囲において、取り得る結果項目の結果要素値を把握でき、また意図した通りの結果要素値となっているかをテストしたりするのに利用できる。   When the condition range specification 415 is selected, the rule output unit 106 outputs a rule whose output rule condition set matches the condition set specified in the text box 418. By selecting the condition range specification 415, the user can grasp the result element values of possible result items in the specified condition range and test whether the result element values are as intended. Available.

結果範囲指定416が選択された場合、ルール出力部106は、出力ルール条件集合が、テキストボックス419で指定された結果となる条件集合と一致するルールを出力する。結果範囲指定416を選択することで、ある特定の結果になる条件を把握でき、ユーザが意図した条件と一致しているか、障害が発生した結果に着目し障害の原因となった条件の確認などに利用できる。   When the result range specification 416 is selected, the rule output unit 106 outputs a rule whose output rule condition set matches the condition set that is the result specified in the text box 419. By selecting the result range specification 416, it is possible to grasp the condition that results in a specific result, check whether the condition matches the condition intended by the user, or confirm the condition that caused the failure, focusing on the result of the failure. Available to:

次に、ユーザ定義ルール活用モード指定領域420は、ユーザ定義ルールの活用モードを指定する領域であり、修正不可421、修正可422、未活用423、および個別設定424などの選択子がある。修正不可421を選択すると、決定表300の内容を修正することができなくなる。修正可422には、設定ボタン425があり、設定ボタン425を押下することで、修正対象のユーザ定義ルールの選択方法を指定できる。個別設定424には、設定ボタン426があり、設定ボタン426を押下することで、ユーザ定義ルール毎にユーザ定義ルール活用モードを指定できる。   Next, the user-defined rule utilization mode designation area 420 is an area for designating the utilization mode of the user-defined rule, and there are selectors such as a non-modifiable 421, a modifiable 422, an unutilized 423, and an individual setting 424. If the uncorrectable 421 is selected, the contents of the decision table 300 cannot be corrected. The modifiable 422 has a setting button 425, and by pressing the setting button 425, the selection method of the user-defined rule to be modified can be designated. The individual setting 424 includes a setting button 426. By pressing the setting button 426, the user-defined rule utilization mode can be designated for each user-defined rule.

図5は、設定ボタン425を押下した際に表示される修正可オプション設定画面の例である。修正可オプション設定画面500は、類似度評価方法指定領域510などを有する。類似度評価方法指定領域510は、ルール出力部106が内部で作成した修正後のユーザ定義ルールと修正前のユーザ定義ルールの類似度の指標を指定する領域であり、有効フラグ511、評価指標512、優先度513、ソート514、下限515、および上限516などの項目がある。評価指標512は、ルール管理支援装置100が備える評価指標の名称であり、各評価指標512に対して、ユーザが有効フラグ511、優先度513、ソート514、下限515、および上限516を指定する。有効フラグ511は、当該評価指標を活用するか否かを示すフラグであり、チェックされている場合、ルール出力部106は、当該評価指標を類似度判定に活用する。優先度513は、ルール出力部106が類似度を判定する際の優先順位であり、数字が小さい評価指標を優先する。ソート514は、当該評価指標により算出した値が大きい、もしくは小さい、のいずれの場合に、類似度が高いとみなすかを指定する。ソート514が昇順の場合は、値が小さい方を類似度が高いとみなし、降順の場合は、値が大きい方を類似度が高いとみなす。下限515と上限516は、当該評価指標512により算出した値の下限と上限を表し、当該範囲に含まれない場合は、ルール出力部106は、修正前のユーザ定義ルールと修正後のユーザ定義ルールは類似していないと判定する。また、下限515と上限516が「−(ハイフン)」の場合、ルール出力部106は、下限と上限がないものとみなす。   FIG. 5 is an example of a modifiable option setting screen displayed when the setting button 425 is pressed. The modifiable option setting screen 500 includes a similarity evaluation method designation area 510 and the like. The similarity evaluation method designation area 510 is an area for designating an index of similarity between the user-defined rule after correction and the user-defined rule before correction created internally by the rule output unit 106, and includes an effective flag 511 and an evaluation index 512. , Priority 513, sort 514, lower limit 515, and upper limit 516. The evaluation index 512 is the name of the evaluation index included in the rule management support apparatus 100, and the user designates the validity flag 511, the priority 513, the sort 514, the lower limit 515, and the upper limit 516 for each evaluation index 512. The valid flag 511 is a flag indicating whether or not to use the evaluation index, and when checked, the rule output unit 106 uses the evaluation index for similarity determination. The priority 513 is a priority order when the rule output unit 106 determines the similarity, and gives priority to an evaluation index having a small number. The sort 514 designates whether the degree of similarity is considered high when the value calculated by the evaluation index is large or small. When the sort 514 is in ascending order, the smaller value is regarded as the higher degree of similarity, and in the descending order, the larger value is regarded as the higher degree of similarity. The lower limit 515 and the upper limit 516 represent the lower limit and the upper limit of the value calculated by the evaluation index 512. When the lower limit 515 and the upper limit 516 are not included in the range, the rule output unit 106 displays the user-defined rule before correction and the user-defined rule after correction. Are determined not to be similar. When the lower limit 515 and the upper limit 516 are “-(hyphen)”, the rule output unit 106 considers that there is no lower limit and no upper limit.

図5の例では、評価指標512として、追加された要素数、削除された要素数、一致する要素数、および全体の要素数の4つを挙げている。要素数とは、ルールの条件部に含まれる「A=a1」などの条件要素の数である。例えば、図2のユーザ定義ルール233の場合、要素数は、「年齢=35歳未満」、「免許証の色=ゴールド」、「使用目的=レジャー」の3つである。   In the example of FIG. 5, the evaluation index 512 includes four elements: the number of added elements, the number of deleted elements, the number of matching elements, and the total number of elements. The number of elements is the number of condition elements such as “A = a1” included in the condition part of the rule. For example, in the case of the user-defined rule 233 in FIG. 2, the number of elements is three: “age = less than 35 years”, “license color = gold”, and “use purpose = leisure”.

図6は、設定ボタン426を押下した際に表示されるユーザ定義ルール個別オプション設定画面の例である。ユーザ定義ルール個別オプション設定画面600は、ユーザ定義ルール個別オプション設定領域610、および評価指標設定ボタン620などを有する。ユーザ定義ルール個別オプション設定領域610は、ユーザ定義ルール毎にユーザ定義ルール活用モードを指定する領域であり、各ユーザ定義ルールの識別符号であるID611、ルール名称612、およびユーザ定義ルール活用モード613などの項目がある。ユーザ定義ルール活用モード613は、さらに、修正不可614、修正可615、および未活用616の選択子を備える。評価指標設定ボタン620は、修正対象のユーザ定義ルールの選択方法を指定する際に利用し、評価指標設定ボタン620を押下することで、ルール出力条件設定画面400の設定ボタン425の押下と同様の図5に示す修正可オプション設定画面500が表示される。   FIG. 6 is an example of a user-defined rule individual option setting screen displayed when the setting button 426 is pressed. The user-defined rule individual option setting screen 600 includes a user-defined rule individual option setting area 610, an evaluation index setting button 620, and the like. The user-defined rule individual option setting area 610 is an area for designating a user-defined rule utilization mode for each user-defined rule, such as an ID 611 that is an identification code of each user-defined rule, a rule name 612, and a user-defined rule utilization mode 613. There are items. The user-defined rule utilization mode 613 further includes selectors that cannot be modified 614, modification 615, and unused 616. The evaluation index setting button 620 is used when designating a method for selecting a user-defined rule to be modified. By pressing the evaluation index setting button 620, the evaluation index setting button 620 is similar to pressing the setting button 425 on the rule output condition setting screen 400. A correctable option setting screen 500 shown in FIG. 5 is displayed.

図6の例では、例えば、ID611が「1」のユーザ定義ルールについては、ルール名称が「ルール1」であり、ユーザ定義ルール活用モード613が「修正不可」であることを表す。   In the example of FIG. 6, for example, for a user-defined rule whose ID 611 is “1”, the rule name is “Rule 1” and the user-defined rule utilization mode 613 is “uncorrectable”.

なお、決定表修正ルールに対して、ユーザ定義ルール活用モードを設定できるようにしてもよい。この場合、例えば、ユーザ定義ルール個別オプション設定画面600と同様の画面で、決定表修正ルールを表示すればよい。   Note that a user-defined rule utilization mode may be set for the decision table correction rule. In this case, for example, the decision table correction rule may be displayed on the same screen as the user-defined rule individual option setting screen 600.

次に、ユーザ定義ルール活用モード指定領域420の各選択子が選択された場合のルール出力部106の振る舞いを説明する。   Next, the behavior of the rule output unit 106 when each selector in the user-defined rule utilization mode designation area 420 is selected will be described.

修正不可421が選択された場合、ルール出力部106は、ユーザ定義ルールの論理構造を崩すことなく、そのままの形式でルールを出力する。これにより、例えば、法令や業務マニュアルとの等価性を容易に判断できるように記述されたユーザ定義ルールを残し、その他のルール(決定表修正ルール)のみをルール出力の対象とでき、法令や業務マニュアルとの等価性確認の容易さを維持できる。   When the uncorrectable 421 is selected, the rule output unit 106 outputs the rules in the same format without destroying the logical structure of the user-defined rules. This allows, for example, user-defined rules written so that the equivalence with laws and business manuals can be easily determined, and only other rules (decision table modification rules) to be output as rules. Ease of checking the equivalence with the manual can be maintained.

修正可422が選択された場合、ルール出力部106は、修正可オプション設定画面500で指定した条件に基づき、ユーザ定義ルールの条件部に修正を加えたユーザ定義ルールを出力する。これにより、例えば、仕様の変更に伴い、既存のどのユーザ定義ルールを変更すれば良いかを特定できる。   When the modifiable 422 is selected, the rule output unit 106 outputs a user-defined rule obtained by modifying the condition part of the user-defined rule based on the condition specified on the modifiable option setting screen 500. Thereby, for example, it can be specified which existing user-defined rule should be changed in accordance with the change of the specification.

未活用423が選択された場合、ルール出力部106は、ユーザ定義ルールと決定表修正ルールと等価なルールを出力する。このとき、出力ルールは、ユーザ定義ルールの論理構造を維持している保証はない。これにより、例えば、ルール全体の冗長性の排除が可能である。   When the unused 423 is selected, the rule output unit 106 outputs a rule equivalent to the user-defined rule and the decision table correction rule. At this time, there is no guarantee that the output rule maintains the logical structure of the user-defined rule. Thereby, for example, redundancy of the entire rule can be eliminated.

個別設定424が選択された場合、ルール出力部106は、設定ボタン426の押下により設定されたユーザ定義ルール毎の、修正不可、修正可、および未活用のユーザ定義ルールの活用モードに従い、ルールを出力する。これにより、例えば、指定したユーザ定義ルールのみの冗長性を排除したり、法令に基づくユーザ定義ルールのみを修正不可422とすることで法令との追跡性を維持したルールを出力したりすることができる。   When the individual setting 424 is selected, the rule output unit 106 selects a rule according to the use mode of the user-defined rule that cannot be modified, can be modified, and is not utilized for each user-defined rule set by pressing the setting button 426. Output. As a result, for example, the redundancy of only the specified user-defined rule can be eliminated, or the rule that maintains the traceability with the law can be output by making only the user-defined rule based on the law non-modifiable 422. it can.

図4のルール出力条件設定画面400に戻ると、出力単位指定領域430は、出力ルールを分割する方法を指定する領域であり、結果項目単位431と結果項目組合せ単位432などの選択子がある。   Returning to the rule output condition setting screen 400 of FIG. 4, the output unit designation area 430 is an area for designating a method for dividing the output rule, and includes selectors such as a result item unit 431 and a result item combination unit 432.

出力単位指定領域430の各選択子が選択された場合のルール出力部106の振る舞いを説明する。   The behavior of the rule output unit 106 when each selector in the output unit designation area 430 is selected will be described.

結果項目単位431が選択された場合、ルール出力部106は、ルールの結果部が、結果項目のいずれか1つのみを含むルールを出力する。これにより、ユーザは、ある結果項目が特定の結果要素値となる場合の条件を確認できる。   When the result item unit 431 is selected, the rule output unit 106 outputs a rule in which the result part of the rule includes only one of the result items. Thereby, the user can confirm the condition when a certain result item becomes a specific result element value.

結果項目組合せ単位432が選択された場合、ルール出力部106は、ルールの結果部が、すべての結果項目を含むルールを出力する。これにより、ユーザは、各結果項目の結果要素値の組合せ毎に条件を確認できる。ただし、ユーザ定義ルール活用モードが修正不可または修正可であるユーザ定義ルールについては、いずれの選択子の場合であっても、元のユーザ定義ルールの結果部は変化しない。   When the result item combination unit 432 is selected, the rule output unit 106 outputs a rule in which the result part of the rule includes all result items. Thereby, the user can confirm conditions for every combination of the result element value of each result item. However, for a user-defined rule whose user-defined rule utilization mode is uncorrectable or amendable, the result part of the original user-defined rule does not change regardless of the selector.

なお、出力単位指定領域430の選択子として、結果項目の組合せ数があっても良い。この場合、例えば、3つの結果項目があり、結果項目の組合せ数を2とした場合、3つの結果項目から2つの結果項目を抽出し、当該組合せについて、上記結果項目組合せ単位432と同様の振る舞いを実行する。当該処理をすべての結果項目の組合せについて実行する。   In addition, as a selector of the output unit designation area 430, there may be the number of combinations of result items. In this case, for example, when there are three result items and the number of combination of result items is 2, two result items are extracted from the three result items, and the same behavior as the result item combination unit 432 is obtained for the combination. Execute. This process is executed for all combinations of result items.

次に、出力ルール制約指定領域440は、出力ルールの制約を指定する領域であり、条件値の否定を許可する441、および、ルール間の重複を許可する442などの項目がある。   Next, the output rule constraint designation area 440 is an area for designating output rule restrictions, and includes items such as 441 for permitting negation of condition values and 442 for permitting duplication between rules.

出力ルール制約指定領域440の各項目が選択された場合のルール出力部106の振る舞いを説明する。   The behavior of the rule output unit 106 when each item in the output rule constraint specifying area 440 is selected will be described.

条件値の否定を許可する441が選択された場合、ルール出力部106は、「A!=a1」のような否定を含むルールを出力する場合がある。一方、条件値の否定を許可する441が選択されなかった場合、ルール出力部106は、否定を含むルールは出力しない。例えば、条件項目Aがa1、a2、a3の3つの条件要素値を持ち、条件部が「A=a2、または、A=a3」である場合を考える。このとき、条件値の否定を許可する441が選択された場合、ルール出力部106は、「A=a2、または、A=a3」を「A!=a1」に変換して出力する。条件値の否定を許可する441が選択されなかった場合は、そのまま「A=a2、または、A=a3」を出力する。否定を許可することにより、上記のように条件値の記述が簡単化されることがある。   When 441 that permits denial of the condition value is selected, the rule output unit 106 may output a rule including negation such as “A! = A1”. On the other hand, if 441 that permits denial of the condition value is not selected, the rule output unit 106 does not output a rule that includes negation. For example, consider a case where the condition item A has three condition element values a1, a2, and a3, and the condition part is “A = a2 or A = a3”. At this time, when 441 that permits denial of the condition value is selected, the rule output unit 106 converts “A = a2 or A = a3” into “A! = A1” and outputs the result. If 441 that denies the condition value is not selected, “A = a2 or A = a3” is output as it is. By permitting denial, the description of the condition value may be simplified as described above.

ルール間の重複を許可する442が選択された場合、ルール出力部106は、出力ルール間の条件部に重複があってもそのまま出力する。一方、ルール間の重複を許可する442が選択されなかった場合、ルール出力部106は、出力ルール間の条件部の重複はなく排他的になるようにルールを出力する。これにより、例えば、ルール間の重複を許可する442を選択することで、出力ルールをシンプルにできる場合がある。また、ルール間の重複を許可する442を選択しないことで、ルール間が排他的になり、テストにおける同値クラスを特定できる。   If 442 that permits duplication between rules is selected, the rule output unit 106 outputs the output as it is even if there is duplication in the condition part between the output rules. On the other hand, when 442 that permits duplication between rules is not selected, the rule output unit 106 outputs the rules so that there is no duplication of the condition parts between the output rules and the rules are exclusive. Thereby, for example, the output rule may be simplified by selecting 442 that permits duplication between rules. Also, by not selecting 442 that permits duplication between rules, the rules are exclusive, and the equivalence class in the test can be specified.

なお、ルール出力条件指定部105は、出力ルールの構造に影響を与える他のオプションを指定する領域を備えてもよい。例えば、出力ルールの構造パターンとして、「IF〜THEN形式」、「IF〜THEN IF ― THEN形式」を選択できるようにする。前者は、通常の条件部と結果部から構成されるルールが出力されるのに対して、後者は、IF文のネスト構造のルールを出力する。   Note that the rule output condition designating unit 105 may include an area for designating other options that affect the structure of the output rule. For example, “IF-THEN format” and “IF-THEN IF-THEN format” can be selected as the structure pattern of the output rule. The former outputs a rule composed of a normal condition part and a result part, while the latter outputs a rule of a nested structure of an IF statement.

続いて、図7を参照して、本実施形態に係るユーザ定義ルール保持部153のデータ構造の例について説明する。図7に示すように、ユーザ定義ルール保持部153は、ユーザ定義ルール701、条件項目702、結果項目703、および要素値704といったエンティティを有する。図7の各エンティティは、2つの四角形から構成されており、上の四角形内に示す名前はエンティティ名を表し、下の四角形内に示す名前は当該エンティティの属性名を表している。また、エンティティ間の関連は、ひし形と実線を結んで表し、ひし形側のエンティティと実線側のエンティティは、1対多の関係にあることを表す。以下、他のデータ構造の図についても同様に記載している。   Next, an example of the data structure of the user-defined rule holding unit 153 according to the present embodiment will be described with reference to FIG. As illustrated in FIG. 7, the user-defined rule holding unit 153 includes entities such as a user-defined rule 701, a condition item 702, a result item 703, and an element value 704. Each entity in FIG. 7 is composed of two rectangles. The name shown in the upper rectangle represents the entity name, and the name shown in the lower rectangle represents the attribute name of the entity. The relationship between entities is expressed by connecting a diamond and a solid line, and the entity on the diamond side and the entity on the solid line side are in a one-to-many relationship. The other data structure diagrams are also described below.

図7において、ユーザ定義ルール701は、個々のユーザ定義ルールに関する情報として、ルールID、ルール名称、条件部論理式、および結果部論理式といった属性を有するエンティティである。ルールIDは、ユーザ定義ルール保持部153においてユニークな識別子である。ルール名称は、ユーザ定義ルールの名称である。条件部論理式は、ユーザ定義ルールの条件部に関するデータであり、条件項目702または結果項目703(いずれか一方のみ)に対応する要素値ID、ルールID、論理演算子(論理積、論理和、否定など)、および、括弧などを組合せて表現する。結果部論理式は、ユーザ定義ルールの結果部に関するデータであり、条件部論理式と同様の形式である。ただし、条件部論理式が条件項目702から定義される場合で、かつ、結果部論理式が結果項目703から定義される場合、結果部論理式は結果項目703と論理積のみで定義することが望ましい。このような場合で、結果部論理式に論理和や否定が含まれる場合、結果が非決定的となるためである。また、ユーザ定義ルールデータ702は、子要素として、さらにユーザ定義ルールデータ702を有することができる。このような構造により、ユーザ定義ルール保持部153は、IF文のネスト構造など多様なルールを保持できる。また、結果部論理式を空欄にし、条件部論理式を記載することで、複数のユーザ定義ルールで共通する条件部を部品として扱うことができる。共通部品である条件部を利用する場合は、条件部論理式にルールIDを含めればよい。また、ユーザ定義ルール701に示す属性の他、法令や業務規則などルールの種別、ルールの根拠情報、下位設計書IDを記載する属性を含めても良い。例えば、ルールの種別があることで、変更が可能なものかの判断の材料とできる。また、根拠情報は、ルールと根拠情報との追跡性確保に利用できる。同様に、下位設計書IDを含めることで、下位の設計書との追跡性を確保できる。   In FIG. 7, a user-defined rule 701 is an entity having attributes such as rule ID, rule name, condition part logical expression, and result part logical expression as information regarding individual user-defined rules. The rule ID is a unique identifier in the user-defined rule holding unit 153. The rule name is the name of the user-defined rule. The condition part logical expression is data related to the condition part of the user-defined rule, and the element value ID, rule ID, logical operator (logical product, logical sum, logical value) corresponding to the condition item 702 or the result item 703 (only one of them). Negation) and parentheses are used in combination. The result part logical expression is data related to the result part of the user-defined rule and has the same format as the condition part logical expression. However, when the condition part logical expression is defined from the condition item 702 and the result part logical expression is defined from the result item 703, the result part logical expression may be defined only by the logical product with the result item 703. desirable. In such a case, when the result part logical expression includes a logical sum or negation, the result is non-deterministic. Further, the user-defined rule data 702 can further include user-defined rule data 702 as a child element. With such a structure, the user-defined rule holding unit 153 can hold various rules such as a nested structure of IF statements. In addition, by leaving the result part logical expression blank and describing the condition part logical expression, it is possible to handle a condition part common to a plurality of user-defined rules as a component. When a condition part that is a common part is used, a rule ID may be included in the condition part logical expression. Further, in addition to the attributes shown in the user-defined rule 701, an attribute describing a rule type such as laws and business rules, rule rationale information, and a lower design document ID may be included. For example, the existence of a rule type can be used as a material for determining whether a change is possible. Further, the ground information can be used to ensure traceability between the rule and the ground information. Similarly, by including the lower design document ID, it is possible to ensure traceability with the lower design document.

次に、条件項目702は、決定表300における条件項目として、条件項目ID、および、条件項目名称といった属性を有するエンティティである。条件項目IDは、結果項目IDを含めてユーザ定義ルール保持部153においてユニークな識別子である。条件項目名称は、条件項目の名称である。   Next, the condition item 702 is an entity having attributes such as a condition item ID and a condition item name as condition items in the decision table 300. The condition item ID is a unique identifier in the user definition rule holding unit 153 including the result item ID. The condition item name is the name of the condition item.

次に、結果項目703は、決定表300における結果項目として、結果項目ID、および、結果項目名称といった属性を有するエンティティである。結果項目IDは、条件項目IDを含めてユーザ定義ルール保持部153においてユニークな識別子である。結果項目名称は、結果項目の名称である。   Next, the result item 703 is an entity having attributes such as a result item ID and a result item name as a result item in the determination table 300. The result item ID is a unique identifier in the user-defined rule holding unit 153 including the condition item ID. The result item name is the name of the result item.

次に、要素値704は、決定表300における条件要素値または結果要素値であり、条件/結果項目ID、要素値ID、および、要素値名といった属性を有するエンティティである。条件/結果項目IDは、当該要素値を持つ条件項目702または結果項目703の条件項目IDまたは結果項目IDである。要素値IDは、ユーザ定義ルール保持部153においてユニークな識別子である。要素値名は、要素値の名称であり、条件項目702または結果項目703においてユニークな名称である。   Next, the element value 704 is a condition element value or a result element value in the decision table 300, and is an entity having attributes such as a condition / result item ID, an element value ID, and an element value name. The condition / result item ID is the condition item ID or result item ID of the condition item 702 or result item 703 having the element value. The element value ID is a unique identifier in the user-defined rule holding unit 153. The element value name is a name of the element value, and is a unique name in the condition item 702 or the result item 703.

なお、条件項目702と結果項目703をエンティティとして区別しているが、当該ユーザ定義ルールに係るルール機能ロジックにおける入力項目と出力項目を区別できればよい。   In addition, although the condition item 702 and the result item 703 are distinguished as entities, it is only necessary to distinguish the input item and the output item in the rule function logic related to the user-defined rule.

続いて、図8を参照して、本実施形態に係るルール出力条件保持部154のデータ構造の例について説明する。図8に示すように、ルール出力条件保持部154は、ルール出力条件801、ユーザ選択ルール802、修正可オプション803、個別設定オプション804、および出力ルール制約805といったエンティティを有する。   Next, an example of the data structure of the rule output condition holding unit 154 according to the present embodiment will be described with reference to FIG. As illustrated in FIG. 8, the rule output condition holding unit 154 includes entities such as a rule output condition 801, a user selection rule 802, a modifiable option 803, an individual setting option 804, and an output rule constraint 805.

図8において、ルール出力条件801は、ユーザがルール出力条件設定画面400において設定した情報であり、出力範囲オプション、条件/結果範囲、ユーザ定義ルール活用モード、出力単位、および出力ルール制約といった属性を有するエンティティである。出力範囲オプションは、ルール出力条件設定画面400の出力範囲指定領域410において、ユーザが選択した情報であり、本実施形態では、すべての範囲411、結果定義済み範囲すべて412、ユーザ選択範囲413、結果未定義範囲414、条件範囲指定415、または、結果範囲指定416を識別する情報である。条件/結果範囲は、出力範囲オプションが条件範囲指定415または結果範囲指定416の場合にのみ指定される情報であり、テキストボックス418またはテキストボックス419のいずれかの値である。ユーザ定義ルール活用モードは、ルール出力条件設定画面400のユーザ定義ルール活用モード指定領域420において、ユーザが選択した情報であり、本実施形態では、修正不可421、修正可422、未活用423、または、個別設定424を識別する情報である。出力単位は、ルール出力条件設定画面400の出力単位指定領域430において、ユーザが選択した情報であり、本実施形態では、結果項目単位431または結果項目組合せ単位432を識別する情報である。   In FIG. 8, a rule output condition 801 is information set by the user on the rule output condition setting screen 400, and includes attributes such as an output range option, a condition / result range, a user-defined rule utilization mode, an output unit, and an output rule constraint. It is an entity that has. The output range option is information selected by the user in the output range designation area 410 of the rule output condition setting screen 400. In this embodiment, all the ranges 411, all the result defined ranges 412, the user selected range 413, the result This is information for identifying the undefined range 414, the condition range designation 415, or the result range designation 416. The condition / result range is information specified only when the output range option is the condition range specification 415 or the result range specification 416, and is a value of either the text box 418 or the text box 419. The user-defined rule utilization mode is information selected by the user in the user-defined rule utilization mode designation area 420 of the rule output condition setting screen 400. In this embodiment, the user-defined rule utilization mode 421, the modification 422, the unutilized 423, or , Information for identifying the individual setting 424. The output unit is information selected by the user in the output unit designation area 430 of the rule output condition setting screen 400. In this embodiment, the output unit is information for identifying the result item unit 431 or the result item combination unit 432.

次に、ユーザ選択ルール802は、ルール出力条件設定画面400の範囲選択ボタン417の押下により表示される画面においてユーザが選択したユーザ定義ルールに関する情報であり、ルールIDといった属性を有するエンティティである。ルールIDは、ユーザが指定したユーザ定義ルールを識別する情報であり、ユーザ定義ルール保持部153に記憶されているユーザ定義ルール701のルールIDのいずれかと一致する。   Next, the user selection rule 802 is information on a user-defined rule selected by the user on the screen displayed by pressing the range selection button 417 on the rule output condition setting screen 400, and is an entity having an attribute such as a rule ID. The rule ID is information for identifying a user-defined rule specified by the user, and matches one of the rule IDs of the user-defined rule 701 stored in the user-defined rule holding unit 153.

次に、修正可オプション803は、ユーザが修正可オプション設定画面500において設定した情報であり、有効フラグ、評価指標名、評価モジュール名、優先度、ソート、下限、および上限といった属性を有するエンティティである。有効フラグは、ユーザが選択しているか否かを示す情報である。評価指標名は、ユーザが修正可オプション設定画面500の評価指標512の欄に表示される情報である。評価モジュール名は、当該評価指標512に基づき評価処理を実行するモジュールの名称である。このようにすることで新しい評価指標512の導入が容易となる。優先度は、修正可オプション設定画面500の優先度513の欄でユーザが指定する情報である。ソートは、修正可オプション設定画面500のソート514の欄でユーザが指定する情報であり、昇順または降順を識別する情報である。下限は、修正可オプション設定画面500の下限515の欄でユーザが指定する情報である。上限は、修正可オプション設定画面500の上限516の欄でユーザが指定する情報である。   Next, the modifiable option 803 is information set by the user on the modifiable option setting screen 500 and is an entity having attributes such as a valid flag, an evaluation index name, an evaluation module name, a priority, a sort, a lower limit, and an upper limit. is there. The valid flag is information indicating whether or not the user has selected. The evaluation index name is information displayed in the column of the evaluation index 512 on the user-modifiable option setting screen 500. The evaluation module name is the name of the module that executes the evaluation process based on the evaluation index 512. This makes it easy to introduce a new evaluation index 512. The priority is information specified by the user in the priority 513 field of the modifiable option setting screen 500. Sort is information specified by the user in the column of sort 514 of the modifiable option setting screen 500, and is information for identifying ascending order or descending order. The lower limit is information specified by the user in the lower limit 515 field of the modifiable option setting screen 500. The upper limit is information specified by the user in the upper limit 516 field of the modifiable option setting screen 500.

次に、個別設定オプション804は、ユーザ定義ルール個別オプション指定画面600において設定した情報であり、ルールID、およびモードといった属性を有するエンティティである。ルールIDは、ユーザ定義ルール個別オプション指定画面600のID611に表示される情報であり、ユーザ定義ルール保持部153に記憶されているユーザ定義ルールデータ702のルールIDのいずれかと一致する。モードは、ユーザ定義ルール個別オプション指定画面600のユーザ定義ルール活用モード613でユーザが選択した情報であり、本実施例では、修正不可614、修正可615、または未活用616を識別する情報である。   Next, the individual setting option 804 is information set on the user-defined rule individual option designation screen 600, and is an entity having attributes such as rule ID and mode. The rule ID is information displayed in the ID 611 of the user-defined rule individual option designation screen 600 and matches one of the rule IDs of the user-defined rule data 702 stored in the user-defined rule holding unit 153. The mode is information selected by the user in the user-defined rule utilization mode 613 on the user-defined rule individual option designation screen 600. In this embodiment, the mode is information for identifying the uncorrectable 614, the correctable 615, or the unutilized 616. .

次に、出力ルール制約805は、ユーザがルール出力条件設定画面400の出力ルール制約指定領域440において設定した情報であり、有効フラグ、オプション名、および制約モジュール名といった属性を有するエンティティである。有効フラグは、出力ルール制約指定領域440において、ユーザが当該出力ルール制約を選択済みであるか否かを示す情報である。オプション名は、出力ルール制約指定領域440に表示される文字列であり、本実施形態では、条件値の否定を許可する441、またはルール間の重複を許可する442である。制約モジュール名は、当該出力ルール制約を実行するモジュールの名称である。このようにすることで、新しい出力ルール制約の導入が容易となる。   Next, the output rule constraint 805 is information set by the user in the output rule constraint designation area 440 of the rule output condition setting screen 400, and is an entity having attributes such as a valid flag, an option name, and a constraint module name. The valid flag is information indicating whether or not the user has already selected the output rule constraint in the output rule constraint designation area 440. The option name is a character string displayed in the output rule constraint designation area 440. In this embodiment, the option name is 441 that permits denial of the condition value or 442 that permits duplication between rules. The constraint module name is the name of the module that executes the output rule constraint. In this way, new output rule constraints can be easily introduced.

続いて、図9を参照して、本実施形態に係る決定表保持部152のデータ構造の例について説明する。図9に示すように、決定表保持部152は、列ルール901、条件項目設定値902、結果項目設定値903、および関連ルール904といったエンティティを有する。   Next, an example of the data structure of the decision table holding unit 152 according to this embodiment will be described with reference to FIG. As illustrated in FIG. 9, the determination table holding unit 152 includes entities such as a column rule 901, a condition item setting value 902, a result item setting value 903, and a related rule 904.

図9において、列ルール901は、決定表300上の1つの列に関する情報であり、列ルールID、および制約フラグといった属性を有するエンティティである。列ルールIDは、決定表300における列を一意に識別する情報であり、決定表保持部152においてユニークである。制約フラグは、ユーザ定義ルールにより組合せとしてあり得ない列ルールであるか否かを示すフラグである。ユーザ定義ルールとして、条件部と結果部の両方を、条件項目を用いて記述することで、あり得る組合せ、あり得ない組合せを表現できる。   In FIG. 9, a column rule 901 is information about one column on the decision table 300, and is an entity having attributes such as a column rule ID and a constraint flag. The column rule ID is information for uniquely identifying a column in the decision table 300 and is unique in the decision table holding unit 152. The constraint flag is a flag indicating whether or not the column rule cannot be combined as a user-defined rule. By describing both the condition part and the result part using condition items as user-defined rules, possible combinations and impossible combinations can be expressed.

次に、条件項目設定値902は、決定表300上の1つの列の条件部の情報であり、列ルールID、および要素値IDといった属性を有するエンティティである。列ルールIDは、当該条件項目設定値902を持つ列ルール901の列ルールIDである。要素値IDは、ユーザ定義ルール保持部153の条件項目702に関連する要素値704の属性である要素値IDのいずれかである。条件項目設定値902のエンティティの数は、1つの列ルール901に対して、ユーザ定義ルール保持部153の条件項目702の数と等しい。また、1つの列ルール901に含まれる条件項目設定値902の要素値IDには、ユーザ定義ルール保持部153のすべての条件項目702について、各条件項目702に対応するいずれか1つの要素値IDを含む。   Next, the condition item setting value 902 is information on a condition part of one column on the determination table 300, and is an entity having attributes such as a column rule ID and an element value ID. The column rule ID is the column rule ID of the column rule 901 having the condition item setting value 902. The element value ID is one of element value IDs that are attributes of the element value 704 related to the condition item 702 of the user definition rule holding unit 153. The number of entities of the condition item setting value 902 is equal to the number of condition items 702 of the user definition rule holding unit 153 for one column rule 901. The element value ID of the condition item setting value 902 included in one column rule 901 includes any one element value ID corresponding to each condition item 702 for all the condition items 702 in the user-defined rule holding unit 153. including.

次に、結果項目設定値903は、決定表300上の1つの列の結果部の情報であり、列ルールID、および要素値IDといった属性を有するエンティティである。列ルールIDは、当該結果項目設定値903を持つ列ルール901の列ルールIDである。要素値IDは、ユーザ定義ルール保持部153の結果項目703に関連する要素値704の属性である要素値IDのいずれかである。結果項目設定値903のエンティティの数は、1つの列ルール901に対して、ユーザ定義ルール保持部153の結果項目703の数と等しい。また、1つの列ルール901に含まれる結果項目設定値903の要素値IDには、ユーザ定義ルール保持部153のすべての結果項目703について、各結果項目703に対応するいずれか1つの要素値IDを含む。   Next, the result item setting value 903 is information of a result part of one column on the determination table 300, and is an entity having attributes such as a column rule ID and an element value ID. The column rule ID is the column rule ID of the column rule 901 having the result item setting value 903. The element value ID is any one of the element value IDs that are attributes of the element value 704 related to the result item 703 of the user definition rule holding unit 153. The number of entities of the result item setting value 903 is equal to the number of result items 703 of the user definition rule holding unit 153 for one column rule 901. The element value ID of the result item setting value 903 included in one column rule 901 includes any one element value ID corresponding to each result item 703 for all the result items 703 in the user-defined rule holding unit 153. including.

次に、関連ルール904は、列ルール901と関連する情報であり、列ルールID、および、ルールIDといった属性を有するエンティティである。列ルールIDは、当該関連ルール905を持つ列ルール901の列ルールIDである。ルールIDは、列ルールIDで特定される列ルール901の結果項目設定値903の要素値IDの決定に係るユーザ定義ルール701のルールIDである。   Next, the association rule 904 is information related to the column rule 901 and is an entity having attributes such as a column rule ID and a rule ID. The column rule ID is the column rule ID of the column rule 901 having the related rule 905. The rule ID is the rule ID of the user-defined rule 701 related to the determination of the element value ID of the result item setting value 903 of the column rule 901 specified by the column rule ID.

続いて、図10を参照して、本実施形態に係る決定表修正ルール保持部151のデータ構造の例について説明する。図10に示すように、決定表修正ルール保持部151は、決定表修正ルール1001、および条件項目設定値1002といったエンティティを有する。   Next, an example of the data structure of the decision table correction rule holding unit 151 according to this embodiment will be described with reference to FIG. As illustrated in FIG. 10, the determination table correction rule holding unit 151 includes entities such as a determination table correction rule 1001 and a condition item setting value 1002.

図10において、決定表修正ルール1001は、ユーザが決定表300上で修正した内容に関する情報であり、列ルールID、結果項目ID、および要素値IDといった属性を有するエンティティである。列ルールIDは、ユーザが決定表300上で修正を行った列を識別する情報であり、決定表保持部152の列ルール901の列ルールIDのいずれかである。結果項目IDは、ユーザが決定表300上で修正を行った結果項目を識別する情報である。要素値IDは、ユーザが決定表300上で修正を行った結果項目について修正後の要素値を識別する情報である。決定表修正ルール1001は、決定表300の1つの列における結果項目毎にある。例えば、同一の列であっても、2つの結果項目があり、それぞれの要素値をユーザが修正した場合、決定表修正ルール保持部151は2つの決定表修正ルールを保持する。   In FIG. 10, the decision table correction rule 1001 is information relating to the contents corrected by the user on the decision table 300 and is an entity having attributes such as a column rule ID, a result item ID, and an element value ID. The column rule ID is information for identifying a column modified by the user on the decision table 300 and is one of the column rule IDs of the column rule 901 in the decision table holding unit 152. The result item ID is information for identifying a result item that has been corrected on the determination table 300 by the user. The element value ID is information for identifying the element value after correction for the result item that the user has corrected on the determination table 300. The decision table correction rule 1001 is provided for each result item in one column of the decision table 300. For example, even in the same column, there are two result items, and when the user corrects each element value, the decision table correction rule holding unit 151 holds two decision table correction rules.

次に、条件項目設定値1002は、ユーザが決定表300上で修正した1つの列の条件部の情報であり、列ルールID、および要素値IDといった属性を有するエンティティである。列ルールIDは、当該条件項目設定値1002を持つ決定表修正ルール1001の列ルールIDである。要素値IDは、ユーザ定義ルール保持部153の条件項目702に関連する要素値704の属性である要素値IDのいずれかである。条件項目設定値1002のエンティティの数は、1つの列ルール901に対して、ユーザ定義ルール保持部153の条件項目702の数と等しい。また、1つの決定表修正ルール1001に含まれる条件項目設定値1002の要素値IDには、ユーザ定義ルール保持部153のすべての条件項目702について、各条件項目702に対応するいずれか1つの要素値IDを含む。   Next, the condition item setting value 1002 is information on the condition part of one column modified by the user on the decision table 300, and is an entity having attributes such as a column rule ID and an element value ID. The column rule ID is the column rule ID of the decision table correction rule 1001 having the condition item setting value 1002. The element value ID is one of element value IDs that are attributes of the element value 704 related to the condition item 702 of the user definition rule holding unit 153. The number of entities of the condition item setting value 1002 is equal to the number of condition items 702 of the user definition rule holding unit 153 for one column rule 901. The element value ID of the condition item setting value 1002 included in one decision table correction rule 1001 includes any one element corresponding to each condition item 702 for all the condition items 702 in the user-defined rule holding unit 153. Contains the value ID.

続いて、図11を参照して、本実施形態に係る出力ルール保持部155のデータ構造の例について説明する。図11に示すように、出力ルール保持部155は、変更なしルール1101、変更ありルール1102、および追加ルール1103といったエンティティを有する。   Next, an example of the data structure of the output rule holding unit 155 according to the present embodiment will be described with reference to FIG. As illustrated in FIG. 11, the output rule holding unit 155 includes entities such as a no-change rule 1101, a rule with change 1102, and an additional rule 1103.

図11において、変更なしルール1101は、ルール出力部106が変更や削除を加えなかったユーザ定義ルール701に関する情報であり、ルールIDといった属性を有するエンティティである。ルールIDは、ルール出力部106が変更や削除を加えなかったユーザ定義ルール701のルールIDである。   In FIG. 11, a no-change rule 1101 is information on the user-defined rule 701 that the rule output unit 106 has not changed or deleted, and is an entity having an attribute such as a rule ID. The rule ID is the rule ID of the user-defined rule 701 that the rule output unit 106 has not changed or deleted.

次に、変更ありルール1102は、ルール出力部106が変更を加えたユーザ定義ルール701に関する情報であり、ルールID、条件部論理式、および結果部論理式といった属性を有するエンティティである。ルールIDは、ルール出力部106が変更を加えたユーザ定義ルール701のルールIDである。条件部論理式および結果部論理式は、ルール出力部106による変更後のユーザ定義ルール701の条件部論理式および結果部論理式である。   Next, the changed rule 1102 is information regarding the user-defined rule 701 to which the rule output unit 106 has changed, and is an entity having attributes such as a rule ID, a conditional part logical expression, and a result part logical expression. The rule ID is the rule ID of the user-defined rule 701 that has been changed by the rule output unit 106. The conditional part logical expression and the result part logical expression are the conditional part logical expression and the result part logical expression of the user-defined rule 701 after being changed by the rule output unit 106.

次に、追加ルール1103は、ルール出力部106が新規に作成したルールに関する情報であり、追加ルールID、条件部論理式、および結果部論理式といった属性を有するエンティティである。追加ルールIDは、追加ルールを識別する情報であり、出力ルール保持部155においてユニークである。条件部論理式および結果部論理式は、ルール出力部106が作成したルールの条件部および結果部の論理式である。   Next, the additional rule 1103 is information regarding a rule newly created by the rule output unit 106, and is an entity having attributes such as an additional rule ID, a conditional part logical expression, and a result part logical expression. The additional rule ID is information for identifying the additional rule, and is unique in the output rule holding unit 155. The condition part logical expression and the result part logical expression are logical expressions of the condition part and result part of the rule created by the rule output unit 106.

続いて、図12を参照して、本発明の実施形態に係るルール出力部106の処理について説明する。図12は、本実施形態に係るルール出力部106の処理例を示すフローチャートである。なお、図中の符号Sはステップを表す(以下本明細書中で同様)。   Subsequently, processing of the rule output unit 106 according to the embodiment of the present invention will be described with reference to FIG. FIG. 12 is a flowchart illustrating a processing example of the rule output unit 106 according to the present embodiment. In addition, the code | symbol S in a figure represents a step (same below in this specification).

まず、ルール出力部106は、ユーザによる入出力装置180の操作、バッチ処理などにより処理の実行を開始する(S1200)。ルール出力部106は、ユーザ定義ルール保持部153が記憶しているすべてのユーザ定義ルール701を読み込む(S1201)。ルール出力部106は、読み込んだユーザ定義ルール701のうち、条件部論理式が条件項目702に対応する要素値から構成され(結果項目703に対応する要素値を含まない)、かつ、結果部論理式が結果項目703に対応する要素値と論理積から構成される(条件項目703に対応する要素値を含まない)ユーザ定義ルール701(以下、「条件−結果ANDルール」という。)をオリジナルルール集合として記憶する。また、ルール出力部106は、条件部論理式が結果項目703に対応する要素値から構成され(条件項目702に対応する要素値を含まない)、かつ、結果部論理式が結果項目703に対応する要素値と論理積から構成される(条件項目703に対応する要素値を含まない)ユーザ定義ルール(以下、「結果−結果ANDルール」という。)について、当該ユーザ定義ルールの条件部論理式と充足可能なオリジナルルール集合内の結果部論理式を持つルールを検索し、該当するすべてのルールについて、各ルールの条件部論理式と結果−結果ANDルールの結果部論理式から構成されるルールを生成し、修正ルール集合として記憶する。また、ルール出力部106は、読み込んだユーザ定義ルール701のうち、条件部論理式と結果部論理式が共に条件項目702に対応する要素値から構成される(結果項目703に対応する要素値を含まない)ユーザ定義ルール701(以下、「条件−条件ルール」という。)を制約ルール集合として記憶する。ユーザ定義ルールを読み込んだ後、S1202に進む。   First, the rule output unit 106 starts execution of a process by a user operation of the input / output device 180, batch processing, or the like (S1200). The rule output unit 106 reads all the user-defined rules 701 stored in the user-defined rule holding unit 153 (S1201). The rule output unit 106 includes, in the read user-defined rule 701, the conditional part logical expression is composed of element values corresponding to the condition item 702 (not including the element value corresponding to the result item 703), and the result part logic An original rule is a user-defined rule 701 (hereinafter referred to as “condition-result AND rule”) composed of an AND and an element value corresponding to the result item 703 (not including an element value corresponding to the condition item 703). Remember as a set. Further, the rule output unit 106 includes a condition part logical expression composed of element values corresponding to the result item 703 (not including an element value corresponding to the condition item 702), and a result part logical expression corresponding to the result item 703. For a user-defined rule (hereinafter, referred to as “result-result AND rule”) composed of element values and logical products (not including an element value corresponding to the condition item 703), the condition part logical expression of the user-defined rule And a rule having a result part logical expression in the original rule set that can be satisfied, and a rule composed of the conditional part logical expression of each rule and the result part logical expression of the result-result AND rule for all applicable rules. Is stored as a correction rule set. Also, the rule output unit 106 includes, in the read user-defined rule 701, both the condition part logical expression and the result part logical expression are composed of element values corresponding to the condition item 702 (element values corresponding to the result item 703 are changed). User-defined rules 701 (not included) (hereinafter referred to as “condition-condition rules”) are stored as a constraint rule set. After reading the user-defined rule, the process proceeds to S1202.

次に、ルール出力部106は、読み込んだユーザ定義ルール701間の整合性を確認する(S1202)。ユーザ定義ルール701間の整合性の確認方法は、例えば、特許文献1で開示されている。ユーザ定義ルール701間に不整合があると判定した場合、ルール出力部106は、処理を中断する。不整合がないと判定した場合は、S1203に進む。   Next, the rule output unit 106 checks the consistency between the read user-defined rules 701 (S1202). A method for confirming consistency between user-defined rules 701 is disclosed in Patent Document 1, for example. When it is determined that there is a mismatch between the user-defined rules 701, the rule output unit 106 interrupts the process. If it is determined that there is no inconsistency, the process proceeds to S1203.

次に、ルール出力部106は、決定表修正ルール保持部151が記憶しているすべての決定表修正ルール1001を読み込む(S1203)。ルール出力部106は、読み込んだ決定表修正ルール1001を修正ルール集合に追加する。決定表修正ルール1001を読み込んだ後、S1204に進む。   Next, the rule output unit 106 reads all the decision table correction rules 1001 stored in the decision table correction rule holding unit 151 (S1203). The rule output unit 106 adds the read decision table correction rule 1001 to the correction rule set. After reading the decision table correction rule 1001, the process proceeds to S1204.

次に、ルール出力部106は、ユーザ定義ルール701と決定表修正ルール1001の整合性を確認する(S1204)。ユーザ定義ルール701と決定表修正ルール1001の整合性の確認方法は、例えば、決定表修正ルール1001の列ルールIDに対応するユーザ定義ルールが、決定表保持部152の関連ルール904のルールIDに存在するかを確認し、存在すると判定した場合、当該決定表修正ルール1001とユーザ定義ルール701を比較することで整合性を確認する。また、S1202のユーザ定義ルール間の整合性の確認と同様に、特許文献1に開示されている方法により整合性を確認することもできる。ユーザ定義ルール701と決定表修正ルール1001に不整合があると判定した場合、ユーザ定義ルール701と決定表修正ルール1001のどちらを優先するかの確認メッセージを表示する。ユーザ定義ルール701を優先する場合、当該ユーザ定義ルール701と不整合な関係にある決定表修正ルール1001を修正ルール集合から削除する。決定表修正ルール1001を優先する場合、当該決定表修正ルール1001と不整合な関係にあるユーザ定義ルール701の条件部論理式を、当該ユーザ定義ルール701の条件部論理式と当該決定表修正ルール1001の条件部論理式の否定の論理積に置き換える(置き換え後の当該ユーザ定義ルール701の条件部論理式=(置き換え前の当該ユーザ定義ルール701の条件部論理式)∧¬(当該決定表修正ルールの条件部論理式))。ユーザ定義ルール701と決定表修正ルール1001の整合性の確認の後、S1205に進む。   Next, the rule output unit 106 confirms the consistency between the user-defined rule 701 and the decision table correction rule 1001 (S1204). The method for confirming the consistency between the user-defined rule 701 and the decision table correction rule 1001 is, for example, that the user-defined rule corresponding to the column rule ID of the decision table correction rule 1001 is the rule ID of the related rule 904 in the decision table holding unit 152 If it is determined whether it exists, and it is determined that it exists, the consistency is confirmed by comparing the decision table correction rule 1001 with the user-defined rule 701. Similar to the confirmation of the consistency between user-defined rules in S1202, the consistency can also be confirmed by the method disclosed in Patent Document 1. When it is determined that the user-defined rule 701 and the decision table correction rule 1001 are inconsistent, a confirmation message as to which of the user-defined rule 701 and the decision table correction rule 1001 has priority is displayed. When giving priority to the user-defined rule 701, the decision table correction rule 1001 having an inconsistent relationship with the user-defined rule 701 is deleted from the correction rule set. When the decision table correction rule 1001 is prioritized, the condition part logical expression of the user-defined rule 701 inconsistent with the decision table correction rule 1001 is replaced with the condition part logical expression of the user-defined rule 701 and the decision table correction rule. Replace with the negative logical product of the condition part logical expression of 1001 (condition part logical expression of the user-defined rule 701 after replacement = (condition part logical expression of the user-defined rule 701 before replacement) ∧¬ (correction of the decision table) Rule condition formula))). After the consistency between the user-defined rule 701 and the decision table correction rule 1001 is confirmed, the process proceeds to S1205.

次に、ルール出力部106は、ルール出力条件保持部154が記憶しているルール出力条件801を読み込む(S1205)。また、ルール出力部106は、ルール出力条件801に関連するすべてのユーザ選択ルール802、修正可オプション803、個別設定オプション804、および出力ルール制約805を読み込む。   Next, the rule output unit 106 reads the rule output condition 801 stored in the rule output condition holding unit 154 (S1205). Further, the rule output unit 106 reads all user selection rules 802, modifiable options 803, individual setting options 804, and output rule constraints 805 related to the rule output condition 801.

次に、ルール出力部106は、ルール出力条件801の出力範囲の条件を満たすルール集合を生成する(S1206)。出力範囲の条件は、ルール出力条件801の出力範囲オプションおよび条件/結果範囲、ユーザ選択ルール802である。どの出力範囲オプションが選択されているかで処理が異なる。以下、各出力範囲オプションのルール出力部106の処理内容を説明する。   Next, the rule output unit 106 generates a rule set that satisfies the conditions of the output range of the rule output condition 801 (S1206). The output range conditions are the output range option and condition / result range of the rule output condition 801, and the user selection rule 802. Processing differs depending on which output range option is selected. The processing contents of the rule output unit 106 for each output range option will be described below.

出力範囲オプションがすべての範囲411の場合、ルール出力部106は、結果が未定義のルールを生成し、修正ルール集合に追加する。結果が未定義のルールの生成方法は、例えば、条件部論理式に結果項目の要素値を含まず、かつ、結果部論理式が結果項目の要素値と論理積演算子のみからなるルールの条件部論理式をオリジナルルール集合と修正ルール集合から抽出し、抽出したルールの条件部論理式の否定を論理積結合した論理式を、条件部論理式とした結果部論理式のないルールとして表現できる。また、決定表保持部152の結果項目設定値が設定されていない列ルールを結果が未定義のルールとして抽出することができる。   When the output range option is all ranges 411, the rule output unit 106 generates a rule with an undefined result and adds it to the correction rule set. The method for generating a rule with an undefined result is, for example, a condition for a rule in which the condition part logical expression does not include the element value of the result item, and the result part logical expression includes only the element value of the result item and the logical product operator. A partial logical expression is extracted from the original rule set and the modified rule set, and a logical expression obtained by ANDing the negation of the conditional part logical expression of the extracted rule can be expressed as a rule having no result logical expression as a conditional logical expression. . In addition, a column rule in which the result item setting value of the determination table holding unit 152 is not set can be extracted as a rule whose result is undefined.

出力範囲オプションが結果定義済み範囲すべて412の場合、ルール出力部106は、追加の処理を行わない。   When the output range option is all the result-defined ranges 412, the rule output unit 106 does not perform additional processing.

出力範囲オプションがユーザ選択範囲413の場合、ルール出力部106は、ユーザが選択したユーザ定義ルールおよび決定表300の範囲のルールのみを残し、その他は、オリジナルルール集合と修正ルール集合から削除する。オリジナルルール集合のルールの一部が、ユーザが選択した決定表300の範囲に含まれる(当該ルールの条件部論理式が表す列ルール集合と決定表300の範囲を表す列ルール集合が部分的に一致する)場合、ルール出力部106は、当該ルールをオリジナルルール集合から削除し、決定表300の範囲を表す列ルールから条件部論理式を生成し、当該ルールの条件部論理式を、当該条件部論理式の否定と当該ルールの条件部論理式を論理積で結合した条件部論理式に置き換えたルールを修正ルール集合に追加する。   When the output range option is the user selection range 413, the rule output unit 106 leaves only the user-defined rule selected by the user and the rules in the range of the decision table 300, and deletes the others from the original rule set and the modified rule set. Some of the rules of the original rule set are included in the range of the decision table 300 selected by the user (the column rule set represented by the condition part logical expression of the rule and the column rule set representing the range of the decision table 300 are partially If they match, the rule output unit 106 deletes the rule from the original rule set, generates a condition part logical expression from the column rule representing the range of the decision table 300, and sets the condition part logical expression of the rule as the condition A rule in which a partial logical expression is negated and a conditional logical expression obtained by combining the conditional logical expression of the rule with a logical product is added to the correction rule set.

出力範囲オプションが結果未定義範囲414の場合、ルール出力部106は、上述の結果が未定義のルールの生成方法により、結果未定義範囲のルールを生成し、修正ルール集合に追加する。また、ルール出力部106は、オリジナルルール集合に含まれる全ルールと修正ルール集合に含まれる結果未定義範囲のルールとして追加したルールを除き、全ルールを削除する。   When the output range option is the result undefined range 414, the rule output unit 106 generates a rule for the result undefined range by the above-described rule generation method for an undefined result, and adds the rule to the correction rule set. Further, the rule output unit 106 deletes all rules except for all rules included in the original rule set and rules added as a result undefined range rule included in the correction rule set.

出力範囲オプションが条件範囲指定415の場合、ルール出力部106は、条件範囲指定415で指定された条件範囲に含まれるオリジナルルール集合と修正ルール集合のルールのみを残し、その他は削除する。オリジナルルール集合のルールの一部が、条件範囲に含まれる(当該ルールの条件部論理式が表す列ルール集合と条件範囲を表す列ルール集合が部分的に一致する)場合、ルール出力部106は、当該ルールをオリジナルルール集合から削除し、条件範囲から条件部論理式を生成し、当該ルールの条件部論理式を、当該条件部論理式の否定と当該ルールの条件部論理式を論理積で結合した条件部論理式に置き換えたルールを修正ルール集合に追加する。   When the output range option is the condition range specification 415, the rule output unit 106 leaves only the rules of the original rule set and the correction rule set included in the condition range specified by the condition range specification 415, and deletes the others. When a part of the rules of the original rule set is included in the condition range (the column rule set represented by the condition part logical expression of the rule and the column rule set representing the condition range partially match), the rule output unit 106 , Delete the rule from the original rule set, generate a conditional part formula from the condition range, AND the conditional part logical expression of the rule with the negative of the conditional part logical expression and the conditional part logical expression of the rule The rule replaced with the combined conditional part logical expression is added to the correction rule set.

出力範囲オプションが結果範囲指定416の場合、ルール出力部106は、結果範囲指定416で指定された結果範囲に含まれるオリジナルルール集合と修正ルール集合のルールのみを残し、その他は削除する。   When the output range option is the result range specification 416, the rule output unit 106 leaves only the rules of the original rule set and the correction rule set included in the result range specified by the result range specification 416, and deletes the others.

次に、ルール出力部106は、ルール出力条件801のユーザ定義ルール活用モードに基づきルールを仕分ける(S1207)。ユーザ定義ルール活用モードが修正不可421の場合、ルール出力部106は、S1204において修正が加えられたオリジナルルール集合のルールを、オリジナルルール集合から削除し、修正ルール集合に追加する。また、ルール出力部106は、オリジナルルール集合に残っているすべてのルールを削除し、出力ルール保持部155の変更なしルール1101に登録する。ユーザ定義ルール活用モードが修正可422の場合、ルール出力部106は、オリジナルルール集合の全ルールを削除し、修正を許可されたルールを格納する集合である修正可ルール集合に追加する。ユーザ定義ルール活用モードが未活用423の場合、ルール出力部106は、オリジナルルール集合に含まれるすべてのルールを修正ルール集合に追加する。ユーザ定義ルール活用モードが個別設定424の場合、ルール出力部106は、オリジナルルール集合の各ルールに対応する個別設定の情報を確認し、ユーザ定義ルール活用モードが修正不可614であるルールのうちS1204において修正が加えられたルールをオリジナルルール集合から削除し、修正可ルール集合に追加する。また、ユーザ定義ルール活用モードが修正可615であるルールをオリジナルルール集合から削除し、修正可ルール集合に追加する。ユーザ定義ルール活用モードが未活用616であるルールをオリジナルルール集合から削除し、修正ルール集合に追加する。このようにルールを仕分けた後、ルール出力部106は、S1208に進む。   Next, the rule output unit 106 sorts the rules based on the user-defined rule utilization mode of the rule output condition 801 (S1207). When the user-defined rule utilization mode is not modifiable 421, the rule output unit 106 deletes the rule of the original rule set modified in S1204 from the original rule set and adds it to the modified rule set. Further, the rule output unit 106 deletes all the rules remaining in the original rule set and registers them in the no-change rule 1101 of the output rule holding unit 155. When the user-defined rule utilization mode is modifiable 422, the rule output unit 106 deletes all the rules of the original rule set and adds them to the modifiable rule set that is a set that stores rules that are permitted to be modified. When the user-defined rule utilization mode is not utilized 423, the rule output unit 106 adds all the rules included in the original rule set to the correction rule set. When the user-defined rule utilization mode is the individual setting 424, the rule output unit 106 confirms the information of the individual setting corresponding to each rule of the original rule set, and among the rules whose user-defined rule utilization mode is not 614, S1204 The rule that has been modified in is deleted from the original rule set and added to the modifiable rule set. Also, a rule whose user-defined rule utilization mode is modifiable 615 is deleted from the original rule set and added to the modifiable rule set. A rule whose user-defined rule utilization mode is not utilized 616 is deleted from the original rule set and added to the correction rule set. After sorting the rules in this way, the rule output unit 106 proceeds to S1208.

次に、ルール出力部106は、ルール出力条件801の出力単位を読み込み、結果項目単位431の場合、S1209に進み、結果項目組合せ単位432の場合、S1210に進む(S1208)。   Next, the rule output unit 106 reads the output unit of the rule output condition 801. If the result item unit 431, the process proceeds to S1209. If the result item combination unit 432, the process proceeds to S1210 (S1208).

S1209では、ルール出力部106は、結果項目単位のルールを生成する(S1209)。図13を参照して、ルール出力部106の結果項目単位のルール生成の処理を説明する。   In S1209, the rule output unit 106 generates a rule for each result item (S1209). With reference to FIG. 13, the rule generation processing of the result item unit of the rule output unit 106 will be described.

図13は、ルール出力部106の結果項目単位のルール生成(S1209)の処理を示すフローチャートである。   FIG. 13 is a flowchart showing a rule generation unit rule generation (S1209) process by the rule output unit 106.

ルール出力部106は、処理開始後、結果項目について未処理の要素値r_ijを選択する(S1300,S1301)。ここで、r_ijは、結果項目Riのj番目の要素値を表す。未処理の要素値r_ijを選択後、S1302に進む。   After starting the processing, the rule output unit 106 selects an unprocessed element value r_ij for the result item (S1300, S1301). Here, r_ij represents the j-th element value of the result item Ri. After selecting an unprocessed element value r_ij, the process proceeds to S1302.

次に、ルール出力部106は、修正ルール集合から結果部論理式にr_ijを含むルールの条件部論理式を論理和で結合した論理式(以下、「条件部論理和結合式」という。)を生成する(S1302)。条件部論理和結合式は、結果がr_ijとなる条件を表す。条件部論理和結合式を生成後、S1303に進む。   Next, the rule output unit 106 combines a logical expression (hereinafter referred to as a “conditional part logical sum combination expression”) obtained by combining the condition part logical expressions of the rule including r_ij from the modified rule set with the logical sum. Generate (S1302). The conditional part OR combination expression represents a condition that results in r_ij. After generating the conditional part OR combination expression, the process proceeds to S1303.

次に、ルール出力部106は、条件部論理和結合式をDNF(Disjunctive Normal Form)と呼ばれる標準形に変換した論理式(以下、「条件部DNF式」という。)を生成する(S1303)。条件部DNF式は、条件項目の要素値と論理積からなる部品(以下、「条件部DNF節」という。)を論理和で結合した式である。条件部論理和結合式から条件部DNF式への変換は、例えば、命題論理におけるド・モルガンの法則、分配律などを適用することで実行することができる。また、ルール出力部106は、条件部DNF式の長さが最小となるように変換する。これは、回路設計の分野で利用されている多段論理の最小化のアルゴリズムを活用することで実現できる。条件部DNF式を生成後、S1304に進む。   Next, the rule output unit 106 generates a logical expression (hereinafter, referred to as “conditional part DNF expression”) obtained by converting the conditional part OR combination expression into a standard form called DNF (Disjunctive Normal Form) (S1303). The condition part DNF expression is an expression in which components (hereinafter referred to as “condition part DNF clauses”) composed of element values of condition items and logical products are combined by a logical sum. The conversion from the conditional part OR combination expression to the conditional part DNF expression can be executed by applying, for example, De Morgan's law and distribution rule in propositional logic. Also, the rule output unit 106 performs conversion so that the length of the condition unit DNF expression is minimized. This can be realized by utilizing a multi-stage logic minimization algorithm used in the field of circuit design. After generating the condition part DNF expression, the process proceeds to S1304.

次に、ルール出力部106は、各条件部DNF節を条件部論理式に、r_ijを結果部論理式としたルールを生成し、出力ルール保持部155の追加ルール1103に登録する(S1304)。登録後に、S1305に進む。   Next, the rule output unit 106 generates a rule having each condition part DNF clause as a condition part logical expression and r_ij as a result part logical expression, and registers the rule in the additional rule 1103 of the output rule holding part 155 (S1304). After registration, the process proceeds to S1305.

次に、ルール出力部106は、結果項目Riの未処理の要素値があるか否かを確認する(S1305)。未処理の要素値がある場合(S1305,Yes)、S1301に進み、未処理の要素値がない場合(S1305,No)、結果項目単位のルール生成処理は終了する(S1306)。   Next, the rule output unit 106 checks whether or not there is an unprocessed element value of the result item Ri (S1305). If there is an unprocessed element value (S1305, Yes), the process proceeds to S1301, and if there is no unprocessed element value (S1305, No), the rule generation process for each result item ends (S1306).

図12のS1210では、ルール出力部106は、結果項目組合せ単位のルールを生成する(S1210)。図14を参照して、ルール出力部106の結果項目組合せ単位のルール生成の処理を説明する。   In S1210 of FIG. 12, the rule output unit 106 generates a rule for the result item combination unit (S1210). With reference to FIG. 14, the rule generation processing of the result item combination unit of the rule output unit 106 will be described.

図14は、ルール出力部106の結果項目組合せ単位のルール生成の処理を示すフローチャートである。   FIG. 14 is a flowchart showing the rule generation unit rule generation processing of the rule output unit 106.

ルール出力部106は、処理を開始後、結果項目に関する未処理の要素値r_ijを選択する(S1400,S1401)。選択後、S1402に進む。   After starting the processing, the rule output unit 106 selects an unprocessed element value r_ij related to the result item (S1400, S1401). After selection, the process proceeds to S1402.

次に、ルール出力部106は、修正ルール集合から結果部論理式にr_ijを含むルールの条件部論理式を論理和で結合した論理式(条件部論理和結合式)を生成する(S1402)。条件部論理和結合式を生成後、S1403に進む。   Next, the rule output unit 106 generates, from the correction rule set, a logical expression (conditional logical OR combination expression) obtained by combining the conditional part logical expressions including the rule r_ij in the result part logical expression with a logical sum (S1402). After the conditional part OR combination expression is generated, the process proceeds to S1403.

次に、ルール出力部106は、結果項目に関する未処理の要素値があるか否かを確認する(S1403)。未処理の要素値がある場合(S1403,Yes)、ステップS1401に進み、未処理の要素値がない場合(S1403,No)、S1404に進む。   Next, the rule output unit 106 checks whether there is an unprocessed element value related to the result item (S1403). When there is an unprocessed element value (S1403, Yes), the process proceeds to step S1401, and when there is no unprocessed element value (S1403, No), the process proceeds to S1404.

次に、ルール出力部106は、結果項目の要素値の未処理の組合せ(∧r_ix)を選択する(S1404)。∧r_ixは、各結果項目の要素値を論理積で結合した論理式を表す。この組合せには、要素値が未定義の結果項目を含む。例えば、結果項目R1とR2があり、それぞれ要素値として{r11,r12}{r21,r22}を取り得る場合、結果項目の要素値の組合せとしては、概念的には「未定義」という要素値を含むと考えられるため、それぞれ要素値を3個ずつ持つことになり、組合せは3×3=9通り生じる。結果項目の要素値の未処理の組合せを選択後、S1405に進む。   Next, the rule output unit 106 selects an unprocessed combination (∧r_ix) of the element values of the result items (S1404). ∧r_ix represents a logical expression in which element values of each result item are combined by logical product. This combination includes a result item whose element value is undefined. For example, when there are result items R1 and R2 and {r11, r12} {r21, r22} can be taken as element values, the combination of element values of result items is conceptually an element value “undefined”. Since there are three element values, there are 3 × 3 = 9 combinations. After selecting an unprocessed combination of element values of the result item, the process proceeds to S1405.

次に、ルール出力部106は、当該組合せの各要素値に対応する条件部論理和結合式を論理積で結合した論理式(以下、「組合せ条件部論理式」という。)を生成する(S1405)。組合せ条件部論理式を生成後、S1406に進む。   Next, the rule output unit 106 generates a logical expression (hereinafter, referred to as “combination condition part logical expression”) obtained by combining the conditional part logical combination expression corresponding to each element value of the combination by logical product (hereinafter, referred to as “combination condition part logical expression”) (S1405). ). After the combination condition part logical expression is generated, the process proceeds to S1406.

次に、ルール出力部106は、組合せ条件部論理式の充足可能性を判定する(S1406)。充足可能と判定した場合(S1406,Yes)、S1407に進み、充足不能と判定した場合(S1406,No)、S1404に進む。   Next, the rule output unit 106 determines whether the combination condition part logical expression is satisfiable (S1406). If it is determined that it can be satisfied (S1406, Yes), the process proceeds to S1407, and if it is determined that it cannot be satisfied (S1406, No), the process proceeds to S1404.

次に、ルール出力部106は、組合せ条件部論理式をDNFに変換した論理式(条件部DNF式)を生成する(S1407)。条件部DNF式の生成方法は、図13のS1303と同様である。条件部DNF式の生成後に、S1408に進む。   Next, the rule output unit 106 generates a logical expression (conditional part DNF expression) obtained by converting the combination condition part logical expression into DNF (S1407). The method for generating the condition part DNF expression is the same as S1303 in FIG. After the generation of the condition part DNF expression, the process proceeds to S1408.

次に、ルール出力部106は、各条件部DNF節を条件部論理式に、∧r_ixを結果部論理式としたルールを生成し、出力ルール保持部155の追加ルールに登録する(S1408)。登録後に、S1409に進む。   Next, the rule output unit 106 generates a rule having each condition part DNF clause as a condition part logical expression and ∧r_ix as a result part logical expression, and registers the rule as an additional rule in the output rule holding part 155 (S1408). After registration, the process proceeds to S1409.

次に、ルール出力部106は、結果項目の要素値の未処理の組合せがあるか否かを確認する(S1409)。未処理の組合せがあると判定した場合(S1409,Yes)、S1404に進み、未処理の組合せがないと判定した場合(S1409,No)、結果項目組合せ単位のルール生成処理は終了する(S1410)。   Next, the rule output unit 106 checks whether or not there is an unprocessed combination of element values of result items (S1409). When it is determined that there is an unprocessed combination (S1409, Yes), the process proceeds to S1404, and when it is determined that there is no unprocessed combination (S1409, No), the rule generating process for the result item combination unit ends (S1410). .

続いて、図12の処理フローに戻ると、ルール出力部106は、出力ルール保持部155の変更ありルール1102を生成する(S1211)。図15を参照して、変更ありルール1102の生成処理を説明する。   Subsequently, returning to the processing flow of FIG. 12, the rule output unit 106 generates a rule 1102 with a change in the output rule holding unit 155 (S1211). With reference to FIG. 15, the generation process of the changed rule 1102 will be described.

図15は、本発明の実施形態における出力ルール保持部155の変更ありルール1102の生成の処理を示すフローチャートである。   FIG. 15 is a flowchart showing a process for generating the modified rule 1102 in the output rule holding unit 155 in the embodiment of the present invention.

ルール出力部106は、処理開始後、修正可ルール集合から修正が加えられている未処理のルール(以下、この修正可ルール集合の中で修正が加えられているルールを「修正済ルール」という。)を選択する(S1500,S1501)。修正済ルールを選択後、S1502に進む。修正済ルールは、「図12のS1204においてユーザ定義ルールと決定表修正ルールとの間に不整合があり、かつ、ユーザが決定表修正ルールを優先することを選択した場合に、修正可とされているユーザ定義ルールに修正が加えられたルール」と定義される。   The rule output unit 106 is an unprocessed rule that has been corrected from the correctable rule set after the start of processing (hereinafter, a rule that has been corrected in the correctable rule set is referred to as a “corrected rule”). .) Is selected (S1500, S1501). After selecting the corrected rule, the process proceeds to S1502. The corrected rule is “can be corrected if there is a mismatch between the user-defined rule and the decision table correction rule in S1204 of FIG. 12 and the user has selected to give priority to the decision table correction rule. Is defined as a modified user-defined rule.

次に、ルール出力部106は、修正済ルールの条件部論理式を論理式展開する(S1502)。論理式展開後に、S1503に進む。   Next, the rule output unit 106 develops the logical expression of the condition part logical expression of the corrected rule (S1502). After the logical expression expansion, the process proceeds to S1503.

次に、ルール出力部106は、修正可オプション803の条件を満たすか否かを判定する。修正可オプション803の条件を満たすと判定した場合、ルール出力部106は、当該修正済ルールを修正可ルール集合から削除し、当該修正済ルールの条件部論理式を、論理式展開後の論理式に置き換えたルールを出力ルール保持部155の変更ありルール1102に登録する(S1503)。修正可オプション803の条件を満たさないと判定した場合、ルール出力部106は、当該修正済ルールを修正可ルール集合から削除し、当該修正済ルールの条件部論理式を、論理式展開後の論理式に置き換えたルールを出力ルール保持部155の追加ルール1103に登録する。修正済ルールを変更ありルール1102または追加ルール1103に登録後、S1504に進む。   Next, the rule output unit 106 determines whether or not the condition of the modifiable option 803 is satisfied. If the rule output unit 106 determines that the condition of the modifiable option 803 is satisfied, the rule output unit 106 deletes the modified rule from the modifiable rule set, and converts the conditional part logical expression of the modified rule into a logical expression after logical expression expansion. The rule replaced with is registered in the changed rule 1102 of the output rule holding unit 155 (S1503). If the rule output unit 106 determines that the condition of the modifiable option 803 is not satisfied, the rule output unit 106 deletes the modified rule from the modifiable rule set, and replaces the condition part logical expression of the modified rule with the logical expression after logical expression expansion. The rule replaced with the expression is registered in the additional rule 1103 of the output rule holding unit 155. After the corrected rule is registered in the changed rule 1102 or the added rule 1103, the process proceeds to S1504.

次に、ルール出力部106は、未処理の修正済ルールがあるか否かを確認する(S1504)。未処理の修正済ルールがあると判定した場合(S1504,Yes)、ルール出力部106はS1501に進み、未処理の修正済ルールがないと判定した場合(S1504,No)、S1505に進む。S1501〜S1504の修正済ルールに関する処理では、修正済ルールを論理式展開し、図5の評価指標に基づいて評価を実施し、修正の度合いが評価指標の許容範囲内であると判定されればそのルールを出力ルール保持部155に登録する。ユーザ定義ルールと決定表修正ルールとの間に不整合がある場合、そのまま修正可ルールを残して登録することはできない。しかし、両者間の不整合の部分を適切に排除することにより、前記集成果ルールを微修正して残すことができることがある。このような微修正で済むかどうかを、図5の評価指標に照らして判定している。   Next, the rule output unit 106 checks whether there is an unprocessed modified rule (S1504). When it is determined that there is an unprocessed modified rule (S1504, Yes), the rule output unit 106 proceeds to S1501, and when it is determined that there is no unprocessed modified rule (S1504, No), the process proceeds to S1505. In the processing relating to the modified rule in S1501 to S1504, if the modified rule is logically expanded and evaluated based on the evaluation index of FIG. 5, it is determined that the degree of correction is within the allowable range of the evaluation index. The rule is registered in the output rule holding unit 155. If there is an inconsistency between the user-defined rule and the decision table correction rule, it is not possible to register with the correction possible rule as it is. However, there are cases where the collection result rule can be finely corrected and left by appropriately eliminating the inconsistency between the two. Whether or not such a fine correction is sufficient is determined in light of the evaluation index of FIG.

次に、ルール出力部106は、出力ルール保持部155から未処理の追加ルール1103を選択し(S1505)、S1506に進む。   Next, the rule output unit 106 selects an unprocessed additional rule 1103 from the output rule holding unit 155 (S1505), and proceeds to S1506.

次に、ルール出力部106は、当該追加ルール1103と、結果部論理式が一致する修正可ルール集合の各ルールについて、当該追加ルール1103の条件部論理式と修正可ルール集合の当該ルールの条件部論理式の論理和を計算する(計算結果の論理式を「修正後論理式」という。)(S1506)。当該追加ルール1103と、結果部論理式が一致する修正可ルール集合の各ルールについて、修正後論理式を生成した後、S1507に進む。   Next, for each rule of the modifiable rule set whose result part logical expression matches the additional rule 1103, the rule output unit 106 applies the condition part logical expression of the additional rule 1103 and the condition of the rule of the modifiable rule set. The logical sum of the partial logical expressions is calculated (the logical expression of the calculation result is referred to as “corrected logical expression”) (S1506). For each rule in the correctable rule set in which the added rule 1103 matches the result part logical expression, a corrected logical expression is generated, and the process advances to step S1507.

次に、ルール出力部106は、修正可オプション803の条件を満たす修正後論理式がある場合、当該追加ルール1103を削除し、修正可オプション803の条件を満たす修正後論理式の中から、修正可オプション803の優先度に従い、最も優先度の高い修正後論理式を条件部論理式としたルールを出力ルール保持部15の変更ありルール1102に追加する(S1507)。また、ルール出力部106は、追加したルールに対応する修正可ルール集合のルールを修正可ルール集合から削除する。変更ありルール1102に追加後、S1508に進む。また、修正可オプション803の条件を満たす修正後論理式がない場合もS1508に進む。   Next, when there is a corrected logical expression that satisfies the condition of the correctable option 803, the rule output unit 106 deletes the additional rule 1103, and corrects the corrected logical expression from the corrected logical expression that satisfies the condition of the correctable option 803. In accordance with the priority of the permitted option 803, a rule with the corrected logical expression having the highest priority as the conditional part logical expression is added to the changed rule 1102 in the output rule holding unit 15 (S1507). In addition, the rule output unit 106 deletes the rule of the correctable rule set corresponding to the added rule from the correctable rule set. After adding to the changed rule 1102, the process proceeds to S 1508. If there is no corrected logical expression that satisfies the condition of the correctable option 803, the process advances to step S1508.

次に、ルール出力部106は、未処理の追加ルール1103があるか否かを確認する(S1508)。未処理の追加ルール1103があると判定した場合(S1508,Yes)、S1505に進み、未処理の追加ルール1103がないと判定した場合(S1508,No)、S1509に進む。   Next, the rule output unit 106 checks whether there is an unprocessed additional rule 1103 (S1508). If it is determined that there is an unprocessed additional rule 1103 (S1508, Yes), the process proceeds to S1505. If it is determined that there is no unprocessed additional rule 1103 (S1508, No), the process proceeds to S1509.

次に、ルール出力部106は、修正可ルール集合に残っているルールを出力ルール保持部155の変更なしルール1102に登録し(S1508)、変更ありのルール生成処理を終了する(S1509)。   Next, the rule output unit 106 registers the rule remaining in the modifiable rule set in the no-change rule 1102 of the output rule holding unit 155 (S1508), and ends the rule generation process with change (S1509).

この後、ルール出力部106は、図12において、ルール出力条件の出力ルール制約805に基づき、出力ルール保持部155の追加ルール1103を更新する(S1212)。例えば、出力ルール制約805として、条件値の否定を許可する441が有効な場合について説明する。この場合、出力ルール保持部155は、追加ルール1103の条件部論理式について、条件項目の取り得る要素値の1つ(r_i1とする)を除いた要素値が論理和で結合されている(r_i2∨r_i3とする)要素を検索し、見つかった場合には当該論理和を¬r_i1に置き換える。ルール出力部106は、出力ルールを更新後、処理を終了する(S1213)。   Thereafter, in FIG. 12, the rule output unit 106 updates the additional rule 1103 of the output rule holding unit 155 based on the output rule constraint 805 of the rule output condition (S1212). For example, a case where 441 that permits denial of a condition value is valid as the output rule constraint 805 will be described. In this case, the output rule holding unit 155 combines the element values of the condition part logical expression of the additional rule 1103 excluding one of the element values that can be taken by the condition item (referred to as r_i1) by a logical sum (r_i2). Search for an element (referred to as ∨r_i3), and if found, replace the logical sum with ¬r_i1. The rule output unit 106 ends the process after updating the output rule (S1213).

続いて、図16を参照して、本実施形態に係る出力ルール表示部107における出力ルール表示画面について説明する。   Subsequently, an output rule display screen in the output rule display unit 107 according to the present embodiment will be described with reference to FIG.

図16は、出力ルール表示部107における出力ルールの表示画面の例である。出力ルール表示画面1600は、ID1601、種類1602、条件部1603、結果部1604などの表示項目を備える。ID1601は、当該出力ルールを識別する情報であり、ユーザ定義ルールと一致もしくはユーザ定義ルールに修正が加わったルールは、当該ユーザ定義ルールのルールIDと一致する。種類1602は、当該出力ルールの種類を表し、オリジナルのユーザ定義ルールから修正が加えられているか否か、新規に追加されたものかなどを識別する情報である。条件部1603は、当該出力ルールの条件部であり、オリジナルのユーザ定義ルールと差分がある場合は、その差分を識別する情報を含む。差分を識別する情報は、例えば、差分の箇所に下線を引いたり、他と異なる色にするなど、視覚的に識別できるようにする。また、ユーザの操作により、視覚的に他と異なるようにするか否かを選択可能としてもよい。結果部1604は、当該出力ルールの結果部を表す。差分の特定は、ルールIDが一致するユーザ定義ルール保持部153のユーザ定義ルール701と出力ルール保持部15の変更ありルール1102を比較することで特定できる。このような情報を画面に出力することで、ユーザはどのユーザ定義ルールが修正されたのか、新たに追加されたルールは何か、修正が加わったルールはどの部分に変更が加わったのか、といったことを容易に理解できる。   FIG. 16 is an example of an output rule display screen in the output rule display unit 107. The output rule display screen 1600 includes display items such as an ID 1601, a type 1602, a condition part 1603, and a result part 1604. ID 1601 is information for identifying the output rule, and a rule that matches the user-defined rule or a modification to the user-defined rule matches the rule ID of the user-defined rule. The type 1602 represents the type of the output rule, and is information for identifying whether the original user-defined rule has been modified or whether it has been newly added. The condition part 1603 is a condition part of the output rule, and if there is a difference from the original user-defined rule, it includes information for identifying the difference. The information for identifying the difference can be visually identified by, for example, drawing an underline at the position of the difference or making the color different from others. Further, it may be possible to select whether or not to visually differ from the others by user operation. The result part 1604 represents the result part of the output rule. The difference can be specified by comparing the user-defined rule 701 of the user-defined rule holding unit 153 having the same rule ID and the changed rule 1102 of the output rule holding unit 15. By outputting such information to the screen, the user can see which user-defined rules have been modified, what new rules have been added, and what parts have been modified with modified rules. I can understand it easily.

続いて、図17を参照して、本発明の実施形態に係るルール出力部106の処理の実行例を説明する。   Next, with reference to FIG. 17, an example of execution of processing by the rule output unit 106 according to the embodiment of the present invention will be described.

図17は、本実施例におけるルール出力部106の処理のインプットとなる情報であり、ユーザ定義ルール1710、決定表修正ルール1720、および決定表1730を含む。ユーザ定義ルール1710は、図2のユーザ定義ルールデータ230を説明の簡略化のため内部表現の記号で表現している。決定表修正ルール1720は、決定表1730の黒丸「●」部分のルールを内部表現の記号で表現している。決定表1730は、決定表300の条件項目、結果項目、条件要素値、結果要素値を内部表現の記号で表現している。   FIG. 17 shows information serving as input for processing of the rule output unit 106 in this embodiment, and includes a user definition rule 1710, a decision table modification rule 1720, and a decision table 1730. The user-defined rule 1710 expresses the user-defined rule data 230 of FIG. 2 with internal representation symbols for the sake of simplicity of explanation. The decision table correction rule 1720 represents the rule of the black circle “●” portion of the decision table 1730 with an internal representation symbol. The decision table 1730 expresses the condition items, result items, condition element values, and result element values of the decision table 300 with internal representation symbols.

図17に示す例では、ルール出力条件801は、出力範囲オプションが結果定義済み範囲すべて412、ユーザ定義ルール活用モードが修正可422、出力単位が結果項目組合せ単位432、出力ルール制約はなし、と設定されている。また、修正可オプション803の設定は、図5に示す通りである。   In the example shown in FIG. 17, the rule output condition 801 is set such that the output range option is all the result-defined ranges 412, the user-defined rule utilization mode is modifiable 422, the output unit is the result item combination unit 432, and there is no output rule constraint. Has been. The setting of the modifiable option 803 is as shown in FIG.

上記前提の場合、図12のS1207の終了時点で、ルール出力部106は、ユーザ定義ルール1710のすべてを修正可ルール集合に追加し、決定表修正ルール1720のすべてを修正ルール集合に追加している。   In the case of the above premise, at the end of S1207 in FIG. 12, the rule output unit 106 adds all of the user-defined rules 1710 to the correctable rule set and adds all of the decision table correction rules 1720 to the corrected rule set. Yes.

次に、ルール出力部106は、ルール出力条件801の出力単位の確認の結果、S1210の処理を実行する。S1210の処理は、図14で示す通りである。ルール出力部106は、S1401からS1403の実行により、結果要素値R11とR22に係る以下の2つの条件部論理和結合式を生成する。   Next, the rule output unit 106 executes the processing of S1210 as a result of checking the output unit of the rule output condition 801. The process of S1210 is as shown in FIG. The rule output unit 106 generates the following two conditional part OR combination expressions related to the result element values R11 and R22 by executing S1401 to S1403.

結果要素値R11に係る条件部論理和結合式:
(C11∧C23∧C32)∨(C12∧C21∧C31)
結果要素値R22に係る条件部論理和結合式:
C11∧C23∧C32
Conditional OR combination formula for the result element value R11:
(C11 ∧ C23 ∧ C32) ∨ (C12 ∧ C21 ∧ C31)
Conditional OR combination formula for the result element value R22:
C11∧C23∧C32

次に、ルール出力部106は、S1404からS1406の実行により、以下の組合せ条件部論理式を生成する。
((C11∧C23∧C32)∨(C12∧C21∧C31))∧(C11∧C23∧C32)
Next, the rule output unit 106 generates the following combination condition part logical expression by executing S1404 to S1406.
((C11 ∧ C23 ∧ C32) ∨ (C12 ∧ C21 ∧ C31)) ∧ (C11 ∧ C23 ∧ C32)

次に、ルール出力部106は、S1407の実行により、前記組合せ条件部論理式から以下の条件部DNF式を生成する。
C11∧C23∧C32
Next, the rule output unit 106 generates the following condition part DNF expression from the combination condition part logical expression by executing S1407.
C11∧C23∧C32

次に、ルール出力部106は、S1408の実行により、以下の条件部論理式と結果部論理式を持つルールを追加ルールに登録する。
条件部論理式:C11∧C23∧C32
結果部論理式:R11∧R22
Next, the rule output unit 106 registers a rule having the following condition part logical expression and result part logical expression as an additional rule by executing S1408.
Condition part logical formula: C11∧C23∧C32
Result part logical formula: R11∧R22

次に、ルール出力部106は、S1409を実行した後、S1211を実行する。S1211の処理は、図15に示す通りである。図17に示す例では、修正済ルールが存在しないため、ルール出力部106は、S1501からS1504の処理をスキップする。   Next, the rule output unit 106 executes S1411 after executing S1409. The processing of S1211 is as shown in FIG. In the example illustrated in FIG. 17, since there is no corrected rule, the rule output unit 106 skips the processing from S1501 to S1504.

次に、ルール出力部106は、S1505からS1506の実行により、修正可ルール集合の中から上記追加ルールと結果部論理式が一致するルールを取得する。図17に示す例では、ユーザ定義ルール1711が該当する。さらに、ルール出力部106は、上記追加ルールの条件部論理式とユーザ定義ルール1711の条件部論理式の論理和を計算し、以下の修正後論理式を生成する。
C11∧(C21∨C23∨C31)
Next, the rule output unit 106 acquires a rule in which the additional rule and the result part logical expression match from the correctable rule set by executing S1505 to S1506. In the example shown in FIG. 17, the user-defined rule 1711 is applicable. Further, the rule output unit 106 calculates the logical sum of the condition part logical expression of the additional rule and the condition part logical expression of the user-defined rule 1711, and generates the following corrected logical expression.
C11 ∧ (C21 ∨ C23 ∨ C31)

次に、ルール出力部106は、S1507において、修正可オプション803に基づき修正後論理式を評価する。図17に示す例では、修正後論理式は1つであるため、当該修正後論理式が修正可オプション803の条件を満たすかを判定する。各評価指標の評価値を計算すると、追加された要素数は、「C23」が追加されているのみなので「1」であり、下限と上限の条件を満たす。また、削除された要素数は「0」であり、下限と上限の条件を満たす。全体の要素数については下限と上限がないため条件を満たす。よって、修正可オプション803の各評価指標の条件を満たすため、ルール出力部106は、上記修正後論理式を条件部論理式、結果部論理式をR11∧R22とするルールを変更ありルール1102に追加する。   Next, in step S1507, the rule output unit 106 evaluates the corrected logical expression based on the correctable option 803. In the example shown in FIG. 17, since there is one corrected logical expression, it is determined whether the corrected logical expression satisfies the condition of the correctable option 803. When the evaluation value of each evaluation index is calculated, the number of added elements is “1” because only “C23” is added, which satisfies the lower and upper limit conditions. The number of deleted elements is “0”, which satisfies the lower and upper limit conditions. The total number of elements satisfies the condition because there are no lower and upper limits. Therefore, in order to satisfy the conditions of each evaluation index of the modifiable option 803, the rule output unit 106 changes the rule in which the modified logical formula is the conditional logical formula and the result logical formula is R11∧R22 to the changed rule 1102 to add.

次に、ルール出力部106は、残りの処理を実行し、処理を終了する。ルール出力部106の処理終了後に出力ルール表示部107を実行した結果は、図16に示す通りである。IDが1のルールに修正が加えられ、IDがA1のルールが追加されていることがひと目でわかる。   Next, the rule output unit 106 executes the remaining processing and ends the processing. The result of executing the output rule display unit 107 after the processing of the rule output unit 106 is as shown in FIG. It can be seen at a glance that the rule with ID 1 is modified and the rule with ID A1 is added.

第2の実施形態
次に、本発明の第2の実施形態について説明する。本実施形態では、ユーザが定義したルールの管理を支援する装置の例を説明する。
Second Embodiment Next, a second embodiment of the present invention will be described. In this embodiment, an example of an apparatus that supports management of rules defined by a user will be described.

図18は、本発明の第2実施形態に係るルール管理支援装置1800の構成図の例である。本実施形態では、ルール管理支援装置100のうち、決定表300を使用する処理部が省略されており、ユーザ定義ルール入力部101、ルール出力条件指定部105、ルール出力部106、出力ルール表示部107、および出力ルール反映部108などの機能ロジックと、ユーザ定義ルール保持部153、ルール出力条件保持部154、および出力ルール保持部155のデータをメモリ170に保管している。   FIG. 18 is an example of a configuration diagram of a rule management support apparatus 1800 according to the second embodiment of the present invention. In the present embodiment, the processing unit that uses the decision table 300 is omitted from the rule management support apparatus 100, and the user-defined rule input unit 101, the rule output condition specifying unit 105, the rule output unit 106, and the output rule display unit. 107, the functional logic such as the output rule reflecting unit 108, and data of the user-defined rule holding unit 153, the rule output condition holding unit 154, and the output rule holding unit 155 are stored in the memory 170.

各機能ロジックとデータは、第1実施形態と同様であるため、各機能ロジックとデータの説明は省略する。本実施形態の特徴は、ユーザ定義ルールのみを扱う点である。このような構成により、IF−THEN形式のユーザ定義ルール主体で、ルールを管理できる。実施例1における決定表の修正操作は、ユーザ定義ルールの追加で代替できる。また、ユーザ定義ルール活用モードをユーザ定義ルール毎に個別設定することで、例えば、レビュー後に追加したユーザ定義ルールのみを対象として出力ルールを生成することが可能である。   Since each functional logic and data are the same as those in the first embodiment, description of each functional logic and data is omitted. The feature of this embodiment is that only user-defined rules are handled. With this configuration, rules can be managed by the user-defined rule subject in the IF-THEN format. The correction operation of the decision table in the first embodiment can be replaced by adding a user-defined rule. Further, by individually setting the user-defined rule utilization mode for each user-defined rule, for example, it is possible to generate an output rule only for the user-defined rule added after the review.

以上説明した本発明の実施形態によれば、根拠情報との追跡性確保、ルール数の最小化を実現しつつ、仕様変更に伴う修正を容易に実行できるようにするルール管理支援装置等を提供することができる。   According to the embodiments of the present invention described above, it is possible to provide a rule management support device that makes it possible to easily execute corrections associated with specification changes while ensuring traceability with ground information and minimizing the number of rules. can do.

なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば,上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、実施形態の構成の一部を他の構成に置き換えることが可能であり、また、ある実施形態の構成に他の構成を加えることも可能である。   In addition, this invention is not limited to above-described embodiment, Various modifications are included. For example, the above-described embodiment has been described in detail for easy understanding of the present invention, and is not necessarily limited to one having all the configurations described. In addition, a part of the configuration of the embodiment can be replaced with another configuration, and another configuration can be added to the configuration of a certain embodiment.

100,1800 ルール管理支援装置
101 ユーザ定義ルール入力部
102 決定表変換部
103 決定表表示部
104 決定表編集部
105 ルール出力条件指定部
106 ルール出力部
107 出力ルール表示部
108 出力ルール反映部
151 決定表修正ルール保持部
152 決定表保持部
153 ユーザ定義ルール保持部
154 ルール出力条件保持部
155 出力ルール保持部
160 プロセッサ
170 メモリ
180 入出力装置
200 ルール出力条件設定画面
500 修正可オプション設定画面
600 ユーザ定義ルール個別オプション設定画面
1600 出力ルール表示画面
100, 1800 Rule management support device 101 User-defined rule input unit 102 Decision table conversion unit 103 Decision table display unit 104 Decision table editing unit 105 Rule output condition designation unit 106 Rule output unit 107 Output rule display unit 108 Output rule reflection unit 151 decision Table correction rule holding unit 152 Decision table holding unit 153 User defined rule holding unit 154 Rule output condition holding unit 155 Output rule holding unit 160 Processor 170 Memory 180 Input / output device 200 Rule output condition setting screen 500 Correctable option setting screen 600 User defined Rule individual option setting screen 1600 Output rule display screen

Claims (9)

ソフトウェア仕様の開発におけるルールの管理を支援するための装置であって、
前記ルールが成立するための条件を格納する条件部と前記条件が成立した場合の結果を格納する結果部とを含む1以上の入力ルールを受け付けるための入力ルール受付部と、出力するルールが成立するための条件であるルール出力条件を受け付けるルール出力条件受付部と、前記入力ルールと前記ルール出力条件とに基づきルールを出力するためのルール出力部と
を備え、
前記ルール出力条件受付部は、前記入力ルール毎または全部に対して、当該入力ルールをそのまま出力することを指示するための修正不可オプション、当該入力ルールの修正を許可することを指示するための修正可オプション、および当該入力ルールの形式を考慮しない未活用オプションのうち1以上のオプションについて、適用する前記オプションを指定するためのオプション指定部を備え、
前記ルール出力部は、前記オプション指定部を参照して、
前記修正不可オプションが指定されていると判定した場合、前記入力ルールをそのまま出力し、
1の前記修正可オプションが指定されていると判定した場合、前記入力ルール、及び、前記修正可オプションが指定されている前記入力ルールに対して修正を加えた入力ルールの間の類似度を、前記修正可オプションが指定された前記入力ルールの修正可否の判定条件である類似度判定条件に基づいて判定し、前記類似度が許容範囲内であって修正可能と判定された場合に前記入力ルールに修正を加えたルールを出力し、
前記未活用オプションが指定されていると判定した場合、当該未活用オプションが指定されている前記入力ルールの一部または全部と等価となるルールを出力する
ことを特徴とするルール管理支援装置。
A device for supporting rule management in software specification development,
An input rule receiving unit for receiving one or more input rules including a condition unit for storing a condition for satisfying the rule and a result unit for storing a result when the condition is satisfied, and an output rule are satisfied A rule output condition receiving unit that receives a rule output condition that is a condition for performing, and a rule output unit for outputting a rule based on the input rule and the rule output condition,
The rule output condition accepting unit is a non-modifiable option for instructing to output the input rule as it is for each or all of the input rules, and a modification for instructing the modification of the input rules. An option designating unit for designating the option to be applied to one or more options among possible options and unused options that do not consider the format of the input rule;
The rule output unit refers to the option specifying unit,
If it is determined that the uncorrectable option is specified, the input rule is output as it is,
When it is determined that one of the modifiable options is specified, the similarity between the input rule and the input rule in which the modifiable option is modified , The input rule is determined based on a similarity determination condition that is a determination condition of whether or not the input rule for which the correction option is specified is specified, and the similarity is within an allowable range and can be corrected. Output the modified rule to
When it is determined that the unused option is specified, a rule management support apparatus that outputs a rule that is equivalent to a part or all of the input rules for which the unused option is specified.
請求項1に記載のルール管理支援装置であって、
前記ルール出力部は、
前記入力ルールと前記ルール出力条件とを読み込み、
前記修正不可オプションが指定された前記入力ルールをそのまま出力し、
前記未活用オプションが指定された前記入力ルールの前記結果部が一致する前記条件部の論理和である条件部論理和結合式を生成し、
前記条件部論理和結合式を条件部とし、結果部を前記入力ルールの結果部とした追加ルールを生成し、
前記追加ルールと前記結果部が一致する前記修正可オプションが指定された前記入力ルールのそれぞれの条件部の論理和である修正後論理式を生成し、
前記修正後論理式と前記入力ルールの類似度とを前記類似度判定条件に基づき判定し、前記類似度が許容範囲内であると判定した場合、前記修正後論理式を条件部とし、結果部を前記入力ルールの結果部としたルールを生成することを特徴とするルール管理支援装置。
The rule management support device according to claim 1,
The rule output unit
Read the input rule and the rule output condition,
Output the input rule with the non-modifiable option as it is,
Generating a conditional OR combination expression that is a logical OR of the conditional parts that match the result part of the input rule with the unused option specified;
Generating an additional rule with the condition part OR combination expression as a condition part and a result part as a result part of the input rule;
Generating a corrected logical expression that is a logical sum of the respective condition parts of the input rule in which the correctable option that matches the additional part and the result part is specified;
When the corrected logical expression and the similarity of the input rule are determined based on the similarity determination condition, and the similarity is determined to be within an allowable range, the corrected logical expression is used as a condition part, and a result part A rule management support device that generates a rule having a result part of the input rule as a rule.
請求項2に記載のルール管理支援装置であって、前記条件部論理和結合式をDisjunctive Normal Form(DNF)に変換した条件部DNF式を生成し、当該条件部DNF式の各節を条件部とし、結果部を前記入力ルールの結果部とした追加ルールを生成することを特徴とするルール管理支援装置。   3. The rule management support apparatus according to claim 2, wherein a condition part DNF expression is generated by converting the condition part logical sum combination expression into a Disjunctive Normal Form (DNF), and each clause of the condition part DNF expression is set as a condition part. And an additional rule having the result part as a result part of the input rule is generated. 請求項1に記載のルール管理支援装置であって、
前記ルール出力部は、前記修正可オプションに従って前記入力ルールに修正を加えたルールを出力する場合、当該ルールが修正されたものである旨の情報、および前記ルールについて修正された部分を示す識別情報を含む出力画面情報を出力することを特徴とするルール管理支援装置。
The rule management support device according to claim 1,
When the rule output unit outputs a rule obtained by modifying the input rule according to the modifiable option, information indicating that the rule is modified, and identification information indicating a modified part of the rule A rule management support apparatus for outputting output screen information including
請求項1に記載のルール管理支援装置であって、
前記ルール出力条件受付部は、さらに、前記ルール出力部が出力する出力範囲として、前記条件部に含まれる条件項目の取り得る値の全組合せを出力対象とする全範囲、前記結果部により結果が定義済みの前記条件部に含まれる条件項目の取り得る値の組合せの範囲、前記結果部により結果が未定義の前記条件部に含まれる条件項目の取り得る値の組合せの範囲、選択された前記入力ルールの範囲、指定された条件項目の取り得る値の条件を満たす前記条件部に含まれる条件項目の取り得る値の組合せの範囲、および指定された結果項目の取り得る値の条件を満たす前記条件部に含まれる条件項目の取り得る値の組合せの範囲のうち1以上のオプションを指定するための出力範囲オプション指定部を備え、
前記ルール出力部は、前記出力範囲を満たすルールを出力することを特徴とするルール管理支援装置。
The rule management support device according to claim 1,
The rule output condition accepting unit further outputs, as an output range output by the rule output unit, an entire range to which all combinations of possible values of the condition items included in the condition unit are output, and a result obtained by the result unit. Range of combinations of values that can be taken by the condition items included in the defined condition part, range of combinations of values that can be taken by the condition items included in the condition part whose result is undefined by the result part, and the selected range The range of input rules, the range of combinations of values that can be taken by the condition items included in the condition part satisfying the conditions of the values that can be taken by the specified condition items, and the conditions that can be taken by the specified result items An output range option designating unit for designating one or more options in a range of combinations of possible values of condition items included in the condition unit;
The rule output unit outputs a rule that satisfies the output range.
請求項1に記載のルール管理支援装置であって、
前記ルール出力条件受付部は、さらに、前記出力するルールである出力ルールの出力単位として、前記出力ルールの結果部に現れる結果項目の数が1である結果項目単位、前記出力ルールの結果部に全ての結果項目が含まれる結果項目組合せ単位、および前記出力ルールの結果部に含まれる結果項目のうち1以上のオプションを指定するための結果項目オプション指定部、または前記出力ルールの結果部に現れる結果項目の数を指定するための結果項目数指定部を含み、
前記ルール出力部は、前記指定された出力単位を満たすルールを出力することを特徴とするルール管理支援装置。
The rule management support device according to claim 1,
The rule output condition reception unit further as the output unit of the output rule is a rule that the output number 1 and is the result Item Unit result item appearing in results of the output rule, the result of the output rule Appears in a result item combination unit including all result items, and a result item option specifying unit for specifying one or more options among result items included in the result part of the output rule, or a result part of the output rule results the results item number designating section for designating the number of items only including,
The rule output support device outputs a rule that satisfies the designated output unit.
請求項1に記載のルール管理支援装置であって、
前記ルール出力条件受付部は、さらに、前記出力するルールである出力ルールについての制約条件を示す出力ルール制約条件のオプションとして、前記出力ルールに前記条件部に含まれる要素値の否定を許可するか否かを示すオプション、および前記出力ルール間での重複を許可するか否かを示すオプションのうち1以上のオプションを含み、前記出力制約条件オプションを指定するための出力制約条件オプション指定部を備え、
前記ルール出力部は、前記出力ルール制約条件を満たすルールを出力することを特徴とするルール管理支援装置。
The rule management support device according to claim 1,
Whether the rule output condition receiving unit further permits the output rule to negate element values included in the condition unit as an option of an output rule constraint condition indicating a constraint condition for the output rule that is the rule to be output An output constraint condition option specifying unit for specifying the output constraint condition option, including one or more options among options indicating whether or not duplication between the output rules is permitted ,
The rule output unit outputs a rule that satisfies the output rule constraint condition.
請求項1に記載のルール管理支援装置であって、
前記入力ルールを当該入力ルール毎にその条件部の要素値と結果部の要素値とを配列してなる決定表に変換する決定表変換部と、
前記決定表を編集する決定表編集部と、
を備え
前記決定表編集部は、決定表編集内容と等価な命題形式の決定表修正ルールを生成し、
前記ルール出力部は、前記決定表修正ルールと前記入力ルールとに基づきルールを出力することを特徴とするルール管理支援装置。
The rule management support device according to claim 1,
A decision table conversion unit that converts the input rule into a decision table in which element values of the condition part and element values of the result part are arranged for each input rule;
A decision table editor for editing the decision table;
The decision table editor generates a decision table correction rule in a proposition format equivalent to the decision table edit content,
The rule output support device, wherein the rule output unit outputs a rule based on the decision table correction rule and the input rule.
ソフトウェア仕様の開発におけるルールの管理を支援するための方法であって、プロセッサとメモリとを備えるコンピュータが、
前記ルールが成立するための条件を格納する条件部と前記条件が成立した場合の結果を格納する結果部とを含む1以上の入力ルールを受け付け、出力するルールが成立するための条件であるルール出力条件を受け付け、
前記入力ルール毎または全部に対して、当該入力ルールをそのまま出力することを指示するための修正不可オプション、当該入力ルールの修正を許可することを指示するための修正可オプション、および当該入力ルールの形式を考慮しない未活用オプションのうち1以上のオプションを受け付け、
前記修正不可オプションが指定されていると判定した場合、前記入力ルールをそのまま出力し、
1の前記修正可オプションが指定されていると判定した場合、前記入力ルール、及び、修正可オプションが指定されている前記入力ルールに対して修正を加えた入力ルールの間の類似度を、前記修正可オプションが指定された前記入力ルールの修正可否の判定条件である類似度判定条件に基づいて判定し、前記類似度が許容範囲内であって修正可能と判定された場合に前記入力ルールに修正を加えたルールを出力し、
前記未活用オプションが指定されていると判定した場合、当該未活用オプションが指定されている前記入力ルールの一部または全部と等価となるルールを出力する
ことを特徴とするルール管理支援方法。
A method for supporting management of rules in software specification development, comprising: a computer comprising a processor and a memory;
A rule that is a condition for establishing a rule for accepting and outputting one or more input rules including a condition part for storing a condition for satisfying the rule and a result part for storing a result when the condition is satisfied Accept output conditions,
For each or all of the input rules, a non-modifiable option for instructing to output the input rule as it is, a modifiable option for instructing to permit modification of the input rule, and the input rule Accept one or more of the unused options that do not consider the format,
If it is determined that the uncorrectable option is specified, the input rule is output as it is,
If it is determined that one of the modifiable options is specified, the similarity between the input rule and the input rule that is modified with respect to the input rule for which the modifiable option is specified, A determination is made based on a similarity determination condition that is a determination condition of whether or not the input rule for which the correction option can be specified is specified, and the input rule is determined when the similarity is within an allowable range and is determined to be correctable. Output the modified rule,
A rule management support method comprising: outputting a rule that is equivalent to a part or all of the input rule for which the unused option is specified when it is determined that the unused option is specified.
JP2014067740A 2014-03-28 2014-03-28 Rule management support device and rule management support method Expired - Fee Related JP6247976B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014067740A JP6247976B2 (en) 2014-03-28 2014-03-28 Rule management support device and rule management support method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014067740A JP6247976B2 (en) 2014-03-28 2014-03-28 Rule management support device and rule management support method

Publications (2)

Publication Number Publication Date
JP2015191418A JP2015191418A (en) 2015-11-02
JP6247976B2 true JP6247976B2 (en) 2017-12-13

Family

ID=54425857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014067740A Expired - Fee Related JP6247976B2 (en) 2014-03-28 2014-03-28 Rule management support device and rule management support method

Country Status (1)

Country Link
JP (1) JP6247976B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017085824A1 (en) * 2015-11-19 2017-05-26 株式会社日立製作所 Rule management assistance device and rule management assistance method
JP6904914B2 (en) * 2018-02-02 2021-07-21 株式会社日立製作所 Decision table generator and decision table generation method
WO2020184597A1 (en) * 2019-03-14 2020-09-17 日本電気株式会社 Rule integration device, rule integration method, and storage medium storing program
JP7257344B2 (en) 2020-01-14 2023-04-13 株式会社日立製作所 Production planning system and production planning method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005654A (en) * 1999-06-24 2001-01-12 Nec Corp Business rule management device
JP5970292B2 (en) * 2012-08-21 2016-08-17 株式会社日立製作所 Software specification development support method and software specification development support device

Also Published As

Publication number Publication date
JP2015191418A (en) 2015-11-02

Similar Documents

Publication Publication Date Title
US6915306B1 (en) Automatic generation of data models and accompanying user interfaces
JP5367947B2 (en) Method and system for terminology database expansion
US20080312992A1 (en) Automatic business process creation method using past business process resources and existing business process
US20080294485A1 (en) System, method and program for supporting creating a business process
US20080040655A1 (en) Table data processing method and apparatus
US20060218160A1 (en) Change control management of XML documents
JP6247976B2 (en) Rule management support device and rule management support method
JP5482667B2 (en) Policy management apparatus, policy management system, method and program used therefor
EP1927059A1 (en) Apparatus, method, and computer program product for creating a hierarchical dictionary
JP2017041171A (en) Test scenario generation support device and test scenario generation support method
JP2008052312A (en) Operation specification extraction support system
JPWO2016129073A1 (en) Rule management support device and rule management support method
JP6257254B2 (en) Design support apparatus, design support method, and program
US20080235066A1 (en) Task management device, task management method, and task management program
JP2009193470A (en) Electronic approval workflow system
JP6336922B2 (en) Business impact location extraction method and business impact location extraction device based on business variations
JP2010039751A (en) Software development system
JP5998835B2 (en) Information processing apparatus and program
WO2020240820A1 (en) File management device, file management method, and program
CN111932412A (en) Contract drafting and revising method, device, storage medium and equipment
JP4663526B2 (en) Form creation support device, form creation support method, and form creation support program
JP5965785B2 (en) Use case scenario creation support device, use case scenario creation support method, and use case scenario creation support program
JP3345522B2 (en) Program development support device using data item parts
JP6985322B2 (en) Document creation support device, document creation support method and program
US20080091733A1 (en) Reusable data query language statements

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170719

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170905

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171024

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171120

R150 Certificate of patent or registration of utility model

Ref document number: 6247976

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees