(57)【要約】【課題】管理する情報の一部を変更した場合に、関連する他の情報との整合性を保つ。【解決手段】第二情報記憶部１２０が記憶した第二の情報６２０の変更を、変更監視部１３１が監視し、第一変更処理部１４１及び第二変更処理部１５１に通知する。第一変更処理部１４１は、第一情報記憶部１６０が記憶した第一の情報６６０のうち、変更された第二の情報６２０に関連する第一の情報６６０を変更する。第二変更処理部１５１は、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更された第二の情報６２０に関連する他の第二の情報６２０を変更する。第二変更処理部１５１による変更により、更に連鎖的に、第一の情報６６０及び第二の情報６２０が変更される。【選択図】図３
2007310560.tif 000002
【特許請求の範囲】
【請求項１】
情報を記憶する記憶装置と、
情報を処理する処理装置と、
アプリケーション実行装置が利用する情報である第一の情報を、上記記憶装置に記憶する第一情報記憶部と、
上記第一情報記憶部が記憶した第一の情報に関連する情報である第二の情報を、上記記憶装置に記憶する第二情報記憶部と、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記処理装置を用いて、上記第一情報記憶部が記憶した第一の情報のうち、変更された上記第二の情報に関連する第一の情報を変更する第一変更処理部と、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記処理装置を用いて、上記第二情報記憶部が記憶した第二の情報のうち、変更された上記第二の情報に関連する他の第二の情報を変更する第二変更処理部と、
を有することを特徴とする情報管理装置。
【請求項２】
上記情報管理装置は、更に、
上記処理装置を用いて、上記第二情報記憶部が記憶した第二の情報が変更されたか否かを監視し、上記第二の情報が変更された場合に、上記処理装置を用いて、上記第一変更処理部及び上記第二変更処理部のうち少なくともいずれかに対して、上記第二の情報が変更されたことを通知する変更監視部
を有することを特徴とする請求項１に記載の情報管理装置。
【請求項３】
上記情報管理装置は、更に、
上記第一情報記憶部が記憶した第一の情報のうち、変更された第二の情報に関連する第一の情報を変更する処理を記述したプログラムである第一の処理ロジックを、上記記憶装置に記憶する第一処理ロジック記憶部と、
上記処理装置を用いて、上記第一処理ロジック記憶部が記憶した第一の処理ロジックのうち、上記第一変更処理部から通知された情報によって示される第一の処理ロジックを実行する第一処理ロジック実行部とを有し、
上記第一変更処理部は、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記第一処理ロジック記憶部が記憶した第一の処理ロジックのうち、変更された上記第二の情報に関連する第一の処理ロジックを示す情報を上記第一処理ロジック実行部に通知する
ことを特徴とする請求項１に記載の情報管理装置。
【請求項４】
上記情報管理装置は、更に、
上記第二情報記憶部が記憶した第二の情報のうち、変更された第二の情報に関連する他の第二の情報を変更する処理を記述したプログラムである第二の処理ロジックを、上記記憶装置に記憶する第二処理ロジック記憶部と、
上記処理装置を用いて、上記第二処理ロジック記憶部が記憶した第二の処理ロジックのうち、上記第二変更処理部から通知された情報によって示される第二の処理ロジックを実行する第二処理ロジック実行部とを有し、
上記第二変更処理部は、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記処理装置を用いて、上記第二処理ロジック記憶部が記憶した第二の処理ロジックのうち、変更された上記第二の情報に関連する第二の処理ロジックを示す情報を上記第二処理ロジック実行部に通知する
ことを特徴とする請求項１に記載の情報管理装置。
【請求項５】
上記情報管理装置は、更に、
上記第二情報記憶部が記憶した第二の情報が満たすべき条件を示す情報である第一の変更条件情報と、上記第一の変更条件情報によって示される条件が満たされた場合に、上記第一情報記憶部が記憶した第一の情報を変更すべき値を示す情報である第一の変更値情報とを対応づけて、上記記憶装置に記憶する第一条件記憶部を有し、
上記第一変更処理部は、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記処理装置を用いて、上記第二情報記憶部が記憶した第二の情報が、上記第一条件記憶部が記憶した第一の変更条件情報によって示される条件を満たすか否かを判断し、上記条件を満たすと判断した場合に、上記処理装置を用いて、上記第一情報記憶部が記憶した第一の情報を、上記第一条件記憶部が記憶した第一の変更値情報によって示される値に変更する
ことを特徴とする請求項１に記載の情報管理装置。
【請求項６】
上記情報管理装置は、更に、
上記第二情報記憶部が記憶した第二の情報が満たすべき条件を示す情報である第二の変更条件情報と、上記第二の変更条件情報によって示される条件が満たされた場合に、上記第二情報記憶部が記憶した他の第二の情報を変更すべき値を示す情報である第二の変更値情報とを対応づけて、上記記憶装置に記憶する第二条件記憶部を有し、
上記第二変更処理部は、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記処理装置を用いて、上記第二情報記憶部が記憶した第二の情報が、上記第二条件記憶部が記憶した第二の変更条件情報によって示される条件を満たすか否かを判断し、上記条件を満たすと判断した場合に、上記処理装置を用いて、上記第二情報記憶部が記憶した他の第二の情報を、上記第二条件記憶部が記憶した第二の変更値情報によって示される値に変更する
ことを特徴とする請求項１に記載の情報管理装置。
【請求項７】
上記情報管理装置は、更に、
情報を入力する入力装置と、
上記処理装置を用いて、上記第二情報記憶部が記憶した第二の情報の変更を指示する情報である変更指示情報を上記入力装置から入力する変更指示入力部と、
上記処理装置を用いて、上記変更指示入力部が入力した変更指示情報に基づいて、上記第二情報記憶部が記憶した第二の情報を変更する第二情報変更部と、
を有することを特徴とする請求項１に記載の情報管理装置。
【請求項８】
上記情報管理装置は、更に、
上記第二情報記憶部が記憶した第二の情報の変更前の値と、上記第二の情報の値が上記変更前の値である場合に上記第二の情報を変更する変更後の値とが満たすべき条件を示す情報である遷移条件情報を上記記憶装置に記憶する遷移条件記憶部を有し、
上記第二情報変更部は、
上記処理装置を用いて、上記第二情報記憶部が記憶した第二の情報のうち、上記変更指示入力部が入力した変更指示情報に基づいて変更すべき第二の情報の変更前の値を取得し、取得した上記第二の情報の変更前の値と上記変更指示情報によって示される変更後の値とが、上記遷移条件情報によって示される条件を満たすか否かを判断し、上記条件を満たすと判断した場合に、上記変更指示情報に基づいて、上記第二情報記憶部が記憶した第二の情報を変更する
ことを特徴とする請求項１に記載の情報管理装置。
【請求項９】
上記第一情報記憶部は、上記第一の情報として、対象を識別する情報である識別情報と上記識別情報の有効無効を示す情報である有効情報とを含むアイデンティティ情報を上記記憶装置に記憶し、
上記第二情報記憶部は、上記第二の情報として、上記識別情報と上記識別情報によって識別される対象の状態を示すアイデンティティ状態情報とを含む状態情報を上記記憶装置に記憶する
ことを特徴とする請求項１に記載の情報管理装置。
【請求項１０】
上記第一変更処理部は、
上記第二情報記憶部が記憶した状態情報に含まれるアイデンティティ状態情報が変更された場合に、上記処理装置を用いて、変更された上記アイデンティティ状態情報を含む状態情報に含まれる識別情報を取得し、上記処理装置を用いて、上記第一情報記憶部が記憶したアイデンティティ情報のうち、取得した上記識別情報と同一の識別情報を含むアイデンティティ情報に含まれる有効情報を変更する
ことを特徴とする請求項９に記載の情報管理装置。
【請求項１１】
上記第一情報記憶部は、更に、
上記アイデンティティ情報に含まれる識別情報によって識別される対象に関連する他の対象を識別する他の識別情報を、上記アイデンティティ情報の一部として上記記憶装置に記憶し、
上記第二変更処理部は、
上記第二情報記憶部が記憶した状態情報に含まれるアイデンティティ状態情報が変更された場合に、上記処理装置を用いて、変更された上記アイデンティティ状態情報を含む状態情報に含まれる識別情報を取得し、上記処理装置を用いて、上記第一情報記憶部が記憶したアイデンティティ情報から、取得した上記識別情報と同一の他の識別情報を含むアイデンティティ情報に含まれる識別情報を取得し、上記処理装置を用いて、上記第二情報記憶部が記憶した状態情報のうち、取得した識別情報と同一の識別情報を含む状態情報に含まれるアイデンティティ状態情報を変更する
ことを特徴とする請求項９に記載の情報管理装置。
【請求項１２】
上記第一情報記憶部は、上記識別情報として、対象を識別することによりユーザを認証する情報であるユーザ認証情報を上記記憶装置に記憶し、
上記アイデンティティ情報は、上記アプリケーション実行装置であるユーザ認証システムが、上記ユーザを認証するために利用する情報である
ことを特徴とする請求項９に記載の情報管理装置。
【請求項１３】
上記第一情報記憶部は、異なる対象を識別し、同一のユーザを認証する複数のユーザ認証情報を、異なるアイデンティティ情報として上記記憶装置に記憶する
ことを特徴とする請求項１２に記載の情報管理装置。
【請求項１４】
上記第一情報記憶部は、上記アイデンティティ情報の一部として、上記アイデンティティ情報に含まれるユーザ認証情報によって認証されるユーザと同一のユーザを認証する他のユーザ認証情報を上記記憶装置に記憶する
ことを特徴とする請求項１３に記載の情報管理装置。
【請求項１５】
情報を記憶する記憶装置と、情報を処理する処理装置と、アプリケーション実行装置が利用する情報である第一の情報を、上記記憶装置に記憶する第一情報記憶部と、上記第一情報記憶部が記憶した第一の情報に関連する情報である第二の情報を、上記記憶装置に記憶する第二情報記憶部とを有する情報管理装置が情報を管理する情報管理方法において、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記処理装置が、上記第一情報記憶部が記憶した第一の情報のうち、変更された上記第二の情報に関連する第一の情報を変更する第一変更処理工程と、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記処理装置が、上記第二情報記憶部が記憶した第二の情報のうち、変更された上記第二の情報に関連する他の第二の情報を変更する第二変更処理工程と、
を有することを特徴とする情報管理方法。
【請求項１６】
情報を記憶する記憶装置と、情報を処理する処理装置とを有するコンピュータを、請求項１に記載の情報管理装置として機能させることを特徴とする情報管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、互いに関連を有する複数の情報の整合性を保つ情報管理装置に関する。
【背景技術】
【０００２】
アプリケーションプログラムは、その処理を実行するために、それぞれアプリケーションプログラムに固有の情報を利用する。
システムの運用により、アプリケーションプログラムが利用する情報を変更する必要が生じた場合、手作業により情報を変更することが行われる。
【０００３】
また、処理フローを定義することにより、手作業による変更を自動化する技術も存在する。
【特許文献１】特開２０００−１０８０２号公報
【特許文献２】特開２００１−２５６１８５号公報
【特許文献３】特開２００１−２８２７５４号公報
【特許文献４】特開平１１−８５８７７号公報
【特許文献５】特開平１１−３０６１４６号公報
【特許文献６】特開平１１−３４５１３２号公報
【特許文献７】特開２００１−３３８１５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
アプリケーションプログラムを設計する段階で、システムの運用まで考慮に入れておけば、手作業による情報の変更をする必要はないが、システムの運用が変化した場合に、アプリケーションプログラムを直さなければならないという課題がある。
【０００５】
アプリケーションプログラムとは別に処理フローを定義し、処理フローにしたがって処理をする装置（例えば、処理フローエンジン）が情報を変更することで、手作業による変更を減らすことができる。
しかし、複数のアプリケーションプログラムがそれぞれ利用している情報が互いに関連を有している場合、それぞれの情報について別々に定義された処理フローによって情報を変更すると、互いに関連のある情報の整合性を保つことができないという課題がある。
【０００６】
特に、多数の情報が複雑に関連を有する場合には、全体の整合性を保つ処理フローを定義することは困難であり、システムの運用が変化した場合に処理フローを修正することは更に困難になるという課題がある。
【０００７】
この発明は、例えば、上記のような課題を解決するためになされたものであり、互いに関連を有する複数の情報の整合性を保つ処理を自動化し、自動化される処理を容易に定義できるようにし、システム運用の変化によって処理の内容が変化した場合にも容易に対処できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
この発明にかかる情報管理装置は、
情報を記憶する記憶装置と、
情報を処理する処理装置と、
アプリケーション実行装置が利用する情報である第一の情報を、上記記憶装置に記憶する第一情報記憶部と、
上記第一情報記憶部が記憶した第一の情報に関連する情報である第二の情報を、上記記憶装置に記憶する第二情報記憶部と、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記処理装置を用いて、上記第一情報記憶部が記憶した第一の情報のうち、変更された上記第二の情報に関連する第一の情報を変更する第一変更処理部と、
上記第二情報記憶部が記憶した第二の情報が変更された場合に、上記処理装置を用いて、上記第二情報記憶部が記憶した第二の情報のうち、変更された上記第二の情報に関連する他の第二の情報を変更する第二変更処理部と、
を有することを特徴とする。
【発明の効果】
【０００９】
この発明にかかる情報管理装置によれば、例えば、
第二情報記憶部が記憶した第二の情報が変更された場合に、第一情報記憶部が記憶した第一の情報のうち、変更された第二の情報に関連する第一の情報を第一変更処理部が変更し、第二情報記憶部が記憶した第二の情報のうち、変更された第二の情報に関連する他の第二の情報を第二変更処理部が変更するので、互いに関連のある第一の情報及び第二の情報が自動的に変更されて、全体としての整合性を保つことができるという効果を奏する。
【発明を実施するための最良の形態】
【００１０】
実施の形態１．
実施の形態１について、図１〜図７を用いて説明する。
【００１１】
図１は、この実施の形態における情報管理装置１００及びアプリケーション実行装置２００の外観の一例を示す図である。
図１において、情報管理装置１００及びアプリケーション実行装置２００は、システムユニット９１０、ＣＲＴ（Ｃａｔｈｏｄｅ・Ｒａｙ・Ｔｕｂｅ）やＬＣＤ（液晶）などの表示画面を有する表示装置９０１、キーボード９０２（Ｋｅｙ・Ｂｏａｒｄ：Ｋ／Ｂ）、マウス９０３、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ・Ｄｉｓｋ・Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
システムユニット９１０は、コンピュータであり、ファクシミリ機９３２、電話器９３１とケーブルで接続され、また、ローカルエリアネットワーク９４２（ＬＡＮ）、ゲートウェイ９４１を介してインターネット９４０に接続されている。
【００１２】
図２は、この実施の形態における情報管理装置１００及びアプリケーション実行装置２００のハードウェア資源の一例を示す図である。
図２において、情報管理装置１００及びアプリケーション実行装置２００は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、ＦＤＤ９０４、ＣＤＤ９０５、プリンタ装置９０６、スキャナ装置９０７、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
通信ボード９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４などは、入力部、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力部、出力装置の一例である。
【００１３】
通信ボード９１５は、ファクシミリ機９３２、電話器９３１、ＬＡＮ９４２等に接続されている。通信ボード９１５は、ＬＡＮ９４２に限らず、インターネット９４０、ＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。インターネット９４０或いはＩＳＤＮ等のＷＡＮに接続されている場合、ゲートウェイ９４１は不用となる。
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００１４】
上記プログラム群９２３には、以下に述べる実施の形態の説明において「〜部」、「〜手段」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」として説明する情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ・Ｖｅｒｓａｔｉｌｅ・Ｄｉｓｃ）等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００１５】
また、以下に述べる実施の形態の説明において「〜部」、「〜手段」として説明するものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」、「〜手段」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、以下に述べる「〜部」、「〜手段」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」、「〜手段」の手順や方法をコンピュータに実行させるものである。
【００１６】
図３は、この実施の形態における情報管理装置１００の機能ブロックの構成の一例を示すブロック構成図である。
この実施の形態における情報管理装置１００は、アプリケーション実行装置２００が利用する情報である第一の情報６６０を記憶している。
アプリケーション実行装置２００は、情報管理装置１００が記憶した第一の情報６６０を情報管理装置１００から取得し、取得した第一の情報６６０を用いて、固有の処理を実行する。アプリケーション実行装置２００は、実行した結果、情報管理装置１００が記憶した第一の情報６６０を書き換えたり、新たな第一の情報６６０を情報管理装置１００に記憶させたりしてもよい。
【００１７】
情報管理装置１００は、第一の情報６６０に関連する情報である第二の情報６２０を記憶している。
第一の情報６６０と第二の情報６２０とは異なる情報であるが、互いに関連しており、第二の情報６２０が変更された場合には、それに関連する第一の情報６６０も変更する必要がある。
また、第二の情報６２０のなかにも、互いに関連している情報があり、一つの第二の情報６２０が変更された場合には、それに関連する他の第二の情報６２０を変更する必要が生じる場合がある。
この実施の形態における情報管理装置１００は、第二の情報６２０の一部が変更された場合に、それに関連する第一の情報６６０及び他の第二の情報６２０を変更することにより、記憶した情報の整合性を保つ装置である。
【００１８】
この実施の形態における情報管理装置１００は、変更指示入力部１１１、第二情報変更部１１２、遷移条件記憶部１１３、第二情報記憶部１２０、変更監視部１３１、第一変更処理部１４１、第一条件記憶部１４２、第一処理ロジック実行部１４３、第一処理ロジック記憶部１４４、第二変更処理部１５１、第二条件記憶部１５２、第二処理ロジック実行部１５３、第二処理ロジック記憶部１５４、第一情報記憶部１６０を有する。
【００１９】
変更指示入力部１１１は、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０を変更することを指示する情報を、キーボード９０２などの入力装置から入力する。
変更指示入力部１１１は、ＣＰＵ９１１などの処理装置を用いて、入力した変更指示を示す情報である変更指示情報６１１を出力する。
変更指示情報６１１は、例えば、第二情報記憶部１２０が記憶した第二の情報６２０を識別する情報と、その情報によって識別される第二の情報６２０を変更すべき値を示す情報とを含む情報である。
【００２０】
第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、変更指示入力部１１１が出力した変更指示情報６１１を取得する。
第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、取得した変更指示情報６１１を解釈し、変更指示情報６１１によって示される変更指示にしたがって、第二情報記憶部１２０が記憶した第二の情報６２０を変更する。
【００２１】
第二情報変更部１１２は、第二の情報６２０を変更するに際し、ＣＰＵ９１１などの処理装置を用いて、変更指示情報６１１によって示される変更指示が、あらかじめ定められた遷移条件を満たすか否かを判断し、遷移条件を満たすと判断した場合には第二情報記憶部１２０が記憶した第二の情報６２０を変更するが、遷移条件を満たさないと判断した場合には第二情報記憶部１２０が記憶した第二の情報６２０を変更しない。
なお、遷移条件を満たすか否かを判断せず、常に、変更指示情報６１１によって示される変更指示にしたがって、第二情報記憶部１２０が記憶した第二の情報６２０を変更することとしてもよい。
【００２２】
遷移条件記憶部１１３は、ＣＰＵ９１１などの処理装置を用いて、遷移条件情報６１３を、磁気ディスク装置９２０などの記憶装置に記憶する。
遷移条件情報６１３は、遷移条件を示す情報である。遷移条件とは、第二の情報６２０の値がある値であるとき、その第二の情報６２０の値を変更することのできる値を示す。
遷移条件情報６１３は、例えば、第二情報記憶部１２０が記憶した第二の情報６２０の種類を示す情報である種別情報と、第二の情報６２０の変更前の値を示す情報である前値情報と、第二の情報６２０の変更後の値を示す情報である後値情報とを含む情報である。これにより、種別情報によって示される種類の第二の情報６２０が、前値情報によって示される値である場合、後値情報によって示される値に変更することができることを示す。
【００２３】
第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更指示情報６１１によって識別される第二の情報６２０を取得する。
第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、取得した第二の情報６２０の種類を判別する。第二情報変更部１１２は、第二の情報６２０の種類を判別するに際し、第一情報記憶部１６０が記憶した第一の情報６６０を利用してもよい。
第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、遷移条件記憶部１１３が記憶した遷移条件情報６１３のうち、判別した第二の情報６２０の種類についての遷移条件情報６１３を取得する。
第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、取得した遷移条件情報６１３のなかに、前値情報によって示される変更前の値と取得した第二の情報６２０の値とが等しく、後値情報によって示される変更後の値と変更指示情報６１１によって示されう変更指示による変更後の値とが等しい遷移条件情報６１３があるか否かを判断する。
そのような遷移条件情報６１３があると判断した場合、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更指示情報６１１によって識別される第二の情報６２０を、変更指示情報６１１によって示される値に変更する。
【００２４】
第二情報記憶部１２０は、ＣＰＵ９１１などの処理装置を用いて、第二の情報６２０を、磁気ディスク装置９２０などの記憶装置に記憶する。
第二の情報６２０は、例えば、その第二の情報６２０を識別する情報と、その第二の情報６２０の種類を示す情報と、その第二の情報６２０の値を示す情報と、その第二の情報６２０が関連する第一の情報６６０を識別する情報とを含む情報である。
【００２５】
図４は、この実施の形態における第二情報変更部１１２が第二の情報６２０を変更する第二情報変更処理の流れの一例を示すフローチャート図である。
【００２６】
Ｓ７１１において、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、変更指示入力部１１１が出力した変更指示情報６１１を取得する。
Ｓ７１２において、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７１１で取得した変更指示情報６１１を解読して、変更すべき第二の情報６２０を識別する情報と、変更すべき第二の情報６２０の変更後の値とを算出する。
【００２７】
Ｓ７１３において、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、変更すべき第二の情報６２０の種類と、現在の値とを取得する。
すなわち、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７１２で算出した変更すべき第二の情報６２０を識別する情報を、第二情報記憶部１２０に通知する。
第二情報記憶部１２０は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０を識別する情報を取得し、取得した情報によって識別される第二の情報６２０（その第二の情報６２０の種類を示す情報・その第二の情報６２０の値を示す情報を含む）を、磁気ディスク装置９２０などの記憶装置から取得する。第二情報記憶部１２０は、ＣＰＵ９１１などの処理装置を用いて、取得した第二の情報６２０を、第二情報変更部１１２に通知する。
第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０を取得し、取得した第二の情報６２０を解読して、その第二の情報６２０の種類を示す情報と、その第二の情報６２０の現在の値とを算出する。
【００２８】
Ｓ７１４において、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７１３で取得した第二の情報６２０の種類についての遷移条件情報６１３を取得する。
すなわち、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７１３で取得した第二の情報６２０の種類を示す情報を、遷移条件記憶部１１３に通知する。
遷移条件記憶部１１３は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０の種類を示す情報を取得し、取得した情報によって示される第二の情報６２０の種類についての遷移条件情報６１３を、磁気ディスク装置９２０などの記憶装置から取得する。遷移条件記憶部１１３は、ＣＰＵ９１１などの処理装置を用いて、取得した遷移条件情報６１３を、第二情報変更部１１２に通知する。
第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、通知された遷移条件情報６１３を取得する。
【００２９】
Ｓ７１５において、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７１４で取得した遷移条件情報６１３を解読して、変更すべき第二の情報６２０が取るべき変更前の値と、変更後の値とを算出する。
【００３０】
Ｓ７１６において、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、遷移条件を満たすか否かを判断する。
すなわち、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７１５で算出した変更前の値と、Ｓ７１３で取得した現在の値とが同一であり、かつ、Ｓ７１５で算出した変更後の値と、Ｓ７１２で算出した変更後の値とが同一である遷移条件があるか否かを判断する。
そのような遷移条件があれば、遷移条件を満たすものと判断して、Ｓ７１７へ進む。
そのような遷移条件がなければ、遷移条件を満たさないものと判断して、第二情報変更処理を終了する。
【００３１】
Ｓ７１７において、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、第二の情報６２０を変更する。
すなわち、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７１２で算出した第二の情報６２０を識別する情報と、Ｓ７１２で算出した変更後の値を示す情報とを含む第二の情報６２０を、第二情報記憶部１２０に通知する。
第二情報記憶部１２０は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０を取得し、取得した情報によって識別される第二の情報６２０の値を、取得した情報によって示される変更後の値に書き換えて、磁気ディスク装置９２０などの記憶装置に記憶する。
【００３２】
図３に戻り、情報管理装置１００の機能ブロックの説明を続ける。
【００３３】
変更監視部１３１は、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０に変更があったか否かを監視する。
変更監視部１３１は、第二情報記憶部１２０が記憶した第二の情報６２０に変更があった場合、ＣＰＵ９１１などの処理装置を用いて、変更検出通知情報６３１を出力する。
変更検出通知情報６３１は、第二情報記憶部１２０が記憶した第二の情報６２０に変更があったことを示す情報である。変更検出通知情報６３１は、変更された第二の情報６２０を識別する情報、変更された第二の情報６２０の種類を示す情報、変更された第二の情報６２０の値を示す情報などを含んでいてもよい。
【００３４】
変更監視部１３１は、例えば、第二情報記憶部１２０が記憶した第二の情報６２０の複製を、磁気ディスク装置９２０などの記憶装置に記憶しておき、定期的に、第二情報記憶部１２０が記憶した第二の情報６２０とその複製とを比較することにより、第二情報記憶部１２０が記憶した第二の情報６２０に変更があったか否かを判断する。
あるいは、変更監視部１３１は、例えば、第二情報変更部１１２など第二情報記憶部１２０が記憶した第二の情報６２０を変更するブロックからの通知を取得することにより、第二情報記憶部１２０が記憶した第二の情報６２０に変更があったか否かを判断してもよい。
なお、変更監視部１３１は、第二情報変更部１１２など第二情報記憶部１２０が記憶した第二の情報６２０を変更するブロックからの通知を受けた場合であっても、変更前に第二情報記憶部１２０が記憶していた第二の情報６２０の値と、変更後の値とが等しい場合には、変更がなかったものとして、変更検出通知情報６３１を出力しないことが好ましい。そうすれば、第一変更処理部１４１や第二変更処理部１５１が無駄な処理をすることを防ぐことができる。
【００３５】
第一変更処理部１４１は、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、第一情報記憶部１６０が記憶した第一の情報６６０のうち、変更された第二の情報６２０に関連する第一の情報６６０を変更する。
第一変更処理部１４１は、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、変更された第二の情報６２０の値が、あらかじめ定められた変更条件を満たすか否かを判断する。第一変更処理部１４１は、変更条件を満たすと判断した場合に、ＣＰＵ９１１などの処理装置を用いて、変更された第二の情報６２０に関連する第一の情報６６０の値を、あらかじめ定められた値に変更する。
【００３６】
第一条件記憶部１４２は、ＣＰＵ９１１などの処理装置を用いて、第一条件情報６４２を、磁気ディスク装置９２０などの記憶装置に記憶する。
第一条件情報６４２は、変更された第二の情報６２０が満たすべき条件を示す第一の変更条件情報と、第一の変更条件情報によって示される条件が満たされた場合に、変更された第二の情報６２０に関連する第一の情報６６０を変更すべき値を示す変更値情報とを含む情報である。
第一条件情報６４２は、例えば、第二の情報６２０の種類を示す情報である第二種類情報と、第二種類情報によって示される種類の第二の情報６２０が変更された場合にそれに関連して変更すべき第一の情報６６０の種類を示す情報である第一種類情報と、変更された第二の情報６２０の変更後の値を示す情報である第二値情報と、変更された第二の情報６２０の値が第二値情報によって示される値と等しい場合に第一の情報６６０を変更すべき値を示す第一値情報とを含む情報である。これにより、変更された第二の情報６２０の種類及び値が、第二種類情報及び第二値情報によって示される種類及び値と等しい場合に、第一の変更条件を満たすことを示す。
【００３７】
第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、変更監視部１３１が出力した変更検出通知情報６３１を取得する。第一変更処理部１４１は、取得した変更検出通知情報６３１により、第二情報記憶部１２０が記憶した第二の情報６２０が変更されたことを検出する。
第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更された第二の情報６２０を取得する。
第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、取得した第二の情報６２０の種類を判別する。
第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、第一条件記憶部１４２が記憶した第一条件情報６４２のうち、判別した第二の情報６２０の種類についての第一条件情報６４２を取得する。
第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、取得した第一条件情報６４２に含まれる第二値情報によって示される値と取得した第二の情報６２０の値とが等しいか否かを判断する。
第一変更処理部１４１は、取得した第一条件情報６４２に含まれる第二値情報によって示される値と取得した第二の情報６２０の値とが等しいと判断した場合に、ＣＰＵ９１１などの処理装置を用いて、第一情報記憶部１６０が記憶した第一の情報６６０のうち、変更された第二の情報６２０に関連する第一の情報６６０であって、取得した第一条件情報６４２に含まれる第一種類情報によって示される種類の第一の情報６６０の値を、取得した第一条件情報６４２に含まれる第一値情報によって示される値に変更する処理ロジックを、第一処理ロジック実行部１４３に実行させる。
第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、第一ロジック情報６４１を出力する。
第一ロジック情報６４１は、第一処理ロジック実行部１４３に実行させる第一の処理ロジック６４４を示す情報である。
【００３８】
第一処理ロジック実行部１４３は、ＣＰＵ９１１などの処理装置を用いて、第一処理ロジック記憶部１４４が記憶した処理ロジックを実行する。
第一処理ロジック実行部１４３は、ＣＰＵ９１１などの処理装置を用いて、第一変更処理部１４１が出力した第一ロジック情報６４１を取得する。
第一処理ロジック実行部１４３は、ＣＰＵ９１１などの処理装置を用いて、第一処理ロジック記憶部１４４が記憶した処理ロジックのうち、取得した第一ロジック情報６４１によって示される第一の処理ロジック６４４を取得する。第一処理ロジック実行部１４３は、ＣＰＵ９１１などの処理装置を用いて、取得した第一の処理ロジック６４４を実行する。
【００３９】
第一処理ロジック記憶部１４４は、ＣＰＵ９１１などの処理装置を用いて、第一の処理ロジック６４４を磁気ディスク装置９２０などの記憶装置に記憶する。
処理ロジックとは、プログラムの一種である。
【００４０】
なお、第一変更処理部１４１が第一条件情報６４２に含まれる第一の変更条件情報によって示される変更条件を満たすか否かを判断するのではなく、変更監視部１３１が第一条件情報６４２に含まれる第一の変更条件情報によって示される変更条件を満たすか否かを判断し、変更条件を満たす場合に、変更検出通知情報６３１を出力することとしてもよい。
あるいは、変更条件を満たすか否かを判断する処理を、第一処理ロジック記憶部１４４が記憶した第一の処理ロジック６４４のなかに記述しておき、第一処理ロジック実行部１４３が、変更条件を満たすと判断した場合に、第一情報記憶部１６０が記憶した第一の情報６６０を変更することとしてもよい。
【００４１】
また、第一変更処理部１４１が第一ロジック情報６４１を出力するのではなく、第一変更処理部１４１が、第一情報記憶部１６０が記憶した第一の情報６６０を直接変更してもよい。
【００４２】
図５は、この実施の形態における第一変更処理部１４１が第二の情報６２０の変更に基づいて第一の情報６６０を変更する第一変更処理の流れの一例を示すフローチャート図である。
【００４３】
Ｓ７４１において、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、変更監視部１３１が出力した変更検出通知情報６３１を取得する。
Ｓ７４２において、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７４１で取得した変更検出通知情報６３１を解読し、変更された第二の情報６２０の識別情報を算出する。
【００４４】
Ｓ７４３において、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、変更された第二の情報６２０の種類と、現在の値とを取得する。
すなわち、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７４２で算出した変更された第二の情報６２０を識別する情報を、第二情報記憶部１２０に通知する。
第二情報記憶部１２０は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０を識別する情報を取得し、取得した情報によって識別される第二の情報６２０（その第二の情報６２０の種類を示す情報・その第二の情報６２０の値を示す情報を含む）を、磁気ディスク装置９２０などの記憶装置から取得する。第二情報記憶部１２０は、ＣＰＵ９１１などの処理装置を用いて、取得した第二の情報６２０を、第一変更処理部１４１に通知する。
第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０を取得し、取得した第二の情報６２０を解読して、変更された第二の情報６２０の種類を示す情報と、変更された第二の情報６２０の値とを取得する。
【００４５】
Ｓ７４４において、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７４３で取得した第二の情報６２０の種類についての第一条件情報６４２を取得する。
すなわち、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７４３で取得した第二の情報６２０の種類を示す情報を、第一条件記憶部１４２に通知する。
第一条件記憶部１４２は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０の種類を示す情報を取得し、取得した情報によって示される第二の情報６２０の種類についての第一条件情報６４２を、磁気ディスク装置９２０などの記憶装置から取得する。第一条件記憶部１４２は、ＣＰＵ９１１などの処理装置を用いて、取得した第一条件情報６４２を、第一変更処理部１４１に通知する。
第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、通知された第一条件情報６４２を取得する。
【００４６】
Ｓ７４５において、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７４４で取得した第一条件情報６４２を解読して、第一の情報６６０を変更するために第二の情報６２０が満たすべき条件である第一の変更条件と、第一の変更条件が満たされた場合に第一の情報６６０を変更する処理をする処理ロジックを識別する情報とを算出する。
【００４７】
Ｓ７４６において、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７４３で取得した変更された第二の情報６２０の値に基づいて、Ｓ７４５で算出した第一の変更条件が満たされているか否かを判断する。
満たされていると判断した場合には、Ｓ７４７へ進む。
満たされていないと判断した場合には、第一変更処理を終了する。
【００４８】
Ｓ７４７において、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、変更された第二の情報６２０に関連する第一の情報６６０を変更する。
ここでは、第一処理ロジック実行部１４３に第一の情報６６０を変更する処理ロジックを実行させることにより、第一の情報６６０を変更している。
そのため、第一変更処理部１４１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７４５で算出した第一処理ロジック実行部１４３が実行すべき処理ロジックを識別する情報と、Ｓ７４２で算出した変更された第二の情報６２０を識別する情報とを、第一処理ロジック実行部１４３に通知する。ここで、変更された第二の情報６２０を識別する情報は、変更すべき第一の情報６６０を求めるために必要となる。
【００４９】
なお、変更検出通知情報６３１が、変更された第二の情報６２０の種類を示す情報や変更後の値を示す情報を含む場合には、Ｓ７４３はなくてもよい。
また、第二の情報６２０が、関連する第一の情報６６０を識別する情報を含む場合には、Ｓ７４７で、変更された第二の情報６２０を識別する情報ではなく、変更された第二の情報６２０に関連する第一の情報６６０を識別する情報を、第一処理ロジック実行部１４３に通知してもよい。
また、Ｓ７４７で、第一処理ロジック実行部１４３に処理ロジックを実行させるのではなく、第一変更処理部１４１が第一の情報６６０を直接変更してもよい。
【００５０】
図３に戻り、情報管理装置１００の機能ブロックの説明を続ける。
【００５１】
第二変更処理部１５１、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更された第二の情報６２０に関連する他の第二の情報６２０を変更する。
第二変更処理部１５１は、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、変更された第二の情報６２０の値が、あらかじめ定められた変更条件を満たすか否かを判断する。第二変更処理部１５１は、変更条件を満たすと判断した場合に、ＣＰＵ９１１などの処理装置を用いて、変更された第二の情報６２０に関連する他の第二の情報６２０の値を、あらかじめ定められた値に変更する。
【００５２】
第二条件記憶部１５２は、ＣＰＵ９１１などの処理装置を用いて、第二条件情報６５２を、磁気ディスク装置９２０などの記憶装置に記憶する。
第二条件情報６５２は、変更された第二の情報６２０が満たすべき条件を示す第二の変更条件情報と、第二の変更条件情報によって示される条件が満たされた場合に、変更された第二の情報６２０に関連する他の第二の情報６２０を変更すべき値を示す変更値情報とを含む情報である。
第二条件情報６５２は、第一条件情報６４２と同様のデータ構造であってもよいし、異なるデータ構造であってもよい。
【００５３】
第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、変更監視部１３１が出力した変更検出通知情報６３１を取得する。第二変更処理部１５１は、取得した変更検出通知情報６３１により、第二情報記憶部１２０が記憶した第二の情報６２０が変更されたことを検出する。
第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更された第二の情報６２０を取得する。
第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、取得した第二の情報６２０の種類を判別する。
第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、第二条件記憶部１５２が記憶した第二条件情報６５２のうち、判別した第二の情報６２０の種類についての第二条件情報６５２を取得する。
第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、取得した第二条件情報６５２に含まれる第二値情報によって示される値と取得した第二の情報６２０の値とが等しいか否かを判断する。
第二変更処理部１５１は、取得した第二条件情報６５２に含まれる第二値情報によって示される値と取得した第二の情報６２０の値とが等しいと判断した場合に、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更された第二の情報６２０に関連する他の第二の情報６２０であって、取得した第二条件情報６５２に含まれる他の第二種類情報によって示される種類の第二の情報６２０の値を、取得した第二条件情報６５２に含まれる他の第二値情報によって示される値に変更する処理ロジックを、第二処理ロジック実行部１５３に実行させる。
第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、第二ロジック情報６５１を出力する。
第二ロジック情報６５１は、第二処理ロジック実行部１５３に実行させる第二の処理ロジック６５４を示す情報である。
【００５４】
第二処理ロジック実行部１５３は、ＣＰＵ９１１などの処理装置を用いて、第二処理ロジック記憶部１５４が記憶した処理ロジックを実行する。
第二処理ロジック実行部１５３は、ＣＰＵ９１１などの処理装置を用いて、第二変更処理部１５１が出力した第二ロジック情報６５１を取得する。
第二処理ロジック実行部１５３は、ＣＰＵ９１１などの処理装置を用いて、第二処理ロジック記憶部１５４が記憶した処理ロジックのうち、取得した第二ロジック情報６５１によって示される第二の処理ロジック６５４を取得する。第二処理ロジック実行部１５３は、ＣＰＵ９１１などの処理装置を用いて、取得した第二の処理ロジック６５４を実行する。
【００５５】
第二処理ロジック記憶部１５４は、ＣＰＵ９１１などの処理装置を用いて、第二の処理ロジック６５４を磁気ディスク装置９２０などの記憶装置に記憶する。
【００５６】
なお、第二変更処理部１５１が第二条件情報６５２に含まれる第二の変更条件情報によって示される変更条件を満たすか否かを判断するのではなく、変更監視部１３１が第二条件情報６５２に含まれる第二の変更条件情報によって示される変更条件を満たすか否かを判断し、変更条件を満たす場合に、変更検出通知情報６３１を出力することとしてもよい。
あるいは、変更条件を満たすか否かを判断する処理を、第二処理ロジック記憶部１５４が記憶した第二の処理ロジック６５４のなかに記述しておき、第二処理ロジック実行部１５３が、変更条件を満たすと判断した場合に、第一情報記憶部１６０が記憶した第一の情報６６０を変更することとしてもよい。
【００５７】
また、第二変更処理部１５１が第二ロジック情報６５１を出力するのではなく、第二変更処理部１５１が、第二情報記憶部１２０が記憶した他の第二の情報６２０を直接変更してもよい。
【００５８】
図６は、この実施の形態における第二変更処理部１５１が第二の情報６２０の変更に基づいて他の第二の情報６２０を変更する第二変更処理の流れの一例を示すフローチャート図である。
【００５９】
Ｓ７５１において、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、変更監視部１３１が出力した変更検出通知情報６３１を取得する。
Ｓ７５２において、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７５１で取得した変更検出通知情報６３１を解読し、変更された第二の情報６２０の識別情報を算出する。
【００６０】
Ｓ７５３において、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、変更された第二の情報６２０の種類と、現在の値とを取得する。
すなわち、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７５２で算出した変更された第二の情報６２０を識別する情報を、第二情報記憶部１２０に通知する。
第二情報記憶部１２０は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０を識別する情報を取得し、取得した情報によって識別される第二の情報６２０（その第二の情報６２０の種類を示す情報・その第二の情報６２０の値を示す情報を含む）を、磁気ディスク装置９２０などの記憶装置から取得する。第二情報記憶部１２０は、ＣＰＵ９１１などの処理装置を用いて、取得した第二の情報６２０を、第二変更処理部１５１に通知する。
第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０を取得し、取得した第二の情報６２０を解読して、変更された第二の情報６２０の種類を示す情報と、変更された第二の情報６２０の値とを取得する。
【００６１】
Ｓ７５４において、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７５３で取得した第二の情報６２０の種類についての第二条件情報６５２を取得する。
すなわち、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７５３で取得した第二の情報６２０の種類を示す情報を、第二条件記憶部１５２に通知する。
第二条件記憶部１５２は、ＣＰＵ９１１などの処理装置を用いて、通知された第二の情報６２０の種類を示す情報を取得し、取得した情報によって示される第二の情報６２０の種類についての第二条件情報６５２を、磁気ディスク装置９２０などの記憶装置から取得する。第二条件記憶部１５２は、ＣＰＵ９１１などの処理装置を用いて、取得した第二条件情報６５２を、第二変更処理部１５１に通知する。
第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、通知された第二条件情報６５２を取得する。
【００６２】
Ｓ７５５において、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７５４で取得した第二条件情報６５２を解読して、他の第二の情報６２０を変更するために第二の情報６２０が満たすべき条件である第二の変更条件と、第二の変更条件が満たされた場合に関連する他の第二の情報６２０を変更する処理をする処理ロジックを識別する情報とを算出する。
【００６３】
Ｓ７５６において、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７５３で取得した変更された第二の情報６２０の値に基づいて、Ｓ７５５で算出した第二の変更条件が満たされているか否かを判断する。
満たされていると判断した場合には、Ｓ７５７へ進む。
満たされていないと判断した場合には、第二変更処理を終了する。
【００６４】
Ｓ７５７において、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、変更された第二の情報６２０に関連する他の第二の情報６２０を変更する。
ここでは、第二処理ロジック実行部１５３に他の第二の情報６２０を変更する処理ロジックを実行させることにより、他の第二の情報６２０を変更している。
そのため、第二変更処理部１５１は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７５５で算出した第二処理ロジック実行部１５３が実行すべき処理ロジックを識別する情報と、Ｓ７５２で算出した変更された第二の情報６２０を識別する情報とを、第二処理ロジック実行部１５３に通知する。
【００６５】
なお、変更検出通知情報６３１が、変更された第二の情報６２０の種類を示す情報や変更後の値を示す情報を含む場合には、Ｓ７４３はなくてもよい。
また、Ｓ７５３で、変更された第二の情報６２０に関連する他の第二の情報６２０を識別する情報を取得しておき、Ｓ７５７で、変更された第二の情報６２０を識別する情報ではなく、変更された第二の情報６２０に関連する他の第二の情報６２０を識別する情報を、第二処理ロジック実行部１５３に通知してもよい。
また、Ｓ７５７で、第二処理ロジック実行部１５３に処理ロジックを実行させるのではなく、第二変更処理部１５１が他の第二の情報６２０を直接変更してもよい。
【００６６】
図３に戻り、情報管理装置１００の機能ブロックの説明を続ける。
【００６７】
第一情報記憶部１６０は、ＣＰＵ９１１などの処理装置を用いて、第一の情報６６０を磁気ディスク装置９２０などの記憶装置に記憶する。
第一の情報６６０は、アプリケーション実行装置２００が処理を実行するために利用する情報であるから、その内容には様々なものがあるが、少なくとも、その第一の情報６６０を識別する情報と、その第一の情報６６０の値を示す情報とを含む。
【００６８】
アプリケーション実行装置２００は、ＣＰＵ９１１などの処理装置を用いて、磁気ディスク装置９２０などの記憶装置に記憶したアプリケーションプログラムを実行する。
アプリケーション実行装置２００が実行するアプリケーションプログラムは、情報管理装置１００の第一情報記憶部１６０が記憶した第一の情報６６０を利用するプログラムである。
【００６９】
アプリケーション実行装置２００が実行するアプリケーションプログラムは、第一の情報６６０を利用して処理をするが、第一の情報６６０に関連する第二の情報６２０は考慮しない。
その理由としては、例えば、第一の情報６６０と第二の情報６２０との関連は、システムの運用によって変化する可能性があり、アプリケーション実行装置２００が実行するアプリケーションプログラムが第二の情報６２０まで考慮した処理をすると、システムの運用を変えることができず、弾力性が失われてしまう場合がある。
あるいは、システム全体が非常に複雑に関連した処理をするため、第一の情報６６０に関連した第二の情報６２０すべてを考慮に入れると、アプリケーションプログラムが非常に複雑になってしまい、製造コスト・保守コストが高くなってしまう場合がある。
また、第一の情報６６０だけを利用した単純な処理をするアプリケーションプログラムが既に存在し、既存のアプリケーションプログラムを利用したい場合もある。
【００７０】
このように、様々な理由から、アプリケーション実行装置２００が実行するアプリケーションプログラムは、第一の情報６６０に関連する第二の情報６２０を考慮しない。
【００７１】
この実施の形態における情報管理装置１００は、第二の情報６２０が変更された場合、変更された第二の情報６２０に関連する第一の情報６６０を自動的に変更する。したがって、第二の情報６２０が変更された場合に、変更された第二の情報６２０に関連する第一の情報６６０を手動で変更する必要がない。これにより、システム運用のコストを削減することができるとともに、入力漏れ・入力ミスなどによる誤動作を防ぐことができる。
【００７２】
また、第二の情報６２０同士が互いに関連を有している場合には、１つの第二の情報６２０が変更されると、それと整合を取るためには、他の多数の第二の情報６２０を変更しなければならない場合がある。多数の第二の情報６２０を変更すれば、それに関連する多数の第一の情報６６０も変更する必要がある。
【００７３】
この実施の形態における情報管理装置１００は、第二の情報６２０が変更された場合、変更された第二の情報６２０に関連する他の第二の情報６２０を自動的に変更する。したがって、第二の情報６２０が変更された場合に、変更された第二の情報６２０に関連する他の第二の情報６２０を手動で変更する必要がない。これにより、システム運用のコストを削減することができるとともに、入力漏れ・入力ミスなどによる誤動作を防ぐことができる。
【００７４】
この実施の形態における情報管理装置１００は、情報を記憶する磁気ディスク装置９２０などの記憶装置と、情報を処理するＣＰＵ９１１などの処理装置と、アプリケーション実行装置２００が利用する情報である第一の情報６６０を磁気ディスク装置９２０などの記憶装置に記憶する第一情報記憶部１６０と、第一情報記憶部１６０が記憶した第一の情報６６０に関連する情報である第二の情報６２０を、磁気ディスク装置９２０などの記憶装置に記憶する第二情報記憶部１２０と、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、第一情報記憶部１６０が記憶した第一の情報６６０のうち、変更された第二の情報６２０に関連する第一の情報６６０を変更する第一変更処理部１４１と、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更された第二の情報６２０に関連する他の第二の情報６２０を変更する第二変更処理部１５１とを有することを特徴とする。
【００７５】
この実施の形態における情報管理装置１００によれば、第二の情報６２０が変更された場合に、第一変更処理部１４１が、変更された第二の情報６２０に関連する第一の情報６６０を変更するので、アプリケーション実行装置２００は、第二の情報６２０のことを考慮せず、第一の情報６６０だけに基づいて処理を実行することができるという効果を奏する。
これにより、アプリケーション実行装置２００が実行するアプリケーションプログラムは、既存のものを利用することができ、システム構築のコストを削減することができるという効果を奏する。
また、第二の情報６２０の変更に伴って、第一の情報６６０を変更する作業を手動で行う必要がなく、システムの運用コストを削減することができ、手作業による間違いの発生を防ぐことができるという効果を奏する。
【００７６】
この実施の形態における情報管理装置１００は、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０が変更されたか否かを監視し、第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、第一変更処理部１４１及び第二変更処理部１５１のうち少なくともいずれかに対して、第二の情報６２０が変更されたことを通知する変更監視部１３１を有することを特徴とする。
【００７７】
この実施の形態における情報管理装置１００によれば、変更監視部１３１が、第二の情報６２０が変更されたか否かを監視するので、第二の情報６２０が変更されたことを検出することができるという効果を奏する。
また、変更監視部１３１が、第二の情報６２０が変更されたことを検出した場合に、第一変更処理部１４１及び第二変更処理部１５１のうち少なくともいずれかに対して、第二の情報６２０が変更されたことを通知するので、第一変更処理部１４１及び第二変更処理部１５１のうち少なくともいずれかが、関連する第一の情報６６０及び他の第二の情報６２０のうち少なくともいずれかを変更することができるという効果を奏する。
【００７８】
この実施の形態における情報管理装置１００は、第一情報記憶部１６０が記憶した第一の情報６６０のうち、変更された第二の情報６２０に関連する第一の情報６６０を変更する処理を記述したプログラムである第一の処理ロジック６４４を、磁気ディスク装置９２０などの記憶装置に記憶する第一処理ロジック記憶部１４４と、ＣＰＵ９１１などの処理装置を用いて、第一処理ロジック記憶部１４４が記憶した第一の処理ロジック６４４のうち、第一変更処理部１４１から通知された情報によって示される第一の処理ロジック６４４を実行する第一処理ロジック実行部１４３とを有し、第一変更処理部１４１は、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、第一処理ロジック記憶部１４４が記憶した第一の処理ロジック６４４のうち、変更された第二の情報６２０に関連する第一の処理ロジック６４４を示す情報を第一処理ロジック実行部１４３に通知することを特徴とする。
【００７９】
この実施の形態における情報管理装置１００によれば、第二の情報６２０が変更された場合に、第一変更処理部１４１が、変更された第二の情報６２０に関連する第一の処理ロジック６４４を示す情報を第一処理ロジック実行部１４３に通知し、第一処理ロジック実行部１４３が通知された情報によって示される第一の処理ロジック６４４を実行することにより、変更された第二の情報６２０に関連する第一の情報６６０を変更するので、第一処理ロジック記憶部１４４が記憶した第一の処理ロジック６４４を変えるだけで、第一の情報６６０と第二の情報６２０との関連づけを変えることができ、システム運用を柔軟に変化させることができるという効果を奏する。
【００８０】
この実施の形態における情報管理装置１００は、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更された第二の情報６２０に関連する他の第二の情報６２０を変更する処理を記述したプログラムである第二の処理ロジック６５４を、磁気ディスク装置９２０などの記憶装置に記憶する第二処理ロジック記憶部１５４と、ＣＰＵ９１１などの処理装置を用いて、第二処理ロジック記憶部１５４が記憶した第二の処理ロジック６５４のうち、第二変更処理部１５１から通知された情報によって示される第二の処理ロジック６５４を実行する第二処理ロジック実行部１５３とを有し、第二変更処理部１５１は、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、第二処理ロジック記憶部１５４が記憶した第二の処理ロジック６５４のうち、変更された第二の情報６２０に関連する第二の処理ロジック６５４を示す情報を第二処理ロジック実行部１５３に通知することを特徴とする。
【００８１】
この実施の形態における情報管理装置１００によれば、第二の情報６２０が変更された場合に、第二変更処理部１５１が、変更された第二の情報６２０に関連する第二の処理ロジック６５４を示す情報を第二処理ロジック実行部１５３に通知し、第二処理ロジック実行部１５３が通知された情報によって示される第二の処理ロジック６５４を実行することにより、変更された第二の情報６２０に関連する他の第二の情報６２０を変更するので、第二処理ロジック記憶部１５４が記憶した第二の処理ロジック６５４を変えるだけで、第二の情報６２０と他の第二の情報６２０との関連づけをかえることができ、システム運用を柔軟に変化させることができるという効果を奏する。
【００８２】
この実施の形態における情報管理装置１００は、第二情報記憶部１２０が記憶した第二の情報６２０が満たすべき条件を示す情報である第一の変更条件情報と、第一の変更条件情報によって示される条件が満たされた場合に、第一情報記憶部１６０が記憶した第一の情報６６０を変更すべき値を示す情報である第一の変更値情報とを対応づけて、第一条件情報６４２として、磁気ディスク装置９２０などの記憶装置に記憶する第一条件記憶部１４２を有し、第一変更処理部１４１は、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０が、第一条件記憶部１４２が記憶した第一の変更条件情報を満たすか否かを判断し、条件を満たすと判断した場合に、ＣＰＵ９１１などの処理装置を用いて、第一情報記憶部１６０が記憶した第一の情報６６０を、第一条件記憶部１４２が記憶した第一の変更値情報によって示される値に変更することを特徴とする。
【００８３】
この実施の形態における情報管理装置１００によれば、第二の情報６２０が変更された場合に、第一変更処理部１４１が、第一の変更条件情報によって示される条件を満たすか否かを判断し、条件を満たす場合に、第一情報記憶部１６０が記憶した第一の情報６６０を変更するので、第一条件記憶部１４２が記憶した第一条件情報６４２を変えるだけで、第二の情報６２０が変更されたことに起因して変更すべき第一の情報６６０を変えることができ、システム運用を柔軟に変化させることができるという効果を奏する。
【００８４】
この実施の形態における情報管理装置１００は、第二情報記憶部１２０が記憶した第二の情報６２０が満たすべき条件を示す情報である第二の変更条件情報と、第二の変更条件情報によって示される条件が満たされた場合に、第二情報記憶部１２０が記憶した他の第二の情報６２０を変更すべき値を示す情報である第二の変更値情報とを対応づけて、第二条件情報６５２として、磁気ディスク装置９２０などの記憶装置に記憶する第二条件記憶部１５２を有し、第一変更処理部１４１は、第二情報記憶部１２０が記憶した第二の情報６２０が、第二条件記憶部１５２が記憶した第二の変更条件情報によって示される条件を満たすか否かを判断し、条件を満たすと判断した場合に、ＣＰＵ９１１などの処理装置を用いて、第二の情報６２０が記憶した他の第二の情報６２０を、第二条件記憶部１５２が記憶した第二の変更値情報によって示される値に変更することを特徴とする。
【００８５】
この実施の形態における情報管理装置１００によれば、第二の情報６２０が変更された場合に、第二変更処理部１５１が、第二の変更条件情報によって示される条件を満たすか否かを判断し、条件を満たす場合に、第二情報記憶部１２０が記憶した他の第二の情報６２０を変更するので、第二条件記憶部１５２が記憶した第二条件情報６５２を変えるだけで、第二の情報６２０が変更されたことに起因して変更すべき他の第二の情報６２０を変えることができ、システム運用を柔軟に変化させることができるという効果を奏する。
【００８６】
この実施の形態における情報管理装置１００は、第二変更処理部１５１が、変更された第二の情報６２０に関連する他の第二の情報６２０を変更したことに起因して、第一変更処理部１４１及び第二変更処理部１５１のうち少なくともいずれかが、変更された他の第二の情報６２０に関連する第一の情報６６０及び更に他の第二の情報６２０のうち少なくともいずれかを変更することを特徴とする。
【００８７】
この実施の形態における情報管理装置１００によれば、第二の情報６２０が変更されたことに起因して、変更された第二の情報６２０に関連する第一の情報６６０や他の第二の情報６２０を変更するだけでなく、更に、変更された他の第二の情報６２０に関連する第一の情報６６０や更に他の第二の情報６２０を変更するので、複雑な関連性を有する情報を、システム全体で互いに矛盾しないように、変更することができるという効果を奏する。
これにより、第二の情報６２０の変更に伴って、第一の情報６６０や他の第二の情報６２０を手動で変更する必要がなく、手作業による間違いや入力もれを防ぐことができるという効果を奏する。
【００８８】
このように、この実施の形態における情報管理装置１００は、第二の情報６２０を１つ変更すると、変更された第二の情報６２０に関連する他の第二の情報６２０を変更し、更に、変更された他の第二の情報６２０に関連する更に他の第二の情報６２０を変更し、更に、それに関連する更に更に他の第二の情報６２０を変更し、ということを連鎖的に行う。
これにより、多数の第二の情報６２０が互いに複雑に関連している場合であっても、全体としての整合性を保つことができる。
【００８９】
図７は、この実施の形態における情報管理装置１００が、第一の情報６６０及び第二の情報６２０を連鎖的に変更する様子の一例を示す模式図である。
【００９０】
Ｐ１において、変更指示入力部１１１が出力した変更指示情報６１１に基づいて、第二情報変更部１１２が第二の情報６２０ａを変更する。
【００９１】
第二の情報６２０ａが変更されたので、Ｐ２において、第一変更処理部１４１が第二の情報６２０ａに関連する第一の情報６６０ａを変更する。また、Ｐ３において、第二変更処理部１５１が第二の情報６２０ａに関連する第二の情報６２０ｂを変更する。
【００９２】
第二の情報６２０ｂが変更されたので、Ｐ４において、第一変更処理部１４１が第二の情報６２０ｂに関連する第一の情報６６０ｂを変更する。また、Ｐ５において、第一変更処理部１４１は、第二の情報６２０ｂに関連する第一の情報６６０ｄも変更する。Ｐ６において、第二変更処理部１５１は、第二の情報６２０ｂに関連する第二の情報６２０ｃを変更する。
このように、１つの第二の情報６２０の変更に伴って、第一変更処理部１４１が変更する第一の情報６６０が２以上あってもよい。
【００９３】
第二の情報６２０ｃが変更されたので、Ｐ７において、第一変更処理部１４１が第二の情報６２０ｃに関連する第一の情報６６０ｃを変更する。また、Ｐ８において、第二変更処理部１５１が第二の情報６２０ｃに関連する第二の情報６２０ｃを変更する。Ｐ９において、第二変更処理部１５１は、第二の情報６２０ｃに関連する第二の情報６２０ａも変更する。
このように、１つの第二の情報６２０の変更に伴って、第二変更処理部１５１が変更する第二の情報６２０が２以上あってもよい。
【００９４】
このようにして、第二の情報６２０を１つ変更したことに伴って、それに関連するすべての情報が変更され、システム全体として情報の整合性を保つことができる。
【００９５】
なお、このように複雑な関連性を有する第二の情報６２０を連鎖的に変更すると、Ｐ９のようにループして元に戻ってくる場合がある。
変更条件情報や処理ロジックが矛盾なく記述されている場合には、Ｐ９において第二変更処理部１５１が変更しようとする第二の情報６２０ａの変更後の値は、Ｐ１において第二情報変更部１１２が変更した第二の情報６２０ａの値（すなわち、Ｐ９における変更前の値）と等しいはずである。
【００９６】
変更後の値と変更前の値とが等しい場合には、変更監視部１３１が変更検出通知情報６３１を出力しない構成としておけば、このようなループがある場合であっても、そこで処理が終了し、無限に変更を繰り返すことがないので、好ましい。
【００９７】
あるいは、変更条件情報や処理ロジックが矛盾なく記述されている場合であっても、Ｐ９において第二変更処理部１５１変更しようとする第二の情報６２０ａの変更後の値と、変更前の値とが等しくない場合もある。例えば、フィードバックによって最適値に収束するようにシステムが設計されている場合などである。
【００９８】
そのような場合には、ループを検出する手段を設け、所定の回数以内であればループ処理を認め、所定の回数を超えても変更前の値と変更後の値とが等しくならない場合には、処理を中断する構成とすれば、なんらかの異常により値が収束しなかった場合であっても、無限に変更を繰り返すことがなく、好ましい。
例えば、第二情報変更部１１２が第二の情報６２０を変更して、連鎖的な変更が始まった場合、それぞれの第二の情報６２０の変更回数を０として、磁気ディスク装置９２０などの記憶装置に記憶しておき、第二変更処理部１５１が第二の情報６２０を変更するたびに、変更した第二の情報６２０に対応する変更回数を１つずつ増やす。増やした変更回数を所定の値と比較して、変更回数が所定の値を超えた場合には、その時点で処理を中断する。
なお、第二情報変更部１１２が変更指示情報６１１を入力しても、以前の変更に基づく処理が収束するまでは、第二の情報６２０を変更しないよう構成しておけば、１つの変更に伴う繰り返しなのか、新たな外部からの変更によるものなのかを区別することができる。
【００９９】
この実施の形態における情報管理装置１００は、情報を入力するキーボード９０２などの入力装置と、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０の変更を指示する情報である変更指示情報６１１をキーボード９０２などの入力装置から入力する変更指示入力部１１１と、ＣＰＵ９１１などの処理装置を用いて、変更指示入力部１１１が入力した変更指示情報６１１に基づいて、第二情報記憶部１２０が記憶した第二の情報６２０を変更する第二情報変更部１１２とを有することを特徴とする。
【０１００】
この実施の形態における情報管理装置１００によれば、ユーザがキーボード９０２を操作して、第二の情報６２０を変更する指示を入力し、情報管理装置１００が、変更を指示された第二の情報６２０だけでなく、それに関連する第一の情報６６０及び第二の情報６２０を変更して、全体としての整合性を保つことができるという効果を奏する。
【０１０１】
この実施の形態における情報管理装置１００は、第二情報記憶部１２０が記憶した第二の情報６２０の変更前の値と、第二の情報６２０の値が変更前の値である場合に第二の情報６２０を変更する変更後の値とが満たすべき条件を示す情報である遷移条件情報６１３を磁気ディスク装置９２０などの記憶装置に記憶する遷移条件記憶部１１３を有し、第二情報変更部１１２は、ＣＰＵ９１１などの処理装置を用いて、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更指示入力部１１１が入力した変更指示情報６１１に基づいて変更すべき第二の情報６２０の変更前の値を取得し、取得した第二の情報６２０の変更前の値と、変更指示情報６１１によって示される変更後の値とが、遷移条件記憶部１１３が記憶した遷移条件情報６１３によって示される条件を満たすか否かを判断し、条件を満たすと判断した場合に、変更指示情報６１１に基づいて、第二情報記憶部１２０が記憶した第二の情報６２０を変更することを特徴とする。
【０１０２】
この実施の形態における情報管理装置１００によれば、あらかじめ第二の情報６２０を変更することができる遷移条件を定めておき、変更指示入力部１１１が入力した変更指示情報６１１が遷移条件を満たすか否かを、第二情報変更部１１２が判断して、遷移条件を満たす場合に、第二の情報６２０を変更するので、想定外の変更が第二の情報６２０に加えられることがなく、情報管理装置１００が管理する情報が全体として整合性を保つことができるという効果を奏する。
【０１０３】
なお、遷移条件は、変更しようとする第二の情報６２０についての条件だけでなく、変更しようとする第二の情報６２０に関連する第一の情報６６０や他の第二の情報６２０の値に基づいて判断される条件であってもよい。その場合、遷移条件記憶部１１３が記憶する遷移条件情報６１３は、関連する第一の情報６６０や他の第二の情報６２０の値が満たすべき条件を示す情報を含む。
【０１０４】
この実施の形態における情報管理方法は、情報を記憶する磁気ディスク装置９２０などの記憶装置と、情報を処理するＣＰＵ９１１などの処理装置と、アプリケーション実行装置２００が利用する情報である第一の情報６６０を、磁気ディスク装置９２０などの記憶装置に記憶する第一情報記憶部１６０と、第一情報記憶部１６０が記憶した第一の情報６６０に関連する情報である第二の情報６２０を、磁気ディスク装置９２０などの記憶装置に記憶する第二情報記憶部１２０とを有する情報管理装置１００が情報を管理する情報管理方法において、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置が、第一情報記憶部１６０が記憶した第一の情報６６０のうち、変更された第二の情報６２０に関連する第一の情報６６０を変更する第一変更処理工程と、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、ＣＰＵ９１１などの処理装置が、第二情報記憶部１２０が記憶した第二の情報６２０のうち、変更された第二の情報６２０に関連する他の第二の情報６２０を変更する第二変更処理工程とを有することを特徴とする。
【０１０５】
この実施の形態における情報管理方法によれば、第二情報記憶部１２０が記憶した第二の情報６２０が変更された場合に、第一変更処理工程によって、変更された第二の情報６２０に関連する第一の情報６６０を変更し、第二変更処理工程によって、変更された第二の情報６２０に関連する他の第二の情報６２０を変更するので、互いに関連する情報の整合性を保つことができるという効果を奏する。
【０１０６】
この実施の形態における情報管理装置１００は、コンピュータを、ここで説明した情報管理装置１００として機能させるプログラムを、コンピュータに実行させることにより実現することができる。
【０１０７】
この実施の形態における情報管理プログラムは、コンピュータを、上記説明した情報管理装置１００として機能させることを特徴とする。
【０１０８】
この実施の形態における情報管理プログラムによれば、コンピュータを、互いに関連する情報の整合性を保つ情報管理装置１００として機能させることができるという効果を奏する。
【０１０９】
実施の形態２．
実施の形態２について、図８〜図１８を用いて説明する。
【０１１０】
図８は、この実施の形態におけるアイデンティティ情報同期システム８００の全体構造を概念的に示す概念図である。
アイデンティティ情報同期システム８００は、アイデンティティ情報８６０を管理するシステムである。
アイデンティティ情報同期システム８００は、アイデンティティ情報８６０の同期を行うことにより、アイデンティティ情報８６０の整合性を保つ。
アイデンティティ情報８６０とは、例えば、ユーザやＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カードなどの対象を識別し、認証するための情報である。
アイデンティティ情報８６０は、第一の情報の一例である。
【０１１１】
アイデンティティ情報同期システム８００は、アプリケーション実行装置２００、アイデンティティ情報管理装置３００、アイデンティティ情報記憶装置４００を有する。
アプリケーション実行装置２００及びアイデンティティ情報管理装置３００及びアイデンティティ情報記憶装置４００の外観及びハードウェア資源の構成は、実施の形態１で説明した情報管理装置１００及びアプリケーション実行装置２００と同様なので、ここでは説明を省略する。
【０１１２】
アプリケーション実行装置２００は、ＣＰＵ９１１などの処理装置を用いて、例えば、ユーザ認証システムの処理をするアプリケーションプログラムを実行する装置である。
アプリケーション実行装置２００は、アイデンティティ情報８６０を用いて業務を行う。
アプリケーション実行装置２００は１つに限らず、２以上であってもよい。その場合、複数のアプリケーション実行装置２００が、１つのアイデンティティ情報８６０を共用してもよいし、複数のアプリケーション実行装置２００が、それぞれ異なるアイデンティティ情報８６０を利用してもよい。
【０１１３】
アイデンティティ情報記憶装置４００は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報８６０を磁気ディスク装置９２０などの記憶装置に記憶する。
アイデンティティ情報記憶装置４００は、第一情報記憶部の一例である。
アイデンティティ情報記憶装置４００は１つに限らず、２以上であってもよい。その場合、アイデンティティ情報８６０の種類ごとに、異なるアイデンティティ情報記憶装置４００が記憶してもよいし、アイデンティティ情報８６０を利用するアプリケーション実行装置２００ごとに、異なるアイデンティティ情報記憶装置４００が記憶してもよい。
【０１１４】
アイデンティティ情報管理装置３００は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報８６０の同期を行う。
アイデンティティ情報管理装置３００は、入力部３２０、状態変更処理部３２１、処理フロー定義情報記憶部３２２、状態記憶部３２３、状態監視部３３０、アイデンティティ情報変更処理部３３１、状態同期処理部３４０、同期定義情報記憶部３４１を有する。
【０１１５】
処理フロー定義情報記憶部３２２は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報の種類ごとに設定される処理フロー定義情報８２２を、磁気ディスク装置９２０などの記憶装置に記憶する。
ここで、処理フロー定義情報８２２とは、各アイデンティティ情報によって識別される対象の状態の遷移順序を示す情報である。
処理フロー定義情報８２２は、遷移条件情報の一例である。処理フロー定義情報記憶部３２２は、遷移条件情報を記憶する遷移条件記憶部の一例である。
【０１１６】
図９は、この実施の形態における処理フロー定義情報記憶部３２２が記憶する処理フロー定義情報８２２によって定義される状態遷移順序を視覚的に表現した模式図である。
なお、処理フロー定義情報記憶部３２２が記憶する処理フロー定義情報８２２のデータ構造は、表形式、データベース形式、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などによるテキスト形式などのデータ構造であってもよい。
【０１１７】
この例では、「従業員」という種類に属するアイデンティティ情報について、「常勤」「出向」「退職」という３つの状態がある。
例えば、「常勤」は、そのアイデンティティ情報によって識別される従業員が本社勤務であることを示し、「出向」は、その従業員が子会社などに出向中であることを示し、「退職」は、その従業員が退職した（退職処理中のため、まだアイデンティティ情報が削除されていない状態）ことを示す。
【０１１８】
「従業員」という種類のアイデンティティ情報を登録した場合、状態の初期値は「常勤」となる。
「従業員」の状態が「常勤」である場合、「出向」あるいは「退職」へ遷移することができる。
「従業員」の状態が「出向」である場合、「常勤」へ遷移することはできるが、「退職」へ遷移することはできない。
「従業員」の状態が「退職」である場合、「常勤」にも「出向」にも遷移することはできない。
【０１１９】
この例は、従業員が出向中に退職した場合であっても、一旦本社に戻してから退職処理をするという組織の運用実態を反映したものとなっている。
【０１２０】
同様に、「ＩＣカード」という種類に属するアイデンティティ情報については、「利用可能」「紛失」「停止」「削除」という４つの状態がある。
例えば、「利用可能」は、そのアイデンティティ情報によって識別されるＩＣカードが有効に利用できることを示し、「紛失」は、そのＩＣカードを所有者が紛失したため、一時的に利用を停止していることを示し、「停止」は、そのＩＣカードの所有者が出向中であるなどの理由で、一時的に利用を停止していることを示し、「削除」は、そのＩＣカードを抹消するための処理中であることを示す。
【０１２１】
「ＩＣカード」という種類のアイデンティティ情報を登録した場合、状態の初期値は「利用可能」である。
「ＩＣカード」の状態が「利用可能」である場合、「紛失」あるいは「停止」へ遷移することができるが、「削除」へ遷移することはできない。
「ＩＣカード」の状態が「紛失」である場合、「利用可能」あるいは「削除」へ遷移することができるが、「停止」へ遷移することはできない。
「ＩＣカード」の状態が「停止」である場合、「利用可能」あるいは「削除」へ遷移することができるが、「紛失」へ遷移することはできない。
「ＩＣカード」の状態が「削除」である場合、「利用可能」にも「紛失」にも「停止」にも遷移することはできない。
【０１２２】
アイデンティティ情報の状態の遷移条件は、システムの運用によって変化する可能性がある。処理フロー定義情報記憶部３２２が記憶した処理フロー定義情報８２２を書き換えることにより、アイデンティティ情報の状態の遷移条件が変化した場合に対処することができる。
【０１２３】
また、「従業員」の状態が「出向」になった場合には、その従業員の「ＩＣカード」の状態を「停止」にするなど、異なる種類のアイデンティティ情報の間で、状態をリンクさせ、整合を取る必要がある場合がある。
【０１２４】
図８に戻り、アイデンティティ情報管理装置３００についての説明を続ける。
【０１２５】
状態記憶部３２３は、ＣＰＵ９１１などの処理装置を用いて、状態情報８２３を、磁気ディスク装置９２０などの記憶装置に記憶する。
状態情報８２３は、対応するアイデンティティ情報８６０によって識別される対象の状態を示す情報である。
状態情報８２３は、第一の情報（アイデンティティ情報８６０）に関連する情報である第二の情報の一例である。状態記憶部３２３は、第二の情報を記憶する第二情報記憶部の一例である。
【０１２６】
図１０は、この実施の形態における状態記憶部３２３が記憶する状態情報８２３の一例を示す図である。
なお、この図では、状態情報８２３のデータ構造が表形式となっているが、これは理解を容易にするためであり、表形式に限らず、データベース形式やテキスト形式であってもよい。
状態情報８２３は、アイデンティティ識別情報８７１、アイデンティティ種類情報８７２、アイデンティティ状態情報８７３、その他の情報などを含む。
【０１２７】
アイデンティティ識別情報８７１は、状態情報８２３が対応するアイデンティティ情報８６０を識別する情報である。この例では、アイデンティティ情報８６０もアイデンティティ識別情報８７１を有し、状態情報８２３は、同一のアイデンティティ識別情報８７１を有しているアイデンティティ情報８６０に対応する。アイデンティティ識別情報８７１は、第二の情報が関連する第一の情報を識別する情報の一例である。
アイデンティティ種類情報８７２は、状態情報８２３が対応するアイデンティティ情報８６０の種類を示す情報である。アイデンティティ種類情報８７２は、第二の情報が関連する第一の情報の種類を示す情報の一例である。
アイデンティティ状態情報８７３は、状態情報８２３が対応するアイデンティティ情報８６０によって識別される対象の状態を示す情報である。アイデンティティ状態情報８７３は、第二の情報の値を示す情報の一例である。
【０１２８】
この例では、「ｕｓｅｒ００１」というアイデンティティ識別情報８７１によって識別されるアイデンティティ情報８６０の種類は「従業員」であり、そのアイデンティティ情報８６０によって識別される従業員は、「常勤」状態であることを示している。
「ｕｓｅｒ００２」というアイデンティティ識別情報８７１によって識別されるアイデンティティ情報８６０の種類は「従業員」であり、そのアイデンティティ情報８６０によって識別される従業員は、「出向」状態であることを示している。
「ｃａｒｄ００１」というアイデンティティ識別情報８７１によって識別されるアイデンティティ情報８６０の種類は「ＩＣカード」であり、そのアイデンティティ情報８６０によって識別されるＩＣカードは、「利用可能」状態であることを示している。
また、「ｃａｒｄ００２」というアイデンティティ識別情報８７１によって識別されるアイデンティティ情報８６０の種類は「ＩＣカード」であり、そのアイデンティティ情報８６０によって識別されるＩＣカードは、「紛失」状態であることを示している。
【０１２９】
図１１は、この実施の形態におけるアイデンティティ情報記憶装置４００が記憶するアイデンティティ情報８６０の一例を示す図である。
なお、この図では、アイデンティティ情報８６０のデータ構造が表形式となっているが、これは理解を容易にするためであり、表形式に限らず、データベース形式やテキスト形式であってもよい。
【０１３０】
アイデンティティ情報記憶装置４００は、「従業員」についてのアイデンティティ情報８６０を含むアイデンティティ情報ファイル８６１ａと、「ＩＣカード」についてのアイデンティティ情報８６０を含むアイデンティティ情報ファイル８６１ｂとを記憶している。
なお、この例では、１つのアイデンティティ情報記憶装置４００が、アイデンティティ情報８６０の種類ごとに異なるファイルとして、アイデンティティ情報８６０を記憶しているが、アイデンティティ情報８６０の種類ごとに異なるアイデンティティ情報記憶装置４００がアイデンティティ情報８６０を記憶してもよい。あるいは、アイデンティティ情報８６０の種類を示すアイデンティティ種類情報を格納するフィールドを設け、アイデンティティ情報記憶装置４００が、１つのファイルとして、アイデンティティ情報８６０を記憶してもよい。また、ファイル形式に限らず、他の形式で、アイデンティティ情報８６０を記憶してもよい。
【０１３１】
アイデンティティ情報ファイル８６１ａに含まれるアイデンティティ情報８６０は、アイデンティティ識別情報８７１、従業員氏名情報８６２、従業員所属情報８６３、従業員役職情報８６４、アイデンティティ有効性情報８６５、その他の情報などを含む。
また、アイデンティティ情報ファイル８６１ｂに含まれるアイデンティティ情報８６０は、アイデンティティ識別情報８７１、カード区分情報８６６、カード所有者情報８６７、アイデンティティ有効性情報８６５、その他の情報などを含む。
【０１３２】
アイデンティティ識別情報８７１は、そのアイデンティティ情報８６０を識別する情報である。アイデンティティ識別情報８７１は、状態情報８２３や他のアイデンティティ情報８６０において、そのアイデンティティ情報８６０を参照するために用いられる。アイデンティティ識別情報８７１は、第一の情報を識別する情報の一例である。
従業員氏名情報８６２は、そのアイデンティティ情報８６０によって識別される従業員の氏名を示す情報である。
従業員所属情報８６３は、そのアイデンティティ情報８６０によって識別される従業員の所属組織を示す情報である。
従業員役職情報８６４は、そのアイデンティティ情報８６０によって識別される従業員の役職を示す情報である。
アイデンティティ有効性情報８６５は、そのアイデンティティ情報８６０が有効か無効かを示す情報である。アイデンティティ有効性情報８６５は、第一の情報の値を示す情報の一例である。
例えば、そのアイデンティティ情報８６０によって識別される従業員が、「出向」あるいは「退職」状態である場合や、そのアイデンティティ情報８６０によって識別されるＩＣカードが「紛失」あるいは「停止」状態である場合に、そのアイデンティティ情報８６０は「無効」とする。これにより、そのアイデンティティ情報８６０を使って、従業員の認証をすることができなくなる。
カード区分情報８６６は、そのアイデンティティ情報８６０によって識別されるＩＣカードの区分を示す情報である。
カード所有者情報８６７は、そのアイデンティティ情報８６０によって識別されるＩＣカードの所有者を示す情報である。この例では、ＩＣカードの所有者を識別するアイデンティティ情報８６０のアイデンティティ識別情報８７１を、カード所有者情報８６７として使用しているが、例えば、ＩＣカードの所有者の氏名を示す従業員氏名情報８６２を、カード所有者情報８６７として使用してもよい。カード所有者情報８６７は、第一の情報が関連する他の第一の情報を識別する情報の一例である。
【０１３３】
この例では、「ｕｓｅｒ００１」というアイデンティティ識別情報８７１によって識別される従業員「山田太郎」は「開発部」に所属し、役職は「担当」である。ここで、図１０に示した状態情報８２３を参照すると、「ｕｓｅｒ００１」というアイデンティティ識別情報８７１によって識別される従業員「山田太郎」は「常勤」状態である。したがって、このアイデンティティ情報８６０は「有効」である。
また、「ｕｓｅｒ００２」というアイデンティティ識別情報８７１によって識別される従業員「岡本次郎」は「総務部」に所属し、役職は「主任」である。ここで、図１０に示した状態情報８２３を参照すると、「ｕｓｅｒ００２」というアイデンティティ識別情報８７１によって識別される従業員「岡本次郎」は「出向」状態である。したがって、このアイデンティティ情報８６０は「無効」である。
【０１３４】
「ｃａｒｄ００１」というアイデンティティ識別情報８７１によって識別されるＩＣカードは「本人カード」であり、所有者は「ｕｓｅｒ００１」というアイデンティティ識別情報８７１によって識別される従業員「山田太郎」である。図１０に示した状態情報８２３を参照すると、「ｃａｒｄ００１」というアイデンティティ識別情報８７１によって識別されるＩＣカードは「利用可能」状態である。したがって、このアイデンティティ情報８６０は「有効」である。
「ｃａｒｄ００２」というアイデンティティ識別情報８７１によって識別されるＩＣカードは「本人カード」であり、所有者は「ｕｓｅｒ００２」というアイデンティティ識別情報８７１によって識別される従業員「岡本次郎」である。図１０に示した状態情報８２３を参照すると、「ｃａｒｄ００２」というアイデンティティ識別情報８７１によって識別されるＩＣカードは「停止」状態である。したがって、このアイデンティティ情報８６０は「無効」である。
「ｃａｒｄ００３」というアイデンティティ識別情報８７１によって識別されるＩＣカードは「予備カード」であり、所有者がいない。したがって、このアイデンティティ情報８６０は「無効」である。
【０１３５】
ここで、「ｃａｒｄ００２」というアイデンティティ識別情報８７１によって識別されるＩＣカードが「停止」状態であるのは、その所有者である「岡本次郎」が「出向」状態だからである。
【０１３６】
もし、「岡本次郎」が出向から戻ってきて「常勤」状態となったら、「岡本次郎」を識別するアイデンティティ情報８６０「ｕｓｅｒ００２」のアイデンティティ有効性情報８６５を「有効」にするだけでなく、「岡本次郎」所有のＩＣカードを識別するアイデンティティ情報８６０「ｃａｒｄ００２」のアイデンティティ有効性情報８６５も「有効」にしなければならない。
また、「山田太郎」がＩＣカードを紛失し、「ｃａｒｄ００１」が「紛失」状態となったら、アイデンティティ情報８６０「ｃａｒｄ００１」のアイデンティティ有効性情報８６５を「無効」にしなければならない。紛失したカードの代わりに「山田太郎」に予備カード「ｃａｒｄ００３」を使わせる場合には、アイデンティティ情報８６０「ｃａｒｄ００３」のアイデンティティ有効性情報８６５を「有効」にしなければならない。
【０１３７】
このように、アイデンティティ情報８６０は互いに複雑な関連を有している場合が多く、１つのアイデンティティ情報８６０の状態が変わると、それに関連する多数のアイデンティティ情報８６０を変更する必要が生じる。
【０１３８】
図８に戻り、アイデンティティ情報管理装置３００についての説明を続ける。
【０１３９】
入力部３２０は、アイデンティティ情報８６０によって識別される対象の状態が変化した場合に、状態記憶部３２３が記憶した状態情報８２３を変更するよう指示する情報を、ＣＰＵ９１１などの処理装置を用いて、キーボード９０２、マウス９０３、ボタンなどの入力装置から入力する。入力部３２０は、変更指示入力部１１１の一例である。
入力部３２０は、操作者と対話するため、ＣＲＴなどの表示装置９０１やその他の出力装置に、状態記憶部３２３が記憶した状態情報８２３によって示される状態など、必要な情報を表示・出力してもよい。入力部３２０は、例えば、Ｗｅｂ（ウェブ）ブラウザなどにより構成してもよい。
入力部３２０は、操作者の指示に基づいて、変更指示情報６１１を出力する。変更指示情報６１１は、状態記憶部３２３が記憶した状態情報８２３の変更を指示する情報である。入力部３２０が出力した変更指示情報６１１は、状態変更処理部３２１に入力される。
【０１４０】
状態変更処理部３２１は、変更指示情報６１１を入力すると、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３を変更する。状態変更処理部３２１は、第二情報変更部の一例である。
【０１４１】
状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、入力部３２０が出力した変更指示情報６１１を入力する。
状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３のなかから、入力した変更指示情報６１１による変更指示に該当するアイデンティティの状態情報８２３のアイデンティティ種類情報８７２及びアイデンティティ状態情報８７３を取得する。
次に、状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、変更指示に該当するアイデンティティの状態情報８２３について、取得したアイデンティティ種類情報８７２に該当する処理フロー定義情報８２２を、処理フロー定義情報記憶部３２２が記憶した処理フロー定義情報８２２のなかから取得する。
状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、取得した処理フロー定義情報８２２によって定義されている状態遷移順序にしたがって、状態記憶部３２３が記憶した状態情報８２３を書き換える。
すなわち、状態変更処理部３２１は、取得したアイデンティティ状態情報８７３と、変更指示情報６１１による変更指示が指示している変更後の値とが、取得した処理フロー定義情報８２２によって示される遷移条件を満たすか否かを判断する。遷移条件を満たすと判断した場合には、状態変更処理部３２１は、状態記憶部３２３が記憶した状態情報８２３のアイデンティティ状態情報８７３を変更する。遷移条件を満たさないと判断した場合には、状態変更処理部３２１は、状態情報８２３を変更せず、入力部３２０に対してエラーを通知するなどの例外処理をする。
【０１４２】
状態監視部３３０は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３の変更を監視する。状態監視部３３０は、変更監視部の一例である。
状態記憶部３２３が記憶した状態情報８２３が変更された場合、状態監視部３３０がその内容を検知する。
状態監視部３３０は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３のなかから、変更された状態情報８２３のアイデンティティ種類情報８７２及び変更されたアイデンティティ状態情報８７３を取得する。
状態監視部３３０は、ＣＰＵ９１１などの処理装置を用いて、取得したアイデンティティ種類情報８７２によって示される種類及びアイデンティティ状態情報８７３によって示される状態に対応するアイデンティティ情報変更処理部３３１を呼び出す。
【０１４３】
アイデンティティ情報変更処理部３３１は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０を変更する。
すなわち、アイデンティティ情報変更処理部３３１は、まず、ＣＰＵ９１１などの処理装置を用いて、変更された状態情報８２３のアイデンティティ識別情報８７１を取得する。次に、アイデンティティ情報変更処理部３３１は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０のなかから、取得したアイデンティティ識別情報８７１と同じアイデンティティ識別情報８７１を有するアイデンティティ情報８６０を取得する。アイデンティティ情報変更処理部３３１は、ＣＰＵ９１１などの処理装置を用いて、取得したアイデンティティ情報８６０を書き換え、アイデンティティ情報記憶装置４００に記憶させる。
アイデンティティ情報変更処理部３３１は、第一変更処理部の一例である。
【０１４４】
この例では、アイデンティティ情報８６０の種類ごと、変更後のアイデンティティ状態情報８７３が示す状態ごとに、異なるアイデンティティ情報変更処理部３３１がある。状態監視部３３０が、ＣＰＵ９１１などの処理装置を用いて種類・状態を判断して、対応するアイデンティティ情報変更処理部３３１を呼び出す。
しかし、例えば、状態監視部３３０が、状態情報８２３のアイデンティティ種類情報８７２及び変更されたアイデンティティ状態情報８７３を、アイデンティティ情報変更処理部３３１に通知して、アイデンティティ情報変更処理部３３１がそれに応じた処理をしてもよい。
【０１４５】
状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３の変更を監視する。
状態記憶部３２３が記憶した状態情報８２３が、同期定義情報記憶部３４１が記憶した同期定義情報８４１によって定義されている条件に合致する状態に変化した場合、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、同期定義情報８４１によって定義されている処理内容にしたがって、他の状態情報８２３を変更する。
状態同期処理部３４０は、第二変更処理部の一例である。
なお、状態同期処理部３４０は状態情報８２３の変更を監視せず、状態情報８２３が変更された場合には、状態監視部３３０から通知を受けることとしてもよい。
【０１４６】
同期定義情報記憶部３４１は、ＣＰＵ９１１などの処理装置を用いて、同期定義情報８４１を磁気ディスク装置９２０などの記憶装置に記憶する。同期定義情報８４１とは、状態記憶部３２３が記憶した状態情報８２３がある条件を満たす場合に、他の状態情報８２３を変更する条件および変更する値を示す情報である。同期定義情報８４１は、第二条件情報の一例である。同期定義情報記憶部３４１は、第二条件情報を記憶する第二条件記憶部の一例である。
【０１４７】
図１２は、この実施の形態における同期定義情報記憶部３４１が記憶する同期定義情報８４１の一例を示す図である。
なお、この図では、同期定義情報８４１のデータ構造が、ＸＭＬ形式のテキストデータである場合を示しているが、これは一例であり、表形式、データベース形式など、他の形式のデータ構造であってもよい。
【０１４８】
ノード「ＦＵＮＣＴＩＯＮ」は、１つの条件とその条件を満たす場合の処理の組を示す。ノード「ＦＵＮＣＴＩＯＮ」は、子ノードとして、ノード「ＴＲＩＧＧＥＲ」とノード「ＡＣＴＩＯＮ」とを有する。
【０１４９】
ノード「ＴＲＩＧＧＥＲ」は、状態情報８２３が満たすべき条件を示す。ノード「ＴＲＩＧＧＥＲ」は、子ノードとして、ノード「ＴＹＰＥ」とノード「ＳＴＡＴＵＳ」とを有する。
ノード「ＴＹＰＥ」は、状態情報８２３が対応するアイデンティティ情報８６０の種類を示す。ノード「ＴＹＰＥ」は、子ノードとして、テキストノードを有し、テキストノードの内容が、アイデンティティ情報８６０の種類を示す。
ノード「ＳＴＡＴＵＳ」は、状態情報８２３が示すアイデンティティ情報８６０の状態を示す。ノード「ＳＴＡＴＵＳ」は、子ノードとして、テキストノードを有し、テキストノードの内容が、状態情報８２３が示す状態を示す。
すなわち、ノード「ＴＲＩＧＧＥＲ」は、子ノード「ＴＹＰＥ」によって示される種類のアイデンティティ情報８６０に対応する状態情報８２３の状態が、子ノード「ＳＴＡＴＵＳ」によって示される値であることが、他の状態情報８２３を変更する条件となることを示す。
【０１５０】
ノード「ＡＣＴＩＯＮ」は、ノード「ＴＲＩＧＧＥＲ」によって示される条件を満たした場合に、実行すべき処理を示す。ノード「ＡＣＴＩＯＮ」は、子ノードとして、ノード「ＴＹＰＥ」とノード「ＳＴＡＴＵＳ」とを有する。
すなわち、ノード「ＡＣＴＩＯＮ」は、子ノード「ＴＹＰＥ」によって示される種類のアイデンティティ情報８６０に対応する状態情報８２３の状態を、子ノード「ＳＴＡＴＵＳ」によって示される値に変更する処理を示す。
【０１５１】
この例でいえば、第一のノード「ＦＵＮＣＴＩＯＮ」は、種類が「従業員」であるアイデンティティ情報８６０に対応する状態情報８２３のアイデンティティ状態情報８７３が、「出向」を示す値に変更された場合に、種類が「ＩＣカード」であるアイデンティティ情報８６０に対応する状態情報８２３のアイデンティティ状態情報８７３を、「停止」を示す値に変更する処理を行うことを示している。
また、第二のノード「ＦＵＮＣＴＩＯＮ」は、種類が「従業員」であるアイデンティティ情報８６０に対応する状態情報８２３のアイデンティティ状態情報８７３が、「常勤」を示す値に変更された場合に、種類が「ＩＣカード」であるアイデンティティ情報８６０に対応する状態情報８２３のアイデンティティ状態情報８７３を、「利用可能」を示す値に変更する処理を行うことを示している。
【０１５２】
変更された状態情報８２３と、変更する他の状態情報８２３との関係を示す情報は、状態情報８２３のなかに含まれていてもよいし、アイデンティティ情報８６０のなかに含まれていてもよい。この例では、アイデンティティ情報８６０のなかに、「ＩＣカード」の所有者を示すカード所有者情報８６７が含まれており、状態同期処理部３４０は、これを参照することで、変更する他の状態情報８２３を決定する。
【０１５３】
図１３は、この実施の形態における状態同期処理部３４０が状態情報８２３を同期する状態同期処理の流れの一例を示すフローチャート図である。
【０１５４】
Ｓ７７１において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３の変更を検出する。
Ｓ７７２において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３のなかから、Ｓ７７１で変更を検出した状態情報８２３のアイデンティティ種類情報８７２とアイデンティティ状態情報８７３とを取得する。
【０１５５】
Ｓ７７３において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、同期定義情報記憶部３４１が記憶した同期定義情報８４１を取得する。
【０１５６】
Ｓ７７４において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７７３で取得した同期定義情報８４１によって示される同期条件を満たすか否かを判断する。
すなわち、状態同期処理部３４０は、まず、ＣＰＵ９１１などの処理装置を用いて、Ｓ７７３で取得した同期定義情報８４１を解析する。次に、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、ノード「ＴＲＩＧＧＥＲ」の子ノード「ＴＹＰＥ」の内容と、Ｓ７７２で取得したアイデンティティ種類情報８７２とを比較し、同じノード「ＴＲＩＧＧＥＲ」の子ノード「ＳＴＡＴＵＳ」の内容と、Ｓ７７２で取得したアイデンティティ状態情報８７３とを比較する。両方が一致する場合に、状態同期処理部３４０は、同期条件を満たすと判断し、それ以外の場合は同期条件を満たさないと判断する。
同期条件を満たすと判断した場合には、Ｓ７７５へ進む。
同期条件を満たさないと判断した場合には、状態同期処理を終了する。
【０１５７】
Ｓ７７５において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、変更された状態情報８２３に対応するアイデンティティ情報８６０に関連する他のアイデンティティ情報８６０を抽出する。
すなわち、状態同期処理部３４０は、まず、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３のなかから、変更された状態情報８２３のアイデンティティ識別情報８７１を取得する。次に、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０のなかから、取得したアイデンティティ識別情報８７１によって識別されるアイデンティティ情報８６０を取得する。
状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、取得したアイデンティティ情報８６０から、それに関連する他のアイデンティティ情報８６０を求める。
すなわち、状態同期処理部３４０は、まず、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０のなかから、Ｓ７７３で取得した同期定義情報８４１のノード「ＡＣＴＩＯＮ」の子ノード「ＴＹＰＥ」で示される種類のアイデンティティ情報８６０を取得する。ここで、取得したアイデンティティ情報８６０の種類が「ＩＣカード」であるものとする。「ＩＣカード」のアイデンティティ情報８６０には、カード所有者情報８６７が含まれ、アイデンティティ情報８６０同士の関連を示している。
状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、取得したアイデンティティ情報８６０のなかから、カード所有者情報８６７と、変更された状態情報８２３に対応するアイデンティティ情報８６０のアイデンティティ識別情報８７１とが一致するアイデンティティ情報８６０を抽出する。
【０１５８】
Ｓ７７６において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７７５で抽出した他のアイデンティティ情報８６０に対応する状態情報８２３を抽出する。
すなわち、状態同期処理部３４０は、まず、ＣＰＵ９１１などの処理装置を用いて、Ｓ７７５で抽出した他のアイデンティティ情報８６０のアイデンティティ識別情報８７１を取得する。次に、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３のなかから、取得したアイデンティティ識別情報８７１と同じアイデンティティ識別情報８７１を有する状態情報８２３を抽出する。
【０１５９】
Ｓ７７７において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、Ｓ７７６で抽出した状態情報８２３を変更する。
すなわち、状態同期処理部３４０は、まず、ＣＰＵ９１１などの処理装置を用いて、Ｓ７７６で抽出した状態情報８２３のアイデンティティ状態情報８７３を、Ｓ７７３で取得した同期定義情報８４１のノード「ＡＣＴＩＯＮ」の子ノード「ＳＴＡＴＵＳ」で示される状態を示す値に書き換える。次に、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、書き換えた状態情報８２３を状態記憶部３２３に通知し、記憶させる。
【０１６０】
図８に戻り、アイデンティティ情報管理装置３００についての説明を続ける。
【０１６１】
状態監視部３３０は、状態記憶部３２３が記憶した状態情報８２３を状態変更処理部３２１が変更した場合だけでなく、状態同期処理部３４０が変更した場合にも、状態情報８２３の変更を検出する。
状態監視部３３０は、変更された状態情報８２３によって示されるアイデンティティの種類及び状態に対応づけられたアイデンティティ情報変更処理部３３１を呼び出す。
アイデンティティ情報変更処理部３３１は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０のなかから、変更された状態情報８２３のアイデンティティ識別情報８７１によって識別されるアイデンティティ情報８６０を取得し、書き換えて、アイデンティティ情報記憶装置４００に記憶させる。
【０１６２】
また、状態同期処理部３４０も、状態記憶部３２３が記憶した状態情報８２３を状態変更処理部３２１が変更した場合だけでなく、自分自身が変更した場合にも、状態情報８２３の変更を検出する。
同期条件を満たす場合、状態同期処理部３４０は、変更された状態情報８２３に関連する他の状態情報８２３を変更する。
【０１６３】
これにより、入力部３２０が１つの状態情報８２３を変更する指示を入力した場合、それに関連する多数の状態情報８２３が連鎖的に変更され、また、それに対応するアイデンティティ情報８６０も変更される。これにより、アイデンティティ情報管理装置３００が管理するアイデンティティ情報８６０の整合性が保たれる。
【０１６４】
アプリケーション実行装置２００は、このようにして整合性が保たれたアイデンティティ情報８６０を用いて業務を実行する。
【０１６５】
以上の処理により、１つのアイデンティティの状態の変更に対して複数のアイデンティティの状態が変更され、その結果、複数のアイデンティティ情報が変更される。
このように、複数の状態を変更することで、状態が１つずつ変更された場合に発生するアイデンティティ情報８６０の不整合を防止することができる。アイデンティティ情報８６０の整合性を確保することが可能となり、アプリケーション５００は正常な業務を実行することができる。
【０１６６】
なお、状態変更処理部３２１及び状態同期処理部３４０は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０の内容を参照してもよい。
【０１６７】
また、状態同期処理部３４０が状態情報８２３を変更する際、状態変更処理部３２１と同様に、処理フロー定義情報記憶部３２２が記憶した処理フロー定義情報８２２によって定義された遷移条件を満たすか否かを判断し、満たさない場合には、状態情報８２３を変更しないこととしてもよい。
あるいは、変更指示情報６１１によって状態情報８２３を変更する場合とは異なる遷移条件を、処理フロー定義情報記憶部３２２が記憶しておき、状態同期処理部３４０が状態情報８２３を変更する場合の条件としてもよい。
あるいは、遷移条件を判断せず、状態同期処理部３４０が状態情報８２３を変更することとしてもよい。
【０１６８】
状態記憶部３２３とアイデンティティ情報記憶装置４００とは、物理的に同じ記憶装置であってもよい。処理フロー定義情報８２２と同期定義情報８４１とを、同じ記憶部が記憶してもよい。また、処理フロー定義情報８２２と同期定義情報８４１とが、１つのファイルのなかで定義されていてもよい。
また、状態同期処理部３４０は、状態記憶部３２３が記憶した状態情報８２３だけでなく、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０を変更してもよい。
【０１６９】
以下、具体例を用いて、説明する。
図１４は、この実施の形態におけるアイデンティティ情報同期システム８００によるセキュリティシステムの一例を示す図である。
以下説明するセキュリティシステムには、大きく分けて２つの機能がある。
１つは、ＩＣカードを用いて利用者を認証し、端末ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）２２２へのログインを認めるか否かを制御するユーザ認証システム２２０である。
もう１つは、扉制御装置２３２に従業員コードとパスワードを入力することにより利用者を認証し、扉２３３の開錠を制御する扉開錠制御システム２３０である。
【０１７０】
ユーザ認証システム２２０は、ユーザ認証装置２２１、端末ＰＣ２２２、ＩＣカードリーダ２２３を有する。
ＩＣカードリーダ２２３は、端末ＰＣ２２２に接続している。ＩＣカードリーダ２２３は、ＩＣカードが通されると、読み取ったＩＣカードの情報を、端末ＰＣ２２２に通知する。利用者がＩＣカードリーダ２２３に自己が所有するＩＣカードを通して、認証されると、端末ＰＣ２２２にログインすることができる。
端末ＰＣ２２２は、ユーザ認証装置２２１に接続している。端末ＰＣ２２２は、ＩＣカードリーダ２２３からＩＣカードの情報を通知されると、通知された情報をユーザ認証装置２２１に送信する。端末ＰＣ２２２は、ユーザ認証装置２２１から「認証成功」の通知を受けると、利用者のログインを認める。
【０１７１】
ユーザ認証装置２２１は、アイデンティティ情報記憶装置４００に接続している。ユーザ認証装置２２１は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報ファイル８６１ｂ「ＩＣカード」（図１１参照）に含まれるアイデンティティ情報８６０を利用して、利用者を認証する。例えば、端末ＰＣ２２２から通知されたＩＣカードの情報から、そのＩＣカードのアイデンティティ識別情報８７１を識別し、そのＩＣカードのアイデンティティ識別情報８７１についてのアイデンティティ情報８６０を、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報ファイル８６１ｂから取得する。そのＩＣカードのアイデンティティ識別情報８７１についてのアイデンティティ情報８６０がアイデンティティ情報ファイル８６１ｂになければ、ユーザ認証装置２２１は「認証失敗」を端末ＰＣ２２２に通知する。また、そのＩＣカードのアイデンティティ識別情報８７１についてのアイデンティティ情報８６０がある場合には、ユーザ認証装置２２１は、アイデンティティ有効性情報８６５が有効か否かを判断する。有効であれば「認証成功」を端末ＰＣ２２２に通知する。有効でなければ「認証失敗」を端末ＰＣ２２２に通知する。
ユーザ認証システム２２０は、アプリケーション実行装置２００の一例である。
アイデンティティ情報ファイル８６１ｂ「ＩＣカード」に含まれるアイデンティティ情報８６０は、ユーザ認証情報の一例である。
【０１７２】
扉開錠制御システム２３０は、入室管理装置２３１、扉制御装置２３２、扉２３３を有する。
扉２３３は、扉制御装置２３２に接続している。扉２３３は、扉制御装置２３２からの信号により、開錠・施錠が制御される。
扉制御装置２３２は、入室管理装置２３１に接続している。扉制御装置２３２はテンキーなどの入力装置を有している。扉２３３を開錠しようとする利用者は、扉制御装置２３２に従業員コードとパスワードとを入力装置から入力する。扉制御装置２３２は、入力された情報を入室管理装置２３１に通知する。扉制御装置２３２は、入室管理装置２３１から「認証成功」の通知を受けると、扉２３３を開錠する。
【０１７３】
入室管理装置２３１は、アイデンティティ情報記憶装置４００に接続している。入室管理装置２３１は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報ファイル８６１ａ「従業員」に含まれるアイデンティティ情報８６０を利用して、利用者を認証する。例えば、扉制御装置２３２から通知された従業員コードについてのアイデンティティ情報８６０を、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報ファイル８６１ａから抽出する。その従業員コードについてのアイデンティティ情報８６０がなければ、入室管理装置２３１は「認証失敗」を扉制御装置２３２に通知する。また、その従業員コードについてのアイデンティティ情報８６０がある場合には、入室管理装置２３１は、アイデンティティ有効性情報８６５が有効か否かを判断する。有効であれば「認証成功」を扉制御装置２３２に通知する。有効でなければ「認証失敗」を扉制御装置２３２に通知する。
扉開錠制御システム２３０は、アプリケーション実行装置２００の一例である。
アイデンティティ情報ファイル８６１ａ「従業員」に含まれるアイデンティティ情報８６０は、ユーザ認証情報の一例である。
【０１７４】
ユーザ認証システム２２０と扉開錠制御システム２３０とは、それぞれ異なるアイデンティティ情報８６０を利用して業務を行う。しかし、それぞれが利用するアイデンティティ情報８６０の間には関連性があり、一方の状態が変更されると他方の状態も変更して整合性を保つ必要がある。
情報管理装置１００は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０の整合性を保つ。情報管理装置１００は、図８を用いて既に説明した装置である。
【０１７５】
管理サーバ装置２１０は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０について、アイデンティティ情報８６０の登録・変更・削除などを行う装置である。
管理サーバ装置２１０は、処理フロー定義情報８２２や同期定義情報８４１とは無関係に、アイデンティティ情報８６０を変更する。
管理サーバ装置２１０は、アプリケーション実行装置２００の一例である。
【０１７６】
アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０を管理サーバ装置２１０が変更した場合、それに伴って、アイデンティティ情報管理装置３００が管理している状態情報８２３を変更する必要が生じる場合がある。例えば、新規のアイデンティティ情報８６０を登録した場合には、そのアイデンティティ情報８６０についての状態情報８２３を作成し、状態記憶部３２３が記憶する。また、アイデンティティ情報８６０を削除した場合には、そのアイデンティティ情報８６０についての状態情報８２３も、状態記憶部３２３が記憶した状態情報８２３から削除する。
このような場合、入力部３２０が変更指示を入力して、状態記憶部３２３が記憶した状態情報８２３を、状態変更処理部３２１が変更する構成としてもよい。あるいは、状態監視部３３０や状態同期処理部３４０が、状態記憶部３２３が記憶した状態情報８２３だけでなく、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０の変更も監視し、変更があった場合に、アイデンティティ情報８６０や状態情報８２３を変更する構成としてもよい。
【０１７７】
以下の説明において、処理フロー定義情報記憶部３２２は、図９で説明した処理フロー定義情報８２２を記憶しているものとする。状態記憶部３２３は、図１０で説明した状態情報８２３を記憶しているものとする。アイデンティティ情報記憶装置４００は、図１１で説明したアイデンティティ情報８６０を記憶しているものとする。同期定義情報記憶部３４１は、図１２で説明した同期定義情報８４１を記憶しているものとする。
【０１７８】
例えば、従業員「山田太郎」が扉２３３を開錠しようとして、扉制御装置２３２に自己の従業員コードとパスワードとを入力すると、扉制御装置２３２は入力された情報を入室管理装置２３１に通知する。入室管理装置２３１は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報ファイル８６１から「山田太郎」のアイデンティティ情報８６０を取得し、アイデンティティ有効性情報８６５が「有効」なので、従業員コードとパスワードが合っていれば、扉制御装置２３２に「認証成功」を通知する。扉制御装置２３２はこれを取得し、扉２３３を開錠する。
これに対し、従業員「岡本次郎」が扉２３３を開錠しようとして、扉制御装置２３２に自己の従業員コードとパスワードとを入力すると、入室管理装置２３１は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報ファイル８６１から「岡本次郎」のアイデンティティ情報８６０を取得し、アイデンティティ有効性情報８６５が「無効」なので、従業員コードとパスワードが合っているかいないかに関わらず、扉制御装置２３２に「認証失敗」を通知する。
【０１７９】
また、「山田太郎」が端末ＰＣ２２２にログインしようとして、端末ＰＣ２２２に接続されたＩＣカードリーダ２２３に自己の所有するＩＣカード（「ｃａｒｄ００１」）を通すと、ＩＣカードリーダ２２３が読み取った情報を、端末ＰＣ２２２がユーザ認証装置２２１に通知する。ユーザ認証装置２２１は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０から「ｃａｒｄ００１」のアイデンティティ情報８６０を取得し、アイデンティティ有効性情報８６５が「有効」なので、端末ＰＣ２２２に「認証成功」を通知する。これにより、「山田太郎」は端末ＰＣ２２２にログインできる。
これに対し、「岡本次郎」のＩＣカード「ｃａｒｄ００２」は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０のアイデンティティ有効性情報８６５が「無効」なので、「岡本次郎」が端末ＰＣ２２２にログインしようとして、ＩＣカードをＩＣカードリーダ２２３に通すと、ユーザ認証装置２２１は「認証失敗」を通知するので、「岡本次郎」は端末ＰＣ２２２にログインできない。
【０１８０】
ここで、従業員「山田太郎」が「出向」状態となった場合について、説明する。
【０１８１】
入力部３２０は、ＣＰＵ９１１などの処理装置を用いて、従業員「山田太郎」の状態を「出向」とする指示を入力装置から入力し、変更指示情報６１１を出力する。入力部３２０が出力する変更指示情報６１１には、例えば、従業員「山田太郎」のアイデンティティ識別情報８７１である「ｕｓｅｒ００１」と、変更後の状態である「出向」とを示す情報が含まれる。
【０１８２】
状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、入力部３２０が出力した変更指示情報６１１を取得する。
状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、取得した変更指示情報６１１によって示される変更指示が実行可能か否かを判断し、実行可能であれば、状態記憶部３２３が記憶した状態情報８２３を変更する。
【０１８３】
図１５は、この実施の形態における状態変更処理部３２１が変更指示にしたがって状態情報８２３を変更する状態変更処理の流れの一例を示すフローチャート図である。
【０１８４】
Ｓ７８１において、状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、取得した変更指示情報６１１によって変更を指示されている状態情報８２３が対応するアイデンティティ情報８６０が登録されているかを判断する。すなわち、状態変更処理部３２１は、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０のなかに該当するアイデンティティ情報８６０があるか否かを判断する。
該当するアイデンティティ情報８６０があると判断した場合には、Ｓ７８２へ進む。
該当するアイデンティティ情報８６０がないと判断した場合には、Ｓ７８５へ進む。
【０１８５】
この例では、状態変更処理部３２１は、まず、ＣＰＵ９１１などの処理装置を用いて、取得した変更指示情報６１１を解析し、アイデンティティ識別情報８７１「ｕｓｅｒ００１」と、変更後の状態「出向」とを取得する。
状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０から、アイデンティティ識別情報８７１が「ｕｓｅｒ００１」であるものを取得する。
アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報ファイル８６１ａ「従業員」のなかに、アイデンティティ識別情報８７１が「ｕｓｅｒ００１」であるアイデンティティ情報８６０があるので、状態変更処理部３２１はこれを取得し、Ｓ７８２へ進む。
【０１８６】
Ｓ７８２において、状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、取得したアイデンティティ情報８６０の種類についての処理フロー定義情報８２２が、処理フロー定義情報記憶部３２２が記憶した処理フロー定義情報８２２のなかにあるか否かを判断する。
該当する処理フロー定義情報８２２があると判断した場合には、Ｓ７８３へ進む。
該当する処理フロー定義情報８２２がないと判断した場合には、Ｓ７８５へ進む。
【０１８７】
この例では、状態変更処理部３２１は、まず、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３のなかから、アイデンティティ識別情報８７１が「ｕｓｅｒ００１」であるものを取得し、現在の状態「常勤」を得る。
状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、処理フロー定義情報記憶部３２２が記憶した処理フロー定義情報８２２から、「従業員」の「常勤」についての遷移条件を取得する。
処理フロー定義情報記憶部３２２が記憶した処理フロー定義情報８２２のなかに、「従業員」の「常勤」についての遷移条件があるので、状態変更処理部３２１はこれを取得し、Ｓ７８３へ進む。
【０１８８】
Ｓ７８３において、状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、指示された状態に遷移可能かをを判断する。すなわち、状態変更処理部３２１は、変更指示情報６１１による指示が遷移条件を満たすか否かを判断する。
遷移条件を満たすと判断した場合には、Ｓ７８４へ進む。
遷移条件を満たさないと判断した場合には、Ｓ７８５へ進む。
【０１８９】
この例では、状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、変更指示情報６１１によって指示された変更後の状態「出向」に遷移することが、Ｓ７８２で取得した処理フロー定義情報８２２によって示される遷移条件を満たすと判断し、Ｓ７８４へ進む。
【０１９０】
Ｓ７８４において、状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、変更指示情報６１１によって示される指示にしたがって、状態記憶部３２３が記憶した状態情報８２３を変更する。
【０１９１】
この例では、状態変更処理部３２１は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ識別情報８７１が「ｕｓｅｒ００１」である状態情報８２３の、アイデンティティ状態情報８７３を「出向」に書き換えて、状態記憶部３２３に記憶させる。
【０１９２】
Ｓ７８５において、状態変更処理部３２１は、状態記憶部３２３が記憶した状態情報８２３を変更できないことを入力部３２０に通知するなど、例外処理をする。
【０１９３】
この変更を、状態監視部３３０が検出し、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０を、アイデンティティ情報変更処理部３３１が変更する。
【０１９４】
状態監視部３３０は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３が変更されたか否かを判断する。
状態監視部３３０は、状態記憶部３２３が記憶した状態情報８２３の変更を検出し、変更された状態情報８２３が対応するアイデンティティ情報８６０の種類と、変更後の値に対応づけられたアイデンティティ情報変更処理部３３１に通知する。このとき、変更があった状態情報８２３のアイデンティティ識別情報８７１を合わせて通知する。
【０１９５】
この例では、状態監視部３３０は、アイデンティティ識別情報８７１「ｕｓｅｒ００１」を、アイデンティティ情報変更処理部３３１に通知する。
【０１９６】
アイデンティティ情報変更処理部３３１は、ＣＰＵ９１１などの処理装置を用いて、通知されたアイデンティティ識別情報８７１を取得する。
アイデンティティ情報変更処理部３３１は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０のうち、取得したアイデンティティ識別情報８７１によって識別されるアイデンティティ情報８６０を変更する。
【０１９７】
この例では、アイデンティティ情報変更処理部３３１は、あらかじめ定められた処理内容にしたがって、アイデンティティ識別情報８７１が「ｕｓｅｒ００１」であるアイデンティティ情報８６０のアイデンティティ有効性情報８６５を「無効」に書き換えて、アイデンティティ情報記憶装置４００に記憶させる。
【０１９８】
これとは別に、状態同期処理部３４０も、状態変更処理部３２１による状態情報８２３の変更を検出する。状態同期処理部３４０は、状態記憶部３２３が記憶した状態情報８２３を変更する。
【０１９９】
図１６は、この実施の形態における状態同期処理部３４０が状態情報８２３を変更する状態同期処理の流れの一例を示すフローチャート図である。
【０２００】
Ｓ７９１において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３が変更されたか否かを判断する。
例えば、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、前回の観測時における状態情報８２３磁気ディスク装置９２０などの記憶装置に記憶しておき、状態記憶部３２３が記憶した状態情報８２３と比較することにより、変更されたか否かを判断する。
変更されたと判断した場合には、Ｓ７９２へ進む。
変更されていないと判断した場合には、状態同期処理を終了する。
【０２０１】
この例では、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、「ｕｓｅｒ００１」についての状態情報８２３が変更されていることを検出し、Ｓ７９２へ進む。
【０２０２】
Ｓ７９２において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、同期定義情報記憶部３４１が記憶した同期定義情報８４１に、変更された状態情報８２３に対応するアイデンティティ情報８６０の種類についての同期条件を定義したものがあるか否かを判断する。
同期定義情報８４１があると判断した場合には、Ｓ７９３へ進む。
同期定義情報８４１がないと判断した場合には、状態同期処理を終了する。
【０２０３】
この例では、同期定義情報記憶部３４１が記憶した同期定義情報８４１のなかに、ノード「ＴＲＩＧＧＥＲ」の子ノード「ＴＹＰＥ」が「従業員」のものがあるので、状態同期処理部３４０は、同期定義情報８４１があると判断し、その同期定義情報８４１を取得して、Ｓ７９３へ進む。
【０２０４】
Ｓ７９３において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、取得した同期定義情報８４１によって定義される同期条件を満たすか否かを判断する。
同期条件を満たすと判断した場合には、Ｓ７９４へ進む。
同期条件を満たさないと判断した場合には、状態同期処理を終了する。
【０２０５】
すなわち、同期定義情報記憶部３４１は、まず、ＣＰＵ９１１などの処理装置を用いて、Ｓ７９１で変更を検出した状態情報８２３の変更後のアイデンティティ状態情報８７３を取得する。同期定義情報記憶部３４１は、ＣＰＵ９１１などの処理装置を用いて、取得したアイデンティティ状態情報８７３が、Ｓ７９２で取得した同期条件に合致するか否かを判断する。
【０２０６】
この例では、同期定義情報記憶部３４１は、変更後のアイデンティティ状態情報８７３「出向」を取得し、Ｓ７９２で取得した同期定義情報８４１のなかに、ノード「ＴＲＩＧＧＥＲ」の子ノード「ＳＴＡＴＵＳ」が「出向」のものがあるので、同期定義情報記憶部３４１は、同期条件を満たすと判断し、Ｓ７９４へ進む。
【０２０７】
Ｓ７９４において、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した他の状態情報８２３を変更する。
【０２０８】
この例では、ノード「ＡＣＴＩＯＮ」の子ノード「ＴＹＰＥ」の内容が「ＩＣカード」であり、子ノード「ＳＴＡＴＵＳ」の内容が「停止」なので、状態同期処理部３４０は、変更された状態情報８２３に関連する「ＩＣカード」についての状態情報８２３を探す。
変更された状態情報８２３は、アイデンティティ識別情報８７１が「ｕｓｅｒ００１」のアイデンティティ情報８６０と対応している。このアイデンティティ情報８６０の種類は「従業員」であり、「ＩＣカード」ではない。
【０２０９】
状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、種類「従業員」のアイデンティティ情報８６０に、種類「ＩＣカード」のアイデンティティ情報８６０との関連を示す情報が含まれているか否かを判断する。
種類「ＩＣカード」のアイデンティティ情報８６０との関連を示す情報が含まれている場合には、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、その情報に基づいて関連する状態情報８２３を識別し、変更する。
【０２１０】
この例では、種類「従業員」のアイデンティティ情報８６０には、種類「ＩＣカード」のアイデンティティ情報８６０との関連を示すアイデンティティ識別情報８７１が含まれていない。
【０２１１】
そこで、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、種類「ＩＣカード」のアイデンティティ情報８６０に、種類「従業員」のアイデンティティ情報８６０との関連を示す情報が含まれているか否かを判断する。
この例では、種類「ＩＣカード」のアイデンティティ情報８６０には、種類「従業員」のアイデンティティ情報８６０との関連を示すカード所有者情報８６７が含まれている。
【０２１２】
そこで、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、種類「ＩＣカード」のアイデンティティ情報８６０のうち、カード所有者情報８６７が「ｕｓｅｒ００１」であるアイデンティティ情報８６０を取得する。
次に、状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、取得したアイデンティティ情報８６０のアイデンティティ識別情報８７１「ｃａｒｄ００１」と同じアイデンティティ識別情報８７１を有する状態情報８２３を、状態記憶部３２３から取得する。
状態同期処理部３４０は、ＣＰＵ９１１などの処理装置を用いて、取得した状態情報８２３のアイデンティティ状態情報８７３を「停止」に書き換えて、状態記憶部３２３に記憶させる。
【０２１３】
状態監視部３３０は、この変更を検出し、種類「ＩＣカード」・状態「停止」に対応づけられたアイデンティティ情報変更処理部３３１に通知する。
アイデンティティ情報変更処理部３３１は、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ識別情報８７１「ｃａｒｄ００１」によって識別されるアイデンティティ情報８６０をアイデンティティ情報記憶装置４００から取得し、アイデンティティ有効性情報８６５を「無効」に書き換えて、アイデンティティ情報記憶装置４００に記憶させる。
【０２１４】
状態同期処理部３４０も、状態情報８２３が変更されたことを検出する。しかし、この例では、同期定義情報記憶部３４１が記憶した同期定義情報８４１に、ノード「ＴＲＩＧＧＥＲ」の子ノード「ＴＹＰＥ」のないようが「ＩＣカード」であるものがないので、状態同期処理部３４０は、同期条件が満たされていないと判断し、状態記憶部３２３が記憶した状態情報８２３を変更しない。
したがって、ここで処理が終了する。
【０２１５】
図１７は、この実施の形態において、この一連の処理によって変更される状態情報８２３及びアイデンティティ情報８６０の一例を示す図である。
状態記憶部３２３が記憶した状態情報８２３は、「ｕｓｅｒ００１」についての状態情報８２３のアイデンティティ状態情報８７３を、状態変更処理部３２１が「常勤」から「出向」に変更する。
また、「ｃａｒｄ００１」についての状態情報８２３のアイデンティティ状態情報８７３を、状態同期処理部３４０が「利用可能」から「停止」に変更する。
【０２１６】
アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０は、「ｕｓｅｒ００１」についてのアイデンティティ情報８６０のアイデンティティ有効性情報８６５を、アイデンティティ情報変更処理部３３１が「有効」から「無効」に変更する。
また、「ｃａｒｄ００１」についてのアイデンティティ情報８６０を、アイデンティティ情報変更処理部３３１が「有効」から「無効」に変更する。
【０２１７】
この例では、１つの変更指示情報６１１に起因して、アイデンティティ情報管理装置３００が４つの情報を変更することにより、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０と状態記憶部３２３が記憶した状態情報８２３とが全体としての整合性を保つ。
【０２１８】
変更されたアイデンティティ情報８６０によれば、例えば、「山田太郎」が扉２３３を開錠しようと、扉制御装置２３２に従業員コードとパスワードとを入力すると、アイデンティティ情報記憶装置４００が記憶した「山田太郎」についてのアイデンティティ情報８６０のアイデンティティ有効性情報８６５が「無効」なので、ユーザ認証装置２２１は「認証失敗」を通知し、「山田太郎」は扉２３３を開けることができない。
また、「山田太郎」が端末ＰＣ２２２にログインしようと、ＩＣカードリーダ２２３にＩＣカード「ｃａｒｄ００１」を通すと、アイデンティティ情報記憶装置４００が記憶した「ｃａｒｄ００１」についてのアイデンティティ情報８６０のアイデンティティ有効性情報８６５が「無効」なので、入室管理装置２３１は「認証失敗」を通知し、「山田太郎」は端末ＰＣ２２２にログインすることができない。
【０２１９】
出向していた従業員が戻ってきて「常勤」になった場合も同様にして、アイデンティティ情報管理装置３００が、関連するアイデンティティ情報８６０及び状態情報８２３を変更し、全体としても整合性を保つ。
【０２２０】
アイデンティティ情報８６０を手作業で変更する場合、例えば、「ｕｓｅｒ００１」についてのアイデンティティ情報８６０だけ変更して、「ｃａｒｄ００１」についてのアイデンティティ情報８６０を変更するのを忘れる場合がある。システムが複雑化すればするほど、このような更新もれが発生する可能性は高くなる。特に、セキュリティシステムにおいては、そのような入力もれ・入力ミスがセキュリティ上の問題に直結してしまう場合があるので、入力もれ・入力ミスは許されない。
【０２２１】
この例でいえば、「山田太郎」についてのアイデンティティ情報８６０「ｕｓｅｒ００１」のアイデンティティ有効性情報８６５を「無効」にして「山田太郎」が扉２３３を開錠できないようにするが、「山田太郎」のＩＣカード「ｃａｒｄ００１」についてのアイデンティティ情報８６０のアイデンティティ有効性情報８６５を変更するのを忘れて「有効」のままにしてしまう場合である。このような場合、「山田太郎」は扉２３３を開けられないので入室できず、端末ＰＣ２２２にログインしようとすることは通常考えれらないので、逆に、ミスの発見が遅れ、重大な問題となる可能性がある。
【０２２２】
この実施の形態におけるアイデンティティ情報同期システム８００によれば、アイデンティティ情報管理装置３００が、変更された状態情報８２３に関連するアイデンティティ情報８６０及び他の状態情報８２３を自動的に変更して情報の整合性を保つので、入力もれ・入力ミスによるセキュリティ上の問題が発生するのを防ぐことができる。
【０２２３】
この実施の形態における情報管理装置１００は、アイデンティティ情報記憶装置４００（第一情報記憶部）が、第一の情報として、対象（従業員・ＩＣカード）を識別する情報であるアイデンティティ識別情報８７１（識別情報）と、アイデンティティ識別情報８７１の有効無効を示す情報であるアイデンティティ有効性情報８６５（有効情報）とを含むアイデンティティ情報８６０を磁気ディスク装置９２０などの記憶装置に記憶し、状態記憶部３２３（第二情報記憶部）が、第二の情報として、アイデンティティ識別情報８７１とアイデンティティ識別情報８７１によって識別される対象の状態を示すアイデンティティ状態情報８７３とを含む状態情報８２３を磁気ディスク装置９２０などの記憶装置に記憶することを特徴とする。
【０２２４】
この実施の形態における情報管理装置１００によれば、アイデンティティ識別情報８７１によって識別される対象の状態が変化すると、状態記憶部３２３が記憶した状態情報８２３が変更され、その変更を状態監視部３３０（変更監視部）が検出して、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０を、アイデンティティ情報変更処理部３３１（第一変更処理部）が変更するので、対象の状態の変化に合わせて、アイデンティティ情報８６０を変更することができ、アプリケーション実行装置２００が正しい処理をできるという効果を奏する。
【０２２５】
この実施の形態における情報管理装置１００は、アイデンティティ情報変更処理部３３１（第一変更処理部）が、状態記憶部３２３が記憶した状態情報８２３に含まれるアイデンティティ状態情報８７３が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、変更されたアイデンティティ状態情報８７３を含む状態情報８２３に含まれるアイデンティティ識別情報８７１を取得し、ＣＰＵ９１１などの処理装置を用いて、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０のうち、取得したアイデンティティ識別情報８７１と同一のアイデンティティ識別情報８７１を含むアイデンティティ情報８６０に含まれるアイデンティティ有効性情報８６５を変更することを特徴とする。
【０２２６】
この実施の形態における情報管理装置１００によれば、アイデンティティ状態情報８７３が変更された場合に、アイデンティティ情報変更処理部３３１が、同一のアイデンティティ識別情報８７１を含むアイデンティティ情報８６０のアイデンティティ有効性情報８６５を変更するので、アイデンティティ識別情報８７１によって識別される対象の状態が変化した場合に、自動的に、アイデンティティ有効性情報８６５の有効・無効を変更することができ、アプリケーション実行装置２００が、対象の状態に合わせた処理を実行できるという効果を奏する。
【０２２７】
この実施の形態における情報管理装置１００は、アイデンティティ情報記憶装置４００が、アイデンティティ情報８６０に含まれるアイデンティティ識別情報８７１によって識別される対象（ＩＣカード）に関連する他の対象（ＩＣカードの所有者である従業員）を識別するカード所有者情報８６７（他の識別情報）を、アイデンティティ情報８６０の一部として磁気ディスク装置９２０などの記憶装置に記憶し、状態同期処理部３４０（第二変更処理部）が、状態記憶部３２３が記憶した状態情報８２３に含まれるアイデンティティ状態情報８７３が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、変更されたアイデンティティ状態情報８７３を含む状態情報８２３に含まれるアイデンティティ識別情報８７１を取得し、ＣＰＵ９１１などの処理装置を用いて、取得したアイデンティティ識別情報８７１と同一のアイデンティティ識別情報８７１を含むアイデンティティ情報８６０に含まれるカード所有者情報８６７を取得し、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３のうち、取得したカード所有者情報８６７と同一のアイデンティティ識別情報８７１を含む状態情報８２３に含まれるアイデンティティ状態情報８７３を変更することを特徴とする。
【０２２８】
この実施の形態における情報管理装置１００は、アイデンティティ情報記憶装置４００が、アイデンティティ情報８６０に含まれるアイデンティティ識別情報８７１によって識別される対象（ＩＣカード）に関連する他の対象（ＩＣカードの所有者である従業員）を識別するカード所有者情報８６７（他の識別情報）を、アイデンティティ情報８６０の一部として磁気ディスク装置９２０などの記憶装置に記憶し、状態同期処理部３４０（第二変更処理部）が、状態記憶部３２３が記憶した状態情報８２３に含まれるアイデンティティ状態情報８７３が変更された場合に、ＣＰＵ９１１などの処理装置を用いて、変更されたアイデンティティ状態情報８７３を含む状態情報８２３に含まれるアイデンティティ識別情報８７１を取得し、ＣＰＵ９１１などの処理装置を用いて、取得したアイデンティティ識別情報８７１と同一のカード所有者情報８６７を含むアイデンティティ情報８６０に含まれるアイデンティティ識別情報８７１を取得し、ＣＰＵ９１１などの処理装置を用いて、状態記憶部３２３が記憶した状態情報８２３のうち、取得したアイデンティティ識別情報８７１と同一のアイデンティティ識別情報８７１を含む状態情報８２３に含まれるアイデンティティ状態情報８７３を変更することを特徴とする。
【０２２９】
この実施の形態における情報管理装置１００によれば、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０に含まれるカード所有者情報８６７（他の識別情報）に基づいて、状態同期処理部３４０が、変更された状態情報８２３に関連する他の状態情報８２３を判別し、判別した他の状態情報８２３を変更するので、ＩＣカードとその所有者のように、システムの運用が変わっても不変の情報は、アイデンティティ情報８６０に含めることができ、他方、状態変更時の処理は、同期定義情報記憶部３４１が記憶した同期定義情報８４１によって定義されるので、システムの運用が変わったときは、同期定義情報８４１だけを変えればよく、柔軟な運用が可能になるという効果を奏する。
【０２３０】
この実施の形態における情報管理装置１００は、アイデンティティ情報記憶装置４００が、識別情報として、対象（従業員コード、ＩＣカードなど）を識別することによりユーザを認証する情報であるユーザ認証情報を磁気ディスク装置９２０などの記憶装置に記憶し、アイデンティティ情報８６０が、アプリケーション実行装置であるユーザ認証システムがユーザを認証するために利用する情報であることを特徴とする。
【０２３１】
この実施の形態における情報管理装置１００によれば、情報管理装置１００が整合性を保ったアイデンティティ情報８６０をユーザ認証システムが利用してユーザを認証するので、セキュリティ上の問題の発生を防ぐことができるという効果を奏する。
【０２３２】
この実施の形態における情報管理装置１００は、アイデンティティ情報記憶装置４００が、異なる対象（従業員コード、ＩＣカードなど）を識別し、同一のユーザを認証する複数のユーザ認証情報を、異なるアイデンティティ情報８６０として磁気ディスク装置９２０などの記憶装置に記憶することを特徴とする。
【０２３３】
この実施の形態における情報管理装置１００によれば、同一のユーザを認証する複数のユーザ認証情報の間の整合性を、情報管理装置１００が保つので、異なるユーザ認証情報を利用してユーザを認証する複数のアプリケーション実行装置２００の間で矛盾なく、ユーザを認証することができ、セキュリティ上の問題の発生を防ぐことができるという効果を奏する。
【０２３４】
この実施の形態における情報管理装置１００は、アイデンティティ情報記憶装置４００が、アイデンティティ情報８６０の一部として、アイデンティティ情報８６０に含まれるユーザ認証情報によって認証されるユーザと同一のユーザを認証する他のユーザ認証情報を磁気ディスク装置９２０などの記憶装置に記憶することを特徴とする。
【０２３５】
この実施の形態における情報管理装置１００によれば、アイデンティティ情報８６０に含まれるユーザ認証情報によって認証されるユーザと同一のユーザを認証する他のユーザ認証情報を、アイデンティティ情報記憶装置４００が記憶しているので、情報管理装置１００が同一のユーザを認証する複数のユーザ認証情報の間の整合性を保つことができるという効果を奏する。
【０２３６】
この実施の形態における情報管理装置１００（アイデンティティ情報管理装置）は、アイデンティティ情報８６０を記憶するアイデンティティ情報記憶装置４００と、アイデンティティの状態を示す状態情報８２３を記憶する状態記憶部３２３と、アイデンティティの状態の変更を指示する情報を入力する入力部３２０と、アイデンティティ情報の変更処理を行う状態変更処理部３２１（アイデンティティ情報変更処理部）と、アイデンティティの状態の遷移順序を示す処理フロー定義情報８２２を記憶する処理フロー定義情報記憶部３２２と、入力部が入力した指示にしたがって処理フロー定義情報８２２に沿ってアイデンティティの状態を示す状態情報８２３を変更する状態変更処理部３２１と、アイデンティティの状態を監視し、状態に応じたアイデンティティ情報変更処理部３３１を呼び出す状態監視部３３０と、アイデンティティの状態の同期定義情報８４１を記憶する同期定義情報記憶部３４１と、アイデンティティの状態を監視し同期定義の条件に該当する場合には定義されている他のアイデンティティの状態を上記状態変更処理部を用いて変更する状態同期処理部３４０と、上記アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０を使用するアプリケーション実行装置２００とを有することを特徴とする。
【０２３７】
この実施の形態におけるアイデンティティ情報同期システム８００（認証システム）は、アイデンティティ情報８６０を記憶するアイデンティティ情報記憶装置４００と、アイデンティティの状態を示す状態情報８２３を記憶する状態記憶部３２３と、状態の変更に合わせてアイデンティティ情報８６０を変更するアイデンティティ情報変更処理部３３１と、処理フロー定義情報８２２にしたがってアイデンティティの状態を示す状態情報８２３を変更する状態変更処理部３２１と、同期定義情報８４１にしたがって１つのアイデンティティの状態変更をトリガーとして他のアイデンティティの状態を示す状態情報８２３を変更する状態同期処理部３４０と、アイデンティティ情報８６０を用いて認証を行う認証部（ユーザ認証システム）とを有し、１つのアイデンティティの状態変更に同期させて複数のアイデンティティの状態を変更することで関連する複数のアイデンティティ情報が自動的に変更により、アイデンティティ情報の整合性を確保することを特徴とする。
【０２３８】
この実施の形態におけるアイデンティティ情報同期システム８００（認証システム）は、処理フロー定義情報８２２と同期定義情報８４１とを変更することで、プログラムに手を加えることなく、アイデンティティ情報８６０の管理方式を変更することができることを特徴とする。
【０２３９】
この実施の形態における情報管理装置１００によれば、入力部３２０が、状態記憶部３２３が記憶した状態情報８２３によって示されるアイデンティティの状態の変更を指示する情報を入力すると、状態変更処理部３２１が状態変更処理をする。これにより、処理フロー定義情報記憶部３２２が記憶した処理フロー定義情報８２２にしたがって状態記憶部３２３が記憶した状態情報８２３が変更される。状態監視部３３０が、変更後の状態に対応するアイデンティティ情報変更処理部３３１を呼び出し、アイデンティティ情報変更処理部３３１が、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０を変更する。また、同期定義情報記憶部３４１が記憶した同期定義情報８４１によって示される同期条件に該当する場合には、状態同期処理部３４０が、同期定義情報８４１に定義されている状態情報８２３を変更する。これにより、再び、状態監視部３３０が、変更後の状態に対応するアイデンティティ情報変更処理部３３１を呼び出し、アイデンティティ情報変更処理部３３１が、アイデンティティ情報記憶装置４００が記憶したアイデンティティ情報８６０を変更する。これを連鎖的に繰り返すことにより、１つのアイデンティティの状態の変更の指示により、必要に応じて、関連する複数のアイデンティティの状態が自動的に変更され、それに伴ってアイデンティティ情報８６０に複数の変更処理が行われ、その結果、互いに関連するアイデンティティ情報８６０の整合性が確保され、それを用いるアプリケーション実行装置２００が正常に動作でき、複数のアイデンティティ情報を絡めたライフサイクル管理が可能となるという効果を奏する。
【０２４０】
この実施の形態における情報管理装置１００によれば、必要に応じてユーザとＩＣカードの２種類のアイデンティティの状態の同期を実現することにより、アイデンティティ情報８６０の整合性の確保し、アイデンティティ情報８６０を用いて処理を実行するアプリケーション実行装置２００に正常な業務を実行できる環境を提供することができる。
また、ユーザとＩＣカードという２種類のアイデンティティ情報８６０を絡めたライフサイクル管理を実現することができる。
【０２４１】
図１８は、この実施の形態におけるアイデンティティ情報同期システム８００の別の例を示す図である。
処理フロー定義情報記憶部３２２及び同期定義情報記憶部３４１は、アイデンティティ情報管理装置３００が有している必要はなく、他のサーバ装置などによって構成してもよい。
また、複数のアイデンティティ情報同期システム８００ａ，８００ｂが、処理フロー定義情報記憶部３２２や同期定義情報記憶部３４１を共有することとしてもよい。
【０２４２】
この実施の形態におけるアイデンティティ情報同期システム８００（認証システム）は、処理フロー定義情報８２２と同期定義情報８４１とを複数のアイデンティティ情報同期システム８００ａ，８００ｂ（認証システム）で共有することを特徴とする。
【０２４３】
この実施の形態におけるアイデンティティ情報同期システム８００（認証システム）は、処理フロー定義情報８２２内に同期定義情報８４１を定義することにより、状態の同期を処理フロー間の同期によって実現することを特徴とする。
【０２４４】
この実施の形態におけるアイデンティティ情報同期システム８００によれば、処理フロー定義情報８２２及び同期定義情報８４１のみを変更することで、状態遷移の変更、同期処理の変更を、アイデンティティの状態の変更ロジック、状態に合わせたアイデンティティ情報の変更の処理ロジック等を変更することなく、対応することができる。
これにより、例えば、運用でユーザの状態遷移順序に変更があった場合には処理フロー定義情報８２２を変更し、ＩＣカードとの組合せの運用についても変更があった場合には同期定義情報８４１も変更するだけで、処理ロジック（プログラム）の変更を行うことなく対応することができる。
このように、この実施の形態におけるアイデンティティ情報同期システム８００によれば、アイデンティティ情報８６０の整合性の確保と複数のアイデンティティ情報８６０を絡めたライフサイクル管理ができるだけでなく、処理フロー定義情報８２２と同期定義情報８４１を変更することにより様々な運用に容易に対応できるという効果を奏する。
【図面の簡単な説明】
【０２４５】
【図１】実施の形態１における情報管理装置１００及びアプリケーション実行装置２００の外観の一例を示す図。
【図２】実施の形態１における情報管理装置１００及びアプリケーション実行装置２００のハードウェア資源の一例を示す図。
【図３】実施の形態１における情報管理装置１００の機能ブロックの構成の一例を示すブロック構成図。
【図４】実施の形態１における第二情報変更部１１２が第二の情報６２０を変更する第二情報変更処理の流れの一例を示すフローチャート図。
【図５】実施の形態１における第一変更処理部１４１が第二の情報６２０の変更に基づいて第一の情報６６０を変更する第一変更処理の流れの一例を示すフローチャート図。
【図６】実施の形態１における第二変更処理部１５１が第二の情報６２０の変更に基づいて他の第二の情報６２０を変更する第二変更処理の流れの一例を示すフローチャート図。
【図７】実施の形態１における情報管理装置１００が、第一の情報６６０及び第二の情報６２０を連鎖的に変更する様子の一例を示す模式図。
【図８】実施の形態２におけるアイデンティティ情報同期システム８００の全体構造を概念的に示す概念図。
【図９】実施の形態２における処理フロー定義情報記憶部３２２が記憶する処理フロー定義情報８２２によって定義される状態遷移順序を視覚的に表現した模式図。
【図１０】実施の形態２における状態記憶部３２３が記憶する状態情報８２３の一例を示す図。
【図１１】実施の形態２におけるアイデンティティ情報記憶装置４００が記憶するアイデンティティ情報８６０の一例を示す図。
【図１２】実施の形態２における同期定義情報記憶部３４１が記憶する同期定義情報８４１の一例を示す図。
【図１３】実施の形態２における状態同期処理部３４０が状態情報８２３を同期する状態同期処理の流れの一例を示すフローチャート図。
【図１４】実施の形態２におけるアイデンティティ情報同期システム８００によるセキュリティシステムの一例を示す図。
【図１５】実施の形態２における状態変更処理部３２１が変更指示にしたがって状態情報８２３を変更する状態変更処理の流れの一例を示すフローチャート図。
【図１６】実施の形態２における状態同期処理部３４０が状態情報８２３を変更する状態同期処理の流れの一例を示すフローチャート図。
【図１７】実施の形態２において、この一連の処理によって変更される状態情報８２３及びアイデンティティ情報８６０の一例を示す図。
【図１８】実施の形態２におけるアイデンティティ情報同期システム８００の別の例を示す図。
【符号の説明】
【０２４６】
１００  情報管理装置、１１１  変更指示入力部、１１２  第二情報変更部、１１３  遷移条件記憶部、１２０  第二情報記憶部、１３１  変更監視部、１４１  第一変更処理部、１４２  第一条件記憶部、１４３  第一処理ロジック実行部、１４４  第一処理ロジック記憶部、１５１  第二変更処理部、１５２  第二条件記憶部、１５３  第二処理ロジック実行部、１５４  第二処理ロジック記憶部、１６０  第一情報記憶部、２００  アプリケーション実行装置、２１０  管理サーバ装置、２２０  ユーザ認証システム、２２１  ユーザ認証装置、２２２  端末ＰＣ、２２３  ＩＣカードリーダ、２３０  扉開錠制御システム、２３１  入室管理装置、２３２  扉制御装置、２３３  扉、３００  アイデンティティ情報管理装置、３２０  入力部、３２１  状態変更処理部、３２２  処理フロー定義情報記憶部、３２３  状態記憶部、３３０  状態監視部、３３１  アイデンティティ情報変更処理部、３４０  状態同期処理部、３４１  同期定義情報記憶部、４００  アイデンティティ情報記憶装置、６１１  変更指示情報、６１３  遷移条件情報、６２０  第二の情報、６３１  変更検出通知情報、６４１  第一ロジック情報、６４２  第一条件情報、６４４  第一の処理ロジック、６５１  第二ロジック情報、６５２  第二条件情報、６５４  第二の処理ロジック、６６０  第一の情報、８００  アイデンティティ情報同期システム、８２２  処理フロー定義情報、８２３  状態情報、８４１  同期定義情報、８６０  アイデンティティ情報、８６１  アイデンティティ情報ファイル、８６２  従業員氏名情報、８６３  従業員所属情報、８６４  従業員役職情報、８６５  アイデンティティ有効性情報、８６６  カード区分情報、８６７  カード所有者情報、８７１  アイデンティティ識別情報、８７２  アイデンティティ種類情報、８７３  アイデンティティ状態情報、９０１  表示装置、９０２  キーボード、９０３  マウス、９０４  ＦＤＤ、９０５  ＣＤＤ、９０６  プリンタ装置、９０７  スキャナ装置、９１０  システムユニット、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信ボード、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  ウィンドウシステム、９２３  プログラム群、９２４  ファイル群、９３１  電話器、９３２  ファクシミリ機、９４０  インターネット、９４１  ゲートウェイ、９４２  ＬＡＮ。
【図１】
2007310560.tif 000003
【図２】
2007310560.tif 000004
【図３】
2007310560.tif 000005
【図４】
2007310560.tif 000006
【図５】
2007310560.tif 000007
【図６】
2007310560.tif 000008
【図７】
2007310560.tif 000009
【図８】
2007310560.tif 000010
【図９】
2007310560.tif 000011
【図１０】
2007310560.tif 000012
【図１１】
2007310560.tif 000013
【図１２】
2007310560.tif 000014
【図１３】
2007310560.tif 000015
【図１４】
2007310560.tif 000016
【図１５】
2007310560.tif 000017
【図１６】
2007310560.tif 000018
【図１７】
2007310560.tif 000019
【図１８】
2007310560.tif 000020