(57)【要約】【課題】ワークフロー登録時点から実行時点までの間にワークフローで使用するリソースが変更された場合に、ワークフローを登録したユーザにとって意図しない実行結果を招かないように防止する。【解決手段】ワークフロー処理装置においてリソース準備部５１４を設け、ワークフロー実行時の使用リソースとしてワークフロー登録時点のリソースを使用するように指示を受けた場合に、ワークフロー登録時点のリソースを実行時に取得できるように準備する。ワークフロー実行指示部５１６は、リソース準備部５１４により準備したリソースが存在する場合に当該リソースを使用してワークフローを実行するようにワークフロー実行手段に指示する。【選択図】        図４
2010211642.tif 000002
【特許請求の範囲】
【請求項１】
ワークフローの作成及び管理を行うワークフロー管理手段と、該ワークフロー管理手段からの指示に従ってワークフローを実行するワークフロー実行手段を備えたワークフロー処理システムであって、
前記ワークフロー管理手段において作成したワークフロー中で使用されるリソースの一部又は全部に関するリストを作成し、該リスト中の個々のリソースについて、ワークフロー登録時又はワークフロー実行時のいずれの時点のリソースを使用するかを判断して、ワークフロー登録時点でのリソースを使用する場合には当該リソースをワークフロー実行時に取得できるように準備し、
準備したリソースが存在する場合には、前記ワークフロー管理手段から前記ワークフロー実行手段に対してなされる指示に従って、当該リソースを使用してワークフローを実行させ、また準備したリソースが存在しない場合には、前記ワークフロー管理手段から前記ワークフロー実行手段に対してなされる指示に従って、ワークフロー実行時点でのリソースを使用してワークフローを実行させることを特徴とする、ワークフロー処理システム。
【請求項２】
ワークフローを作成するためのワークフロー作成手段と、
作成したワークフロー中で使用されるリソースの一部又は全部に関する使用リソースリストを作成する使用リソースリスト作成手段と、
前記使用リソースリスト中の個々のリソースについて、ワークフロー登録時又はワークフロー実行時のいずれの時点のリソースを使用するかの指示を受け付ける使用リソース指示受付手段と、
前記使用リソース指示受付手段がワークフロー登録時点でのリソースを使用する指示を受け付けた場合に、ワークフロー登録時点でのリソースをワークフロー実行時に取得できるように準備するリソース準備手段と、
前記ワークフロー作成手段が作成したワークフローで定義された処理を解釈するワークフロー解釈手段と、
前記リソース準備手段により準備したリソースが存在する場合に当該リソースを使用してワークフローを実行するように前記ワークフロー実行手段に対して指示する第１のワークフロー実行指示手段と、
前記リソース準備手段により準備したリソースが存在しない場合に、ワークフロー実行時点でのリソースを使用してワークフローを実行するように前記ワークフロー実行手段に対して指示する第２のワークフロー実行指示手段を備えることを特徴とする、請求項１に記載のワークフロー処理システム。
【請求項３】
ワークフローの登録時又は実行時のいずれの時点のリソースを優先して使用するかについて指示を受け付ける第２の使用リソース指示受付手段と、
常にワークフロー登録時点でのリソースをワークフロー実行時に取得できるように準備する第２のリソース準備手段と、
ワークフロー実行時において、前記第２の使用リソース指示受付手段で受け付けた指示がワークフロー登録時点でのリソースを優先させる指示であった場合には、前記第２のリソース準備手段で準備したリソースを使用してワークフローを実行するように前記ワークフロー実行手段に対して指示する第３のワークフロー実行指示手段と、
ワークフロー実行時において、前記第２の使用リソース指示受付手段で受け付けた指示がワークフロー実行時点でのリソースを優先させる指示であった場合には、ワークフロー実行時に当該リソースが取得可能であるか否かを判断するリソース取得可否判断手段と、
前記リソース取得可否判断手段により、前記ワークフロー実行時点でのリソースが取得不可能と判断された場合に、前記第２のリソース準備手段が準備したリソースを使用してワークフローを実行するように前記ワークフロー実行手段に対して指示する第４のワークフロー実行指示手段と、
前記リソース取得可否判断手段により、前記ワークフロー実行時点のリソースが取得可能であると判断された場合に、ワークフロー実行時点でのリソースを使用してワークフローを実行するように前記ワークフロー実行手段に対して指示する第５のワークフロー実行指示手段を備えることを特徴とする、請求項２に記載のワークフロー処理システム。
【請求項４】
作成された使用リソースリスト中の個々のリソースについてワークフロー登録時の特徴量を取得するかの指示を受け付ける、リソースの特徴量取得指示受付手段と、
前記特徴量取得指示受付手段がリソースの特徴量を取得するように指示を受け付けた場合に、ワークフロー登録時点でのリソースの特徴量である登録時特徴量を取得する登録時特徴量取得手段と、
ワークフロー実行時において、前記登録時特徴量取得手段により取得した登録時特徴量が存在する場合に、ワークフロー実行時点でのリソースを取得して該リソースの特徴量である実行時特徴量を取得する実行時特徴量取得手段と、
前記登録時特徴量と前記実行時特徴量を比較する特徴量比較手段と、
前記特徴量比較手段による比較の結果、前記登録時特徴量と前記実行時特徴量が一致した場合に、ワークフロー実行時点でのリソースを使用してワークフローを実行するように前記ワークフロー実行手段に対して指示する第６のワークフロー実行指示手段と、
前記特徴量比較手段による比較の結果、前記登録時特徴量と前記実行時特徴量が一致しなかった場合に、前記リソース準備手段により準備したリソースが存在すれば、当該リソースを使用してワークフローを実行するように前記ワークフロー実行手段に対して指示する第７のワークフロー実行指示手段と、
前記特徴量比較手段による比較の結果、前記登録時特徴量と前記実行時特徴量が一致しなかった場合に、前記リソース準備手段により準備したリソースが存在しなければ、ワークフロー実行時点でのリソースを使用してワークフローを実行するように前記ワークフロー実行手段に対して指示する第８のワークフロー実行指示手段を備えることを特徴とする、請求項３に記載のワークフロー処理システム。
【請求項５】
前記登録時特徴量取得手段にてリソースの登録時特徴量を取得する際に、実行時特徴量が登録時特徴量と異なった場合の挙動についての指示を受け付けるリソース変更時挙動受付手段と、
前記特徴量比較手段による比較の結果、前記登録時特徴量と前記実行時特徴量が一致しなかった場合に、前記リソース変更時挙動受付手段で受け付けた処理を行うように前記ワークフロー実行手段に対して指示する、第９のワークフロー実行指示手段を備えることを特徴とする、請求項４に記載のワークフロー処理システム。
【請求項６】
前記ワークフローを作成したユーザを判断するワークフロー作成者判断手段と、
前記ワークフローで使用するリソースを編集したユーザを判断するリソース編集者判断手段と、
前記ワークフロー作成者判断手段が判断したワークフロー作成者と前記リソース編集者判断手段が判断したリソース編集者を比較するユーザ比較手段と、
前記ユーザ比較手段による比較の結果、前記ワークフロー作成者と前記リソース編集者が同一であった場合には、前記特徴量比較手段による比較の結果、前記登録時特徴量と前記実行時特徴量が一致しなかった場合に、ワークフロー実行時点でのリソースを使用してワークフローを実行するように前記ワークフロー実行手段に対して指示する、第１０のワークフロー実行指示手段を備えることを特徴とする、請求項５に記載のワークフロー処理システム。
【請求項７】
前記リソース準備手段によるリソース準備の際に、ワークフロー登録時点でのリソースを予め取得する、ワークフロー登録時リソース取得手段と、
前記登録時リソース取得手段により取得したリソースを記憶する、ワークフロー登録時リソース記憶手段を備えることを特徴とする、請求項２乃至６のいずれか１項に記載のワークフロー処理システム。
【請求項８】
ワークフローを解釈するワークフロー管理サービス部と、
ワークフローを実行するワークフロー実行サービス部を備え、
前記ワークフロー管理サービス部は、
前記ワークフロー実行サービス部がワークフロー登録時リソース記憶手段を備えているか否かを判断するサービス機能判断手段と、
前記ワークフロー実行サービス部がワークフロー登録時リソース記憶手段を備える場合に、前記ワークフロー実行サービス部に対してワークフロー登録時点でのリソースを記憶するように依頼する、ワークフローの登録時リソース記憶依頼手段を備えており、
前記ワークフロー実行サービス部は、
ワークフロー実行手段と、
前記リソース準備手段によるリソース準備の際に、前記ワークフロー登録時におけるリソースの記憶依頼に従って当該リソースを記憶する第２の登録時リソース記憶手段を備えることを特徴とする、請求項７に記載のワークフロー処理システム。
【請求項９】
ワークフローの作成及び管理を行うとともに、ワークフローの実行を装置内又は装置外のワークフロー実行手段に指示するワークフロー処理装置であって、
ワークフローを作成するワークフロー作成手段と、
前記ワークフロー作成手段が作成したワークフロー中で使用されるリソースの一部又は全部に関する使用リソースリストを作成する使用リソースリスト作成手段と、
前記使用リソースリスト中の個々のリソースについて、ワークフロー登録時又はワークフロー実行時のいずれの時点のリソースを使用するかの指示を受け付ける使用リソース指示受付手段と、
前記使用リソース指示受付手段が、ワークフロー登録時点でのリソースを使用する指示を受け付けた場合に当該リソースをワークフロー実行時に取得できるように準備するリソース準備手段と、
前記ワークフロー作成手段が作成したワークフローで定義された処理を解釈するワークフロー解釈手段と、
前記リソース準備手段で準備したリソースが存在する場合には、前記ワークフロー実行手段に指示を送信して当該リソースを使用してワークフローを実行させ、また前記リソース準備手段で準備したリソースが存在しない場合には、前記ワークフロー実行手段に指示を送信してワークフロー実行時点でのリソースを使用してワークフローを実行させる、ワークフロー実行指示手段を備えたことを特徴とする、ワークフロー処理装置。
【請求項１０】
ワークフローを作成する作成ステップと、
前記ステップで作成したワークフロー中で使用されるリソースの一部又は全部についてのリストを作成するリスト作成ステップと、
前記リスト作成ステップで作成したリスト中の個々のリソースについて、ワークフロー登録時又はワークフロー実行時のいずれの時点のリソースを使用するかについての指示を受け付ける受付ステップと、
前記受付ステップで受け付けた指示が、ワークフロー登録時点でのリソースを使用する指示であった場合に、ワークフロー登録時点でのリソースをワークフロー実行時に取得できるように準備する準備ステップと、
前記作成ステップで作成したワークフローで定義された処理を解釈する解釈ステップと、
前記準備ステップで準備したリソースが存在する場合には当該リソースを使用してワークフローを実行させるように指示し、また前記準備ステップで準備したリソースが存在しない場合にはワークフロー実行時点でのリソースを使用してワークフローを実行させるように指示する、ワークフローの実行指示ステップを有することを特徴とする、ワークフロー処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一連の処理を定義したワークフローを処理するワークフロー処理システム、ワークフロー処理装置及びワークフロー処理方法に関する。特に本発明では、ワークフロー登録時の状態のリソースを予め準備することで、ワークフロー実行時にワークフロー登録時のリソースが利用可能となる。
【背景技術】
【０００２】
予め定義された処理を順次に実行する仕組みとしてのワークフローが知られている、例えばワークフローで手続きを自動化することによって業務効率を改善できる場合がある。一方ワークフローでは、その処理中に様々なリソースを利用することがある。しかしそのリソースが共有ストレージなどに保管されている場合に、ワークフローを登録した時点からワークフローによってそのリソースが利用されるまでの間に、リソースに変更が加えられることがあり得る。そのような場合、ワークフロー実行時に、ワークフロー登録時に想定した状態とは異なる状態のリソースが使用される。これが原因でワークフローの実行結果は、ワークフローを登録したユーザの意図しないものとなってしまうことがある。
【０００３】
例えばＷｅｂページ上でデータを入力させ、所定のフォーマットに従ってプリントするようなワークフローでは、そのフォーマットで想定している文字列長や画像サイズよりも長い文字列や大きな画像を挿入した場合に、出力時の体裁が崩れてしまう。このようなワークフローでは、ユーザがデータを入力した後に所定のフォーマットのリソースが途中で変更されると、ユーザが入力した文字列の長さや画像サイズが新しいフォーマットでは想定外となってしまい、正しいフォーマットで出力できないことになる。
【０００４】
さらには、文書管理システムに登録されている文書をチェックアウトして、その文書に記載されている情報に基づいて、所定のフォーマットに従ってデータをコンバートするワークフローがある。このワークフローでは、文書管理システムに登録されている文書が他のユーザによってチェックアウトされている場合に、ワークフローによる文書のチェックアウトに失敗し、ワークフローの実行を継続できなくなることがあった。
【０００５】
そこでリソースに変更があった場合に、リソースの作成者に変更通知を行う仕組みが提案されている（例えば特許文献１参照）。つまりこの仕組みを利用することで、リソースに変更があった場合に、リソースの作成者に対してリソースが変更された旨の通知が行われる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平７−４４４４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来の技術では、リソースの作成者に対するリソースの変更通知は行われるものの、ワークフローの実行結果が、ワークフローを登録したユーザが意図しないものになってしまうという不具合の発生を防ぐことは困難であった。またリソースの変更通知を行った後でユーザからの指示を仰ぐように構成したとしても、ワークフローによる手続きの自動化といった利点が損なわれないように防止することが困難であった。
【０００８】
そこで、本発明は上記課題を鑑みて為されたものであり、ワークフロー登録時に想定した状態とは異なる状態のリソースが使用されることによる弊害の防止を課題とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決するために、本発明に係るワークフロー処理システムは、ワークフローの作成及び管理を行うワークフロー管理手段と、該ワークフロー管理手段からの指示に従ってワークフローを実行するワークフロー実行手段を備える。前記ワークフロー管理手段において作成したワークフロー中で使用されるリソースの一部又は全部に関するリストを作成し、該リスト中の個々のリソースについて、ワークフロー登録時又はワークフロー実行時のいずれの時点のリソースを使用するかを判断して、ワークフロー登録時点でのリソースを使用する場合には当該リソースをワークフロー実行時に取得できるように準備する。そして、準備したリソースが存在する場合には、前記ワークフロー管理手段から前記ワークフロー実行手段に対してなされる指示に従って、当該リソースを使用してワークフローを実行させ、また準備したリソースが存在しない場合には、前記ワークフロー管理手段から前記ワークフロー実行手段に対してなされる指示に従って、ワークフロー実行時点でのリソースを使用してワークフローを実行させる。
【００１０】
本発明に係るワークフロー処理装置は、ワークフローの作成及び管理を行うとともに、ワークフローの実行を装置内又は装置外のワークフロー実行手段に指示する装置であって、以下の構成要素を備える。
・ワークフローを作成するワークフロー作成手段（図４の５１１参照）。
・前記ワークフロー作成手段が作成したワークフロー中で使用されるリソースの一部又は全部に関する使用リソースリストを作成する使用リソースリスト作成手段（図４の５１２参照）。
・前記使用リソースリスト中の個々のリソースについて、ワークフロー登録時又はワークフロー実行時のいずれの時点のリソースを使用するかの指示を受け付ける使用リソース指示受付手段（図４の５１３参照）。
・前記使用リソース指示受付手段が、ワークフロー登録時点でのリソースを使用する指示を受け付けた場合に当該リソースをワークフロー実行時に取得できるように準備するリソース準備手段（図４の５１４参照）。
・前記ワークフロー作成手段が作成したワークフローで定義された処理を解釈するワークフロー解釈手段（図４の５１５参照）。
・前記リソース準備手段で準備したリソースが存在する場合には、前記ワークフロー実行手段に指示を送信して当該リソースを使用してワークフローを実行させ、また前記リソース準備手段で準備したリソースが存在しない場合には、前記ワークフロー実行手段に指示を送信してワークフロー実行時点でのリソースを使用してワークフローを実行させる、ワークフロー実行指示手段（図４の５１６及び５１７参照）。
【００１１】
本発明に係るワークフロー処理方法は、以下のステップを有する。
・ワークフローを作成する作成ステップ（図５のＳ６０１及びＳ６０２参照）。
・前記ステップで作成したワークフロー中で使用されるリソースの一部又は全部についてのリストを作成するリスト作成ステップ（図５のＳ６１２参照）。
・前記リスト作成ステップで作成したリスト中の個々のリソースについて、ワークフロー登録時又はワークフロー実行時のいずれの時点のリソースを使用するかについての指示を受け付ける受付ステップ（図５のＳ６１３参照）。
・前記受付ステップで受け付けた指示が、ワークフロー登録時点でのリソースを使用する指示であった場合に、ワークフロー登録時点でのリソースをワークフロー実行時に取得できるように準備する準備ステップ（図５のＳ６１５参照）。
・前記作成ステップで作成したワークフローで定義された処理を解釈する解釈ステップ（図６のＳ７０１及びＳ７０２参照）。
・前記準備ステップで準備したリソースが存在する場合には当該リソースを使用してワークフローを実行させるように指示しまた前記準備ステップで準備したリソースが存在しない場合にはワークフロー実行時点でのリソースを使用してワークフローを実行させるように指示する、ワークフローの実行指示ステップ（図６のＳ７１２及びＳ７１４参照）。
【発明の効果】
【００１２】
本発明によれば、ワークフロー登録時に予め必要なリソースを取得して確保し、これをワークフロー実行時に利用することができる。そのためワークフローの実行後に、ワークフローを登録したユーザの意図と異なる結果をもたらさないように防止できる。
【図面の簡単な説明】
【００１３】
【図１】一般的なコンピュータ１００の構成を例示した図である。
【図２】本発明の実施形態に係るネットワーク構成の一例を図である。
【図３】本発明の実施形態についてワークフローが処理される手順例を説明するための図である。
【図４】図５及び図６と併せて本発明の第１の実施形態を説明するための図であり、ワークフロー管理サービス部を示すモジュール構成図である。
【図５】ワークフローで使用するリソースを予め取得する場合の処理例を示すフローチャートである。
【図６】予め取得したリソースを使用してワークフローを実行する場合の処理例を示すフローチャートである。
【図７】図８及び図９と併せて本発明の第２の実施形態を説明するための図であり、ワークフロー管理サービス部を示すモジュール構成図である。
【図８】ワークフロー実行時にリソースが取得できない場合に、予め取得しておいたリソースを使用する場合の処理例を示すフローチャートである。
【図９】予め取得したリソース及びユーザから受け付けた優先度情報を使用してワークフローを実行する場合の処理例を示すフローチャートである。
【図１０】図１１及び図１２と併せて本発明の第３の実施形態を説明するための図であり、ワークフロー管理サービス部を示すモジュール構成図である。
【図１１】ワークフローで使用するリソースの特徴量を予め取得する場合の処理例を示すフローチャートである。
【図１２】予め取得したリソースとリソースの特徴量情報を使用してワークフローを実行する場合の処理例を示すフローチャートである。
【図１３】図１４及び図１５と併せて本発明の第４の実施形態を説明するための図であり、ワークフロー管理サービス部を示すモジュール構成図である。
【図１４】ワークフロー実行時にリソース特徴量が異なっていたときの挙動を予めユーザから受け付ける場合の処理例を示すフローチャートである。
【図１５】ワークフロー実行時にリソース特徴量が異なっていたときに、予めユーザから受け付けたリソース変更時の挙動に従って処理を行う例を示すフローチャートである。
【図１６】図１７及び図１８と併せて本発明の第５の実施形態を説明するための図であり、ワークフロー管理サービス部を示すモジュール構成図である。
【図１７】リソースの最終更新者がワークフロー作成者と一致していればリソースが変更されていてもワークフローを続行する指示をユーザから受け付ける場合の処理例を示すフローチャートである。
【図１８】リソースの最終更新者がワークフロー作成者と一致していればリソースが変更されていてもワークフローを続行させる場合の処理例を示すフローチャートである。
【図１９】図２０とともに本発明の第６の実施形態を説明するための図であり、ワークフロー管理サービス部を示すモジュール構成図である。
【図２０】ワークフロー登録時のリソースを記憶する場合の処理例を示すフローチャートである。
【図２１】図２２とともに本発明の第７の実施形態を説明するための図であり、ワークフロー処理システムを示すモジュール構成図である。
【図２２】ワークフロー実行サービス部がリソース記憶部を備える場合に、ワークフロー実行サービス部に対してリソースを記憶するように依頼する処理例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための最良の形態について図面を用いて説明する。本発明の実施形態に係るワークフロー処理装置は、例えば図１に示す構成のパーソナルコンピュータ（以下、ＰＣと略記する）から成るシステム上に実現される。
＜第１実施形態＞
図１は、一般的なコンピュータ１００の構成例を示す図である。尚、図１に示すハードウェアブロック図は一般的な情報処理装置のハードウェアブロック図に相当するものとし、本実施形態のコンピュータ１００には一般的な情報処理装置のハードウェア構成を適用できる。
【００１５】
図１において、ＣＰＵ（中央演算処理装置）２０１、ＲＡＭ（ランダムアクセスメモリ）２０２、ＲＯＭ（読み出し専用メモリ）２０３がバス２０４に接続されている。そしてキーボードコントローラ（以下、ＫＢＣと略記する）２０５、ＣＲＴコントローラ（以下、ＣＲＴＣと略記する）２０６が設けられている。さらにディスクコントローラ（以下、ＤＫＣと略記する）２０７、ネットワークコントローラ（以下、ＮＣと略記する）２１２が設けられる。これらの構成要素はバス２０４を介してデータの送受を行う。
【００１６】
制御中枢とされるＣＰＵ２０１はプログラムを解釈して実行する。プログラムはＲＯＭ２０３のプログラム用ＲＯＭに記憶されるか、或いはハードディスク等の記憶デバイス２１１からＲＡＭ２０２にロードされたＯＳやアプリケーション等のプログラムである。ここでＯＳとはコンピュータ上で稼動するオペレーティングシステムの略語であり、以下オペレーティングシステムのことをＯＳと呼ぶ。後述する各フローチャートの処理はこのプログラムの実行により実現できる。なお本例ではＲＯＭ２０３としてプログラム用ＲＯＭ、フォントＲＯＭ、データＲＯＭを含む。
【００１７】
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等としての機能を有し、不揮発性メモリデバイス等を用いて構成される。ＫＢＣ２０５は、操作手段を構成するキーボード２０９からのキー入力や不図示のポインティングデバイスからの方向操作入力等について制御する。ＣＲＴＣ２０６は、表示手段を構成するＣＲＴディスプレイ２１０の表示を制御する。またＤＫＣ２０７は各種データを記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）等の記憶デバイス２１１におけるデータアクセスを制御する。ＮＣ２１２はＬＡＮ、ＷＡＮ等のネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を行う。
【００１８】
図２は本実施形態に係るネットワークの構成例を示す図である。ワークフロー管理サーバ４０１は、ワークフローの作成やその解釈、実行指示を行うサーバである。またサーバ４０２、４０３、４０４は、それぞれワークフロー管理サーバ４０１から指示を受けワークフローで定義された個々の処理を行うワークフロー実行サーバであり、後述の画像処理装置とともにワークフロー実行手段を構成する。図示の例では、文書管理サーバ４０２、帳票作成サーバ４０３、出力管理サーバ４０４がネットワーク４００に繋がっている。さらには画像処理装置４０５がネットワーク４００を介して接続されている。なおワークフロー管理サーバ４０１がワークフロー実行サーバ４０２乃至４０４のうち、いずれか１つのサーバ又は複数のサーバを兼ねてもよい。つまりワークフロー管理サーバの装置外にワークフロー実行サーバを別に設ける形態に限らず、同一の装置内にワークフロー管理サーバ及びワークフロー実行サーバの両機能を実現しても構わない。またワークフロー管理サーバ４０１やワークフロー実行サーバ４０２乃至４０４はＰＣ上に構成されてもよいし、画像処理装置４０５上に構成されてもよい。
【００１９】
図３は本実施形態に係るワークフローの処理について手順例を示した図である。なお本発明において、ワークフローの処理手順が図３に示す手順に限定されないことは勿論である。
ワークフロー管理サーバ４０１は、予め作成されたワークフローに従い、文書管理サーバ４０２に対し文書要求４５１を行う。文書管理サーバ４０２はワークフロー管理サーバ４０１の要求に従い、文書ＤＢ（データベース）４０６に対し文書要求４５２を行い、文書４５３を得る。その後、文書管理サーバ４０２はワークフロー管理サーバ４０１に対し、得られた文書４５３を返送する。
【００２０】
ワークフロー管理サーバ４０１は、文書管理サーバ４０２から文書４５３を受け取ると、予め作成されたワークフローに従い、帳票作成サーバ４０３に対し帳票作成要求４６１を行い、併せて文書４５３を送信する。帳票作成サーバ４０３はワークフロー管理サーバ４０１の要求に従い、帳票テンプレートＤＢ４０７に対し帳票テンプレート要求４６２を行い、帳票テンプレート４６３を得る。その後、帳票作成サーバ４０３は帳票テンプレート４６３と文書４５３から帳票４６４を作成し、ワークフロー管理サーバ４０１に対し、作成した帳票４６４を返送する。
【００２１】
ワークフロー管理サーバ４０１は、帳票作成サーバ４０３から帳票４６４を受け取ると、予め作成されたワークフローに従い、出力管理サーバ４０４に対し印刷要求４７１を行い、併せて帳票４６４を送信する。出力管理サーバ４０４はワークフロー管理サーバ４０１の要求に従い、帳票４６４を印刷するように画像処理装置４０５に対して印刷要求４７２を行う。画像処理装置４０５は出力管理サーバからの印刷要求４７２に従い、出力処理を行うことで、ワークフローが完了する。
【００２２】
図４は本実施形態に係るワークフロー管理サービス部のモジュール構成図である。ワークフロー管理サービス部５０１はワークフロー管理サーバ４０１上にワークフロー管理手段として構成され、ワークフローの作成やその解釈及び実行指示を行う。なお本発明の適用において、ワークフロー管理サービス部５０１は、ワークフロー管理サーバ４０１上に構成されると限定するものではないことに注意を要する（複数のサーバを使ってワークフロー管理手段を構成することも可能である）。
【００２３】
ワークフロー管理サービス部５０１は、ワークフロー作成部５１１、使用リソースリスト作成部５１２、使用リソース指示受付部５１３、リソース準備部５１４、ワークフロー解釈部５１５を備える。そして、第１のワークフロー実行指示部５１６及び第２のワークフロー実行指示部５１７が設けられている。
【００２４】
ワークフロー作成部５１１でワークフローを作成し、ワークフロー解釈部５１５はワークフロー作成部５１１で作成したワークフローで定義された処理を解釈する。使用リソースリスト作成部５１２は、作成したワークフロー中で使用される一部又は全部のリソースを記述したリスト（以下、使用リソースリストという）を作成する。また使用リソース指示受付部５１３は、作成された使用リソースリスト中の個々のリソースについて、ワークフロー登録時又はワークフロー実行時のうち、いずれの時点のリソースを使用するかについての指示を受け付ける。
【００２５】
リソース準備部５１４は、使用リソース指示受付部５１３で受け付けた指示がワークフロー登録時点のリソースを使用することを意味する場合に、ワークフロー登録時点でのリソースをワークフロー実行時に取得できるように該リソースを確保することで準備する。
第１のワークフロー実行指示部５１６又は第２のワークフロー実行指示部５１７はワークフロー実行サーバ４０２乃至４０４に対してワークフローの実行を指示する。２つのワークフロー実行指示部を設ける理由は、リソース準備部５１４により準備したリソースの存否に応じて使用するリソースが異なるためである。つまり、リソース準備部５１４により準備したリソースが存在する場合に、第１のワークフロー実行指示部５１６は、準備したリソースを使用してワークフローを実行するようにワークフロー実行サーバ４０２乃至４０４に対して指示する。またリソース準備部５１４により準備したリソースが存在しない場合に、第２のワークフロー実行指示部５１７は、ワークフロー実行時のリソースを使用してワークフローを実行するようにワークフロー実行サーバ４０２乃至４０４に対して指示する。
【００２６】
なお本例では理解し易いように２つのワークフロー実行指示部５１６，５１７を用いて実行指示の内容を各場合に分けて説明している。しかし、１つのワーク実行指示部のみを用意し、準備したリソースの存否に関する条件判断の結果に応じて上記の実行指示をワークフロー実行サーバに対して行ってもよいことは勿論である。
【００２７】
図５は本実施形態に係るフローチャートであり、ワークフローで使用するリソースを予め取得する場合の処理例を示す。
ステップＳ６０１でワークフロー作成部５１１は、ワークフロー中の個別の処理を登録する。ステップＳ６０１の詳細についてはステップＳ６１１乃至Ｓ６１５として後述する。
【００２８】
ステップＳ６０２でワークフロー作成部５１１は、ワークフロー中の個別の処理についての登録が全て完了したか否かを判断する。その結果、登録が未完了であればステップＳ６０１に戻って登録を繰り返し、登録が完了した場合にはステップＳ６０３に進む。
ステップＳ６０３で第１のワークフロー実行指示部５１６又は第２のワークフロー実行指示部５１７は、ステップＳ６０１及びステップＳ６０２においてワークフロー作成部５１１により作成されたワークフローが即時実行型のワークフローであるか否かを判断する。その結果、作成済みのワークフローが即時実行型のワークフローでなければステップＳ６０５に進み、作成済みのワークフローが即時実行型であればステップＳ６０４に進む。
【００２９】
ステップＳ６０４で第１のワークフロー実行指示部５１６又は第２のワークフロー実行指示部５１７は、ワークフロー実行サーバ４０２乃至４０４に対し、前記作成済みのワークフローの実行を指示する。これによりワークフローが開始する。
ステップＳ６０５で第１のワークフロー実行指示部５１６又は第２のワークフロー実行指示部５１７は、前記作成済みのワークフローの実行指示があるまで待機する。そしてステップＳ６０４に進む。
【００３０】
以下に、ステップＳ６１１乃至Ｓ６１５に従って、ワークフロー中の個別の処理を登録する場合のフローチャートについて説明する。先ずステップＳ６１１ではワークフロー作成部５１１が、ユーザからワークフローで実行すべき内容の指示を受け付ける。
【００３１】
ステップＳ６１２で使用リソースリスト作成部５１２は、ユーザからワークフローで使用するリソースの指示を受け付け、使用リソースリストを作成する。ステップＳ６１３で使用リソース指示受付部５１３は、ユーザからワークフローで使用するリソースがワークフロー登録時のものであるか又はワークフロー実行時のものであるかの指示を受け付ける。
【００３２】
ステップＳ６１４でリソース準備部５１４は、ステップＳ６１３において使用リソース指示受付部５１３がユーザから受け付けた指示の内容を判断する。その結果、ワークフロー登録時のリソースを使用するように指示があったと判断された場合にはステップＳ６１５に進む。またワークフロー実行時のリソースを使用するように指示があったと判断された場合は処理を終了する。
ステップＳ６１５でリソース準備部５１４は、ステップＳ６１３でユーザから受け付けた指示の内容に従い、ステップＳ６１２で作成した使用リソースリスト中の該当するリソースを取得する。そして一連の処理が終了する。
【００３３】
図６は本実施形態に係るフローチャートであり、予め取得したリソースを使用してワークフローを実行する場合の処理例を示す。
ステップＳ７０１でワークフロー解釈部５１５は、前記ステップＳ６０１及びＳ６０２でワークフロー作成部５１１により作成したワークフローを解釈し、その実行を指示する。なおステップＳ６０１の詳細はステップＳ７１１乃至Ｓ７１４として後述する。
ステップＳ７０２でワークフロー解釈部５１５は、ワークフロー中の個別の処理についての実行が全て完了したか否かを判断する。その結果、実行が未完了であればステップＳ７０１に戻るが、全ての処理が完了した時には一連の動作が終了する。
【００３４】
以下、ステップＳ７１１乃至Ｓ７１４に従って、ワークフロー中の個別の処理を実行する場合のフローチャートについて説明する。
先ずステップＳ７１１でワークフロー管理サービス部５０１は、リソース準備部５１４が予め取得したリソースが存在するか否かを判断する。その結果、予め取得したリソースが存在すると判断された場合はステップＳ７１２に進む。また予め取得したリソースが存在しないと判断された場合はステップＳ７１４に進む。
【００３５】
ステップＳ７１２で第１のワークフロー実行指示部５１６はワークフロー実行サーバ４０２乃至４０４に対し、ワークフロー実行指示を行い、リソース準備部５１４が予め取得したリソースを使用してワークフローを処理させる。ワークフローの実行指示後、ステップＳ７１３に進む。
【００３６】
ステップＳ７１３でワークフロー管理サービス部５０１はワークフロー実行指示の結果を待つ。この指示は、ステップＳ７１２又はステップＳ７１４において、第１のワークフロー実行指示部５１６又は第２のワークフロー実行指示部５１７によるワークフローの実行指示である。ワークフロー管理サービス部５０１は、ワークフロー実行サーバ４０２乃至４０４からワークフローの実行結果を受信した後、処理を終了する。
【００３７】
ステップＳ７１４で第２のワークフロー実行指示部５１７は、ワークフロー実行サーバ４０２乃至４０４に対し、ワークフロー実行時点におけるリソースを使用してワークフローを実行するように指示する。その後、ステップＳ７１３に進む。
本実施形態によれば、ワークフロー登録時に予め必要なリソースを取得してワークフロー実行時に当該リソースを利用することができる。そのためワークフローの実行結果がワークフローを登録したユーザの意図と相違しないように防止できる。
【００３８】
＜第２の実施形態＞
以下、本発明の第２の実施形態を説明する。
図７は本発明の第２の実施形態に係る、ワークフロー管理サービス部のモジュール構成図である。ワークフロー管理サービス部５０１は、ワークフロー作成部５１１、使用リソースリスト作成部５１２、使用リソース指示受付部５１３、ワークフロー解釈部５１５を備える。さらには、第２の使用リソース指示受付部５２１、第２のリソース準備部５２２、第３のワークフロー実行指示部５２３、リソース取得可否判断部５２４、第４のワークフロー実行指示部５２５、第５のワークフロー実行指示部５２６が設けられている。
【００３９】
前述したようにワークフロー作成部５１１で作成したワークフローを、ワークフロー解釈部５１５が解釈する。第２の使用リソース指示受付部５２１は、ワークフロー登録時又はワークフロー実行時のうち、いずれの時点のリソースを優先して使用するかを示す指示を受け付ける。第２のリソース準備部５２２は、常にワークフロー登録時点のリソースをワークフロー実行時に取得することができるように準備する。
【００４０】
第３のワークフロー実行指示部５２３は、ワークフロー実行時において、ワークフロー実行サーバ４０２乃至４０４に対して指示する。つまり、第２の使用リソース指示受付部５２１で受け付けた指示がワークフロー登録時点のリソースを優先するものであった場合に、第２のリソース準備部５２２が準備したリソースを使用してワークフローを実行するようにワークフロー実行サーバが指示される。リソース取得可否判断部５２４は、ワークフロー実行時において、第２の使用リソース指示受付部５２１で受け付けた指示がワークフロー実行時点のリソースを優先するものであった場合に、ワークフロー実行時に該リソースが取得可能であるか否かを判断する。
【００４１】
第４のワークフロー実行指示部５２５は、ワークフロー実行時において、ワークフロー実行サーバ４０２乃至４０４に対して指示する。つまりリソース取得可否判断部５２４による判断の結果、前記ワークフロー実行時点のリソースが取得不可能となった場合に、第２のリソース準備部５２２が準備したリソースを使用してワークフローを実行するようにワークフロー実行サーバが指示される。
第５のワークフロー実行指示部５２６は、ワークフロー実行時において、ワークフロー実行サーバ４０２乃至４０４に対して指示する。つまりリソース取得可否判断部５２４による判断の結果、前記ワークフロー実行時点のリソースが取得可能となった場合に、ワークフロー実行時のリソースを使用してワークフローを実行するようにワークフロー実行サーバが指示される。
【００４２】
以上のように本実施形態では、第２のリソース準備部５２２によるリソース準備状況及びリソース取得可否判断部５２４の判断結果に従い、第３乃至第５のワークフロー実行指示部がワークフロー実行サーバに対してワークフローの実行を指示する。
【００４３】
図８は本発明の第２の実施形態に係るフローチャートであり、ワークフローで使用するリソースを予め取得しておき、ワークフロー実行時にリソースが取得できなければ予め取得したリソースを使用する場合の処理例を示す。
ステップＳ８０１乃至Ｓ８０４は、ワークフロー中の個別の処理を登録する場合のフローチャートである。なおステップＳ８０１乃至Ｓ８０４の処理は、前述した図５のステップＳ６０１内で実行されるものとする。
【００４４】
ステップＳ８０１でワークフロー作成部５１１は、ユーザからワークフローで実行すべき内容の指示を受け付ける。ステップＳ８０２で使用リソースリスト作成部５１２は、ユーザからワークフローで使用するリソースの指示を受け付け、使用リソースリストを作成する。
【００４５】
ステップＳ８０３で第２の使用リソース指示受付部５２１は、ユーザからの、リソースの優先度に関する指示を受け付ける。つまり、第２の使用リソース指示受付部５２１は、ワークフロー登録時のリソースとワークフロー実行時のリソースのうち、どちらを優先すべきかについての指示を受け付ける。ステップＳ８０４で第２のリソース準備部５２２は、ステップＳ８０２で作成した使用リソースリスト中の該当するリソースを取得し、一連の処理を終了する。
【００４６】
図９は本発明の第２の実施形態に係るフローチャートであり、予め取得したリソースとユーザから受け付けた優先度情報を使用してワークフローを実行する場合の処理例を示す。
ステップＳ９０１乃至Ｓ９０５は、ワークフロー中の個別の処理を実行する場合のフローチャートである。なおステップＳ９０１乃至Ｓ９０５の処理は、前述した図６のステップＳ７０１内で実行されるものとする。
【００４７】
ステップＳ９０１でワークフロー管理サービス部５０１は、第２の使用リソース指示受付部５２１がユーザから受け付けた指示を調べて、これが取得済みリソースを優先するものであったか、又は実行時のリソースを優先するものであったかを判断する。その結果、取得済みリソースを優先すると判断された場合にはステップＳ９０２に進む。また実行時のリソースを優先すると判断された場合にはステップＳ９０４に進む。
【００４８】
ステップＳ９０２で第３のワークフロー実行指示部５２３は、第２のリソース準備部５２２が予め取得しておいたリソースを使用してワークフローを処理するように、ワークフロー実行サーバ４０２乃至４０４に対し、ワークフローの実行を指示する。そしてワークフローの実行指示後、ステップＳ９０３に進む。
【００４９】
ステップＳ９０３でワークフロー管理サービス部５０１は、ステップＳ９０２又はステップＳ９０５での実行結果を待つ。ワークフロー管理サービス部５０１がワークフロー実行サーバ４０２乃至４０４からワークフローの実行結果を受信した後、処理を終了する。
ステップＳ９０４でリソース取得可否判断部５２４は、ワークフローで使用するリソースの取得が可能か否かを判断する。その結果、該リソースが取得不可と判断された場合にステップＳ９０２に進む。また該リソースが取得可能であると判断されたと場合にステップＳ９０５に進む。
【００５０】
ステップＳ９０５で第４のワークフロー実行指示部５２５は、ワークフロー実行サーバ４０２乃至４０４に対し、ワークフロー実行時点のリソースを使用してワークフローを実行するように指示する。その後、ステップＳ９０３に進む。
本実施形態によれば、必要なリソースが何らかの事情によりワークフロー実行時に取得できない場合であっても、予め取得したリソースを使用してワークフローの実行を継続することができる。
【００５１】
＜第３の実施形態＞
次に本発明に係る第３の実施形態を説明する。
図１０は本発明の第３の実施形態に係る、ワークフロー管理サービス部のモジュール構成図である。ワークフロー管理サービス部５０１は、ワークフロー作成部５１１、使用リソースリスト作成部５１２、使用リソース指示受付部５１３、リソース準備部５１４、ワークフロー解釈部５１５を備える。さらには、リソースの特徴量取得指示受付部５３１、登録時特徴量取得部５３２、実行時特徴量取得部５３３、特徴量比較部５３４が設けられている。そして３つの実行指示部、すなわち第６のワークフロー実行指示部５３５、第７のワークフロー実行指示部５３６、第８のワークフロー実行指示部５３７が設けられている。
【００５２】
ワークフロー作成部５１１でワークフローを作成し、またリソースの特徴量取得指示受付部５３１は、作成されたリソースリスト中の個々のリソースについて、ワークフロー登録時の特徴量を取得するかの指示を受け付ける。なおリソースの特徴量には、例えばハッシュ値等を用いることができる。
【００５３】
登録時特徴量取得部５３２は、リソースの特徴量取得指示受付部５３１が特徴量を取得するように指示を受け付けた場合に、ワークフロー登録時点におけるリソースの特徴量（登録時特徴量）を取得する。実行時特徴量取得部５３３は、ワークフロー実行時において、登録時特徴量取得部５３２で取得した特徴量が存在する場合に、ワークフロー実行時点におけるリソースを得てその特徴量（実行時特徴量）を取得する。
【００５４】
特徴量比較部５３４は、登録時特徴量取得部５３２で取得した登録時特徴量と、実行時特徴量取得部５３３で取得した実行時特徴量を比較する。この比較結果に従い、第６乃至第８のワークフロー実行指示部５３５，５３６，５３７がワークフロー実行サーバ４０２から４０４に対してワークフローの実行を指示する。第６のワークフロー実行指示部５３５は、登録時特徴量と実行時特徴量が一致した場合に、ワークフロー実行時点のリソースを使用してワークフローを実行するようにワークフロー実行サーバ４０２から４０４に対して指示する。
【００５５】
また第７のワークフロー実行指示部５３６は登録時特徴量と実行時特徴量が一致せず、かつリソース準備部５１４によって準備したリソースが存在する場合、当該リソースを使用してワークフローを実行すべくワークフロー実行サーバ４０２〜４０４に指示する。第８のワークフロー実行指示部５３７は、予め定められた条件が満たされた場合にワークフロー実行時のリソースを使用してワークフローを実行すべくワークフロー実行サーバ４０２乃至４０４に指示する。この条件とは、登録時特徴量と実行時特徴量が一致せず、かつリソース準備部５１４によって準備したリソースが存在しない場合である。
【００５６】
図１１は本発明の第３の実施形態に係るフローチャートであり、ワークフローで使用するリソースの特徴量を予め取得する場合の処理例を示す。
ステップＳ１００１乃至Ｓ１００６は、ワークフロー中の個別の処理を登録する場合のフローチャートである。なおステップＳ１００１乃至Ｓ１００６の処理は、前述した図５のステップＳ６０１内で実行されるものとする。
【００５７】
ステップＳ１００１でワークフロー作成部５１１は、ユーザからワークフローで実行すべき内容の指示を受け付ける。
ステップＳ１００２で使用リソースリスト作成部５１２は、ユーザからワークフローで使用するリソースの指示を受け付け、使用リソースリストを作成する。
【００５８】
ステップＳ１００３で使用リソース指示受付部５１３は、ワークフローで使用するリソースがワークフロー登録時のものであるか、又はワークフロー実行時のものであるかの指示をユーザから受け付ける。ワークフロー登録時におけるリソースを使用するように指示があった場合にはステップＳ１００４に進む。またワークフロー実行時におけるリソースを使用するように指示があった場合はステップＳ１００５に進む。
ステップＳ１００４でリソース準備部５１４は、ステップＳ１００３でユーザから受け付けた指示の内容に従い、必要なリソースを取得して準備する。つまりリソース準備部５１４は、ステップＳ１００２で作成した使用リソースリスト中の該当するリソースを取得し、ステップＳ１００５に進む。
【００５９】
ステップＳ１００５でリソースの特徴量取得指示受付部５３１は、リソースの特徴量（ハッシュ値等）を取得するか否かの指示をユーザから受け付ける。リソースの特徴量取得指示受付部５３１が特徴量を取得するように指示された場合にはステップＳ１００６に進むが、特徴量を取得しないように指示された場合には処理を終了する。
ステップＳ１００６で登録時特徴量取得部５３２は、ステップＳ１００５でユーザから受け付けた指示の内容に従い、ステップＳ１００２で作成した使用リソースリスト中の該当するリソースについてその特徴量を取得する。その後、一連の処理が終了する。
【００６０】
図１２は本発明の第３の実施形態に係るフローチャートであり、予め取得したリソースとリソースの特徴量情報を使用してワークフローを実行する場合の処理例を示す。
ステップＳ１１０１乃至Ｓ１１０８は、ワークフロー中の個別の処理を実行する場合のフローチャートである。なおステップＳ１１０１乃至Ｓ１１０８の処理は、前述した図６のステップＳ７０１内で実行されるものとする。
【００６１】
ステップＳ１１０１でワークフロー管理サービス部５０１は、登録時特徴量取得部５３２で取得した登録時特徴量（例えば、ハッシュ値）が存在するか否かを判断する。その結果、登録時特徴量が存在した場合にはステップＳ１１０２に進むが、登録時特徴量が存在しなかった場合にはステップＳ１１０６に進む。
ステップＳ１１０２で実行時特徴量取得部５３３は実行時特徴量を取得し、特徴量比較部５３４は、登録時特徴量と実行時特徴量を比較する。その結果、両者が一致した場合にはステップＳ１１０４に進むが、両者が不一致の場合にはステップＳ１１０６に進む。
【００６２】
ステップＳ１１０４で第６のワークフロー実行指示部５３５は、ワークフロー実行サーバ４０２乃至４０４に対し、ワークフロー実行時点におけるリソースを使用してワークフローを実行するように指示する。その後、ステップＳ１１０５に進む。
ステップＳ１１０５でワークフロー管理サービス部５０１は、ステップＳ１１０４又はステップＳ１１０７又はステップＳ１１０８での、ワークフローの実行指示の結果を待つ。ワークフロー管理サービス部５０１がワークフロー実行サーバ４０２乃至４０４からワークフローの実行結果を受信した後、一連の処理が終了する。
【００６３】
ステップＳ１１０６でワークフロー管理サービス部５０１は、リソース準備部５１４が予め取得したリソースの存否を判断する。その結果、予め取得したリソースが存在すると判断された場合にはステップＳ１１０７に進む。また予め取得したリソースが存在しないと判断された場合にはステップＳ１１０８に進む。
ステップＳ１１０７で第７のワークフロー実行指示部５３６はワークフロー実行サーバ４０２乃至４０４に対してワークフローの実行指示を行い、リソース準備部５１４が予め取得しておいたリソースを使用してワークフローを処理させる。ワークフローの実行指示後、ステップＳ１１０５に進む。
【００６４】
ステップＳ１１０８で第８のワークフロー実行指示部５３７は、ワークフロー実行サーバ４０２乃至４０４に対し、ワークフロー実行時点におけるリソースを使用してワークフローを実行するように指示する。その後、ステップＳ１１０５に進む。
本実施形態によれば、ワークフロー登録時に予め必要なリソースを取得していた場合に、ワークフロー実行時にリソースの特徴量に変化がなければ、予め取得していたリソースをワークフロー実行サービス部に送信する必要がなくなる。またワークフロー実行時にリソースの特徴量が変化していた場合には、予め取得しておいたリソースを使用してワークフローを処理することができる。
【００６５】
＜第４の実施形態＞
次に、本発明の第４の実施形態を説明する。
図１３は本発明の第４の実施形態に係る、ワークフロー管理サービス部のモジュール構成図である。ワークフロー管理サービス部５０１は、ワークフロー作成部５１１、使用リソースリスト作成部５１２、使用リソース指示受付部５１３、リソース準備部５１４、ワークフロー解釈部５１５を備える。さらに、第１のワークフロー実行指示部５１６、第２のワークフロー実行指示部５１７、リソースの特徴量取得指示受付部５３１、登録時特徴量取得部５３２、実行時特徴量取得部５３３、特徴量比較部５３４が設けられている。そして、これらの構成要素に加えて、リソース変更時挙動受付部５４１と、第９のワークフロー実行指示部（リソース変更時のワークフロー実行指示部）５４２が設けられている。
【００６６】
ワークフロー作成部５１１が作成したワークフローを、ワークフロー解釈部５１５が解釈する。そして特徴量比較部５３４での比較処理の結果、リソースの特徴量が異なっていたと判断された場合には、リソース変更時挙動受付部５４１で予め受け付けた挙動に従い、リソース変更時のワークフロー実行指示部５４２が処理を実行する。つまり、リソース変更時挙動受付部５４１は、登録時特徴量取得部５３２がリソースの登録時特徴量を取得する際、ワークフロー実行時に特徴量が異なってしまっていることを想定して、その場合の挙動について指示を受け付ける。そして、ワークフロー実行指示部５４２は、特徴量比較部５３４による比較の結果、登録時特徴量と実行時特徴量が一致しなかった場合に、リソース変更時挙動受付部５４１で受け付けた処理を行うようにワークフロー実行サーバ４０２乃至４０４に対して指示する。
【００６７】
図１４は本発明の第４の実施形態に係るフローチャートであり、ワークフロー実行時にリソースの特徴量が登録時とは異なっていたときの挙動を、予めユーザから受け付ける場合の処理例を示す。
ステップＳ１２０１乃至Ｓ１２０７は、ワークフロー中の個別の処理を登録する場合のフローチャートである。ステップＳ１２０１乃至Ｓ１２０７の処理は、前述した図５のステップＳ６０１内で実行されるものとする。
【００６８】
ステップＳ１２０１でワークフロー作成部５１１は、ユーザからワークフローで実行すべき内容の指示を受け付ける。
ステップＳ１２０２で使用リソースリスト作成部５１２は、ユーザからワークフローで使用するリソースの指示を受け付け、使用リソースリストを作成する。
【００６９】
ステップＳ１２０３で使用リソース指示受付部５１３は、ワークフローで使用するリソースがワークフロー登録時のものであるか又はワークフロー実行時のものであるかの指示をユーザから受け付ける。そしてワークフロー登録時のリソースを使用するように指示された場合にはステップＳ１２０４に進む。またワークフロー実行時のリソースを使用するように指示された場合にはステップＳ１２０５に進む。
ステップＳ１２０４でリソース準備部５１４は、ステップＳ１２０３でユーザから受け付けた指示内容に従い、ステップＳ１２０２で作成済みの使用リソースリスト中の該当するリソースを取得する。その後、ステップＳ１２０５に進む。
【００７０】
ステップＳ１２０５でリソースの特徴量取得指示受付部５３１は、ユーザからリソースの特徴量を取得するか否かの指示を受け付ける。リソースの特徴量を取得するように指示された場合にはステップＳ１２０６に進む。またリソースの特徴量を取得しないように指示された場合には処理を終了する。
ステップＳ１２０６で登録時特徴量取得部５３２は、ステップＳ１２０５でユーザから受け付けた指示内容に従い、ステップＳ１２０２で作成済みの使用リソースリスト中の該当するリソースについてそれらの特徴量を取得し、ステップＳ１２０７に進む。
ステップＳ１２０７でリソース変更時挙動受付部５４１は、ステップＳ１２０６で取得した特徴量が、ワークフロー実行時の実行時特徴量と一致しなかった場合の挙動をユーザから受け付け、一連の処理を終了する。
【００７１】
図１５は本発明の第４の実施形態に係るフローチャートであり、ワークフローに係るリソースの実行時特徴量が登録時特徴量と異なっていたときに、予めユーザから受け付けた、リソース変更時における挙動の指示に従う場合の処理例を示す。
ステップＳ１３０１乃至Ｓ１３０８は、ワークフロー中の個別の処理を実行する場合のフローチャートである。なおステップＳ１３０１乃至Ｓ１３０８の処理は、前述した図６のステップＳ７０１内で実行されるものとする。
【００７２】
ステップＳ１３０１でワークフロー管理サービス部５０１は、登録時特徴量取得部５３２で取得した登録時特徴量が存在するか否かを判断する。その結果、登録時特徴量が存在した場合にはステップＳ１３０２に進む。また登録時特徴量が存在しなかった場合にはステップＳ１３０６に進む。
ステップＳ１３０２で実行時特徴量取得部５３３は、リソースの実行時特徴量を取得し、特徴量比較部５３４は、登録時特徴量と実行時特徴量を比較する。比較の結果、両者が一致した場合にはステップＳ１３０４に進む。また両者が不一致の場合にはステップＳ１３０６に進む。
【００７３】
ステップＳ１３０４で第１のワークフロー実行指示部５１６は、ワークフロー実行サーバ４０２乃至４０４に対し、ワークフロー実行時点のリソースを使用してワークフローを実行するように指示する。その後、ステップＳ１３０５に進む。
ステップＳ１３０５でワークフロー管理サービス部５０１は、ステップＳ１３０４又はステップＳ１３０７又はステップＳ１３０８での、ワークフローの実行指示の結果を待つ。ワークフロー管理サービス部５０１がワークフロー実行サーバ４０２乃至４０４からワークフローの実行結果を受信した後、一連の処理を終了する。
【００７４】
ステップＳ１３０６でワークフロー管理サービス部５０１は、リソース準備部５１４によって予め取得したリソースが存在するか否かを判断する。その結果、予め取得したリソースが存在すると判断された場合にはステップＳ１３０７に進む。また予め取得したリソースが存在しないと判断された場合にはステップＳ１３０８に進む。
ステップＳ１３０７で第２のワークフロー実行指示部５１７は、リソース準備部５１４が予め取得したリソースを使用してワークフローを処理するように、ワークフロー実行サーバ４０２乃至４０４に対し、ワークフローの実行を指示する。ワークフローの実行指示後、ステップＳ１３０５に進む。
【００７５】
ステップＳ１３０８でワークフロー実行指示部５４２は、ステップＳ１２０７でユーザから受け付けたリソース変更時の挙動に従って処理を実行する。その後、一連の処理が終了する。
本実施形態によれば、ワークフロー登録時において予め必要なリソースの特徴量を取得していた場合には、ワークフロー実行時に特徴量の変化があったと判断されたときに、ユーザが予め指定した処理に従ってワークフローを実行することができる。
【００７６】
＜第５の実施形態＞
以下に、本発明の第５の実施形態を説明する。
図１６は本発明の第５の実施形態に係る、ワークフロー管理サービス部のモジュール構成図である。ワークフロー管理サービス部５０１は、ワークフロー作成部５１１、使用リソースリスト作成部５１２、使用リソース指示受付部５１３、リソース準備部５１４、ワークフロー解釈部５１５を備える。さらには、第１のワークフロー実行指示部５１６、第２のワークフロー実行指示部５１７、リソースの特徴量取得指示受付部５３１、登録時特徴量取得部５３２、実行時特徴量取得部５３３、特徴量比較部５３４、リソース変更時挙動受付部５４１が設けられている。そしてこれらの構成要素に加えて、ワークフロー作成者判断部５５１、リソース編集者判断部５５２、ユーザ比較部５５３、第１０のワークフロー実行指示部５５４が設けられている。なお、ワークフロー実行指示部５５４はリソース変更時における第２のワークフロー実行指示部に相当する。
【００７７】
ワークフロー作成部５１１にてワークフローを作成したユーザ（ワークフロー作成者）をワークフロー作成者判断部５５１が判断する。リソース編集者判断部５５２は、ワークフロー実行時点でのリソース編集者が誰であるかを判断する。そしてユーザ比較部５５３はワークフロー作成者とリソースの最終編集者を比較する。比較の結果、ワークフロー作成者とリソースの最終編集者が一致しなかった場合には、リソース変更時挙動受付部５４１で予め受け付けた挙動に従い、リソース変更時のワークフロー実行指示部５５４がワークフロー実行サーバ４０２乃至４０４に対して指示する。つまりこれらのワークフロー実行サーバは、ワークフロー実行時のリソースを使用してワークフローを実行するように指示される。
【００７８】
図１７は本発明の第５の実施形態に係るフローチャートであり、リソースの最終更新者がワークフロー作成者と一致しており同一と判断された場合に、リソースが変更されていてもワークフローを続けるべきであるとの指示をユーザから受け付ける処理例を示す。
ステップＳ１２１１及びＳ１２１２は、リソースが変更されていた場合の挙動についての指示をユーザから受け付ける場合のフローチャートである。なおステップＳ１２１１及びＳ１２１２の処理は、前述した図１４のステップＳ１２０７内で実行されるものとする。
【００７９】
ステップＳ１２１１でリソース変更時挙動受付部５４１は、実行時特徴量が登録時特徴量と異なる場合に、リソースの最終更新者がワークフロー登録者と一致すれば処理を続行するか否かの指示をユーザから受け付ける。ユーザから受け付けた指示が、ワークフローを続行すべきとされる場合にはステップＳ１２１２に進む。またユーザの指示がリソースの最終更新者の如何に関わらず、実行時特徴量が登録時特徴量と異なればワークフローを中止すべきであるとされる場合にはワークフローを中止し、一連の処理を終了する。
ステップＳ１２１２でワークフロー作成者判断部５５１は、ワークフロー作成部５１１に対してワークフロー作成指示を行っているユーザを判断する。これにより特定されたユーザを示すデータがメモリに記憶される。
【００８０】
図１８は本発明の第５の実施形態に係るフローチャートであり、リソースの最終更新者がワークフロー作成者と一致していればリソースが変更されていてもワークフローを続行させる場合の処理例を示す。ステップＳ１３１１乃至Ｓ１３１６の処理は、前述した図１５のステップＳ１３０８内で実行されるものとする。
ステップＳ１３１１でワークフロー管理サービス部５０１は、前記ステップＳ１２１１でユーザから受け付けた指示について判断する。すなわち受け付けた指示が、リソースの最終更新者がワークフロー登録者と一致すればリソースが変更されていても処理を続行するという指示ものであったか否かを、ワークフロー管理サービス部５０１で判断する。その結果、リソースの最終更新者がワークフロー登録者と一致すれば処理を続行するという指示を受け付けた場合にはステップＳ１３１２に進む。またリソースの最終更新者の如何に関わらず、実行時特徴量が登録時特徴量と異なればワークフローを中止するという指示を受け付けた場合にはステップＳ１３１６に進む。
【００８１】
ステップＳ１３１２でリソース編集者判断部５５２は、ワークフロー実行時のリソースの最終更新者を取得し、ステップＳ１３１３に進む。
ステップＳ１３１３でユーザ比較部５５３は、前記ステップＳ１２１２で取得したワークフロー作成者と、ステップＳ１３１２で取得したリソース最終更新者を比較する。比較の結果、両者が一致した場合にはステップＳ１３１４に進む。また両者が不一致の場合にはステップＳ１３１６に進む。
【００８２】
ステップＳ１３１４でワークフロー実行指示部５５４は、ワークフロー実行サーバ４０２乃至４０４に対し、ワークフロー実行時点のリソースを使用してワークフローを実行するように指示する。その後、ステップＳ１３１５に進む。
ステップＳ１３１５でワークフロー管理サービス部５０１は、ステップＳ１３１４でのワークフロー実行指示の結果を待つ。そしてワークフロー管理サービス部５０１がワークフロー実行サーバ４０２乃至４０４からワークフローの実行結果を受信した後、一連の処理を終了する。
【００８３】
ステップＳ１３１６でワークフロー管理サービス部５０１は、ワークフロー実行時のリソースの最終更新者がワークフロー作成者と異なるため、ワークフローを中断した後、処理を終了する。
本実施形態によれば、ワークフロー実行時にリソースが変更されていても、変更を行ったユーザがワークフロー作成者と一致する場合には、ワークフロー実行時のリソースを利用してワークフローを処理することができる。
【００８４】
＜第６の実施形態＞
以下に、本発明の第６の実施形態を説明する。
図１９は本発明の第６の実施形態に係る、ワークフロー管理サービス部のモジュール構成図である。ワークフロー管理サービス部５０１は、ワークフロー作成部５１１、使用リソースリスト作成部５１２、使用リソース指示受付部５１３、リソース準備部５１４、ワークフロー解釈部５１５を備える。そして第１のワークフロー実行指示部５１６、第２のワークフロー実行指示部５１７、さらには、ワークフロー登録時リソース取得部５６１、ワークフロー登録時リソース記憶部５６２が設けられている。
【００８５】
リソース準備部５１４は、ワークフロー登録時リソース取得部５６１によりワークフロー登録時のリソースを取得し、これをワークフロー登録時リソース記憶部５６２によりリソースを記憶する。つまり、ワークフロー登録時リソース取得部５６１は、リソース準備部５１４によるリソース準備の際に、ワークフロー登録時点のリソースを予め取得する。そしてワークフロー登録時リソース記憶部５６２は、ワークフロー登録時リソース取得部５６１が取得したリソースを記憶する。
【００８６】
図２０は本発明の第６の実施形態に係るフローチャートであり、ワークフロー登録時のリソースを記憶する場合の処理例を示す。
ステップＳ１４１１乃至Ｓ１４１３は、リソース準備部５１４の指示に従い、ワークフロー登録時のリソースを記憶する場合のフローチャートである。なおステップＳ１４１１乃至Ｓ１４１３の処理は、前述した図５のステップＳ６１５内で実行されるものとする。
【００８７】
ステップＳ１４１１でリソース準備部５１４は、ワークフローで使用されるリソースを特定する。
ステップＳ１４１２でワークフロー登録時リソース取得部５６１は、ステップＳ１４１１で特定したリソースが、ワークフロー実行サーバ４０２乃至４０４のいずれのサーバ又はそのサービス部で使用されるものかを特定する。
【００８８】
ステップＳ１４１３でワークフロー登録時リソース取得部５６１は、ステップＳ１４１２で特定したサーバ又はサービス部に対して、ステップＳ１４１１で特定されたリソースの要求を行う。これに従ってワークフロー登録時リソース記憶部５６２は、得られたリソースを記憶する。リソースの記憶後に処理が終了する。
本実施形態によれば、ワークフロー実行時に必要なリソースを、ワークフロー登録時に予め取得しておき、ワークフロー管理サービス部内でリソース記憶部に記憶させることができる。
【００８９】
＜第７の実施形態＞
以下に、本発明の第７の実施形態を説明する。
図２１は本発明の第７の実施形態に係る、ワークフロー処理システムのモジュール構成図である。ワークフロー処理システムはワークフロー管理サービス部５０１と、複数のワークフロー実行サービス部５０２から構成される。ワークフロー管理サービス部５０１は、ワークフロー作成部５１１、使用リソースリスト作成部５１２、使用リソース指示受付部５１３、リソース準備部５１４、ワークフロー解釈部５１５を備える。さらには第１のワークフロー実行指示部５１６、第２のワークフロー実行指示部５１７、ワークフロー登録時リソース取得部５６１、ワークフロー登録時リソース記憶部５６２が設けられている。これらの構成要素に加えて、サービス機能判断部５７１、ワークフロー登録時リソース記憶依頼部５７２が設けられている。
【００９０】
ワークフロー実行サービス部５０２はワークフロー実行部５１８を備え、第２のワークフロー登録時リソース記憶部５７３（第２の登録時リソース記憶部）を備える場合がある。
ワークフロー管理サービス部５０１は、サービス機能判断部５７１により、ワークフロー実行サービス部５０２が第２のワークフロー登録時リソース記憶部５７３を備えているか否かを判断する。そしてワークフロー実行サービス部５０２がワークフロー登録時リソース記憶部５７３を備える場合に、ワークフロー登録時リソース記憶依頼部５７２は、ワークフロー実行サービス部５０２に対して、ワークフロー登録時点のリソースを記憶するように依頼する。
【００９１】
図２２は本発明の第７の実施形態に係るフローチャートであり、ワークフロー実行サービス部がリソース記憶部を有する場合に、ワークフロー実行サービス部に対してリソースを記憶するように依頼する場合の処理例を示す。なおステップＳ１５１１乃至Ｓ１５１５の処理は、前述した図５のステップＳ６１５内で実行されるものとする。
【００９２】
ステップＳ１５１１でリソース準備部５１４は、ワークフローで使用されるリソースを特定する。
ステップＳ１５１２でワークフロー登録時リソース取得部５６１は、ステップＳ１５１１で特定されたリソースが、ワークフロー実行サーバ４０２乃至４０４のうち、いずれのサービスで使用されるものであるかを特定する。
【００９３】
ステップＳ１５１３でサービス機能判断部５７１は、ステップＳ１５１２で特定したサービス部に対して、バージョン管理機能を有するか否かを判断する。その結果、ステップＳ１５１２で特定したサービス部がバージョン管理機能を有すると判断された場合にはステップＳ１５１４に進む。また当該サービス部がバージョン管理機能を有さないと判断された場合にはステップＳ１５１５に進む。
【００９４】
ステップＳ１５１４でワークフロー登録時リソース記憶依頼部５７２は、ステップＳ１５１２で特定したサービス部に対して、ステップＳ１５１１で特定されたリソースのワークフロー登録時の状態を記憶するように依頼する。その後、一連の処理が終了する。
ステップＳ１５１５でワークフロー登録時リソース取得部５６１は、ステップＳ１５１２で特定したサービス部に対して、ステップＳ１５１１で特定されたリソースの要求を行う。これを受けてワークフロー登録時リソース記憶部５６２は、得られたリソースを記憶する。リソースの記憶後、一連の処理が終了する。
【００９５】
本実施形態によれば、ワークフロー実行サービス部がリソース記憶部を備える場合には、ワークフロー実行時に必要なリソースを、ワークフロー実行サービス部内に記憶させることができる。
【符号の説明】
【００９６】
５００  ワークフロー処理システム
５０１  ワークフロー管理サービス部
５０２  ワークフロー実行サービス部
５１１  ワークフロー作成部
５１２  使用リソースリスト作成部
５１３  使用リソース指示受付部
５１４  リソース準備部
５１５  ワークフロー解釈部
５１６  第１のワークフロー実行指示部
５１７  第２のワークフロー実行指示部
【図１】
2010211642.tif 000003
【図２】
2010211642.tif 000004
【図３】
2010211642.tif 000005
【図４】
2010211642.tif 000006
【図５】
2010211642.tif 000007
【図６】
2010211642.tif 000008
【図７】
2010211642.tif 000009
【図８】
2010211642.tif 000010
【図９】
2010211642.tif 000011
【図１０】
2010211642.tif 000012
【図１１】
2010211642.tif 000013
【図１２】
2010211642.tif 000014
【図１３】
2010211642.tif 000015
【図１４】
2010211642.tif 000016
【図１５】
2010211642.tif 000017
【図１６】
2010211642.tif 000018
【図１７】
2010211642.tif 000019
【図１８】
2010211642.tif 000020
【図１９】
2010211642.tif 000021
【図２０】
2010211642.tif 000022
【図２１】
2010211642.tif 000023
【図２２】
2010211642.tif 000024