(57)【要約】【課題】  ワークフロー管理装置およびそのプログラムを格納した記憶媒体に関し、管理する作業量が増加しても、ワークフローの管理が速く、効率よく行なえるワークフロー管理システムを提供することを目的とする。【解決手段】  作業手順の定義を格納する作業手順定義格納装置と、作業情報を格納する作業情報格納装置と、ユーザの入力した作業の処理についての情報に基づいて作業手順定義格納装置と作業情報格納装置を参照して作業情報を作成し、他のユーザに作業情報を廻送するワークフロー支援手段とを備え、ユーザの作業の処理を支援するワークフロー管理装置において、作業情報を生成する複数のワークフロー支援手段と、各ワークフロー支援手段に備えられた該作業手順定義格納装置と該作業情報格納装置と、各ワークフロー支援手段の負荷ができるだけ均等になるようにワークフロー支援手段を選択する構成をもつ。【選択図】      図１
2006202334.tif 000002
【特許請求の範囲】
【請求項１】
予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援するワークフロー管理システムにおいて、
メインサーバと、
前記ユーザが属するホームサーバと、
で構成され、
前記メインサーバは、
前記作業手順の定義を格納する作業手順定義格納手段と、
前記一連の作業の遂行に必要な作業情報を格納する第一作業情報格納手段と、
前記ユーザが属するホームサーバを示すユーザ情報を管理するユーザ情報管理手段と、
前記作業手順定義格納手段に格納されている作業手順と、前記第一作業情報格納手段に格納されている作業情報と、前記ホームサーバより送られてくる該ホームサーバに属するユーザにより行われた作業についての処理情報と、に基づいて該作業手順における次の作業についての作業情報を生成し、前記ユーザ情報管理手段に格納されているユーザ情報に基づいて該次作業を担当するユーザの属するホームサーバに該次作業についての作業情報を廻送するワークフロー支援手段と、
を有し、
前記ホームサーバは、
前記メインサーバより廻送されてきた作業情報を格納する第二作業情報格納手段と、
該ホームサーバに属するユーザからの要求に応じて、前記一連の作業における最初の作業手順の作業の遂行に必要な作業情報を生成して該ユーザに提供する新規作業情報提供手段と、
前記第二作業情報格納手段に格納されている前記ユーザが担当である作業についての作業情報を該ユーザ別に提供する作業情報提供手段と、
前記ユーザにより行われた前記作業についての処理情報を前記メインサーバに送出する作業処理情報送出手段と、
前記メインサーバの有する作業手順定義格納手段に格納されているものと同様の作業手順の定義を格納する副作業手順定義格納手段と、
前記副作業手順定義格納手段に格納されている作業手順の定義より、該ホームサーバに属するユーザにより行われた作業の次の作業手順の作業を担当するユーザを検出し、該作業を行なったユーザと該検出された次作業を担当するユーザとが一致するときには、該次作業についての作業情報の廻送の中止を前記メインサーバに指示する次作業検出手段と、
を有し、
前記メインサーバの有するワークフロー支援手段は、前記ホームサーバからの前記次作業についての作業情報の廻送の中止の指示に従い、該作業情報の廻送を中止する、
ことを特徴とするワークフロー管理システム。
【請求項２】
コンピュータで実行させることにより、予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援する、メインサーバと前記ユーザが属するホームサーバとで構成されるワークフロー管理システムに用いられる該ホームサーバとして該コンピュータを機能させるためのホームサーバプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、
前記メインサーバより廻送されてくる前記作業の遂行に必要な作業情報を格納する作業情報格納手段、
該ホームサーバに属するユーザからの要求に応じて、前記一連の作業における最初の作業手順の作業の遂行に必要な作業情報を生成して該ユーザに提供する新規作業情報提供手段、
前記ユーザが担当である作業についての作業情報を該ユーザ別に提供する作業情報提供手段、
前記ユーザにより行われた前記作業についての処理情報を前記メインサーバに送出する作業処理情報送出手段、
前記メインサーバに格納されているものと同様の作業手順の定義を格納する副作業手順定義格納手段、及び
前記副作業手順定義格納機能から読み出した作業手順の定義より、該ホームサーバに属するユーザにより行われた作業の次の作業手順の作業を担当するユーザを検出し、該作業を行なったユーザと該検出された次作業を担当するユーザとが一致するときには、該次作業についての作業情報の廻送の中止を前記メインサーバに指示する次作業検出手段、
としてコンピュータを機能させるためのホームサーバプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予め定義された作業手順（ワークフロー）に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援する装置及びシステム、並びに、コンピュータに実行させることにより該作業管理及び該作業遂行支援を該コンピュータに行なわせるプログラムを記憶する記憶媒体に関する。
【背景技術】
【０００２】
予め定義された一連の作業の作業手順（ワークフロー）に基づき、例えば個々の作業に関する担当者や作業期限などの作業遂行に必要な情報を管理し、複数のユーザ間においてのその一連の作業の遂行を支援するシステムがあり、ワークフロー管理システムと呼ばれている。従来のワークフロー管理システムの構成例を図６２に示す。
【０００３】
図６２において、サーバ１１１には、ワークフローの管理を行なうワークフローエンジン１１２が備えられている。
作業手順定義情報格納装置１２１は、ワークフローエンジン１１２で管理する一連の作業の作業手順を保持するものであり、作業手順が作業プロセス（例えば、製造管理、人事管理などの、一連の作業のこと）毎に格納されている。例えば、作業プロセスが製造管理である場合には、作業手順定義情報格納装置１２１には、発注伝票の発行作業、製品仕様などの製造管理情報の発行作業、製造指示を行なう伝票の発行作業、等の作業手順が格納される。これらの各作業のように、作業プロセスの各作業手順を構成する作業を、作業アクティビティという。
【０００４】
作業情報格納装置１２２は、作成された帳票や、作業中の作業プロセスの作業手順を保持するものであり、例えば、各作業の担当者、作業指示、作業の期限、作業の履歴、などの作業情報が格納される。
【０００５】
作業用データベース１２３は、製造管理のための製品仕様データベースであり、サーバ１１１の有する一般的なデータベースである。
クライアントＡ１４１は、この例では会社の営業部に備えられるものとする。
【０００６】
クライアントＢ１４２は、この例では会社の製造管理部に備えられるものとする。
クライアントＣ１４３は、この例では会社の製造部に備えられるものとする。
図６３は、図６２に示す従来のワークフロー管理装置の動作を説明する図である。
【０００７】
図６３では、製造管理のワークフローを例として示すものである。このワークフローでは、まず、顧客から製品の依頼を受けた営業部が製造管理部にその製品の製造依頼の帳票を発行し、そして、その帳票を受け取った製造管理部は製造部に対して製造依頼を行ない、製造部はその製造依頼を受け取るものとする。
【０００８】
ワークフローエンジン１１２は、各クライアント間の作業アクティビティ廻送処理１１４と、作業プロセスの進捗に基づく次作業アクティビティ決定処理１１５と、を実行する。
【０００９】
作業手順定義情報格納装置１２１には、製造管理のワークフローを示すテーブル１２１’が格納されている。
作業用データベース１２３には、製造依頼を行なう製品の製品仕様Ａ１３０を含む、製造部で製造可能な各種の製品の製品仕様がデータベース化されて格納されており、更に、この会社の各部門間で授受される各種の帳票のフォーム（様式）も格納されている。なお、帳票フォームは、各クライアントのユーザシステムにおいて新規に作成して使用することも可能である。
【００１０】
作業情報格納装置１２２に格納されている作業情報１２６は、この例では、作業プロセスをユーザシステムで処理する上で必要な情報（発注作業情報００１、発注担当者は営業部のＡ、製造依頼担当者は製品管理部のＢ、製造担当者は製造部のＣ、生産期限は９９年１２月１１日）、発注伝票１２７、製造依頼伝票１２８、製品仕様書Ａ１２９を有している。
【００１１】
発注伝票１２７は、クライアントＡ１４１において営業部の担当者Ａによって作成されたものである。
製造依頼伝票１２８は、クライアントＢ１４２において製造管理部の担当者Ｂによって作成されたものである。
【００１２】
製品仕様書Ａ１２９は、作業用データベース１２３に格納されている各種製品の製品仕様に基づいてクライアントＢ１４２において作成された製造依頼する製品の仕様書である。
【００１３】
発注伝票１５１は、営業部の担当者Ａが、クライアントＡ１４１において、所定の帳票フォームの項目にデータを入力することにより作成されたものである。
発注作業項目情報１５２は、クライアントＢ１４２において、発注伝票１５１を受け取ることによって得られるものである。
【００１４】
製造依頼伝票１５３は、製品管理部の担当者Ｂが、クライアントＢ１４２において、所定の帳票フォームの項目にデータを入力することにより作成されたものである。
製品仕様書Ａ１５４は、作業用データベース１２３に格納されている各種製品の製品仕様に基づいて作成される、製造依頼する製品の仕様書であり、クライアントＢ１４２において作成され、製造依頼伝票１５３に添付されて廻送されるものである。
【００１５】
製造依頼伝票１５５は、クライアントＢ１４２より廻送された製造依頼伝票１５３を、製造部に備えられているクライアントＣ１４３において受け取ったものである。
製品仕様書Ａ１５６は、製造依頼伝票１５５に添付されていたものであり、製造依頼伝票１５３と共にクライアントＢ１４２より廻送されたものである。
【００１６】
図６３の動作を説明する。
クライアントＡ１４１において、営業部の担当者Ａは、クライアントＡ１４１に備えられている入力ツールを使用して発注伝票１５１を作成する。この作成作業を終了すると、ワークフローエンジン１１２は、作業情報１２６を作成し、作業手順定義情報格納装置１２１に格納されているテーブル１２１’を参照し、そこに示されている作業手順に基づき、発注伝票１５１をクライアントＢ１４２に廻送する。なお、この時点においては、作業情報１２６には、製造依頼伝票１２８及び製品仕様書Ａ１２９は含まれていない。
【００１７】
クライアントＢ１４２において、製造管理部の担当者Ｂは、廻送されてきた製造依頼伝票１５１より得られる発注作業項目情報１５２を基にして、クライアントＢ１４２に備えられている入力ツールを使用して製造依頼伝票１５３を作成する。更に、作業用データベース１２３に格納されている製造依頼を行なう製品の製品仕様Ａ１３０を基にして製品仕様書Ａ１５４を作成し、製造依頼伝票１５３に添付し、製造依頼作業を終了する。
【００１８】
クライアントＢ１４２での製造依頼作業の終了により、ワークフローエンジン１１２は、作業情報格納装置１２２に格納されている作業情報１２６を更新し、製造依頼伝票１２８と製品仕様書Ａ１２９を付加する。そして、作業手順定義情報格納装置１２１に格納されているテーブル１２１’を参照し、そこに示されている作業手順に基づき、製造依頼伝票１５３と製品仕様書Ａ１５４とをクライアントＣ１４３に廻送する。
【００１９】
クライアントＣ１４３において、製造依頼伝票１５５と製品仕様書Ａ１５６とが出力されると、製造部の担当者Ｃはそれらを確認し、製造管理作業プロセス全体の完了をワークフローエンジン１１２に通知する。
【００２０】
クライアントＣ１４３からの製造管理作業プロセス完了通知を受け取ることにより、ワークフローエンジン１１２は、発注伝票１５１に基づく一連の処理を終了する。
【発明の開示】
【発明が解決しようとする課題】
【００２１】
従来のワークフロー管理システムは前述したように動作するので、廻送処理を行なう度に作業手順定義情報格納装置１２１と作業情報格納装置１２２とへのアクセスが発生する。従って、管理する作業量が増加すると、作業手順定義情報格納装置１２１と作業情報格納装置１２２とへの多数のアクセスが集中するため、廻送速度が極端に低下し、能率の低下を招いてしまう問題を有していた。
【００２２】
本発明が解決しようとする課題は、管理する作業量が増加しても、ワークフローの管理が速く、能率よく行なえるワークフロー管理システムを提供することである
【課題を解決するための手段】
【００２３】
前述の課題を解決するために、本発明のうちの第一の発明では、複数のワークフロー支援手段（前述のワークフローエンジンに相当する）及びワークフロー支援手段管理装置を備えるようにし、ワークフロー支援手段管理装置が各ワークフローの管理を担当するワークフロー支援手段を決定するようにした。その際、特定のワークフロー支援手段に負担が集中しないようにするために、作業プロセス生成処理時に各ワークフロー支援手段の負荷状況を記録すると共に、その負荷情報を参照し、どのワークフロー支援手段にワークフロー管理をさせるかを決定するようにした。
【００２４】
そして、各ワークフローエンジンが作業手順定義情報格納装置と作業情報格納装置とを備えるようにし、作業手順定義情報格納装置のもつ情報の中で、各作業アクティビティで必要となる作業情報（例えば、次の作業アクティビティなど）を指定するようにした。また、ワークフロー支援手段は、各作業アクティビティで必要な作業情報だけを廻送するようにした。
【００２５】
また、本発明のうちの第二の発明では、メインサーバとホームサーバとでワークフローを管理するシステムを構成するようにした。
そして、メインサーバには、作業手順定義格納手段と作業情報格納手段とを備えるワークフロー支援手段を備えるようにして、ワークフロー支援手段による作業情報の廻送は、その作業情報の廻送先であるユーザが属するホームサーバへ廻送するようにした。
【００２６】
また、ホームサーバには、メインサーバから送られてくる作業情報を格納する格納手段を有し、このホームサーバに属するユーザからの要求に応じて、ユーザ毎の作業情報を個別に提供するようにした。
【００２７】
以下の説明において、新規作業プロセス生成、もしくは作業プロセスの生成、とは、ユーザが新たな作業プロセスを依頼するときに、作業プロセスの種類を指定し、作業プロセスの処理に必要な情報（担当者、期限など）を入力した後に作業プロセスを起動する処理である。
【００２８】
また、ワークフロー支援手段（ワークフローエンジン）による作業アクティビティの廻送とは、作業プロセスが生成された後に、指定された作業プロセスの作業手順定義と入力された作業情報とに基づいて、ワークフロー支援手段（ワークフローエンジン）が、個々の作業アクティビティに必要な情報を、個々の作業アクティビティの担当者に対応しているユーザシステムへ転送する処理である。このときの作業指示等の、個々の作業アクティビティの処理に必要な情報を、作業情報の中でも特にワークアイテム（作業項目情報）と呼ぶ。このワークアイテムには、行なうべき作業アクティビティの内容、その作業アクティビティに必要な文書、作業アクティビティの処理時に起動するツール（例えば、ワードプロセッサなど）等の各種情報が含まれている。
【００２９】
また、作業アクティビティ終了処理とは、ユーザシステムである作業アクティビティの処理が終了したときに作業アクティビティ終了状態をワークフロー支援手段に通知する処理である。なお、作業アクティビティ終了状態とは、作業アクティビティの処理終了と、例えば承認や却下などの、作業アクティビティの処理内容の結論的な情報と、を送信する状態である。
【００３０】
また、ワークフロー支援手段による次作業アクティビティの決定及び廻送とは、作業アクティビティ終了状態と、作業手順定義情報と、終了状態となった作業アクティビティと、から次の作業アクティビティを決定し、それを作業情報に反映した後に、次の作業アクティビティの担当者に新たなワークアイテムを転送する処理であり、単に廻送処理とも呼ぶ。
【００３１】
本発明の第一の基本構成では、作業手順の定義を格納する作業手順定義格納装置と、作業情報を格納する作業情報格納装置と、ユーザの入力した作業についての情報に基づいて作業手順定義格納装置と作業情報格納装置を参照して作業情報を作成し、他のユーザに作業情報を廻送するワークフロー支援手段とを備え、ユーザの作業を支援するワークフロー管理装置において、作業情報を生成する複数のワークフロー支援手段と、各ワークフロー支援手段に備えられた該作業手順定義格納装置と該作業情報格納装置と、各ワークフロー支援手段の負荷ができるだけ均等になるようにワークフロー支援手段を選択するワークフロー支援手段管理装置とを備えるようにした。
【００３２】
図１は本発明の第一の基本構成を示す図である。
図１において、まず、ワークフロー管理装置Ｗの内部構成を説明する。
ワークフロー支援手段Ａ１には、作業手順定義格納装置Ａ２が接続されており、作業手順定義３が格納される。
【００３３】
作業手順定義３には、作業種類別（作業プロセス別）の作業工程の手順が定義されている。
また、ワークフロー支援手段Ａ１には、作業情報格納装置Ａ４が更に接続されており、ワークフロー支援手段Ａ１で管理中の作業プロセスの担当者、各作業アクティビティの内容、期限、作業アクティビティの履歴、などの作業情報が格納されている。
【００３４】
ワークフロー支援手段Ｂ１１には、作業手順定義格納装置Ｂ１２が接続されており、作業手順定義１３が格納されている。
また、ワークフロー支援手段Ｂ１１には、作業情報格納装置Ｂ１４が更に接続されており、ワークフロー支援手段Ｂ１１で管理中の作業プロセスの作業情報が格納されている。
【００３５】
ワークフロー支援手段管理装置２０は、ワークフロー支援手段Ａ１及びワークフロー支援手段Ｂ１１の負荷状況をワークフロー支援手段情報保持部２２に記録すると共に、ワークフロー支援手段情報保持部２２に記録されている負荷状況を参照して新規作業プロセスが生じたときにその管理をさせるワークフロー支援手段を決定するものである。
【００３６】
ワークフロー支援手段管理装置２０に備えられている作業管理情報保持部２１は、作業プロセスが発生する毎に、作業プロセスの種類、その作業プロセスの作業手順、担当者毎の作業アクティビティ、その作業アクティビティの処理に必要な作業定義、などを保持するものである。
【００３７】
ワークフロー支援手段情報保持部２２は、ワークフロー支援手段Ａ及びＢ（１、１１）の負荷状況などの状態を記録するものである。
また、図１において、ワークフロー管理装置Ｗには、ユーザシステムＡ３１、ユーザシステムＢ３２、ユーザシステムＣ３３がそれぞれ接続されている。
【００３８】
図１の構成において、作業プロセスの最初として、ユーザシステムＡ３１、ユーザシステムＢ３２、またはユーザシステムＣ３３で、他のユーザシステムに対してワークアイテム（作業内容、作業担当者など）を提示する帳票などが作成され、その作成処理が終了したときに、その作成処理の終了状態がワークフロー支援手段管理装置２０に返される。なお、このとき、作業プロセス発生時の処理として、その作業プロセスの進行状態、作業手順、担当者、などの作業管理情報が生成され、作業管理情報保持部２１に記録される。
【００３９】
ワークフロー支援手段管理装置２０は、新規作業プロセスの生成要求がユーザシステム（３１、３２、３３）より到着すると、ワークフロー支援手段情報保持部２２を参照し、各ワークフロー支援手段の負荷状況などをもとに、どのワークフロー支援手段（１、１１）にその作業プロセスの管理を行なわせるかを決定する。ワークフロー支援手段管理装置２０は、必要ならば新たなワークフロー支援手段を起動する。あるいは、ワークフロー支援手段管理装置２０は、ユーザシステムから作業アクティビティの終了状態（作業アクティビティの処理終了と、例えば承認や却下などの、作業アクティビティの処理内容の結論）についての情報が送られてきたときには、ワークフロー支援手段情報保持部２２を参照して対応する作業プロセスを管理するワークフロー支援手段（１、１１）を求め、作業アクティビティ終了状態についての情報を渡す。
【００４０】
さらに、ワークフロー支援手段（１、１１）は、作業手順定義格納装置（２、１２）を参照し、次作業アクティビティの決定と作業アクティビティの廻送とを行なう。作業アクティビティの廻送の際には、作業管理情報をもとに作業情報を作成し、作業管理情報保持部２１の内容を更新すると共に、ワークアイテムを生成してワークフロー支援手段管理装置２０を介してユーザシステム（３１、３２、３３）にそのワークアイテムを送る。
【００４１】
本発明の第一の基本構成によれば、特定のワークフロー支援手段に負荷が集中することがなく、各ワークフロー支援手段の負荷状態を常に平均化することができる。そのため、作業手順定義格納装置と作業情報格納装置にアクセスが集中することがなく、管理する作業量が増えても廻送速度が遅くなることがない。
【００４２】
また、本発明の第二の基本構成では、予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援するワークフロー管理システムにおいて、メインサーバと、前記ユーザが属するホームサーバと、で構成され、前記メインサーバは、前記作業手順の定義を格納する作業手順定義格納手段と、前記一連の作業の遂行に必要な作業情報を格納する第一作業情報格納手段と、前記ユーザが属するホームサーバを示すユーザ情報を管理するユーザ情報管理手段と、前記作業手順定義格納手段に格納されている作業手順と、前記第一作業情報格納手段に格納されている作業情報と、前記ホームサーバより送られてくる該ホームサーバに属するユーザにより行われた作業についての処理情報と、に基づいて該作業手順における次の作業についての作業情報を生成し、前記ユーザ情報管理手段に格納されているユーザ情報に基づいて該次作業を担当するユーザの属するホームサーバに該次作業についての作業情報を廻送するワークフロー支援手段と、を有し、前記ホームサーバは、前記メインサーバより廻送されてきた作業情報を格納する第二作業情報格納手段と、前記第二作業情報格納手段に格納されている前記ユーザが担当である作業についての作業情報を該ユーザ別に提供する作業情報提供手段と、前記ユーザにより行われた前記作業についての処理情報を前記メインサーバに送出する作業処理情報送出手段と、を有するようにした。
【００４３】
図２は本発明の第二の基本構成を示す図である。
同図に示す本発明のワークフロー管理システムの基本構成では、メインサーバ１０００と、２つのホームサーバ（１１００、１２００）とが示されている。
【００４４】
図２において、まず、メインサーバ１０００の内部構成について説明する。
メインサーバ１０００は、２つのワークフロー支援手段（１００１、１０１１）を有しており、ワークフロー支援手段Ａ１００１は作業手順定義格納手段Ａ１００２及び第一作業情報格納手段Ａ１００３を、また、ワークフロー支援手段Ｂ１０１１は作業手順定義格納手段Ｂ１０１２及び第一作業情報格納手段Ｂ１０１３を、それぞれ有している。なお、メインサーバ１０００が有する作業手順定義格納手段及び第一作業情報格納手段を個々に有するワークフロー支援手段の数は２つに限定されるものではなく、１つのみの構成、あるいは、３つ以上の構成とすることも可能である。
【００４５】
ワークフロー支援手段Ａ１００１とワークフロー支援手段Ｂ１０１１、作業手順定義格納手段Ａ１００２と作業手順定義格納手段Ｂ１０１２、第一作業情報格納手段Ａ１００３と第一作業情報格納手段Ｂ１０１３、はそれぞれ同様の機能を有しており、ここではその一方についてのみ説明する。
【００４６】
作業手順定義格納手段Ａ１００２は、予め定義された一連の作業である作業プロセスの作業手順を作業種類別に格納するものである。
第一作業情報格納手段Ａ１００３は、予め定義された作業プロセスの遂行に必要な各作業工程の担当者、作業指示、期限、作業の履歴、などの作業情報を格納するものである。
【００４７】
ユーザ情報管理手段１０２１は、予め定義された作業プロセスを構成する各作業アクティビティを担当するユーザが属しているホームサーバを示すユーザ情報を格納し、管理しているものである。なお、図２においてユーザ情報管理手段１０２１は、メインサーバ１０００内に１つ有し、２つのワークフロー支援手段（１００１、１０１１）で共用するように示されているが、同一のユーザ情報を有するユーザ情報管理手段を各ワークフロー支援手段ごとに備えるようにする構成としてもよい。
【００４８】
ワークフロー支援手段Ａ１００１は、作業手順定義格納手段Ａ１００２に格納されている作業手順と、第一作業情報格納手段Ａ１００３に格納されている作業情報と、ユーザ情報管理手段１０２１に格納されているユーザ情報と、ホームサーバより送られてくるそのホームサーバに属するユーザにより行われた担当作業アクティビティの処理結果として得られる処理情報と、に基づいて、その作業プロセスにおける次の作業アクティビティについての作業情報を生成し、このうち、その作業アクティビティの処理に必要な作業情報であるワークアイテムを、この作業アクティビティを担当するユーザの属するホームサーバに廻送するものである。
【００４９】
ワークフロー支援手段管理手段１０２２は、２つのワークフロー支援手段（１００１、１０１１）のそれぞれに行わせる処理の負荷が均等になるようにワークフロー支援手段を管理するものである。なお、ワークフロー支援手段管理手段１０２２は、メインサーバ１０００をワークフロー支援手段１つのみで構成する場合には不要である。
【００５０】
次に、図２に示す２つのホームサーバ（１１００、１２００）の構成について説明する。
ホームサーバＡ１１００とホームサーバＢ１２００とは同様の内部構成を有している。なお、ホームサーバの台数は２台に限定されるものではなく、１台のみ、あるいは、３台以上の構成とすることも可能であり、その場合の各ホームサーバの内部構成も同様の構成でよい。
【００５１】
ホームサーバＡ１１００は３つのユーザシステム（１１１１、１１１２、１１１３）を有しており、また、ホームサーバＢ１２００も３つのユーザシステム（１２１１、１２１２、１２１３）を有している。なお、各ホームサーバが有するユーザシステムの個数は３台に限定されるものではなく、任意でよい。
【００５２】
前述したように、ホームサーバＡ１１００とホームサーバＢ１２００とは同様の内部構成を有している。そこで、ここではホームサーバＡ１１００の内部構成についてのみ説明する。
【００５３】
ホームサーバＡ１１００は、第二作業情報格納手段１１０１、作業情報提供手段１１０２、作業処理情報送出手段１１０３を有している。
第二作業情報格納手段１１０１は、メインサーバ１０００のワークフロー支援手段Ａ１００１またはワークフロー支援手段Ｂ１０１１より廻送されてきたワークアイテムを格納するものである。
【００５４】
作業情報提供手段１１０２は、ホームサーバＡ１１００の有するユーザシステム（１１１１、１１１２、１１１３）のいずれかを操作する、ホームサーバＡ１１００に属しているユーザからの要求に応じて、第二作業情報格納手段１１０１に格納されている、そのユーザが担当である作業アクティビティについてのワークアイテムを、ユーザが操作するユーザシステムを介してそのユーザに提供するものである。
【００５５】
作業処理情報送出手段１１０３は、作業情報提供手段１１０２によりユーザに提供された作業情報に基づいてユーザにより行われた担当作業アクティビティについての処理結果を示す処理情報をメインサーバ１０００に送出するものである。
【００５６】
図２の構成において、例えば、ホームサーバＡ１１００の有するユーザシステムＡ１１１１において、作業プロセスの最初として、他のユーザシステムに対してワークアイテムを提示する帳票などが作成されたとする。その作成処理が終了したときに、その情報がホームサーバＡ１１００の作業処理情報送出手段１１０３によってメインサーバ１０００に送出される。
【００５７】
メインサーバ１０００では、ホームサーバＡ１１００より新規作業プロセスの生成要求が到着すると、ワークフロー支援手段管理手段１０２２が、各ワークフロー支援手段の負荷状況などをもとに、どのワークフロー支援手段（１００１、１０１１）にその作業プロセスを管理させるかを決定する。ここでは、ワークフロー支援手段Ａ１００１に作業プロセスを管理させる決定がなされたものとする。
【００５８】
ワークフロー支援手段Ａ１００１は、作業手順定義格納手段Ａ１００２に格納されている作業手順と、作業情報格納手段Ａ１００３に格納されている作業情報と、ユーザ情報管理手段１０２１に格納されているユーザ情報と、ホームサーバＡ１１００より送られてくるユーザシステムＡ１１１１を操作するユーザにより行われた処理情報と、に基づいて、次の作業手順の作業アクティビティについての作業情報を作成し、その中で作業アクティビティの処理に必要なものをワークアイテムとして次作業アクティビティを担当するユーザが属するホームサーバに廻送する。ここでは、ホームサーバＡ１１００にワークアイテムが廻送されたものとする。
【００５９】
ホームサーバＡ１１００では、まず、この廻送されてきたワークアイテムを第二作業情報格納手段１１０１に格納する。その後、廻送されてきたワークアイテムに対応する作業アクティビティの担当であるユーザが、例えば、ユーザシステムＢ１１１２を操作することにより、作業情報提供手段１１０２を介してこのユーザが担当である作業アクティビティについてのワークアイテムが第二作業情報格納手段１１０１から取り出され、ユーザシステムＢ１１１２に与えられる。ユーザは、与えられたワークアイテムをもとにこの作業を処理し、その作業アクティビティの処理が終了したときに、その作業アクティビティの終了状態についての情報がホームサーバＡ１１００の作業処理情報送出手段１１０３によってメインサーバ１０００に送出される。
【００６０】
以上の処理が繰り返されることによって、一連の作業である作業プロセスの管理が行なわれる。
本発明の第二の基本構成によれば、ユーザの属するホームサーバが有するどのユーザシステムによっても、そのユーザは自分の担当作業アクティビティの処理を行なうことができるようになる。
【００６１】
なお、本発明の第二の基本構成における、メインサーバ及びホームサーバの単体も、本発明に関係する発明である。
【発明の効果】
【００６２】
本発明によれば、ワークフローエンジン間で作業手順、作業情報の転送を高速に行なうことができるので、ワークフローエンジンの負荷の分散、もしくは、作業のバックアップ、代替などを迅速に行なうことができる。そのため、特定のワークフローエンジンにアクセスの集中することがなく、管理する作業量が増えても廻送速度が遅くなることがない。また、バックアップのワークフローエンジンを持つことが容易にできるので、ワークフローエンジンに障害が発生した場合にも代替ワークフローエンジンに迅速に切り換えることができる。そのため、信頼性の高いワークフロー管理装置が得られる。
【００６３】
更に、本発明は、次作業アクティビティの次の作業アクティビティを管理するワークフローエンジンを予測して、そのワークフローエンジンに作業情報、作業手順を高速に転送し、そのワークフローエンジンで処理ができるので、作業を能率的に行なうことができるようになる。
【００６４】
また、本発明よれば、ワークフローエンジンを有するメインサーバとユーザの操作するユーザシステムとの間に、ホームサーバを設けるようにするので、ユーザが自分の担当である作業アクティビティの処理が行なえるユーザシステムを複数提供できるようになり、複数のユーザによって並行して作業アクティビティの処理を進めることが容易になり、全体の作業の能率が向上する。
【００６５】
そして、この複数のユーザによって並行して作業アクティビティを処理する際に問題となる作業アクティビティの排他制御をホームサーバで行なうようすることで、ワークフローエンジンへの処理の負担が少なくなる。
【００６６】
また、新規に作業プロセスが生成された際に必要な起票処理をホームサーバで行なうようすることで、新規作業プロセス生成時のユーザへのレスポンスが高速になり、また、ワークフローエンジンへの処理の負担も少なくなる。
【００６７】
また、ホームサーバにおいて、処理を終了した作業アクティビティとその作業アクティビティに続く次の作業アクティビティとのそれぞれの担当者が一致する場合には、メインサーバのワークフローエンジンに次の作業アクティビティについての廻送処理は行なわないように通知する処理を行なうことにより、ワークフローエンジンによる廻送処理の負担は軽減され、また、ユーザがある作業アクティビティを終了させてから次作業アクティビティを開始できるようになるまでの待ち時間が短縮される。
【００６８】
また、ホームサーバに属するユーザの行なった作業アクティビティの履歴をそのホームサーバで格納するようにし、作業履歴の検索の処理はホームサーバに処理させるようにすることにより、メインサーバの処理負担は軽減される。
【発明を実施するための最良の形態】
【００６９】
以下、本発明の第一の基本構成を有するワークフロー管理装置についての実施の各形態では、ワークフロー支援手段はワークフローエンジン、ワークフロー支援手段管理装置はワークフローエンジン管理装置、ワークフロー支援手段情報保持部はワークフローエンジン管理テーブル、作業管理情報保持部は作業情報管理テーブル、として説明する。
【００７０】
図３は、本発明のワークフロー管理装置の実施の形態１のシステム構成図である。
図３におけるサーバＳの内部構成を説明する。
ワークフローエンジン管理装置４０は、作業情報管理テーブル４１を有している。
【００７１】
また、ワークフローエンジン管理装置４０には、ワークフローエンジンＡ４２、ワークフローエンジンＢ４３、通信管理装置４５が接続されている。
通信管理装置４５は、ワークフローエンジン用通信管理装置４６、ユーザシステム用通信管理装置Ａ４７、ユーザシステム用通信管理装置Ｂ４８、ユーザシステム用通信管理装置Ｃ４９を有している。
【００７２】
ワークフローエンジン用通信管理装置４６は、次作業アクティビティの次の作業アクティビティ情報付加手段４６’を有しており、これは、ワークアイテムが今回予定している作業アクティビティの次の作業アクティビティの送付先を当該ワークアイテムに付加するものである。
【００７３】
各ユーザシステム用通信管理装置は、サーバＳに接続される各ユーザシステムとの通信管理を行なうものであり、それぞれ、ユーザシステム用通信管理装置Ａ４７はユーザシステムＡ（クライアント１）７１の、ユーザシステム用通信管理装置Ｂ４８はユーザシステムＢ（クライアント２）７２の、ユーザシステム用通信管理装置Ｃ４９はユーザシステムＣ（クライアント３）７３の、通信管理を行なう。
【００７４】
ワークフローエンジン管理装置４０には、ワークフローエンジン管理テーブル５０、作業手順定義情報格納装置Ｃ６３、が更に接続されている。
ワークフローエンジン管理テーブル５０は、各ワークフローエンジン（４２、４３）の負荷状況等の状態を記録するものである。
【００７５】
作業手順定義情報格納装置Ｃ６３は、ワークフローエンジン管理装置４０についての作業手順定義格納装置である。
ワークフローエンジンＡ４２には、作業手順定義情報格納装置Ａ６１、作業情報格納装置Ａ６４、が接続されている。
【００７６】
作業手順定義情報格納装置Ａ６１は、ワークフローエンジンＡ４２についての作業手順定義格納装置である。
作業情報格納装置Ａ６４は、ワークフローエンジンＡ４２についての作業情報格納装置であり、ワークフローエンジンＡ４２の管理する作業プロセスについての作業情報を格納するものである。
【００７７】
ワークフローエンジンＢ４３には、作業手順定義情報格納装置Ｂ６２、作業情報格納装置Ｂ６５、が接続されている。
作業手順定義情報格納装置Ｂ６２は、ワークフローエンジンＢ４３についての作業手順定義格納装置である。
【００７８】
作業情報格納装置Ｂ６５は、ワークフローエンジンＢ４３についての作業情報格納装置であり、ワークフローエンジンＢ４３の管理する作業プロセスについての作業情報を格納するものである。
【００７９】
ワークフローエンジンＡ４２及びワークフローエンジンＢ４３には、更に一般用データベース６６が接続されており、どちらのワークフローエンジンからもデータアクセスが可能である。一般用データベース６６には、ユーザが作業を行なう際に必要な各種のデータ（例えば、製造する製品の仕様、各種帳票のフォームなど）が格納されている。
【００８０】
なお、図３においては、ワークフローエンジンは２つのみの構成としているが、３つ以上の構成としてもよい。
サーバＳには、ユーザシステムＡ、Ｂ、Ｃ（７１、７２、７３）が接続されている。これらは、ユーザに対してワークアイテムを提示して作業アクティビティの処理についての指示を与えると共に、作業アクティビティの終了状態をサーバＳに返すためのものである。
【００８１】
図３の構成において、ワークフローエンジン管理装置４０では、作業手順定義情報格納装置Ｃ６３に格納されている作業手順をもとに、作業情報管理テーブル４１が生成される。そして、各ユーザシステム（７１、７２、７３）から新規作業プロセス生成、または、作業アクティビティ終了の情報がワークフローエンジン管理装置４０に届けられる度に作業手順定義情報格納装置Ｃ６３及び作業情報管理テーブル４１が参照され、次の作業アクティビティについてのワークアイテムが生成される。そして、作業情報管理テーブル４１及び作業情報格納装置（６４、６５）の作業情報が更新される。
【００８２】
通信管理装置４５は、ワークフローエンジン管理装置４０と各ユーザシステム（７１、７２、７３）との間の通信制御を行ない、送られてきた情報を宛先の装置に配送するものである。例えば、ユーザシステムＡ７１が作業プロセスを生成するとき、その生成要求は、ユーザシステム用通信管理装置Ａ４７、ワークフローエンジン用通信管理装置４６、を介して、ワークフローエンジン管理装置４０に渡される。
【００８３】
ワークフローエンジン管理装置４０は、ワークフローエンジン管理テーブル５０を参照して、各ワークフローエンジンの負荷状態を調べ、作業プロセスを管理させるワークフローエンジンを決定する。例えば、ここで、ワークフローエンジンＡ４２に管理を行なわせる決定を下したとする。
【００８４】
指定されたワークフローエンジンＡ４２は、作業手順定義情報格納装置Ａ６１、作業情報格納装置Ａ６４、を参照し、作業情報を生成すると共にその作業情報から得られる次の作業アクティビティについてのワークアイテムの送り先を決定する。そして、ワークフローエンジン管理装置４０、ワークフローエンジン用通信管理装置４６、を介して宛て先のユーザシステムのユーザシステム用通信管理装置にワークアイテムを送り、そのワークアイテムを受けたユーザシステム用通信管理装置は、対応するユーザシステムにワークアイテムを送る。この過程の途中で、ワークフローエンジン用通信管理装置４６は、ワークアイテムのユーザ情報を参照し、今回の作業アクティビティの次の作業アクティビティについての送り先を判断し、ワークアイテムに付加する。
【００８５】
また、上記において、指定されたワークフローエンジン（例えば、ワークフローエンジンＡ４２とする）に接続されている格納装置が、管理すべき作業プロセスの作業手順や作業情報を保持していない場合には、その作業手順や作業情報を格納装置に有するワークフローエンジンＢ４３から必要な作業手順や作業情報が送信される。そして、これらの情報をもとにして、ワークフローエンジンＡ４２は作業情報等を生成し、ワークフローエンジン管理装置４０に渡す。以降の動作は前述の場合と同様である。
【００８６】
図４は、本発明の作業情報管理テーブルの例を示しており、発注、製造依頼、製造、の各工程を管理する場合のものである。
作業情報管理テーブルは、各作業アクティビティ（発注、製造依頼、製造など）の作業工程手順、及び、各作業アクティビティにおいて必要な情報（担当者、担当ワークフローエンジンなど）を保持する。
【００８７】
図４において、作業ＩＤは、作業プロセスが発生する毎に生成される通し番号である。作業ＩＤ毎の作業手順、手順名（作業アクティビティ名）、次作業アクティビティ、は、作業手順定義情報格納装置から取り寄せた作業手順定義情報に基づくものである。各作業ＩＤの情報は、ユーザシステムからの最初の作業アクティビティの処理終了の報告により生成される。図４より、例えば、作業ＩＤ１は、ＩＤ０の担当者ＩＤを有する者により行われた作業手順０（発注）の処理により生成されたものであり、図示のような作業手順、担当者、担当エンジンＩＤ（管理を担当するワークフローエンジンのＩＤ）をもつことがわかる。
【００８８】
各ワークフローエンジン（４２、４３）はそれぞれの有する作業手順定義情報格納装置（６１、６２）に格納されている作業手順定義情報に従って、次作業アクティビティを決定し、作業アクティビティの廻送を行なう。この作業アクティビティの廻送の際には、作業手順定義に指定されている作業アクティビティの定義（発注、製造依頼、製造など）を参照してワークアイテムを生成し、ワークフローエンジン管理装置４０を介してユーザシステム（７１、７２、７３）に生成したワークアイテムを送る。
【００８９】
図５は、本発明のワークフローエンジン管理テーブルとワークアイテムの例を示す図である。
図５（ａ）は、ワークフローエンジンが３つある場合のワークフローエンジン管理テーブルの例であり、ワークフローエンジン毎に、負荷数（負荷の大きさ）、状態（ワークフローエンジンの動作は正常か異常か）、作業中の作業プロセスの作業ＩＤ、を保持している。
【００９０】
図５（ｂ）は、ワークアイテムの例であり、作業ＩＤ、発信元ＩＤ、次作業アクティビティを担当するユーザのユーザシステム用通信管理装置のＩＤ、次作業アクティビティの次の作業アクティビティを担当するユーザのユーザシステム用通信管理装置のＩＤ、作業状態（作業履歴照会時などで、新規作業プロセス生成、作業アクティビティ終了、作業プロセス完了などの状態を通知する場合に使用）、手順名、作業アクティビティ担当者のＩＤ、その他の情報、をもつものである。また、同図には図示してはいないが、必要に応じて、手順名に対応する手順ＩＤや次作業アクティビティの手順ＩＤを有する場合もある。
【００９１】
図６は、本発明のワークフロー管理プログラム格納記憶媒体を示す。
本発明のワークフロー管理プログラム格納記憶媒体７４は、磁気記憶装置や、ＣＤ−ＲＯＭ等の光による記憶装置、などであり、ワークフローエンジンプログラム、ワークフローエンジン管理プログラム、ワークフローエンジン用通信管理プログラム、ユーザシステム用通信管理プログラム、ワークフローエンジン管理テーブル作成プログラム、作業手順定義作成プログラム、等を含むものである。このワークフロー管理プログラム格納記憶媒体７４に格納されている各プログラムは、一般的なコンピュータに読み出させて実行させることにより、これより説明する本発明の各構成要素が行なう処理と同様の処理をコンピュータに行なわせるものである。
【００９２】
図７は、本発明のワークフロー管理装置の実施の形態１のワークフローエンジン管理装置４０により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
まず、ワークフローエンジン管理装置は、ユーザシステムによりなされた処理要求の種類を判定する（Ｓ１）。ユーザシステムから新規作業プロセス生成の要求を受けたのであればＳ２以降の処理を行ない、作業アクティビティ終了の要求をユーザシステムから受けたのであればＳ１０以降の処理を行ない、作業プロセスの完了の要求をユーザシステムから受けたのであれば、Ｓ１２以降の処理を行なう。
【００９３】
Ｓ１における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し（Ｓ２）、続いて各ワークフローエンジンの負荷状況を計算する（Ｓ３）。
【００９４】
この計算の結果、ワークフローエンジン管理装置は、最も負荷の少ないワークフローエンジンを選択する（Ｓ４）。
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する（Ｓ５）。判定の結果、既定値以下でないのであればＳ６以降の処理を行ない、既定値以下であれば、Ｓ８以降の処理を行なう。
【００９５】
Ｓ５における判定処理の結果、その負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、新たなワークフローエンジンを起動し（Ｓ６）、ワークフローエンジン管理テーブルに起動した新たなワークフローエンジンのＩＤを追加してそのデータを初期化する（Ｓ７）。
【００９６】
ワークフローエンジン管理装置は、その後、ワークフローエンジン管理テーブルにワークフローエンジンの担当作業情報を追加し（Ｓ８）、更に、ワークフローエンジンの負荷情報（負荷数）を１増やし（Ｓ９）、今回の処理を終了する。
【００９７】
一方、Ｓ１における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジン管理装置は、作業ＩＤをキーとしてワークフローエンジン管理テーブルを検索し（Ｓ１０）、作業ＩＤに対応する担当ワークフローエンジンに作業アクティビティ終了状態（一つの作業アクティビティの終了であって、終了を示す情報と当該作業アクティビティでなされた処理内容、例えば、承認、却下、などの通知）を送り（Ｓ１１）、今回の処理を終了する。
【００９８】
また、Ｓ１における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、作業ＩＤを検索キーとしてワークフローエンジン管理テーブルを検索し（Ｓ１２）、作業ＩＤに対応する担当ワークフローエンジンに作業プロセス完了状態（一連の作業プロセスを終了する状態）を送り、ワークフローエンジンで行われている該当する作業プロセスの全ての管理処理を終了させる（Ｓ１３）。
【００９９】
そして、ワークフローエンジン管理装置は、ワークフローエンジン管理テーブルの該当するワークフローエンジンの負荷情報を１減らし（Ｓ１４）、今回の処理を終了する。
図８は、本発明のワークフロー管理装置の実施の形態１のワークフローエンジン用通信管理装置４６により行われる処理のフローチャートである。なお、このフローチャートは、後述する図１１の実施の形態２のワークフローエンジン用通信管理装置により行われる処理に対するフローチャートと共通である。
【０１００】
図８をもとにこの処理を説明する。
まず、ワークフローエンジン用通信管理装置は、受け取った情報がワークフローエンジンへの返送であるか否かを判定する（Ｓ１）。判定の結果、その情報がワークフローエンジンへの返送であればＳ２の処理を行ない、その情報がワークフローエンジンへの返送でなければＳ３以降の処理を行なう。
【０１０１】
Ｓ１における判定処理の結果、受け取った情報がワークフローエンジンへの作業アクティビティの終了についての情報の返送であると判定したワークフローエンジン用通信管理装置は、ワークフローエンジンに作業アクティビティ終了情報（作業アクティビティの終了であることを表す情報と、伝票、仕様書、などの必要な全ての情報）を渡し（Ｓ２）、今回の処理を終了する。
【０１０２】
一方、Ｓ１における判定処理の結果、受け取った情報がワークフローエンジンへの返送でないと判定したワークフローエンジン用通信管理装置は、その情報の中から今回の送信先のユーザ情報（今回のワークアイテムの送り先）を取り出す（Ｓ３）。
【０１０３】
そして、ワークフローエンジン用通信管理装置の有する次作業アクティビティの次の作業アクティビティ情報付加手段が、作業情報管理テーブルから返送先（今回の次の作業アクティビティについてのワークアイテムの送信先）のユーザシステム用通信管理装置ＩＤを取り出し（Ｓ４）、ワークアイテムの中に返送先ユーザシステム用通信管理装置ＩＤを付加する（Ｓ５）。
【０１０４】
その後、ワークフローエンジン用通信管理装置は、通信管理装置ＩＤに対応する通信管理装置にこのワークアイテムを送り（Ｓ６）、今回の処理を終了する。
図９は、本発明のワークフロー管理装置の実施の形態１のユーザシステム用通信管理装置（４７、４８、４９）により行われる処理のフローチャートである。なお、このフローチャートは、後述する他の実施の形態のユーザシステム用通信管理装置により行われる処理でも共通に用いることができるように描かれている。同図をもとにこの処理を説明する。
【０１０５】
まず、ユーザシステム用通信管理装置は、情報を受け取ると、その情報が作業アクティビティ終了情報であるか否かを判定する（Ｓ１）。判定の結果、受け取った情報が作業アクティビティ終了情報でなければＳ２の処理を行ない、受け取った情報が作業アクティビティ終了情報であればＳ３の処理を行なう。
【０１０６】
Ｓ１における判定処理の結果、受け取った情報が作業アクティビティ終了情報でないと判定したユーザシステム用通信管理装置は、ユーザシステムにワークアイテムを渡し（Ｓ２）、今回の処理を終了する。
【０１０７】
一方、Ｓ１における判定処理の結果、受け取った情報が作業アクティビティ終了情報であると判定したユーザシステム用通信管理装置は、その情報の中から返送先のワークフローエンジン用通信管理装置用ＩＤ（図８のフローチャートのＳ５で付加したワークフローエンジン用通信管理装置用ＩＤ）を取り出し（Ｓ３）、そのワークフローエンジン用通信管理装置用ＩＤに対応するワークフローエンジン用通信管理装置に作業アクティビティ終了情報を送る（Ｓ４）。図２においては、ワークフローエンジン用通信管理装置は１つのみであるので、そのワークフローエンジン用通信管理装置ＩＤを送る。なお、このＳ３、Ｓ４の処理は後述する本発明の実施の形態３において主に行われる処理である。この後、今回の処理を終了する。
【０１０８】
図１０は、本発明のワークフロー管理装置の実施の形態２のシステム構成図である。
本発明のワークフロー管理装置の実施の形態２では、次の作業アクティビティが他のワークフローエンジンで管理される場合に、その作業に関する作業手順定義と作業情報とを次の作業アクティビティの管理を行なうワークフローエンジンに渡すようにしている。
【０１０９】
また、次作業アクティビティに続く次の作業アクティビティが他のワークフローエンジンで管理される場合には、次作業アクティビティについてもその次作業アクティビティの次の作業アクティビティが管理されるワークフローエンジンで行なうようにしても良い。この場合には、その作業アクティビティに関する作業手順定義と作業情報とをそのワークフローエンジンに転送し、そのワークフローエンジンに作業アクティビティを管理させるようにする。
【０１１０】
図１０におけるサーバＳの内部構成を説明する。
図１０は、図３の本発明のワークフロー管理装置の実施の形態１のシステム構成図に作業情報転送装置６７が付け加えられた点で異なるのみである。なお、図１０においては、ワークフローエンジンは２つのみの構成としているが、３つ以上の構成としても良い。
【０１１１】
図１０において、図３と共通の構成要素には共通の番号を付している。
作業情報転送装置６７は、例えば、ワークフローエンジンＡ４２の負荷が大きいために、ワークフローエンジンＡで管理中の作業プロセスをワークフローエンジンＢ４３で管理させる場合に、ワークフローエンジンＡ４２で管理中の作業プロセスの作業手順定義、作業情報等をワークフローエンジンＢ４３に転送するものである。また、例えばこの逆の場合に、ワークフローエンジンＢ４３で管理中の作業プロセスの作業手順定義、作業情報等をワークフローエンジンＡ４２に転送するものである。あるいは、例えば、ワークフローエンジンＡ４２の管理処理のバックアップとして他のワークフローエンジンを使用する場合に、ワークフローエンジンＡ４２で管理中の作業プロセスの作業手順定義、作業情報等をバックアップ側に転送するものである。
【０１１２】
図１１は、本発明のワークフロー管理装置の実施の形態２のワークフローエンジン管理装置４０により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
【０１１３】
まず、ワークフローエンジン管理装置は、ユーザシステムによりなされた処理要求の種類を判定する（Ｓ１）。ユーザシステムから新規作業プロセス生成の要求を受けたのであればＳ２以降の処理を行ない、作業アクティビティ終了をユーザシステムから受けたのであればＳ９以降の処理を行ない、作業プロセス完了をユーザシステムから受けたのであれば、Ｓ１７以降の処理を行なう。
【０１１４】
Ｓ１における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、各ワークフローエンジンの負荷状況を計算し（Ｓ２）、この計算の結果、最も負荷の少ないワークフローエンジンを選択する（Ｓ３）。
【０１１５】
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する（Ｓ４）。判定の結果、既定値以下でないのであればＳ５以降の処理を行ない、既定値以下であれば、Ｓ７以降の処理を行なう。
【０１１６】
Ｓ４における判定処理の結果、負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、新たなワークフローエンジンを起動し（Ｓ５）、ワークフローエンジン管理テーブルに起動した新たなワークフローエンジンのＩＤを追加してそのデータを初期化する（Ｓ６）。
【０１１７】
ワークフローエンジン管理装置は、その後、ワークフローエンジン管理テーブルにワークフローエンジンの担当作業を追加し（Ｓ７）、ワークフローエンジンの負荷情報（負荷数）を１増やし（Ｓ８）、今回の処理を終了する。
【０１１８】
一方、Ｓ１における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルから担当ワークフローエンジンを検索し（Ｓ９）、続いて担当ワークフローエンジンの負荷状況を計算する（Ｓ１０）。
【０１１９】
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する（Ｓ１１）。判定の結果、既定値以下でないのであればＳ１２以降の処理を行ない、既定値以下であれば、Ｓ１６以降の処理を行なう。
【０１２０】
Ｓ１１における判定処理の結果、負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し（Ｓ１２）、続いて、各ワークフローエンジンの負荷状況を計算して最も負荷の少ないワークフローエンジンを選択する（Ｓ１３）。
【０１２１】
そして、ワークフローエンジン管理装置は、作業情報転送装置に対し、現在担当しているワークフローエンジンから、先に選択された最も負荷の少ないワークフローエンジンに作業情報を転送するように指示する（Ｓ１４）。
【０１２２】
その後、ワークフローエンジン管理装置は、作業情報の転送に伴い、ワークフローエンジン管理テーブルの担当ワークフローエンジンの情報を更新する（Ｓ１５）。
そして、ワークフローエンジン管理装置は、担当ワークフローエンジンに作業アクティビティ終了状態を送り（Ｓ１６）、今回の処理を終了する。
【０１２３】
また、Ｓ１における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルから担当ワークフローエンジンを検索し（Ｓ１７）、検索した担当ワークフローエンジンに作業プロセス完了状態を送り（Ｓ１８）、ワークフローエンジンの負荷情報を１減らし（Ｓ１９）、今回の処理を終了する。
【０１２４】
図１２は、本発明のワークフロー管理装置の実施の形態３のシステム構成図である。
図１２におけるサーバＳの内部構成を説明する。
図１２は、ワークフローエンジン毎にワークフローエンジン用通信管理装置（４６１、４６２）を備え、更に、ワークフローエンジン管理装置用通信管理装置（４６３）を備えるようにしたものである。
【０１２５】
図１２において、図３と共通の構成要素には共通の番号を付している。
ワークフローエンジン用通信管理装置Ａ４６１は、ワークフローエンジンＡ４２用の通信管理装置である。
【０１２６】
ワークフローエンジン用通信管理装置Ｂ４６２は、ワークフローエンジンＢ４３用の通信管理装置である。
ワークフローエンジン管理装置用通信管理装置４６３は、ワークフローエンジン管理装置４０用の通信管理装置である。
【０１２７】
図１２の構成において、各ユーザシステム（７１、７２、７３）から発信された作業アクティビティに対する処理情報は、それぞれのユーザシステム用通信管理装置（４７、４８、４９）において、その処理情報に含まれる宛先のワークフローエンジンのＩＤが読み取られ、指定されているワークフローエンジンに対応するワークフローエンジン用通信管理装置（４６１、４６２）にその処理情報が渡される。ワークフローエンジン用通信管理装置（４６１、４６２）は、受け取った情報を対応するワークフローエンジン（４２、４３）に渡す。また、ワークフローエンジン（４２、４３）から各ユーザシステム（７１、７２、７３）宛のワークアイテムは、ワークフローエンジン用通信管理装置（４６１、４６２）、もしくは、ワークフローエンジン管理装置用通信管理装置（４６３）において、ワークアイテムに含まれるユーザＩＤ（担当者ＩＤ）が読み取られ、また、今回の送信先のユーザシステム用通信管理装置ＩＤが読み取られる。更に、作業情報管理テーブル４１から今回の次の送信先のユーザシステム用通信管理装置ＩＤが求められ、ワークアイテムに付加される。そして、今回の送信先のユーザシステム用通信管理装置にワークアイテムが送られる。
【０１２８】
図１２のワークフローエンジン用通信管理装置のフローチャートは図８のフローチャートと同じである。また、図１２のユーザシステム用通信管理装置のフローチャートは図９のフローチャートと同様である。
【０１２９】
図１３は、本発明のワークフロー管理装置の実施の形態４のシステム構成図である。
図１３におけるサーバＳの内部構成を説明する。
図１３は、ワークフローエンジン管理装置４０が、システムの異常状態を検出する異常状態検出装置９１、及び、重複作業管理装置９２を備えている点のみで図１０の本発明のワークフローエンジン管理装置の実施の形態２のシステム構成図と異なっている。
【０１３０】
図１３において、図３と共通の構成要素には共通の番号を付している。
異常状態検出装置９１は、ワークフローエンジンの異常動作を検出するものである。
重複作業管理装置９２は、ワークフローエンジン間のワークフローの管理処理のバックアップの管理を行なうものである。
【０１３１】
図１４は、本発明のワークフロー管理装置の実施の形態４のワークフローエンジン管理装置４０により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
【０１３２】
まず、ワークフローエンジン管理装置は、ユーザシステムによりなされた処理要求の種類を判定する（Ｓ１）。ユーザシステムから新規作業プロセス生成の要求を受けたのであればＳ２以降の処理を行ない、作業アクティビティ終了の要求をユーザシステムから受けたのであればＳ２１以降の処理を行ない、作業プロセス完了の要求をユーザシステムから受けたのであれば、Ｓ４１以降の処理を行なう。
【０１３３】
Ｓ１における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し（Ｓ２）、続いて各ワークフローエンジンの負荷状況を計算する（Ｓ３）。
【０１３４】
この計算の結果、ワークフローエンジン管理装置は、最も負荷の少ないワークフローエンジンを選択する（Ｓ４）。
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する（Ｓ５）。判定の結果、既定値以下でないのであればＳ６以降の処理を行ない、既定値以下であれば、Ｓ８以降の処理を行なう。
【０１３５】
Ｓ５における判定処理の結果、負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、新たなワークフローエンジンを起動し（Ｓ６）、ワークフローエンジン管理テーブルに起動した新たなワークフローエンジンのＩＤを追加してそのデータを初期化する（Ｓ７）。
【０１３６】
ワークフローエンジン管理装置は、その後、ワークフローエンジン管理テーブルにワークフローエンジンの担当作業を追加し（Ｓ８）、そのワークフローエンジンの負荷情報（負荷数）を１増やす（Ｓ９）。
【０１３７】
次に、ワークフローエンジン管理装置は、バックアップを行なわせるワークフローエンジンを選択し（Ｓ１０）、選択したワークフローエンジンに作業情報や作業手順定義等を転送するように作業情報転送装置に対して指示を行なう（Ｓ１１）。
【０１３８】
そして、ワークフローエンジン管理装置は、重複作業情報管理装置にバックアップ先のワークフローエンジンの情報を新たに追加し（Ｓ１２）、今回の処理を終了する。
一方、Ｓ１における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジン管理装置は、作業ＩＤをキーとしてワークフローエンジン管理テーブルを検索する（Ｓ２１）。
【０１３９】
そして、担当ワークフローエンジンの状態を確認し（Ｓ２２）、担当ワークフローエンジンの状態が異常であるか否かを調べ（Ｓ２３）、異常であるかもしくは反応が得られないのであればＳ２４以降の処理を行ない、一方、反応が得られ、異常でないことが確認されたのであれば、Ｓ３０以降の処理を行なう。
【０１４０】
Ｓ２３における判定処理の結果、担当ワークフローエンジンに何らかの異常を認めたワークフローエンジン管理装置は、ワークフローエンジン管理テーブルの担当ワークフローエンジン情報に「異常」を書き込む（Ｓ２４）。
【０１４１】
その後、ワークフローエンジン管理装置は、重複作業情報管理装置から、バックアップ先のワークフローエンジンを検索する（Ｓ２５）。
そして、ワークフローエンジン管理テーブルの担当ワークフローエンジン情報をバックアップ先の情報に更新し（Ｓ２６）、担当ワークフローエンジンに作業アクティビティ終了状態を送り（Ｓ２７）、ワークフローエンジン管理テーブルの担当ワークフローエンジンの負荷情報を１減らし（Ｓ２８）、バックアップ先のワークフローエンジンの負荷情報を１増やして（Ｓ２９）、今回の処理を終了する。
【０１４２】
一方、Ｓ２３における判定処理の結果、担当ワークフローエンジンに異常を認めなかったワークフローエンジン管理装置は、担当ワークフローエンジンに作業アクティビティ終了状態を送り（Ｓ３０）、そして、担当ワークフローエンジンでの処理結果をバックアップ先のワークフローエンジンに転送するように作業情報転送装置に対して指示を行ない（Ｓ３１）、今回の処理を終了する。
【０１４３】
また、Ｓ１における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、作業ＩＤをキーとしてワークフローエンジン管理テーブルを検索し（Ｓ４１）、担当ワークフローエンジンに作業プロセス完了状態を送り（Ｓ４２）、ワークフローエンジン管理テーブルの該当するワークフローエンジンの負荷情報を１減らし（Ｓ４３）、今回の処理を終了する。
【０１４４】
図１５は、本発明のワークフロー管理装置の実施の形態４の異常状態検出装置９１により行われる処理のフローチャートである。このフローチャートは、ワークフローエンジン管理装置４０での処理を行なわせるメインプログラムに対するサブルーチンである。同図をもとにこの処理を説明する。
【０１４５】
まず、異常状態検出装置は、ワークフローエンジン状態フラグの値を判定（Ｓ１）する。後述するが、このフラグはワークフローエンジンにより設定されるものである。判定の結果、そのフラグの値が正常を示しているのであればＳ２以降の処理を行ない、そのフラグの値が異常を示しているのであればＳ６の処理を行なう。
【０１４６】
Ｓ１における判定処理の結果、ワークフローエンジン状態フラグの値が正常を示していると判定した異常状態検出装置は、現在時刻と、そのワークフローエンジンがその前に処理を実行した最終動作時刻と、を比較し（Ｓ２）、その両者の時間差と既定値との間の時間の長短を判定する（Ｓ３）。
【０１４７】
Ｓ３における判定の結果、現在時刻と最終動作時刻との差が既定値以下であれば、ワークフローエンジンは正常であると判定し、メインプログラムに「正常」を返し（Ｓ４）、今回の処理を終了する。
【０１４８】
一方、Ｓ３における判定の結果、現在時刻と最終動作時刻との差が既定値以下でなければ、ワークフローエンジンからの反応が得られていないと判定し、メインプログラムに「反応なし」を返し（Ｓ５）、今回の処理を終了する。
【０１４９】
また、Ｓ１における判定処理の結果、ワークフローエンジン状態フラグの値が異常を示していると判定した異常状態検出装置は、メインプログラムに「異常」を返し（Ｓ６）、今回の処理を終了する。
【０１５０】
図１６は、本発明のワークフロー管理装置の実施の形態４のワークフローエンジン（４２、４３）により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
【０１５１】
まず、ワークフローエンジンは、処理すべき作業アクティビティ終了状態が存在するか否かを判定する（Ｓ１）。判定の結果、処理すべき作業アクティビティ終了状態が存在するのであればＳ２の処理を行ない、一方、処理すべき作業アクティビティ終了状態が存在しないのであればＳ３以降の処理を行なう。
【０１５２】
Ｓ１における判定処理の結果、処理すべき作業アクティビティ終了状態が存在すると判定したワークフローエンジンは、作業アクティビティ終了時の処理（当該作業アクティビティの処理終了処理と必要な情報（承認、却下の決定など）の送信）を行ない（Ｓ２）、Ｓ５以降の処理を行なう。
【０１５３】
一方、Ｓ１における判定処理の結果、処理すべき作業アクティビティ終了状態が存在しないと判定したワークフローエンジンは、処理すべき作業プロセス完了状態（ある作業プロセスにおける作業アクティビティが全て終了したときの処理を行なう状態）が存在するか否かを判定する（Ｓ３）。判定の結果、処理すべき作業プロセス完了状態が存在するのであればＳ４以降の処理を行ない、一方、処理すべき作業プロセス完了状態が存在しないのであればＳ７以降の処理を行なう。
【０１５４】
Ｓ３における判定処理の結果、処理すべき作業プロセス完了状態が存在すると判定したワークフローエンジンは、作業プロセス完了時の処理を行なう（Ｓ４）。
次いで、ワークフローエンジンは、Ｓ２における作業アクティビティ終了時の処理、もしくはＳ４における作業プロセス完了時の処理が正常に終了したか否かを判定する（Ｓ５）。判定の結果、処理が正常に終了したのであればＳ７以降の処理を行ない、一方、処理が正常に終了しなかったのであれば、Ｓ６の処理を行なう。
【０１５５】
Ｓ５における判定処理の結果、前述の処理が正常に終了しなかったと判定したワークフローエンジンは、ワークフローエンジン管理装置の異常状態検出装置のワークフローエンジン状態フラグを「異常」にセットし（Ｓ６）、今回の処理を終了する。
【０１５６】
一方、Ｓ５における判定処理の結果、前述の処理が正常に終了したと判定したワークフローエンジンは、ワークフローエンジン管理装置の異常状態検出装置に設定されるこのワークフローエンジンの最終動作時刻を現在時刻に更新し（Ｓ７）、ワークフローエンジン管理装置の異常状態検出装置のワークフローエンジン状態フラグを「正常」にセットし（Ｓ８）、その後、前述したＳ１以降の処理を繰り返す。
【０１５７】
図１７は、本発明のワークフロー管理装置の実施の形態５のシステム構成図である。
図１７におけるサーバＳの内部構成を説明する。
図１７は、ワークフローエンジン管理装置４０に作業廻送経路予測装置９３を備えた点のみが図１０の本発明のワークフロー管理装置の実施の形態２のシステム構成図と異なる。
【０１５８】
図１７において、図１０と共通の構成要素には共通の番号を付している。
作業廻送経路予測装置９３は、次作業アクティビティの次の作業アクティビティを予測するものである。
【０１５９】
図１８は、本発明のワークフロー管理装置の実施の形態５のワークフローエンジン管理装置４０により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
【０１６０】
まず、ワークフローエンジン管理装置は、ユーザシステムによりなされた処理要求の種類を判定する（Ｓ１）。ユーザシステムから新規作業プロセス生成の要求を受けたのであればＳ２以降の処理を行ない、作業アクティビティ終了の要求をユーザシステムから受けたのであればＳ２１以降の処理を行ない、作業プロセス完了の要求をユーザシステムから受けたのであれば、Ｓ４１以降の処理を行なう。
【０１６１】
Ｓ１における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し（Ｓ２）、続いて各ワークフローエンジンの負荷状況を計算する（Ｓ３）。
【０１６２】
この計算の結果、ワークフローエンジン管理装置は、最も負荷の少ないワークフローエンジンを選択する（Ｓ４）。
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する（Ｓ５）。判定の結果、既定値以下でないのであればＳ６以降の処理を行ない、既定値以下であれば、Ｓ８以降の処理を行なう。
【０１６３】
Ｓ５における判定処理の結果、負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、新たなワークフローエンジンを起動し（Ｓ６）、ワークフローエンジン管理テーブルに起動した新たなワークフローエンジンのＩＤを追加してそのデータを初期化する（Ｓ７）。
【０１６４】
ワークフローエンジン管理装置は、その後、ワークフローエンジン管理テーブルにワークフローエンジンの担当情報を追加し（Ｓ８）、ワークフローエンジンの負荷情報を１増やし（Ｓ９）、今回の処理を終了する。
【０１６５】
一方、Ｓ１における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジン管理装置は、作業ＩＤをキーとしてワークフローエンジン管理テーブルを検索し（Ｓ２１）、担当ワークフローエンジンに作業アクティビティ終了状態を送る（Ｓ２２）。
【０１６６】
ワークフローエンジン管理装置は、その後、担当ワークフローエンジンから送られてくる次作業アクティビティの情報を受け取る（Ｓ２３）。
ここで、ワークフローエンジン管理装置は、受け取った情報でわかる次作業アクティビティが他のワークフローエンジンで管理されるか否かを判定する（Ｓ２４）。判定の結果、次作業アクティビティが他のワークフローエンジンでの管理であればＳ２５の処理を行ない、一方、次作業アクティビティが他のワークフローエンジンでの管理でないのであればＳ２６以降の処理を行なう。
【０１６７】
Ｓ２４における判定処理の結果、次作業アクティビティが他のワークフローエンジンでの管理であると判定したワークフローエンジン管理装置は、次作業アクティビティの管理を担当するワークフローエンジンに作業アクティビティ終了情報（作業アクティビティの処理終了の情報及びその作業アクティビティの処理で作成された伝票、仕様書等）を転送し（Ｓ２５）、今回の処理を終了する。
【０１６８】
一方、Ｓ２４における判定処理の結果、次作業アクティビティが他のワークフローエンジンでの管理ではないと判定したワークフローエンジン管理装置は、作業情報管理テーブルから次作業アクティビティの次の作業アクティビティの管理情報を全て検索し（Ｓ２６）、検索された情報の中から作業アクティビティの定義情報を新たに一つ取り出す（Ｓ２７）。
【０１６９】
そして、取り出された作業アクティビティが他のワークフローエンジンで管理されるものであるか否かを判定する（Ｓ２８）。判定の結果、その作業アクティビティが他のワークフローエンジンで管理されるのであればＳ２９以降の処理を行ない、一方、その作業アクティビティが他のワークフローエンジンでの管理でないならばＳ３０の処理を行なう。
【０１７０】
Ｓ２８による判定処理の結果、その作業アクティビティが他のワークフローエンジンで管理されると判定したワークフローエンジン管理装置は、次作業アクティビティに関する作業情報を他のワークフローエンジンに転送するように作業転送装置に指示する（Ｓ２９）。
【０１７１】
その後、ワークフローエンジン管理装置は、すべての次作業アクティビティ以降の作業定義情報についてＳ２７からＳ２９までの処理が終了したか否かを判定する（Ｓ３０）。判定の結果、これらの処理が終了したのであれば、今回の処理を終了する。一方、未処理の作業定義情報が残っているのであれば、Ｓ２７以降の処理を繰り返す。
【０１７２】
また、Ｓ１における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、作業ＩＤをキーとしてワークフローエンジン管理テーブルを検索し（Ｓ４１）、担当ワークフローエンジンに作業プロセス完了状態を送り（Ｓ４２）、ワークフローエンジン管理テーブルの該当するワークフローエンジンの負荷情報を１減らし（Ｓ４３）、今回の処理を終了する。
【０１７３】
次に、ホームサーバを用いたワークフロー管理システムについて説明する。
今まで説明したワークフロー管理装置では、ユーザ（作業担当者）が使用可能なユーザシステムが予め決められており、ユーザが利用できる作業端末が固定されてしまっている。
【０１７４】
また、ユーザがユーザシステムで作業を行なうとき、その作業の開始時に帳票のフォーム等の情報を一般用データベースから取得する必要がある。この情報を検索してユーザシステムに与える処理はワークフロー管理装置で実行されるため、今まで説明したワークフロー管理装置で多くのユーザが並行して作業を行なうような場合には、この作業開始時の処理の速度が低下してしまう。
【０１７５】
これより説明するワークフロー管理システムでは、以上の問題を鑑み、ユーザが使用可能なユーザシステムを複数提供でき、また、作業開始時の処理におけるワークフロー管理装置の処理の負担を軽減するために、ホームサーバを設けたことが大きな特徴である。
【０１７６】
図１９は本発明のワークフロー管理システムの実施の形態１の全体構成図である。
図１９において、図１２と共通の構成要素には共通の番号を付している。
図２０は、図１９における各作業手順定義情報格納装置（６３、６４、６５）に格納されている作業手順の定義例を示す図である。同図の例では、作業手順の定義は、作業プロセス毎に付される作業種別ＩＤ別に、作業手順ＩＤ、手順名、その作業手順の作業アクティビティを担当する担当者のＩＤ、その作業手順の次の作業アクティビティの手順ＩＤなどが格納されている。
【０１７７】
図２１は、図１９における作業情報格納装置（６１、６２）に格納される作業情報の例を示す図である。同図の例では、作業情報は各作業手順定義情報格納装置（６３、６４、６５）で定義されている各作業ＩＤ毎に、その作業ＩＤに対応する作業種別ＩＤ、作業種別ＩＤに対応する作業手順の一覧、その作業ＩＤの作業プロセスを担当する担当ワークフローエンジンのＩＤ、そして、各作業ＩＤの作業プロセスの進捗を手順ＩＤで示す「状態」の情報が格納される。
【０１７８】
図１９では、メインサーバＳ’に３台のホームサーバＡ、Ｂ、Ｃ（２１１、２１２、２１３）が接続されている。このメインサーバＳ’に接続されるホームサーバの台数は任意でよい。
【０１７９】
まず、図１９におけるメインサーバＳ’の内部構成を説明すると、メインサーバＳ’の構成は、図１２に示す本発明のワークフロー管理装置の実施の形態３におけるサーバＳの構成に似ているが、図１２に示すサーバＳにおける通信管理装置４５の構成が異なっている。
【０１８０】
ワークフローエンジン用通信管理装置Ａ及びＢ（４６１’、４６２’）、はワークフローエンジンＡ及びＢ（４２、４３）とホームサーバＡ、Ｂ、Ｃ（２１１、２１２、２１３）との間の通信を制御し、送られてきた情報を配送する装置である。
【０１８１】
ワークフローエンジン管理装置用通信管理装置４６３’はワークフローエンジン管理装置４１とホームサーバＡ、Ｂ、Ｃ（２１１、２１２、２１３）との間の通信を制御し、送られてきた情報を配送する装置である。
【０１８２】
ワークフローエンジン用通信管理装置Ａ及びＢ（４６１’、４６２’）とワークフローエンジン管理装置用通信管理装置４６３’とは、それぞれユーザ情報管理テーブルＡ、Ｂ、Ｃ（２０１、２０２、２０３）を有している。ユーザ情報管理テーブルの例を図２２に示す。同図に示すように、ユーザ情報管理テーブルはユーザが個々に有するユーザＩＤ、ユーザの名前、パスワードを有し、そして、そのユーザの属しているホームサーバ（担当ホームサーバ）のＩＤが格納されている。
【０１８３】
なお、図１９には明確には示されてはいないが、ワークフローエンジン管理装置用通信管理装置４６３’と、ワークフローエンジンＡまたはＢ（４２、４３）もしくはワークフローエンジン用通信管理装置ＡまたはＢ（４６１’、４６２’）と、の間で情報の授受を直接行なうことも可能である。
【０１８４】
メインサーバＳ’にはホームサーバＡ、Ｂ、Ｃ（２１１、２１２、２１３）が接続されている。各ホームサーバ（２１１、２１２、２１３）は同様の内部構成を有しており、例えば、営業部門、製造管理部門、製造部門といった会社の各部門毎等を単位として備えられ、今まで説明したワークフロー管理装置ではワークフローエンジンが実行するようにしていた処理の一部を代わりに実行し、ワークフローエンジンの処理の負担を軽減する。
【０１８５】
なお、図１９においては、ホームサーバＡ２１１はユーザシステムＡ及びＢ（８１、８２）の２つ、ホームサーバＢ２１２はユーザシステムＣ、Ｄ、Ｅ（８３、８４、８５）の３つ、ホームサーバＣ２１３はユーザシステムＤ、Ｅ、Ｆ（８６、８７、８８）の３つ、のユーザシステムを有している。詳しくは後述するが、これらのホームサーバの有するユーザシステムについては、ユーザが、例えばパソコン等の、自らの属するホームサーバに対応して接続されているクライアント９０で、作業アクティビティを処理するために使用するユーザプログラム９１を実行することにより発生する、ホームサーバへの新規接続要求に応じて各ホームサーバに生成されるものである。従って、各ホームサーバ（２１１、２１２、２１３）が有するユーザシステムの個数は図１９に示されている個数に限定されるものではない。このことは、後述するホームサーバの他の形態においても同様である。
【０１８６】
図１９に示す構成において、例えば、ホームサーバＡ２１１で生成されたユーザシステムＡ８１が新規作業プロセスを生成すると、その作業プロセスの生成についての情報は、ワークフローエンジン管理装置用通信管理装置４６３’、を介してワークフローエンジン管理装置４０’に渡される。ワークフローエンジン管理装置用通信管理装置４６３’はワークフローエンジン管理テーブル５０を参照して各ワークフローエンジン（４２、４３）の負荷状態を参照し、生成された作業プロセスを担当するワークフローエンジンを選択し、ワークフローエンジン管理テーブル５０を更新する。ここで、例えば、ワークフローエンジンＡ４２が選択されたとする。選択されたワークフローエンジンＡ４２は、作業手順定義情報格納装置６４を参照して作業情報を作成して作業情報格納装置６１に格納されている作業情報テーブルに追加すると共に、この作業情報と一般用データベース６６に格納されている情報とから次の作業手順に関するワークアイテムを生成し、次の作業手順の作業アクティビティの担当者が属するホームサーバへ、ワークフローエンジンＡ用通信管理装置４６１’を介してこのワークアイテムを送る。
【０１８７】
また、例えば、ホームサーバＢ２１２で生成されたユーザシステムＣ８３において作業アクティビティ終了状態が生成されると、この作業アクティビティ終了状態はホームサーバＢ２１２より、この作業を担当しているワークフローエンジンへ伝えられる。ここで、担当ワークフローエンジンがワークフローエンジンＢ４３であるとすると、ワークフローエンジンＢ４３は、作業手順定義情報格納装置６５及び作業情報格納装置６２を参照して次の作業アクティビティを調べ、作業情報格納装置６２に格納されている作業情報テーブルを更新すると共に、この作業情報と一般用データベース６６に格納されている情報とから次の作業アクティビティについてのワークアイテムを生成し、この作業アクティビティの担当者が属するホームサーバへ、ワークフローエンジンＢ用通信管理装置４６２’を介してこのワークアイテムを送る。なお、ユーザシステムＣ８３から作業プロセスの最後の作業アクティビティの終了状態が伝えられた場合には、ワークアイテムの生成・送出は行なわずに、作業プロセス完了のメッセージをワークフローエンジン管理装置４０’に送る。作業プロセス完了メッセージを受け取ったワークフローエンジン管理装置４０’は、ワークフローエンジン管理テーブル５０を更新する。
【０１８８】
図２３は、図１９に示す本発明のワークフロー管理システムの実施の形態１のワークフローエンジン管理装置４０’により行われる処理のフローチャートである。図２３をもとにこの処理を説明する。
【０１８９】
まず、ワークフローエンジン管理装置は、受け取った情報の処理要求の種類を判定する（Ｓ１）。ホームサーバからの新規作業プロセス生成の要求を受けたのであればＳ２以降の処理を行ない、ワークフローエンジンから発せられた作業完了の要求を受けたのであれば、Ｓ１１以降の処理を行なう。なお、図１９に示す本発明のワークフロー管理システムの実施の形態１におけるワークフローエンジン管理装置では、作業アクティビティ終了の処理要求はなされない。
【０１９０】
Ｓ１における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し（Ｓ２）、続いて各ワークフローエンジンの負荷状況を計算し、最も負荷の少ないワークフローエンジンを選択する（Ｓ３）。
【０１９１】
そして、ワークフローエンジン管理装置は、ワークフローエンジン管理テーブルに選択したワークフローエンジンの担当情報を追加し（Ｓ４）、更に、選択したワークフローエンジンの負荷情報（負荷数）を１増やす（Ｓ５）。
【０１９２】
その後、ワークフローエンジン管理装置は、新規作業プロセス開始要求メッセージを生成し（Ｓ６）、そのメッセージに担当ワークフローエンジンＩＤとして選択したワークフローエンジンのＩＤを追加し（Ｓ７）、そして、そのメッセージをワークフローエンジン管理装置用通信管理装置に渡し（Ｓ８）、今回の処理を終了する。
【０１９３】
また、Ｓ１における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、作業ＩＤを検索キーとしてワークフローエンジン管理テーブルを検索し（Ｓ１１）、ワークフローエンジン管理テーブルの作業ＩＤに対応する作業プロセスの管理を担当していたワークフローエンジンの負荷情報を１減らし（Ｓ１２）、今回の処理を終了する。
【０１９４】
図２４は、図１９に示す本発明のワークフロー管理システムの実施の形態１のワークフローエンジン管理装置用通信管理装置４６３’により行われる処理のフローチャートである。図２４をもとにこの処理を説明する。
【０１９５】
まず、ワークフローエンジン管理装置用通信管理装置は、受け取ったメッセージ（情報）の種類を判定する（Ｓ１）。判定の結果、受け取ったメッセージがワークフローエンジンからの作業プロセス完了のメッセージであるか、もしくは、ホームサーバからの新規作業プロセス生成のメッセージであればＳ２の処理を行ない、受け取ったメッセージがワークフローエンジン管理装置からの新規作業プロセス開始要求のメッセージであればＳ３の処理を行なう。
【０１９６】
Ｓ１における判定処理の結果、受け取ったメッセージが作業プロセス完了のメッセージ、もしくは、新規作業プロセス生成のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、そのメッセージをワークフローエンジン管理装置に渡し（Ｓ２）、今回の処理を終了する。
【０１９７】
一方、Ｓ１における判定処理の結果、受け取ったメッセージが新規作業プロセス開始要求のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、このメッセージに記されている担当ワークフローエンジンＩＤに対応するワークフローエンジンにこのメッセージを渡し（Ｓ３）、今回の処理を終了する。
【０１９８】
図２５は、図１９に示す本発明のワークフロー管理システムの実施の形態１のワークフローエンジンＡ及びＢ（４２、４３）により行われる処理のフローチャートである。図２５をもとにこの処理を説明する。
【０１９９】
まず、ワークフローエンジンは、受け取った情報の処理要求の種類を判定する（Ｓ１）。ユーザシステムから発せられた作業アクティビティ終了の要求を受けたのであればＳ２以降の処理を行ない、ワークフローエンジン管理装置から発せられた新規作業プロセス生成処理要求を受けたのであれば、Ｓ２１以降の処理を行なう。
【０２００】
Ｓ１における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジンは、受け取った作業アクティビティ終了情報から作業ＩＤを取り出し（Ｓ２）、その作業ＩＤを検索キーとして作業情報格納装置に格納されている作業情報テーブルから作業情報を検索して取り出す（Ｓ３）。更に、その作業情報から作業種別ＩＤを取り出し（Ｓ４）、取り出した作業種別ＩＤを検索キーとして、作業手順定義情報格納装置から作業手順情報を検索して取り出す（Ｓ５）。作業情報から作業手順情報を直接取り出さないのは、例えば、作業手順に変更が加えられた場合に、作業情報に含まれる作業手順情報が変更前の作業情報のままとなっている可能性があり、このような問題を事前に予防するためである。
【０２０１】
次に、ワークフローエンジンは、受け取った作業終了情報から現在の手順ＩＤを取り出し（Ｓ６）、この手順ＩＤを検索キーとして先に取り出した作業手順情報からこの作業アクティビティの手順を検索して取り出し（Ｓ７）、現在の作業手順の次の作業アクティビティを取り出す（Ｓ８）。
【０２０２】
ここで、ワークフローエンジンは、取り出した作業手順ＩＤに対応する次作業アクティビティの作業内容が作業プロセスの完了であるか否かを判定する（Ｓ９）。次作業アクティビティの内容が作業プロセスの完了であるならばＳ１０の処理を行ない、次作業アクティビティの内容が作業プロセスの完了ではないのであればＳ１１以降の処理を行なう。
【０２０３】
Ｓ９における判定処理の結果、次作業アクティビティが作業プロセスの完了であると判定したワークフローエンジンは、ワークフローエンジン管理装置宛の作業プロセス完了メッセージを、作業情報と共にワークフローエンジン用通信管理装置へ送り（Ｓ１０）、今回の処理を終了する。
【０２０４】
なお、前に説明したワークフロー管理装置では、作業プロセスの完了がユーザシステムから通知されていたが、ホームサーバを用いたワークフロー管理システムでは、作業プロセスの完了の通知の代わりに、作業プロセスの最後の作業アクティビティの終了がホームサーバから通知され、メインサーバのワークフローエンジンがその最後の作業アクティビティの次の作業手順ＩＤが「完了」であることを検出することで、作業プロセスの完了を認識するようにしている。
【０２０５】
フローチャートの説明に戻る。Ｓ９における判定処理の結果、次作業アクティビティが作業プロセスの完了ではないと判定したワークフローエンジンは、作業プロセスの進捗を示す作業情報の「状態」欄に、次作業アクティビティの作業手順ＩＤを書き込み（Ｓ１１）、更に、作業情報の中から次作業アクティビティの手順ＩＤに対応する担当者（すなわち、次作業アクティビティの担当者）のＩＤを取得し、作業情報の「担当者ＩＤ」欄に書き込む（Ｓ１２）。
【０２０６】
そして、ワークフローエンジンは、次作業アクティビティの処理に必要な情報（例えば、次作業で作成する伝票のフォームや製造する製品の仕様書等）を作業手順定義情報格納装置や一般用データベースから取得してワークアイテムを生成し、そのワークアイテムに作業情報の中から必要なものをコピー（複写）し（Ｓ１３）、そのワークアイテムをワークフローエンジン用通信管理装置に送り（Ｓ１４）、今回の処理を終了する。
【０２０７】
一方、Ｓ１における判定処理の結果、新規作業プロセス開始要求を受けたと判定したワークフローエンジンは、受け取った新規作業プロセス開始メッセージから作業種別ＩＤを取り出し（Ｓ２１）、その作業種別ＩＤを検索キーとして、作業手順定義情報格納装置から作業手順情報を検索して取り出す（Ｓ２２）。
【０２０８】
そして、ワークフローエンジンは、作業情報テーブルに新たな作業情報を追加し（Ｓ２３）、受け取った新規作業プロセス開始メッセージから作業プロセスの起票者ＩＤを取り出し（Ｓ２４）、その起票者ＩＤを作業情報の「担当者ＩＤ」欄に書き込み（Ｓ２５）、更に、作業情報の「状態」欄に「作業手順０」に相当する手順ＩＤを書き込む（Ｓ２６）。
【０２０９】
その後、ワークフローエンジンは、ワークアイテムを生成してそのワークアイテムに作業情報の中から必要なものをコピーし（Ｓ２７）、そのワークアイテムをワークフローエンジン用通信管理装置に送り（Ｓ２８）、今回の処理を終了する。
【０２１０】
図２６は、図１９に示す本発明のワークフロー管理システムの実施の形態１のワークフローエンジン用通信管理装置（４６１’、４６２’）により行われる処理のフローチャートである。図２６をもとにこの処理を説明する。
【０２１１】
まず、ワークフローエンジン用通信管理装置は、受け取ったメッセージの種類を判定する（Ｓ１）。判定の結果、受け取ったメッセージがワークフローエンジンからの作業プロセス完了のメッセージであればＳ２の処理を行ない、受け取ったメッセージがワークフローエンジンからのワークアイテムであればＳ３以降の処理を行ない、受け取ったメッセージがホームサーバからの作業アクティビティ終了の情報を受けたのであればＳ７の処理を行なう。
【０２１２】
Ｓ１における判定処理の結果、受け取ったメッセージが作業プロセス完了のメッセージであると判定したワークフローエンジン用通信管理装置は、そのメッセージをワークフローエンジン管理装置用通信管理装置に渡し（Ｓ２）、今回の処理を終了する。
【０２１３】
一方、Ｓ１における判定処理の結果、受け取ったメッセージがワークアイテムであると判定したワークフローエンジン用通信管理装置は、ワークアイテムからこの作業を処理するユーザの情報（担当者ＩＤ）を取り出し（Ｓ３）、ユーザ情報管理テーブルからそのユーザが対応する（属する）ホームサーバのＩＤ（担当ホームサーバＩＤ）を検索し（Ｓ４）、ワークアイテムの中に返送先通信管理装置ＩＤを付加し（Ｓ５）、検索した担当ホームサーバＩＤに対応するホームサーバにこのワークアイテムを送り（Ｓ６）、今回の処理を終了する。
【０２１４】
また、Ｓ１における判定処理の結果、受け取ったメッセージが作業アクティビティ終了の情報であると判定したワークフローエンジン用通信管理装置は、ワークフローエンジンにこのメッセージを渡し（Ｓ７）、今回の処理を終了する。
【０２１５】
次に、図１９のホームサーバＡ、Ｂ、Ｃ（２１１、２１２、２１３）の内部構成について説明する。
図２７は、図１９のワークフロー管理システムで用いられるホームサーバの形態１のシステム構成図である。このホームサーバは、ホームサーバ用通信管理装置３０１、ホームサーバ制御装置３０２、ユーザシステム生成装置３０３、接続管理装置３０４、ワークアイテム管理装置３０５、ユーザ情報管理テーブル３０６、より構成されており、図２７では３つのユーザシステムＡ、Ｂ、Ｃ（３１１、３１２、３１３）を生成している場合を示している。
【０２１６】
ホームサーバ用通信管理装置３０１は、ホームサーバ制御装置３０２と、メインサーバＳ’の各通信管理装置（４６１’、４６２’、４６３’）と、の通信を制御し、送られてきた情報を配送する装置である。
【０２１７】
ホームサーバ制御装置３０２は、接続管理装置３０４からのユーザのホームサーバへの新規接続要求に対して各ユーザシステム（３１１、３１２、３１３）を生成する処理、各ユーザシステム（３１１、３１２、３１３）からワークフローエンジン管理装置４０’への新規作業プロセス生成要求をホームサーバ用通信管理装置３０１へ渡す処理、各ワークフローエンジン（４２、４３）からホームサーバ用通信管理装置３０１を介して送られてくるワークアイテムをワークアイテム管理装置３０５に格納する処理、各ユーザシステム（３１１、３１２、３１３）からワークフローエンジン（４２、４３）へ送られる作業アクティビティ終了状態をホームサーバ用通信管理装置３０１へ渡すと共にワークアイテム管理装置３０５の格納内容を更新する処理などを行なう。
【０２１８】
ユーザシステム生成装置３０３は、ホームサーバ制御装置３０２からの指示により、渡されたワークアイテムから新たなユーザシステムを生成する処理を行なう。
接続管理装置３０４は、ユーザプログラムによるユーザからのホームサーバへの新規接続要求に対し、そのユーザが正規ユーザであるか否かを調べ、正規ユーザである場合には、その新規接続要求をホームサーバ制御装置３０２に渡す処理を行なう。
【０２１９】
ワークアイテム管理装置３０５は、ワークフローエンジン（４２、４３）から渡される、このホームサーバに属するユーザが担当者であるワークアイテムを格納し、また、格納されているワークアイテムからユーザＩＤ（担当者ＩＤ）を検索キーとしたユーザ毎のワークアイテムの検索を行なうものである。ワークアイテム管理装置３０５に格納されているワークアイテムの例を図２８に示す。図２８に示すように、ワークアイテム管理装置３０５には、各ワークアイテムの作業ＩＤ、その作業ＩＤの作業プロセスの進行状態を示す手順ＩＤ及びその手順ＩＤに対応する作業手順名、その作業手順の担当者ＩＤ、その作業手順の次の作業アクティビティの手順ＩＤ、作業プロセスの管理を担当するワークフローエンジンのＩＤが格納される。なお、図２８には図示されていないが、ワークフローエンジンで生成されて送られてくるワークアイテムには、各作業アクティビティを処理するために必要な情報（例えば、次作業アクティビティで作成する伝票のフォームや製造する製品の仕様書等）も有しており、ワークアイテム管理装置３０５はこのような情報も各ワークアイテム毎に格納する。
【０２２０】
ユーザ情報管理テーブル３０６は、このホームサーバに属するユーザのユーザＩＤ、ユーザ名、パスワード等が格納されている。これらの情報は、ワークフローエンジン管理装置用通信管理装置４６３’の有するユーザ情報管理テーブルＣ２０３に格納されている情報を予め複写して格納しておく。
【０２２１】
図２７に示す構成において、まず、ユーザはこのホームサーバに対応するクライアントでユーザプログラムを操作し、自らのユーザＩＤとパスワードを入力する。接続管理装置３０４は、入力されたユーザＩＤとパスワードをユーザ情報管理テーブル３０６と照合し、このユーザがこのホームサーバに属するユーザであれば、ホームサーバ制御装置３０２に新規ユーザ接続要求を渡す。
【０２２２】
ホームサーバ制御装置３０２は、ワークアイテム管理装置３０５に格納されているワークアイテムからこのユーザが担当者である作業アクティビティのワークアイテムがあればすべて取り出し、ユーザシステム生成装置に３０３に取り出したワークアイテムを渡してユーザシステムの生成を指示し、ユーザシステムが生成される。ここでは、ユーザシステムＡ３１１が生成されたものとする。
【０２２３】
ユーザは、ユーザプログラムを用いてユーザシステムＡ３１１に含まれるワークアイテムを処理する。処理が終了すると、作業終了要求がホームサーバ制御装置３０２に伝えられる。
【０２２４】
このとき、ホームサーバ制御装置３０２は、処理を終了した作業アクティビティについてのワークアイテムをワークアイテム管理装置３０５及びユーザシステムＡ３１１から削除し、ホームサーバ用通信管理装置３０１を介して、この作業アクティビティの管理を担当するメインサーバのワークフローエンジンに作業アクティビティ終了状態の情報を送る。
【０２２５】
また、ユーザが、ユーザシステムＡ３１１において新規作業プロセスを生成した場合は、ホームサーバ制御装置３０２は、ホームサーバ用通信管理装置３０１を介してメインサーバのワークフローエンジン管理装置に新規作業プロセス生成メッセージを送る。
【０２２６】
更に、メインサーバのワークフローエンジンからワークアイテムが送られてきた場合には、ホームサーバ制御装置３０２は、ワークアイテム管理装置３０５に送られてきたワークアイテムを追加して格納する。
【０２２７】
図２９は、図２７に示すホームサーバの形態１のホームサーバ制御装置３０２により行われる処理のフローチャートである。図２９をもとにこの処理を説明する。
ホームサーバ制御装置は、受け取った情報の処理要求の種類を判定する（Ｓ１、Ｓ３、Ｓ５、Ｓ７）。ユーザプログラムを操作するユーザから新規ユーザ接続の要求がなされたのであれば新規ユーザ接続処理を実行し（Ｓ２）、ユーザシステムからの新規作業プロセス生成の要求がなされたのであれば新規作業プロセス生成処理を実行し（Ｓ４）、メインサーバのワークフローエンジンで生成されたワークアイテムを渡されたのであればワークアイテム追加処理を実行し（Ｓ６）、ユーザシステムから作業アクティビティ終了の要求が送られたのであれば作業アクティビティ終了時処理（Ｓ８）を実行する。各処理の終了後は、次に送られてくる情報に対しての処理要求の種類の判定処理を繰り返す。
【０２２８】
図３０は、図２９にＳ２として示されているホームサーバ制御装置３０２により行われる新規ユーザ接続処理のフローチャートである。図３０をもとにこの処理を説明する。
まず、ホームサーバ制御装置は、ユーザプログラムを操作するユーザからなされた新規接続要求の情報からユーザＩＤを取り出し（Ｓ１１）、そのユーザＩＤと一致する担当者ＩＤを有する全てのワークアイテムをワークアイテム管理装置から検索する（Ｓ１２）。
【０２２９】
そして、ホームサーバ制御装置は、検索した全てのワークアイテムをユーザシステム生成装置に渡して新たなユーザシステムを生成させ（Ｓ１３）、今回の処理を終了する。
図３１は、図２９にＳ４として示されているホームサーバ制御装置３０２により行われる新規作業プロセス生成処理のフローチャートである。図３１をもとにこの処理を説明する。
【０２３０】
ホームサーバ制御装置は、新規作業プロセス生成メッセージを作成し（Ｓ２１）、ユーザシステムからの新規作業プロセス生成要求に示されている作業種別をそのメッセージの中に埋め込み（Ｓ２２）、この新規作業プロセス生成メッセージをホームサーバ用通信管理装置に渡し（Ｓ２３）、今回の処理を終了する。
【０２３１】
図３２は、図２９にＳ６として示されているホームサーバ制御装置３０２により行われるワークアイテム追加処理のフローチャートである。図３２をもとにこの処理を説明する。
【０２３２】
ホームサーバ制御装置は、ワークアイテム管理装置に新たなエントリを作成し（Ｓ３１）、受け取ったワークアイテムをこの作成したエントリにコピーし（Ｓ３２）、今回の処理を終了する。
【０２３３】
図３３は、図２９にＳ８として示されているホームサーバ制御装置３０２により行われる作業アクティビティ終了時処理のフローチャートである。図３３をもとにこの処理を説明する。
【０２３４】
まず、ホームサーバ制御装置は、受け取った作業アクティビティ終了状態の情報から終了した作業アクティビティに対応する作業プロセスの作業ＩＤを取得し（Ｓ４１）、その作業ＩＤに対応するワークアイテムが格納されているワークアイテム管理装置内の格納位置を取得する（Ｓ４２）。
【０２３５】
そして、ワークアイテム管理装置からそのワークアイテムのエントリを削除し（Ｓ４３）、更に作業アクティビティ終了の要求を発したユーザシステムから終了した作業アクティビティに対応するワークアイテムを削除し（Ｓ４４）、ホームサーバ用通信管理装置に受け取った作業アクティビティ終了状態を渡し（Ｓ４５）、処理を終了する。
【０２３６】
図３４は、図２７に示すホームサーバの形態１のホームサーバ用通信管理装置３０１により行われる処理のフローチャートである。図３４をもとにこの処理を説明する。
まず、ホームサーバ用通信管理装置は、受け取ったメッセージの種類を判定する（Ｓ１）。判定の結果、受け取ったメッセージがホームサーバ制御装置からの新規作業プロセス生成のメッセージであればＳ２の処理を行ない、受け取ったメッセージがホームサーバ制御装置からの作業アクティビティ終了状態の情報であればＳ３以降の処理を行ない、受け取ったメッセージがメインサーバのワークフローエンジンで生成されたワークアイテムであればＳ５の処理を行なう。
【０２３７】
Ｓ１における判定処理の結果、受け取ったメッセージが新規作業プロセス生成のメッセージであると判定したホームサーバ用通信管理装置は、そのメッセージをワークフローエンジン管理装置用通信管理装置に送り（Ｓ２）、今回の処理を終了する。
【０２３８】
一方、Ｓ１における判定処理の結果、受け取ったメッセージが作業アクティビティ終了状態の情報であると判定したホームサーバ用通信管理装置は、その作業アクティビティ終了状態の情報の中から担当ワークフローエンジンＩＤを取り出し（Ｓ３）、その担当ワークフローエンジンＩＤに対応するワークフローエンジン用通信管理装置に受け取った作業アクティビティ終了状態の情報を送り（Ｓ４）、今回の処理を終了する。
【０２３９】
また、Ｓ１における判定処理の結果、受け取ったメッセージがワークアイテムであると判定したホームサーバ用通信管理装置は、受け取ったワークアイテムをホームサーバ制御装置に渡し（Ｓ５）、今回の処理を終了する。
【０２４０】
図３５は、図２７に示すホームサーバの形態１のユーザシステム生成装置３０３により行われる処理のフローチャートである。図３５をもとにこの処理を説明する。
ホームサーバ制御装置からの指示を受けたユーザシステム生成装置は、まず、空のユーザシステムを生成し（Ｓ１）、そのユーザシステムにユーザプログラムを操作するユーザのユーザＩＤをセットし（Ｓ２）、更に、そのユーザシステムにホームサーバ制御装置から渡された全てのワークアイテムをコピーし（Ｓ３）、ユーザシステムを完成させて処理を終了する。
【０２４１】
図３６は、図２７に示すホームサーバの形態１の接続管理装置３０４により行われる処理のフローチャートである。図３６をもとにこの処理を説明する。
まず、接続管理装置は、ユーザプログラムを操作するユーザによって入力されるユーザＩＤを取得し（Ｓ１）、このユーザＩＤを検索キーとしてユーザ情報管理テーブルを検索してこのユーザのユーザ情報を取り出す（Ｓ２）。
【０２４２】
そして、接続管理装置は、ユーザプログラムを操作するユーザによって入力されるパスワードを取得し（Ｓ３）、入力されたパスワードとユーザ情報に示されているパスワードとが一致しているか否かを判定する（Ｓ４）。
【０２４３】
Ｓ４における判定の結果、入力されたパスワードとユーザ情報に示されているパスワードとが一致していると判定した接続管理装置は、ホームサーバ制御装置に新規ユーザ接続の要求をユーザ情報と共に送り（Ｓ５）、処理を終了する。
【０２４４】
一方、Ｓ４における判定の結果、入力されたパスワードとユーザ情報に示されているパスワードとが一致していないと判定した接続管理装置は、ユーザの接続の要求を却下し（Ｓ６）、処理を終了する。
【０２４５】
図３７は、図１９のワークフロー管理システムで用いられるホームサーバの形態２のシステム構成図である。
図３７において、図２７に示すホームサーバの形態１のシステム構成図と共通の構成要素には共通の番号を付している。
【０２４６】
図３７に示すホームサーバの形態２の構成は、作業排他制御装置３２１及び作業排他制御テーブル３２２を有する点において、図２７に示すホームサーバの形態１の構成と異なっている。なお、ユーザシステムの個数も両図で異なってはいるが、これはユーザシステム生成装置３０３によって生成されたユーザシステムの個数が異なっているのに過ぎず、この点は本質的な違いではない（このユーザシステムの個数の違いは後述するホームサーバの他の形態においても同様である）。
【０２４７】
今まで説明した各作業プロセスの例では、ある作業手順の作業アクティビティを担当できる担当者は１名のみであることを前提としていた。実際の作業プロセスにおいては、例えば代行決済など、作業アクティビティを担当できる担当者が複数人存在することがあり、このような場合には、単一の作業アクティビティを複数人が並行して処理してしまうことを防止するために、ある担当者が作業アクティビティの処理を開始した後には、他の担当者がその作業アクティビティの処理を行なえないようにする必要がある。ワークフロー管理におけるこの制御を作業の排他制御と呼ぶ。
【０２４８】
今まで、この作業の排他制御はワークフローエンジンによって行われていた。そのため、作業排他制御はワークフローエンジンにおいては処理の負担となり、また、作業アクティビティの処理を行なうユーザに対し、その処理開始の許可・不許可を通知するまでに多少の時間を要していた。
【０２４９】
図３７に示すホームサーバの形態２においては、作業の排他制御をホームサーバにおいて実行することが大きな特徴であり、この特徴により、作業排他制御に伴うワークフローエンジンの処理負担は軽減され、また、作業アクティビティの処理を行なうユーザに対して排他制御の処理結果を通知するまでのレスポンスが向上する。
【０２５０】
図３７において、作業排他制御装置３２１は、ある作業に対して作業排他制御テーブル３２２を検索し、その作業アクティビティが他のユーザによってすでに処理が開始されているか否かを判定し、判定結果をホームサーバ制御装置３０２に返すものである。
【０２５１】
作業排他制御テーブル３２２は、いずれかの担当者によって処理が開始された作業アクティビティについての進捗状況が格納されるものである。作業排他制御テーブルの例を図３８R>８に示す。同図に示すように、作業排他制御テーブルには、いずれかの担当者によって処理が開始された作業アクティビティについての作業プロセスの作業ＩＤ、状態（現在の作業手順）、手順名、現在の作業手順の作業アクティビティの担当者のＩＤ、そして、現在の作業手順の作業アクティビティの処理状態が示されている。なお、処理状態には担当者が現在実際に処理を行なっている状態を示す「処理中」と、処理を開始したものの、何らかの理由で現在は担当者が処理を中断している状態を示す「処理中断中」と、の状態が存在する。
【０２５２】
図３７の構成において、例えば、ユーザシステムＡ３１１においてユーザが作業アクティビティの処理を開始するとき、処理開始の要求がホームサーバ制御装置３０２へ伝えられる。ホームサーバ制御装置３０２は作業排他制御装置３２１に対し、この作業アクティビティの処理開始の許可を求める。作業排他制御装置３２１は作業排他制御テーブル３２２を参照し、この作業アクティビティの処理が他の担当者によって開始されているか否かを調べる。その結果、処理が開始されていないのであれば処理開始の許可をホームサーバ制御装置３０２に通知すると共に、作業排他制御テーブル３２２に格納されている作業排他制御情報に処理の開始される新たな作業アクティビティの情報を追加する。また、作業アクティビティの処理がすでに開始されているのであれば処理開始の却下をホームサーバ制御装置３０２に通知する。ホームサーバ制御装置３０２は作業排他制御装置３２１からの通知をユーザシステムＡ３１１に伝える。
【０２５３】
また、例えば、ユーザシステムＡ３１１においてユーザが進めていた作業アクティビティの処理を中断したときには、処理の中断がホームサーバ制御装置３０２を介して作業排他制御装置３２１に伝えられ、作業排他制御装置３２１は作業排他制御テーブル３２２に格納されているその作業アクティビティの処理状態を更新する。
【０２５４】
更に、例えば、ユーザシステムＡ３１１においてユーザが進めていた作業アクティビティの処理が終了したときには、作業アクティビティ終了状態がホームサーバ制御装置３０２に伝えられる。ホームサーバ制御装置３０２は作業排他制御装置３２１に作業アクティビティ終了時処理の実行を要求する。作業排他制御装置３２１は要求に応じて作業アクティビティ終了時処理を実行し、作業排他制御テーブル３２２に格納されていたその作業アクティビティに関する作業排他制御情報を削除する。
【０２５５】
図３７において、ホームサーバ用通信管理装置３０１、ユーザシステム生成装置３０３、接続管理装置３０４が行なう処理は、それぞれ、図３４、図３５、図３６にフローチャートで示したホームサーバの形態１におけるそれぞれの装置によって行われる処理と同様である。また、図３７において、ワークアイテム管理装置３０５、ユーザ情報管理テーブル３０６にそれぞれ格納される情報の内容もホームサーバの形態１におけるものと同様である。
【０２５６】
図３９は、図３７に示すホームサーバの形態２の作業排他制御装置３２１により行われる処理のフローチャートである。図３９をもとにこの処理を説明する。
まず、作業排他制御装置は、ホームサーバ制御装置より、例えば処理要求と共に渡されたワークアイテムから作業ＩＤを取り出す（Ｓ１）。
【０２５７】
次に、作業排他制御装置は、要求された処理の種類を判定する（Ｓ２）。判定の結果、要求された処理がユーザシステムを操作するユーザからの作業アクティビティの処理中断処理の要求であればＳ３以降の処理を行ない、要求された処理がホームサーバ制御装置からの作業アクティビティの処理開始処理の要求であればＳ１１以降の処理を行ない、要求された処理がホームサーバ制御装置からの作業アクティビティの処理終了処理の要求であればＳ２１以降の処理を行なう。
【０２５８】
Ｓ２における判定処理の結果、ユーザからの処理中断の要求を受けたと判定した作業排他制御装置は、先に取り出した作業ＩＤを検索キーとして、作業排他制御テーブルから対応する作業排他制御情報を検索し（Ｓ３）、その「処理状態」欄に「処理中断」を書き込み（Ｓ４）、今回の処理を終了する。
【０２５９】
一方、Ｓ２における判定処理の結果、ホームサーバ制御装置からの処理開始処理の要求を受けたと判定した作業排他制御装置は、先に取り出した作業ＩＤを検索キーとして、作業排他制御テーブルから対応する作業排他制御情報を検索し（Ｓ１１）、作業排他制御情報が見つかったか否かを判定する（Ｓ１２）。
【０２６０】
Ｓ１２における判定処理の結果、作業排他制御情報が見つからなかったと判定した作業排他制御装置は、作業排他制御テーブルに新たにエントリを作成し（Ｓ１３）、処理要求と共に渡されたワークアイテムから作業ＩＤ、状態、手順名、担当者ＩＤをコピーし（Ｓ１４）、その後、後述するＳ１７以降の処理を行なう。
【０２６１】
一方、Ｓ１２における判定処理の結果、作業排他制御情報が見つかったと判定した作業排他制御装置は、見つけた作業排他制御情報の処理状態に「処理中」が示されているか否かを判定する（Ｓ１５）。
【０２６２】
Ｓ１５における判定処理の結果、作業排他制御情報の処理状態に「処理中」が示されていると判定した作業排他制御装置は、この作業アクティビティに対する処理開始の要求を却下することをホームサーバ制御装置に伝え（Ｓ１６）、今回の処理を終了する。
【０２６３】
一方、Ｓ１５における判定処理の結果、作業排他制御情報の処理状態に「処理中」が示されていないと判定した作業排他制御装置は、Ｓ１７以降の処理を行なう。
作業排他制御装置は、作業排他制御情報の処理状態に「処理中」を書き込み（Ｓ１７）、この作業アクティビティに対する処理開始の要求を許可することをホームサーバ制御装置に伝え（Ｓ１８）、今回の処理を終了する。
【０２６４】
また、前述したＳ２における判定処理の結果、ホームサーバ制御装置からの処理終了の要求を受けたと判定した作業排他制御装置は、先に取り出した作業ＩＤを検索キーとして、作業排他制御テーブルから対応する作業排他制御情報を検索し（Ｓ２１）、検索した作業排他制御情報を作業排他制御テーブルから削除し（Ｓ２２）、今回の処理を終了する。
【０２６５】
図４０は、図３７に示すホームサーバの形態２のホームサーバ制御装置３０２により行われる処理のフローチャートである。図４０をもとにこの処理を説明する。
ホームサーバ制御装置は、受け取った情報の処理要求の種類を判定する（Ｓ１、Ｓ３、Ｓ５、Ｓ７、Ｓ９）。判定の結果、ユーザプログラムを操作するユーザから新規ユーザ接続の要求がなされたのであれば新規ユーザ接続処理を実行し（Ｓ２）、ユーザシステムからの新規作業プロセス生成の要求がなされたのであれば新規作業プロセス生成処理を実行し（Ｓ４）、メインサーバのワークフローエンジンで生成されたワークアイテムを渡されたのであればワークアイテム追加処理を実行し（Ｓ６）、ユーザシステムから作業アクティビティ処理開始時処理の要求が送られたのであれば作業アクティビティ処理開始時処理（Ｓ８）を実行し、ユーザシステムから作業アクティビティの処理終了の要求が送られたのであれば作業アクティビティ終了時処理（Ｓ１０）を実行する。各処理の終了後は、次に送られてくる情報に対しての処理要求の種類の判定処理を繰り返す。
【０２６６】
なお、図４０には示されていないが、ユーザシステムから作業アクティビティの処理中断の要求を受けた場合には、ホームサーバ制御装置はその要求をそのまま作業排他制御装置に渡す。
【０２６７】
図４０に示されている各処理の中で、新規ユーザ接続処理（Ｓ２）、作業プロセス生成処理（Ｓ４）、ワークアイテム追加処理（Ｓ６）は、それぞれ、図３０、図３１、図３２にフローチャートで示したホームサーバの形態１におけるホームサーバ制御装置によって行われる処理と同様である。
【０２６８】
図４１は、図４０にＳ８として示されているホームサーバ制御装置３０２により行われる作業アクティビティ処理開始時処理のフローチャートである。図４１をもとにこの処理を説明する。
【０２６９】
まず、ホームサーバ制御装置は、作業排他制御装置に処理開始処理の実行を要求する（Ｓ４１）。
その後、ホームサーバ制御装置は、作業排他制御装置による処理開始処理の実行の結果、処理開始が許可されたか否かを判定する（Ｓ４２）。この判定処理の結果、処理開始が許可されたと判定したホームサーバ制御装置は、ユーザシステムに作業アクティビティの処理開始許可を返し（Ｓ４３）、今回の処理を終了する。一方、この判定処理の結果、処理開始が許可されなかった（却下された）と判定したホームサーバ制御装置は、ユーザシステムに「処理開始失敗」を示すエラーを返し（Ｓ４４）、今回の処理を終了する。
【０２７０】
図４２は、図４０にＳ１０として示されているホームサーバ制御装置３０２により行われる作業アクティビティ終了時処理のフローチャートである。図４２をもとにこの処理を説明する。
【０２７１】
まず、ホームサーバ制御装置は、受け取った作業アクティビティ終了状態の情報から終了した作業の作業ＩＤを取得し（Ｓ５１）、その作業ＩＤに対応するワークアイテムが格納されているワークアイテム管理装置内の格納位置を取得する（Ｓ５２）。
【０２７２】
そして、ワークアイテム管理装置からそのワークアイテムを削除し（Ｓ５３）、作業排他制御装置に処理終了時処理の実行を要求し（Ｓ５４）、作業アクティビティ終了の要求を発したユーザシステムから終了した作業アクティビティに関するワークアイテムを削除し（Ｓ５５）、ホームサーバ用通信管理装置に受け取った作業アクティビティ終了状態を渡し（Ｓ５６）、処理を終了する。
【０２７３】
図４３は、図１９のワークフロー管理システムで用いられるホームサーバの形態３のシステム構成図である。
図４３において、図２７に示すホームサーバの形態１のシステム構成図と共通の構成要素には共通の番号を付している。
【０２７４】
図４３に示すホームサーバの形態３の構成は、起票処理装置３３１及び作業手順定義情報格納装置３３２を有する点において、図２７に示すホームサーバの形態１の構成と異なっている。
【０２７５】
今まで説明したワークフロー管理システムでは、ユーザがユーザシステムにおいて新規に作業プロセスを生成するときには、ユーザシステムはメインサーバに対して新規作業プロセスの生成処理要求を行ない、メインサーバ内のワークフローエンジンで新たな作業プロセスの生成が行われ、そこでその作業プロセスの最初（作業手順０）の作業アクティビティの処理に必要なワークアイテム（帳票のフォームなど）が生成され、そのワークアイテムをユーザシステムが受け取って、初めて一連の作業プロセスの最初の作業手順である作業アクティビティの処理をユーザは開始できるようになっていた。そのため、実際にユーザが最初の作業アクティビティの処理を開始できるようになるまでには相当の時間を要していた。
【０２７６】
図４３に示すホームサーバの形態３では、この問題に鑑み、ホームサーバにおいて新規の作業プロセスの生成時の最初の作業アクティビティのためのワークアイテムを仮に生成する処理（この処理を起票処理と呼ぶ）を実行することが大きな特徴であり、この特徴により、新規作業プロセスの生成に伴うワークフローエンジンの処理負担は軽減され、また、ユーザが新規作業プロセスの生成要求を行なってから実際に最初の作業アクティビティの処理を開始できるようになるまでのユーザシステムにおける待ち時間が短縮される。
【０２７７】
図４３において、起票処理装置３３１は、ユーザからの指示に従い、作業手順定義情報格納装置３３２に格納されている作業手順定義情報から仮ワークアイテムを生成するものである。
【０２７８】
作業手順定義情報格納装置３３２は作業手順定義情報を格納するものであり、メインサーバの各ワークフローエンジンが有している作業手順定義情報格納装置に格納されている作業手順定義情報のうち、このホームサーバで必要となるものを予め格納しておく。また、仮ワークアイテムの生成のためにメインサーバの一般用データベースに格納されている情報が必要な場合もあるので、そのような仮ワークアイテムの生成を行なうのであれば、これらの情報も予め格納しておくようにする。
【０２７９】
図４３の構成において、例えば、ユーザシステムＡ３１１においてユーザが新規に作業プロセスの生成を行なうとき、まず起票の要求がホームサーバ制御装置３０２を介して起票処理装置３３１へ伝えられる。起票処理装置３３１は、作業手順定義情報格納装置３３２に格納されている作業手順定義情報から仮ワークアイテムを生成してユーザシステムＡ３１１に渡す。ユーザシステムＡ３１１ではこの仮ワークアイテムを用いて最初の作業手順である作業アクティビティを処理し、ホームサーバ制御装置３０２に処理結果を渡す。ホームサーバ制御装置３０２がメインサーバのワークフローエンジンへ新規作業プロセス生成要求を送るときには、この仮ワークアイテムを添付して送付する。この新規作業プロセス生成要求を受け取ったメインサーバのワークフローエンジンでは、添付されていた仮ワークアイテムを作業情報に反映させた上で正規のワークアイテムを生成し、以降の作業アクティビティについての廻送処理を進めていく。
【０２８０】
図４３において、ホームサーバ用通信管理装置３０１、ユーザシステム生成装置３０３、接続管理装置３０４が行なう処理は、それぞれ、図３４、図３５、図３６にフローチャートで示したホームサーバの形態１におけるそれぞれの装置によって行われる処理と同様である。また、図４３において、ワークアイテム管理装置３０５、ユーザ情報管理テーブル３０６にそれぞれ格納される情報の内容もホームサーバの形態１におけるものと同様である。
【０２８１】
図４４は、図４３に示すホームサーバの形態３の起票処理装置３３１により行われる処理のフローチャートである。図４４をもとにこの処理を説明する。
ユーザシステムを操作するユーザからの指示を受けた起票処理装置は、指示に含まれている作業種別を検索キーとして作業手順定義情報格納装置に格納されている作業手順定義情報を検索し（Ｓ１）、検索結果をもとに仮ワークアイテムを生成し（Ｓ２）、生成した仮ワークアイテムをユーザシステムに渡し（Ｓ３）、処理を終了する。
【０２８２】
図４３のホームサーバ制御装置３０２が行なう処理は、図２９にフローチャートで示したホームサーバの形態１におけるホームサーバ制御装置によって行われる処理と同様であり、また、図２９に示すフローチャートにおいてサブルーチンとして示されている４つの処理の中で、新規ユーザ接続処理、ワークアイテム追加処理、作業終了時処理については、それぞれ図３０、図３２、図３３に示す処理のフローチャートで示される処理が同様に行なわれる。しかし、新規作業プロセス生成処理については、図３１のフローチャートで示されている処理に新たに処理が追加される。
【０２８３】
図４５は、ホームサーバの形態３のホームサーバ制御装置３０２によって行われる新規作業プロセス生成処理のフローチャートである。図４５において、図３１に示すホームサーバの形態１のホームサーバ制御装置３０２によって行われる新規作業プロセス生成処理のフローチャートと共通の処理ステップには共通の番号を付している。
【０２８４】
図４５を図３１と比較すると、作成した新規作業プロセス生成メッセージに作業種別を埋め込んだ後に、起票処理装置で生成した仮ワークアイテムを埋め込んで（Ｓ２４）、ホームサーバ用通信管理装置に渡すことが異なっている。
【０２８５】
また、図４３に示すホームサーバを図１９に示すワークフロー管理システムで用いるときには、図２５にフローチャートで示した、ワークフロー管理システムの実施の形態１のワークフローエンジンＡ及びＢ（４２、４３）により行われる処理に変更を要する。
【０２８６】
図４６は、図４３に示すホームサーバの形態３を本発明のワークフロー管理システムの実施の形態１に用いるときにワークフローエンジンＡ及びＢ（４２、４３）により行われる処理のフローチャートである。図４６において、図２５に示すフローチャートと共通の処理ステップには共通の番号を付している。
【０２８７】
図４６を図２５と比較すると、ホームサーバから作業アクティビティ終了の要求を受けたときのワークフローエンジンの処理は全く同様である。ホームサーバから新規作業プロセス開始の要求を受けたときのワークフローエンジンの処理では、作業情報の状態欄に「作業手順０」を書き込み（Ｓ２６）、このワークフローエンジンでワークアイテムを生成して作業情報をコピーする（Ｓ２７）処理が削除され、代わりに、新たな処理として、受け取った新規作業プロセス開始メッセージに含まれている仮ワークアイテムを取り出し（Ｓ２９）、取り出した仮ワークアイテムに示されているデータの内容を作業情報にコピーし（Ｓ３０）、そして、作業情報の状態欄に「作業手順１」を書き込み（Ｓ３１）、開始が要求された作業プロセスの「作業手順１」の作業アクティビティの担当者ＩＤを取得して作業情報の担当者欄に書き込み（Ｓ３２）、その「作業手順１」のワークアイテムを生成して作業情報をコピーする（Ｓ３３）処理が行われる。
【０２８８】
図４７は、図１９のワークフロー管理システムで用いられるホームサーバの形態４のシステム構成図である。
図４７において、図２７に示すホームサーバの形態１のシステム構成図と共通の構成要素には共通の番号を付している。
【０２８９】
図４７に示すホームサーバの形態４の構成は、次作業アクティビティ検出装置３４１及び作業手順定義情報格納装置３４２を有する点において、図２７に示すホームサーバの形態１の構成と異なっている。
【０２９０】
今まで説明したワークフロー管理システムでは、ワークフローエンジンによる作業アクティビティについての廻送処理は終了状態となったすべての作業アクティビティについて行われていた。従って、ある作業アクティビティを終了した担当者と終了したその作業アクティビティの次の作業アクティビティ（次作業アクティビティ）の担当者とが同一のユーザであり、同一のユーザシステムで次作業アクティビティが処理されることが明らかな場合であっても、ユーザシステムとワークフローエンジンとの間でワークアイテムの受け渡しが行なわれる。そのために、ユーザがユーザシステムにおいてある作業アクティビティを終了させてから、その作業アクティビティに続く同一ユーザが担当である次作業アクティビティを開始できるようになるまでに相当の時間を要することがあった。
【０２９１】
図４７に示すホームサーバの形態４においては、この問題に鑑み、ホームサーバにおいて、処理終了となった作業アクティビティと、次作業アクティビティと、のそれぞれの担当者を比較し、両作業アクティビティの担当者が一致する場合には、ワークフローエンジンによる次作業アクティビティについての廻送は行なわないようにさせる処理を実行することが大きな特徴であり、この特徴により、処理を終了となった作業アクティビティと次作業アクティビティとの担当者が一致する場合に、ワークフローエンジンの廻送処理の負担が軽減され、また、ユーザがある作業アクティビティを終了させてから次作業アクティビティを開始できるようになるまでのユーザシステムにおける待ち時間が短縮される。
【０２９２】
図４７において、次作業アクティビティ検出装置３４１は、ホームサーバ制御装置３０２からの処理要求に従い、処理を終了した作業アクティビティの次作業アクティビティを検出し、処理を終了した作業アクティビティと、次作業アクティビティと、のそれぞれの担当者が一致するか否かを判別してその判別結果をホームサーバ制御装置３０２へ知らせるものである。
【０２９３】
作業手順定義情報格納装置３４２は作業手順定義情報を格納するものであり、図４３に示した作業手順定義情報格納装置３３２と同様に、ホームサーバの各ワークフローエンジンが有している作業手順定義情報格納装置に格納されている作業手順定義情報と同一のものを予め格納しておく。
【０２９４】
図４７の構成において、例えば、ユーザシステムＡ３１１においてユーザがある作業手順の作業アクティビティを終了させたとすると、この作業アクティビティの終了要求はユーザシステムＡ３１１よりホームサーバ制御装置３０２へと伝えられる。ここで、ホームサーバ制御装置３０２は次作業アクティビティ検出装置３４１へ次作業アクティビティ検出の処理の実行を要求する。
【０２９５】
次作業アクティビティ検出装置３４１は、この要求に従い、作業手順定義情報格納装置３４２に格納されている作業手順定義情報を参照して終了した作業アクティビティ続く次作業アクティビティを検出し、更に、処理を終了した作業アクティビティと検出した次作業アクティビティとの担当者が同一であるか否かを判定し、この判定結果をホームサーバ制御装置３０２へ返す。
【０２９６】
ホームサーバ制御装置３０２は、次作業アクティビティ検出装置３４１より返された判定結果に基づき、終了した作業アクティビティと検出した次作業アクティビティとの担当者が同一であれば、ユーザシステムＡ３１１で同一ユーザが次作業アクティビティの処理を直ちに開始できるようにすると共に、ホームサーバ用通信管理装置３０１を介してメインサーバ内のこの作業アクティビティの管理担当ワークフローエンジンに対し、次作業アクティビティのワークアイテムの廻送不要を通知する。
【０２９７】
図４７において、ホームサーバ用通信管理装置３０１、ユーザシステム生成装置３０３、接続管理装置３０４が行なう処理は、それぞれ、図３４、図３５、図３６にフローチャートで示したホームサーバの形態１におけるそれぞれの装置によって行われる処理と同様である。また、図４７において、ワークアイテム管理装置３０５、ユーザ情報管理テーブル３０６にそれぞれ格納される情報の内容もホームサーバの形態１におけるものと同様である。
【０２９８】
図４８は、図４７に示すホームサーバの形態４の次作業アクティビティ検出装置３４１により行われる処理のフローチャートである。図４８をもとにこの処理を説明する。
ホームサーバ制御装置からの処理要求を受けた次作業アクティビティ検出装置は、併せて受け取ったワークアイテムから作業種別ＩＤを取り出し（Ｓ１）、この取り出した作業種別ＩＤを検索キーとして作業手順定義情報格納装置を検索し、対応する作業手順情報を取り出す（Ｓ２）。
【０２９９】
また、次作業アクティビティ検出装置は、ワークアイテムから現在の手順ＩＤを取り出し（Ｓ３）、この取り出した手順ＩＤを検索キーとして、先に取り出した作業手順情報から作業プロセス全体の手順を取り出し（Ｓ４）、更に、取り出した手順から現在の作業アクティビティに対する次の作業アクティビティについての作業手順ＩＤを取り出す（Ｓ５）。
【０３００】
ここで、次作業アクティビティ検出装置は、取り出した次作業アクティビティについての作業手順ＩＤがその作業プロセスの完了を示すものであるか否かを判定する（Ｓ６）。判定の結果、次作業アクティビティについての作業手順ＩＤが作業プロセスの完了を示すものではないのであればＳ７以降の処理を行ない、次作業アクティビティについての作業手順ＩＤが作業プロセスの完了を示すものであればＳ１１の処理を行なう。
【０３０１】
Ｓ６における判定処理の結果、次作業アクティビティについての作業手順ＩＤが作業プロセスの完了を示すものではないと判定した次作業アクティビティ検出装置は、先に取り出した作業手順情報の中から次作業アクティビティについての作業手順ＩＤに対応する担当者の情報を取得し（Ｓ７）、そして、処理を終了した現在の作業アクティビティの担当者とこの次作業アクティビティの担当者とが同じであるか否かを判定する（Ｓ８）。この判定の結果、両作業アクティビティの担当者が同じであればＳ９以降の処理を行ない、両作業アクティビティの担当者が同じでないのであればＳ１１の処理を行なう。
【０３０２】
Ｓ８における判定処理の結果、現在の作業アクティビティと次作業アクティビティとの担当者が同じであると判定した次作業アクティビティ検出装置は、次作業の手順ＩＤをワークアイテムの「状態」欄に書き込み（Ｓ９）、ホームサーバ制御装置に「返送不要」を示す情報を返し（Ｓ１０）、今回の処理を終了する。
【０３０３】
一方、Ｓ６における判定処理の結果、次作業アクティビティについての作業手順ＩＤが作業プロセスの完了を示すものであると判定したか、あるいは、Ｓ８における判定処理の結果、現在の作業アクティビティと次作業アクティビティとの担当者が同じではないと判定した次作業アクティビティ検出装置は、ホームサーバ制御装置に「要返送」を示す情報を返し（Ｓ１１）、今回の処理を終了する。
【０３０４】
図４７のホームサーバ制御装置３０２が行なう処理は、図２９にフローチャートで示したホームサーバの形態１におけるホームサーバ制御装置によって行われる処理と同様であり、また、図２９に示すフローチャートにおいてサブルーチンとして示されている４つの処理の中で、新規ユーザ接続処理、新規作業生成処理、ワークアイテム追加処理については、それぞれ図３０、図３１、図３２にフローチャートで示されている処理が同様に行なわれる。しかし、作業アクティビティ終了時処理については、図３３のフローチャートで示されている処理に新たに処理が追加される。
【０３０５】
図４９は、ホームサーバの形態４のホームサーバ制御装置３０２によって行われる作業アクティビティ終了時処理のフローチャートである。図４９において、図３３に示すホームサーバの形態１のホームサーバ制御装置３０２によって行われる作業終了時処理のフローチャートと共通の処理ステップには共通の番号を付している。図４９をもとに、作業アクティビティ終了時処理を説明する。
【０３０６】
ホームサーバ制御装置は、受け取った作業アクティビティ終了状態の情報から処理を終了した作業アクティビティについての作業プロセスの作業ＩＤを取得し（Ｓ４１）、その作業ＩＤに対応するワークアイテムが格納されているワークアイテム管理装置内の格納位置を取得し（Ｓ４２）た後に、次作業アクティビティ検出装置に次作業アクティビティの検出を依頼する（Ｓ４６）。
【０３０７】
そして、ホームサーバ制御装置は、次作業アクティビティ検出装置による次作業アクティビティ検出の処理結果が「要転送」であるか否かを判定する（Ｓ４７）。
Ｓ４７における判定処理の結果、次作業アクティビティ検出の処理結果が、「要転送」であったと判定したホームサーバ制御装置は、ワークアイテム管理装置からそのワークアイテムのエントリを削除し（Ｓ４３）、更に作業アクティビティ終了の要求を発したユーザシステムからその作業を終了したワークアイテムを削除し（Ｓ４４）、受け取った作業アクティビティ終了状態に、ワークフローエンジンによるワークアイテムの転送が必要であることを示す「要転送」フラグを追加してホームサーバ用通信管理装置に渡し（Ｓ４８）、処理を終了する。
【０３０８】
一方、Ｓ４７における判定処理の結果、次作業アクティビティ検出の処理結果が、「要転送」でなかったと判定したホームサーバ制御装置は、受け取った作業アクティビティ終了状態に、ワークフローエンジンによるワークアイテムの転送が不要であることを示す「転送不要」フラグを追加してホームサーバ用通信管理装置に渡し（Ｓ４９）、処理を終了する。
【０３０９】
図５０は、図４７に示すホームサーバの形態４を本発明のワークフロー管理システムの実施の形態１に用いるときにワークフローエンジンＡ及びＢ（４２、４３）により行われる処理のフローチャートである。図５０において、図２５に示すフローチャートと共通の処理ステップには共通の番号を付している。
【０３１０】
図５０を図２５と比較すると、ホームサーバから新規作業プロセス開始の要求を受けたときのワークフローエンジンの処理は全く同様である。また、ホームサーバから作業アクティビティ終了の要求を受けたときのワークフローエンジンの処理については判断処理がひとつ追加されることのみが異なっている。
【０３１１】
図５０において、作業アクティビティ終了の要求を受けたときのワークフローエンジンは、図２５と同様にＳ１からＳ８までの処理を行なう。
その後、ワークフローエンジンは、取り出した次作業アクティビティの作業手順ＩＤに対応する処理内容が作業プロセスの完了であるか否かを判定する（Ｓ９）。その処理内容が作業プロセスの完了であるならば、図２５と同様にＳ１０の処理を行ない、その処理内容が作業プロセスの完了ではないのであればＳ１５の判定処理を行なう。
【０３１２】
Ｓ９における判定処理の結果、次作業アクティビティの処理内容が作業プロセスの完了ではないと判定したワークフローエンジンは、作業アクティビティ終了状態に「要転送フラグ」が追加されているか否かを判定する（Ｓ１５）。
【０３１３】
Ｓ１５による判定処理の結果、作業アクティビティ終了状態に「要転送フラグ」が追加されていると判定したワークフローエンジンは、図２５に示す処理と同様に、次作業アクティビティのためのワークアイテムの生成と廻送をＳ１１からＳ１４にかけて行ない、今回の処理を終了する。
【０３１４】
一方、Ｓ１５による判定処理の結果、作業アクティビティ終了状態に「要転送フラグ」が追加されていないと判定したワークフローエンジンは、このまま何もせずに今回の処理を終了する。
【０３１５】
図５１は、本発明のワークフロー管理システムの実施の形態２の全体構成図である。
また、図５２は、図５１のワークフロー管理システムで用いられるホームサーバのシステム構成図である。
【０３１６】
図５１において、図１９に示すワークフロー管理システムの実施の形態１の全体構成図と共通の構成要素には共通の番号を付しており、また、図５２において、図２７に示すホームサーバの形態１のシステム構成図と共通の構成要素には共通の番号を付している。
【０３１７】
図５１に示すワークフロー管理システムの実施の形態２の構成は、作業履歴検索装置９２をメインサーバＳ’’に有する点において、図１９に示すワークフロー管理システムの実施の形態１の構成と異なっている。また、図５２に示すホームサーバの構成は、作業履歴管理装置３５１を有する点において、図２７に示すホームサーバの形態１の構成と異なっている。
【０３１８】
ワークフロー管理システムにおいて多用される機能のひとつに作業履歴の検索がある。この機能は、処理を済ませた作業アクティビティについての履歴をユーザ毎に確認する機能である。
【０３１９】
従来の単一のワークフローエンジンを有するワークフロー管理システムでは、ワークフローエンジンがこの作業履歴の検索をも処理していたので、多用される作業履歴の検索によって、ワークフロー管理全体の処理の速度を低下させる要因の一つとなっていた。
【０３２０】
複数のワークフローエンジンを有するワークフロー管理装置では、個々のワークフローエンジンによってこの作業履歴の検索を処理させることも可能ではあるが、あるユーザの行なった作業アクティビティの管理を担当していた可能性は全てのワークフローエンジンにあるので、一人のユーザの作業履歴の検索のために全てのワークフローエンジンで検索処理を行なわせる必要があり、ワークフローエンジンに大きな処理の負担となる。
【０３２１】
そこで、作業履歴の格納及び検索をワークフローエンジン管理装置に行なわせるようにすることが考えられる。しかしながら、ワークフローエンジン管理装置に作業履歴の格納及び検索をすべて行なわせると、例えば、多数のユーザシステムから同時に作業履歴の検索の要求があったときなどは、今度はワークフローエンジン管理装置の処理の負担が大きくなり、作業履歴の検索に相当の時間を要することとなってしまう。
【０３２２】
図５１及び図５２に示すホームサーバを用いたワークフロー管理システムにおいては、ホームサーバに属するユーザの行なった作業アクティビティの履歴はそのユーザが属するホームサーバで格納するようにし、作業履歴の検索の処理はホームサーバに処理させるようにしたことが大きな特徴であり、この特徴により、作業履歴の検索に伴うメインサーバの有する各要素の処理負担は軽減される。
【０３２３】
図５１において、作業履歴検索装置９２は、履歴検索を行なうユーザのＩＤをもとに、ユーザ情報管理テーブルＣ２０３より履歴検索を行なうユーザが属するホームサーバを検索し、そのホームサーバに履歴検索を実行させ、そのホームサーバからの履歴検索結果を履歴検索を要求したホームサーバのユーザシステムへ通知するものである。
【０３２４】
また、図５２において、作業履歴管理装置３５１は、このホームサーバに属するユーザがユーザシステムで行なった作業アクティビティの履歴を格納するものである。
図５３は、作業履歴管理装置に格納されている履歴情報の例を示す図である。同図に示すように、作業履歴管理装置に格納される履歴情報としては、各作業手順における作業アクティビティ毎に、作業プロセスの作業ＩＤ、状態（手順ＩＤ）、手順名、担当者ＩＤ、担当ワークフローエンジンＩＤ、履歴番号（作業履歴を格納するときに記される連続番号）などがある。
【０３２５】
図５１及び図５２の構成において、例えば、ユーザシステムＡ３１１においてユーザがある作業手順の作業アクティビティの処理を終了させたとすると、ホームサーバ制御装置３０２は、今まで説明した作業アクティビティ終了時の処理に加え、作業履歴管理装置３５１に終了した作業アクティビティの履歴を格納する。
【０３２６】
また、例えば、ユーザシステムＢ３１２からあるユーザの作業履歴の検索が要求されると、その要求は、メインサーバＳ’’内の作業履歴検索装置９２に伝えられる。作業履歴検索装置９２はユーザ情報管理テーブルＣ２０３を参照して検索対象のユーザが属するホームサーバを探し出し、そのホームサーバへ作業履歴の検索要求を送る。
【０３２７】
作業履歴の検索要求を受け取ったホームサーバ制御装置３０２は、作業履歴管理装置３５１を参照して格納されている検索対象のユーザが行なった作業アクティビティの履歴を探し出し、その作業履歴の検索結果をメインサーバＳ’’内の作業履歴検索装置９２に返す。
【０３２８】
作業履歴の検索結果を受け取った作業履歴検索装置９２は、その検索結果を検索を要求したユーザシステムＢ３１２へ宛てて送出する。
まず、図５１に示す本発明のワークフロー管理システムの実施の形態２における各構成要素により行われる処理を説明する。
【０３２９】
図５１において、ワークフローエンジン管理装置４０’、各ワークフローエンジン（４２、４３）、各ワークフローエンジン用通信管理装置（４６１’、４６２’）、により行われる処理は、それぞれ、図２３、図２５、図２６にフローチャートで示した本発明のワークフロー管理システムの実施の形態１における各構成要素が行なう処理と同様である。また、図５１において、ワークフローエンジン管理テーブル５０、作業情報格納装置（６１、６２）、作業手順定義情報格納装置（６４、６５）、一般用データベース６６、各ユーザ情報管理テーブル（２０１、２０２、２０３）、にそれぞれ格納される情報の内容も本発明のワークフロー管理システムの実施の形態１におけるものと同様である。
【０３３０】
図５４は、図５１に示す本発明のワークフロー管理システムの実施の形態２における作業履歴検索装置９２により行われる処理のフローチャートである。図５４をもとにこの処理を説明する。
【０３３１】
まず、作業履歴検索装置は、作業履歴検索を行なうユーザのＩＤを受け取り（Ｓ１）、受け取ったユーザＩＤを検索キーとしてユーザ情報管理テーブルからそのユーザの属するホームサーバ（検索処理の担当ホームサーバ）を検索する（Ｓ２）。
【０３３２】
そして、作業履歴検索装置は、作業履歴検索要求メッセージを作成し（Ｓ３）、このメッセージに担当ホームサーバのＩＤとユーザＩＤとをセットし（Ｓ４）、ワークフローエンジン管理装置用通信管理装置にこの作業履歴検索要求メッセージを渡し（Ｓ５）、ホームサーバから作業履歴検索の結果が返送されてくるのを待つ（Ｓ６）。
【０３３３】
その後、履歴検索結果を受け取った作業履歴検索装置は、作業履歴検索を要求したホームサーバのユーザシステムへ宛ててこの作業履歴検索結果を返し（Ｓ７）、今回の処理を終了する。
【０３３４】
図５５は、図５１に示す本発明のワークフロー管理システムの実施の形態２におけるワークフローエンジン管理装置用通信管理装置４６３’により行われる処理のフローチャートである。図５５をもとにこの処理を説明する。
【０３３５】
まず、ワークフローエンジン管理装置用通信管理装置は、受け取ったメッセージの種類を判定する（Ｓ１）。判定の結果、受け取ったメッセージがワークフローエンジンからの作業完了のメッセージであるか、もしくは、ホームサーバからの新規作業生成のメッセージであればＳ２の処理を行ない、受け取ったメッセージがワークフローエンジン管理装置からの新規作業プロセス開始要求のメッセージであればＳ３の処理を行ない、受け取ったメッセージが作業履歴検索装置からの作業履歴検索要求のメッセージであればＳ４の処理を行ない、受け取ったメッセージがホームサーバからの作業履歴の検索結果のメッセージであればＳ５の処理を行なう。
【０３３６】
Ｓ１における判定処理の結果、受け取ったメッセージが作業プロセス完了のメッセージ、もしくは、新規作業プロセス生成のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、そのメッセージをワークフローエンジン管理装置に渡し（Ｓ２）、今回の処理を終了する。
【０３３７】
一方、Ｓ１における判定処理の結果、受け取ったメッセージが新規作業プロセス開始要求のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、このメッセージに記されている担当ワークフローエンジンＩＤに対応するワークフローエンジンにこのメッセージを渡し（Ｓ３）、今回の処理を終了する。
【０３３８】
また、Ｓ１における判定処理の結果、受け取ったメッセージが作業履歴検索要求のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、このメッセージに記されている担当ホームサーバＩＤに対応するホームサーバにこのメッセージを渡し（Ｓ４）、今回の処理を終了する。
【０３３９】
また、Ｓ１における判定処理の結果、受け取ったメッセージが作業履歴の検索結果のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、作業履歴検索装置にこのメッセージを渡し（Ｓ５）、今回の処理を終了する。
【０３４０】
次に、図５２に示すホームサーバの各構成要素により行われる処理を説明する。
図５２において、ユーザシステム生成装置３０３、接続管理装置３０４が行なう処理は、それぞれ、図３５、図３６にフローチャートで示したホームサーバの形態１におけるそれぞれの装置によって行われる処理と同様である。また、図５２において、ワークアイテム管理装置３０５、ユーザ情報管理テーブル３０６にそれぞれ格納される情報の内容もホームサーバの形態１におけるものと同様である。
【０３４１】
図５６は、図５２に示すホームサーバのホームサーバ用通信管理装置３０１により行われる処理のフローチャートである。図５６をもとにこの処理を説明する。
まず、ホームサーバ用通信管理装置は、受け取ったメッセージの種類を判定する（Ｓ１）。判定の結果、受け取ったメッセージがホームサーバ制御装置からの新規作業プロセス生成のメッセージであればＳ２の処理を行ない、受け取ったメッセージがホームサーバ制御装置からの作業アクティビティ終了状態の情報であればＳ３以降の処理を行ない、受け取ったメッセージがメインサーバのワークフローエンジンで生成されたワークアイテムもしくはメインサーバの作業履歴検索装置で生成された作業履歴検索要求のメッセージであればＳ５の処理を行なう。
【０３４２】
Ｓ１における判定処理の結果、受け取ったメッセージが新規作業プロセス生成のメッセージであると判定したホームサーバ用通信管理装置は、そのメッセージをワークフローエンジン管理装置用通信管理装置に送り（Ｓ２）、今回の処理を終了する。
【０３４３】
一方、Ｓ１における判定処理の結果、受け取ったメッセージが作業アクティビティ終了状態の情報であると判定したホームサーバ用通信管理装置は、その作業アクティビティ終了状態の情報の中から担当ワークフローエンジンＩＤを取り出し（Ｓ３）、その担当ワークフローエンジンＩＤに対応するワークフローエンジン用通信管理装置に受け取った作業アクティビティ終了状態の情報を送り（Ｓ４）、今回の処理を終了する。
【０３４４】
また、Ｓ１における判定処理の結果、受け取ったメッセージがワークアイテム、もしくは作業履歴検索要求のメッセージであると判定したホームサーバ用通信管理装置は、受け取ったメッセージをホームサーバ制御装置に渡し（Ｓ５）、今回の処理を終了する。
【０３４５】
図５７は、図５２に示すホームサーバのホームサーバ制御装置３０２により行われる処理のフローチャートである。図５７をもとにこの処理を説明する。
ホームサーバ制御装置は、受け取った情報の処理要求の種類を判定する（Ｓ１、Ｓ３、Ｓ５、Ｓ７、Ｓ９）。判定の結果、ユーザプログラムを操作するユーザから新規ユーザ接続の要求がなされたのであれば新規ユーザ接続処理を実行し（Ｓ２）、ユーザシステムからの新規作業プロセス生成の要求がなされたのであれば新規作業プロセス生成処理を実行し（Ｓ４）、メインサーバのワークフローエンジンで生成されたワークアイテムを渡されたのであればワークアイテム追加処理を実行し（Ｓ６）、ユーザシステムから作業アクティビティ終了の要求が送られたのであれば作業アクティビティ終了時処理（Ｓ８）を実行し、メインサーバの作業履歴検索装置で生成された作業履歴検索要求がわたされたのであれば作業履歴検索処理を実行する（Ｓ１０）。各処理の終了後は、次に送られてくる情報に対しての処理要求の種類の判定処理を繰り返す。
【０３４６】
図５７に示されている各処理の中で、新規ユーザ接続処理（Ｓ２）、作業プロセス生成処理（Ｓ４）、ワークアイテム追加処理（Ｓ６）は、それぞれ、図３０、図３１、図３２にフローチャートで示した本発明のワークフロー管理システムの実施の形態１で用いられるホームサーバの形態１におけるホームサーバ制御装置によって行われる処理と同様である。
【０３４７】
図５８は、図５７にＳ８として示されているホームサーバ制御装置３０２により行われる作業アクティビティ終了時処理のフローチャートである。図５８をもとにこの処理を説明する。
【０３４８】
まず、ホームサーバ制御装置は、受け取った作業アクティビティ終了状態の情報から終了した作業の作業ＩＤを取得し（Ｓ４１）、その作業ＩＤに対応するワークアイテムが格納されているワークアイテム管理装置内の格納位置を取得する（Ｓ４２）。
【０３４９】
そして、ワークアイテム管理装置からそのワークアイテムを削除し（Ｓ４３）、作業アクティビティ終了の要求を発したユーザシステムからその作業アクティビティについてのワークアイテムを削除する（Ｓ４４）。
【０３５０】
その後、ホームサーバ制御装置は、履歴管理装置内に新たなエントリを追加し（Ｓ４５）、この追加したエントリに終了した作業アクティビティについての履歴情報と履歴番号をコピーし（Ｓ４６）、ホームサーバ用通信管理装置に受け取った作業終了状態を渡し（Ｓ４７）、処理を終了する。
【０３５１】
図５９は、図５７にＳ１０として示されているホームサーバ制御装置３０２により行われる作業履歴検索処理のフローチャートである。図５９をもとにこの処理を説明すると、ホームサーバ制御装置は、検索対象であるユーザのユーザＩＤを検索キーとして作業履歴検索装置からそのユーザの作業履歴情報を検索し（Ｓ５１）、処理を終了する。
【０３５２】
なお、以上まで説明したホームサーバを用いたワークフロー管理システムを構成するメインサーバ及びホームサーバの両者もしくはいずれかが実行する本発明に関する処理を一般的なコンピュータに行なわせることは可能である。そのためには、今まで説明したメインサーバやホームサーバを構成する各構成要素によって行われる処理をコンピュータに行なわせるためのプログラムを作成し、作成したプログラムをコンピュータに実行させるようにする。
【０３５３】
図６０は、上述した本発明に関する処理を実行できる一般的なコンピュータの内部構成ブロックの例を示す図である。図６０に示すコンピュータには、このコンピュータ全体の動作をプログラムに基づいて制御する中央処理装置４０１、中央処理装置４０１によって実行されるプログラムや中央処理装置４０１によって演算処理されたデータなどを格納する半導体メモリやハードディスク装置などの記憶装置４０２、中央処理装置４０１によって処理されるプログラムやデータが入力されるキーボードや記憶媒体読取装置などや中央処理装置４０１による演算処理結果を出力するプリンタやディスプレイなどの入出力装置４０３、ネットワークを介して他のコンピュータなどの装置との間でデータの授受を行なう外部インターフェース装置４０４を有しており、各構成要素はシステムバス４０５を介して相互にデータの授受が可能である。
【０３５４】
ここで、図６０の例に示すようなコンピュータで、今まで説明したメインサーバやホームサーバの両者もしくはいずれかを構成する各構成要素によって行われる処理を実行させるためのプログラムは、コンピュータによって読み取り可能な記憶媒体に記憶させるようにする。そして、読み出されたプログラムは記憶装置４０２に格納させ、それを中央処理装置４０１に実行させるようにする。
【０３５５】
図６１は、上述したプログラムを記憶させるコンピュータによって読み取り可能な記憶媒体の例を示す図である。同図に示すように、ここで用いることの可能な記憶媒体の例としては、いわゆるＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、フロッピーディスク（登録商標）、ＭＯ（光磁気ディスク）などといったコンピュータ５００が備える記憶媒体読取装置で読み取り可能な可搬型記憶媒体５０１、コンピュータ５００内に備える半導体メモリやハードディスク装置などのメモリ５０２、あるいは、回線５０４を介してコンピュータ５００にプログラムを伝送することのできるプログラムサーバ５０５が備えている記憶装置５０３などがあり、これらのいずれであっても構わない。
【０３５６】
なお、前述した図６に示す本発明のワークフロー管理プログラム格納記憶媒体７４も、先に説明した以外に、図６１の例に示すような記憶媒体であっても良く、このワークフロー管理プログラム格納記憶媒体７４に格納されているプログラムを図６０の例に示すような一般的なコンピュータに読み出させて記憶装置４０２に格納し、それを中央処理装置４０１が実行するようにすれば、前述した本発明のワークフロー管理装置の各実施の形態における各構成要素が行なう処理と同様の処理をコンピュータに行なわせることが可能である。
【図面の簡単な説明】
【０３５７】
【図１】本発明の第一の基本構成を示す図である。
【図２】本発明の第二の基本構成を示す図である。
【図３】本発明のワークフロー管理装置の実施の形態１のシステム構成図である。
【図４】本発明の作業情報管理テーブルの例を示す図である。
【図５】本発明のワークフローエンジン管理テーブルとワークアイテムの例を示す図である。
【図６】本発明のワークフロー管理プログラム格納記憶媒体を示す図である。
【図７】本発明のワークフロー管理装置の実施の形態１のワークフローエンジン管理装置のフローチャートである。
【図８】本発明のワークフロー管理装置の実施の形態１のワークフローエンジン用通信管理装置のフローチャートである。
【図９】本発明のワークフロー管理装置の実施の形態１のユーザシステム用通信管理装置のフローチャートである。
【図１０】本発明のワークフロー管理装置の実施の形態２のシステム構成図である。
【図１１】本発明のワークフロー管理装置の実施の形態２のワークフローエンジン管理装置のフローチャートである。
【図１２】本発明のワークフロー管理装置の実施の形態３のシステム構成図である。
【図１３】本発明のワークフロー管理装置の実施の形態４のシステム構成図である。
【図１４】本発明のワークフロー管理装置の実施の形態４のワークフローエンジン管理装置のフローチャートである。
【図１５】本発明のワークフロー管理装置の実施の形態４の異常状態検出装置のフローチャートである。
【図１６】本発明のワークフロー管理装置の実施の形態４のワークフローエンジンのフローチャートである。
【図１７】本発明のワークフロー管理装置の実施の形態５のシステム構成図である。
【図１８】本発明のワークフロー管理装置の実施の形態５のワークフローエンジン管理装置のフローチャートである。
【図１９】本発明のワークフロー管理システムの実施の形態１の全体構成図である。
【図２０】作業手順定義情報格納装置に格納されている作業手順の定義例を示す図である。
【図２１】作業情報格納装置に格納される作業情報の例を示す図である。
【図２２】ユーザ情報管理テーブルの例を示す図である。
【図２３】本発明のワークフロー管理システムの実施の形態１のワークフローエンジン管理装置のフローチャートである。
【図２４】本発明のワークフロー管理システムの実施の形態１のワークフローエンジン管理装置用通信管理装置のフローチャートである。
【図２５】本発明のワークフロー管理システムの実施の形態１のワークフローエンジンのフローチャートである。
【図２６】本発明のワークフロー管理システムの実施の形態１のワークフローエンジン用通信管理装置のフローチャートである。
【図２７】図１９のワークフロー管理システムで用いられるホームサーバの形態１のシステム構成図である。
【図２８】ワークアイテム管理装置に格納されているワークアイテムの例を示す図である。
【図２９】ホームサーバの形態１のホームサーバ制御装置のフローチャートである。
【図３０】図２９に示されている新規ユーザ接続処理のフローチャートである。
【図３１】図２９に示されている新規作業プロセス生成処理のフローチャートである。
【図３２】図２９に示されているワークアイテム追加処理のフローチャートである。
【図３３】図２９に示されている作業アクティビティ終了時処理のフローチャートである。
【図３４】ホームサーバの形態１のホームサーバ用通信管理装置のフローチャートである。
【図３５】ホームサーバの形態１のユーザシステム生成装置のフローチャートである。
【図３６】ホームサーバの形態１の接続管理装置のフローチャートである。
【図３７】図１９のワークフロー管理システムで用いられるホームサーバの形態２のシステム構成図である。
【図３８】作業排他制御テーブルの例を示す図である。
【図３９】ホームサーバの形態２の作業排他制御装置のフローチャートである。
【図４０】ホームサーバの形態２のホームサーバ制御装置のフローチャートである。
【図４１】図４０に示されている作業アクティビティ処理開始時処理のフローチャートである。
【図４２】図４０に示されている作業アクティビティ終了時処理のフローチャートである。
【図４３】図１９のワークフロー管理システムで用いられるホームサーバの形態３のシステム構成図である。
【図４４】ホームサーバの形態３の起票処理装置のフローチャートである。
【図４５】ホームサーバの形態３のホームサーバ制御装置によって行われる新規作業プロセス生成処理のフローチャートである。
【図４６】図４３に示すホームサーバの形態３を本発明のワークフロー管理システムの実施の形態１に用いるときのワークフローエンジンのフローチャートである。
【図４７】図１９のワークフロー管理システムで用いられるホームサーバの形態４のシステム構成図である。
【図４８】ホームサーバの形態４の次作業アクティビティ検出装置のフローチャートである。
【図４９】ホームサーバの形態４のホームサーバ制御装置によって行われる作業アクティビティ終了時処理のフローチャートである。
【図５０】図４７に示すホームサーバの形態４を本発明のワークフロー管理システムの実施の形態１に用いるときのワークフローエンジンのフローチャートである。
【図５１】本発明のワークフロー管理システムの実施の形態２の全体構成図である。
【図５２】図５１のワークフロー管理システムで用いられるホームサーバのシステム構成図である。
【図５３】作業履歴管理装置に格納されている履歴情報の例を示す図である。
【図５４】本発明のワークフロー管理システムの実施の形態２の作業履歴検索装置のフローチャートである。
【図５５】本発明のワークフロー管理システムの実施の形態２のワークフローエンジン管理装置用通信管理装置のフローチャートである。
【図５６】図５２に示すホームサーバのホームサーバ用通信管理装置のフローチャートである。
【図５７】図５２に示すホームサーバのホームサーバ制御装置のフローチャートである。
【図５８】図５７に示されている作業アクティビティ終了時処理のフローチャートである。
【図５９】図５７に示されている作業履歴検索処理のフローチャートである。
【図６０】一般的なコンピュータの内部構成ブロックの例を示す図である。
【図６１】コンピュータによって読み取り可能な記憶媒体の例を示す図である。
【図６２】従来のワークフロー管理システムの構成例を示す図である。
【図６３】従来のワークフロー管理システムの動作を説明する図である。
【符号の説明】
【０３５８】
Ｗ  ワークフロー管理装置
１、１００１  ワークフロー支援手段Ａ
２  作業手順定義格納装置Ａ
３  作業手順定義
４  作業情報格納装置Ａ
１１、１０１１  ワークフロー支援手段Ｂ
１２  作業手順定義格納装置Ｂ
１３  作業手順定義
１４  作業情報格納装置Ｂ
２０  ワークフロー支援手段管理装置
２１  作業管理情報保持部
３１、１１１１  ユーザシステムＡ
３２、１１１２  ユーザシステムＢ
３３、１１１３  ユーザシステムＣ
１０００  メインサーバ
１００２  作業手順定義格納手段Ａ
１００３  第一作業情報格納手段Ａ
１０１２  作業手順定義格納手段Ｂ
１０１３  第一作業情報格納手段Ｂ
１０２１  ユーザ情報管理手段
１０２２  ワークフロー支援手段管理手段
１１００  ホームサーバＡ
１１０１  第二作業情報格納手段
１１０２  作業情報提供手段
１１０３  作業処理情報送出手段
１２００  ホームサーバＢ
１２１１  ユーザシステムＤ
１２１２  ユーザシステムＥ
１２１３  ユーザシステムＦ
【図１】
2006202334.tif 000003
【図２】
2006202334.tif 000004
【図３】
2006202334.tif 000005
【図４】
2006202334.tif 000006
【図５】
2006202334.tif 000007
【図６】
2006202334.tif 000008
【図７】
2006202334.tif 000009
【図８】
2006202334.tif 000010
【図９】
2006202334.tif 000011
【図１０】
2006202334.tif 000012
【図１１】
2006202334.tif 000013
【図１２】
2006202334.tif 000014
【図１３】
2006202334.tif 000015
【図１４】
2006202334.tif 000016
【図１５】
2006202334.tif 000017
【図１６】
2006202334.tif 000018
【図１７】
2006202334.tif 000019
【図１８】
2006202334.tif 000020
【図１９】
2006202334.tif 000021
【図２０】
2006202334.tif 000022
【図２１】
2006202334.tif 000023
【図２２】
2006202334.tif 000024
【図２３】
2006202334.tif 000025
【図２４】
2006202334.tif 000026
【図２５】
2006202334.tif 000027
【図２６】
2006202334.tif 000028
【図２７】
2006202334.tif 000029
【図２８】
2006202334.tif 000030
【図２９】
2006202334.tif 000031
【図３０】
2006202334.tif 000032
【図３１】
2006202334.tif 000033
【図３２】
2006202334.tif 000034
【図３３】
2006202334.tif 000035
【図３４】
2006202334.tif 000036
【図３５】
2006202334.tif 000037
【図３６】
2006202334.tif 000038
【図３７】
2006202334.tif 000039
【図３８】
2006202334.tif 000040
【図３９】
2006202334.tif 000041
【図４０】
2006202334.tif 000042
【図４１】
2006202334.tif 000043
【図４２】
2006202334.tif 000044
【図４３】
2006202334.tif 000045
【図４４】
2006202334.tif 000046
【図４５】
2006202334.tif 000047
【図４６】
2006202334.tif 000048
【図４７】
2006202334.tif 000049
【図４８】
2006202334.tif 000050
【図４９】
2006202334.tif 000051
【図５０】
2006202334.tif 000052
【図５１】
2006202334.tif 000053
【図５２】
2006202334.tif 000054
【図５３】
2006202334.tif 000055
【図５４】
2006202334.tif 000056
【図５５】
2006202334.tif 000057
【図５６】
2006202334.tif 000058
【図５７】
2006202334.tif 000059
【図５８】
2006202334.tif 000060
【図５９】
2006202334.tif 000061
【図６０】
2006202334.tif 000062
【図６１】
2006202334.tif 000063
【図６２】
2006202334.tif 000064
【図６３】
2006202334.tif 000065