(57)【要約】【課題】  フィルタ定義を適用する制約条件を満たしつつ、フィルタリングに要する負荷を軽減する順序制御システム等を提供する。【解決手段】  順序制御システム１は、複数のノードの順位に関する情報を記憶する記憶部４と、メッセージを絞り込むフィルタを適用する順序における制約に関し、先に適用する前記フィルタを子ノードに関連付け、後に適用する前記フィルタを親ノードに関連付けることにより、前記各ノードを木構造へ変換する変換部２と、前記木構造を深さ優先探索する際に、前記フィルタの適用順序を算出する順序部３とを備える。【選択図】      図１
2014106860.tif 000002
【特許請求の範囲】
【請求項１】
複数のノードの順位に関する情報を記憶する記憶部と、
メッセージを絞り込むフィルタを適用する順序における制約に関して、先に適用する前記フィルタを子ノードに関連付け、後に適用する前記フィルタを親ノードに関連付けることにより、前記各ノードを木構造へ変換する変換部と、
前記木構造を深さ優先探索する際に、前記フィルタの適用順序を算出する順序部とを備え、
前記木構造における第１ノードから第２ノードへの検索に際して、
（ａ）前記第１ノードは子ノードであり、前記第２ノードは親ノードであり、前記第１ノードが前記フィルタと関連付けされている場合に、前記順序部は、
（ａ−１）前記第１ノードが子ノードを持つ場合には、前記記憶部において、前記第１ノードの前記子ノードより後順にある１つ以上の第３ノードを前記順位に従って探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入する一方で、
（ａ−２）前記木構造において前記第１ノードが子ノードを持たない場合に、前記記憶部における前記第３ノードを順に探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入し、
前記順序部は、（ｂ）前記木構造において第１ノードが親ノードであり前記第２ノードは子ノードである場合と、前記第１ノードが前記フィルタ定義と関連付けされていない場合とには、前記第１ノードを挿入する処理を行わない
という処理を、前記木構造を表す全てのノードについて行うことにより、前記各ノードと関連付けされた前記フィルタの適用順序を算出する
順序制御システム。
【請求項２】
前記フィルタが適用可能な頻度を算出する頻度部を更に備え、
前記順序部は、前記ノードに関連付けされる値として前記頻度を参照する
請求項１に記載の順序制御システム。
【請求項３】
前記フィルタとして新たなフィルタを追加する追加部を更に備え、
前記変換部は、前記新たなフィルタと関連付けされた情報に応じて、前記新たなフィルタと新たなノードとを関連付けし、前記制約に応じて該新たなノードを前記木構造に追加する
請求項１または請求項２に記載の順序制御システム。
【請求項４】
請求項１乃至請求項３のいずれか１項に記載の前記順序制御システムと、
前記適用順序に応じて、前記フィルタを適用する実施部とを
備えるメッセージ管理システム。
【請求項５】
複数のノードの順位に関する情報を記憶する記憶部を有するシステムにおいて、
メッセージを絞り込むフィルタを適用する順序における制約に関し、先に適用する前記フィルタを子ノードに関連付け、後に適用する前記フィルタを親ノードに関連付けることにより、前記各ノードを木構造へ変換し、
前記木構造を深さ優先探索する処理において、
前記木構造における第１ノードから第２ノードへの検索に際して、
（ａ）前記第１ノードは子ノードであり、前記第２ノードは親ノードであり、前記第１ノードが前記フィルタと関連付けされている場合において、
（ａ−１）前記第１ノードが子ノードを持つ場合には、前記記憶部において、前記第１ノードの前記子ノードより後順にある１つ以上の第３ノードを前記順位に従って探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入する一方で、
（ａ−２）前記木構造において前記第１ノードが子ノードを持たない場合に、前記記憶部における前記第３ノードを順に探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入し、
（ｂ）前記木構造において第１ノードが親ノードであり前記第２ノードは子ノードである場合と、前記第１ノードが前記フィルタ定義と関連付けされていない場合とには、前記第１ノードを挿入する処理を行わない、
という処理を、前記木構造を表す全てのノードについて行うことにより、前記各ノードと関連付けされた前記フィルタの適用順序を算出する順序制御方法。
【請求項６】
前記フィルタが適用可能な頻度を算出することにより、前記ノードに関連付けされる値として前記頻度を参照する
請求項５に記載の順序制御方法。
【請求項７】
前記フィルタとして新たなフィルタを追加するのに応じて、
前記新たなフィルタと新たなノードとを関連付けし、前記制約に応じて該新たなノードを前記木構造に追加する
請求項５または請求項６に記載の順序制御方法。
【請求項８】
複数のノードの順位に関する情報を記憶する記憶部を有するシステムにおいて、
メッセージを絞り込むフィルタを適用する順序における制約に関し、先に適用する前記フィルタを子ノードに関連付け、後に適用する前記フィルタを親ノードに関連付けることにより、前記各ノードを木構造へ変換する変換機能と、
前記木構造を深さ優先探索する処理において、
前記木構造における第１ノードから第２ノードへの検索に際して、
（ａ）前記第１ノードは子ノードであり、前記第２ノードは親ノードであり、前記第１ノードが前記フィルタと関連付けされている場合において
（ａ−１）前記第１ノードが子ノードを持つ場合には、前記記憶部において、前記第１ノードの前記子ノードより後順にある１つ以上の第３ノードを前記順位に従って探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入する一方で、
（ａ−２）前記木構造において前記第１ノードが子ノードを持たない場合に、前記記憶部における前記第３ノードを順に探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入し、
（ｂ）前記木構造において第１ノードが親ノードであり前記第２ノードは子ノードである場合と、前記第１ノードが前記フィルタ定義と関連付けされていない場合とには、前記第１ノードを挿入する処理を行わない、
という処理を、前記木構造を表す全てのノードについて行うことにより、前記各ノードと関連付けされた前記フィルタの適用順序を算出する順序機能とを
コンピュータに実現させる順序制御プログラム。
【請求項９】
前記フィルタが適用可能な頻度を算出する頻度機能を更に備え、
前記順序機能は、前記ノードに関連付けされる値として前記頻度を参照する
請求項８に記載の順序制御プログラム。
【請求項１０】
前記フィルタとして新たなフィルタを追加する追加機能を更に備え、
前記変換機能は、前記新たなフィルタと関連付けされた情報に応じて、前記新たなフィルタと新たなノードとを関連付けし、前記制約に応じて該新たなノードを前記木構造に追加する
請求項８または請求項９に記載の順序制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、イベントに関する状況を表すメッセージをフィルタリングする順序を制御するシステム等に関する。
【背景技術】
【０００２】
コンピュータシステムにおいて発生するイベントに関する状況を表すメッセージ（ｍｅｓｓａｇｅ）の量、あるいは、メッセージの種類は、管理する対象であるコンピュータシステム（以下、「管理対象システム」と表す）が大規模になるにつれ、増大する。管理サーバは、膨大なメッセージをフィルタリング（ｆｉｌｔｅｒｉｎｇ）することにより、管理対象システムを監視する。管理者は、フィルタリングされたメッセージを参照することにより、コンピュータシステムを業務、あるいは、目的別に分類して一元的に管理する。
【０００３】
管理者は、管理サーバが有する処理能力に応じて、管理サーバを構築する。管理者は、管理サーバを構築するのに際して、管理対象システムに応じてメッセージのフォーマットが異なるため、各フォーマットに適合した該メッセージを絞り込むフィルタを定義（以降、本願において「フィルタ定義」と表す）する。すなわち、フィルタ定義は、メッセージに応じた固有の処理を表す。管理サーバは、フィルタ定義を、予め設定された順序に従い、メッセージに対して適用する。管理サーバにおける処理量は、フィルタ定義を適用する順序に応じて変化する。
【０００４】
それゆえ、管理者がフィルタ定義の適用順序を調整することにより、管理サーバにおける処理負荷を低減することができる。管理者は、すべてのフィルタ定義が有効になるように、適用順序を調整する。
【０００５】
特許文献１、あるいは、特許文献２における装置は、メッセージが適合するフィルタ定義における実績値（メッセージと適合する回数、計算コスト等）を評価する。該装置は、その実績値に応じて、フィルタ定義の適用順序を更新する。
【０００６】
しかしながら、該装置は、フィルタ定義に関する制約条件を参照することなく、適用順序を変更する。そのため、該装置は、制約条件の存在するフィルタ定義に対して、制約条件を無視した適用順序を算出する。
【０００７】
特許文献３、あるいは、特許文献４が開示する装置は、管理対象システムにおいて発生するメッセージに合致するフィルタ定義が存在しない状況において、一定の条件を満たすメッセージから自動的にフィルタ定義を生成する。
【０００８】
管理者は、自動的に生成されるフィルタ定義、あるいは、管理者が手動で作成するフィルタ定義を、既存のフィルタ定義に追加する場合、フィルタ定義の制約条件に従って、適用順序を決定する。
【０００９】
適用順序がフィルタ定義の制約条件に矛盾する場合、追加するフィルタ定義、あるいは、既存のフィルタ定義が無効になる可能性がある。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特許４５０６５２０号公報
【特許文献２】特許４４６４６５５号公報
【特許文献３】特開２００９−０６４０９８号公報
【特許文献４】特開２０１２−００３５６０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
管理者は、経験に基づいて、フィルタ定義の適用順序を調整する。適切な適用順序は、フィルタ定義における固有の処理や管理対象システムの状態に依存する。管理者は、必ずしも、管理対象システム全体の状態を把握していないため、適切な適用順序を定義できるとは限らない。
【００１２】
また、管理者は、新規にフィルタ定義を追加する際にも、フィルタ定義の適用順序を調整する。追加するフィルタ定義は、管理者が適用順序を適切に設定することにより、有効に機能する。管理者は、同様に、必ずしも全てのフィルタ定義を認識しているとは限らない状況において、フィルタ定義の適用順序を調整する。その結果、管理者は、時として誤った適用順序を設定する。
【００１３】
そこで、本発明の主たる目的は、フィルタ定義を適用する制約条件を満たしつつ、フィルタリングに要する負荷を軽減する順序制御システム等を提供することである。
【課題を解決するための手段】
【００１４】
前述の目的を達成するために、本発明に係る順序制御システムは、以下の構成を備えることを特徴とする。
【００１５】
即ち、本発明に係る順序制御システムは、
複数のノードの順位に関する情報を記憶する記憶部と、
メッセージを絞り込むフィルタを適用する順序における制約に関して、先に適用する前記フィルタを子ノードに関連付け、後に適用する前記フィルタを親ノードに関連付けることにより、前記各ノードを木構造へ変換する変換部と、
前記木構造を深さ優先探索する際に、前記フィルタの適用順序を算出する順序部とを備え、
前記木構造における第１ノードから第２ノードへの検索に際して、
（ａ）前記第１ノードは子ノードであり、前記第２ノードは親ノードであり、前記第１ノードが前記フィルタと関連付けされている場合に、前記順序部は、
（ａ−１）前記第１ノードが子ノードを持つ場合には、前記記憶部において、前記第１ノードの前記子ノードより後順にある１つ以上の第３ノードを前記順位に従って探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入する一方で、
（ａ−２）前記木構造において前記第１ノードが子ノードを持たない場合に、前記記憶部における前記第３ノードを順に探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入し、
前記順序部は、（ｂ）前記木構造において第１ノードが親ノードであり前記第２ノードは子ノードである場合と、前記第１ノードが前記フィルタ定義と関連付けされていない場合とには、前記第１ノードを挿入する処理を行わない、
という処理を、前記木構造を表す全てのノードについて行うことにより、前記各ノードと関連付けされた前記フィルタの適用順序を算出することを特徴とする。
【００１６】
また、本発明の他の見地として、本発明に係る順序制御方法は、
複数のノードの順位に関する情報を記憶する記憶部を有するシステムにおいて、
メッセージを絞り込むフィルタを適用する順序における制約に関し、先に適用する前記フィルタを子ノードに関連付け、後に適用する前記フィルタを親ノードに関連付けることにより、前記各ノードを木構造へ変換し、
前記木構造を深さ優先探索する処理において、
前記木構造における第１ノードから第２ノードへの検索に際して、
（ａ）前記第１ノードは子ノードであり、前記第２ノードは親ノードであり、前記第１ノードが前記フィルタと関連付けされている場合において、
（ａ−１）前記第１ノードが子ノードを持つ場合には、前記記憶部において、前記第１ノードの前記子ノードより後順にある１つ以上の第３ノードを前記順位に従って探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入する一方で、
（ａ−２）前記木構造において前記第１ノードが子ノードを持たない場合に、前記記憶部における前記第３ノードを順に探索し、前記第３ノードに関連付けされる値が前記第１ノードに関連付けされる値よりも小さな特定ノードの前に前記第１ノードを挿入し、前記特定ノードがない場合には前記第１ノードを前記第３ノードの後に挿入し、
（ｂ）前記木構造において第１ノードが親ノードであり前記第２ノードは子ノードである場合と、前記第１ノードが前記フィルタ定義と関連付けされていない場合とには、前記第１ノードを挿入する処理を行わない、
という処理を、前記木構造を表す全てのノードについて行うことにより、前記各ノードと関連付けされた前記フィルタの適用順序を算出することを特徴とする。
【００１７】
さらに、同目的は、係る順序制御プログラム、および、そのプログラムを記録するコンピュータ読み取り可能な記録媒体によっても実現される。
【発明の効果】
【００１８】
本発明に係る順序制御システム等によれば、フィルタ定義を適用する制約条件を満たしつつ、フィルタリングに要する負荷を軽減することできる。
【図面の簡単な説明】
【００１９】
【図１】本発明の第１の実施形態に係る順序制御システムの構成を示すブロック図である。
【図２】本発明の第１の実施形態に係る順序制御システムにおける変換部の処理の流れを示すフローチャートである。
【図３】本発明の第１の実施形態に係る順序制御システムにおける順序部の処理の流れを示すフローチャートである。
【図４】本発明の第１の実施形態に係るフィルタ定義を適用する順序に関する制約条件の一例を概念的に表す図である。
【図５】本発明の第１の実施形態に係る木構造の一例を概念的に表す図である。
【図６】本発明の第１の実施形態に係る木構造の一例を概念的に表す図である。
【図７】本発明の第１の実施形態に係る木構造を深さ優先探索する一例を概念的に表す図である。
【図８】本発明の第１の実施形態に係るフィルタ定義と関連付けされたメッセージの一例を表す図である。
【図９】本発明の第１の実施形態に係るパトリシア木の一例を表す図である。
【図１０】本発明の第１の実施形態に係るパトリシア木のノードにフィルタ定義を関連付けした木構造の一例を概念的に表す図である。
【図１１】本発明の第１の実施形態に係るメッセージの出現頻度の一例を表す図である。
【図１２】本発明の第２の実施形態に係る順序制御システムの構成を示すブロック図である。
【図１３】本発明の第２の実施形態に係る順序制御システムにおける処理の流れを示すフローチャートである。
【図１４】本発明の第３の実施形態に係る順序制御システムの構成を示すブロック図である。
【図１５】本発明の第３の実施形態に係る順序制御システムにおける処理の流れを示すフローチャートである。
【図１６】本発明の第３の実施形態に係る新規フィルタ定義の一例を表す図である。
【図１７】本発明の第３の実施形態に係る更新後の木構造の一例を概念的に表す図である。
【図１８】本発明の第３の実施形態に係る更新により、フィルタ定義の適用順序の変化を概念的に表す図である。
【図１９】本発明の第４の実施形態に係るメッセージ管理システムの構成を示すブロック図である。
【図２０】本発明の各実施形態に係る制御システムを実現可能な計算処理装置のハードウェア構成を、概略的に示すブロック図である。
【発明を実施するための形態】
【００２０】
次に、発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００２１】
＜第１の実施形態＞
本発明の第１の実施形態に係る順序制御システム１が有する構成と、順序制御システム１が行う処理とについて、図１乃至図３を参照しながら詳細に説明する。図１は、本発明の第１の実施形態に係る順序制御システム１の構成を示すブロック図である。図２は、本発明の第１の実施形態に係る順序制御システム１における変換部２の処理の流れを示すフローチャートである。図３は、本発明の第１の実施形態に係る順序制御システム１における順序部３の処理の流れを示すフローチャートである。以下の説明において、木構造（グラフ）におけるノード（節点）を、単に「ノード」と表す。
【００２２】
図１を参照すると、第１の実施形態に係る順序制御システム１は、変換部２と、順序部３と、記憶部４とを有する。
【００２３】
変換部２は、フィルタ定義を適用する適用順序に関する制約条件に関する情報を参照する。次に、変換部２は、先に適用するフィルタ定義を親ノード（ｐａｒｅｎｔ＿ｎｏｄｅ）、後に適用するフィルタ定義を子ノード（ｃｈｉｌｄ＿ｎｏｄｅ）として関連付けする。変換部２は、必ずしも、１つのノードに１つのフィルタ定義を関連付けする必要はなく、１つのノードにフィルタ定義を関連付けしなくてもよい。変換部２は、すべての制約条件を処理することにより、木構造を作成する（ステップＳ１）。
【００２４】
木構造（ｔｒｅｅ＿ｓｔｒｕｃｔｕｒｅ）は、ノード（ｎｏｄｅ、節点、頂点）とノード間を結ぶエッジ（ｅｄｇｅ、枝、辺）とから構成される。木構造において、各ノードは、０個以上の子ノードと関連付けされている。子ノードを持つノードは、子ノードに対して親ノードと呼ばれる。リーフノード（ｌｅａｆ＿ｎｏｄｅ、葉ノード）は、子ノードを持たないノードである。ルートノード（ｒｏｏｔ＿ｎｏｄｅ、根ノード）は、親ノードを持たないノードである。木構造を表現するデータ構造として、ポインタを使って表現する方法等が既に知られているため、ここでは、データ構造に関する説明を省略する。
【００２５】
図４乃至図６を参照しながら、上述した処理について説明する。図４は、本発明の第１の実施形態に係るフィルタ定義を適用する適用順序に関する制約条件の一例を概念的に表す図である。図５、及び、図６は、本発明の第１の実施形態に係る木構造の一例を概念的に表す図である。
【００２６】
図４に例示する制約条件は、フィルタ定義の名称を表す「フィルタ名」と、そのフィルタ定義を適用する適用順序に関する制約条件（図４における「適用順序制約」）と関連付けの有無を表す。例えば、フィルタ定義「Ｆ＿Ｉ＿０１」が制約条件と関連付けされていないため、順序制御システム１は、フィルタ定義「Ｆ＿Ｉ＿０１」を、任意の順位にすることができる。フィルタ定義「Ｆ＿Ｗ＿０３」が、フィルタ定義「Ｆ＿Ｗ＿０１」とフィルタ定義「Ｆ＿Ｗ＿０２」との下位という制約条件と関連付けされているため、順序制御システム１は、フィルタ定義「Ｆ＿Ｗ＿０３」を、フィルタ定義「Ｆ＿Ｗ＿０１」とフィルタ定義「Ｆ＿Ｗ＿０２」との後の順位にする。
【００２７】
変換部２は、例えば、図４のような制約条件から、図５、あるいは、図６のような木構造を作成する。変換部２は、フィルタ定義「Ｆ＿Ｗ＿０３」が、フィルタ定義「Ｆ＿Ｗ＿０１」とフィルタ定義「Ｆ＿Ｗ＿０２」との下位（すなわち、「Ｆ＿Ｗ＿０３」は、「Ｆ＿Ｗ＿０１」、及び、「Ｆ＿Ｗ＿０２」の後順）であるという制約条件と関連付けされているため、「Ｆ＿Ｗ＿０３」と親ノードとを関連付け、「Ｆ＿Ｗ＿０１」と「Ｆ＿Ｗ＿０２」とをその親ノードの子ノードと関連付けする。変換部２は、同様に、フィルタ定義「Ｆ＿Ｗ＿０５」等をノードに関連付けすることにより、図５が表す木構造を作成する。
【００２８】
変換部２は、図６に示すような木構造を作成しても良い。変換部２は、親ノードを特定のフィルタ定義と関連付けすることなく、「Ｆ＿Ｉ＿０１」と、「Ｆ＿Ｉ＿０２」と、「Ｆ＿Ｉ＿０３」とをその親ノードに対する子ノードと関連付けする。変換部２は、上述したように処理する場合においても、フィルタ定義における制約条件を表現することができる。変換部２が作成する木構造は、制約条件と一貫性を有していれば良い。即ち、変換部２が作成する木構造は、上述した例には限定されない。
【００２９】
次に、順序部３は、変換部２が作成する木構造を受け取り、図７に示すように、該木構造を深さ優先探索（ｄｅｐｔｈ＿ｆｉｒｓｔ＿ｓｅａｒｃｈ）する。図７は、本発明の第１の実施形態に係る木構造を深さ優先探索する一例を概念的に表す図である。
【００３０】
例えば、順序部３は、図５が表す木構造に、図７に示すような深さ優先探索する場合において、「ルートノード」、「Ｆ＿Ｉ＿０１」、「ルートノード」、「Ｆ＿Ｉ＿０２」、「ルートノード」、「Ｆ＿Ｉ＿０３」、「ルートノード」、「Ｆ＿Ｗ＿０５」、「Ｆ＿Ｗ＿０３」、「Ｆ＿Ｗ＿０１」、「Ｆ＿Ｗ＿０３」、「Ｆ＿Ｗ＿０２」、「Ｆ＿Ｗ＿０３」、「Ｆ＿Ｗ＿０５」、「Ｆ＿Ｗ＿０４」、「Ｆ＿Ｗ＿０５」、「ルートノード」、「Ｆ＿Ｅ＿０２」、「Ｆ＿Ｅ＿０１」、「Ｆ＿Ｅ＿０２」、「ルートノード」という順に探索する。
【００３１】
順序部３は、深さ優先探索において帰りがけ順（ｐｏｓｔ−ｏｒｄｅｒ＿ｔｒａｖｅｒｓａｌ）に各ノードを探索する過程において、図３に示す処理を行う。即ち、順序部３は、第１ノードから第２ノードへの探索（ステップＳ２）において、第１ノードが子ノード、第２ノードが親ノードと関連付けされ（ステップＳ３にてＹＥＳと判断）、第１ノードがフィルタ定義と関連付けされており（ステップＳ４にてＹＥＳと判断）、第１ノードが子ノードを有すると判断する場合（ステップＳ５にてＹＥＳと判断）、記憶部４において、第１ノードの子ノードより後順にある複数の第３ノードを順に探索し、第３ノードに関連付けされる値がフィルタ定義と関連付けされる値よりも小さい値と関連付けされた第４ノードの前に第１ノードを挿入する（ステップＳ６）。順序部３は、第４ノードがないと判断する場合、第３ノードの後に第１ノードを追加する。
【００３２】
また、順序部３は、第１ノードから第２ノードへの探索（ステップＳ２）において、第１ノードが子ノード、第２ノードが親ノードと関連付けされ（ステップＳ３にてＹＥＳと判断）、第１ノードがフィルタ定義と関連付けされており（ステップＳ４にてＹＥＳと判断）、第１ノードが子ノードを有さないと判断する場合（ステップＳ５にてＮＯと判断）、記憶部４において、第３ノード順に探索し、第３ノードに関連付けされる値が、フィルタ定義と関連付けされる値よりも小さい値と関連付けされた第４ノードの前に第１ノードを挿入する（ステップＳ７）。順序部３は、第４ノードがないと判断する場合、第３ノードの後に第１ノードを追加する。
【００３３】
順序部３は、ステップＳ３にてＮＯと判断する場合、あるいは、ステップＳ４にてＮＯと判断する場合においては、上述した処理を行わない。
【００３４】
ノードに関連付けされる値の例として、メッセージが出現する頻度（出現頻度）、単位時間当たりの出現頻度、あるいは、フィルタ定義を処理する計算コスト等を挙げることができる。ノードに関連付けされる値は、上述した例には限定されない。
【００３５】
順序部３は、上述したような処理を行いつつ、木構造を深さ優先探索することにより、ノードの順位に応じて、該ノードと関連付けされたフィルタ定義の適用順序を算出する。
【００３６】
上述した説明において、木構造におけるノードは、フィルタ定義と関連付けされるとしたが、例えば、変換部２は、パトリシア木（基数木、Ｒａｄｉｘ＿ｔｒｅｅ、Ｐａｔｒｉｃｉａ＿ｔｒｅｅ）等の木構造を作成することもできる。パトリシア木は、文字列集合を記録する、あるいは、文字列をキーとして値を格納する連想配列を実装する手段の一例である。変換部２は、図９に例示するフィルタ定義と関連付けされた文字列により文字列集合を定義する場合、図１０に示すパトリシア木を生成する。フィルタ定義と関連付けされた文字列において、共通の接頭辞と関連付けされたノードは、その接頭辞と関連付けされたノードを介してルートと連結する。
【００３７】
図８は、本発明の第１の実施形態に係るフィルタ定義と関連付けされたメッセージの一例を表す図である。図９は、本発明の第１の実施形態に係るパトリシア木の一例を表す図である。例えば、フィルタ定義「Ｆ＿Ｉ＿０１」は、メッセージ「ＩＮＦＯ：Ａ」と関連付けされている。
【００３８】
メッセージが共通の接頭辞を持つようにフィルタを定義する場合、フィルタ定義には、適用順序に制約条件が存在する。変換部２は、例えば、図９に示すパトリシア木のノードに対して、メッセージと関連付けされたフィルタ定義を関連付けする。それにより、変換部２は、図１０に示す木構造を作成する。図１０は、本発明の第１の実施形態に係るパトリシア木のノードにフィルタ定義を関連付けした木構造の一例を概念的に表す図である。
【００３９】
ノードに関連付けされた値が、メッセージの出現頻度である場合について、図１１の例を参照しながら、本発明の第１の実施形態に係る順序制御システム１の効果について説明する。図１１は、本発明の第１の実施形態に係るメッセージの出現頻度の一例を表す図である。図１１を参照すると、例えば、「Ｆ＿Ｉ＿０１」は、０と関連付けされているため、０回出現する。同様に、「Ｆ＿Ｉ＿０２」は、１００と関連付けされているため、１００回出現する。
【００４０】
本発明の第１の実施形態に係る順序制御システム１は、順序部３が行う処理の結果、出現頻度がより大きなフィルタ定義、即ち、合致するメッセージがより多いフィルタ定義を適用順序の上位に配置する。すなわち、順序制御システム１は、合致するメッセージがより多いフィルタを前順に配置する。その結果、適用順序が上位のフィルタ定義におけるメッセージと共通するメッセージが発生する場合に、より少ない回数で比較処理を行うことができる。
【００４１】
フィルタ定義の使用回数は、フィルタ定義に合致するメッセージ数と、該フィルタ定義よりも適用順序が下位であるフィルタ定義の使用回数との合計値である。
【００４２】
以下の計算式において、フィルタ定義Ａに合致するメッセージ数（図１１における「カウント数」）は、「フィルタ定義Ａ」と表す。即ち、「Ｆ＿Ｅ＿０２」は、フィルタ定義「Ｆ＿Ｅ＿０２」のカウント数を表す。図１１の例において、フィルタ定義の使用回数は、例えば、以下のように算出される。
【００４３】
・（Ｆ＿Ｅ＿０２の使用回数）＝「Ｆ＿Ｅ＿０２」＝３０、
・（Ｆ＿Ｅ＿０１の使用回数）＝「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＝１０＋３０＝４０、
・（Ｆ＿Ｗ＿０５の使用回数）＝「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＝９０＋１０＋３０＝１３０、
・（Ｆ＿Ｗ＿０４の使用回数）＝「Ｆ＿Ｗ＿０４」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＝５００＋９０＋１０＋３０＝６３０、
・（Ｆ＿Ｗ＿０３の使用回数）＝「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０４」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＝２００＋５００＋９０＋１０＋３０＝８３０、
・（Ｆ＿Ｗ＿０２の使用回数）＝「Ｆ＿Ｗ＿０２」＋「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０４」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＝１５０＋２００＋５００＋９０＋１０＋３０＝９８０、
・（Ｆ＿Ｗ＿０１の使用回数）＝「Ｆ＿Ｗ＿０１」＋「Ｆ＿Ｗ＿０２」＋「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０４」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＝８０＋１５０＋２００＋５００＋９０＋１０＋３０＝１０６０、
・（Ｆ＿Ｉ＿０３の使用回数）＝「Ｆ＿Ｉ＿０３」＋「Ｆ＿Ｗ＿０１」＋「Ｆ＿Ｗ＿０２」＋「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０４」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＝３０＋８０＋１５０＋２００＋５００＋９０＋１０＋３０＝１０９０、
・（Ｆ＿Ｉ＿０２の使用回数）＝「Ｆ＿Ｉ＿０２」＋「Ｆ＿Ｉ＿０３」＋「Ｆ＿Ｗ＿０１」＋「Ｆ＿Ｗ＿０２」＋「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０４」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＝１００＋３０＋８０＋１５０＋２００＋５００＋９０＋１０＋３０＝１１９０、
・（Ｆ＿Ｉ＿０１の使用回数）＝「Ｆ＿Ｉ＿０１」＋「Ｆ＿Ｉ＿０２」＋「Ｆ＿Ｉ＿０３」＋「Ｆ＿Ｗ＿０１」＋「Ｆ＿Ｗ＿０２」＋「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０４」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＝０＋１００＋３０＋８０＋１５０＋２００＋５００＋９０＋１０＋３０＝１１９０、
・（フィルタ定義の使用回数）＝「Ｆ＿Ｉ＿０１の使用回数」＋「Ｆ＿Ｉ＿０２の使用回数」＋「Ｆ＿Ｉ＿０３の使用回数」＋「Ｆ＿Ｗ＿０１の使用回数」＋「Ｆ＿Ｗ＿０２の使用回数」＋「Ｆ＿Ｗ＿０３の使用回数」＋「Ｆ＿Ｗ＿０４の使用回数」＋「Ｆ＿Ｗ＿０５の使用回数」＋「Ｆ＿Ｅ＿０１の使用回数」＋「Ｆ＿Ｅ＿０２の使用回数」＝１１９０＋１１９０＋１０９０＋１０６０＋９８０＋８３０＋６３０＋１３０＋４０＋３０＝７１７０。
【００４４】
同様に、順序更新後（図１８左表）に、図１１の時と同じメッセージが到達した場合におけるフィルタ定義の使用回数は、例えば、以下のように算出される。
【００４５】
・（Ｆ＿Ｉ＿０１の使用回数）＝「Ｆ＿Ｉ＿０１」＝０、
・（Ｆ＿Ｅ＿０２の使用回数）＝「Ｆ＿Ｅ＿０２」＋「Ｆ＿Ｉ＿０１」＝３０＋０＝３０、
・（Ｆ＿Ｅ＿０１の使用回数）＝「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＋「Ｆ＿Ｉ＿０１」＝１０＋３０＋０＝４０、
・（Ｆ＿Ｉ＿０３の使用回数）＝「Ｆ＿Ｅ＿０３」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＋「Ｆ＿Ｉ＿０１」＝３０＋１０＋３０＋０＝７０、
・（Ｆ＿Ｗ＿０５の使用回数）＝「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０３」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＋「Ｆ＿Ｉ＿０１」＝９０＋３０＋１０＋３０＋０＝１６０、
・（Ｆ＿Ｗ＿０３の使用回数）＝「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０３」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＋「Ｆ＿Ｉ＿０１」＝２００＋９０＋３０＋１０＋３０＋０＝３６０、
・（Ｆ＿Ｗ＿０１の使用回数）＝「Ｆ＿Ｗ＿０１」＋「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０３」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＋「Ｆ＿Ｉ＿０１」＝８０＋２００＋９０＋３０＋１０＋３０＋０＝４４０、
・（Ｆ＿Ｉ＿０２の使用回数）＝「Ｆ＿Ｉ＿０２」＋「Ｆ＿Ｗ＿０１」＋「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０３」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＋「Ｆ＿Ｉ＿０１」＝１００＋８０＋２００＋９０＋３０＋１０＋３０＋０＝５４０、
・（Ｆ＿Ｗ＿０２の使用回数）＝「Ｆ＿Ｗ＿０２」＋「Ｆ＿Ｉ＿０２」＋「Ｆ＿Ｗ＿０１」＋「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０３」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＋「Ｆ＿Ｉ＿０１」＝１５０＋１００＋８０＋２００＋９０＋３０＋１０＋３０＋０＝６９０、
・（Ｆ＿Ｗ＿０４の使用回数）＝「Ｆ＿Ｗ＿０４」＋「Ｆ＿Ｗ＿０２」＋「Ｆ＿Ｉ＿０２」＋「Ｆ＿Ｗ＿０１」＋「Ｆ＿Ｗ＿０３」＋「Ｆ＿Ｗ＿０５」＋「Ｆ＿Ｅ＿０３」＋「Ｆ＿Ｅ＿０１」＋「Ｆ＿Ｅ＿０２」＋「Ｆ＿Ｉ＿０１」＝５００＋１５０＋１００＋８０＋２００＋９０＋３０＋１０＋３０＋０＝１１９０、
・（フィルタ定義の使用回数）＝「Ｆ＿Ｗ＿０４の使用回数」＋「Ｆ＿Ｗ＿０２の使用回数」＋「Ｆ＿Ｉ＿０２の使用回数」＋「Ｆ＿Ｗ＿０１の使用回数」＋「Ｆ＿Ｗ＿０３の使用回数」＋「Ｆ＿Ｗ＿０５の使用回数」＋「Ｆ＿Ｉ＿０３の使用回数」＋「Ｆ＿Ｅ＿０１の使用回数」＋「Ｆ＿Ｅ＿０２の使用回数」＋「Ｆ＿Ｉ＿０１の使用回数」＝１１９０＋６９０＋５４０＋４４０＋３６０＋１６０＋７０＋４０＋３０＋０＝３５２０。
【００４６】
即ち、フィルタ定義の使用回数は、７１７０回である。一方、本発明の第１の実施形態に係る順序制御システム１によれば、フィルタ定義の使用回数は、適用順序更新後において、３５２０回である。本実施形態によれば、適用順序が上位のフィルタ定義におけるメッセージと共通するメッセージが発生する場合に、より少ない回数で比較処理を行うことができる。
【００４７】
ノードに関連付けされた値がメッセージの出現頻度である場合、フィルタ定義の適用順序は、実際に発生するメッセージの出現頻度に基づく。そのため、本発明の第１の実施形態に係る順序制御システム１によれば、管理対象システムの振る舞いが変化した場合においても、適切な適用順序を決定することにより、管理サーバにおける負荷を低減する。
【００４８】
特許文献１、あるいは、特許文献２が開示する装置は、フィルタ定義の適用順序に関する制約条件を考慮することなく、出現頻度のみで適用順序を設定する。そのため、該装置は、順序を変更することにより管理サーバにおける負荷を低減するものの、適用順序に関する制約条件に矛盾する順序を設定する可能性がある。そのため、該装置によれば、フィルタ定義が有効に機能しなくなってしまう問題がある。
【００４９】
一方、本発明の第１の実施形態に係る順序制御システム１は、適用順序に関する制約条件に基づき、適用順序を決める。そのため、本発明の第１の実施形態に係る順序制御システム１によれば、管理サーバの負荷を低減させることに加え、フィルタ定義が有効に機能する。
【００５０】
即ち、本発明における第１の実施形態に係る順序制御システムによれば、フィルタ定義を適用する制約条件を満たしつつ、フィルタリングに要する負荷を軽減することできる。
【００５１】
＜第２の実施形態＞
次に、上述した第１の実施形態を基本とする第２の実施形態について説明する。
【００５２】
以下の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第１の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
【００５３】
図１２と図１３とを参照しながら、本発明の第２の実施形態に係る順序制御システム７が有する構成と、順序制御システム７が行う処理とについて説明する。図１２は、本発明の第２の実施形態に係る順序制御システム７の構成を示すブロック図である。図１３は、本発明の第２の実施形態に係る順序制御システム７における処理の流れを示すフローチャートである。
【００５４】
図１２を参照すると、順序制御システム７は、変換部２と、順序部５と、頻度部６と、記憶部４とを有する。
【００５５】
頻度部６は、メッセージを受信し（ステップＳ８）、受信したメッセージに合致するフィルタ定義の出現頻度を算出する（ステップＳ９）。順序部５は、頻度部６が算出する出現頻度に応じて、本発明における第１の実施形態に係る順序制御システムと同様に、フィルタ定義の順位を算出する。
【００５６】
本発明の第２の実施形態は、本発明の第１の実施形態と同様の構成を有するため、本発明の第２の実施形態は、本発明の第１の実施形態と同様の効果を享受することができる。
【００５７】
即ち、本発明における第２の実施形態に係る順序制御システムによれば、フィルタ定義を適用する制約条件を満たしつつ、フィルタリングに要する負荷を軽減することできる。
【００５８】
＜第３の実施形態＞
次に、上述した第１の実施形態を基本とする第３の実施形態について説明する。
【００５９】
以下の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第１の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
【００６０】
図１４と図１５とを参照しながら、本発明の第３の実施形態に係る順序制御システム１０が有する構成と、順序制御システム１０が行う処理とについて説明する。図１４は、本発明の第３の実施形態に係る順序制御システム１０の構成を示すブロック図である。図１５は、本発明の第３の実施形態に係る順序制御システム１０における処理の流れを示すフローチャートである。
【００６１】
図１４を参照すると、順序制御システム１０は、変換部９と、順序部３と、追加部８と、記憶部４とを有する。
【００６２】
例えば、管理者が図１６に示す新規フィルタ定義を追加する場合について、本発明の第３の実施形態に係る順序制御システム１０における処理について説明する。図１６は、本発明の第３の実施形態に係る新規フィルタ定義の一例を表す図である。フィルタ「Ｆ＿ＮＥＷ」は、「Ｗａｒｎｉｎｇ：Ｆｉｌｅ  Ａｌｒｅａｄｙ  Ｅｘｉｓｔ：」というメッセージと関連付けされている。
【００６３】
追加部８は、新規フィルタ定義を受信し（ステップＳ１０）、該新規フィルタ定義を、例えば、メッセージの出現頻度に応じて順序を算出する場合には、０という値と関連付けし、その後、変換部９に送信する。次に、変換部９は、該新規フィルタ定義を受信し、受信した該新規フィルタ定義に応じて、木構造を更新する（ステップＳ１１）。
【００６４】
図１６に示す新規フィルタ定義を図１０の木構造へ追加する場合の例において、変換部９が行う更新処理について説明する。
【００６５】
変換部９は、新規フィルタ定義と関連付けされたメッセージを解析することにより、図１０の木構造に新規フィルタ定義に関連付けされたノードを追加する。その結果、変換部９は、図１０における木構造を図１７における木構造に更新する。図１７は、本発明の第３の実施形態に係る更新後の木構造の一例を概念的に表す図である。新規フィルタ定義を追加する前後において生成する木構造（図１０と図１７）を比較すると、変換部９は、フィルタ定義「Ｆ＿Ｗ＿０３」の親ノードにおいて、新規フィルタ定義に関連付けされたノードをその親ノードの子ノードとして追加する。
【００６６】
追加部８が、本発明の第１の実施形態に示したような処理を実施することにより、フィルタ定義群の適用順序は、図１８のように変化する。図１８は、本発明の第３の実施形態に係る更新により、フィルタ定義の適用順序の変化を概念的に表す図である。図１８において更新前のフィルタ定義群と更新後のフィルタ定義を比較すると、変換部９と順序部３とが、単純に新規フィルタ定義を挿入するだけでなく、既存のフィルタ定義との間に存在する制約規則を考慮して適用順序を変更することがわかる。
【００６７】
本発明の第３の実施形態に係る順序制御システム１０によれば、利用者が新規フィルタ定義を作成する際に、フィルタ定義を適用する制約条件を満たしつつ、フィルタリング処理を軽減する適用順序を設定することができる。
【００６８】
本発明の第３の実施形態は、本発明の第１の実施形態と同様の構成を有するため、本発明の第３の実施形態は、本発明の第１の実施形態と同様の効果を享受することができる。
【００６９】
尚、上述した説明においては、第１の実施形態を例として第３の実施形態を説明したが、第３の実施形態は第２の実施形態を基本とすることもできる。その場合、本発明の第３の実施形態は、本発明の第２の実施形態と同様の効果を享受することができる。
【００７０】
即ち、本発明における第３の実施形態に係る順序制御システムによれば、フィルタ定義を適用する制約条件を満たしつつ、フィルタリングに要する負荷を軽減することできる。
【００７１】
＜第４の実施形態＞
次に、上述した第１の実施形態を基本とする第４の実施形態について説明する。
【００７２】
以下の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第１の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
【００７３】
図１９を参照しながら、本発明の第１乃至第３の実施形態に係る順序制御システムを有するメッセージ管理システム１２が有する構成について説明する。図１９は、本発明の第４の実施形態に係るメッセージ管理システム１２の構成を示すブロック図である。
【００７４】
図１９を参照すると、メッセージ管理システム１２は、順序制御システム１と、実施部１１とを有する。実施部１１は、メッセージ管理システム１２が算出する適用順序に応じて、管理対象システムからのメッセージを処理する。
【００７５】
本発明の第４の実施形態に係るメッセージ管理システム１２は、本発明の第１の実施形態に係る順序制御システム１を有するため、本発明の第４の実施形態は、本発明の第１の実施形態と同様の効果を享受することができる。
【００７６】
尚、上述した説明においては、第１の実施形態を例として第４の実施形態を説明したが、第４の実施形態は第２の実施形態、あるいは、第３の実施形態を基本とすることもできる。その場合、本発明の第４の実施形態は、本発明の第２の実施形態、あるいは、第３の実施形態と同様の効果を享受することができる。
【００７７】
即ち、本発明における第４の実施形態に係るメッセージ管理システムによれば、フィルタ定義を適用する制約条件を満たしつつ、フィルタリング処理を軽減することできる。
【００７８】
（ハードウェア構成例）
上述した本発明の各実施形態における順序制御システムを、１つの計算処理装置（情報処理装置、コンピュータ）を用いて実現するハードウェア資源の構成例について説明する。但し、係る順序制御システムは、物理的または機能的に少なくとも２つの計算処理装置を用いて実現してもよい。また、係る順序制御システムは、専用の装置として実現してもよい。
【００７９】
図２０は、本発明の第１乃至第３の実施形態に係る順序制御システムを実現可能な計算処理装置のハードウェア構成を概略的に示す図である。計算処理装置２０は、中央処理演算装置（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、以降「ＣＰＵ」と表す）２１、メモリ２２、ディスク２３、不揮発性記録媒体２４、入力装置２５、および、出力装置２６を有する
不揮発性記録媒体２４は、コンピュータが読み取り可能な、例えば、コンパクトディスク（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、デジタルバーサタイルディスク（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ブルーレイディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）、ユニバーサルシリアルバスメモリ（ＵＳＢメモリ）などを指しており、電源を供給しなくても係るプログラムを保持し、持ち運びを可能にする。不揮発性記録媒体２４は、上述した媒体に限定されない。また、不揮発性記録媒体２４の代わりに、通信ネットワークを介して係るプログラムを持ち運びしても良い。
【００８０】
即ち、ＣＰＵ２１は、ディスク２３が記憶するソフトウェア・プログラム（コンピュータ・プログラム：以下、単に「プログラム」と称する）を、実行する際にメモリ２２にコピーし、演算処理を実行する。ＣＰＵ２１は、プログラム実行に必要なデータをメモリ２２から読み込む。表示が必要な場合には、ＣＰＵ２１は、出力装置２６に出力結果を表示する。外部からプログラムを入力する場合、ＣＰＵ２１は、入力装置２５からプログラムを読み取る。ＣＰＵ２１は、上述した図１、図１２、図１４に示した各部が表す機能（処理）に対応するところの、メモリ２２に格納されている順序制御プログラム（図２、図３、図１３、図１５）を解釈し実行する。ＣＰＵ２１は、上述した本発明の各実施形態において説明した処理を順次行う。
【００８１】
即ち、このような場合、本発明は、係る順序制御プログラムによっても成し得ると捉えることができる。更に、係る順序制御プログラムが記録されたコンピュータ読み取り可能な記録媒体によっても、本発明は成し得ると捉えることができる。
【符号の説明】
【００８２】
１    順序制御システム
２    変換部
３    順序部
４    記憶部
５    順序部
６    頻度部
７    順序制御システム
８    追加部
９    変換部
１０    順序制御システム
１１    実施部
１２    メッセージ管理システム
２０    計算処理装置
２１    ＣＰＵ
２２    メモリ
２３    ディスク
２４    不揮発性記録媒体
２５    入力装置
２６    出力装置
【図１】
2014106860.tif 000003
【図２】
2014106860.tif 000004
【図３】
2014106860.tif 000005
【図４】
2014106860.tif 000006
【図５】
2014106860.tif 000007
【図６】
2014106860.tif 000008
【図７】
2014106860.tif 000009
【図８】
2014106860.tif 000010
【図９】
2014106860.tif 000011
【図１０】
2014106860.tif 000012
【図１１】
2014106860.tif 000013
【図１２】
2014106860.tif 000014
【図１３】
2014106860.tif 000015
【図１４】
2014106860.tif 000016
【図１５】
2014106860.tif 000017
【図１６】
2014106860.tif 000018
【図１７】
2014106860.tif 000019
【図１８】
2014106860.tif 000020
【図１９】
2014106860.tif 000021
【図２０】
2014106860.tif 000022