(57)【要約】【課題】異なるデータソースの情報を複合判断して優先度を定め、この総合優先度でビジネスプロセスのインスタンスの実行制御を行う。【解決手段】本発明のプロセス管理装置１１０は、業務アプリケーション実行要求を受け、この実行要求の処理結果を所定の端末に送信するために業務アプリケーションであるプロセスを構成する細分化項目の個別の優先度と、プロセスの優先度とを予め記憶する業務プロセス定義データベース１３０と、業務アプリケーション実行要求が入力されると、業務プロセス定義データベースの各優先度を参照して所定の計算で処理の実行優先度を得て、業務アプリケーション実行要求の処理を行い、この業務アプリケーション実行要求の処理結果を実行優先度の高い順に送信キューに格納する解析実行部２４０と、格納された上記業務アプリケーション実行要求の処理結果の送信処理を実行優先度の高い順にさせる制御部１０１と、を備えた。【選択図】図２
2008040620.tif 000002
【特許請求の範囲】
【請求項１】
業務アプリケーション実行要求を受けて、該業務アプリケーション実行要求に基く処理結果を所定の端末に送信するプロセス管理装置において、
業務アプリケーションであるプロセスを構成する細分化項目の個別の優先度と、上記プロセスの優先度とを予め記憶する業務プロセス定義データベースと、
上記業務アプリケーション実行要求が入力されると、上記業務プロセス定義データベースの各上記優先度を参照して所定の計算で上記業務アプリケーション実行要求に基く処理の実行優先度を得て、上記業務アプリケーション実行要求の処理を行い、該業務アプリケーション実行要求の処理結果を上記実行優先度の高い順に送信キューに格納する解析実行部と、
上記送信キューに格納された上記業務アプリケーション実行要求の処理結果の送信処理を上記実行優先度の高い順にさせる制御部と、を備えたことを特徴とするプロセス管理装置。
【請求項２】
業務プロセス定義データベースに登録するためのプロセス定義入力を解析して、プロセスと、該プロセスの優先度及び該プロセスを構成する細分化項目の個別の優先度とを対応つけて上記業務プロセス定義データベースに登録するプロセス定義優先度登録部を備えることを特徴とする請求項１記載のプロセス管理装置。
【請求項３】
業務アプリケーション実行要求が入力されると、業務プロセス定義データベースの各優先度を参照して所定の計算で上記業務アプリケーション実行要求に基く処理の実行優先度を得て、該得た実行優先度を付して上記業務アプリケーション実行要求を受信キューに格納する受信優先度設定部を備え、
解析実行部は、上記受信キューに格納された上記実行優先度が高い順に上記業務アプリケーション実行要求の処理を行うことを特徴とする請求項１記載のプロセス管理装置。
【請求項４】
所定の時間経過を含むトリガで送信キューに格納されている業務アプリケーション実行要求の実行優先度を更新する優先度更新部を備えたことを特徴とする請求項１記載のプロセス管理装置。
【請求項５】
業務アプリケーション実行要求を行い、また該業務アプリケーション実行要求の処理結果である業務アプリケーション提供出力を受ける端末と、
業務アプリケーションであるプロセスを構成する細分化項目の個別の優先度と上記プロセスの優先度とを予め記憶する業務プロセス定義データベースと、上記端末からの上記業務アプリケーション実行要求を受けて、上記業務プロセス定義データベースの各上記優先度を参照して所定の計算で上記業務アプリケーション実行要求に基く処理の実行優先度を得て、上記業務アプリケーション実行要求の処理を行い、該業務アプリケーション実行要求の処理結果を上記実行優先度の高い順に送信キューに格納する解析実行部と、上記送信キューに格納された上記業務アプリケーション実行要求の処理結果の送信処理を上記実行優先度の高い順にさせる制御部と、を備えたプロセス管理装置と、
で構成されることを特徴とするビジネスプロセス管理システム。
【請求項６】
業務アプリケーション実行要求を受けて、該業務アプリケーション実行要求の処理結果を所定の端末に送信するプロセス管理方法において、
プロセス定義優先度登録部が、業務アプリケーションであるプロセスを構成する細分化項目の個別の優先度と、上記プロセスの優先度とを予め設定する業務プロセス優先度設定ステップと、
解析実行部が、上記業務アプリケーション実行要求が入力されると、上記業務プロセス優先度設定ステップで設定された各上記優先度を参照して所定の計算で上記業務アプリケーション実行要求に基く処理の実行優先度を得て、上記業務アプリケーション実行要求の処理を行い、該業務アプリケーション実行要求の処理結果を上記実行優先度の高い順に送信キューに格納する解析実行ステップと、
制御部が、上記送信キューに格納された上記業務アプリケーション実行要求の処理結果の送信処理を上記実行優先度の高い順にさせる送信処理ステップと、を備えたことを特徴とするプロセス管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、業務処理における処理優先度を決めるビジネスプロセス管理装置およびビジネスプロセス管理方法に関するものである。特に、ビジネスプロセスの優先度情報を用いたビジネスプロセス定義の作成装置およびビジネスプロセス定義を解析実行する装置、方法およびプログラムに関するものである。
【背景技術】
【０００２】
ビジネス分野においては、報告書や計画書等の各種の文書が取扱われるが、業務処理を効率的に行うためには、それらの文書に優先度を設定して、その優先度に基いて処理を行うことが行われている。従来のワークフローなどのビジネスプロセス定義に基づいてアプリケーション間の連携を行うシステムでは、ビジネスプロセスに対して優先度を設定し、優先度の情報をユーザに開示することで実行処理の優先順を制御するというものが存在した。
例えば、特許文献１の「業務優先度決定装置、業務優先度決定方法、記録媒体及びプログラム」によれば、業務システムにおいて、業務データの案件種別や処理期限の残存期間から優先度を設定し、ワークフローの処理案件の一覧表示のときに、優先度順にソートして表示や、優先度などの付加情報も合わせて表示することで、ユーザに対して、どの処理から実施すべきであるかを通知するといった仕組みが説明されている。即ち、ビジネス分野における文書の処理優先度の設定は、業務情報として文書中の用語を抽出して、期限情報または期限関連情報と突き合せ、優先度を決めている。
【特許文献１】特開２００１−３３８１０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来のビジネスプロセス定義に基づいてアプリケーション間の連携を行うシステムにおいて、ビジネスプロセス定義の実行インスタンスにおいて単一のデータをキーワードとして優先度を設定することは可能であったが、実際に人間の判断により優先度を決定する場合には、異なるデータソースからの情報を複合的に判断することが必要であり、従来技術では、このような複合的な判断に基づいて処理の実行順を制御することができないという課題がある。
【０００４】
本発明は、上記の課題を解決するためになされたもので、異なるデータソースの情報を複合的に判断して優先度を定め、この総合優先度に応じてビジネスプロセスのインスタンスの実行制御を行うことを目的とする。
【課題を解決するための手段】
【０００５】
この発明に係るプロセス管理装置は、業務アプリケーション実行要求を受けて、この業務アプリケーション実行要求に基く処理結果を所定の端末に送信するプロセス管理装置において、
業務アプリケーションであるプロセスを構成する細分化項目の個別の優先度と、上記プロセスの優先度とを予め記憶する業務プロセス定義データベースと、
上記業務アプリケーション実行要求が入力されると、上記業務プロセス定義データベースの各上記優先度を参照して所定の計算で上記業務アプリケーション実行要求に基く処理の実行優先度を得て、上記業務アプリケーション実行要求の処理を行い、この業務アプリケーション実行要求の処理結果を上記実行優先度の高い順に送信キューに格納する解析実行部と、
上記送信キューに格納された上記業務アプリケーション実行要求の処理結果の送信処理を上記実行優先度の高い順にさせる制御部と、を備えた。
【発明の効果】
【０００６】
この発明のプロセス管理装置は、上記のように業務プロセス定義データベースと解析実行部と制御部とを備えたので、総合的な重要性を実行優先度で判断して出力処理ができる効果がある。
【発明を実施するための最良の形態】
【０００７】
実施の形態１．
ビジネス分野で用いられる文書の処理内容を標準化し、それに細分化した優先度を設定してビジネス定義データベースを作成し、複数のビジネスプロセスを一連の処理業務として行う際には、このビジネス定義データベースに基いて総合優先度順に処理するビジネスプロセス管理装置を説明する。
図１は、本実施の形態における（ビジネスプロセス）管理装置１１０の構成と処理の流れを示す図である。図において、太線が処理の流れを示し、細線がバスで接続される要素を示している。また図２は、管理装置を更にハードウェア構成として判り易く示した構成図であり、細線で示す内部バス１０３で接続される各構成要素を示し、これらの要素間を結ぶ太い破線で処理の流れを示している。
【０００８】
これらの図において、管理装置１１０（プロセス管理装置）は、以下の要素で構成される。受信部２００経由でビジネスプロセス定義入力１２０ｂを受信して、プロセス定義に含まれるプロセスを構成する細分化された業務アプリケーションの処理（タスク）、の優先度を決めるプロセス定義優先度登録部１２０、このプロセス定義優先度で決められた業務アプリケーションを含む標準プロセスを登録して記憶する業務（細分化）プロセス定義データベース（ＤＢ）１３０、外部から業務アプリケーション要求１４０ｂとして処理を要求された入力を受信する受信部２００、この受信部２００で受信した業務アプリケーション実行要求１４０ｂの処理優先度を調べて優先度設定をする受信優先度設定部２１０、この受信優先度が設定された業務アプリケーション要求を優先度順に列として蓄えておく受信キュー部２２０、この優先度順に蓄えられた業務アプリケーション要求から、最上位優先度の業務アプリケーション要求を抽出する受信抽出部２３０、この抽出された最上位優先度の業務アプリケーション要求を解析して要求された処理を実行する解析実行部２４０、この解析実行処理された業務アプリケーションの送信優先度を設定する送信優先度設定部２５０、この送信優先度が設定された業務アプリケーションを送信優先度順に列として蓄える送信キュー部２６０、この送信優先度順に蓄えられた列から最上位優先度の業務アプリケーションを抽出する送信抽出部２７０、この抽出された業務アプリケーションを定められた送信先へ業務アプリケーション提供出力１５０ｂとして送信する送信部２８０、新しいビジネスプロセス定義入力１２０ｂがあると、その定義入力を参照して、優先度を更新する優先度更新部２９０、とで構成される。
【０００９】
管理装置１１０は、ハードウェアとしては更に、プロセッサを含む制御部１０１と、メモリ１０２とを備えている。業務細分化プロセス定義ＤＢ１３０や、受信キュー部２２０と送信キュー部２６０は、ハードウェアの外部メモリまたは上記メモリ１０２に記憶されており、またプロセス定義優先度登録部１２０や、受信優先度設定部２１０等は、ファームウェアやソフトウェアとして、後で説明する動作フローの機能を持ってメモリにプログラムが記憶されている。制御部１０１は、内部バス１０３経由でこれらのメモリに記憶されたプログラムを読み取って、動作フローを実行する。メモリ１０２は、アクセス速度が早い主メモリと、容量が大きい外部メモリと、また中間にキャッシュメモリと、で構成される。受信部２００は、入力されるビジネスプロセス定義入力１２０ｂや業務アプリケーション実行要求１４０ｂを読み取ってデータに変換するインタフェースを持っている。
また図示はしていないが、内部バス１０３には画面を表示する出力部が接続されており、受信キュー部２２０や送信キュー部２６０の内容を読み出したり、優先度を確認して表示する。
また管理装置１１０は、外部に対してはＬＡＮ等で代表されるネットワーク３０３を経由して端末ａ３０１、端末ｂ３０２等の外部機器と接続されている。これらの端末は、後に動作の記述の部分で説明する起票者が入力し、または送信出力を受取る装置であり、管理装置１１０と共にビジネスプロセス管理システムを構成する。
【００１０】
先ずビジネスプロセスの定義の登録動作について説明する。
ビジネスプロセス管理装置１１０は、アプリケーションの処理要求を実行するに先だって、タスクである細分化された業務アプリケーション処理を複数個処理するビジネスプロセス（処理内容）を標準化して記述する。そして、これに優先度を設定して登録をする。このビジネスプロセスを標準化して登録する際の具体的な処理内容（ビジネスプロセス）例としては、複数のタスク（業務アプリケーション）を順次シーケンシャルに読み出し処理する順次読出し処理、他の処理として分岐処理、また複数の処理を合わせる合流処理、複数のタスクを並列で処理する並列処理、等がある。図３は、そのビジネスプロセス定義の登録動作を示す処理フロー図である。また図４は、図３で定義を登録する際のビジネスプロセス定義例（その１）を示している。図４の例は、タスクとしての業務アプリケーション（ａ）、業務アプリケーション（ｂ）、業務アプリケーション（ｃ）、業務アプリケーション（ｄ）をシーケンシャルに呼び出す、順次読出し処理のモデルである。
図３のステップ（以後ステップの記述を省略する）Ｓ１０１で、図１及び図２における受信部２００を経由して、プロセス定義優先度登録部１２０が、上記のモデルをユーザが作成して記述した、ビジネスプロセス定義入力１２０ｂの処理内容について優先度登録を受ける。つまり図４で示されるビジネスプロセス定義入力１２０ｂの例えば識別子（ＩＤ）等で優先度登録のための作成情報であることを受信部２００経由で知り、このビジネスプロセス定義入力１２０ｂをプロセス定義優先度登録部１２０で受け付ける。
【００１１】
プロセス定義優先度登録部１２０はＳ１０２で、図４で示されるユーザが指定したモデルに対して優先度の設定を行う（業務プロセス優先度設定ステップ）。優先度には、
１）ビジネスプロセス定義間での比較に用いるプロセス優先度、
２）実行するタスク間での比較に用いるタスク優先度、
３）起票者による比較など、業務データに基づく業務優先度、
などがある。
なお、業務優先度には、起票者に基く設定の他に、期限、タイトル（に含まれるキーワード）、業務データ種別などの情報から優先度を設定してもよい。それぞれの情報は、単一のドキュメント等の業務データに含まれる場合があるが、複数のドキュメントなどに分散して存在する場合もある。
具体的な優先度設定例を図５に示す。即ち順次読出し処理としてのプロセスの優先度と、細分化した個別の業務アプリケーションの処理優先度、つまりタスク毎の優先度と、起票者で決まる業務優先度とを指定している。図５の例では、プロセス○１は全体のプロセス優先度が１００であり、細分化した業務アプリケーション（ａ）呼び出し３０１ａはタスク優先度が１０であり、同様に業務アプリケーション（ｂ）呼び出し３０２ａはタスク優先度が２０であり、業務アプリケーション（ｃ）呼び出し３０３ａはタスク優先度が３０であり、業務アプリケーション（ｄ）呼び出し３０４ａはタスク優先度が４０である。
【００１２】
更に業務データの優先度の一つとしてその業務を指示する人、起票者の優先度４０２をビジネスプロセス定義入力１２０ｂから解析する。そして図５の例では、起票者がナタリであれば１００を、起票者が吉原聖后であれば３０を、松本美咲であれば１０を、その他の人であれば５であることを知る。更に業務データ優先度４０１が起票者優先度と期限優先度との和で定義されているので、残日数が少なくなると優先度が上がる、優先度（期限）−残日数指定４０３を参照して起票者優先度に期限優先度を加算する。
その結果、図５に示す４つのアプリケーションを順次呼び出す処理をビジネスプロセスとして処理要求される場合には、プロセス優先度は１００となり、またタスク毎の優先度の合計と、起票者が誰かによって更にその処理要求の優先度が解析される。
こうして全ての定義が完了したら、解析された優先度を、プロセス定義優先度登録部１２０はＳ１０３で、業務細分化プロセス定義ＤＢ１３０に出力して記憶させる。つまり、４つのアプリケーションの順次読出しに関してはプロセス優先度が１００となり、更にタスク毎の優先度と、起票者毎の優先度と、残日数による優先度とが加算されて記憶されることになる。
【００１３】
図６は、入力される具体的なプロセスをＢＰＥＬ（Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｅｘｅｃｕｔｉｏｎ  Ｌａｎｇｕａｇｅ  ＸＭＬベースのビジネスプロセス記述言語）で記述した例を示す図である。これはＬＡＮ等で示されるネットワークからデータとして入力される場合は、受信部２００は通信制御部であってよいし、ＣＤ等のメディアでデータ入力される場合は、受信部２００はメディアリーダであってよい。ともかくも図６のデータが読み取られて、プロセス定義優先度登録部１２０に転送される。図６が示す＜プロセス名＞のプロセス○１は図５のプロセス全体のプロセス優先度４００を示し、＜シーケンス＞は図５の業務アプリケーション（ａ）ないし（ｄ）の順次呼出しと業務アプリケーション毎のタスク優先度を示している。また図６の＜リスト＞はファンクションｉｄ値が起票者優先度と期限優先度との和であることを示していて、図５における起票者の優先度と期限優先度の具体的な数値を示している。
プロセス優先度およびタスク優先度は、対応する要素に対する拡張属性としてｐｒｉｏｒｉｔｙ属性を定義し、その属性値として格納する。
処理の実行順序はＢＰＥＬ仕様に準拠し、本例では起票処理を受け取るｒｅｃｅｉｖｅから開始し、順次ｉｎｖｏｋｅ処理が実行される。
業務アプリケーションとの連携情報はＢＰＥＬ仕様に基づいて記述され、外部インタフェースを規定したＷＳＤＬ（Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）との関連をポートタイプ、オペレーション、パートナーリンクの属性にて対応ずける。本例では、業務業務アプリケーション（ｎ）との連携を便宜的に、
ｐｏｒｔＴｙｐｅ＝ｐｏｒｔ＿ｎ        ※ｎ＝ａ，ｂ，ｃ・・・
ｏｐｅｒａｔｉｏｎ＝ｏｐ１            ※固定
ｐａｒｔｎｅｒＬｉｎｋ＝ａｐｐ＿ｎ    ※ｎ＝ａ，ｂ，ｃ・・・
とする。
【００１４】
個別の優先度の一つである業務データ優先度は、起票者が誰であるかなどの業務データの内容に対応した表構造、または関数により算出することができ、関数の組み合わせ（例ｆｕｎｃ（Ａ）＋ｆｕｎｃ（Ｂ））や関数の引数として関数を持つといった階層構造（例ｆｕｎｃ（ｆｕｎｃ（Ｃ）））の指定を行うことができる。
他のビジネスプロセス定義入力１２０ｂに対しても、プロセス定義優先度登録部１２０は、同様な解析を行い、プロセス毎にプロセス優先度を解析し、業務細分化プロセス定義ＤＢ１３０に登録、記憶をさせる。
なお、この他に業務データに含まれる情報から、他の優先度を設定してもよい。
こうしてプロセス優先度及びタスク優先度は、対応する要素に対する拡張属性として優先度を定義し、その優先度をビジネスプロセスに対応付けて記憶する。また起票者による優先度は、起票者毎にプロセス優先度を記憶してもよいし、別の表として記憶して、業務アプリケーション要求が来たときに組合わせて参照して、実行処理優先度を定めるようにしてもよい。
【００１５】
次に業務アプリケーション実行要求入力１４０ｂにより、プロセスを実際に処理する場合に、その実行要求の内容によって処理優先度を解析して、実行優先度順に処理を行う、業務アプリケーション実行処理を説明する。
図７は、管理装置１１０が業務アプリケーション実行要求１４０ｂを受けて、その総合優先度がどれだけ高いかを解析する、業務アプリケーション解析実行を行う動作フロー図である。もちろん、解析したその処理要求の実行優先度に対応した処理を行う。なお図７は、Ｓ２１１のステップで図３の優先度登録を行う分岐フローも同時に記述している。
（ビジネスプロセス）管理装置１１０の制御部１０１は、起動時に初期処理としてそれまでに登録している実行対象となるビジネスプロセス定義入力を取得する（Ｓ２０１）。
業務アプリケーションとの連携するタスクを実行する受信部２００、送信部２８０を業務アプリケーションとのインタフェース仕様およびタスク識別子を渡し設定を行う（Ｓ２０２）。なお、受信部２００と送信部２８０に対しては、タスク識別子として、
プロセス＝プロセス○１
ポート＝Ｐｏｒｔ０
オペレーション＝ｏｐ１
等の情報を渡す。またインタフェース仕様として、プロセス定義に付随するＷＳＤＬ（Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）情報等を渡す。タスク識別子は、ビジネスプロセス定義との関連を示す情報である。
以後、受信部２００は、設定されたインタフェース仕様に従って、ＷＳＤＬで規定されるインタフェースでの業務アプリケーションによる処理要求の待ち状態となる（Ｓ２０４であり、サービスの公開を行なう）。
【００１６】
受信部２００は、業務アプリケーション実行要求１４０ｂを受信する（Ｓ２０５）。今度はその識別子から受信した業務アプリケーション実行要求１４０ｂを受信優先度設定部２１０に転送する。
受信優先度設定部２１０は、受信部２００から処理要求およびタスク識別子を受信し、タスク識別子から対応するビジネスプロセス定義を取得する（Ｓ２０６）。更に、ビジネスプロセス定義に設定された優先度情報および処理要求とともに取得した業務データの内容から、実行優先度を算出する（Ｓ２０７）。
具体例として業務アプリケーション実行要求１４０ｂが、以下の入力であるとする。
１１）
＜業務データ１＞
＜起票者＞ナタリ＜／起票者＞
＜メッセージ＞リリース予定は３／２９＜／メッセージ＞
＜／業務データ１＞
１２）
＜業務データ２＞
＜期限＞２００６／７／２６＜／期限＞
＜業務データ２＞
また、業務データ以外に関連するデータの例を次に示す。
１３）本日は２００６／７／１３
【００１７】
受信優先度設定部２１０は業務アプリケーション実行要求１４０ｂに記載の内容から、タスク識別子の情報で対応するプロセス定義および優先度情報を検索し、以下のプロセス優先度、業務データ優先度、タスク優先度が設定されていることがわかる。更に、次の定義による実行優先度が指定されている。
１４）実行優先度＝プロセス優先度＋業務データ優先度＋タスク優先度
上記１４）の例では、具体的な実行優先度は、以下の通りとなる。
プロセス優先度＝１００：（プロセス定義の設定値）
業務データ優先度＝起票者優先度（“ナタリ”）＋期限優先度（“２００６／７／２６”）
＝１００  ＋  １００／（２００６／７／２６−２００６／７／１３）
＝１０８
ここで、起票者優先度は、関数の引数１の値が／業務データ１／起票者から取得した「ナタリ」に対応する設定値から１００となる。
また期限優先度は、関数の引数１（ｐ１）の値「２００６／７／２６」と、本日「２００６／７／１３」と、関数式「１００／（ｐ１−＄ＴＯＤＡＹ）」から算出し、８となる。
従って、実行優先度は、
実行優先度＝１００＋１０８＋０＝２０８
となる。
【００１８】
制御部１０１は、上記の実行処理要求を業務アプリケーション実行要求である、＜処理要求＞に業務データと実行優先度の属性を含む処理要求、を受信キュー部２２０に格納する（Ｓ２０８）。
処理要求には、実行するタスクを識別するための情報を含める。本例では、ＷＳＤＬとの関連情報であるポートタイプ、オペレーション、パートナーリンクの情報を含める。
以下に格納する情報の例を示す。
２１）
＜処理要求＞
＜タスク識別子＞
＜プロセス＞プロセス○１＜／プロセス＞
＜ポート＞ｐｏｒｔ０＜／ポート＞
＜オペレーション＞ｏｐ１＜／オペレーション＞
＜パートナーリンク＞ａｐｐ＿ａ＜／パートナーリンク＞
＜／タスク識別子＞
＜実行優先度＞２０８＜／実行優先度＞
＜受信データ＞
＜業務データ１＞
＜起票者＞ナタリ＜／起票者＞
＜メッセージ＞リリース予定は３／２９＜／メッセージ＞
＜／業務データ１＞
＜業務データ２＞
＜期限＞２００６／７／２６＜／期限＞
＜／業務データ２＞
＜受信データ＞
＜／処理要求＞
【００１９】
業務アプリケーション要求の受信、つまり受信要求は並行動作が可能であるので、別の以下に示す業務アプリケーション実行要求を、管理装置１１０は受信部２００で受けたとする。
１５）
＜業務データ１＞
＜起票者＞松本美咲＜／起票者＞
＜メッセージ＞４月のイベント＜／メッセージ＞
＜／業務データ１＞
＜業務データ２＞
＜期限＞２００６／７／２６＜／期限＞
＜／業務データ２＞
上記の１１）ないし１４）の処理が受信優先度設定部２１０でされ、次の２２）＜処理要求＞が制御部１０１により受信キュー部２２０に記憶される。
このときの実行優先度は、前記の処理と同様の手順により算出し、以下となる。
プロセス優先度＝１００
業務データ優先度＝起票者優先度（“松本美咲”）＋期限優先度（“２００６／７／２６”）
＝１０※１＋１００／（２００６／７／２６−２００６／７／１３）
＝１８
※１  起票者優先度は図６記載のｔａｂｌｅ情報から、松本美咲に対応する１０を得る。従って、実行優先度は、
実行優先度＝１００＋１８＋０＝１１８
となる。
【００２０】
２２）
＜処理要求＞
＜タスク識別子＞
＜プロセス＞プロセス○１＜／プロセス＞
＜ポート＞ｐｏｒｔ０＜／ポート＞
＜オペレーション＞ｏｐ１＜／オペレーション＞
＜パートナーリンク＞ａｐｐ＿ａ＜／パートナーリンク＞
＜／タスク識別子＞
＜実行優先度＞１１８＜／実行優先度＞
＜受信データ＞
＜業務データ１＞
＜起票者＞松本美咲＜／起票者＞
＜メッセージ＞４月のイベント＜／メッセージ＞
＜／業務データ１＞
＜業務データ２＞
＜期限＞２００６／７／２６＜／期限＞
＜／業務データ２＞
＜／受信データ＞
＜／処理要求＞
【００２１】
また、別プロセスに対する要求も並行動作する場合がある。この別のプロセス定義および業務データ優先度に関する情報を図８に示すプロセス○２の処理であるとする。図８において、業務アプリケーション（ａ）呼び出し５０１のタスク優先度と業務アプリケーション（ｂ）呼び出し５０２のタスク優先度とは、先の例と値は同じであるが、プロセス優先度６００の値５０と、業務データ優先度６０１の定義が異なっている。つまり業務データ優先度６０１は、期限優先度のみとなっている。
また＜業務データ２＞の値は次の値とし、本日は２００６／７／１３であるとする。
＜業務データ２＞
＜期限＞２００６／７／２６＜／期限＞
＜／業務データ２＞
これらの入力に対して上記の１１）ないし１４）の処理が受信優先度設定部２１０でされ、次の２３）＜処理要求＞が制御部１０１により受信キュー部２２０に記憶される。
このときの実行優先度は、
プロセス優先度＝５０
業務データ優先度＝期限優先度（“２００６／７／２６”）
＝１００／（２００６／７／２６−２００６／７／１３）
＝８
実行優先度＝５０＋８＝５８
【００２２】
２３）
＜処理要求＞
＜タスク識別子＞
＜プロセス＞プロセス○２＜／プロセス＞
＜ポート＞ｐｏｒｔ０＜／ポート＞
＜オペレーション＞ｏｐ１＜／オペレーション＞
＜パートナーリンク＞ａｐｐ＿ａ＜／パートナーリンク＞
＜／タスク識別子＞
＜実行優先度＞５８＜／実行優先度＞
＜受信データ＞
＜業務データ２＞
＜期限＞２００６／７／２６＜／期限＞
＜／業務データ２＞
＜／受信データ＞
＜／処理要求＞
【００２３】
受信抽出部２３０は定期的に制御部１０１が起動して動作させ、その受信抽出部２３０は受信キュー部２２０に記憶された処理要求を実行優先度の順にソートし、実行優先度の最も高い処理要求を抽出し、解析実行部２４０に送る（Ｓ２０９）。
本例の場合は、上記２１）ないし２３）の中から２１）が抽出される。
受信抽出部２３０からの上記送信された実行処理要求を受けると、解析実行部２４０は、対応するビジネスプロセス定義を取得し、タスク識別子からプロセス○１の開始要求であることを判定する（Ｓ２１０）。
なお、入力がビジネスプロセス定義入力１２０ｂであり、このように定義の登録要求であれば、上記で説明したように、プロセス定義優先度登録部１２０がビジネスプロセス定義のインスタンス化を実施する（Ｓ２１１）。すなわちこれは図３で説明した動作であり、Ｓ２１１はＳ１０１ないしＳ１０３を意味している。
そして入力が業務アプリケーション実行要求である場合には、プロセス定義のインスタンス化、つまりプロセスの実行インスタンスを実施する（Ｓ２１１）。
既に定義されている業務アプリケーションを呼び出して実行する場合、つまり業務アプリケーション実行要求１４０ｂの場合には、その属性を取得して、対応するインスタンスを検索する（Ｓ２１２）。
ビジネスプロセス・インスタンスで、次に実行するタスクを取得し、送信タスクであれば、業務アプリケーションに対する送信処理要求を作成する（Ｓ２１５）。そして業務データを含む処理要求を作成し、送信タスクの識別子とともに送信優先度設定部２５０に送る。
つまり上記の２１）の例では、解析実行部２４０は、抽出された処理要求を受け取り、タスク識別子からプロセス○１の実行開始要求であることを判定し、プロセス定義のインスタンス化（実行処理の結果出力）を行う。
【００２４】
ビジネスプロセス定義を解析し、次に実行するタスクがａｐｐ＿ａに対するｉｎｖｏｋｅ（送信タスク）であることがわかり、次の３１）に示す送信の処理要求を作成する。
３１）
＜処理要求＞
＜タスク識別子＞
＜プロセス＞プロセス○１＜／プロセス＞
＜ポート＞ｐｏｒｔ＿ａ＜／ポート＞
＜オペレーション＞ｏｐ１＜／オペレーション＞
＜パートナーリンク＞ａｐｐ＿ａ＜／パートナーリンク＞
＜／タスク識別子＞
＜受信データ＞
＜業務データ１＞
＜起票者＞ナタリ＜／起票者＞
＜メッセージ＞リリース予定は３／２９＜／メッセージ＞
＜／業務データ１＞
＜業務データ２＞
＜期限＞２００６／７／２６＜／期限＞
＜／業務データ２＞
＜／受信データ＞
＜／処理要求＞
その後、受信抽出部２３０が抽出した次の処理要求、例えば２２）を処理して送信優先度設定部２５０に送る。
【００２５】
送信優先度設定部２５０は、解析実行部２４０から業務アプリケーション（提供）に対する処理要求および送信タスクの識別子を取得し、送信タスクの識別子に対応するビジネスプロセス定義に付与された優先度情報から実行優先度を算出し（Ｓ２１６）、更に、処理要求、送信タスクの識別子とともに送信キュー部２６０に格納する（Ｓ２１７）。
上記の例では、業務アプリケーション（ａ）と連携する呼び出しの定義だけを見て優先度を設定しており、本例の定義では業務データ優先度に関する設定をしていない。そのため送信時の実行優先度はプロセス優先度とタスク優先度の合計となる。
送信呼び出し時には受信時とは異なる業務データ（送信するデータ）があり、単純に受信時の優先度のみを継承するものではなく、受信時、送信時にそれぞれ実行優先度を設定する。呼び出しのタスクに対して、受信データおよび送信データから業務データ優先度の定義を設定すれば、それを反映した実行優先度が算出される。
上記の３１）の例では、タスク識別子から本送信タスクはｐｒｉｏｒｉｔｙ属性にてタスク優先度＝１０が設定されていることが判る。そして実行優先度を算出し（Ｓ２１６）、以下となる。
プロセス優先度＝１００  ：（プロセス定義の設定値）
業務データ優先度＝０    ：（本タスクに対する業務データ優先度の設定はなし）
タスク優先度＝１０
実行優先度＝１１０
その結果、送信優先度設定部２５０は、上記３１）を次の４１）として送信時の実行優先度とともに処理要求を送信キュー部２６０に格納する（Ｓ２１７）。即ち、Ｓ２１５ないしＳ２１７が解析実行ステップである。
【００２６】
４１）
＜処理要求＞
＜タスク識別子＞
＜プロセス＞プロセス○１＜／プロセス＞
＜ポート＞ｐｏｒｔ＿ａ＜／ポート＞
＜オペレーション＞ｏｐ１＜／オペレーション＞
＜パートナーリンク＞ａｐｐ＿ａ＜／パートナーリンク＞
＜／タスク識別子＞
＜実行優先度＞１１０＜／実行優先度＞
＜受信データ＞
＜業務データ１＞
＜起票者＞ナタリ＜／起票者＞
＜メッセージ＞リリース予定は３／２９＜／メッセージ＞
＜／業務データ１＞
＜業務データ２＞
＜期限＞２００６／７／２６＜／期限＞
＜／業務データ２＞
＜／受信データ＞
＜／処理要求＞
【００２７】
更に解析実行部２４０は、業務アプリケーション実行要求入力に基く処理（ビジネスプロセス・インスタンスの実行処理）の状況を順次調べて更新し、実行優先度順に要求された処理を実行する準備をする（Ｓ２１８）。
なお解析実行部２４０は、入力された処理（業務アプリケーション実行要求）が送信タスク（業務アプリケーション提供出力）でない場合は、要求内容に応じた処理（例えば、条件判断など）を実行する（Ｓ２１９）。
実行するタスクが全ステップ完了するか、受信タスクになるまで、Ｓ２１３からＳ２２０を繰り返し実行する。なお、送信処理ステップであるＳ２２０は、要求された送信処理（提供出力）を端末等に送信することを含んでいる。
また、Ｓ２０３からＳ２２１は、ビジネスプロセス管理装置１１０が稼働中には繰り返し実行され、業務アプリケーションからの要求によっては並行動作する場合もある。
【００２８】
一方、制御部１０１が定期的に送信抽出部２７０を起動して、送信抽出部２７０は、送信キュー部２６０に格納された処理要求のなかから実行優先度の最も高い処理要求を抽出する。
更に処理要求に格納されたタスク識別子から対応する送信部２８０に対して送信すべき処理要求を渡し、業務アプリケーション提供の呼び出しを実行する。つまり制御部１０１は上記４１）の内容を送信部２８０から業務アプリケーション提供出力１５０ｂとして送信させる。
送信抽出部２７０で一つの送信タスクの処理が完了すると、次の送信タスクを実行する。先に図６と図５を用いて業務アプリケーションｎの例を説明したが、上記の三つの処理要求ａｐｐ＿ｎ（ｎ＝ａ，ｂ，ｃ）のみがある例では、次のタスクはａｐｐ＿ｂへの送信タスクであり、上記と同様に処理を行い、更に次の送信処理を行う。
なお制御部１０１は、タイマ等で定期的に優先度更新部２９０を起動し、優先度更新部２９０は受信キュー部２２０、送信キュー部２６０に格納されている処理要求を確認する。そして格納されている処理要求があれば、時間経過とともに実行優先度の値を更新する。更新する方式の例を以下に示す。
５１）実行優先度＝実行優先度＋５
即ち、優先度更新部が起動されるたびに＋５実行優先度を上げる。
上記の更新とは異なって、処理要求に開始時刻や完了予定時刻を含め、開始時刻からの経過時間や完了予定時刻までの残存時間などを基に、実行優先度を更新してもよい。
【００２９】
なお上記説明では、受信優先度設定部２１０及び受信キュー部２２０、受信抽出部２３０と解析実行部２４０と送信優先度設定部２５０、送信キュー部２６０と送信抽出部２７０との三つのブロックに分かれる構成と動作を説明したが、これらを二つまたは一つのブロックにまとめて解析動作を解析実行部で行い、一つの送信キューに実行優先度の高い順に格納して、送信出力は順次、実行優先度の高い順にこの一つの送信キューから送信する構成としてもよい。また解析実行部２４０が、受信抽出部２３０または送信優先度設定部２５０のいずれか、またはその両方を兼ねるようにしてもよい。その場合、処理の実行優先度と送信実行優先度とは等しいとする。
また上記において、管理装置は専用のハードウェアで構成されると説明したが、汎用の計算機を用いて図３及び図７に示す機能を各ステップで構成するプログラムで記述して、メモリ１０２や図示しない高速メモリに展開して上記動作をさせる方法としてもよい。
このように本実施の形態の構成と動作によれば、従来の一般文書で行われている、単一の用語を基に優先度設定をする不具合が無くなる。即ち従来の単一優先度によれば、用語の抽出と期限情報との突き合せで優先度を決めているが、業務文書には必ずしも期限が示されていなかったり、期限関連の用語が記載されているとは限らない。こうした期限が無記載の文書でも優先して処理が必要な場合がある。更に文書に期限が記載されている場合でも、こうした期限に関する用語が、直接、その文書の回答期限なのか、またはその文書中に記載された他の事について言及されたものであり、文書自体の期限とは関係無いことであるか、判断ができない。
一方、本構成によれば、プロセスとタスクと業務とを組合わせて総合優先度を設定できるので、例えば業務の種類を細分化して、または文書名や起票者とタスクの組合わせにより、適切な優先処理ができる。
【００３０】
なお業務アプリケーション提供出力１５０ｂは、業務アプリケーション実行要求入力１４０ｂに直接リンクして出力する運用も可能であるが、送信キュー部２６０に格納しておき、制御部１０１が定期的に送信抽出部２７０に指示して読出し、出力を実行させるようにしてもよい。この場合には上記で説明したように、解析実行部２４０で処理した日から時間が経過すると、優先度更新部２９０により期限の経過を検出して実行優先度が上がることになる。
業務における優先度は、業務における戦略を表すものであり、時間、コスト、リソースなどの観点から決定する必要がある。よって、単一の情報から決定するものではなく、複合的な観点からの判断が求められる。また、一度設定した優先度も時間経過とともに状況の変化に対応する必要がある。本例では、定期的な優先度を見直す例として、期限を例として記述した。その他にも注文数や在庫数などを元に定期的に生産タスクの優先度を調整するなどが考えられる。このように、本構成を用いることで、定期的な優先度の見直しを実施し、時間経過による状況の変化に対応した優先度の設定が可能となる。
【００３１】
上記したようにこの実施の形態におけるビジネスプロセス管理装置は、
業務アプリケーションからビジネスプロセスの開始処理（定義のインスタンス化）要求や、実行中のビジネスプロセス・インスタンスに対する処理要求を受け付ける受信部と、
業務データおよびビジネスプロセス定義に設定された優先度情報に基づき、業務アプリケーションからの処理要求に対する実行優先度を設定する受信優先度設定部と、
受信優先度設定部から出力される業務アプリケーションからの要求および実行優先度の情報をキューイングする受信キュー部と、
受信キュー部に格納された業務アプリケーションからの要求を、実行優先度の高い順に抽出する受信抽出部と、
ビジネスプロセスのインスタンス化や、ビジネスプロセス定義の処理フローを解析実行して、外部アプリケーションに対する処理要求の生成など制御する解析実行部と、
プロセス定義に設定された優先度情報および外部の業務アプリケーションに対する処理要求から実行優先度を設定する送信優先度設定部と、
送信優先度設定部から出力される業務アプリケーションへの要求および実行優先度の情報をキューイングする送信キュー部と、
送信キュー部に格納された業務アプリケーションへの要求を、実行優先度の高い順に抽出する送信抽出部と、
業務アプリケーションに対してサービスの処理要求や業務データの受け渡しを実施する送信部と、
送信キュー部、受信キュー部に格納されている実行優先度情報を更新する優先度更新部と、を備え、実行優先度に基づきビジネスプロセス・インスタンスの処理順を制御することを特徴とする。
【００３２】
従って、ビジネスプロセス定義装置としては、ビジネスプロセスの定義において、プロセス優先度、業務データによる優先度、プロセス内のタスク実行優先度をビジネスプロセス定義の属性として出力することを特長とする。
更に、ビジネスプロセス定義に基づいてアプリケーションの連携（呼び出し／業務データ交換）を実施するビジネスプロセス管理装置として、新規にビジネスプロセス定義を実行する場合に、ビジネスプロセス定義の属性として設定された優先度情報を取得し、業務データの内容から実行優先度を設定する優先度設定部を持つことを特徴とする。
また更に、ビジネスプロセス管理装置として、実行中のビジネスプロセス・インスタンスに対する要求があった場合に、ビジネスプロセス定義の属性として設定された優先度情報を取得し、業務データの内容から実行優先度を設定する優先度設定部を持つことを特徴とする。
またビジネスプロセス管理装置は、ビジネスプロセスの解析実行方法において、業務アプリケーションからの処理要求（業務データを含む）、実行優先度、ビジネスプロセス定義における受信タスクの識別子をキューイングする受信キュー部、および受信キュー部から実行優先度の高い順に処理要求およびビジネスプロセス定義における受信タスクの識別子を抽出する受信抽出部を持つことを特徴とする。
更に、ビジネスプロセス管理装置において、ビジネスプロセス定義の属性として設定された優先度情報を取得し、優先度情報および実行するタスクに基づき実行優先度を設定する優先度設定部を持つことを特徴とする。
更に、業務アプリケーションへの処理要求（業務データを含む）、実行優先度、ビジネスプロセス定義における送信タスクの識別子をキューイングする送信キュー部、
および送信キュー部から実行優先度の高い順に処理要求およびビジネスプロセス定義における送信タスクの識別子を抽出する送信抽出部を持つことを特徴とする。
更に、ビジネスプロセス管理装置は、時間経過や業務アプリケーションからの要求受信などのイベントをトリガとして、受信キュー装置および送信キュー装置に格納されている実行優先度情報を更新する優先度更新部を持つことを特徴とする。
これにより、プロセス実行の優先度を、単一の項目から設定するのではなく、多種のデータから複合的に判断し設定するとともに、プロセスの実行に伴い優先度を見直し、再設定していくことが可能となる。
【図面の簡単な説明】
【００３３】
【図１】この発明の実施の形態１におけるビジネスプロセス管理装置の構成と処理の流れを示す図である。
【図２】実施の形態１における管理装置のハードウェア構成を示す図である。
【図３】実施の形態１におけるビジネスプロセス定義の登録動作を示す処理フロー図である。
【図４】実施の形態１におけるビジネス定義例（その１）を示した図である。
【図５】実施の形態１における設定される優先度の具体的な例を示す図である。
【図６】実施の形態１におけるＢＰＥＬ形式で記述した優先度指定の例を示す図である。
【図７】実施の形態１における管理装置が行う業務アプリケーション解析実行を行う動作フロー図である。
【図８】実施の形態１における同時に実行する別プロセス定義の例を示す図である。
【符号の説明】
【００３４】
１０１  （プロセッサを含む）制御部、１０２  メモリ、１０３  内部バス、１１０  （ビジネスプロセス）管理装置、１２０  プロセス定義優先度登録部、１３０  業務（細分化）プロセス定義データベース（ＤＢ）、２００  受信部、２１０  受信優先度設定部、２２０  受信キュー部、２３０  受信抽出部、２４０  解析実行部、２５０  送信優先度設定部、２６０  送信キュー部、２７０  送信抽出部、２８０  送信部、２９０  優先度更新部、３０１  端末ａ、３０２  端末ｂ。
【図１】
2008040620.tif 000003
【図２】
2008040620.tif 000004
【図３】
2008040620.tif 000005
【図４】
2008040620.tif 000006
【図５】
2008040620.tif 000007
【図６】
2008040620.tif 000008
【図７】
2008040620.tif 000009
【図８】
2008040620.tif 000010