(57)【要約】【課題】情報の状態の遷移の正当性を効率よく実行することができる遷移正当性判定プログラム、遷移正当性判定装置および遷移正当性判定方法を提供する。【解決手段】遷移正当性判定装置１０は、業務に含まれるプロセスの実行順序と前記プロセスのいずれかによって利用される情報に関するデータを含む業務フローデータから、情報の識別番号を選択する情報選択部１５１と、選択された識別番号によって識別される情報が業務において取り得る状態を洗い出す状態洗い出し部１５２と、洗い出された状態を組み合わせた組み合わせのうち、情報の状態の遷移として発生しうる組み合わせを洗い出す遷移洗い出し部１５３と、洗い出された組み合わせと、情報の状態の組み合わせ毎に遷移の要否が定義された遷移マスタ１４２とを照合した結果に基づいて、情報の状態の遷移が正当であるか否かを判定する正当性判定部１５４とを備える。【選択図】図１
2011003027.tif 000002
【特許請求の範囲】
【請求項１】
業務フローデータにおける情報の状態の遷移正当性判定をコンピュータに実行させる遷移正当性判定プログラムであって、
前記業務フローデータを構成する情報識別子、プロセス識別子、該プロセス識別子で特定されるプロセスの処理完了後の情報の状態を示す状態識別子、を対応付けて記憶した第一の記憶手段を参照し、処理対象として選択された情報識別子に対応するプロセス識別子と、該プロセス識別子に対応する状態識別子との組合せである情報状態データを出力する状態洗い出し手順と、
前記情報状態データのプロセス識別子の組合せのうち、前記業務フローデータを構成するプロセス識別子の組合せを記憶した第二の記憶手段に定義されている組合せを抽出し、抽出された該組合せを構成するプロセス識別子の各々に対応する状態識別子を該情報状態データから取得し、抽出された該組合せを構成するプロセス識別子、取得された該状態識別子の組合せである遷移データを出力する遷移洗い出し手順と、
前記遷移データと、情報の状態識別子の組み合わせ毎に遷移の要否が定義された規範データとを照合した結果に基づいて、前記情報識別子によって特定される情報の状態の遷移が正当であるか否かを判定する正当性判定手順と
をコンピュータに実行させることを特徴とする遷移正当性判定プログラム。
【請求項２】
前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報と集約関係にある情報を識別する第２の情報識別番号とを選択する情報選択手順をさらにコンピュータに実行させ、
前記状態洗い出し手順は、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする請求項１に記載の遷移正当性判定プログラム。
【請求項３】
前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報と共に業務フローデータに含まれる確率が所定の閾値以上である情報を識別する第２の情報識別番号とを選択する情報選択手順をさらにコンピュータに実行させ、
前記状態洗い出し手順は、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする請求項１に記載の遷移正当性判定プログラム。
【請求項４】
前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報との名前の類似度が所定の閾値以上である情報を識別する第２の情報識別番号とを選択する情報選択手順をさらにコンピュータに実行させ
前記状態洗い出し手順は、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする請求項１に記載の遷移正当性判定プログラム。
【請求項５】
業務フローデータにおける情報の状態の遷移正当性を判定する遷移正当性判定装置であって、
前記業務フローデータを構成する情報識別子、プロセス識別子、該プロセス識別子で特定されるプロセスの処理完了後の情報の状態を示す状態識別子、を対応付けて記憶した第一の記憶手段を参照し、処理対象として選択された情報識別子に対応するプロセス識別子と、該プロセス識別子に対応する状態識別子との組合せである情報状態データを出力する状態洗い出し部と、
前記情報状態データのプロセス識別子の組合せのうち、前記業務フローデータを構成するプロセス識別子の組合せを記憶した第二の記憶手段に定義されている組合せを抽出し、抽出された該組合せを構成するプロセス識別子の各々に対応する状態識別子を該情報状態データから取得し、抽出された該組合せを構成するプロセス識別子、取得された該状態識別子の組合せである遷移データを出力する遷移洗い出し部と、
前記遷移データと、情報の状態識別子の組み合わせ毎に遷移の要否が定義された規範データとを照合した結果に基づいて、前記情報識別子によって特定される情報の状態の遷移が正当であるか否かを判定する正当性判定部と
を備えたことを特徴とする遷移正当性判定装置。
【請求項６】
業務フローデータにおける情報の状態の遷移正当性を判定する遷移正当性判定方法であって、
前記業務フローデータを構成する情報識別子、プロセス識別子、該プロセス識別子で特定されるプロセスの処理完了後の情報の状態を示す状態識別子、を対応付けて記憶した第一の記憶手段を参照し、処理対象として選択された情報識別子に対応するプロセス識別子と、該プロセス識別子に対応する状態識別子との組合せである情報状態データを出力する状態洗い出しステップと、
前記情報状態データのプロセス識別子の組合せのうち、前記業務フローデータを構成するプロセス識別子の組合せを記憶した第二の記憶手段に定義されている組合せを抽出し、抽出された該組合せを構成するプロセス識別子の各々に対応する状態識別子を該情報状態データから取得し、抽出された該組合せを構成するプロセス識別子、取得された該状態識別子の組合せである遷移データを出力する遷移洗い出しステップと、
前記遷移データと、情報の状態識別子の組み合わせ毎に遷移の要否が定義された規範データとを照合した結果に基づいて、前記情報識別子によって特定される情報の状態の遷移が正当であるか否かを判定する正当性判定ステップと
を含んだことを特徴とする遷移正当性判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遷移正当性判定プログラム、遷移正当性判定装置および遷移正当性判定方法に関する。
【背景技術】
【０００２】
近年、内部統制の法制化等により、企業は、業務が適正に運営されているか否かを十分に検証することを強く求められている。かかる背景から、企業においては、業務において利用される情報を、業務に含まれる各プロセスの流れととともに業務フロー図等の形式で可視化し、情報の状態が適正な順序で遷移しているかを検証する作業が行われている。
【０００３】
情報の状態は、例えば、「初期状態」、「申請済み」、「承認済み」、「記録済み」、「コントロール済み」、「終了状態」の順序で遷移することが適正であり、状態が異なる順序で遷移している場合は、その情報を利用する業務の運営が適正でないと判断される。なお、業務において利用される情報を業務フロー図として可視化する技術は、例えば、特許文献１において開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２８２２８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、人間が、業務フロー図等のドキュメントの内容を目視で確認して、情報の状態の遷移の正当性を判定する場合、工数がかかるとともに確認ミスが生じることがあり効率が低いという間題があった。
【０００６】
開示の技術は、上記に鑑みてなされたものであって、情報の状態の遷移の正当性の判定を効率よく実行することができる遷移正当性判定プログラム、遷移正当性判定装置および遷移正当性判定方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願の開示する遷移正当性判定装置は、一つの態様において、業業務フローデータにおける情報の状態の遷移正当性を判定する遷移正当性判定装置であって、前記業務フローデータを構成する情報識別子、プロセス識別子、該プロセス識別子で特定されるプロセスの処理完了後の情報の状態を示す状態識別子、を対応付けて記憶した第一の記憶手段を参照し、処理対象として選択された情報識別子に対応するプロセス識別子と、該プロセス識別子に対応する状態識別子との組合せである情報状態データを出力する状態洗い出し部と、前記情報状態データのプロセス識別子の組合せのうち、前記業務フローデータを構成するプロセス識別子の組合せを記憶した第二の記憶手段に定義されている組合せを抽出し、抽出された該組合せを構成するプロセス識別子の各々に対応する状態識別子を該情報状態データから取得し、抽出された該組合せを構成するプロセス識別子、取得された該状態識別子の組合せである遷移データを出力する遷移洗い出し部と、前記遷移データと、情報の状態識別子の組み合わせ毎に遷移の要否が定義された規範データとを照合した結果に基づいて、前記情報識別子によって特定される情報の状態の遷移が正当であるか否かを判定する正当性判定部とを備える。
【発明の効果】
【０００８】
本願の開示する遷移正当性判定プログラム、遷移正当性判定装置および遷移正当性判定方法の一つの態様によれば、情報の状態の遷移の正当性を効率よく実行することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施例１に係る遷移正当性判定装置の構成を示す機能ブロック図である。
【図２】図２は、業務フロー図の一例を示す図である。
【図３】図３は、状態名辞書の一例を示す図である。
【図４】図４は、遷移マスタの一例を示す図である。
【図５】図５は、プロセスリストの一例を示す図である。
【図６】図６は、情報リストの一例を示す図である。
【図７】図７は、フローリストの一例を示す図である。
【図８】図８は、利用対象情報リストの一例を示す図である。
【図９】図９は、情報状態データの一例を示す図である。
【図１０−１】図１０−１は、遷移データの一例を示す図である。
【図１０−２】図１０−２は、遷移データの一例を示す図である。
【図１１】図１１は、判定結果の出力例を示す図である。
【図１２】図１２は、判定結果の他の出力例を示す図である。
【図１３】図１３は、正当性判定処理の処理手順を示すフローチャートである。
【図１４】図１４は、状態洗い出し処理の処理手順を示すフローチャートである。
【図１５】図１５は、遷移洗い出し処理の処理手順を示すフローチャートである。
【図１６】図１６は、遷移データ作成処理の処理手順を示すフローチャートである。
【図１７】図１７は、遷移可否判定処理の処理手順を示すフローチャートである。
【図１８】図１８は、関連を有する情報が更新される業務フロー図の一例を示す図である。
【図１９】図１９は、実施例２に係る遷移正当性判定装置の構成を示す機能ブロック図である。
【図２０】図２０は、情報定義データの一例を示す図である。
【図２１】図２１は、クラス図の一例を示す図である。
【図２２】図２２は、情報リストの一例を示す図である。
【図２３】図２３は、利用対象情報リストの一例を示す図である。
【図２４】図２４は、正当性判定処理の処理手順を示すフローチャートである。
【図２５】図２５は、業務フロー図を表すＸＭＬ形式のデータの一例を示す図である。
【図２６】図２６は、遷移正当性判定プログラムを実行するコンピュータを示す機能ブロック図である。
【発明を実施するための形態】
【００１０】
以下に、本願の開示する遷移正当性判定プログラム、遷移正当性判定装置および遷移正当性判定方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１１】
まず、実施例１に係る遷移正当性判定装置１０について説明する。図１は、遷移正当性判定装置１０の構成を示す機能ブロック図である。遷移正当性判定装置１０は、業務に含まれるプロセスによって利用される情報の状態の遷移が適正であるか否かを判定するための正当性判定処理を実行する。ここでいう「プロセスによって利用される情報」には、データベースのテーブルに格納されているレコードのような電子的な情報に加えて、紙のような物理的な媒体に表された情報が含まれる。
【００１２】
遷移正当性判定装置１０は、情報の状態の遷移が適正であるかを判断するために、業務フロー図を構成する電子データを用いる。遷移正当性判定装置１０が用いる電子データは、業務に含まれる各プロセスの流れに関するデータと、各プロセスによって利用される情報に関するデータを含む。
【００１３】
遷移正当性判定装置１０が用いる電子データが表す業務フロー図の一例を図２に示す。図２に示す業務フロー図は、図示対象の業務が、「受注情報の申請」、「受注申請処理」、「上長による受注情報の更新」、「承認処理」、「受注明細の変更」、「受注明細の変更処理」という６つのプロセスを順に実行することで実現されることを示している。
【００１４】
これらのプロセスのうち、実線と点線の二重線で囲まれたプロセス、すなわち、「受注情報の申請」、「上長による受注情報の更新」、「受注明細の変更」は、情報処理システムに対して処理の実行を依頼するプロセスである。そして、実線の二重線で囲まれたプロセス、すなわち、「受注申請処理」、「承認処理」、「受注明細の変更処理」は、情報処理システムによって実行されるプロセスである。
【００１５】
また、図２に示す業務フロー図では、「受注申請処理」、「承認処理」、「受注明細の変更処理」の３つのプロセスが、「受注ＤＢ」と点線の矢印で接続されている。これらの点線の矢印は、これら３つのプロセスが、「受注ＤＢ」という情報を利用することを示している。したがって、遷移正当性判定装置１０は、図２に示す業務フロー図を構成する電子データを用いて正当性判定処理を実行することにより、「受注ＤＢ」という情報の状態が適正に遷移しているか否かを判定する。
【００１６】
図１に示すように、遷移正当性判定装置１０は、入力部１１０と、表示部１２０と、一時記憶部１３０と、記憶部１４０と、制御部１５０とを有する。
【００１７】
入力部１１０は、利用者が遷移正当性判定装置１０に対してデータや指示を入力するための装置であり、例えば、キーボードやマウスである。表示部１２０は、各種データを表示するための装置であり、例えば、液晶表示装置である。一時記憶部１３０は、各種処理において用いられるデータを一時的に記憶する記憶装置であり、例えば、ＤＲＡＭ（Dynamic Random Access Memory）である。
【００１８】
記憶部１４０は、不揮発性を有する記憶装置であり、例えば、ハードディスク装置である。記憶部１４０は、状態名辞書１４１、遷移マスタ１４２、業務フローデータ１４３といったデータを記憶する。
【００１９】
状態名辞書１４１は、情報の状態を変化させるプロセスの名称に含まれるキーワードと、そのキーワードを名称に含むプロセスによって利用された後の情報の状態とを対応付けて保持する。状態名辞書１４１の一例を図３に示す。図３に示すように、状態名辞書１４１は、状態名、遷移発生語といった項目を有する。
【００２０】
状態名は、プロセスによる利用によって変化した後の情報の状態を表す名称である。遷移発生語は、情報の状態を変化させるプロセスの名称に含まれるキーワードである。図３に示す状態名辞書１４１の１行目のレコードには、状態名として「申請済み」が設定され、遷移発生語として「申請、登録、更新、修正、変更」が設定されている。この１行目のレコードは、名称に「申請」、「登録」、「更新」、「修正」または「変更」が含まれているプロセスによって情報が利用された場合、利用後にその情報の状態が「申請済み」へ変化することを示している。
【００２１】
なお、状態名辞書１４１の内容は、例えば、プロセスの処理内容毎にプロセスの名称の付け方を定めた命名規約等に基づいて予め設定される。
【００２２】
遷移マスタ１４２は、情報の状態の遷移が正当であるか否かを遷移前後の状態の組み合わせ毎に保持する。遷移マスタ１４２の一例を図４に示す。図４に示すように、遷移マスタ１４２は、前状態名、後状態名、遷移可否といった項目を有する。
【００２３】
前状態名は、プロセスによる利用によって変化する前の情報の状態を表す名称である。後状態名は、プロセスによる利用によって変化した後の情報の状態を表す名称である。遷移可否は、前状態名と後状態名の組み合わせによって表される状態の遷移の正当性を示し、「必須」、「任意」、「不可」のずれかの値をとる。「必須」は、対応する状態の遷移が正当であり、かつ、必須であることを示す。「任意」は、対応する状態の遷移が正当であり、かつ、あってもなくてもよいことを示す。「不可」は、対応する状態の遷移があってはならないことを示す。
【００２４】
図４に示す遷移マスタ１４２の１行目のレコードには、前状態名として「初期状態」が設定され、後状態名として「申請済み」が設定され、遷移可否として「必須」が設定されている。この１行目のレコードは、「初期状態」から「申請済み」への状態の遷移が正当であり、かつ、必須であることを示している。なお、遷移マスタ１４２の内容は、内部統制等の規範に基づいて予め設定される。
【００２５】
業務フローデータ１４３は、業務フロー図を構成するデータであり、プロセスリスト１４３ａと、情報リスト１４３ｂと、フローリスト１４３ｃと、利用対象情報リスト１４３ｄとを含み、業務フロー図毎に存在する。なお、業務フローデータ１４３は、遷移正当性判定装置１０において編集者の操作に基づいて編集されたものであってもよいし、他の装置において編集された後にネットワークや記憶媒体を介して遷移正当性判定装置１０へ転送されたものであってもよい。
【００２６】
プロセスリスト１４３ａは、業務フロー図に含まれるプロセスの一覧データである。プロセスリスト１４３ａの一例を図５に示す。図５に示すように、プロセスリスト１４３ａは、プロセスＩＤ、プロセス種別、プロセス名といった項目を有する。プロセスＩＤは、プロセスを識別するための識別番号である。プロセス名は、プロセスの名称である。
【００２７】
プロセス種別は、プロセスの種別であり、「ＩｎｉｔｉａｌＮｏｄｅ」、「ＳｙｓｔｅｍＳｕｐｐｏｒｔｅｄＰｒｏｃｅｓｓ」、「ＦｕｌｌｙＡｕｔｏｍａｔｅｄＰｒｏｃｅｓｓ」、「ＦｉｎａｌＮｏｄｅ」といった値をとる。「ＩｎｉｔｉａｌＮｏｄｅ」および「ＦｉｎａｌＮｏｄｅ」は、それぞれ、起点と終点を表す特殊なプロセスに対応する種別であり、業務フロー図毎に１つずつ存在する。図２に示した例では、「ＩｎｉｔｉａｌＮｏｄｅ」に対応するプロセスは、黒い円として表示されており、「ＦｉｎａｌＮｏｄｅ」に対応するプロセスは、縁取りを有する黒い円として表示されている。
【００２８】
「ＳｙｓｔｅｍＳｕｐｐｏｒｔｅｄＰｒｏｃｅｓｓ」は、情報処理システムに対して処理の実行を依頼するプロセスに対応する種別である。図２に示した業務フロー図の例では、「ＳｙｓｔｅｍＳｕｐｐｏｒｔｅｄＰｒｏｃｅｓｓ」に対応するプロセスは、実線と点線の二重線で囲まれた長円として表示されている。「ＦｕｌｌｙＡｕｔｏｍａｔｅｄＰｒｏｃｅｓｓ」は、情報処理システムによって実行されるプロセスに対応する種別である。図２に示した業務フロー図の例では、「ＦｕｌｌｙＡｕｔｏｍａｔｅｄＰｒｏｃｅｓｓ」に対応するプロセスは、実線の二重線で囲まれた長円として表示されている。
【００２９】
図５に示すプロセスリスト１４３ａの２行目のレコードには、プロセスＩＤとして「ＳＳ−Ｐｒｏｃｅｓｓ２１」が設定され、プロセス種別として「ＳｙｓｔｅｍＳｕｐｐｏｒｔｅｄＰｒｏｃｅｓｓ」が設定され、プロセス名として「受注情報の申請」が設定されている。この２行目のレコードは、「ＳＳ−Ｐｒｏｃｅｓｓ２１」という識別番号で識別され、「受注情報の申請」という名称を有し、情報処理システムに対して処理の実行を依頼するプロセスが業務フロー図に含まれることを示している。
【００３０】
情報リスト１４３ｂは、業務フロー図に含まれるプロセスによって利用される情報の一覧データである。情報リスト１４３ｂの一例を図６に示す。図６に示すように、情報リスト１４３ｂは、情報ＩＤ、情報種別、情報名といった項目を有する。情報ＩＤは、情報を識別するための識別番号である。情報名は、情報の名称である。
【００３１】
情報種別は、情報の種別であり、「ＳｉｎｇｌｅＤＢ」、「ＭｕｌｔｉＤＢ」、「ＳｉｎｇｌｅＤｏｃ」といった項目を有する。「ＳｉｎｇｌｅＤＢ」は、単一のテーブルを含むデータベースに対応する種別である。「ＭｕｌｔｉＤＢ」は、複数のテーブルを含むデータベースに対応する種別である。「ＳｉｎｇｌｅＤｏｃ」は、単一の文書に対応する種別である。
【００３２】
図６に示す情報リスト１４３ｂの１行目のレコードには、情報ＩＤとして「Ｍｕｌｔｉ１」が設定され、情報種別として「ＭｕｌｔｉＤＢ」が設定され、情報名として「受注ＤＢ」が設定されている。この１行目のレコードは、「Ｍｕｌｔｉ１」という識別番号で識別され、「受注ＤＢ」という名称を有し、複数のテーブルを含むデータベースが、業務フロー図に含まれるプロセスによって利用されることを示している。
【００３３】
フローリスト１４３ｃは、業務フロー図に含まれるプロセスの実行順序の前後関係を表すフローの一覧データである。フローは、図２に示した業務フロー図の例において各プロセス間を接続する矢印に相当する。フローリスト１４３ｃの一例を図７に示す。図７に示すように、フローリスト１４３ｃは、フローＩＤ、前プロセスＩＤ、後プロセスＩＤといった項目を有する。
【００３４】
フローＩＤは、フローを識別するための識別番号である。前プロセスＩＤは、前工程にあたるプロセスを識別するための識別番号であり、プロセスリスト１４３ａのプロセスＩＤと対応する。後プロセスＩＤは、後工程にあたるプロセスを識別するための識別番号であり、プロセスリスト１４３ａのプロセスＩＤと対応する。図２に示した業務フロー図の例においては、フローＩＤによって識別される矢印の接続元のプロセスが前プロセスＩＤによって識別されるプロセスであり、接続先のプロセスが後プロセスＩＤによって識別されるプロセスである。
【００３５】
図７に示すフローリスト１４３ｃの１行目のレコードには、フローＩＤとして「ＣＦｌｏｗ２１」が設定され、前プロセスＩＤとして「ＩｎｉｔｉａｌＮｏｄｅ２」が設定され、後プロセスＩＤとして「ＳＳ−Ｐｒｏｃｅｓｓ２１」が設定されている。この１行目のレコードは、「ＩｎｉｔｉａｌＮｏｄｅ２」という識別番号で識別されるプロセスが実行された後に、「ＳＳ−Ｐｒｏｃｅｓｓ２１」という識別番号で識別されるプロセスが実行されることを示している。
【００３６】
利用対象情報リスト１４３ｄは、業務フロー図に含まれるプロセスと、プロセスによって利用される情報の対応の一覧データである。利用対象情報リスト１４３ｄの一例を図８に示す。図８に示すように、利用対象情報リスト１４３ｄは、プロセスＩＤ、情報ＩＤといった項目を有する。
【００３７】
プロセスＩＤは、プロセスを識別するための識別番号であり、プロセスリスト１４３ａのプロセスＩＤと対応する。情報ＩＤは、プロセスによって利用される情報を識別するための識別番号であり、情報リスト１４３ｂの情報ＩＤと対応する。図２に示した業務フロー図の例においては、利用対象情報リスト１４３ｄの各レコードは、プロセスと「受注ＤＢ」という名称の情報とを接続する点線の矢印に相当する。
【００３８】
図８に示す利用対象情報リスト１４３ｄの１行目のレコードには、プロセスＩＤとして「ＦＡ−Ｐｒｏｃｅｓｓ２１」が設定され、情報ＩＤとして「Ｍｕｌｔｉ１」が設定されている。この１行目のレコードは、「ＦＡ−Ｐｒｏｃｅｓｓ２１」という識別番号で識別されるプロセスが、「Ｍｕｌｔｉ１」という識別番号で識別される情報を利用することを示している。
【００３９】
なお、図５〜図８に示した業務フローデータ１４３の各データは、図２に示した業務フロー図を構成するためのデータである。
【００４０】
制御部１５０は、遷移正当性判定装置１０を全体制御する制御部であり、情報選択部１５１と、状態洗い出し部１５２と、遷移洗い出し部１５３と、正当性判定部１５４と、判定結果出力部１５５とを有する。
【００４１】
情報選択部１５１は、情報リスト１４３ｂに保持されている情報の中から遷移の正当性を判定する対象となる情報を選択する。具体的には、情報選択部１５１は、情報リスト１４３ｂに保持されている情報ＩＤを順次選択し、制御部１５０は、情報選択部１５１によって選択された情報ＩＤによって識別されるそれぞれの情報を対象として正当性判定処理を実行する。
【００４２】
なお、情報リスト１４３ｂに保持されている情報ＩＤを順次選択するのではなく、利用者等によって指定された情報に対応する情報ＩＤを選択するように情報選択部１５１を構成することとしてもよい。
【００４３】
状態洗い出し部１５２は、情報選択部１５１によって選択された情報ＩＤによって識別される情報が、どのプロセスによってどのように状態を変化させられるかを洗い出す。具体的には、状態洗い出し部１５２は、情報選択部１５１によって選択された情報ＩＤを利用対象情報リスト１４３ｄと照合することによって、情報ＩＤによって識別される情報を利用するプロセスを抽出する。続いて、状態洗い出し部１５２は、抽出されたプロセスの名称を状態名辞書１４１と照合することにより、プロセスが情報の状態を変化させるかを判定するとともに、状態を変化させる場合の変化後の状態の名称を取得する。状態洗い出し部１５２は、情報の状態を変化させるプロセスのプロセスＩＤと、そのプロセスの利用後の状態の名称とを対応づけて格納した情報状態データを一時記憶部１３０に作成する。
【００４４】
業務フローデータ１４３に含まれる各データが図５〜図８の通りであり、情報選択部１５１によって選択された情報ＩＤが「Ｍｕｌｔｉ１」である場合に作成される情報状態データの一例を図９に示す。図９に示すように、情報状態データは、プロセスＩＤ、状態名といった項目を有する。プロセスＩＤは、情報選択部１５１によって選択された情報ＩＤによって識別される情報の状態を変化させるプロセスを識別するための識別番号であり、プロセスリスト１４３ａのプロセスＩＤと対応する。状態名は、プロセスによって利用された後の情報の状態の名称である。
【００４５】
遷移洗い出し部１５３は、状態洗い出し部１５２によって作成された情報状態データに含まれる状態名の組み合わせの中から、実際に発生する状態の遷移に対応する組み合わせを洗い出す。具体的には、遷移洗い出し部１５３は、まず、情報状態データに含まれるレコードを２つずつ組み合わせて遷移データを一時記憶部１３０に作成する。
【００４６】
業務フローデータ１４３に含まれる各データが図５〜図８の通りであり、状態洗い出し部１５２によって作成された情報状態データが図９の通りである場合に作成される遷移データの一例を図１０−１に示す。図１０−１に示すように、遷移データは、前プロセスＩＤ、前状態名、後プロセスＩＤ、後状態名、遷移有無といった項目を有する。
【００４７】
前プロセスＩＤは、先行するプロセスを識別するための識別番号であり、プロセスリスト１４３ａのプロセスＩＤと対応する。前状態名は、前プロセスＩＤによって識別されるプロセスによって利用された後の情報の状態の名称である。後プロセスＩＤは、後続するプロセスを識別するための識別番号であり、プロセスリスト１４３ａのプロセスＩＤと対応する。後状態名は、後プロセスＩＤによって識別されるプロセスによって利用された後の情報の状態の名称である。前プロセスＩＤと前状態名には、組み合わされたレコードの一方に格納されていたプロセスＩＤと状態名が格納され、後プロセスＩＤと後状態名には、組み合わされたもう一方に格納されていたプロセスＩＤと状態名が格納される。
【００４８】
遷移有無は、業務フローデータ１４３が表す業務において、前状態名が示す状態から後状態名が示す状態への遷移が発生するか否かを示す。遷移が発生する場合、遷移有無には「１」が設定され、遷移が発生しない場合、遷移有無には「０」が設定される。遷移洗い出し部１５３は、図１０−１に示すように、遷移有無に初期値として「０」を設定する。
【００４９】
そして、遷移洗い出し部１５３は、遷移データのレコード毎に、そのレコードが示す状態の遷移が発生するかを判定し、図１０−２に示すように、遷移が発生するレコードの遷移有無を「１」へ更新する。遷移データのレコードが示す状態の遷移が発生するか否かを判定するための条件は２つある。第１の条件は、後プロセスＩＤによって識別されるプロセスが、前プロセスＩＤによって識別されるプロセスよりも後に実行されることである。第２の条件は、前プロセスＩＤによって識別されるプロセスと後プロセスＩＤによって識別されるプロセスの間で、遷移の正当性を判定する対象の情報の状態が他のプロセスによって変更されないことである。
【００５０】
遷移洗い出し部１５３は、これら２つの条件がともに満たされた場合に、遷移データのレコードが示す状態の遷移が発生すると判定する。遷移洗い出し部１５３は、これら２つの条件が満たされるか否かを判断するために、フローリスト１４３ｃ、利用対象情報リスト１４３ｄ、プロセスリスト１４３ａ、状態名辞書１４１を参照する。なお、遷移洗い出し部１５３が実行する処理の詳細については後述する。
【００５１】
正当性判定部１５４は、遷移洗い出し部１５３によって作成された遷移データと遷移マスタ１４２とを照合して、情報の遷移の正当性を判定する。具体的には、正当性判定部１５４は、遷移マスタ１４２において遷移可否が「不可」とされている前状態名と後状態名の組み合わせと同一の組み合わせを有するレコードが遷移データに存在し、そのレコードの遷移可否が「１」の場合に、遷移が正当でないと判断する。また、正当性判定部１５４は、遷移マスタ１４２において遷移可否が「必須」とされている前状態名と後状態名の組み合わせと同一の組み合わせを有するレコードが遷移データに存在しないか、そのレコードが存在しても遷移可否が「０」の場合に、遷移が正当でないと判断する。
【００５２】
判定結果出力部１５５は、正当性判定部１５４の判定結果を出力する。なお、判定結果を出力する方式は、例えば、表示部１２０に表示する方式でもよいし、図示しない印字装置に出力する方式でもよいし、記憶部１４０または他の情報処理装置の記憶部に電子データとして出力する方式でもよい。
【００５３】
判定結果の出力例を図１１に示す。図１１の出力例では、業務フロー図上で、情報の遷移が正常でない部分に「×」を表示することによって、その遷移が適正でないことを示している。判定結果の他の出力例を図１２に示す。図１２の出力例では、存在しうる状態の遷移が表形式で出力され、各遷移について正当であるか否かが示されている。
【００５４】
次に、遷移正当性判定装置１０によって実行される処理の処理手順について説明する。図１３は、正当性判定処理の処理手順を示すフローチャートである。図１３に示すように、情報選択部１５１は、まず、変数ｉを１に設定する（ステップＳ１０１）。そして、情報選択部１５１は、情報リスト１４３ｂからｉ番目のレコードの情報ＩＤを判定対象の情報の情報ＩＤとして取得する（ステップＳ１０２）。
【００５５】
ここで、情報リスト１４３ｂからｉ番目のレコードの情報ＩＤを取得できた場合は（ステップＳ１０３肯定）、状態洗い出し部１５２が後述する状態洗い出し処理を実行して、図９に示すような情報状態データを作成する（ステップＳ１０４）。そして、遷移洗い出し部１５３が、後述する遷移洗い出し処理を実行して、図１０−２に示すような遷移データを作成する（ステップＳ１０５）。
【００５６】
続いて、正当性判定部１５４が、遷移データと遷移マスタ１４２とを照合して、判定対象の情報の状態の遷移が正当であるか否かを判定し（ステップＳ１０６）、判定結果出力部１５５が、正当性判定部１５４の判定結果を出力する（ステップＳ１０７）。
【００５７】
こうして、判定対象の情報に関する一連の処理が完了した後に、情報選択部１５１は、変数ｉに１を加算し（ステップＳ１０８）、ステップＳ１０２以降の処理手順が再実行される。そして、ステップＳ１０２でｉ番目のレコードの情報ＩＤを取得できなかった場合、すなわち、情報リスト１４３ｂから全ての情報ＩＤを取得し終えていた場合に（ステップＳ１０３否定）、正当性判定処理が終了する。
【００５８】
図１４は、状態洗い出し処理の処理手順を示すフローチャートである。図１４に示すように、状態洗い出し部１５２は、まず、空の情報状態データを作成し（ステップＳ２０１）、変数ｊを１に設定する（ステップＳ２０２）。そして、状態洗い出し部１５２は、利用対象情報リスト１４３ｄからｊ番目のレコードを取得する（ステップＳ２０３）。
【００５９】
ここで、利用対象情報リスト１４３ｄからｊ番目のレコードを取得できた場合は（ステップＳ２０４肯定）、状態洗い出し部１５２は、レコードに設定されている情報ＩＤを判定対象の情報の情報ＩＤと比較する（ステップＳ２０５）。そして、情報ＩＤが一致しなければ（ステップＳ２０６否定）、状態洗い出し部１５２は、変数ｊに１を加算し（ステップＳ２１１）、ステップＳ２０３から処理手順を再実行する。
【００６０】
一方、情報ＩＤが一致した場合（ステップＳ２０６肯定）、状態洗い出し部１５２は、レコードに設定されているプロセスＩＤに対応するプロセス名をプロセスリスト１４３ａから取得する（ステップＳ２０７）。
【００６１】
続いて、状態洗い出し部１５２は、状態名辞書１４１の遷移発生語に設定されている各キーワードをプロセス名と照合する。そして、プロセス名に含まれるキーワードがあれば、状態洗い出し部１５２は、そのキーワードと対応付けて状態名辞書１４１に保持されている状態名を処理完了後の状態名として特定する（ステップＳ２０８）。
【００６２】
そして、処理完了後の状態名を特定できた場合は（ステップＳ２０９肯定）、状態洗い出し部１５２は、プロセスＩＤと状態名を対応付けて情報状態データに登録する（ステップＳ２１０）。そして、状態洗い出し部１５２は、変数ｊに１を加算し（ステップＳ２１１）、ステップＳ２０３から処理手順を再実行する。
【００６３】
一方、処理完了後の状態名を特定できなかった場合は（ステップＳ２０９否定）、状態洗い出し部１５２は、情報状態データにレコードを登録することなく、変数ｊに１を加算し（ステップＳ２１１）、ステップＳ２０３から処理手順を再実行する。
【００６４】
そして、ステップＳ２０３でｊ番目のレコードを取得できなかった場合、すなわち、利用対象情報リスト１４３ｄから全てのレコードを取得し終えていた場合に（ステップＳ２０４否定）、状態洗い出し処理が終了する。
【００６５】
図１５は、遷移洗い出し処理の処理手順を示すフローチャートである。図１５に示すように、遷移洗い出し部１５３は、まず、後述する遷移データ作成処理を実行して、遷移データを初期生成する（ステップＳ３０１）。この段階では、遷移データの遷移可否には、「０」が初期設定される。そして、遷移洗い出し部１５３は、変数ｍを１に設定する（ステップＳ３０２）。
【００６６】
続いて、遷移洗い出し部１５３は、遷移データからｍ番目のレコードを取得する（ステップＳ３０３）。ここで、遷移データからｍ番目のレコードを取得できた場合は（ステップＳ３０４肯定）、遷移洗い出し部１５３は、後述する遷移可否判定処理を実行して、取得したレコードが表す状態の遷移が発生するか否かを判定する（ステップＳ３０５）。そして、遷移洗い出し部１５３は、変数ｍに１を加算し（ステップＳ３０６）、ステップＳ３０３から処理手順を再実行する。
【００６７】
そして、ステップＳ３０３でｍ番目のレコードを取得できなかった場合、すなわち、遷移データから全てのレコードを取得し終えていた場合に（ステップＳ３０４否定）、遷移洗い出し処理が終了する。
【００６８】
図１６は、遷移データ作成処理の処理手順を示すフローチャートである。図１６に示すように、遷移洗い出し部１５３は、まず、空の遷移データを初期生成する（ステップＳ４０１）。そして、遷移洗い出し部１５３は、変数ｊを１に設定する（ステップＳ４０２）。さらに、遷移洗い出し部１５３は、プロセス種別が「ＩｎｉｔｉａｌＮｏｄｅ」のレコードのプロセスＩＤをプロセスリスト１４３ａから取得する（ステップＳ４０３）。また、遷移洗い出し部１５３は、プロセス種別が「ＦｉｎａｌＮｏｄｅ」のレコードのプロセスＩＤをプロセスリスト１４３ａから取得する（ステップＳ４０４）。
【００６９】
続いて、遷移洗い出し部１５３は、情報状態データからｊ番目のレコードを取得する（ステップＳ４０５）。ここで、情報状態データからｊ番目のレコードを取得できた場合は（ステップＳ４０６肯定）、遷移洗い出し部１５３は、変数ｋを０に設定する（ステップＳ４０７）。
【００７０】
そして、遷移洗い出し部１５３は、変数ｋに１を加算する（ステップＳ４０８）。ここで、変数ｊの値と変数ｋの値が同一の場合（ステップＳ４０９肯定）、遷移洗い出し部１５３は、ステップＳ４０８から処理手順を再実行する。
【００７１】
一方、変数ｊの値と変数ｋの値が同一でなければ（ステップＳ４０９否定）、情報状態データからｋ番目のレコードを取得する（ステップＳ４１０）。ここで、情報状態データからｋ番目のレコードを取得できた場合は（ステップＳ４１１肯定）、遷移洗い出し部１５３は、以下のように遷移データにレコードを登録する。すなわち、遷移洗い出し部１５３は、ｊ番目のレコードのプロセスＩＤと状態名を前プロセスＩＤおよび前状態名とし、ｋ番目のレコードのプロセスＩＤと状態名を後プロセスＩＤおよび後状態名として遷移データに登録する（ステップＳ４１２）。そして、遷移洗い出し部１５３は、ステップＳ４０８から処理手順を再実行する。
【００７２】
そして、ステップＳ４１０でｋ番目のレコードを取得できなかった場合、すなわち、情報状態データから全てのレコードを取得し終えていた場合（ステップＳ４１１否定）、遷移洗い出し部１５３は、以下のように遷移データにレコードを登録する。すなわち、遷移洗い出し部１５３は、ｊ番目のレコードのプロセスＩＤと状態名を後プロセスＩＤおよび後状態名とし、ステップＳ４０３で取得したプロセスＩＤを前プロセスＩＤとし、「初期状態」を前状態名として遷移データに登録する（ステップＳ４１３）。
【００７３】
また、遷移洗い出し部１５３は、ｊ番目のレコードのプロセスＩＤと状態名を前プロセスＩＤおよび前状態名とし、ステップＳ４０４で取得したプロセスＩＤを後プロセスＩＤとし、「終了状態」を後状態名として遷移データに登録する（ステップＳ４１４）。そして、遷移洗い出し部１５３は、変数ｊに１を加算して（ステップＳ４１５）、ステップＳ４０５から処理手順を再実行する。
【００７４】
そして、ステップＳ４０５でｊ番目のレコードを取得できなかった場合、すなわち、情報状態データから全てのレコードを取得し終えていた場合（ステップＳ４０６否定）、遷移データ作成処理が終了する。
【００７５】
図１７は、遷移可否判定処理の処理手順を示すフローチャートである。図１７に示すように、遷移洗い出し部１５３は、まず、遷移データのｍ番目のレコードの前プロセスＩＤと同一のプロセスＩＤを前プロセスＩＤとして有するレコードをフローリストから取得する（ステップＳ５０１）。
【００７６】
続いて、遷移洗い出し部１５３は、フローリスト１４３ｃから取得したレコードの後プロセスＩＤを取得する（ステップＳ５０２）。ここで、取得した後プロセスＩＤの値が、ステップＳ５０１でフローリスト１４３ｃから取得したレコードの後プロセスＩＤの値と一致した場合（ステップＳ５０３肯定）、遷移洗い出し部１５３は、遷移データのｍ番目のレコードが示す遷移が発生すると判定する。そして、遷移洗い出し部１５３は、遷移データのｍ番目のレコードの遷移有無を「１」へ変更し（ステップＳ５０４）、遷移可否判定処理が終了する。
【００７７】
一方、取得した後プロセスＩＤの値が、ステップＳ５０１でフローリスト１４３ｃから取得したレコードの後プロセスＩＤの値と一致しない場合（ステップＳ５０３否定）、遷移洗い出し部１５３は、以下の処理手順を実行する。すなわち、遷移洗い出し部１５３は、ステップＳ５０２で取得した後プロセスＩＤに対応するプロセス種別をプロセスリスト１４３ａから取得し、そのプロセス種別が「ＦｉｎａｌＮｏｄｅ」であるかを確認する。そして、プロセス種別が「ＦｉｎａｌＮｏｄｅ」である場合（ステップＳ５０５肯定）、上述した第１の条件が満たされないので、遷移有無を更新することなく遷移可否判定処理が終了する。
【００７８】
プロセス種別が「ＦｉｎａｌＮｏｄｅ」でなければ（ステップＳ５０５否定）、ステップＳ５０２で取得した後プロセスＩＤによって識別されるプロセスが利用する情報の情報ＩＤを利用対象情報リスト１４３ｄから取得する。そして、取得された情報ＩＤが、判定対象の情報の情報ＩＤと一致しなければ（ステップＳ５０６否定）、ステップＳ５０２で取得した後プロセスＩＤによって識別されるプロセスは、判定対象の情報の状態の遷移とは関係がないと判断できる。
【００７９】
この場合、遷移洗い出し部１５３は、次工程に相当するレコードをフローリスト１４３ｃから取得する。具体的には、遷移洗い出し部１５３は、ステップＳ５０２で取得した後プロセスＩＤと同一のプロセスＩＤを前プロセスＩＤとして有するレコードをフローリスト１４３ｃから取得する（ステップＳ５０８）。そして、遷移洗い出し部１５３は、ステップＳ５０２から処理手順を再実行する。
【００８０】
一方、取得された情報ＩＤが、判定対象の情報の情報ＩＤと一致した場合（ステップＳ５０６肯定）、ステップＳ５０２で取得した後プロセスＩＤによって識別されるプロセスは、判定対象の情報を利用するものであることが分かる。この場合、遷移洗い出し部１５３は、ステップＳ５０２で取得した後プロセスＩＤによって識別されるプロセスのプロセス名をプロセスリスト１４３ａから取得する。
【００８１】
そして、遷移洗い出し部１５３は、状態名辞書１４１の遷移発生語に設定されている各キーワードをプロセス名と照合する。ここで、プロセス名に含まれるキーワードがあれば、後プロセスＩＤによって識別されるプロセスによって判定対象の情報の状態が変化し、上述した第２の条件が満たされないので（ステップＳ５０７肯定）、遷移有無を更新することなく遷移可否判定処理が終了する。
【００８２】
一方、プロセス名に含まれるキーワードがなければ（ステップＳ５０７否定）、次工程に相当するレコードをフローリスト１４３ｃから取得する。具体的には、遷移洗い出し部１５３は、ステップＳ５０２で取得した後プロセスＩＤと同一のプロセスＩＤを前プロセスＩＤとして有するレコードをフローリスト１４３ｃから取得する（ステップＳ５０８）。そして、遷移洗い出し部１５３は、ステップＳ５０２から処理手順を再実行する。
【００８３】
上述してきたように、本実施例では、業務の実行に伴って発生する情報の遷移を業務フローデータ１４３から洗い出し、洗い出した遷移を遷移マスタ１４２と照合して正当性を判定することとしたので、情報の状態の遷移の正当性を漏れなく効率よく判定することができる。
【実施例２】
【００８４】
実施例１では、業務に含まれる情報を１つずつ判定対象として状態の遷移の正当性を判定する方式を示したが、業務フロー図の作成の仕方によっては、この方式では適切な判定結果が得られない場合がある。かかる場合について図１８を参照しながら説明する。
【００８５】
図１８は、関連を有する情報が更新される業務フローの一例を示す図である。図１８に示す業務フロー図は、図２に示した業務フロー図と比較すると、「受注明細ＤＢ」という名称の情報が追加されている点と、「受注明細の変更承認」という名称のプロセスが、その追加された情報を利用するようになっている点で相違する。
【００８６】
ここで、「受注明細ＤＢ」という名称の情報は、複数の情報の集合体である「受注ＤＢｊという名称の情報に含まれる情報の１つであるものとする。この場合、「受注明細ＤＢｊという名称の情報を更新すれば、たちまち、「受注ＤＢ」という名称の情報も更新されることになる。
【００８７】
このように‐方の情報の更新が他方の情報の状態に影響を与えるような強い関係にある複数の情報が業務フロー図に含まれている場合、個々の情報毎に情報の状態の遷移の正当性を検証すると、状態の遷移の一部を洗い出すことができない。例えば、図１８に示した例の場合、「受注明細の変更承認」という名称のプロセスが「受注明細ＤＢ」という名称の情報を更新することによって、「受注ＤＢ」という名称の情報も更新されて状態が遷移する。しかし、「受注ＤＢ」という名称の情報だけに注目して情報の遷移を洗い出すと、「受注明細ＤＢ」という名称の情報の更新に伴って発生する状態の遷移を見つけることができない。
【００８８】
そこで、実施例２に係る遷移正当性判定装置２０は、強い関係にある複数の情報が業務フロー図に含まれている場合、それらの情報を組み合わせた単位で状態の遷移の洗い出しと正当性の判定を実行する。以下、実施例２に係る遷移正当性判定装置２０について説明する。
【００８９】
まず、実施例２に係る遷移正当性判定装置２０の構成について説明する、なお、以下の説明では、既に説明した部分と同様の部分については、既に説明した部分と同一の符号を付して重複する説明を省略するものとする。
【００９０】
図１９は、遷移正当性判定装置２０の構成を示す機能ブロック図である。図１９に示すように、遷移正当性判定装置２０は、入力部１１０と、表示部１２０と、一時記憶部１３０と、記憶部２４０と、制御部２５０とを有する。
【００９１】
記憶部２４０は、不揮発性を有する記憶装置であり、例えば、ハードディスク装置である。記憶部２４０は、状態名辞書１４１、遷移マスタ１４２、業務フローデータ１４３、情報定義データ２４４といったデータを記憶する。
【００９２】
情報定義データ２４４は、情報の関係の定義に関する情報を保持する。情報定義データ２４４の一例を図２０に示す。図２０に示した情報定義データ２４４の例は、図２１に示すクラス図に含まれる各情報の関係を示している。具体的には、Ｄａｔａタグは、各情報の属性を保持する。各情報の属性には、関連付けを表す線の端部の名称を示すｒｅｆｅｒｒｉｎｇＡｓｓｏｃｉａｔｉｏｎＥｎｄという属性が含まれる。
【００９３】
そして、Ａｓｓｏｃｉａｔｉｏｎタグに囲まれた２つのｏｗｎｅｄＥｎｄタグは、関連付けを表す線の端部の対応を示す。図２０の例では、Ａｓｓｏｃｉａｔｉｏｎタグが２つ存在し、一方のＡｓｓｏｃｉａｔｉｏｎタグは、「ｏｗｎｅｄＥｎｄｌｌ」という端部を有する情報と「ｏｗｎｅｄＥｎｄ１２」という端部を有する情報が対応付けられていることを示している。Ｄａｔａタグを参照すれば明らかなように、このＡｓｓｏｃｉａｔｉｏｎタグは、「受注リスト」という名称の文書と、複数のテーブルを含む「受注ＤＢ」という名称のデータベースとが関連を有することを示している。
【００９４】
もう一方のＡｓｓｏｃｉａｔｉｏｎタグは、「ｏｗｎｅｄＥｎｄ２１」という端部を有する情報と「ｏｗｎｅｄＥｎｄ２２」という端部を有する情報が対応付けられていることを示している。Ｄａｔａタグを参照すれば明らかなように、このＡｓｓｏｃｉａｔｉｏｎタグは、複数のテーブルを含む「受注ＤＢ」という名称のデータベースと、単一のテーブルを含む「受注明細ＤＢ」という名称のデータベースとが関連を有することを示している。そして、このＡｓｓｏｃｉａｔｉｏｎタグに囲まれたｏｗｎｅｄＥｎｄタグの一方は、ａｇｇｒｅｇａｔｉｎｇＫｉｎｄという属性の値として「ｓｈａｒｅｄ」という値を保持している。この属性値は、「受注ＤＢ」という名称のデータベースと「受注明細ＤＢ」という名称のデータベースとが集約の関係にあることを示している。
【００９５】
集約の関係にあるということは、一方が他方に含まれる関係にあることを意味する、このため、集約の関係にある２つの情報は、一方の情報の更新が他方の情報の状態に影響を与えるような強い関係にあるものとして扱うことができる。図２０の例の場合、「受注明細ＤＢ」という名称のデータベースが、「受注ＤＢ」という名称のデータベースに含まれる関係にあり、これらの情報は、強い関係にあるものとして扱うことができる。
【００９６】
業務フローデータ１４３に含まれる各データの形式は、実施例１において説明した形式と同一である。ただし、業務フロー図が図１８に示した通りであり、利用対象の情報が２つ存在する場合には、図２２に示すように、２件のレコードが情報リスト１４３ｂに登録される、また、図２３に示す利用対象情報リスト１４３ｄのように、プロセスによって利用対象の情報が相違するようになる。
【００９７】
制御部２５０は、遷移正当性判定装置２０を全体制御する制御部であり、情報選択部２５１と、状態洗い出し部２５２と、遷移洗い出し部２５３と、正当性判定部１５４と、判定結果出力部１５５とを有する。
【００９８】
情報選択部２５１は、情報リスト１４３ｂに保持されている情報の中から遷移の正当性を判定する対象となる情報を選択する。情報選択部２５１は、正当性を判定する対象となる情報と関連の強い他の情報があれば、その他の情報を組み合わせて正当性の判定対象として選択する点において情報選択部１５１と相違する。本実施例では、情報選択部２５１は、情報定義データ２４４を参照し、正当性を判定する対象となる情報と集約の関係にある情報があれば、正当性の判定対象の情報と、集約の関係にある他の情報との関連が強いと判定する。なお、本実施例では、集約の関係にあるか否かを考慮するにあたって集約の方向を考慮しないものとするが、集約の方向を考慮して処理を実行することとしてもよい。
【００９９】
状態洗い出し部２５２および遷移洗い出し部２５３は、情報選択部２５１によって情報を組み合わせて正当性の判定対象が選択された場合に、組み合わせに含まれるいずれの情報も正当性の判定対象として扱う。状態洗い出し部２５２および遷移洗い出し部２５３は、その他の点においては、状態洗い出し部１５２および遷移洗い出し部１５３と同様である。
【０１００】
次に、遷移正当性判定装置２０によって実行される処理の処理手順について説明する。図２４は、正当性判定処理の処理手順を示すフローチャートである。図２４に示すように、情報選択部２５１は、まず、変数ｉを１に設定し（ステップＳ６０１）、空の処理済情報リストを作成する（ステップＳ６０２）。処理済情報リストは、同一の情報ＩＤを重複して処理しないように処理済の情報ＩＤを登録しておくリストである。そして、情報選択部２５１は、情報リスト１４３ｂからｉ番目のレコードの情報ＩＤを判定対象の情報の情報ＩＤとして取得する（ステップＳ６０３）。
【０１０１】
ここで、情報リスト１４３ｂからｉ番目のレコードの情報ＩＤを取得できた場合は（ステップＳ６０４肯定）、情報選択部２５１は、取得された情報ＩＤを処理済情報リストと照合する（ステップＳ６０５）、そして、取得された情報ＩＤが処理済情報リストに登録済だった場合は（ステップＳ６０６肯定）、情報選択部２５１が、変数ｉに１を加算し（ステップＳ６１５）、ステップＳ６０３以降の処理手順が再実行される。
【０１０２】
一方、取得された情報ＩＤが処理済情報リストに登録されていなければ（ステップＳ６０６否定）、情報選択部２５１は、情報定義データ２４４を参照して、取得された情報ＩＤが示す情報と集約の関係にある他の情報の情報ＩＤを取得する（ステップＳ６０７）。そして、該当する他の情報の情報ＩＤを取得できた場合は（ステップＳ６０８肯定）、情報選択部２５１は、集約関係にある情報ＩＤの組み合わせを判定対象の情報の情報ＩＤとする（ステップＳ６０９）。
【０１０３】
続いて、状態洗い出し部２５２が、既に説明した状態洗い出し処理を実行して、情報状態データを作成する（ステップＳ６１０）。そして、遷移洗い出し部２５３が、既に説明した遷移洗い出し処理を実行して、遷移データを作成する（ステップＳ６１１）。
【０１０４】
そして、正当性判定部１５４が、遷移データと遷移マスタ１４２とを照合して、判定対象の情報の状態の遷移が正当であるか否かを判定し（ステップＳ６１２）、判定結果出力部１５５が、正当性判定部１５４の判定結果を出力する（ステップＳ６１３）。
【０１０５】
こうして、判定対象の情報に関する一連の処理が完了した後に、情報選択部２５１は、判定対象の情報の情報ＩＤを処理済情報リストに登録する（ステップＳ６１４）。そして、情報選択部２５１は、変数ｉに１を加算し（ステップＳ６１５）、ステップＳ６０３以降の処理手順が再実行される。そして、ステップＳ６０３でｉ番目のレコードの情報ＩＤを取得できなかった場合、すなわち、情報リスト１４３ｂから全ての情報ＩＤを取得し終えていた場合に（ステップＳ６０４否定）、正当性判定処理が終了する。
【０１０６】
なお、情報選択部２５１が、集約関係にある情報ＩＤの組み合わせを判定対象の情報の情報ＩＤとした場合、状態洗い出し処理等での処理の詳細は以下のようになる。図１４に示したステップＳ２０５では、状態洗い出し部１５２は、レコードに設定されている情報ＩＤが判定対象の情報の情報ＩＤのいずれか１つと一致すれば、情報ＩＤが一致したと判断する。また、図１７に示したステップＳ５０６では、遷移洗い出し部１５３は、後プロセスＩＤによって識別されるプロセスが利用する情報の情報ＩＤが、判定対象の情報の情報ＩＤのいずれか１つと一致すれば、そのプロセスが判定対象の情報を利用すると判断する。
【０１０７】
上述したように、実施例２では、一方の情報の更新が他方の情報の状態に影響を与えるような強い関係にある情報を組み合わせて判定対象とすることとしたので、情報の状態の遷移の正当性を適切に判定することができる。
【０１０８】
なお、図１に示した本実施例に係る遷移正当性判定装置１０の構成および図１９に示した本実施例に係る遷移正当性判定装置２０の構成は、要旨を逸脱しない範囲で種々に変更することができる。
【０１０９】
例えば、実施例１および実施例２では、業務フローデータ１４３が表形式のデータである例を示したが、業務フローデータ１４３は、論理的な構成が同様であれば、ＸＭＬ（Extensible Markup Language）等の他の形式のデータであってもよい。
【０１１０】
ＸＭＬ形式の業務フローデータ１４３の一例を図２５に示す。図２５に示すＸＭＬ形式のデータは、図１８に示した業務フロー図を構成するデータである。図２５に示した例におけるｆｌｏｗＮｏｄｅタグは、プロセスリスト１４３ａまたは情報リスト１４３ｂのレコードに対応する。また、図２５に示した例におけるｆｌｏｗＥｄｇｅタグは、フローリスト１４３ｃまたは利用対象情報リスト１４３ｄのレコードに対応する。
【０１１１】
また、実施例２においては、集約関係にある情報を関連の強い情報として扱う例を示したが、正規化等の理由で分割されているが、論理的には１つのデータベースとして扱うべき複数のデータベース等も関連の強い情報として扱うこととしてよい。
【０１１２】
また、関連の強い情報であるか否かを判定する方式として、集約関係にあるか否かに基づいて判定する方式以外の方式を用いることとしてもよい。例えば、情報の名称を比較して、類似度が所定の閾値以上であれば、関連が強いと判定することとしてもよい。論理的に１つとして扱うべきデータには、名前に共通する文字列が含まれることが多いからである。なお、この方式の場合、「マスタ」や「データ」のように頻出する文字を除外して類似度を評価することが好ましい。
【０１１３】
また、情報定義データ２４４における関連の多重度に基づいて、関連の強い情報であるか否かを判定することとしてもよい。具体的には、情報Ａに接続している関連が複数本あり、かつ、それらの大部分の関連において、情報Ａ側の多重度が１で関連先側の多重度が多のものである場合には、情報Ａと関連先の情報の関連が強いと判定できる。
【０１１４】
また、業務フロー図が複数ある場合に、同一の業務フロー図に共に出現する確率が高い情報を関連の強い情報と判断することとしてもよい。具体的には、全ての業務フロー図の業務フローデータからプロセスに利用される情報を柚出し、抽出した情報の組み合わせを網羅的に作成する。そして、各組み合わせについて、情報が同一の業務フロー図に共に出現する確率を算出し、確率が所定の閾値以上であれば、情報の関連が強いと判定できる。
【０１１５】
また、遷移正当性判定装置１０の制御部１５０や遷移正当性判定装置２０の制御部２５０の機能をソフトウェアとして実装し、これをコンピュータで実行することにより、遷移正当性判定装置１０や遷移正当性判定装置２０と同等の機能を実現することもできる。以下に、制御部１５０の機能をソフトウェアとして実装した遷移正当性判定プログラム１０７１を実行するコンピュータの一例を示す。
【０１１６】
図２６は、遷移正当性判定プログラム１０７１を実行するコンピュータ１０００を示す機能ブロック図である。このコンピュータ１０００は、各種演算処理を実行するＣＰＵ（Central Processing Unit）１０１０と、ユーザからのデータの入力を受け付ける入力装置１０２０と、各種情報を表示するモニタ１０３０と、記録媒体からプログラム等を読み取る媒体読取り装置１０４０と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置１０５０と、各種情報を一時記憶するＲＡＭ（Random Access Memory）１０６０と、ハードディスク装置１０７０とをバス１０８０で接続して構成される。
【０１１７】
そして、ハードディスク装置１０７０には、図１に示した制御部１５０と同様の機能を有する遷移正当性判定プログラム１０７１と、図１に示した記憶部１４０に記憶される各種データに対応する遷移正当性判定用データ１０７２とが記憶される。なお、遷移正当性判定用データ１０７２を、適宜分散させ、ネットワークを介して接続された他のコンピュータに記憶させておくこともできる。
【０１１８】
そして、ＣＰＵ１０１０が遷移正当性判定プログラム１０７１をハードディスク装置１０７０から読み出してＲＡＭ１０６０に展開することにより、遷移正当性判定プログラム１０７１は、遷移正当性判定プロセス１０６１として機能するようになる。そして、遷移正当性判定プロセス１０６１は、遷移正当性判定用データ１０７２から読み出した情報等を適宜ＲＡＭ１０６０上の自身に割り当てられた領域に展開し、この展開したデータ等に基づいて各種データ処理を実行する。
【０１１９】
なお、上記の遷移正当性判定プログラム１０７１は、必ずしもハードディスク装置１０７０に格納されている必要はなく、ＣＤ−ＲＯＭ等の記憶媒体に記憶されたこのプログラムを、コンピュータ１０００が読み出して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ（Loca1 Area Network）、ＷＡＮ（Wide Area Network）等を介してコンピュータ１０００に接続される他のコンピュータ（またはサーバ）等にこのプログラムを記憶させておき、コンピュータ１０００がこれらからプログラムを読み出して実行するようにしてもよい。
【０１２０】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１２１】
（付記１）業務フローデータにおける情報の状態の遷移正当性判定をコンピュータに実行させる遷移正当性判定プログラムであって、
前記業務フローデータを構成する情報識別子、プロセス識別子、該プロセス識別子で特定されるプロセスの処理完了後の情報の状態を示す状態識別子、を対応付けて記憶した第一の記憶手段を参照し、処理対象として選択された情報識別子に対応するプロセス識別子と、該プロセス識別子に対応する状態識別子との組合せである情報状態データを出力する状態洗い出し手順と、
前記情報状態データのプロセス識別子の組合せのうち、前記業務フローデータを構成するプロセス識別子の組合せを記憶した第二の記憶手段に定義されている組合せを抽出し、抽出された該組合せを構成するプロセス識別子の各々に対応する状態識別子を該情報状態データから取得し、抽出された該組合せを構成するプロセス識別子、取得された該状態識別子の組合せである遷移データを出力する遷移洗い出し手順と、
前記遷移データと、情報の状態識別子の組み合わせ毎に遷移の要否が定義された規範データとを照合した結果に基づいて、前記情報識別子によって特定される情報の状態の遷移が正当であるか否かを判定する正当性判定手順と
をコンピュータに実行させることを特徴とする遷移正当性判定プログラム。
【０１２２】
（付記２）前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報と集約関係にある情報を識別する第２の情報識別番号とを選択する情報選択手順をさらにコンピュータに実行させ、
前記状態洗い出し手順は、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする付記１に記載の遷移正当性判定プログラム。
【０１２３】
（付記３）前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報と共に業務フローデータに含まれる確率が所定の閾値以上である情報を識別する第２の情報識別番号とを選択する情報選択手順をさらにコンピュータに実行させ、
前記状態洗い出し手順は、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする付記１に記載の遷移正当性判定プログラム。
【０１２４】
（付記４）前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報との名前の類似度が所定の閾値以上である情報を識別する第２の情報識別番号とを選択する情報選択手順をさらにコンピュータに実行させ
前記状態洗い出し手順は、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする付記１に記載の遷移正当性判定プログラム。
【０１２５】
（付記５）業務フローデータにおける情報の状態の遷移正当性を判定する遷移正当性判定装置であって、
前記業務フローデータを構成する情報識別子、プロセス識別子、該プロセス識別子で特定されるプロセスの処理完了後の情報の状態を示す状態識別子、を対応付けて記憶した第一の記憶手段を参照し、処理対象として選択された情報識別子に対応するプロセス識別子と、該プロセス識別子に対応する状態識別子との組合せである情報状態データを出力する状態洗い出し部と、
前記情報状態データのプロセス識別子の組合せのうち、前記業務フローデータを構成するプロセス識別子の組合せを記憶した第二の記憶手段に定義されている組合せを抽出し、抽出された該組合せを構成するプロセス識別子の各々に対応する状態識別子を該情報状態データから取得し、抽出された該組合せを構成するプロセス識別子、取得された該状態識別子の組合せである遷移データを出力する遷移洗い出し部と、
前記遷移データと、情報の状態識別子の組み合わせ毎に遷移の要否が定義された規範データとを照合した結果に基づいて、前記情報識別子によって特定される情報の状態の遷移が正当であるか否かを判定する正当性判定部と
を備えたことを特徴とする遷移正当性判定装置。
【０１２６】
（付記６）前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報と集約関係にある情報を識別する第２の情報識別番号とを選択する情報選択部をさらに備え、
前記状態洗い出し部は、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする付記５に記載の遷移正当性判定装置。
【０１２７】
（付記７）前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報と共に業務フローデータに含まれる確率が所定の閾値以上である情報を識別する第２の情報識別番号とを選択する情報選択部をさらに備え、
前記状態洗い出し部は、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする付記５に記載の遷移正当性判定装置。
【０１２８】
（付記８）前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報との名前の類似度が所定の閾値以上である情報を識別する第２の情報識別番号とを選択する情報選択部をさらに備え
前記状態洗い出し部は、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする付記５に記載の遷移正当性判定装置。
【０１２９】
（付記９）業務フローデータにおける情報の状態の遷移正当性を判定する遷移正当性判定方法であって、
前記業務フローデータを構成する情報識別子、プロセス識別子、該プロセス識別子で特定されるプロセスの処理完了後の情報の状態を示す状態識別子、を対応付けて記憶した第一の記憶手段を参照し、処理対象として選択された情報識別子に対応するプロセス識別子と、該プロセス識別子に対応する状態識別子との組合せである情報状態データを出力する状態洗い出しステップと、
前記情報状態データのプロセス識別子の組合せのうち、前記業務フローデータを構成するプロセス識別子の組合せを記憶した第二の記憶手段に定義されている組合せを抽出し、抽出された該組合せを構成するプロセス識別子の各々に対応する状態識別子を該情報状態データから取得し、抽出された該組合せを構成するプロセス識別子、取得された該状態識別子の組合せである遷移データを出力する遷移洗い出しステップと、
前記遷移データと、情報の状態識別子の組み合わせ毎に遷移の要否が定義された規範データとを照合した結果に基づいて、前記情報識別子によって特定される情報の状態の遷移が正当であるか否かを判定する正当性判定ステップと
を含んだことを特徴とする遷移正当性判定方法。
【０１３０】
（付記１０）前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報と集約関係にある情報を識別する第２の情報識別番号とを選択する情報選択ステップをさらに含み、
前記状態洗い出しステップは、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする付記９に記載の遷移正当性判定方法。
【０１３１】
（付記１１）前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報と共に業務フローデータに含まれる確率が所定の閾値以上である情報を識別する第２の情報識別番号とを選択する情報選択ステップをさらに含み、
前記状態洗い出しステップは、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする付記９に記載の遷移正当性判定方法。
【０１３２】
（付記１２）前記業務フローデータから第１の情報識別子と、該第１の情報識別子によって識別される情報との名前の類似度が所定の閾値以上である情報を識別する第２の情報識別番号とを選択する情報選択ステップをさらに含み
前記状態洗い出しステップは、前記第１の情報識別番号によって識別される情報と、前記第２の情報識別番号によって識別される情報とが、前記業務において取り得る状態を前記業務フローデータに基づいて洗い出すことを特徴とする付記９に記載の遷移正当性判定方法。
【符号の説明】
【０１３３】
１０、２０遷移正当性判定装置
１１０    入力部
１２０    表示部
１３０    一時記憶部
１４０、２４０  記億部
１４１    状態名辞書
１４２    遷移マスタ
１４３    業務フローデータ
１４３ａ  プロセスリスト
１４３ｂ  情報リスト
１４３ｃ  フローリスト
１４３ｄ  利用対象情報リスト
２４４    情報定義データ
１５０、２５０  制御部
１５１、２５１  情報選択部
１５２、２５２  状態洗い出し部
１５３、２５３  遷移洗い出し部
１５４    正当性判定部
１５５    判定結果出力部
１０００    コンピュータ
１０１０    ＣＰＵ
１０２０    入力装置
１０３０    モニタ
１０４０    媒体読取り装置
１０５０    ネットワークインターフェース装置
１０６０    ＲＡＭ
１０６１    遷移正当性判定プロセス
１０７０    ハードディスク装置
１０７１    遷移正当性判定プログラム
１０７２    遷移正当性判定用データ
１０８０    バス
【図１】
2011003027.tif 000003
【図２】
2011003027.tif 000004
【図３】
2011003027.tif 000005
【図４】
2011003027.tif 000006
【図５】
2011003027.tif 000007
【図６】
2011003027.tif 000008
【図７】
2011003027.tif 000009
【図８】
2011003027.tif 000010
【図９】
2011003027.tif 000011
【図１０−１】
2011003027.tif 000012
【図１０−２】
2011003027.tif 000013
【図１１】
2011003027.tif 000014
【図１２】
2011003027.tif 000015
【図１３】
2011003027.tif 000016
【図１４】
2011003027.tif 000017
【図１５】
2011003027.tif 000018
【図１６】
2011003027.tif 000019
【図１７】
2011003027.tif 000020
【図１８】
2011003027.tif 000021
【図１９】
2011003027.tif 000022
【図２０】
2011003027.tif 000023
【図２１】
2011003027.tif 000024
【図２２】
2011003027.tif 000025
【図２３】
2011003027.tif 000026
【図２４】
2011003027.tif 000027
【図２５】
2011003027.tif 000028
【図２６】
2011003027.tif 000029