(57)【要約】【課題】  複数の処理を実行して遂行する業務（ビジネスプロセス）における各処理の実行手順が、その作成後に改定された法令や社内規定や標準等の制約に適合しているかどうかを容易に把握できるようにする。【解決手段】  実行手順検証装置ＲＳが、業務を遂行するために実行する複数の処理の実行手順を示す実行手順情報を実行手順情報記憶部１４に保持し、実行手順情報中の一部分の処理を示す情報と当該処理の実行に係る制約を示す情報とを対応付けた制約情報を制約記憶部１７に保持しておき、実行手順情報及び制約情報の指定を入出力部１３により利用者から受け付けると、当該実行手順情報が当該制約情報に適合するか否かを検証する部分検証処理を検証手段１８により行い、当該部分検証処理の結果を入出力手段１３により出力する。【選択図】  図１
2008152506.tif 000002
【特許請求の範囲】
【請求項１】
業務を遂行するために実行する複数の処理の実行手順を示す実行手順情報を保持する第１の保持手段と、
実行手順情報中の一部分の処理を示す情報と当該処理の実行に係る制約を示す情報とを対応付けた制約情報を保持する第２の保持手段と、
前記第１の保持手段に保持された実行手順情報が前記第２の保持手段に保持された制約情報に適合するか否かを検証する部分検証処理を行う検証手段と、
前記部分検証処理の結果を出力する出力手段と、
を備えたことを特徴とする実行手順検証装置。
【請求項２】
前記実行手順検証装置は、実行手順情報及び制約情報の指定を利用者から受け付ける指示受付手段を更に備え、
前記検証手段は、前記指定された実行手順情報に対して前記指定された制約情報に基づく部分検証処理を行うことを特徴とする請求項１に記載の実行手順検証装置。
【請求項３】
前記実行手順検証装置は、前記第２の保持手段への制約情報の追加又は前記第２の保持手段に保持された制約情報の変更を検出する制約情報監視手段を更に備え、
前記検証手段は、前記第２の保持手段への制約情報の追加又は前記第２の保持手段に保持された制約情報の変更を前記制約情報監視手段により検出したことに応じて、前記第１の保持手段に保持された実行手順情報に対して当該制約情報に基づく部分検証処理を行うことを特徴とする請求項１に記載の実行手順検証装置。
【請求項４】
前記実行手順検証装置は、制約情報に所定の演算を行って当該制約情報の内容を表象する表象値を算出する制約情報表象値算出手段を更に備え、
前記第２の保持手段に保持された制約情報にはその表象値が付加されており、
前記制約情報監視手段は、前記第２の保持手段に保持された制約情報に付加された表象値が変化した場合に、当該変化した表象値が付加されている制約情報が追加又は変更されたとして検出することを特徴とする請求項３に記載の実行手順検証装置。
【請求項５】
業務を遂行するために実行する複数の処理の実行手順を示す実行手順情報を保持する第１の保持手段と、
実行手順情報中の一部分の処理を示す情報と当該処理の実行に係る制約を示す情報とを対応付けた制約情報を保持する第２の保持手段と、
複数の制約情報によるそれぞれの検証結果を統合するための統合情報を保持する第３の保持手段と、
前記第１の保持手段に保持された実行手順情報が前記第３の保持手段に保持された統合情報に係る複数の制約情報に適合するか否かをそれぞれ検証し、各検証結果を当該統合情報に基づいて統合する統合検証処理を行う統合検証手段と、
前記統合検証処理の結果を出力する出力手段と、
を備えたことを特徴とする実行手順検証装置。
【請求項６】
前記実行手順検証装置は、実行手順情報及び統合情報の指定を利用者から受け付ける指示受付手段を更に備え、
前記検証手段は、前記指定された実行手順情報に対して前記指定された統合情報に基づく統合検証処理を行うことを特徴とする請求項５に記載の実行手順検証装置。
【請求項７】
前記実行手順検証装置は、前記第２の保持手段への制約情報の追加又は前記第２の保持手段に保持された制約情報の変更を検出する制約情報監視手段を更に備え、
前記検証手段は、前記第２の保持手段への制約情報の追加又は前記第２の保持手段に保持された制約情報の変更を前記制約監視手段により検出したことに応じて、前記第１の保持手段が保持する実行手順情報に対して当該制約情報に係る統合情報に基づく統合検証処理を行うことを特徴とする請求項５に記載の実行手順検証装置。
【請求項８】
前記実行手順検証装置は、制約情報に所定の演算を行って当該制約情報の内容を表象する表象値を算出する制約情報表象値算出手段を更に備え、
前記第２の保持手段に保持された制約情報にはその表象値が付加されており、
前記制約情報監視手段は、前記第２の保持手段に保持された制約情報に付加された表象値が変化した場合に、当該変化した表象値が付加されている制約情報が追加又は変更されたとして検出することを特徴とする請求項７に記載の実行手順検証装置。
【請求項９】
前記実行手順検証装置は、前記第３の保持手段への統合情報の追加又は前記第３の保持手段に保持された統合情報の変更を検出する統合情報監視手段を更に備え、
前記検証手段は、前記第３の保持手段への統合情報の追加又は前記第３の保持手段に保持された統合情報の変更を前記統合情報監視手段により検出したことに応じて、前記第１の保持手段に保持された実行手順情報に対して当該統合情報に基づく統合検証処理を行うことを特徴とする請求項５に記載の実行手順検証装置。
【請求項１０】
前記実行手順検証装置は、統合情報に所定の演算を行って当該統合情報の内容を表象する表象値を算出する統合情報表象値算出手段を更に備え、
前記第３の保持手段に保持された統合情報にはその表象値が付加されており、
前記統合情報監視手段は、前記第３の保持手段に保持された統合情報に付加された表象値が変化した場合に、当該変化した表象値が付加されている統合情報が追加又は変更されたとして検出することを特徴とする請求項９に記載の実行手順検証装置。
【請求項１１】
コンピュータを、
業務を遂行するために実行する複数の処理の実行手順を示す実行手順情報を保持する第１の保持手段、
実行手順情報中の一部分の処理を示す情報と当該処理の実行に係る制約を示す情報とを対応付けた制約情報を保持する第２の保持手段、
前記第１の保持手段に保持された実行手順情報が前記第２の保持手段に保持された制約情報に適合するか否かを検証する部分検証処理を行う検証手段、
前記部分検証処理の結果を出力する出力手段、
として機能させるための実行手順検証プログラム。
【請求項１２】
コンピュータを、
業務を遂行するために実行する複数の処理の実行手順を示す実行手順情報を保持する第１の保持手段、
実行手順情報中の一部分の処理を示す情報と当該処理の実行に係る制約を示す情報とを対応付けた制約情報を保持する第２の保持手段、
複数の制約情報によるそれぞれの検証結果を統合するための統合情報を保持する第３の保持手段、
前記第１の保持手段に保持された実行手順情報が前記第３の保持手段に保持された統合情報に係る複数の制約情報に適合するか否かをそれぞれ検証し、各検証結果を当該統合情報に基づいて統合する統合検証処理を行う統合検証手段、
前記統合検証処理の結果を出力する出力手段、
として機能させるための実行手順検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実行手順検証装置および実行手順検証プログラムに関する。
【背景技術】
【０００２】
複数の処理を実行して遂行する業務（ビジネスプロセス）における各処理の実行手順に関し、種々の技術が従来より提案されている。
ビジネスプロセスの実行手順に係る従来技術として、例えば、法的表現によって示される権利関係を記述するための言語を提供する技術が提案されている（特許文献１参照）。
また、ビジネスプロセスの実行手順を作成する従来技術として、例えば、ビジネスプロセスの実行手順を図的表現を使って作成および修正するエディタが提案されており、また例えば、ＡＩプラニング技術を応用して用意されたルールから実行手順を自動生成する技術が提案されている（特許文献２参照）。
【０００３】
【特許文献１】特表２００５−５２４１７７号公報
【特許文献２】特開２００４−０６２５３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ビジネスプロセスの実行手順は、法令や社内規定や標準等を遵守していることが求められる。これは、新しい実行手順を構築するときに既存の法令や社内規定や標準等を遵守しているだけではなく、既存の実行手順がその後改定された法令や社内規定や標準等をも遵守している必要がある。また、或る一つの実行手順に対して、複数の法令や社内規定や標準等を守るという観点から検証したい場合がある。
【０００５】
従来技術のうち、例えば図的表現を使うエディタでは、作成および修正に対する制約や選好は明示化されず、法令や社内規定や標準等を遵守しているかを保証できない。法令や社内規定や標準等に従うフォームやテンプレートを用意し、これを元に実行手順を作成および修正するという運用方法もあるが、法令や社内規定や標準等が変更された際には、その変更が実行手順におよぶ範囲や内容を特定して実行手順がその変更を満たすかを調べる必要があり、実行手順の作成者および修正者の負担となる。特に、実行手順が増加するに連れて作成者等の負担が増大するため、効率的な検証方法が望まれていた。
また、例えばＡＩプラニング技術を応用する従来技術は、新規に実行手順を生成する際に用いるものであるため、ルールが変更された際に既存の実行手順がこれを満たすかを調べることはできない。
【０００６】
本発明は、上記従来の事情に鑑みなされたものであり、複数の処理を実行して遂行する業務（ビジネスプロセス）における各処理の実行手順が、その作成後に改定された法令や社内規定や標準等の制約に適合しているかどうかを容易に把握できる技術を提供することを目的としている。
【課題を解決するための手段】
【０００７】
請求項１に記載の本発明は、業務を遂行するために実行する複数の処理の実行手順を示す実行手順情報を保持する第１の保持手段と、実行手順情報中の一部分の処理を示す情報と当該処理の実行に係る制約を示す情報とを対応付けた制約情報を保持する第２の保持手段と、前記第１の保持手段に保持された実行手順情報が前記第２の保持手段に保持された制約情報に適合するか否かを検証する部分検証処理を行う検証手段と、前記部分検証処理の結果を出力する出力手段と、を備えたことを特徴とする実行手順検証装置である。
【０００８】
請求項２に記載の本発明は、請求項１に記載の実行手順検証装置において、前記実行手順検証装置は、実行手順情報及び制約情報の指定を利用者から受け付ける指示受付手段を更に備え、前記検証手段は、前記指定された実行手順情報に対して前記指定された制約情報に基づく部分検証処理を行うことを特徴とする実行手順検証装置である。
【０００９】
請求項３に記載の本発明は、請求項１に記載の実行手順検証装置において、前記実行手順検証装置は、前記第２の保持手段への制約情報の追加又は前記第２の保持手段に保持された制約情報の変更を検出する制約情報監視手段を更に備え、前記検証手段は、前記第２の保持手段への制約情報の追加又は前記第２の保持手段に保持された制約情報の変更を前記制約情報監視手段により検出したことに応じて、前記第１の保持手段に保持された実行手順情報に対して当該制約情報に基づく部分検証処理を行うことを特徴とする実行手順検証装置である。
【００１０】
請求項４に記載の本発明は、請求項３に記載の実行手順検証装置において、前記実行手順検証装置は、制約情報に所定の演算を行って当該制約情報の内容を表象する表象値を算出する制約情報表象値算出手段を更に備え、前記第２の保持手段に保持された制約情報にはその表象値が付加されており、前記制約情報監視手段は、前記第２の保持手段に保持された制約情報に付加された表象値が変化した場合に、当該変化した表象値が付加されている制約情報が追加又は変更されたとして検出することを特徴とする実行手順検証装置である。
【００１１】
請求項５に記載の本発明は、業務を遂行するために実行する複数の処理の実行手順を示す実行手順情報を保持する第１の保持手段と、実行手順情報中の一部分の処理を示す情報と当該処理の実行に係る制約を示す情報とを対応付けた制約情報を保持する第２の保持手段と、複数の制約情報によるそれぞれの検証結果を統合するための統合情報を保持する第３の保持手段と、前記第１の保持手段に保持された実行手順情報が前記第３の保持手段に保持された統合情報に係る複数の制約情報に適合するか否かをそれぞれ検証し、各検証結果を当該統合情報に基づいて統合する統合検証処理を行う統合検証手段と、前記統合検証処理の結果を出力する出力手段と、を備えたことを特徴とする実行手順検証装置である。
【００１２】
請求項６に記載の本発明は、請求項５に記載の実行手順検証装置において、前記実行手順検証装置は、実行手順情報及び統合情報の指定を利用者から受け付ける指示受付手段を更に備え、前記検証手段は、前記指定された実行手順情報に対して前記指定された統合情報に基づく統合検証処理を行うことを特徴とするである。
【００１３】
請求項７に記載の本発明は、請求項５に記載の実行手順検証装置において、前記実行手順検証装置は、前記第２の保持手段への制約情報の追加又は前記第２の保持手段に保持された制約情報の変更を検出する制約情報監視手段を更に備え、前記検証手段は、前記第２の保持手段への制約情報の追加又は前記第２の保持手段に保持された制約情報の変更を前記制約監視手段により検出したことに応じて、前記第１の保持手段が保持する実行手順情報に対して当該制約情報に係る統合情報に基づく統合検証処理を行うことを特徴とするである。
【００１４】
請求項８に記載の本発明は、請求項７に記載の実行手順検証装置において、前記実行手順検証装置は、制約情報に所定の演算を行って当該制約情報の内容を表象する表象値を算出する制約情報表象値算出手段を更に備え、前記第２の保持手段に保持された制約情報にはその表象値が付加されており、前記制約情報監視手段は、前記第２の保持手段に保持された制約情報に付加された表象値が変化した場合に、当該変化した表象値が付加されている制約情報が追加又は変更されたとして検出することを特徴とする実行手順検証装置である。
【００１５】
請求項９に記載の本発明は、請求項５に記載の実行手順検証装置において、前記実行手順検証装置は、前記第３の保持手段への統合情報の追加又は前記第３の保持手段に保持された統合情報の変更を検出する統合情報監視手段を更に備え、前記検証手段は、前記第３の保持手段への統合情報の追加又は前記第３の保持手段に保持された統合情報の変更を前記統合情報監視手段により検出したことに応じて、前記第１の保持手段に保持された実行手順情報に対して当該統合情報に基づく統合検証処理を行うことを特徴とする実行手順検証装置である。
【００１６】
請求項１０に記載の本発明は、請求項９に記載の実行手順検証装置において、前記実行手順検証装置は、統合情報に所定の演算を行って当該統合情報の内容を表象する表象値を算出する統合情報表象値算出手段を更に備え、前記第３の保持手段に保持された統合情報にはその表象値が付加されており、前記統合情報監視手段は、前記第３の保持手段に保持された統合情報に付加された表象値が変化した場合に、当該変化した表象値が付加されている統合情報が追加又は変更されたとして検出することを特徴とする実行手順検証装置である。
【００１７】
請求項１１に記載の本発明は、コンピュータを、業務を遂行するために実行する複数の処理の実行手順を示す実行手順情報を保持する第１の保持手段、実行手順情報中の一部分の処理を示す情報と当該処理の実行に係る制約を示す情報とを対応付けた制約情報を保持する第２の保持手段、前記第１の保持手段に保持された実行手順情報が前記第２の保持手段に保持された制約情報に適合するか否かを検証する部分検証処理を行う検証手段、前記部分検証処理の結果を出力する出力手段、として機能させるための実行手順検証プログラムである。
【００１８】
請求項１２に記載の本発明は、コンピュータを、業務を遂行するために実行する複数の処理の実行手順を示す実行手順情報を保持する第１の保持手段、実行手順情報中の一部分の処理を示す情報と当該処理の実行に係る制約を示す情報とを対応付けた制約情報を保持する第２の保持手段、複数の制約情報によるそれぞれの検証結果を統合するための統合情報を保持する第３の保持手段、前記第１の保持手段に保持された実行手順情報が前記第３の保持手段に保持された統合情報に係る複数の制約情報に適合するか否かをそれぞれ検証し、各検証結果を当該統合情報に基づいて統合する統合検証処理を行う統合検証手段、前記統合検証処理の結果を出力する出力手段、として機能させるための実行手順検証プログラムである。
【発明の効果】
【００１９】
本発明に係る実行手順検証装置によると、複数の処理を実行して遂行する業務（ビジネスプロセス）に係る実行手順情報における一部分の処理が制約に適合するかを検証できるため、改定された法令や社内規定や標準等に係る部分の処理についての検証を容易に行うことができる。
また、利用者が手動で検証を指示できる他、制約情報の追加又は変更の検出に応じて自動的に検証を行うこともできる。
また、制約情報の追加又は更新の検出を、各情報から算出される表象値を用いて行えるため、例えば、情報の一部の差異にも関わらず全く異なる表象値（例えばダイジェスト値）を用いることで各情報の追加又は更新の検出を効率的に行える。
【００２０】
本発明に係る実行手順検証装置によると、複数の処理を実行して遂行する業務に係る実行手順情報における一部分の処理が制約に適合するかを検証した結果を統合し、実行手順情報が全体として制約に適合するかを検証することができる。
また、利用者が手動で検証を指示できる他、制約情報及び統合情報の追加又は変更の検出に応じて自動的に検証を行うこともできる。
また、制約情報及び統合情報の追加又は更新の検出を、各情報から算出される表象値を用いて行えるため、例えば、情報の一部の差異にも関わらず全く異なる表象値（例えばダイジェスト値）を用いることで各情報の追加又は更新の検出を効率的に行える。
【００２１】
本発明に係る実行手順検証プログラムによると、当該プログラムの実行によりコンピュータに機能させた各手段により、複数の処理を実行して遂行する業務に係る実行手順情報における一部分の処理が制約に適合するかを検証できるため、改定された法令や社内規定や標準等に係る部分の処理についての検証を容易に行うことができる。
【００２２】
本発明に係る実行手順検証プログラムによると、当該プログラムの実行によりコンピュータに機能させた各手段により、複数の処理を実行して遂行する業務に係る実行手順情報における一部分の処理が制約に適合するかを検証した結果を統合し、実行手順情報が全体として制約に適合するかを検証することができる。
【発明を実施するための最良の形態】
【００２３】
本発明を実施例に基づいて具体的に説明する。
本発明に係る第１の実施例として、旅行代理店側システムが、顧客側システムから受け付けた旅行予約可否の問い合わせ依頼に対して、旅行予約可否の問い合わせ業務（ビジネスプロセス）として定義された実行手順に従って、ホテル側システム、鉄道会社側システム、レンタカー会社側システムに予約可否を順次問い合わせて、問い合わせ結果に基づく旅行予約可否を顧客側システムへ返答する旅行予約システムについて説明する。
【００２４】
図１は、上記旅行予約システムの構成例を示しており、旅行代理店側システムＲＳが、パブリックネットワークＮを介して、顧客側システムＣＳ、Ｔレンタカー側システムＳＳ１、ホテルＡ側システムＳＳ２、ホテルＢ側システムＳＳ３、Ｓ電鉄側システムＳＳ４に接続されている。
【００２５】
旅行代理店側システムＲＳは、メッセージ送受信部１１、メッセージ記憶部１２、入出力部１３、実行手順記憶部１４、ビジネスプロセス実行処理部１５、検証処理制御部１６、制約記憶部１７、検証部１８、論理式記憶部１９、論理式演算部２０、検証結果記憶部２１等の各機能部をプライベートネットワーク１０により接続しており、本発明に係る実行手順検証装置としての機能を有している。
【００２６】
メッセージ送受信部１１は、パブリックネットワークＮを介して他のシステムとの間でメッセージ（問い合わせ依頼情報、問い合わせ結果情報、等）の送受信を行う。
メッセージ記憶部１２は、他のシステムとの間で送受信したメッセージを記憶保持する。
入出力部１３は、液晶ディスプレイ等の表示装置や印刷装置等により各種情報を出力して利用者に提示したり、キーボード・マウス等の入力機器等により利用者から各種指示を受け付ける。例えば、ビジネスプロセス実行の指示とその結果の表示、ビジネスプロセス検証の指示とその結果の表示、各記憶部に記憶させるデータの入出力、装置の起動／停止等の機能を提供する。
【００２７】
実行手順記憶部１４は、ビジネスプロセスの実行手順を記述した実行手順情報を記憶保持する。
ビジネスプロセス実行処理部１５は、利用者による実行手順情報の指定に応じて、指定された実行手順情報に基づいて処理を実行する。
検証処理制御部１６は、検証処理全体の動作を制御する。
【００２８】
制約記憶部１７は、ビジネスプロセスの実行手順を構成する一部分の処理（１つ又は複数の処理）を示す特定情報と当該処理の実行に係る制約を示す制約内容情報とを対応付けた制約情報を記憶保持する。
検証部１８は、実行手順情報及び制約情報の指示に応じて、当該実行手順情報が当該制約情報に適合するか否かを検証する部分検証処理を行う。
【００２９】
論理式記憶部１９は、個々の制約情報による検証結果をまとめ上げて全体としての検証結果を形作る論理式（統合情報）を記憶保持する。本例の論理式は、制約情報からなる被演算項をAND、OR、NOTの３つの演算子で結合して構成している。
論理式演算部２０は、論理式の指示に応じて、当該論理式に従って検証部１８による部分検証処理の結果を統合する統合検証処理を行う。
【００３０】
検証結果記憶部２１は、検証部１８による個々の制約情報を用いた部分検証処理の結果および論理式演算部２０による統合検証処理の結果を記憶保持する。なお、部分検証処理の結果をその検証に用いた制約情報に対応付けて保持し、また、統合検証処理の結果をその検証に用いた論理式に対応付けて保持する。
【００３１】
本例では、制約情報として、特定情報により特定される一部分の処理について、所定の処理の存在有無に係る制約を制約内容情報とした「要素存在ルール」を用いている。なお、本発明では、当該制約の他に、複数の処理間の関係に係る制約（例えば、処理の実行順に係る制約、先行処理の実行結果に応じた後続処理の実行可否に係る制約）、処理固有の制約（例えば、処理の実行時に付加する属性に係る制約）など、種々の制約を用いることができる。
また、本例では、実行手順情報として、本システム固有のメタデータ定義に従うXML（Extensible Markup Language）文書を用いており、ビジネスプロセス実行処理部１５が当該XML文書を順次解釈して実行する。
【００３２】
図２は、旅行予約可否問い合わせのビジネスプロセスをXML文書として記述した実行手順情報の一例を示している。
本例では、実行手順情報の記述に規定された送信や受信の相手およびデータ形式だけがビジネスプロセスが実行される際に許可される。また、属性名に「格納変数」を含むものは、その属性値が示す変数が処理の結果代入や引数としてビジネスプロセス実行時に利用されることを示す。例えば「送信」要素では、送信されるデータが格納されている変数が「送信データ格納変数」属性に示されている。また「演算」要素では、その演算の結果が「演算結果格納変数」属性に代入される。
【００３３】
図２に示す実行手順情報の記述をより具体的に説明すると、例えば４行目の「送信」要素は、「送信先タイプ」属性で指定された“宿泊施設”の予約について、「送信データ形式」属性で指定された“予約可否問い合わせフォーム”形式の問い合わせ依頼情報を、「送信データ格納変数」属性で指定された“問い合わせ”変数に格納して、「送信先」属性で指定された“ホテルＡ側システム”に送信する処理であることを意味している。
また、例えば５行目の「受信」要素は、「受信データ形式」属性で指定された“boolean”形式の問い合わせ結果情報が、「受信データ格納変数」属性で指定された“ホテル予約可否”変数に格納されて、「受信先」属性で指定された“ホテルＡ側システム”から受信する処理であることを意味している。
また、例えば１０〜１６行目の「演算」要素は、その下位の「論理積」要素（１１〜１５行目）による演算結果を、「演算結果格納変数」属性で指定された“旅行予約可否”変数に格納する処理であることを意味している。
【００３４】
図２の実行手順情報に従って旅行予約可否問い合わせのビジネスプロセスが実行された際の、各システム間でのメッセージの受け渡しシーケンスの概念図を図３に示す。
旅行代理店側システムＲＳは、顧客側システムＣＳから“予約問合せフォーム”形式のメッセージ（問い合わせ依頼情報）をメッセージ送受信１１により受信すると、ビジネスプロセス実行処理部１５が、ホテルＡ側システムＳＳ２、Ｓ電鉄側システムＳＳ４、Ｔレンタカー側システムＳＳ１のそれぞれに“予約問合せフォーム”形式のメッセージ（問い合わせ依頼情報）をメッセージ送受信１１により送信する。そして、旅行代理店側システムＲＳは、各システムから問合せ結果として返却される“boolean”形式（true or false）のメッセージ（問い合わせ結果情報）を受信すると、ビジネスプロセス実行処理部１５が、その論理積をメッセージ（問い合わせ結果情報）として顧客側システムＣＳに返却する。
【００３５】
このような実行手順は、ホテルＡ又はホテルＢの利用について旅行代理店に優先権が設定されていない場合は問題ない。なぜなら、実行手順にホテルＡ側システムとの送受信、又は、ホテルＢ側システムとの送受信のいずれか一方が含まれていれば良いからである。
ここで、旅行代理店がホテル利用に関してホテルＢのみを利用することに決定したとする。このような状況は、ホテルからの旅行代理店へのインセンティブ契約や、ホテルと旅行代理店との提携などによって起こりうる。
【００３６】
本例では、このような他のシステムの利用に関してビジネスプロセスの実行手順が満たすべき制約の表現方法として、
（１）実行手順の記述において存在しなければならない特定の要素（処理）、或いは、存在してはならない要素（処理）を表現した要素存在ルール
（２）要素存在ルールを被演算項とする論理式
で表現している。
【００３７】
すなわち、宿泊施設としてホテルＢのみを利用することに決定した場合は、その要素存在ルールおよび論理式を以下のように記述することができる。
・要素存在ルールＸ＝［「送信先タイプ」属性が“宿泊施設”に一致し、且つ、「送信先」属性が“ホテルＢ側システム”に一致する「送信」要素が存在する］
・要素存在ルールＹ＝［「送信先タイプ」属性が“宿泊施設”に一致し、且つ、「送信先」属性が“ホテルＢ側システム”に一致しない「送信」要素が存在しない］
・論理式Ｚ＝［要素存在ルールＸ］AND［要素存在ルールＹ］
本例では、実行手順の記述にXML文書を用いていることに対応して、要素存在ルールおよび論理式として「W3C XML Schema」に従って記述している。
【００３８】
上記要素存在ルールＸ、Ｙおよび論理式Ｚは、それぞれ制約記憶部１７および論理式記憶部１９に保持されており、本例では入出力部１３により利用者から検証指示を受け付けたことに応じて、検証処理制御部１６による制御のもとで、検証部１８および論理式演算部２０により検証を行う。
【００３９】
本例の旅行代理店側システムＲＳによる実行手順情報の検証処理を、図４に示す処理フローを参照して説明する。
本例では、入出力部１３により、実行手順記憶部１４中の実行手順情報の一覧と論理式記憶部１９中の論理式の一覧とを表示し、検証対象の実行手順情報の指定と検証に用いる論理式の指定とを利用者から受け付けている。
【００４０】
検証処理は、入出力部１３が利用者から検証対象の実行手順情報と検証に用いる論理式との指定を受け付けたことにより開始する（ステップＳ１１）。
まず、検証処理制御部１６が、指定された論理式に被演算項として含まれる要素存在ルール（制約情報）を特定し、前記指定された実行手順情報と当該特定した各要素存在ルールとを用いた部分検証処理を検証部１８に指示する。検証部１８は、指示された要素存在ルールに基づいて、指示された実行手順情報における該当する要素の存在の有無を検証し、個々の検証結果を検証結果記憶部２１に格納する（ステップＳ１２）。
全ての要素存在ルールを用いた部分検証処理が終了すると、検証処理制御部１６が、指定された論理式を用いた統合検証処理を論理式演算部２０に指示する。論理式演算部２０は、個々の検証結果を指定された論理式により統合し、統合結果を検証処理全体の結果として入出力部１３により出力して利用者に提示する（ステップＳ１３）。
【００４１】
具体的には、図２に示す実行手順情報と前記論理式Ｚとが利用者に指定された場合は、論理式Ｚに被演算項として含まれる要素存在ルールＸ、Ｙに前記実行手順情報が適合するかをまず検証する。要素存在ルールＸを用いた検証では、図２の４行目の「送信」要素が、「送信先タイプ」属性が“宿泊施設”に一致する「送信」要素に該当するが、「送信先」属性が“ホテルＢ側システム”に一致する「送信」要素でないため、検証結果は“false（偽）”となる。また、要素存在ルールＹを用いた検証では、図２の４行目の「送信」要素が、「送信先タイプ」属性が“宿泊施設”に一致する「送信」要素に該当するが、「送信先」属性が“ホテルＢ側システム”に一致しない「送信」要素であるため、検証結果は“f alse（偽）”となる。したがって、これらの検証結果を論理式Ｚにより統合すると“false（偽）”となり、前記実行手順情報が論理式Ｚに適合していないことを示す情報が入出力部１３により出力される。
【００４２】
これにより、利用者は、実行手順情報が制約に適合していないことを容易に把握でき、実行手順情報を修正する必要があることを認識できる。
なお、本例では、実行手順情報と論理式（統合情報）の指定を受け付けて、当該論理式に被演算項として含まれる各要素存在ルール（制約情報）を用いて当該実行手順情報を検証し、各検証結果を統合した統合結果を出力しているが、それぞれの検証結果を出力するようにしてもよい。また、実行手順情報と要素存在ルールの指定を受け付けて、当該要素存在ルールを用いて当該実行手順情報を検証した結果を出力するようにしてもよい。
【００４３】
本発明に係る第２の実施例について、図５を参照して説明する。
図５の実行手順検証装置ＲＳは、入出力部１３、実行手順記憶部１４、検証処理制御部１６、制約記憶部１７、検証部１８、論理式記憶部１９、論理式演算部２０、検証結果記憶部２１、特定情報記憶部２２、抽出部２３、抽出結果記憶部２４等の各機能部をプライベートネットワーク１０により接続しており、本発明に係る実行手順検証装置としての機能を有している。なお、第１の実施例の実行手順検証装置ＲＳと同様に、メッセージ受信部１１、メッセージ記憶部１２、ビジネスプロセス実行処理部１５も有しているが、本例では省略している。
【００４４】
入出力部１３は、液晶ディスプレイ等の表示装置や印刷装置等により各種情報を出力して利用者に提示したり、キーボード・マウス等の入力機器等により利用者から各種指示を受け付ける。例えば、ビジネスプロセス実行の指示とその結果の表示、ビジネスプロセス検証の指示とその結果の表示、各記憶部に記憶させるデータの入出力、装置の起動／停止等の機能を提供する。
【００４５】
実行手順記憶部１４は、ビジネスプロセスの実行手順を記述した実行手順情報を記憶保持する。本例では、BPEL（Business Process Execution Language）文書を実行手順情報として保持する。
検証処理制御部１６は、検証処理全体の動作を制御する。
【００４６】
特定情報記憶部２２は、ビジネスプロセスの実行手順を構成する一部分の処理（１つ又は複数の処理）を示す特定情報を記憶保持する。本例では、特定情報の記述形式としてXML文書の問い合わせ言語であるXQueryを用いる。
抽出部２３は、実行手順情報及び特定情報の指示に応じて、当該実行手順情報から当該特定情報に該当する一部分の処理を抽出する。本例では、XQueryを用いた標準的な木構造処理を行う。
抽出結果記憶部２４は、抽出部２３による抽出結果を、その抽出に用いた特定情報に対応付けて記憶保持する。
【００４７】
制約記憶部１７は、ビジネスプロセスの実行手順を構成する一部の処理の実行に係る制約内容情報を記憶保持する。本例では、制約内容情報を「W3C XML Schema」に従って記述している。
なお、本例では、特定情報と制約内容情報とを後述する論理式によって対応付けることで本発明に係る制約情報を構成している。
検証部１８は、実行手順情報及び制約情報の指示に応じて、当該実行手順情報が当該制約情報に適合するか否かを検証する部分検証処理を行う。本例では、スキーマフラグメントによる検証を行う。
【００４８】
論理式記憶部１９は、個々の制約情報による検証結果をまとめ上げて全体としての検証結果を形作る論理式（統合情報）を記憶保持する。本例の論理式は、特定情報と制約内容情報との組（制約情報）である被演算項をAND、OR、NOTの３つの演算子で結合して構成している。
論理式演算部２０は、論理式の指示に応じて、当該論理式に従って検証部１８による部分検証処理の結果を統合する統合検証処理を行う。
【００４９】
検証結果記憶部２１は、検証部１８による個々の制約情報を用いた部分検証処理の結果および論理式演算部２０による統合検証処理の結果を記憶保持する。なお、部分検証処理の結果をその検証に用いた制約情報に対応付けて保持し、また、統合検証処理の結果をその検証に用いた論理式に対応付けて保持する。
【００５０】
本例の実行手順検証装置ＲＳによる実行手順情報の検証処理を、図８に示す処理フローを参照して説明する。
本例では、入出力部１３により、実行手順記憶部１４中の実行手順情報の一覧と論理式記憶部１９中の論理式の一覧とを表示し、検証対象の実行手順情報の指定と検証に用いる論理式の指定とを利用者から受け付けている。
【００５１】
検証処理は、入出力部１３が利用者から検証対象の実行手順情報と検証に用いる論理式との指定を受け付けたことにより開始する（ステップＳ２１）。
まず、検証処理制御部１６が、指定された論理式に被演算項として含まれる制約情報（特定情報と制約内容情報との組）を特定し、指定された実行手順情報と当該特定した制約情報に係る特定情報とを用いた抽出処理を抽出部２３に指示する。抽出部２３は、指示された特定情報に基づいて、指示された実行手順情報中の該当する部分を抽出し、当該抽出結果である部分構造を前記指示された実行手順情報と特定情報とに対応付けて抽出結果記憶部２４に格納する（ステップＳ２２）。
次に、検証処理制御部１６が、前記指定された実行手順情報と前記特定した制約情報とを用いた検証処理を検証部１８に指示する。検証部１８は、指示された実行手順情報と指示された制約情報に係る特定情報とに対応付けられている部分構造を抽出結果記憶部２４から特定し、当該部分構造が指示された制約情報に係る制約内容情報に適合するか否かを検証し、当該検証結果を前記指示された実行手順情報と制約情報とに対応付けて検証結果記憶部２１に格納する（ステップＳ２３）。
全ての制約情報を用いた部分検証処理が終了すると、検証処理制御部１６が、指定された論理式を用いた統合検証処理を論理式演算部２０に指示する。論理式演算部２０は、指定された論理式に被演算項として含まれる制約情報を特定し、指定された実行手順情報と当該特定した制約情報とが対応付けられている検証結果を当該論理式により統合し、統合結果を検証処理全体の結果として入出力部１３により出力して利用者に提示する（ステップＳ２４）。
【００５２】
以下、BPEL4WS仕様書に記載のシンプルな融資認証ウェブサービスのビジネスプロセスを例として、本例に係る検証処理の流れを具体的に説明する。
なお、この融資認証ウェブサービスでは、顧客から融資の申し込みを受け付けて、承認するかどうかを返答するものである。具体的には、高額な融資の申し込み（この例では10000ドル）があった場合は金融機関が提供するアトミックサービス“approver”に承認を求めて、その結果を顧客に返す。高額ではない場合はアトミックサービス“assessor”にリスク判定をさせ、リスクが低いと判定された場合は承認という結果を顧客に返す。リスクが高いと判定された場合は“approver”に承認を求めて、その結果を顧客に返す。
【００５３】
ここで、このビジネスプロセスの実行手順が記載されたBPEL文書に対して、「高額な融資」という判断が20000ドルに緩和される、という新たなビジネスルールが規定された場合を考える。このとき、条件判断が20000ドル未満の値を「高額な融資」としている提供中の複合サービスについて、（ａ）条件判断が異なるので新たなビジネスルールを満たさない、（ｂ）新たなビジネスルールより低い額という安全側で融資判断がなされるので問題ない、という二つの考え方が成り立つ。ここでは（ｂ）の考え方に従った場合を例として説明する。
【００５４】
検証対象となる部分構造は、“amount（融資額）”を条件とするガード付きリンクであり、検証すべき内容は、「融資判断が20000ドル以下で行われていること」である。
“amount”を条件分岐に利用するガード付きリンクを抽出する条件式（特定情報）は、XQueryの照会式として、図６（ａ）のように記述でき、当該記述内容を特定情報記憶部２２に記憶されている。そして、当該特定情報により特定される同図（ｂ）に示す部分構造が抽出部２３によって抽出され、抽出結果記憶部２４に格納される。
【００５５】
また、「融資判断が20000ドル以下で行われていること」という制約を示すスキーマフラグメント（制約内容情報）は、同図（ｃ）のように記述でき、当該記述内容を制約記憶部１７に保持している。そして、前記抽出されて抽出結果記憶部２４に格納された部分構造が当該制約内容情報に係る制約に適合するかが検証部１８によって検証される。なお、同図（ｃ）の１６〜２０行目に定義したfrgValue型における「pattern」要素（１８行目）に現れる正規表現は、20000以下の数値を条件判定に用いていることを示している。
【００５６】
今回の例では、スキーマフラグメントによる検証結果は“真”となる。そして、論理式記憶部１９には、この結果のみを使う論理式が規定されており、論理式演算部２０により検証全体の結果が“真（ビジネスプロセスが制約に適合している）”と判定される。
【００５７】
もう一つの例として、融資は“approver”を必ず通す、という新たなビジネスルールが規定された場合を考える。この場合は、“approver”への処理の遷移が存在し、かつ、“approver”を通らない処理遷移が存在してはならない。
したがって、処理遷移を表現する「partnerLink」要素のシーケンスを検証対象の部分構造として抽出する。そして検証すべき内容は、抽出されたシーケンスに“approver”が１つ以上存在することである。
【００５８】
検証対象の抽出については、「source」要素の「linkName」属性値と「target」要素の「linkName」属性値とが一致する場合に、その「source」要素の親要素（例えば「receive」要素）の「partnerLink」属性値と、その「target」要素の親要素（例えば「invoke」要素）の「partnerLink」属性値とから、処理遷移を表現する「partnerLink」のシーケンスとして図７（ａ）に示す部分構造を抽出できる。
【００５９】
検証すべき内容は、抽出されたシーケンスに“approver”が一つ以上存在することを調べることであるが、スキーマフラグメント（制約内容情報）としては“approver”が存在しないことを表現するものを用いる。
なぜなら、「W3C XML Schema」で表現できる内容モデルとしては、シーケンス中の不定の位置に“approver”が一つ以上存在しうることを記述することは困難である。これに対して、今回の例では「partnerLink」要素の「name」属性値は“customer”、“approver”、“assessor”のいずれかであることが「partnerLinks」要素に記述されているため、“approver”以外の「partnerLink」だけが存在することは、図７（ｂ）に示すように容易に記述できる。
【００６０】
このスキーマフラグメントを用いて図７（ａ）中の３つの「bpel-fragment」要素を検証すると、１番目（１〜５行目）が“真”、２番目（６〜１１行目）と３番目（１２〜１６行目）とが“偽”となる。そして、論理式記憶部１９には、各検証結果の否定（NOT）の論理積（AND）をとる論理式が規定されており、“偽”AND“真”AND“真”＝“偽”となり、検証全体の結果が“偽（ビジネスプロセスが制約に適合していない）”と判定される。
【００６１】
本発明に係る第３の実施例について、図９を参照して説明する。
図９の実行手順検証装置ＲＳは、図５に示した第２の実施例の実行手順検証装置ＲＳに、追加更新監視部２５を追加したものである。
追加更新監視部２５は、特定情報記憶部２２、制約記憶部１７、ならびに論理式記憶部１９が保持するデータを監視しており、データの追加または変更を検出した場合は検証処理制御部１７へ通知する。
検証処理制御部１７は、追加更新監視部２５から通知を受けると、データの追加または変更に係る検証処理を自動的に実行する。
他の機能部は、第２の実施例の実行手順検証装置ＲＳと同様であるため説明を割愛する。
【００６２】
本例の実行手順検証装置ＲＳによる実行手順情報の検証処理の自動実行を、図１０に示す処理フローを参照して説明する。
本例では、追加更新監視部２５が、論理式記憶部１９及び制約記憶部１７及び特定情報記憶部２２を定期的に参照して、論理式の追加又は変更の有無の検出（ステップＳ３１）、制約内容情報の追加又は変更の有無の判定（ステップＳ３３）、特定情報の追加又は変更の有無の判定（ステップＳ３５）を行う。
【００６３】
追加更新監視部２５は、ステップＳ３１において論理式の追加又は変更を検出すると、当該論理式の追加又は変更を検証処理制御部１７に通知し、検証処理制御部１７が、全ての実行手順情報に対し、当該論理式を用いた検証処理を抽出部２３及び検証部１８及び論理式演算部２０を制御して実行する（ステップＳ３２）。
また、追加更新監視部２５は、ステップＳ３３において制約内容情報の追加又は変更を検出すると、当該制約内容情報の追加又は変更を検証処理制御部１７に通知し、検証処理制御部１７が、全ての実行手順情報に対し、当該制約内容情報に係る制約情報を被演算項に含む論理式を用いた検証処理を抽出部２３及び検証部１８及び論理式演算部２０を制御して実行する（ステップＳ３４）。
また、追加更新監視部２５は、ステップＳ３５において特定情報の追加又は変更を検出すると、当該特定情報を示す情報を検証処理制御部１７に通知し、検証処理制御部１７が、全ての実行手順情報に対し、当該特定情報に係る制約情報を被演算項に含む論理式を用いた検証処理を抽出部２３及び検証部１８及び論理式演算部２０を制御して実行する（ステップＳ３６）。
【００６４】
なお、追加更新監視部２５が、制約内容情報の追加又は変更を検出した場合には、当該制約内容情報に係る制約情報を用いた検証処理を実行してその結果を出力するようにしてもよい。
また、追加更新監視部２５が、特定情報の追加又は変更を検出した場合には、当該特定情報に係る制約情報を用いた検証処理を実行してその結果を出力するようにしてもよい。
【００６５】
本発明に係る第４の実施例について、図１１を参照して説明する。
図１１の実行手順検証装置ＲＳは、図９に示した第３の実施例の実行手順検証装置ＲＳに、ダイジェスト値計算部２６を追加したものである。
ダイジェスト値計算部２６は、特定情報、制約内容情報、論理式に所定の演算を行って各情報の内容を表象する表象値（ダイジェスト値）を算出する。
特定情報記憶部２２は、各特定情報から算出したダイジェスト値をそれぞれの特定情報に対応付けて記憶保持する。
制約記憶部１７は、各制約情報から算出したダイジェスト値をそれぞれの制約情報に対応付けて記憶保持する。
論理式記憶部１９は、各論理式から算出したダイジェスト値をそれぞれの論理式に対応付けて記憶保持する。
【００６６】
追加更新監視部２５は、特定情報記憶部２２、制約記憶部１７、論理式記憶部１９にデータが追加される際に、当該データのダイジェスト値をダイジェスト値計算部２６により算出し、追加先の記憶部に記憶されている全てのダイジェスト値と比較して一致するダイジェスト値がなければ、データの追加があったことを検出する。
また、追加更新監視部２５は、特定情報記憶部２２、制約記憶部１７、論理式記憶部１９のデータが変更される際に、当該データのダイジェスト値をダイジェスト値計算部２６により算出し、変更前のデータに対応付けて記憶されているダイジェスト値と比較してダイジェスト値が一致しなければ、データが変更されたことを検出する。
他の機能部は、第３の実施例の実行手順検証装置ＲＳと同様であるため説明を割愛する。
【００６７】
本発明は、上記各実施例で説明したような検証機能を持ったビジネスプロセス提供装置（実行手順を実際に実行する装置）、ビジネスプロセス連携装置（実行手順にしたがって部品化されたサービスを順次呼び出す装置）、ビジネスプロセス実行手順記述装置（検証機能は手順記述のデバッガとして働く）等、種々の態様で実現することができる。
【００６８】
また、本例の実行手順検証装置ＲＳは、ＨＤＤ（Hard Disk Drive）、ＲＡＭ（Random Access Memory）、ＣＰＵ（Central Processing Unit）等のハードウェア資源を有するコンピュータが、本発明に係るプログラムを記憶保持したＨＤＤ等から当該プログラムを読み出し、ＲＡＭ上に展開してＣＰＵで演算処理することにより、各機能部を構成しているが、これらを専用ハードウェアにより構成するようにしてもよい。
また、本例の実行手順検証装置ＲＳは、各機能部をプライベートネットワーク１０により接続された複数台のコンピュータに分散して構成しているが、各機能を１台のコンピュータに構成するようにしてもよい。
【図面の簡単な説明】
【００６９】
【図１】本発明の第１の実施例に係る旅行予約システムの構成例を示す図である。
【図２】本発明の第１の実施例に係る実行手順情報の記述例を示す図である。
【図３】本発明の第１の実施例に係る旅行予約可否問い合わせを説明する図である。
【図４】本発明の第１の実施例に係る検証処理のフローを示す図である。
【図５】本発明の第２の実施例に係る実行手順検証装置の構成例を示す図である。
【図６】本発明の第２の実施例に係る検証処理を説明する図である。
【図７】本発明の第２の実施例に係る検証処理を説明する図である。
【図８】本発明の第２の実施例に係る検証処理のフローを示す図である。
【図９】本発明の第３の実施例に係る実行手順検証装置の構成例を示す図である。
【図１０】本発明の第３の実施例に係る検証処理のフローを示す図である。
【図１１】本発明の第４の実施例に係る実行手順検証装置の構成例を示す図である。
【符号の説明】
【００７０】
１１：メッセージ送受信部、
１２：メッセージ記憶部、
１３：入出力部、
１４：実行手順記憶部、
１５：ビジネスプロセス実行処理部、
１６：検証処理制御部、
１７：制約記憶部、
１８：検証部、
１９：論理式記憶部、
２０：論理式演算部、
２１：検証結果記憶部、
２２：特定情報記憶部、
２３：抽出部、
２４：抽出結果記憶部、
２５：追加更新監視部、
２６：ダイジェスト値計算部
【図１】
2008152506.tif 000003
【図２】
2008152506.tif 000004
【図３】
2008152506.tif 000005
【図４】
2008152506.tif 000006
【図５】
2008152506.tif 000007
【図６】
2008152506.tif 000008
【図７】
2008152506.tif 000009
【図８】
2008152506.tif 000010
【図９】
2008152506.tif 000011
【図１０】
2008152506.tif 000012
【図１１】
2008152506.tif 000013