[go: up one dir, main page]

JP2004030636A - Workflow management system and computer-readable storage medium - Google Patents

Workflow management system and computer-readable storage medium Download PDF

Info

Publication number
JP2004030636A
JP2004030636A JP2003145741A JP2003145741A JP2004030636A JP 2004030636 A JP2004030636 A JP 2004030636A JP 2003145741 A JP2003145741 A JP 2003145741A JP 2003145741 A JP2003145741 A JP 2003145741A JP 2004030636 A JP2004030636 A JP 2004030636A
Authority
JP
Japan
Prior art keywords
work
information
user
home server
workflow
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003145741A
Other languages
Japanese (ja)
Inventor
Nobuyuki Kanetani
金谷 延幸
Hirotaka Hara
原 裕貴
Hiroyuki Akamatsu
赤松 弘之
Takeshi Ehata
江幡 剛
Junji Ikeda
池田 淳二
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2003145741A priority Critical patent/JP2004030636A/en
Publication of JP2004030636A publication Critical patent/JP2004030636A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • General Factory Administration (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】ワークフロー管理装置およびそのプログラムを格納した記憶媒体に関し、管理する作業量が増加しても、ワークフローの管理が速く、効率よく行なえるワークフロー管理システムを提供することを目的とする。
【解決手段】作業手順の定義を格納する作業手順定義格納装置と、作業情報を格納する作業情報格納装置と、ユーザの入力した作業の処理についての情報に基づいて作業手順定義格納装置と作業情報格納装置を参照して作業情報を作成し、他のユーザに作業情報を廻送するワークフロー支援手段とを備え、ユーザの作業の処理を支援するワークフロー管理装置において、作業情報を生成する複数のワークフロー支援手段と、各ワークフロー支援手段に備えられた該作業手順定義格納装置と該作業情報格納装置と、各ワークフロー支援手段の負荷ができるだけ均等になるようにワークフロー支援手段を選択する構成をもつ。
【選択図】   図1
An object of the present invention is to provide a workflow management system and a storage medium storing a program thereof, which can provide a workflow management system capable of performing workflow management quickly and efficiently even when the amount of work to be managed increases.
A work procedure definition storage device for storing a definition of a work procedure, a work information storage device for storing work information, and a work procedure definition storage device and work information based on information on processing of work input by a user. A workflow management unit that creates work information with reference to a storage device and forwards the work information to another user; and a workflow management device that supports user's work processing. Support means, the work procedure definition storage device and the work information storage device provided in each workflow support means, and a configuration for selecting the workflow support means so that the load on each workflow support means is as equal as possible.
[Selection diagram] Fig. 1

Description

【0001】
【発明の属する技術分野】
本発明は、予め定義された作業手順(ワークフロー)に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援する装置及びシステム、並びに、コンピュータに実行させることにより該作業管理及び該作業遂行支援を該コンピュータに行なわせるプログラムを記憶する記憶媒体に関する。
【0002】
【従来の技術】
予め定義された一連の作業の作業手順(ワークフロー)に基づき、例えば個々の作業に関する担当者や作業期限などの作業遂行に必要な情報を管理し、複数のユーザ間においてのその一連の作業の遂行を支援するシステムがあり、ワークフロー管理システムと呼ばれている。従来のワークフロー管理システムの構成例を図62に示す。
【0003】
図62において、サーバ111には、ワークフローの管理を行なうワークフローエンジン112が備えられている。
作業手順定義情報格納装置121は、ワークフローエンジン112で管理する一連の作業の作業手順を保持するものであり、作業手順が作業プロセス(例えば、製造管理、人事管理などの、一連の作業のこと)毎に格納されている。例えば、作業プロセスが製造管理である場合には、作業手順定義情報格納装置121には、発注伝票の発行作業、製品仕様などの製造管理情報の発行作業、製造指示を行なう伝票の発行作業、等の作業手順が格納される。これらの各作業のように、作業プロセスの各作業手順を構成する作業を、作業アクティビティという。
【0004】
作業情報格納装置122は、作成された帳票や、作業中の作業プロセスの作業手順を保持するものであり、例えば、各作業の担当者、作業指示、作業の期限、作業の履歴、などの作業情報が格納される。
【0005】
作業用データベース123は、製造管理のための製品仕様データベースであり、サーバ111の有する一般的なデータベースである。
クライアントA141は、この例では会社の営業部に備えられるものとする。
【0006】
クライアントB142は、この例では会社の製造管理部に備えられるものとする。
クライアントC143は、この例では会社の製造部に備えられるものとする。
【0007】
図63は、図62に示す従来のワークフロー管理装置の動作を説明する図である。
図63では、製造管理のワークフローを例として示すものである。このワークフローでは、まず、顧客から製品の依頼を受けた営業部が製造管理部にその製品の製造依頼の帳票を発行し、そして、その帳票を受け取った製造管理部は製造部に対して製造依頼を行ない、製造部はその製造依頼を受け取るものとする。
【0008】
ワークフローエンジン112は、各クライアント間の作業アクティビティ廻送処理114と、作業プロセスの進捗に基づく次作業アクティビティ決定処理115と、を実行する。
【0009】
作業手順定義情報格納装置121には、製造管理のワークフローを示すテーブル121’が格納されている。
作業用データベース123には、製造依頼を行なう製品の製品仕様A130を含む、製造部で製造可能な各種の製品の製品仕様がデータベース化されて格納されており、更に、この会社の各部門間で授受される各種の帳票のフォーム(様式)も格納されている。なお、帳票フォームは、各クライアントのユーザシステムにおいて新規に作成して使用することも可能である。
【0010】
作業情報格納装置122に格納されている作業情報126は、この例では、作業プロセスをユーザシステムで処理する上で必要な情報(発注作業情報001、発注担当者は営業部のA、製造依頼担当者は製品管理部のB、製造担当者は製造部のC、生産期限は99年12月11日)、発注伝票127、製造依頼伝票128、製品仕様書A129を有している。
【0011】
発注伝票127は、クライアントA141において営業部の担当者Aによって作成されたものである。
製造依頼伝票128は、クライアントB142において製造管理部の担当者Bによって作成されたものである。
【0012】
製品仕様書A129は、作業用データベース123に格納されている各種製品の製品仕様に基づいてクライアントB142において作成された製造依頼する製品の仕様書である。
【0013】
発注伝票151は、営業部の担当者Aが、クライアントA141において、所定の帳票フォームの項目にデータを入力することにより作成されたものである。
発注作業項目情報152は、クライアントB142において、発注伝票151を受け取ることによって得られるものである。
【0014】
製造依頼伝票153は、製品管理部の担当者Bが、クライアントB142において、所定の帳票フォームの項目にデータを入力することにより作成されたものである。
【0015】
製品仕様書A154は、作業用データベース123に格納されている各種製品の製品仕様に基づいて作成される、製造依頼する製品の仕様書であり、クライアントB142において作成され、製造依頼伝票153に添付されて廻送されるものである。
【0016】
製造依頼伝票155は、クライアントB142より廻送された製造依頼伝票153を、製造部に備えられているクライアントC143において受け取ったものである。
【0017】
製品仕様書A156は、製造依頼伝票155に添付されていたものであり、製造依頼伝票153と共にクライアントB142より廻送されたものである。
図63の動作を説明する。
【0018】
クライアントA141において、営業部の担当者Aは、クライアントA141に備えられている入力ツールを使用して発注伝票151を作成する。この作成作業を終了すると、ワークフローエンジン112は、作業情報126を作成し、作業手順定義情報格納装置121に格納されているテーブル121’を参照し、そこに示されている作業手順に基づき、発注伝票151をクライアントB142に廻送する。なお、この時点においては、作業情報126には、製造依頼伝票128及び製品仕様書A129は含まれていない。
【0019】
クライアントB142において、製造管理部の担当者Bは、廻送されてきた製造依頼伝票151より得られる発注作業項目情報152を基にして、クライアントB142に備えられている入力ツールを使用して製造依頼伝票153を作成する。更に、作業用データベース123に格納されている製造依頼を行なう製品の製品仕様A130を基にして製品仕様書A154を作成し、製造依頼伝票153に添付し、製造依頼作業を終了する。
【0020】
クライアントB142での製造依頼作業の終了により、ワークフローエンジン112は、作業情報格納装置122に格納されている作業情報126を更新し、製造依頼伝票128と製品仕様書A129を付加する。そして、作業手順定義情報格納装置121に格納されているテーブル121’を参照し、そこに示されている作業手順に基づき、製造依頼伝票153と製品仕様書A154とをクライアントC143に廻送する。
【0021】
クライアントC143において、製造依頼伝票155と製品仕様書A156とが出力されると、製造部の担当者Cはそれらを確認し、製造管理作業プロセス全体の完了をワークフローエンジン112に通知する。
【0022】
クライアントC143からの製造管理作業プロセス完了通知を受け取ることにより、ワークフローエンジン112は、発注伝票151に基づく一連の処理を終了する。
【0023】
【発明が解決しようとする課題】
従来のワークフロー管理システムは前述したように動作するので、廻送処理を行なう度に作業手順定義情報格納装置121と作業情報格納装置122とへのアクセスが発生する。従って、管理する作業量が増加すると、作業手順定義情報格納装置121と作業情報格納装置122とへの多数のアクセスが集中するため、廻送速度が極端に低下し、能率の低下を招いてしまう問題を有していた。
【0024】
本発明が解決しようとする課題は、管理する作業量が増加しても、ワークフローの管理が速く、能率よく行なえるワークフロー管理システムを提供することである。
【0025】
【課題を解決するための手段】
前述の課題を解決するために、本発明のうちの第一の発明では、複数のワークフロー支援手段(前述のワークフローエンジンに相当する)及びワークフロー支援手段管理装置を備えるようにし、ワークフロー支援手段管理装置が各ワークフローの管理を担当するワークフロー支援手段を決定するようにした。その際、特定のワークフロー支援手段に負担が集中しないようにするために、作業プロセス生成処理時に各ワークフロー支援手段の負荷状況を記録すると共に、その負荷情報を参照し、どのワークフロー支援手段にワークフロー管理をさせるかを決定するようにした。
【0026】
そして、各ワークフローエンジンが作業手順定義情報格納装置と作業情報格納装置とを備えるようにし、作業手順定義情報格納装置のもつ情報の中で、各作業アクティビティで必要となる作業情報(例えば、次の作業アクティビティなど)を指定するようにした。また、ワークフロー支援手段は、各作業アクティビティで必要な作業情報だけを廻送するようにした。
【0027】
また、本発明のうちの第二の発明では、メインサーバとホームサーバとでワークフローを管理するシステムを構成するようにした。
そして、メインサーバには、作業手順定義格納手段と作業情報格納手段とを備えるワークフロー支援手段を備えるようにして、ワークフロー支援手段による作業情報の廻送は、その作業情報の廻送先であるユーザが属するホームサーバへ廻送するようにした。
【0028】
また、ホームサーバには、メインサーバから送られてくる作業情報を格納する格納手段を有し、このホームサーバに属するユーザからの要求に応じて、ユーザ毎の作業情報を個別に提供するようにした。
【0029】
以下の説明において、新規作業プロセス生成、もしくは作業プロセスの生成、とは、ユーザが新たな作業プロセスを依頼するときに、作業プロセスの種類を指定し、作業プロセスの処理に必要な情報(担当者、期限など)を入力した後に作業プロセスを起動する処理である。
【0030】
また、ワークフロー支援手段(ワークフローエンジン)による作業アクティビティの廻送とは、作業プロセスが生成された後に、指定された作業プロセスの作業手順定義と入力された作業情報とに基づいて、ワークフロー支援手段(ワークフローエンジン)が、個々の作業アクティビティに必要な情報を、個々の作業アクティビティの担当者に対応しているユーザシステムへ転送する処理である。このときの作業指示等の、個々の作業アクティビティの処理に必要な情報を、作業情報の中でも特にワークアイテム(作業項目情報)と呼ぶ。このワークアイテムには、行なうべき作業アクティビティの内容、その作業アクティビティに必要な文書、作業アクティビティの処理時に起動するツール(例えば、ワードプロセッサなど)等の各種情報が含まれている。
【0031】
また、作業アクティビティ終了処理とは、ユーザシステムである作業アクティビティの処理が終了したときに作業アクティビティ終了状態をワークフロー支援手段に通知する処理である。なお、作業アクティビティ終了状態とは、作業アクティビティの処理終了と、例えば承認や却下などの、作業アクティビティの処理内容の結論的な情報と、を送信する状態である。
【0032】
また、ワークフロー支援手段による次作業アクティビティの決定及び廻送とは、作業アクティビティ終了状態と、作業手順定義情報と、終了状態となった作業アクティビティと、から次の作業アクティビティを決定し、それを作業情報に反映した後に、次の作業アクティビティの担当者に新たなワークアイテムを転送する処理であり、単に廻送処理とも呼ぶ。
【0033】
本発明の第一の基本構成では、作業手順の定義を格納する作業手順定義格納装置と、作業情報を格納する作業情報格納装置と、ユーザの入力した作業についての情報に基づいて作業手順定義格納装置と作業情報格納装置を参照して作業情報を作成し、他のユーザに作業情報を廻送するワークフロー支援手段とを備え、ユーザの作業を支援するワークフロー管理装置において、作業情報を生成する複数のワークフロー支援手段と、各ワークフロー支援手段に備えられた該作業手順定義格納装置と該作業情報格納装置と、各ワークフロー支援手段の負荷ができるだけ均等になるようにワークフロー支援手段を選択するワークフロー支援手段管理装置とを備えるようにした。
【0034】
図1は本発明の第一の基本構成を示す図である。
図1において、まず、ワークフロー管理装置Wの内部構成を説明する。
ワークフロー支援手段A1には、作業手順定義格納装置A2が接続されており、作業手順定義3が格納される。
【0035】
作業手順定義3には、作業種類別(作業プロセス別)の作業工程の手順が定義されている。
また、ワークフロー支援手段A1には、作業情報格納装置A4が更に接続されており、ワークフロー支援手段A1で管理中の作業プロセスの担当者、各作業アクティビティの内容、期限、作業アクティビティの履歴、などの作業情報が格納されている。
【0036】
ワークフロー支援手段B11には、作業手順定義格納装置B12が接続されており、作業手順定義13が格納されている。
また、ワークフロー支援手段B11には、作業情報格納装置B14が更に接続されており、ワークフロー支援手段B11で管理中の作業プロセスの作業情報が格納されている。
【0037】
ワークフロー支援手段管理装置20は、ワークフロー支援手段A1及びワークフロー支援手段B11の負荷状況をワークフロー支援手段情報保持部22に記録すると共に、ワークフロー支援手段情報保持部22に記録されている負荷状況を参照して新規作業プロセスが生じたときにその管理をさせるワークフロー支援手段を決定するものである。
【0038】
ワークフロー支援手段管理装置20に備えられている作業管理情報保持部21は、作業プロセスが発生する毎に、作業プロセスの種類、その作業プロセスの作業手順、担当者毎の作業アクティビティ、その作業アクティビティの処理に必要な作業定義、などを保持するものである。
【0039】
ワークフロー支援手段情報保持部22は、ワークフロー支援手段A及びB(1、11)の負荷状況などの状態を記録するものである。
また、図1において、ワークフロー管理装置Wには、ユーザシステムA31、ユーザシステムB32、ユーザシステムC33がそれぞれ接続されている。
【0040】
図1の構成において、作業プロセスの最初として、ユーザシステムA31、ユーザシステムB32、またはユーザシステムC33で、他のユーザシステムに対してワークアイテム(作業内容、作業担当者など)を提示する帳票などが作成され、その作成処理が終了したときに、その作成処理の終了状態がワークフロー支援手段管理装置20に返される。なお、このとき、作業プロセス発生時の処理として、その作業プロセスの進行状態、作業手順、担当者、などの作業管理情報が生成され、作業管理情報保持部21に記録される。
【0041】
ワークフロー支援手段管理装置20は、新規作業プロセスの生成要求がユーザシステム(31、32、33)より到着すると、ワークフロー支援手段情報保持部22を参照し、各ワークフロー支援手段の負荷状況などをもとに、どのワークフロー支援手段(1、11)にその作業プロセスの管理を行なわせるかを決定する。ワークフロー支援手段管理装置20は、必要ならば新たなワークフロー支援手段を起動する。あるいは、ワークフロー支援手段管理装置20は、ユーザシステムから作業アクティビティの終了状態(作業アクティビティの処理終了と、例えば承認や却下などの、作業アクティビティの処理内容の結論)についての情報が送られてきたときには、ワークフロー支援手段情報保持部22を参照して対応する作業プロセスを管理するワークフロー支援手段(1、11)を求め、作業アクティビティ終了状態についての情報を渡す。
【0042】
さらに、ワークフロー支援手段(1、11)は、作業手順定義格納装置(2、12)を参照し、次作業アクティビティの決定と作業アクティビティの廻送とを行なう。作業アクティビティの廻送の際には、作業管理情報をもとに作業情報を作成し、作業管理情報保持部21の内容を更新すると共に、ワークアイテムを生成してワークフロー支援手段管理装置20を介してユーザシステム(31、32、33)にそのワークアイテムを送る。
【0043】
本発明の第一の基本構成によれば、特定のワークフロー支援手段に負荷が集中することがなく、各ワークフロー支援手段の負荷状態を常に平均化することができる。そのため、作業手順定義格納装置と作業情報格納装置にアクセスが集中することがなく、管理する作業量が増えても廻送速度が遅くなることがない。
【0044】
また、本発明の第二の基本構成では、予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援するワークフロー管理システムにおいて、メインサーバと、前記ユーザが属するホームサーバと、で構成され、前記メインサーバは、前記作業手順の定義を格納する作業手順定義格納手段と、前記一連の作業の遂行に必要な作業情報を格納する第一作業情報格納手段と、前記ユーザが属するホームサーバを示すユーザ情報を管理するユーザ情報管理手段と、前記作業手順定義格納手段に格納されている作業手順と、前記第一作業情報格納手段に格納されている作業情報と、前記ホームサーバより送られてくる該ホームサーバに属するユーザにより行われた作業についての処理情報と、に基づいて該作業手順における次の作業についての作業情報を生成し、前記ユーザ情報管理手段に格納されているユーザ情報に基づいて該次作業を担当するユーザの属するホームサーバに該次作業についての作業情報を廻送するワークフロー支援手段と、を有し、前記ホームサーバは、前記メインサーバより廻送されてきた作業情報を格納する第二作業情報格納手段と、前記第二作業情報格納手段に格納されている前記ユーザが担当である作業についての作業情報を該ユーザ別に提供する作業情報提供手段と、前記ユーザにより行われた前記作業についての処理情報を前記メインサーバに送出する作業処理情報送出手段と、を有するようにした。
【0045】
図2は本発明の第二の基本構成を示す図である。
同図に示す本発明のワークフロー管理システムの基本構成では、メインサーバ1000と、2つのホームサーバ(1100、1200)とが示されている。
【0046】
図2において、まず、メインサーバ1000の内部構成について説明する。
メインサーバ1000は、2つのワークフロー支援手段(1001、1011)を有しており、ワークフロー支援手段A1001は作業手順定義格納手段A1002及び第一作業情報格納手段A1003を、また、ワークフロー支援手段B1011は作業手順定義格納手段B1012及び第一作業情報格納手段B1013を、それぞれ有している。なお、メインサーバ1000が有する作業手順定義格納手段及び第一作業情報格納手段を個々に有するワークフロー支援手段の数は2つに限定されるものではなく、1つのみの構成、あるいは、3つ以上の構成とすることも可能である。
【0047】
ワークフロー支援手段A1001とワークフロー支援手段B1011、作業手順定義格納手段A1002と作業手順定義格納手段B1012、第一作業情報格納手段A1003と第一作業情報格納手段B1013、はそれぞれ同様の機能を有しており、ここではその一方についてのみ説明する。
【0048】
作業手順定義格納手段A1002は、予め定義された一連の作業である作業プロセスの作業手順を作業種類別に格納するものである。
第一作業情報格納手段A1003は、予め定義された作業プロセスの遂行に必要な各作業工程の担当者、作業指示、期限、作業の履歴、などの作業情報を格納するものである。
【0049】
ユーザ情報管理手段1021は、予め定義された作業プロセスを構成する各作業アクティビティを担当するユーザが属しているホームサーバを示すユーザ情報を格納し、管理しているものである。なお、図2においてユーザ情報管理手段1021は、メインサーバ1000内に1つ有し、2つのワークフロー支援手段(1001、1011)で共用するように示されているが、同一のユーザ情報を有するユーザ情報管理手段を各ワークフロー支援手段ごとに備えるようにする構成としてもよい。
【0050】
ワークフロー支援手段A1001は、作業手順定義格納手段A1002に格納されている作業手順と、第一作業情報格納手段A1003に格納されている作業情報と、ユーザ情報管理手段1021に格納されているユーザ情報と、ホームサーバより送られてくるそのホームサーバに属するユーザにより行われた担当作業アクティビティの処理結果として得られる処理情報と、に基づいて、その作業プロセスにおける次の作業アクティビティについての作業情報を生成し、このうち、その作業アクティビティの処理に必要な作業情報であるワークアイテムを、この作業アクティビティを担当するユーザの属するホームサーバに廻送するものである。
【0051】
ワークフロー支援手段管理手段1022は、2つのワークフロー支援手段(1001、1011)のそれぞれに行わせる処理の負荷が均等になるようにワークフロー支援手段を管理するものである。なお、ワークフロー支援手段管理手段1022は、メインサーバ1000をワークフロー支援手段1つのみで構成する場合には不要である。
【0052】
次に、図2に示す2つのホームサーバ(1100、1200)の構成について説明する。
ホームサーバA1100とホームサーバB1200とは同様の内部構成を有している。なお、ホームサーバの台数は2台に限定されるものではなく、1台のみ、あるいは、3台以上の構成とすることも可能であり、その場合の各ホームサーバの内部構成も同様の構成でよい。
【0053】
ホームサーバA1100は3つのユーザシステム(1111、1112、1113)を有しており、また、ホームサーバB1200も3つのユーザシステム(1211、1212、1213)を有している。なお、各ホームサーバが有するユーザシステムの個数は3台に限定されるものではなく、任意でよい。
【0054】
前述したように、ホームサーバA1100とホームサーバB1200とは同様の内部構成を有している。そこで、ここではホームサーバA1100の内部構成についてのみ説明する。
【0055】
ホームサーバA1100は、第二作業情報格納手段1101、作業情報提供手段1102、作業処理情報送出手段1103を有している。
第二作業情報格納手段1101は、メインサーバ1000のワークフロー支援手段A1001またはワークフロー支援手段B1011より廻送されてきたワークアイテムを格納するものである。
【0056】
作業情報提供手段1102は、ホームサーバA1100の有するユーザシステム(1111、1112、1113)のいずれかを操作する、ホームサーバA1100に属しているユーザからの要求に応じて、第二作業情報格納手段1101に格納されている、そのユーザが担当である作業アクティビティについてのワークアイテムを、ユーザが操作するユーザシステムを介してそのユーザに提供するものである。
【0057】
作業処理情報送出手段1103は、作業情報提供手段1102によりユーザに提供された作業情報に基づいてユーザにより行われた担当作業アクティビティについての処理結果を示す処理情報をメインサーバ1000に送出するものである。
【0058】
図2の構成において、例えば、ホームサーバA1100の有するユーザシステムA1111において、作業プロセスの最初として、他のユーザシステムに対してワークアイテムを提示する帳票などが作成されたとする。その作成処理が終了したときに、その情報がホームサーバA1100の作業処理情報送出手段1103によってメインサーバ1000に送出される。
【0059】
メインサーバ1000では、ホームサーバA1100より新規作業プロセスの生成要求が到着すると、ワークフロー支援手段管理手段1022が、各ワークフロー支援手段の負荷状況などをもとに、どのワークフロー支援手段(1001、1011)にその作業プロセスを管理させるかを決定する。ここでは、ワークフロー支援手段A1001に作業プロセスを管理させる決定がなされたものとする。
【0060】
ワークフロー支援手段A1001は、作業手順定義格納手段A1002に格納されている作業手順と、作業情報格納手段A1003に格納されている作業情報と、ユーザ情報管理手段1021に格納されているユーザ情報と、ホームサーバA1100より送られてくるユーザシステムA1111を操作するユーザにより行われた処理情報と、に基づいて、次の作業手順の作業アクティビティについての作業情報を作成し、その中で作業アクティビティの処理に必要なものをワークアイテムとして次作業アクティビティを担当するユーザが属するホームサーバに廻送する。ここでは、ホームサーバA1100にワークアイテムが廻送されたものとする。
【0061】
ホームサーバA1100では、まず、この廻送されてきたワークアイテムを第二作業情報格納手段1101に格納する。その後、廻送されてきたワークアイテムに対応する作業アクティビティの担当であるユーザが、例えば、ユーザシステムB1112を操作することにより、作業情報提供手段1102を介してこのユーザが担当である作業アクティビティについてのワークアイテムが第二作業情報格納手段1101から取り出され、ユーザシステムB1112に与えられる。ユーザは、与えられたワークアイテムをもとにこの作業を処理し、その作業アクティビティの処理が終了したときに、その作業アクティビティの終了状態についての情報がホームサーバA1100の作業処理情報送出手段1103によってメインサーバ1000に送出される。
【0062】
以上の処理が繰り返されることによって、一連の作業である作業プロセスの管理が行なわれる。
本発明の第二の基本構成によれば、ユーザの属するホームサーバが有するどのユーザシステムによっても、そのユーザは自分の担当作業アクティビティの処理を行なうことができるようになる。
【0063】
なお、本発明の第二の基本構成における、メインサーバ及びホームサーバの単体も、本発明に関係する発明である。
【0064】
【発明の実施の形態】
以下、本発明の第一の基本構成を有するワークフロー管理装置についての実施の各形態では、ワークフロー支援手段はワークフローエンジン、ワークフロー支援手段管理装置はワークフローエンジン管理装置、ワークフロー支援手段情報保持部はワークフローエンジン管理テーブル、作業管理情報保持部は作業情報管理テーブル、として説明する。
【0065】
図3は、本発明のワークフロー管理装置の実施の形態1のシステム構成図である。
図3におけるサーバSの内部構成を説明する。
【0066】
ワークフローエンジン管理装置40は、作業情報管理テーブル41を有している。
また、ワークフローエンジン管理装置40には、ワークフローエンジンA42、ワークフローエンジンB43、通信管理装置45が接続されている。
【0067】
通信管理装置45は、ワークフローエンジン用通信管理装置46、ユーザシステム用通信管理装置A47、ユーザシステム用通信管理装置B48、ユーザシステム用通信管理装置C49を有している。
【0068】
ワークフローエンジン用通信管理装置46は、次作業アクティビティの次の作業アクティビティ情報付加手段46’を有しており、これは、ワークアイテムが今回予定している作業アクティビティの次の作業アクティビティの送付先を当該ワークアイテムに付加するものである。
【0069】
各ユーザシステム用通信管理装置は、サーバSに接続される各ユーザシステムとの通信管理を行なうものであり、それぞれ、ユーザシステム用通信管理装置A47はユーザシステムA(クライアント1)71の、ユーザシステム用通信管理装置B48はユーザシステムB(クライアント2)72の、ユーザシステム用通信管理装置C49はユーザシステムC(クライアント3)73の、通信管理を行なう。
【0070】
ワークフローエンジン管理装置40には、ワークフローエンジン管理テーブル50、作業手順定義情報格納装置C63、が更に接続されている。
ワークフローエンジン管理テーブル50は、各ワークフローエンジン(42、43)の負荷状況等の状態を記録するものである。
【0071】
作業手順定義情報格納装置C63は、ワークフローエンジン管理装置40についての作業手順定義格納装置である。
ワークフローエンジンA42には、作業手順定義情報格納装置A61、作業情報格納装置A64、が接続されている。
【0072】
作業手順定義情報格納装置A61は、ワークフローエンジンA42についての作業手順定義格納装置である。
作業情報格納装置A64は、ワークフローエンジンA42についての作業情報格納装置であり、ワークフローエンジンA42の管理する作業プロセスについての作業情報を格納するものである。
【0073】
ワークフローエンジンB43には、作業手順定義情報格納装置B62、作業情報格納装置B65、が接続されている。
作業手順定義情報格納装置B62は、ワークフローエンジンB43についての作業手順定義格納装置である。
【0074】
作業情報格納装置B65は、ワークフローエンジンB43についての作業情報格納装置であり、ワークフローエンジンB43の管理する作業プロセスについての作業情報を格納するものである。
【0075】
ワークフローエンジンA42及びワークフローエンジンB43には、更に一般用データベース66が接続されており、どちらのワークフローエンジンからもデータアクセスが可能である。一般用データベース66には、ユーザが作業を行なう際に必要な各種のデータ(例えば、製造する製品の仕様、各種帳票のフォームなど)が格納されている。
【0076】
なお、図3においては、ワークフローエンジンは2つのみの構成としているが、3つ以上の構成としてもよい。
サーバSには、ユーザシステムA、B、C(71、72、73)が接続されている。これらは、ユーザに対してワークアイテムを提示して作業アクティビティの処理についての指示を与えると共に、作業アクティビティの終了状態をサーバSに返すためのものである。
【0077】
図3の構成において、ワークフローエンジン管理装置40では、作業手順定義情報格納装置C63に格納されている作業手順をもとに、作業情報管理テーブル41が生成される。そして、各ユーザシステム(71、72、73)から新規作業プロセス生成、または、作業アクティビティ終了の情報がワークフローエンジン管理装置40に届けられる度に作業手順定義情報格納装置C63及び作業情報管理テーブル41が参照され、次の作業アクティビティについてのワークアイテムが生成される。そして、作業情報管理テーブル41及び作業情報格納装置(64、65)の作業情報が更新される。
【0078】
通信管理装置45は、ワークフローエンジン管理装置40と各ユーザシステム(71、72、73)との間の通信制御を行ない、送られてきた情報を宛先の装置に配送するものである。例えば、ユーザシステムA71が作業プロセスを生成するとき、その生成要求は、ユーザシステム用通信管理装置A47、ワークフローエンジン用通信管理装置46、を介して、ワークフローエンジン管理装置40に渡される。
【0079】
ワークフローエンジン管理装置40は、ワークフローエンジン管理テーブル50を参照して、各ワークフローエンジンの負荷状態を調べ、作業プロセスを管理させるワークフローエンジンを決定する。例えば、ここで、ワークフローエンジンA42に管理を行なわせる決定を下したとする。
【0080】
指定されたワークフローエンジンA42は、作業手順定義情報格納装置A61、作業情報格納装置A64、を参照し、作業情報を生成すると共にその作業情報から得られる次の作業アクティビティについてのワークアイテムの送り先を決定する。そして、ワークフローエンジン管理装置40、ワークフローエンジン用通信管理装置46、を介して宛て先のユーザシステムのユーザシステム用通信管理装置にワークアイテムを送り、そのワークアイテムを受けたユーザシステム用通信管理装置は、対応するユーザシステムにワークアイテムを送る。この過程の途中で、ワークフローエンジン用通信管理装置46は、ワークアイテムのユーザ情報を参照し、今回の作業アクティビティの次の作業アクティビティについての送り先を判断し、ワークアイテムに付加する。
【0081】
また、上記において、指定されたワークフローエンジン(例えば、ワークフローエンジンA42とする)に接続されている格納装置が、管理すべき作業プロセスの作業手順や作業情報を保持していない場合には、その作業手順や作業情報を格納装置に有するワークフローエンジンB43から必要な作業手順や作業情報が送信される。そして、これらの情報をもとにして、ワークフローエンジンA42は作業情報等を生成し、ワークフローエンジン管理装置40に渡す。以降の動作は前述の場合と同様である。
【0082】
図4は、本発明の作業情報管理テーブルの例を示しており、発注、製造依頼、製造、の各工程を管理する場合のものである。
作業情報管理テーブルは、各作業アクティビティ(発注、製造依頼、製造など)の作業工程手順、及び、各作業アクティビティにおいて必要な情報(担当者、担当ワークフローエンジンなど)を保持する。
【0083】
図4において、作業IDは、作業プロセスが発生する毎に生成される通し番号である。作業ID毎の作業手順、手順名(作業アクティビティ名)、次作業アクティビティ、は、作業手順定義情報格納装置から取り寄せた作業手順定義情報に基づくものである。各作業IDの情報は、ユーザシステムからの最初の作業アクティビティの処理終了の報告により生成される。図4より、例えば、作業ID1は、ID0の担当者IDを有する者により行われた作業手順0(発注)の処理により生成されたものであり、図示のような作業手順、担当者、担当エンジンID(管理を担当するワークフローエンジンのID)をもつことがわかる。
【0084】
各ワークフローエンジン(42、43)はそれぞれの有する作業手順定義情報格納装置(61、62)に格納されている作業手順定義情報に従って、次作業アクティビティを決定し、作業アクティビティの廻送を行なう。この作業アクティビティの廻送の際には、作業手順定義に指定されている作業アクティビティの定義(発注、製造依頼、製造など)を参照してワークアイテムを生成し、ワークフローエンジン管理装置40を介してユーザシステム(71、72、73)に生成したワークアイテムを送る。
【0085】
図5は、本発明のワークフローエンジン管理テーブルとワークアイテムの例を示す図である。
図5(a)は、ワークフローエンジンが3つある場合のワークフローエンジン管理テーブルの例であり、ワークフローエンジン毎に、負荷数(負荷の大きさ)、状態(ワークフローエンジンの動作は正常か異常か)、作業中の作業プロセスの作業ID、を保持している。
【0086】
図5(b)は、ワークアイテムの例であり、作業ID、発信元ID、次作業アクティビティを担当するユーザのユーザシステム用通信管理装置のID、次作業アクティビティの次の作業アクティビティを担当するユーザのユーザシステム用通信管理装置のID、作業状態(作業履歴照会時などで、新規作業プロセス生成、作業アクティビティ終了、作業プロセス完了などの状態を通知する場合に使用)、手順名、作業アクティビティ担当者のID、その他の情報、をもつものである。また、同図には図示してはいないが、必要に応じて、手順名に対応する手順IDや次作業アクティビティの手順IDを有する場合もある。
【0087】
図6は、本発明のワークフロー管理プログラム格納記憶媒体を示す。
本発明のワークフロー管理プログラム格納記憶媒体74は、磁気記憶装置や、CD−ROM等の光による記憶装置、などであり、ワークフローエンジンプログラム、ワークフローエンジン管理プログラム、ワークフローエンジン用通信管理プログラム、ユーザシステム用通信管理プログラム、ワークフローエンジン管理テーブル作成プログラム、作業手順定義作成プログラム、等を含むものである。このワークフロー管理プログラム格納記憶媒体74に格納されている各プログラムは、一般的なコンピュータに読み出させて実行させることにより、これより説明する本発明の各構成要素が行なう処理と同様の処理をコンピュータに行なわせるものである。
【0088】
図7は、本発明のワークフロー管理装置の実施の形態1のワークフローエンジン管理装置40により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
【0089】
まず、ワークフローエンジン管理装置は、ユーザシステムによりなされた処理要求の種類を判定する(S1)。ユーザシステムから新規作業プロセス生成の要求を受けたのであればS2以降の処理を行ない、作業アクティビティ終了の要求をユーザシステムから受けたのであればS10以降の処理を行ない、作業プロセスの完了の要求をユーザシステムから受けたのであれば、S12以降の処理を行なう。
【0090】
S1における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し(S2)、続いて各ワークフローエンジンの負荷状況を計算する(S3)。
【0091】
この計算の結果、ワークフローエンジン管理装置は、最も負荷の少ないワークフローエンジンを選択する(S4)。
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する(S5)。判定の結果、既定値以下でないのであればS6以降の処理を行ない、既定値以下であれば、S8以降の処理を行なう。
【0092】
S5における判定処理の結果、その負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、新たなワークフローエンジンを起動し(S6)、ワークフローエンジン管理テーブルに起動した新たなワークフローエンジンのIDを追加してそのデータを初期化する(S7)。
【0093】
ワークフローエンジン管理装置は、その後、ワークフローエンジン管理テーブルにワークフローエンジンの担当作業情報を追加し(S8)、更に、ワークフローエンジンの負荷情報(負荷数)を1増やし(S9)、今回の処理を終了する。
【0094】
一方、S1における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジン管理装置は、作業IDをキーとしてワークフローエンジン管理テーブルを検索し(S10)、作業IDに対応する担当ワークフローエンジンに作業アクティビティ終了状態(一つの作業アクティビティの終了であって、終了を示す情報と当該作業アクティビティでなされた処理内容、例えば、承認、却下、などの通知)を送り(S11)、今回の処理を終了する。
【0095】
また、S1における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、作業IDを検索キーとしてワークフローエンジン管理テーブルを検索し(S12)、作業IDに対応する担当ワークフローエンジンに作業プロセス完了状態(一連の作業プロセスを終了する状態)を送り、ワークフローエンジンで行われている該当する作業プロセスの全ての管理処理を終了させる(S13)。
【0096】
そして、ワークフローエンジン管理装置は、ワークフローエンジン管理テーブルの該当するワークフローエンジンの負荷情報を1減らし(S14)、今回の処理を終了する。
【0097】
図8は、本発明のワークフロー管理装置の実施の形態1のワークフローエンジン用通信管理装置46により行われる処理のフローチャートである。なお、このフローチャートは、後述する図11の実施の形態2のワークフローエンジン用通信管理装置により行われる処理に対するフローチャートと共通である。
【0098】
図8をもとにこの処理を説明する。
まず、ワークフローエンジン用通信管理装置は、受け取った情報がワークフローエンジンへの返送であるか否かを判定する(S1)。判定の結果、その情報がワークフローエンジンへの返送であればS2の処理を行ない、その情報がワークフローエンジンへの返送でなければS3以降の処理を行なう。
【0099】
S1における判定処理の結果、受け取った情報がワークフローエンジンへの作業アクティビティの終了についての情報の返送であると判定したワークフローエンジン用通信管理装置は、ワークフローエンジンに作業アクティビティ終了情報(作業アクティビティの終了であることを表す情報と、伝票、仕様書、などの必要な全ての情報)を渡し(S2)、今回の処理を終了する。
【0100】
一方、S1における判定処理の結果、受け取った情報がワークフローエンジンへの返送でないと判定したワークフローエンジン用通信管理装置は、その情報の中から今回の送信先のユーザ情報(今回のワークアイテムの送り先)を取り出す(S3)。
【0101】
そして、ワークフローエンジン用通信管理装置の有する次作業アクティビティの次の作業アクティビティ情報付加手段が、作業情報管理テーブルから返送先(今回の次の作業アクティビティについてのワークアイテムの送信先)のユーザシステム用通信管理装置IDを取り出し(S4)、ワークアイテムの中に返送先ユーザシステム用通信管理装置IDを付加する(S5)。
【0102】
その後、ワークフローエンジン用通信管理装置は、通信管理装置IDに対応する通信管理装置にこのワークアイテムを送り(S6)、今回の処理を終了する。
図9は、本発明のワークフロー管理装置の実施の形態1のユーザシステム用通信管理装置(47、48、49)により行われる処理のフローチャートである。なお、このフローチャートは、後述する他の実施の形態のユーザシステム用通信管理装置により行われる処理でも共通に用いることができるように描かれている。同図をもとにこの処理を説明する。
【0103】
まず、ユーザシステム用通信管理装置は、情報を受け取ると、その情報が作業アクティビティ終了情報であるか否かを判定する(S1)。判定の結果、受け取った情報が作業アクティビティ終了情報でなければS2の処理を行ない、受け取った情報が作業アクティビティ終了情報であればS3の処理を行なう。
【0104】
S1における判定処理の結果、受け取った情報が作業アクティビティ終了情報でないと判定したユーザシステム用通信管理装置は、ユーザシステムにワークアイテムを渡し(S2)、今回の処理を終了する。
【0105】
一方、S1における判定処理の結果、受け取った情報が作業アクティビティ終了情報であると判定したユーザシステム用通信管理装置は、その情報の中から返送先のワークフローエンジン用通信管理装置用ID(図8のフローチャートのS5で付加したワークフローエンジン用通信管理装置用ID)を取り出し(S3)、そのワークフローエンジン用通信管理装置用IDに対応するワークフローエンジン用通信管理装置に作業アクティビティ終了情報を送る(S4)。図2においては、ワークフローエンジン用通信管理装置は1つのみであるので、そのワークフローエンジン用通信管理装置IDを送る。なお、このS3、S4の処理は後述する本発明の実施の形態3において主に行われる処理である。この後、今回の処理を終了する。
【0106】
図10は、本発明のワークフロー管理装置の実施の形態2のシステム構成図である。
本発明のワークフロー管理装置の実施の形態2では、次の作業アクティビティが他のワークフローエンジンで管理される場合に、その作業に関する作業手順定義と作業情報とを次の作業アクティビティの管理を行なうワークフローエンジンに渡すようにしている。
【0107】
また、次作業アクティビティに続く次の作業アクティビティが他のワークフローエンジンで管理される場合には、次作業アクティビティについてもその次作業アクティビティの次の作業アクティビティが管理されるワークフローエンジンで行なうようにしても良い。この場合には、その作業アクティビティに関する作業手順定義と作業情報とをそのワークフローエンジンに転送し、そのワークフローエンジンに作業アクティビティを管理させるようにする。
【0108】
図10におけるサーバSの内部構成を説明する。
図10は、図3の本発明のワークフロー管理装置の実施の形態1のシステム構成図に作業情報転送装置67が付け加えられた点で異なるのみである。なお、図10においては、ワークフローエンジンは2つのみの構成としているが、3つ以上の構成としても良い。
【0109】
図10において、図3と共通の構成要素には共通の番号を付している。
作業情報転送装置67は、例えば、ワークフローエンジンA42の負荷が大きいために、ワークフローエンジンAで管理中の作業プロセスをワークフローエンジンB43で管理させる場合に、ワークフローエンジンA42で管理中の作業プロセスの作業手順定義、作業情報等をワークフローエンジンB43に転送するものである。また、例えばこの逆の場合に、ワークフローエンジンB43で管理中の作業プロセスの作業手順定義、作業情報等をワークフローエンジンA42に転送するものである。あるいは、例えば、ワークフローエンジンA42の管理処理のバックアップとして他のワークフローエンジンを使用する場合に、ワークフローエンジンA42で管理中の作業プロセスの作業手順定義、作業情報等をバックアップ側に転送するものである。
【0110】
図11は、本発明のワークフロー管理装置の実施の形態2のワークフローエンジン管理装置40により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
【0111】
まず、ワークフローエンジン管理装置は、ユーザシステムによりなされた処理要求の種類を判定する(S1)。ユーザシステムから新規作業プロセス生成の要求を受けたのであればS2以降の処理を行ない、作業アクティビティ終了をユーザシステムから受けたのであればS9以降の処理を行ない、作業プロセス完了をユーザシステムから受けたのであれば、S17以降の処理を行なう。
【0112】
S1における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、各ワークフローエンジンの負荷状況を計算し(S2)、この計算の結果、最も負荷の少ないワークフローエンジンを選択する(S3)。
【0113】
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する(S4)。判定の結果、既定値以下でないのであればS5以降の処理を行ない、既定値以下であれば、S7以降の処理を行なう。
【0114】
S4における判定処理の結果、負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、新たなワークフローエンジンを起動し(S5)、ワークフローエンジン管理テーブルに起動した新たなワークフローエンジンのIDを追加してそのデータを初期化する(S6)。
【0115】
ワークフローエンジン管理装置は、その後、ワークフローエンジン管理テーブルにワークフローエンジンの担当作業を追加し(S7)、ワークフローエンジンの負荷情報(負荷数)を1増やし(S8)、今回の処理を終了する。
【0116】
一方、S1における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルから担当ワークフローエンジンを検索し(S9)、続いて担当ワークフローエンジンの負荷状況を計算する(S10)。
【0117】
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する(S11)。判定の結果、既定値以下でないのであればS12以降の処理を行ない、既定値以下であれば、S16以降の処理を行なう。
【0118】
S11における判定処理の結果、負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し(S12)、続いて、各ワークフローエンジンの負荷状況を計算して最も負荷の少ないワークフローエンジンを選択する(S13)。
【0119】
そして、ワークフローエンジン管理装置は、作業情報転送装置に対し、現在担当しているワークフローエンジンから、先に選択された最も負荷の少ないワークフローエンジンに作業情報を転送するように指示する(S14)。
【0120】
その後、ワークフローエンジン管理装置は、作業情報の転送に伴い、ワークフローエンジン管理テーブルの担当ワークフローエンジンの情報を更新する(S15)。
【0121】
そして、ワークフローエンジン管理装置は、担当ワークフローエンジンに作業アクティビティ終了状態を送り(S16)、今回の処理を終了する。
また、S1における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルから担当ワークフローエンジンを検索し(S17)、検索した担当ワークフローエンジンに作業プロセス完了状態を送り(S18)、ワークフローエンジンの負荷情報を1減らし(S19)、今回の処理を終了する。
【0122】
図12は、本発明のワークフロー管理装置の実施の形態3のシステム構成図である。
図12におけるサーバSの内部構成を説明する。
【0123】
図12は、ワークフローエンジン毎にワークフローエンジン用通信管理装置(461、462)を備え、更に、ワークフローエンジン管理装置用通信管理装置(463)を備えるようにしたものである。
【0124】
図12において、図3と共通の構成要素には共通の番号を付している。
ワークフローエンジン用通信管理装置A461は、ワークフローエンジンA42用の通信管理装置である。
【0125】
ワークフローエンジン用通信管理装置B462は、ワークフローエンジンB43用の通信管理装置である。
ワークフローエンジン管理装置用通信管理装置463は、ワークフローエンジン管理装置40用の通信管理装置である。
【0126】
図12の構成において、各ユーザシステム(71、72、73)から発信された作業アクティビティに対する処理情報は、それぞれのユーザシステム用通信管理装置(47、48、49)において、その処理情報に含まれる宛先のワークフローエンジンのIDが読み取られ、指定されているワークフローエンジンに対応するワークフローエンジン用通信管理装置(461、462)にその処理情報が渡される。ワークフローエンジン用通信管理装置(461、462)は、受け取った情報を対応するワークフローエンジン(42、43)に渡す。また、ワークフローエンジン(42、43)から各ユーザシステム(71、72、73)宛のワークアイテムは、ワークフローエンジン用通信管理装置(461、462)、もしくは、ワークフローエンジン管理装置用通信管理装置(463)において、ワークアイテムに含まれるユーザID(担当者ID)が読み取られ、また、今回の送信先のユーザシステム用通信管理装置IDが読み取られる。更に、作業情報管理テーブル41から今回の次の送信先のユーザシステム用通信管理装置IDが求められ、ワークアイテムに付加される。そして、今回の送信先のユーザシステム用通信管理装置にワークアイテムが送られる。
【0127】
図12のワークフローエンジン用通信管理装置のフローチャートは図8のフローチャートと同じである。また、図12のユーザシステム用通信管理装置のフローチャートは図9のフローチャートと同様である。
【0128】
図13は、本発明のワークフロー管理装置の実施の形態4のシステム構成図である。
図13におけるサーバSの内部構成を説明する。
【0129】
図13は、ワークフローエンジン管理装置40が、システムの異常状態を検出する異常状態検出装置91、及び、重複作業管理装置92を備えている点のみで図10の本発明のワークフローエンジン管理装置の実施の形態2のシステム構成図と異なっている。
【0130】
図13において、図3と共通の構成要素には共通の番号を付している。
異常状態検出装置91は、ワークフローエンジンの異常動作を検出するものである。
【0131】
重複作業管理装置92は、ワークフローエンジン間のワークフローの管理処理のバックアップの管理を行なうものである。
図14は、本発明のワークフロー管理装置の実施の形態4のワークフローエンジン管理装置40により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
【0132】
まず、ワークフローエンジン管理装置は、ユーザシステムによりなされた処理要求の種類を判定する(S1)。ユーザシステムから新規作業プロセス生成の要求を受けたのであればS2以降の処理を行ない、作業アクティビティ終了の要求をユーザシステムから受けたのであればS21以降の処理を行ない、作業プロセス完了の要求をユーザシステムから受けたのであれば、S41以降の処理を行なう。
【0133】
S1における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し(S2)、続いて各ワークフローエンジンの負荷状況を計算する(S3)。
【0134】
この計算の結果、ワークフローエンジン管理装置は、最も負荷の少ないワークフローエンジンを選択する(S4)。
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する(S5)。判定の結果、既定値以下でないのであればS6以降の処理を行ない、既定値以下であれば、S8以降の処理を行なう。
【0135】
S5における判定処理の結果、負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、新たなワークフローエンジンを起動し(S6)、ワークフローエンジン管理テーブルに起動した新たなワークフローエンジンのIDを追加してそのデータを初期化する(S7)。
【0136】
ワークフローエンジン管理装置は、その後、ワークフローエンジン管理テーブルにワークフローエンジンの担当作業を追加し(S8)、そのワークフローエンジンの負荷情報(負荷数)を1増やす(S9)。
【0137】
次に、ワークフローエンジン管理装置は、バックアップを行なわせるワークフローエンジンを選択し(S10)、選択したワークフローエンジンに作業情報や作業手順定義等を転送するように作業情報転送装置に対して指示を行なう(S11)。
【0138】
そして、ワークフローエンジン管理装置は、重複作業情報管理装置にバックアップ先のワークフローエンジンの情報を新たに追加し(S12)、今回の処理を終了する。
【0139】
一方、S1における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジン管理装置は、作業IDをキーとしてワークフローエンジン管理テーブルを検索する(S21)。
【0140】
そして、担当ワークフローエンジンの状態を確認し(S22)、担当ワークフローエンジンの状態が異常であるか否かを調べ(S23)、異常であるかもしくは反応が得られないのであればS24以降の処理を行ない、一方、反応が得られ、異常でないことが確認されたのであれば、S30以降の処理を行なう。
【0141】
S23における判定処理の結果、担当ワークフローエンジンに何らかの異常を認めたワークフローエンジン管理装置は、ワークフローエンジン管理テーブルの担当ワークフローエンジン情報に「異常」を書き込む(S24)。
【0142】
その後、ワークフローエンジン管理装置は、重複作業情報管理装置から、バックアップ先のワークフローエンジンを検索する(S25)。
そして、ワークフローエンジン管理テーブルの担当ワークフローエンジン情報をバックアップ先の情報に更新し(S26)、担当ワークフローエンジンに作業アクティビティ終了状態を送り(S27)、ワークフローエンジン管理テーブルの担当ワークフローエンジンの負荷情報を1減らし(S28)、バックアップ先のワークフローエンジンの負荷情報を1増やして(S29)、今回の処理を終了する。
【0143】
一方、S23における判定処理の結果、担当ワークフローエンジンに異常を認めなかったワークフローエンジン管理装置は、担当ワークフローエンジンに作業アクティビティ終了状態を送り(S30)、そして、担当ワークフローエンジンでの処理結果をバックアップ先のワークフローエンジンに転送するように作業情報転送装置に対して指示を行ない(S31)、今回の処理を終了する。
【0144】
また、S1における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、作業IDをキーとしてワークフローエンジン管理テーブルを検索し(S41)、担当ワークフローエンジンに作業プロセス完了状態を送り(S42)、ワークフローエンジン管理テーブルの該当するワークフローエンジンの負荷情報を1減らし(S43)、今回の処理を終了する。
【0145】
図15は、本発明のワークフロー管理装置の実施の形態4の異常状態検出装置91により行われる処理のフローチャートである。このフローチャートは、ワークフローエンジン管理装置40での処理を行なわせるメインプログラムに対するサブルーチンである。同図をもとにこの処理を説明する。
【0146】
まず、異常状態検出装置は、ワークフローエンジン状態フラグの値を判定(S1)する。後述するが、このフラグはワークフローエンジンにより設定されるものである。判定の結果、そのフラグの値が正常を示しているのであればS2以降の処理を行ない、そのフラグの値が異常を示しているのであればS6の処理を行なう。
【0147】
S1における判定処理の結果、ワークフローエンジン状態フラグの値が正常を示していると判定した異常状態検出装置は、現在時刻と、そのワークフローエンジンがその前に処理を実行した最終動作時刻と、を比較し(S2)、その両者の時間差と既定値との間の時間の長短を判定する(S3)。
【0148】
S3における判定の結果、現在時刻と最終動作時刻との差が既定値以下であれば、ワークフローエンジンは正常であると判定し、メインプログラムに「正常」を返し(S4)、今回の処理を終了する。
【0149】
一方、S3における判定の結果、現在時刻と最終動作時刻との差が既定値以下でなければ、ワークフローエンジンからの反応が得られていないと判定し、メインプログラムに「反応なし」を返し(S5)、今回の処理を終了する。
【0150】
また、S1における判定処理の結果、ワークフローエンジン状態フラグの値が異常を示していると判定した異常状態検出装置は、メインプログラムに「異常」を返し(S6)、今回の処理を終了する。
【0151】
図16は、本発明のワークフロー管理装置の実施の形態4のワークフローエンジン(42、43)により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
【0152】
まず、ワークフローエンジンは、処理すべき作業アクティビティ終了状態が存在するか否かを判定する(S1)。判定の結果、処理すべき作業アクティビティ終了状態が存在するのであればS2の処理を行ない、一方、処理すべき作業アクティビティ終了状態が存在しないのであればS3以降の処理を行なう。
【0153】
S1における判定処理の結果、処理すべき作業アクティビティ終了状態が存在すると判定したワークフローエンジンは、作業アクティビティ終了時の処理(当該作業アクティビティの処理終了処理と必要な情報(承認、却下の決定など)の送信)を行ない(S2)、S5以降の処理を行なう。
【0154】
一方、S1における判定処理の結果、処理すべき作業アクティビティ終了状態が存在しないと判定したワークフローエンジンは、処理すべき作業プロセス完了状態(ある作業プロセスにおける作業アクティビティが全て終了したときの処理を行なう状態)が存在するか否かを判定する(S3)。判定の結果、処理すべき作業プロセス完了状態が存在するのであればS4以降の処理を行ない、一方、処理すべき作業プロセス完了状態が存在しないのであればS7以降の処理を行なう。
【0155】
S3における判定処理の結果、処理すべき作業プロセス完了状態が存在すると判定したワークフローエンジンは、作業プロセス完了時の処理を行なう(S4)。
【0156】
次いで、ワークフローエンジンは、S2における作業アクティビティ終了時の処理、もしくはS4における作業プロセス完了時の処理が正常に終了したか否かを判定する(S5)。判定の結果、処理が正常に終了したのであればS7以降の処理を行ない、一方、処理が正常に終了しなかったのであれば、S6の処理を行なう。
【0157】
S5における判定処理の結果、前述の処理が正常に終了しなかったと判定したワークフローエンジンは、ワークフローエンジン管理装置の異常状態検出装置のワークフローエンジン状態フラグを「異常」にセットし(S6)、今回の処理を終了する。
【0158】
一方、S5における判定処理の結果、前述の処理が正常に終了したと判定したワークフローエンジンは、ワークフローエンジン管理装置の異常状態検出装置に設定されるこのワークフローエンジンの最終動作時刻を現在時刻に更新し(S7)、ワークフローエンジン管理装置の異常状態検出装置のワークフローエンジン状態フラグを「正常」にセットし(S8)、その後、前述したS1以降の処理を繰り返す。
【0159】
図17は、本発明のワークフロー管理装置の実施の形態5のシステム構成図である。
図17におけるサーバSの内部構成を説明する。
【0160】
図17は、ワークフローエンジン管理装置40に作業廻送経路予測装置93を備えた点のみが図10の本発明のワークフロー管理装置の実施の形態2のシステム構成図と異なる。
【0161】
図17において、図10と共通の構成要素には共通の番号を付している。
作業廻送経路予測装置93は、次作業アクティビティの次の作業アクティビティを予測するものである。
【0162】
図18は、本発明のワークフロー管理装置の実施の形態5のワークフローエンジン管理装置40により行われる処理のフローチャートである。同図をもとにこの処理を説明する。
【0163】
まず、ワークフローエンジン管理装置は、ユーザシステムによりなされた処理要求の種類を判定する(S1)。ユーザシステムから新規作業プロセス生成の要求を受けたのであればS2以降の処理を行ない、作業アクティビティ終了の要求をユーザシステムから受けたのであればS21以降の処理を行ない、作業プロセス完了の要求をユーザシステムから受けたのであれば、S41以降の処理を行なう。
【0164】
S1における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し(S2)、続いて各ワークフローエンジンの負荷状況を計算する(S3)。
【0165】
この計算の結果、ワークフローエンジン管理装置は、最も負荷の少ないワークフローエンジンを選択する(S4)。
ここで、ワークフローエンジン管理装置は、選択されたワークフローエンジンの負荷が既定値以下であるか否かを判定する(S5)。判定の結果、既定値以下でないのであればS6以降の処理を行ない、既定値以下であれば、S8以降の処理を行なう。
【0166】
S5における判定処理の結果、負荷が既定値以下ではないと判定したワークフローエンジン管理装置は、新たなワークフローエンジンを起動し(S6)、ワークフローエンジン管理テーブルに起動した新たなワークフローエンジンのIDを追加してそのデータを初期化する(S7)。
【0167】
ワークフローエンジン管理装置は、その後、ワークフローエンジン管理テーブルにワークフローエンジンの担当情報を追加し(S8)、ワークフローエンジンの負荷情報を1増やし(S9)、今回の処理を終了する。
【0168】
一方、S1における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジン管理装置は、作業IDをキーとしてワークフローエンジン管理テーブルを検索し(S21)、担当ワークフローエンジンに作業アクティビティ終了状態を送る(S22)。
【0169】
ワークフローエンジン管理装置は、その後、担当ワークフローエンジンから送られてくる次作業アクティビティの情報を受け取る(S23)。
ここで、ワークフローエンジン管理装置は、受け取った情報でわかる次作業アクティビティが他のワークフローエンジンで管理されるか否かを判定する(S24)。判定の結果、次作業アクティビティが他のワークフローエンジンでの管理であればS25の処理を行ない、一方、次作業アクティビティが他のワークフローエンジンでの管理でないのであればS26以降の処理を行なう。
【0170】
S24における判定処理の結果、次作業アクティビティが他のワークフローエンジンでの管理であると判定したワークフローエンジン管理装置は、次作業アクティビティの管理を担当するワークフローエンジンに作業アクティビティ終了情報(作業アクティビティの処理終了の情報及びその作業アクティビティの処理で作成された伝票、仕様書等)を転送し(S25)、今回の処理を終了する。
【0171】
一方、S24における判定処理の結果、次作業アクティビティが他のワークフローエンジンでの管理ではないと判定したワークフローエンジン管理装置は、作業情報管理テーブルから次作業アクティビティの次の作業アクティビティの管理情報を全て検索し(S26)、検索された情報の中から作業アクティビティの定義情報を新たに一つ取り出す(S27)。
【0172】
そして、取り出された作業アクティビティが他のワークフローエンジンで管理されるのものであるか否かを判定する(S28)。判定の結果、その作業アクティビティが他のワークフローエンジンで管理されるのであればS29以降の処理を行ない、一方、その作業アクティビティが他のワークフローエンジンでの管理でないならばS30の処理を行なう。
【0173】
S28による判定処理の結果、その作業アクティビティが他のワークフローエンジンで管理されると判定したワークフローエンジン管理装置は、次作業アクティビティに関する作業情報を他のワークフローエンジンに転送するように作業転送装置に指示する(S29)。
【0174】
その後、ワークフローエンジン管理装置は、すべての次作業アクティビティ以降の作業定義情報についてS27からS29までの処理が終了したか否かを判定する(S30)。判定の結果、これらの処理が終了したのであれば、今回の処理を終了する。一方、未処理の作業定義情報が残っているのであれば、S27以降の処理を繰り返す。
【0175】
また、S1における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、作業IDをキーとしてワークフローエンジン管理テーブルを検索し(S41)、担当ワークフローエンジンに作業プロセス完了状態を送り(S42)、ワークフローエンジン管理テーブルの該当するワークフローエンジンの負荷情報を1減らし(S43)、今回の処理を終了する。
【0176】
次に、ホームサーバを用いたワークフロー管理システムについて説明する。
今まで説明したワークフロー管理装置では、ユーザ(作業担当者)が使用可能なユーザシステムが予め決められており、ユーザが利用できる作業端末が固定されてしまっている。
【0177】
また、ユーザがユーザシステムで作業を行なうとき、その作業の開始時に帳票のフォーム等の情報を一般用データベースから取得する必要がある。この情報を検索してユーザシステムに与える処理はワークフロー管理装置で実行されるため、今まで説明したワークフロー管理装置で多くのユーザが並行して作業を行なうような場合には、この作業開始時の処理の速度が低下してしまう。
【0178】
これより説明するワークフロー管理システムでは、以上の問題を鑑み、ユーザが使用可能なユーザシステムを複数提供でき、また、作業開始時の処理におけるワークフロー管理装置の処理の負担を軽減するために、ホームサーバを設けたことが大きな特徴である。
【0179】
図19は本発明のワークフロー管理システムの実施の形態1の全体構成図である。
図19において、図12と共通の構成要素には共通の番号を付している。
【0180】
図20は、図19における各作業手順定義情報格納装置(63、64、65)に格納されている作業手順の定義例を示す図である。同図の例では、作業手順の定義は、作業プロセス毎に付される作業種別ID別に、作業手順ID、手順名、その作業手順の作業アクティビティを担当する担当者のID、その作業手順の次の作業アクティビティの手順IDなどが格納されている。
【0181】
図21は、図19における作業情報格納装置(61、62)に格納される作業情報の例を示す図である。同図の例では、作業情報は各作業手順定義情報格納装置(63、64、65)で定義されている各作業ID毎に、その作業IDに対応する作業種別ID、作業種別IDに対応する作業手順の一覧、その作業IDの作業プロセスを担当する担当ワークフローエンジンのID、そして、各作業IDの作業プロセスの進捗を手順IDで示す「状態」の情報が格納される。
【0182】
図19では、メインサーバS’に3台のホームサーバA、B、C(211、212、213)が接続されている。このメインサーバS’に接続されるホームサーバの台数は任意でよい。
【0183】
まず、図19におけるメインサーバS’の内部構成を説明すると、メインサーバS’の構成は、図12に示す本発明のワークフロー管理装置の実施の形態3におけるサーバSの構成に似ているが、図12に示すサーバSにおける通信管理装置45の構成が異なっている。
【0184】
ワークフローエンジン用通信管理装置A及びB(461’、462’)、はワークフローエンジンA及びB(42、43)とホームサーバA、B、C(211、212、213)との間の通信を制御し、送られてきた情報を配送する装置である。
【0185】
ワークフローエンジン管理装置用通信管理装置463’はワークフローエンジン管理装置41とホームサーバA、B、C(211、212、213)との間の通信を制御し、送られてきた情報を配送する装置である。
【0186】
ワークフローエンジン用通信管理装置A及びB(461’、462’)とワークフローエンジン管理装置用通信管理装置463’とは、それぞれユーザ情報管理テーブルA、B、C(201、202、203)を有している。ユーザ情報管理テーブルの例を図22に示す。同図に示すように、ユーザ情報管理テーブルはユーザが個々に有するユーザID、ユーザの名前、パスワードを有し、そして、そのユーザの属しているホームサーバ(担当ホームサーバ)のIDが格納されている。
【0187】
なお、図19には明確には示されてはいないが、ワークフローエンジン管理装置用通信管理装置463’と、ワークフローエンジンAまたはB(42、43)もしくはワークフローエンジン用通信管理装置AまたはB(461’、462’)と、の間で情報の授受を直接行なうことも可能である。
【0188】
メインサーバS’にはホームサーバA、B、C(211、212、213)が接続されている。各ホームサーバ(211、212、213)は同様の内部構成を有しており、例えば、営業部門、製造管理部門、製造部門といった会社の各部門毎等を単位として備えられ、今まで説明したワークフロー管理装置ではワークフローエンジンが実行するようにしていた処理の一部を代わりに実行し、ワークフローエンジンの処理の負担を軽減する。
【0189】
なお、図19においては、ホームサーバA211はユーザシステムA及びB(81、82)の2つ、ホームサーバB212はユーザシステムC、D、E(83、84、85)の3つ、ホームサーバC213はユーザシステムD、E、F(86、87、88)の3つ、のユーザシステムを有している。詳しくは後述するが、これらのホームサーバの有するユーザシステムについては、ユーザが、例えばパソコン等の、自らの属するホームサーバに対応して接続されているクライアント90で、作業アクティビティを処理するために使用するユーザプログラム91を実行することにより発生する、ホームサーバへの新規接続要求に応じて各ホームサーバに生成されるものである。従って、各ホームサーバ(211、212、213)が有するユーザシステムの個数は図19に示されている個数に限定されるものではない。このことは、後述するホームサーバの他の形態においても同様である。
【0190】
図19に示す構成において、例えば、ホームサーバA211で生成されたユーザシステムA81が新規作業プロセスを生成すると、その作業プロセスの生成についての情報は、ワークフローエンジン管理装置用通信管理装置463’、を介してワークフローエンジン管理装置40’に渡される。ワークフローエンジン管理装置用通信管理装置463’はワークフローエンジン管理テーブル50を参照して各ワークフローエンジン(42、43)の負荷状態を参照し、生成された作業プロセスを担当するワークフローエンジンを選択し、ワークフローエンジン管理テーブル50を更新する。ここで、例えば、ワークフローエンジンA42が選択されたとする。選択されたワークフローエンジンA42は、作業手順定義情報格納装置64を参照して作業情報を作成して作業情報格納装置61に格納されている作業情報テーブルに追加すると共に、この作業情報と一般用データベース66に格納されている情報とから次の作業手順に関するワークアイテムを生成し、次の作業手順の作業アクティビティの担当者が属するホームサーバへ、ワークフローエンジンA用通信管理装置461’を介してこのワークアイテムを送る。
【0191】
また、例えば、ホームサーバB212で生成されたユーザシステムC83において作業アクティビティ終了状態が生成されると、この作業アクティビティ終了状態はホームサーバB212より、この作業を担当しているワークフローエンジンへ伝えられる。ここで、担当ワークフローエンジンがワークフローエンジンB43であるとすると、ワークフローエンジンB43は、作業手順定義情報格納装置65及び作業情報格納装置62を参照して次の作業アクティビティを調べ、作業情報格納装置62に格納されている作業情報テーブルを更新すると共に、この作業情報と一般用データベース66に格納されている情報とから次の作業アクティビティについてのワークアイテムを生成し、この作業アクティビティの担当者が属するホームサーバへ、ワークフローエンジンB用通信管理装置462’を介してこのワークアイテムを送る。なお、ユーザシステムC83から作業プロセスの最後の作業アクティビティの終了状態が伝えられた場合には、ワークアイテムの生成・送出は行なわずに、作業プロセス完了のメッセージをワークフローエンジン管理装置40’に送る。作業プロセス完了メッセージを受け取ったワークフローエンジン管理装置40’は、ワークフローエンジン管理テーブル50を更新する。
【0192】
図23は、図19に示す本発明のワークフロー管理システムの実施の形態1のワークフローエンジン管理装置40’により行われる処理のフローチャートである。図23をもとにこの処理を説明する。
【0193】
まず、ワークフローエンジン管理装置は、受け取った情報の処理要求の種類を判定する(S1)。ホームサーバからの新規作業プロセス生成の要求を受けたのであればS2以降の処理を行ない、ワークフローエンジンから発せられた作業完了の要求を受けたのであれば、S11以降の処理を行なう。なお、図19に示す本発明のワークフロー管理システムの実施の形態1におけるワークフローエンジン管理装置では、作業アクティビティ終了の処理要求はなされない。
【0194】
S1における判定処理の結果、新規作業プロセス生成の要求を受けたと判定したワークフローエンジン管理装置は、ワークフローエンジン管理テーブルを検索し(S2)、続いて各ワークフローエンジンの負荷状況を計算し、最も負荷の少ないワークフローエンジンを選択する(S3)。
【0195】
そして、ワークフローエンジン管理装置は、ワークフローエンジン管理テーブルに選択したワークフローエンジンの担当情報を追加し(S4)、更に、選択したワークフローエンジンの負荷情報(負荷数)を1増やす(S5)。
【0196】
その後、ワークフローエンジン管理装置は、新規作業プロセス開始要求メッセージを生成し(S6)、そのメッセージに担当ワークフローエンジンIDとして選択したワークフローエンジンのIDを追加し(S7)、そして、そのメッセージをワークフローエンジン管理装置用通信管理装置に渡し(S8)、今回の処理を終了する。
【0197】
また、S1における判定処理の結果、作業プロセス完了の要求を受けたと判定したワークフローエンジン管理装置は、作業IDを検索キーとしてワークフローエンジン管理テーブルを検索し(S11)、ワークフローエンジン管理テーブルの作業IDに対応する作業プロセスの管理を担当していたワークフローエンジンの負荷情報を1減らし(S12)、今回の処理を終了する。
【0198】
図24は、図19に示す本発明のワークフロー管理システムの実施の形態1のワークフローエンジン管理装置用通信管理装置463’により行われる処理のフローチャートである。図24をもとにこの処理を説明する。
【0199】
まず、ワークフローエンジン管理装置用通信管理装置は、受け取ったメッセージ(情報)の種類を判定する(S1)。判定の結果、受け取ったメッセージがワークフローエンジンからの作業プロセス完了のメッセージであるか、もしくは、ホームサーバからの新規作業プロセス生成のメッセージであればS2の処理を行ない、受け取ったメッセージがワークフローエンジン管理装置からの新規作業プロセス開始要求のメッセージであればS3の処理を行なう。
【0200】
S1における判定処理の結果、受け取ったメッセージが作業プロセス完了のメッセージ、もしくは、新規作業プロセス生成のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、そのメッセージをワークフローエンジン管理装置に渡し(S2)、今回の処理を終了する。
【0201】
一方、S1における判定処理の結果、受け取ったメッセージが新規作業プロセス開始要求のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、このメッセージに記されている担当ワークフローエンジンIDに対応するワークフローエンジンにこのメッセージを渡し(S3)、今回の処理を終了する。
【0202】
図25は、図19に示す本発明のワークフロー管理システムの実施の形態1のワークフローエンジンA及びB(42、43)により行われる処理のフローチャートである。図25をもとにこの処理を説明する。
【0203】
まず、ワークフローエンジンは、受け取った情報の処理要求の種類を判定する(S1)。ユーザシステムから発せられた作業アクティビティ終了の要求を受けたのであればS2以降の処理を行ない、ワークフローエンジン管理装置から発せられた新規作業プロセス生成処理要求を受けたのであれば、S21以降の処理を行なう。
【0204】
S1における判定処理の結果、作業アクティビティ終了の要求を受けたと判定したワークフローエンジンは、受け取った作業アクティビティ終了情報から作業IDを取り出し(S2)、その作業IDを検索キーとして作業情報格納装置に格納されている作業情報テーブルから作業情報を検索して取り出す(S3)。更に、その作業情報から作業種別IDを取り出し(S4)、取り出した作業種別IDを検索キーとして、作業手順定義情報格納装置から作業手順情報を検索して取り出す(S5)。作業情報から作業手順情報を直接取り出さないのは、例えば、作業手順に変更が加えられた場合に、作業情報に含まれる作業手順情報が変更前の作業情報のままとなっている可能性があり、このような問題を事前に予防するためである。
【0205】
次に、ワークフローエンジンは、受け取った作業終了情報から現在の手順IDを取り出し(S6)、この手順IDを検索キーとして先に取り出した作業手順情報からこの作業アクティビティの手順を検索して取り出し(S7)、現在の作業手順の次の作業アクティビティを取り出す(S8)。
【0206】
ここで、ワークフローエンジンは、取り出した作業手順IDに対応する次作業アクティビティの作業内容が作業プロセスの完了であるか否かを判定する(S9)。次作業アクティビティの内容が作業プロセスの完了であるならばS10の処理を行ない、次作業アクティビティの内容が作業プロセスの完了ではないのであればS11以降の処理を行なう。
【0207】
S9における判定処理の結果、次作業アクティビティが作業プロセスの完了であると判定したワークフローエンジンは、ワークフローエンジン管理装置宛の作業プロセス完了メッセージを、作業情報と共にワークフローエンジン用通信管理装置へ送り(S10)、今回の処理を終了する。
【0208】
なお、前に説明したワークフロー管理装置では、作業プロセスの完了がユーザシステムから通知されていたが、ホームサーバを用いたワークフロー管理システムでは、作業プロセスの完了の通知の代わりに、作業プロセスの最後の作業アクティビティの終了がホームサーバから通知され、メインサーバのワークフローエンジンがその最後の作業アクティビティの次の作業手順IDが「完了」であることを検出することで、作業プロセスの完了を認識するようにしている。
【0209】
フローチャートの説明に戻る。S9における判定処理の結果、次作業アクティビティが作業プロセスの完了ではないと判定したワークフローエンジンは、作業プロセスの進捗を示す作業情報の「状態」欄に、次作業アクティビティの作業手順IDを書き込み(S11)、更に、作業情報の中から次作業アクティビティの手順IDに対応する担当者(すなわち、次作業アクティビティの担当者)のIDを取得し、作業情報の「担当者ID」欄に書き込む(S12)。
【0210】
そして、ワークフローエンジンは、次作業アクティビティの処理に必要な情報(例えば、次作業で作成する伝票のフォームや製造する製品の仕様書等)を作業手順定義情報格納装置や一般用データベースから取得してワークアイテムを生成し、そのワークアイテムに作業情報の中から必要なものをコピー(複写)し(S13)、そのワークアイテムをワークフローエンジン用通信管理装置に送り(S14)、今回の処理を終了する。
【0211】
一方、S1における判定処理の結果、新規作業プロセス開始要求を受けたと判定したワークフローエンジンは、受け取った新規作業プロセス開始メッセージから作業種別IDを取り出し(S21)、その作業種別IDを検索キーとして、作業手順定義情報格納装置から作業手順情報を検索して取り出す(S22)。
【0212】
そして、ワークフローエンジンは、作業情報テーブルに新たな作業情報を追加し(S23)、受け取った新規作業プロセス開始メッセージから作業プロセスの起票者IDを取り出し(S24)、その起票者IDを作業情報の「担当者ID」欄に書き込み(S25)、更に、作業情報の「状態」欄に「作業手順0」に相当する手順IDを書き込む(S26)。
【0213】
その後、ワークフローエンジンは、ワークアイテムを生成してそのワークアイテムに作業情報の中から必要なものをコピーし(S27)、そのワークアイテムをワークフローエンジン用通信管理装置に送り(S28)、今回の処理を終了する。
【0214】
図26は、図19に示す本発明のワークフロー管理システムの実施の形態1のワークフローエンジン用通信管理装置(461’、462’)により行われる処理のフローチャートである。図26をもとにこの処理を説明する。
【0215】
まず、ワークフローエンジン用通信管理装置は、受け取ったメッセージの種類を判定する(S1)。判定の結果、受け取ったメッセージがワークフローエンジンからの作業プロセス完了のメッセージであればS2の処理を行ない、受け取ったメッセージがワークフローエンジンからのワークアイテムであればS3以降の処理を行ない、受け取ったメッセージがホームサーバからの作業アクティビティ終了の情報を受けたのであればS7の処理を行なう。
【0216】
S1における判定処理の結果、受け取ったメッセージが作業プロセス完了のメッセージであると判定したワークフローエンジン用通信管理装置は、そのメッセージをワークフローエンジン管理装置用通信管理装置に渡し(S2)、今回の処理を終了する。
【0217】
一方、S1における判定処理の結果、受け取ったメッセージがワークアイテムであると判定したワークフローエンジン用通信管理装置は、ワークアイテムからこの作業を処理するユーザの情報(担当者ID)を取り出し(S3)、ユーザ情報管理テーブルからそのユーザが対応する(属する)ホームサーバのID(担当ホームサーバID)を検索し(S4)、ワークアイテムの中に返送先通信管理装置IDを付加し(S5)、検索した担当ホームサーバIDに対応するホームサーバにこのワークアイテムを送り(S6)、今回の処理を終了する。
【0218】
また、S1における判定処理の結果、受け取ったメッセージが作業アクティビティ終了の情報であると判定したワークフローエンジン用通信管理装置は、ワークフローエンジンにこのメッセージを渡し(S7)、今回の処理を終了する。
【0219】
次に、図19のホームサーバA、B、C(211、212、213)の内部構成について説明する。
図27は、図19のワークフロー管理システムで用いられるホームサーバの形態1のシステム構成図である。このホームサーバは、ホームサーバ用通信管理装置301、ホームサーバ制御装置302、ユーザシステム生成装置303、接続管理装置304、ワークアイテム管理装置305、ユーザ情報管理テーブル306、より構成されており、図27では3つのユーザシステムA、B、C(311、312、313)を生成している場合を示している。
【0220】
ホームサーバ用通信管理装置301は、ホームサーバ制御装置302と、メインサーバS’の各通信管理装置(461’、462’、463’)と、の通信を制御し、送られてきた情報を配送する装置である。
【0221】
ホームサーバ制御装置302は、接続管理装置304からのユーザのホームサーバへの新規接続要求に対して各ユーザシステム(311、312、313)を生成する処理、各ユーザシステム(311、312、313)からワークフローエンジン管理装置40’への新規作業プロセス生成要求をホームサーバ用通信管理装置301へ渡す処理、各ワークフローエンジン(42、43)からホームサーバ用通信管理装置301を介して送られてくるワークアイテムをワークアイテム管理装置305に格納する処理、各ユーザシステム(311、312、313)からワークフローエンジン(42、43)へ送られる作業アクティビティ終了状態をホームサーバ用通信管理装置301へ渡すと共にワークアイテム管理装置305の格納内容を更新する処理などを行なう。
【0222】
ユーザシステム生成装置303は、ホームサーバ制御装置302からの指示により、渡されたワークアイテムから新たなユーザシステムを生成する処理を行なう。
【0223】
接続管理装置304は、ユーザプログラムによるユーザからのホームサーバへの新規接続要求に対し、そのユーザが正規ユーザであるか否かを調べ、正規ユーザである場合には、その新規接続要求をホームサーバ制御装置302に渡す処理を行なう。
【0224】
ワークアイテム管理装置305は、ワークフローエンジン(42、43)から渡される、このホームサーバに属するユーザが担当者であるワークアイテムを格納し、また、格納されているワークアイテムからユーザID(担当者ID)を検索キーとしたユーザ毎のワークアイテムの検索を行なうものである。ワークアイテム管理装置305に格納されているワークアイテムの例を図28に示す。図28に示すように、ワークアイテム管理装置305には、各ワークアイテムの作業ID、その作業IDの作業プロセスの進行状態を示す手順ID及びその手順IDに対応する作業手順名、その作業手順の担当者ID、その作業手順の次の作業アクティビティの手順ID、作業プロセスの管理を担当するワークフローエンジンのIDが格納される。なお、図28には図示されていないが、ワークフローエンジンで生成されて送られてくるワークアイテムには、各作業アクティビティを処理するために必要な情報(例えば、次作業アクティビティで作成する伝票のフォームや製造する製品の仕様書等)も有しており、ワークアイテム管理装置305はこのような情報も各ワークアイテム毎に格納する。
【0225】
ユーザ情報管理テーブル306は、このホームサーバに属するユーザのユーザID、ユーザ名、パスワード等が格納されている。これらの情報は、ワークフローエンジン管理装置用通信管理装置463’の有するユーザ情報管理テーブルC203に格納されている情報を予め複写して格納しておく。
【0226】
図27に示す構成において、まず、ユーザはこのホームサーバに対応するクライアントでユーザプログラムを操作し、自らのユーザIDとパスワードを入力する。接続管理装置304は、入力されたユーザIDとパスワードをユーザ情報管理テーブル306と照合し、このユーザがこのホームサーバに属するユーザであれば、ホームサーバ制御装置302に新規ユーザ接続要求を渡す。
【0227】
ホームサーバ制御装置302は、ワークアイテム管理装置305に格納されているワークアイテムからこのユーザが担当者である作業アクティビティのワークアイテムがあればすべて取り出し、ユーザシステム生成装置に303に取り出したワークアイテムを渡してユーザシステムの生成を指示し、ユーザシステムが生成される。ここでは、ユーザシステムA311が生成されたものとする。
【0228】
ユーザは、ユーザプログラムを用いてユーザシステムA311に含まれるワークアイテムを処理する。処理が終了すると、作業終了要求がホームサーバ制御装置302に伝えられる。
【0229】
このとき、ホームサーバ制御装置302は、処理を終了した作業アクティビティについてのワークアイテムをワークアイテム管理装置305及びユーザシステムA311から削除し、ホームサーバ用通信管理装置301を介して、この作業アクティビティの管理を担当するメインサーバのワークフローエンジンに作業アクティビティ終了状態の情報を送る。
【0230】
また、ユーザが、ユーザシステムA311において新規作業プロセスを生成した場合は、ホームサーバ制御装置302は、ホームサーバ用通信管理装置301を介してメインサーバのワークフローエンジン管理装置に新規作業プロセス生成メッセージを送る。
【0231】
更に、メインサーバのワークフローエンジンからワークアイテムが送られてきた場合には、ホームサーバ制御装置302は、ワークアイテム管理装置305に送られてきたワークアイテムを追加して格納する。
【0232】
図29は、図27に示すホームサーバの形態1のホームサーバ制御装置302により行われる処理のフローチャートである。図29をもとにこの処理を説明する。
【0233】
ホームサーバ制御装置は、受け取った情報の処理要求の種類を判定する(S1、S3、S5、S7)。ユーザプログラムを操作するユーザから新規ユーザ接続の要求がなされたのであれば新規ユーザ接続処理を実行し(S2)、ユーザシステムからの新規作業プロセス生成の要求がなされたのであれば新規作業プロセス生成処理を実行し(S4)、メインサーバのワークフローエンジンで生成されたワークアイテムを渡されたのであればワークアイテム追加処理を実行し(S6)、ユーザシステムから作業アクティビティ終了の要求が送られたのであれば作業アクティビティ終了時処理(S8)を実行する。各処理の終了後は、次に送られてくる情報に対しての処理要求の種類の判定処理を繰り返す。
【0234】
図30は、図29にS2として示されているホームサーバ制御装置302により行われる新規ユーザ接続処理のフローチャートである。図30をもとにこの処理を説明する。
【0235】
まず、ホームサーバ制御装置は、ユーザプログラムを操作するユーザからなされた新規接続要求の情報からユーザIDを取り出し(S11)、そのユーザIDと一致する担当者IDを有する全てのワークアイテムをワークアイテム管理装置から検索する(S12)。
【0236】
そして、ホームサーバ制御装置は、検索した全てのワークアイテムをユーザシステム生成装置に渡して新たなユーザシステムを生成させ(S13)、今回の処理を終了する。
【0237】
図31は、図29にS4として示されているホームサーバ制御装置302により行われる新規作業プロセス生成処理のフローチャートである。図31をもとにこの処理を説明する。
【0238】
ホームサーバ制御装置は、新規作業プロセス生成メッセージを作成し(S21)、ユーザシステムからの新規作業プロセス生成要求に示されている作業種別をそのメッセージの中に埋め込み(S22)、この新規作業プロセス生成メッセージをホームサーバ用通信管理装置に渡し(S23)、今回の処理を終了する。
【0239】
図32は、図29にS6として示されているホームサーバ制御装置302により行われるワークアイテム追加処理のフローチャートである。図32をもとにこの処理を説明する。
【0240】
ホームサーバ制御装置は、ワークアイテム管理装置に新たなエントリを作成し(S31)、受け取ったワークアイテムをこの作成したエントリにコピーし(S32)、今回の処理を終了する。
【0241】
図33は、図29にS8として示されているホームサーバ制御装置302により行われる作業アクティビティ終了時処理のフローチャートである。図33をもとにこの処理を説明する。
【0242】
まず、ホームサーバ制御装置は、受け取った作業アクティビティ終了状態の情報から終了した作業アクティビティに対応する作業プロセスの作業IDを取得し(S41)、その作業IDに対応するワークアイテムが格納されているワークアイテム管理装置内の格納位置を取得する(S42)。
【0243】
そして、ワークアイテム管理装置からそのワークアイテムのエントリを削除し(S43)、更に作業アクティビティ終了の要求を発したユーザシステムから終了した作業アクティビティに対応するワークアイテムを削除し(S44)、ホームサーバ用通信管理装置に受け取った作業アクティビティ終了状態を渡し(S45)、処理を終了する。
【0244】
図34は、図27に示すホームサーバの形態1のホームサーバ用通信管理装置301により行われる処理のフローチャートである。図34をもとにこの処理を説明する。
【0245】
まず、ホームサーバ用通信管理装置は、受け取ったメッセージの種類を判定する(S1)。判定の結果、受け取ったメッセージがホームサーバ制御装置からの新規作業プロセス生成のメッセージであればS2の処理を行ない、受け取ったメッセージがホームサーバ制御装置からの作業アクティビティ終了状態の情報であればS3以降の処理を行ない、受け取ったメッセージがメインサーバのワークフローエンジンで生成されたワークアイテムであればS5の処理を行なう。
【0246】
S1における判定処理の結果、受け取ったメッセージが新規作業プロセス生成のメッセージであると判定したホームサーバ用通信管理装置は、そのメッセージをワークフローエンジン管理装置用通信管理装置に送り(S2)、今回の処理を終了する。
【0247】
一方、S1における判定処理の結果、受け取ったメッセージが作業アクティビティ終了状態の情報であると判定したホームサーバ用通信管理装置は、その作業アクティビティ終了状態の情報の中から担当ワークフローエンジンIDを取り出し(S3)、その担当ワークフローエンジンIDに対応するワークフローエンジン用通信管理装置に受け取った作業アクティビティ終了状態の情報を送り(S4)、今回の処理を終了する。
【0248】
また、S1における判定処理の結果、受け取ったメッセージがワークアイテムであると判定したホームサーバ用通信管理装置は、受け取ったワークアイテムをホームサーバ制御装置に渡し(S5)、今回の処理を終了する。
【0249】
図35は、図27に示すホームサーバの形態1のユーザシステム生成装置303により行われる処理のフローチャートである。図35をもとにこの処理を説明する。
【0250】
ホームサーバ制御装置からの指示を受けたユーザシステム生成装置は、まず、空のユーザシステムを生成し(S1)、そのユーザシステムにユーザプログラムを操作するユーザのユーザIDをセットし(S2)、更に、そのユーザシステムにホームサーバ制御装置から渡された全てのワークアイテムをコピーし(S3)、ユーザシステムを完成させて処理を終了する。
【0251】
図36は、図27に示すホームサーバの形態1の接続管理装置304により行われる処理のフローチャートである。図36をもとにこの処理を説明する。
まず、接続管理装置は、ユーザプログラムを操作するユーザによって入力されるユーザIDを取得し(S1)、このユーザIDを検索キーとしてユーザ情報管理テーブルを検索してこのユーザのユーザ情報を取り出す(S2)。
【0252】
そして、接続管理装置は、ユーザプログラムを操作するユーザによって入力されるパスワードを取得し(S3)、入力されたパスワードとユーザ情報に示されているパスワードとが一致しているか否かを判定する(S4)。
【0253】
S4における判定の結果、入力されたパスワードとユーザ情報に示されているパスワードとが一致していると判定した接続管理装置は、ホームサーバ制御装置に新規ユーザ接続の要求をユーザ情報と共に送り(S5)、処理を終了する。
【0254】
一方、S4における判定の結果、入力されたパスワードとユーザ情報に示されているパスワードとが一致していないと判定した接続管理装置は、ユーザの接続の要求を却下し(S6)、処理を終了する。
【0255】
図37は、図19のワークフロー管理システムで用いられるホームサーバの形態2のシステム構成図である。
図37において、図27に示すホームサーバの形態1のシステム構成図と共通の構成要素には共通の番号を付している。
【0256】
図37に示すホームサーバの形態2の構成は、作業排他制御装置321及び作業排他制御テーブル322を有する点において、図27に示すホームサーバの形態1の構成と異なっている。なお、ユーザシステムの個数も両図で異なってはいるが、これはユーザシステム生成装置303によって生成されたユーザシステムの個数が異なっているのに過ぎず、この点は本質的な違いではない(このユーザシステムの個数の違いは後述するホームサーバの他の形態においても同様である)。
【0257】
今まで説明した各作業プロセスの例では、ある作業手順の作業アクティビティを担当できる担当者は1名のみであることを前提としていた。実際の作業プロセスにおいては、例えば代行決済など、作業アクティビティを担当できる担当者が複数人存在することがあり、このような場合には、単一の作業アクティビティを複数人が並行して処理してしまうことを防止するために、ある担当者が作業アクティビティの処理を開始した後には、他の担当者がその作業アクティビティの処理を行なえないようにする必要がある。ワークフロー管理におけるこの制御を作業の排他制御と呼ぶ。
【0258】
今まで、この作業の排他制御はワークフローエンジンによって行われていた。そのため、作業排他制御はワークフローエンジンにおいては処理の負担となり、また、作業アクティビティの処理を行なうユーザに対し、その処理開始の許可・不許可を通知するまでに多少の時間を要していた。
【0259】
図37に示すホームサーバの形態2においては、作業の排他制御をホームサーバにおいて実行することが大きな特徴であり、この特徴により、作業排他制御に伴うワークフローエンジンの処理負担は軽減され、また、作業アクティビティの処理を行なうユーザに対して排他制御の処理結果を通知するまでのレスポンスが向上する。
【0260】
図37において、作業排他制御装置321は、ある作業に対して作業排他制御テーブル322を検索し、その作業アクティビティが他のユーザによってすでに処理が開始されているか否かを判定し、判定結果をホームサーバ制御装置302に返すものである。
【0261】
作業排他制御テーブル322は、いずれかの担当者によって処理が開始された作業アクティビティについての進捗状況が格納されるものである。作業排他制御テーブルの例を図38に示す。同図に示すように、作業排他制御テーブルには、いずれかの担当者によって処理が開始された作業アクティビティについての作業プロセスの作業ID、状態(現在の作業手順)、手順名、現在の作業手順の作業アクティビティの担当者のID、そして、現在の作業手順の作業アクティビティの処理状態が示されている。なお、処理状態には担当者が現在実際に処理を行なっている状態を示す「処理中」と、処理を開始したものの、何らかの理由で現在は担当者が処理を中断している状態を示す「処理中断中」と、の状態が存在する。
【0262】
図37の構成において、例えば、ユーザシステムA311においてユーザが作業アクティビティの処理を開始するとき、処理開始の要求がホームサーバ制御装置302へ伝えられる。ホームサーバ制御装置302は作業排他制御装置321に対し、この作業アクティビティの処理開始の許可を求める。作業排他制御装置321は作業排他制御テーブル322を参照し、この作業アクティビティの処理が他の担当者によって開始されているか否かを調べる。その結果、処理が開始されていないのであれば処理開始の許可をホームサーバ制御装置302に通知すると共に、作業排他制御テーブル322に格納されている作業排他制御情報に処理の開始される新たな作業アクティビティの情報を追加する。また、作業アクティビティの処理がすでに開始されているのであれば処理開始の却下をホームサーバ制御装置302に通知する。ホームサーバ制御装置302は作業排他制御装置321からの通知をユーザシステムA311に伝える。
【0263】
また、例えば、ユーザシステムA311においてユーザが進めていた作業アクティビティの処理を中断したときには、処理の中断がホームサーバ制御装置302を介して作業排他制御装置321に伝えられ、作業排他制御装置321は作業排他制御テーブル322に格納されているその作業アクティビティの処理状態を更新する。
【0264】
更に、例えば、ユーザシステムA311においてユーザが進めていた作業アクティビティの処理が終了したときには、作業アクティビティ終了状態がホームサーバ制御装置302に伝えられる。ホームサーバ制御装置302は作業排他制御装置321に作業アクティビティ終了時処理の実行を要求する。作業排他制御装置321は要求に応じて作業アクティビティ終了時処理を実行し、作業排他制御テーブル322に格納されていたその作業アクティビティに関する作業排他制御情報を削除する。
【0265】
図37において、ホームサーバ用通信管理装置301、ユーザシステム生成装置303、接続管理装置304が行なう処理は、それぞれ、図34、図35、図36にフローチャートで示したホームサーバの形態1におけるそれぞれの装置によって行われる処理と同様である。また、図37において、ワークアイテム管理装置305、ユーザ情報管理テーブル306にそれぞれ格納される情報の内容もホームサーバの形態1におけるものと同様である。
【0266】
図39は、図37に示すホームサーバの形態2の作業排他制御装置321により行われる処理のフローチャートである。図39をもとにこの処理を説明する。
まず、作業排他制御装置は、ホームサーバ制御装置より、例えば処理要求と共に渡されたワークアイテムから作業IDを取り出す(S1)。
【0267】
次に、作業排他制御装置は、要求された処理の種類を判定する(S2)。判定の結果、要求された処理がユーザシステムを操作するユーザからの作業アクティビティの処理中断処理の要求であればS3以降の処理を行ない、要求された処理がホームサーバ制御装置からの作業アクティビティの処理開始処理の要求であればS11以降の処理を行ない、要求された処理がホームサーバ制御装置からの作業アクティビティの処理終了処理の要求であればS21以降の処理を行なう。
【0268】
S2における判定処理の結果、ユーザからの処理中断の要求を受けたと判定した作業排他制御装置は、先に取り出した作業IDを検索キーとして、作業排他制御テーブルから対応する作業排他制御情報を検索し(S3)、その「処理状態」欄に「処理中断」を書き込み(S4)、今回の処理を終了する。
【0269】
一方、S2における判定処理の結果、ホームサーバ制御装置からの処理開始処理の要求を受けたと判定した作業排他制御装置は、先に取り出した作業IDを検索キーとして、作業排他制御テーブルから対応する作業排他制御情報を検索し(S11)、作業排他制御情報が見つかったか否かを判定する(S12)。
【0270】
S12における判定処理の結果、作業排他制御情報が見つからなかったと判定した作業排他制御装置は、作業排他制御テーブルに新たにエントリを作成し(S13)、処理要求と共に渡されたワークアイテムから作業ID、状態、手順名、担当者IDをコピーし(S14)、その後、後述するS17以降の処理を行なう。
【0271】
一方、S12における判定処理の結果、作業排他制御情報が見つかったと判定した作業排他制御装置は、見つけた作業排他制御情報の処理状態に「処理中」が示されているか否かを判定する(S15)。
【0272】
S15における判定処理の結果、作業排他制御情報の処理状態に「処理中」が示されていると判定した作業排他制御装置は、この作業アクティビティに対する処理開始の要求を却下することをホームサーバ制御装置に伝え(S16)、今回の処理を終了する。
【0273】
一方、S15における判定処理の結果、作業排他制御情報の処理状態に「処理中」が示されていないと判定した作業排他制御装置は、S17以降の処理を行なう。
【0274】
作業排他制御装置は、作業排他制御情報の処理状態に「処理中」を書き込み(S17)、この作業アクティビティに対する処理開始の要求を許可することをホームサーバ制御装置に伝え(S18)、今回の処理を終了する。
【0275】
また、前述したS2における判定処理の結果、ホームサーバ制御装置からの処理終了の要求を受けたと判定した作業排他制御装置は、先に取り出した作業IDを検索キーとして、作業排他制御テーブルから対応する作業排他制御情報を検索し(S21)、検索した作業排他制御情報を作業排他制御テーブルから削除し(S22)、今回の処理を終了する。
【0276】
図40は、図37に示すホームサーバの形態2のホームサーバ制御装置302により行われる処理のフローチャートである。図40をもとにこの処理を説明する。
【0277】
ホームサーバ制御装置は、受け取った情報の処理要求の種類を判定する(S1、S3、S5、S7、S9)。判定の結果、ユーザプログラムを操作するユーザから新規ユーザ接続の要求がなされたのであれば新規ユーザ接続処理を実行し(S2)、ユーザシステムからの新規作業プロセス生成の要求がなされたのであれば新規作業プロセス生成処理を実行し(S4)、メインサーバのワークフローエンジンで生成されたワークアイテムを渡されたのであればワークアイテム追加処理を実行し(S6)、ユーザシステムから作業アクティビティ処理開始時処理の要求が送られたのであれば作業アクティビティ処理開始時処理(S8)を実行し、ユーザシステムから作業アクティビティの処理終了の要求が送られたのであれば作業アクティビティ終了時処理(S10)を実行する。各処理の終了後は、次に送られてくる情報に対しての処理要求の種類の判定処理を繰り返す。
【0278】
なお、図40には示されていないが、ユーザシステムから作業アクティビティの処理中断の要求を受けた場合には、ホームサーバ制御装置はその要求をそのまま作業排他制御装置に渡す。
【0279】
図40に示されている各処理の中で、新規ユーザ接続処理(S2)、作業プロセス生成処理(S4)、ワークアイテム追加処理(S6)は、それぞれ、図30、図31、図32にフローチャートで示したホームサーバの形態1におけるホームサーバ制御装置によって行われる処理と同様である。
【0280】
図41は、図40にS8として示されているホームサーバ制御装置302により行われる作業アクティビティ処理開始時処理のフローチャートである。図41をもとにこの処理を説明する。
【0281】
まず、ホームサーバ制御装置は、作業排他制御装置に処理開始処理の実行を要求する(S41)。
その後、ホームサーバ制御装置は、作業排他制御装置による処理開始処理の実行の結果、処理開始が許可されたか否かを判定する(S42)。この判定処理の結果、処理開始が許可されたと判定したホームサーバ制御装置は、ユーザシステムに作業アクティビティの処理開始許可を返し(S43)、今回の処理を終了する。一方、この判定処理の結果、処理開始が許可されなかった(却下された)と判定したホームサーバ制御装置は、ユーザシステムに「処理開始失敗」を示すエラーを返し(S44)、今回の処理を終了する。
【0282】
図42は、図40にS10として示されているホームサーバ制御装置302により行われる作業アクティビティ終了時処理のフローチャートである。図42をもとにこの処理を説明する。
【0283】
まず、ホームサーバ制御装置は、受け取った作業アクティビティ終了状態の情報から終了した作業の作業IDを取得し(S51)、その作業IDに対応するワークアイテムが格納されているワークアイテム管理装置内の格納位置を取得する(S52)。
【0284】
そして、ワークアイテム管理装置からそのワークアイテムを削除し(S53)、作業排他制御装置に処理終了時処理の実行を要求し(S54)、作業アクティビティ終了の要求を発したユーザシステムから終了した作業アクティビティに関するワークアイテムを削除し(S55)、ホームサーバ用通信管理装置に受け取った作業アクティビティ終了状態を渡し(S56)、処理を終了する。
【0285】
図43は、図19のワークフロー管理システムで用いられるホームサーバの形態3のシステム構成図である。
図43において、図27に示すホームサーバの形態1のシステム構成図と共通の構成要素には共通の番号を付している。
【0286】
図43に示すホームサーバの形態3の構成は、起票処理装置331及び作業手順定義情報格納装置332を有する点において、図27に示すホームサーバの形態1の構成と異なっている。
【0287】
今まで説明したワークフロー管理システムでは、ユーザがユーザシステムにおいて新規に作業プロセスを生成するときには、ユーザシステムはメインサーバに対して新規作業プロセスの生成処理要求を行ない、メインサーバ内のワークフローエンジンで新たな作業プロセスの生成が行われ、そこでその作業プロセスの最初(作業手順0)の作業アクティビティの処理に必要なワークアイテム(帳票のフォームなど)が生成され、そのワークアイテムをユーザシステムが受け取って、初めて一連の作業プロセスの最初の作業手順である作業アクティビティの処理をユーザは開始できるようになっていた。そのため、実際にユーザが最初の作業アクティビティの処理を開始できるようになるまでには相当の時間を要していた。
【0288】
図43に示すホームサーバの形態3では、この問題に鑑み、ホームサーバにおいて新規の作業プロセスの生成時の最初の作業アクティビティのためのワークアイテムを仮に生成する処理(この処理を起票処理と呼ぶ)を実行することが大きな特徴であり、この特徴により、新規作業プロセスの生成に伴うワークフローエンジンの処理負担は軽減され、また、ユーザが新規作業プロセスの生成要求を行なってから実際に最初の作業アクティビティの処理を開始できるようになるまでのユーザシステムにおける待ち時間が短縮される。
【0289】
図43において、起票処理装置331は、ユーザからの指示に従い、作業手順定義情報格納装置332に格納されている作業手順定義情報から仮ワークアイテムを生成するものである。
【0290】
作業手順定義情報格納装置332は作業手順定義情報を格納するものであり、メインサーバの各ワークフローエンジンが有している作業手順定義情報格納装置に格納されている作業手順定義情報のうち、このホームサーバで必要となるものを予め格納しておく。また、仮ワークアイテムの生成のためにメインサーバの一般用データベースに格納されている情報が必要な場合もあるので、そのような仮ワークアイテムの生成を行なうのであれば、これらの情報も予め格納しておくようにする。
【0291】
図43の構成において、例えば、ユーザシステムA311においてユーザが新規に作業プロセスの生成を行なうとき、まず起票の要求がホームサーバ制御装置302を介して起票処理装置331へ伝えられる。起票処理装置331は、作業手順定義情報格納装置332に格納されている作業手順定義情報から仮ワークアイテムを生成してユーザシステムA311に渡す。ユーザシステムA311ではこの仮ワークアイテムを用いて最初の作業手順である作業アクティビティを処理し、ホームサーバ制御装置302に処理結果を渡す。ホームサーバ制御装置302がメインサーバのワークフローエンジンへ新規作業プロセス生成要求を送るときには、この仮ワークアイテムを添付して送付する。この新規作業プロセス生成要求を受け取ったメインサーバのワークフローエンジンでは、添付されていた仮ワークアイテムを作業情報に反映させた上で正規のワークアイテムを生成し、以降の作業アクティビティについての廻送処理を進めていく。
【0292】
図43において、ホームサーバ用通信管理装置301、ユーザシステム生成装置303、接続管理装置304が行なう処理は、それぞれ、図34、図35、図36にフローチャートで示したホームサーバの形態1におけるそれぞれの装置によって行われる処理と同様である。また、図43において、ワークアイテム管理装置305、ユーザ情報管理テーブル306にそれぞれ格納される情報の内容もホームサーバの形態1におけるものと同様である。
【0293】
図44は、図43に示すホームサーバの形態3の起票処理装置331により行われる処理のフローチャートである。図44をもとにこの処理を説明する。
ユーザシステムを操作するユーザからの指示を受けた起票処理装置は、指示に含まれている作業種別を検索キーとして作業手順定義情報格納装置に格納されている作業手順定義情報を検索し(S1)、検索結果をもとに仮ワークアイテムを生成し(S2)、生成した仮ワークアイテムをユーザシステムに渡し(S3)、処理を終了する。
【0294】
図43のホームサーバ制御装置302が行なう処理は、図29にフローチャートで示したホームサーバの形態1におけるホームサーバ制御装置によって行われる処理と同様であり、また、図29に示すフローチャートにおいてサブルーチンとして示されている4つの処理の中で、新規ユーザ接続処理、ワークアイテム追加処理、作業終了時処理については、それぞれ図30、図32、図33に示す処理のフローチャートで示される処理が同様に行なわれる。しかし、新規作業プロセス生成処理については、図31のフローチャートで示されている処理に新たに処理が追加される。
【0295】
図45は、ホームサーバの形態3のホームサーバ制御装置302によって行われる新規作業プロセス生成処理のフローチャートである。図45において、図31に示すホームサーバの形態1のホームサーバ制御装置302によって行われる新規作業プロセス生成処理のフローチャートと共通の処理ステップには共通の番号を付している。
【0296】
図45を図31と比較すると、作成した新規作業プロセス生成メッセージに作業種別を埋め込んだ後に、起票処理装置で生成した仮ワークアイテムを埋め込んで(S24)、ホームサーバ用通信管理装置に渡すことが異なっている。
【0297】
また、図43に示すホームサーバを図19に示すワークフロー管理システムで用いるときには、図25にフローチャートで示した、ワークフロー管理システムの実施の形態1のワークフローエンジンA及びB(42、43)により行われる処理に変更を要する。
【0298】
図46は、図43に示すホームサーバの形態3を本発明のワークフロー管理システムの実施の形態1に用いるときにワークフローエンジンA及びB(42、43)により行われる処理のフローチャートである。図46において、図25に示すフローチャートと共通の処理ステップには共通の番号を付している。
【0299】
図46を図25と比較すると、ホームサーバから作業アクティビティ終了の要求を受けたときのワークフローエンジンの処理は全く同様である。ホームサーバから新規作業プロセス開始の要求を受けたときのワークフローエンジンの処理では、作業情報の状態欄に「作業手順0」を書き込み(S26)、このワークフローエンジンでワークアイテムを生成して作業情報をコピーする(S27)処理が削除され、代わりに、新たな処理として、受け取った新規作業プロセス開始メッセージに含まれている仮ワークアイテムを取り出し(S29)、取り出した仮ワークアイテムに示されているデータの内容を作業情報にコピーし(S30)、そして、作業情報の状態欄に「作業手順1」を書き込み(S31)、開始が要求された作業プロセスの「作業手順1」の作業アクティビティの担当者IDを取得して作業情報の担当者欄に書き込み(S32)、その「作業手順1」のワークアイテムを生成して作業情報をコピーする(S33)処理が行われる。
【0300】
図47は、図19のワークフロー管理システムで用いられるホームサーバの形態4のシステム構成図である。
図47において、図27に示すホームサーバの形態1のシステム構成図と共通の構成要素には共通の番号を付している。
【0301】
図47に示すホームサーバの形態4の構成は、次作業アクティビティ検出装置341及び作業手順定義情報格納装置342を有する点において、図27に示すホームサーバの形態1の構成と異なっている。
【0302】
今まで説明したワークフロー管理システムでは、ワークフローエンジンによる作業アクティビティについての廻送処理は終了状態となったすべての作業アクティビティについて行われていた。従って、ある作業アクティビティを終了した担当者と終了したその作業アクティビティの次の作業アクティビティ(次作業アクティビティ)の担当者とが同一のユーザであり、同一のユーザシステムで次作業アクティビティが処理されることが明らかな場合であっても、ユーザシステムとワークフローエンジンとの間でワークアイテムの受け渡しが行なわれる。そのために、ユーザがユーザシステムにおいてある作業アクティビティを終了させてから、その作業アクティビティに続く同一ユーザが担当である次作業アクティビティを開始できるようになるまでに相当の時間を要することがあった。
【0303】
図47に示すホームサーバの形態4においては、この問題に鑑み、ホームサーバにおいて、処理終了となった作業アクティビティと、次作業アクティビティと、のそれぞれの担当者を比較し、両作業アクティビティの担当者が一致する場合には、ワークフローエンジンによる次作業アクティビティについての廻送は行なわないようにさせる処理を実行することが大きな特徴であり、この特徴により、処理を終了となった作業アクティビティと次作業アクティビティとの担当者が一致する場合に、ワークフローエンジンの廻送処理の負担が軽減され、また、ユーザがある作業アクティビティを終了させてから次作業アクティビティを開始できるようになるまでのユーザシステムにおける待ち時間が短縮される。
【0304】
図47において、次作業アクティビティ検出装置341は、ホームサーバ制御装置302からの処理要求に従い、処理を終了した作業アクティビティの次作業アクティビティを検出し、処理を終了した作業アクティビティと、次作業アクティビティと、のそれぞれの担当者が一致するか否かを判別してその判別結果をホームサーバ制御装置302へ知らせるものである。
【0305】
作業手順定義情報格納装置342は作業手順定義情報を格納するものであり、図43に示した作業手順定義情報格納装置332と同様に、ホームサーバの各ワークフローエンジンが有している作業手順定義情報格納装置に格納されている作業手順定義情報と同一のものを予め格納しておく。
【0306】
図47の構成において、例えば、ユーザシステムA311においてユーザがある作業手順の作業アクティビティを終了させたとすると、この作業アクティビティの終了要求はユーザシステムA311よりホームサーバ制御装置302へと伝えられる。ここで、ホームサーバ制御装置302は次作業アクティビティ検出装置341へ次作業アクティビティ検出の処理の実行を要求する。
【0307】
次作業アクティビティ検出装置341は、この要求に従い、作業手順定義情報格納装置342に格納されている作業手順定義情報を参照して終了した作業アクティビティ続く次作業アクティビティを検出し、更に、処理を終了した作業アクティビティと検出した次作業アクティビティとの担当者が同一であるか否かを判定し、この判定結果をホームサーバ制御装置302へ返す。
【0308】
ホームサーバ制御装置302は、次作業アクティビティ検出装置341より返された判定結果に基づき、終了した作業アクティビティと検出した次作業アクティビティとの担当者が同一であれば、ユーザシステムA311で同一ユーザが次作業アクティビティの処理を直ちに開始できるようにすると共に、ホームサーバ用通信管理装置301を介してメインサーバ内のこの作業アクティビティの管理担当ワークフローエンジンに対し、次作業アクティビティのワークアイテムの廻送不要を通知する。
【0309】
図47において、ホームサーバ用通信管理装置301、ユーザシステム生成装置303、接続管理装置304が行なう処理は、それぞれ、図34、図35、図36にフローチャートで示したホームサーバの形態1におけるそれぞれの装置によって行われる処理と同様である。また、図47において、ワークアイテム管理装置305、ユーザ情報管理テーブル306にそれぞれ格納される情報の内容もホームサーバの形態1におけるものと同様である。
【0310】
図48は、図47に示すホームサーバの形態4の次作業アクティビティ検出装置341により行われる処理のフローチャートである。図48をもとにこの処理を説明する。
【0311】
ホームサーバ制御装置からの処理要求を受けた次作業アクティビティ検出装置は、併せて受け取ったワークアイテムから作業種別IDを取り出し(S1)、この取り出した作業種別IDを検索キーとして作業手順定義情報格納装置を検索し、対応する作業手順情報を取り出す(S2)。
【0312】
また、次作業アクティビティ検出装置は、ワークアイテムから現在の手順IDを取り出し(S3)、この取り出した手順IDを検索キーとして、先に取り出した作業手順情報から作業プロセス全体の手順を取り出し(S4)、更に、取り出した手順から現在の作業アクティビティに対する次の作業アクティビティについての作業手順IDを取り出す(S5)。
【0313】
ここで、次作業アクティビティ検出装置は、取り出した次作業アクティビティについての作業手順IDがその作業プロセスの完了を示すものであるか否かを判定する(S6)。判定の結果、次作業アクティビティについての作業手順IDが作業プロセスの完了を示すものではないのであればS7以降の処理を行ない、次作業アクティビティについてのの作業手順IDが作業プロセスの完了を示すものであればS11の処理を行なう。
【0314】
S6における判定処理の結果、次作業アクティビティについての作業手順IDが作業プロセスの完了を示すものではないと判定した次作業アクティビティ検出装置は、先に取り出した作業手順情報の中から次作業アクティビティについての作業手順IDに対応する担当者の情報を取得し(S7)、そして、処理を終了した現在の作業アクティビティの担当者とこの次作業アクティビティの担当者とが同じであるか否かを判定する(S8)。この判定の結果、両作業アクティビティの担当者が同じであればS9以降の処理を行ない、両作業アクティビティの担当者が同じでないのであればS11の処理を行なう。
【0315】
S8における判定処理の結果、現在の作業アクティビティと次作業アクティビティとの担当者が同じであると判定した次作業アクティビティ検出装置は、次作業の手順IDをワークアイテムの「状態」欄に書き込み(S9)、ホームサーバ制御装置に「返送不要」を示す情報を返し(S10)、今回の処理を終了する。
【0316】
一方、S6における判定処理の結果、次作業アクティビティについての作業手順IDが作業プロセスの完了を示すものであると判定したか、あるいは、S8における判定処理の結果、現在の作業アクティビティと次作業アクティビティとの担当者が同じではないと判定した次作業アクティビティ検出装置は、ホームサーバ制御装置に「要返送」を示す情報を返し(S11)、今回の処理を終了する。
【0317】
図47のホームサーバ制御装置302が行なう処理は、図29にフローチャートで示したホームサーバの形態1におけるホームサーバ制御装置によって行われる処理と同様であり、また、図29に示すフローチャートにおいてサブルーチンとして示されている4つの処理の中で、新規ユーザ接続処理、新規作業生成処理、ワークアイテム追加処理については、それぞれ図30、図31、図32にフローチャートで示されている処理が同様に行なわれる。しかし、作業アクティビティ終了時処理については、図33のフローチャートで示されている処理に新たに処理が追加される。
【0318】
図49は、ホームサーバの形態4のホームサーバ制御装置302によって行われる作業アクティビティ終了時処理のフローチャートである。図49において、図33に示すホームサーバの形態1のホームサーバ制御装置302によって行われる作業終了時処理のフローチャートと共通の処理ステップには共通の番号を付している。図49をもとに、作業アクティビティ終了時処理を説明する。
【0319】
ホームサーバ制御装置は、受け取った作業アクティビティ終了状態の情報から処理を終了した作業アクティビティについての作業プロセスの作業IDを取得し(S41)、その作業IDに対応するワークアイテムが格納されているワークアイテム管理装置内の格納位置を取得し(S42)た後に、次作業アクティビティ検出装置に次作業アクティビティの検出を依頼する(S46)。
【0320】
そして、ホームサーバ制御装置は、次作業アクティビティ検出装置による次作業アクティビティ検出の処理結果が「要転送」であるか否かを判定する(S47)。
【0321】
S47における判定処理の結果、次作業アクティビティ検出の処理結果が、「要転送」であったと判定したホームサーバ制御装置は、ワークアイテム管理装置からそのワークアイテムのエントリを削除し(S43)、更に作業アクティビティ終了の要求を発したユーザシステムからその作業を終了したワークアイテムを削除し(S44)、受け取った作業アクティビティ終了状態に、ワークフローエンジンによるワークアイテムの転送が必要であることを示す「要転送」フラグを追加してホームサーバ用通信管理装置に渡し(S48)、処理を終了する。
【0322】
一方、S47における判定処理の結果、次作業アクティビティ検出の処理結果が、「要転送」でなかったと判定したホームサーバ制御装置は、受け取った作業アクティビティ終了状態に、ワークフローエンジンによるワークアイテムの転送が不要であることを示す「転送不要」フラグを追加してホームサーバ用通信管理装置に渡し(S49)、処理を終了する。
【0323】
図50は、図47に示すホームサーバの形態4を本発明のワークフロー管理システムの実施の形態1に用いるときにワークフローエンジンA及びB(42、43)により行われる処理のフローチャートである。図50において、図25に示すフローチャートと共通の処理ステップには共通の番号を付している。
【0324】
図50を図25と比較すると、ホームサーバから新規作業プロセス開始の要求を受けたときのワークフローエンジンの処理は全く同様である。また、ホームサーバから作業アクティビティ終了の要求を受けたときのワークフローエンジンの処理については判断処理がひとつ追加されることのみが異なっている。
【0325】
図50において、作業アクティビティ終了の要求を受けたときのワークフローエンジンは、図25と同様にS1からS8までの処理を行なう。
その後、ワークフローエンジンは、取り出した次作業アクティビティの作業手順IDに対応する処理内容が作業プロセスの完了であるか否かを判定する(S9)。その処理内容が作業プロセスの完了であるならば、図25と同様にS10の処理を行ない、その処理内容が作業プロセスの完了ではないのであればS15の判定処理を行なう。
【0326】
S9における判定処理の結果、次作業アクティビティの処理内容が作業プロセスの完了ではないと判定したワークフローエンジンは、作業アクティビティ終了状態に「要転送フラグ」が追加されているか否かを判定する(S15)。
【0327】
S15による判定処理の結果、作業アクティビティ終了状態に「要転送フラグ」が追加されていると判定したワークフローエンジンは、図25に示す処理と同様に、次作業アクティビティのためのワークアイテムの生成と廻送をS11からS14にかけて行ない、今回の処理を終了する。
【0328】
一方、S15による判定処理の結果、作業アクティビティ終了状態に「要転送フラグ」が追加されていないと判定したワークフローエンジンは、このまま何もせずに今回の処理を終了する。
【0329】
図51は、本発明のワークフロー管理システムの実施の形態2の全体構成図である。
また、図52は、図51のワークフロー管理システムで用いられるホームサーバのシステム構成図である。
【0330】
図51において、図19に示すワークフロー管理システムの実施の形態1の全体構成図と共通の構成要素には共通の番号を付しており、また、図52において、図27に示すホームサーバの形態1のシステム構成図と共通の構成要素には共通の番号を付している。
【0331】
図51に示すワークフロー管理システムの実施の形態2の構成は、作業履歴検索装置92をメインサーバS’’に有する点において、図19に示すワークフロー管理システムの実施の形態1の構成と異なっている。また、図52に示すホームサーバの構成は、作業履歴管理装置351を有する点において、図27に示すホームサーバの形態1の構成と異なっている。
【0332】
ワークフロー管理システムにおいて多用される機能のひとつに作業履歴の検索がある。この機能は、処理を済ませた作業アクティビティについての履歴をユーザ毎に確認する機能である。
【0333】
従来の単一のワークフローエンジンを有するワークフロー管理システムでは、ワークフローエンジンがこの作業履歴の検索をも処理していたので、多用される作業履歴の検索によって、ワークフロー管理全体の処理の速度を低下させる要因の一つとなっていた。
【0334】
複数のワークフローエンジンを有するワークフロー管理装置では、個々のワークフローエンジンによってこの作業履歴の検索を処理させることも可能ではあるが、あるユーザの行なった作業アクティビティの管理を担当していた可能性は全てのワークフローエンジンにあるので、一人のユーザの作業履歴の検索のために全てのワークフローエンジンで検索処理を行なわせる必要があり、ワークフローエンジンに大きな処理の負担となる。
【0335】
そこで、作業履歴の格納及び検索をワークフローエンジン管理装置に行なわせるようにすることが考えられる。しかしながら、ワークフローエンジン管理装置に作業履歴の格納及び検索をすべて行なわせると、例えば、多数のユーザシステムから同時に作業履歴の検索の要求があったときなどは、今度はワークフローエンジン管理装置の処理の負担が大きくなり、作業履歴の検索に相当の時間を要することとなってしまう。
【0336】
図51及び図52に示すホームサーバを用いたワークフロー管理システムにおいては、ホームサーバに属するユーザの行なった作業アクティビティの履歴はそのユーザが属するホームサーバで格納するようにし、作業履歴の検索の処理はホームサーバに処理させるようにしたことが大きな特徴であり、この特徴により、作業履歴の検索に伴うメインサーバの有する各要素の処理負担は軽減される。
【0337】
図51において、作業履歴検索装置92は、履歴検索を行なうユーザのIDをもとに、ユーザ情報管理テーブルC203より履歴検索を行なうユーザが属するホームサーバを検索し、そのホームサーバに履歴検索を実行させ、そのホームサーバからの履歴検索結果を履歴検索を要求したホームサーバのユーザシステムへ通知するものである。
【0338】
また、図52において、作業履歴管理装置351は、このホームサーバに属するユーザがユーザシステムで行なった作業アクティビティの履歴を格納するものである。
【0339】
図53は、作業履歴管理装置に格納されている履歴情報の例を示す図である。同図に示すように、作業履歴管理装置に格納される履歴情報としては、各作業手順における作業アクティビティ毎に、作業プロセスの作業ID、状態(手順ID)、手順名、担当者ID、担当ワークフローエンジンID、履歴番号(作業履歴を格納するときに記される連続番号)などがある。
【0340】
図51及び図52の構成において、例えば、ユーザシステムA311においてユーザがある作業手順の作業アクティビティの処理を終了させたとすると、ホームサーバ制御装置302は、今まで説明した作業アクティビティ終了時の処理に加え、作業履歴管理装置351に終了した作業アクティビティの履歴を格納する。
【0341】
また、例えば、ユーザシステムB312からあるユーザの作業履歴の検索が要求されると、その要求は、メインサーバS’’内の作業履歴検索装置92に伝えられる。作業履歴検索装置92はユーザ情報管理テーブルC203を参照して検索対象のユーザが属するホームサーバを探し出し、そのホームサーバへ作業履歴の検索要求を送る。
【0342】
作業履歴の検索要求を受け取ったホームサーバ制御装置302は、作業履歴管理装置351を参照して格納されている検索対象のユーザが行なった作業アクティビティの履歴を探し出し、その作業履歴の検索結果をメインサーバS’’内の作業履歴検索装置92に返す。
【0343】
作業履歴の検索結果を受け取った作業履歴検索装置92は、その検索結果を検索を要求したユーザシステムB312へ宛てて送出する。
まず、図51に示す本発明のワークフロー管理システムの実施の形態2における各構成要素により行われる処理を説明する。
【0344】
図51において、ワークフローエンジン管理装置40’、各ワークフローエンジン(42、43)、各ワークフローエンジン用通信管理装置(461’、462’)、により行われる処理は、それぞれ、図23、図25、図26にフローチャートで示した本発明のワークフロー管理システムの実施の形態1における各構成要素が行なう処理と同様である。また、図51において、ワークフローエンジン管理テーブル50、作業情報格納装置(61、62)、作業手順定義情報格納装置(64、65)、一般用データベース66、各ユーザ情報管理テーブル(201、202、203)、にそれぞれ格納される情報の内容も本発明のワークフロー管理システムの実施の形態1におけるものと同様である。
【0345】
図54は、図51に示す本発明のワークフロー管理システムの実施の形態2における作業履歴検索装置92により行われる処理のフローチャートである。図54をもとにこの処理を説明する。
【0346】
まず、作業履歴検索装置は、作業履歴検索を行なうユーザのIDを受け取り(S1)、受け取ったユーザIDを検索キーとしてユーザ情報管理テーブルからそのユーザの属するホームサーバ(検索処理の担当ホームサーバ)を検索する(S2)。
【0347】
そして、作業履歴検索装置は、作業履歴検索要求メッセージを作成し(S3)、このメッセージに担当ホームサーバのIDとユーザIDとをセットし(S4)、ワークフローエンジン管理装置用通信管理装置にこの作業履歴検索要求メッセージを渡し(S5)、ホームサーバから作業履歴検索の結果が返送されてくるのを待つ(S6)。
【0348】
その後、履歴検索結果を受け取った作業履歴検索装置は、作業履歴検索を要求したホームサーバのユーザシステムへ宛ててこの作業履歴検索結果を返し(S7)、今回の処理を終了する。
【0349】
図55は、図51に示す本発明のワークフロー管理システムの実施の形態2におけるワークフローエンジン管理装置用通信管理装置463’により行われる処理のフローチャートである。図55をもとにこの処理を説明する。
【0350】
まず、ワークフローエンジン管理装置用通信管理装置は、受け取ったメッセージの種類を判定する(S1)。判定の結果、受け取ったメッセージがワークフローエンジンからの作業完了のメッセージであるか、もしくは、ホームサーバからの新規作業生成のメッセージであればS2の処理を行ない、受け取ったメッセージがワークフローエンジン管理装置からの新規作業プロセス開始要求のメッセージであればS3の処理を行ない、受け取ったメッセージが作業履歴検索装置からの作業履歴検索要求のメッセージであればS4の処理を行ない、受け取ったメッセージがホームサーバからの作業履歴の検索結果のメッセージであればS5の処理を行なう。
【0351】
S1における判定処理の結果、受け取ったメッセージが作業プロセス完了のメッセージ、もしくは、新規作業プロセス生成のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、そのメッセージをワークフローエンジン管理装置に渡し(S2)、今回の処理を終了する。
【0352】
一方、S1における判定処理の結果、受け取ったメッセージが新規作業プロセス開始要求のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、このメッセージに記されている担当ワークフローエンジンIDに対応するワークフローエンジンにこのメッセージを渡し(S3)、今回の処理を終了する。
【0353】
また、S1における判定処理の結果、受け取ったメッセージが作業履歴検索要求のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、このメッセージに記されている担当ホームサーバIDに対応するホームサーバにこのメッセージを渡し(S4)、今回の処理を終了する。
【0354】
また、S1における判定処理の結果、受け取ったメッセージが作業履歴の検索結果のメッセージであると判定したワークフローエンジン管理装置用通信管理装置は、作業履歴検索装置にこのメッセージを渡し(S5)、今回の処理を終了する。
【0355】
次に、図52に示すホームサーバの各構成要素により行われる処理を説明する。
図52において、ユーザシステム生成装置303、接続管理装置304が行なう処理は、それぞれ、図35、図36にフローチャートで示したホームサーバの形態1におけるそれぞれの装置によって行われる処理と同様である。また、図52において、ワークアイテム管理装置305、ユーザ情報管理テーブル306にそれぞれ格納される情報の内容もホームサーバの形態1におけるものと同様である。
【0356】
図56は、図52に示すホームサーバのホームサーバ用通信管理装置301により行われる処理のフローチャートである。図56をもとにこの処理を説明する。
【0357】
まず、ホームサーバ用通信管理装置は、受け取ったメッセージの種類を判定する(S1)。判定の結果、受け取ったメッセージがホームサーバ制御装置からの新規作業プロセス生成のメッセージであればS2の処理を行ない、受け取ったメッセージがホームサーバ制御装置からの作業アクティビティ終了状態の情報であればS3以降の処理を行ない、受け取ったメッセージがメインサーバのワークフローエンジンで生成されたワークアイテムもしくはメインサーバの作業履歴検索装置で生成された作業履歴検索要求のメッセージであればS5の処理を行なう。
【0358】
S1における判定処理の結果、受け取ったメッセージが新規作業プロセス生成のメッセージであると判定したホームサーバ用通信管理装置は、そのメッセージをワークフローエンジン管理装置用通信管理装置に送り(S2)、今回の処理を終了する。
【0359】
一方、S1における判定処理の結果、受け取ったメッセージが作業アクティビティ終了状態の情報であると判定したホームサーバ用通信管理装置は、その作業アクティビティ終了状態の情報の中から担当ワークフローエンジンIDを取り出し(S3)、その担当ワークフローエンジンIDに対応するワークフローエンジン用通信管理装置に受け取った作業アクティビティ終了状態の情報を送り(S4)、今回の処理を終了する。
【0360】
また、S1における判定処理の結果、受け取ったメッセージがワークアイテム、もしくは作業履歴検索要求のメッセージであると判定したホームサーバ用通信管理装置は、受け取ったメッセージをホームサーバ制御装置に渡し(S5)、今回の処理を終了する。
【0361】
図57は、図52に示すホームサーバのホームサーバ制御装置302により行われる処理のフローチャートである。図57をもとにこの処理を説明する。
ホームサーバ制御装置は、受け取った情報の処理要求の種類を判定する(S1、S3、S5、S7、S9)。判定の結果、ユーザプログラムを操作するユーザから新規ユーザ接続の要求がなされたのであれば新規ユーザ接続処理を実行し(S2)、ユーザシステムからの新規作業プロセス生成の要求がなされたのであれば新規作業プロセス生成処理を実行し(S4)、メインサーバのワークフローエンジンで生成されたワークアイテムを渡されたのであればワークアイテム追加処理を実行し(S6)、ユーザシステムから作業アクティビティ終了の要求が送られたのであれば作業アクティビティ終了時処理(S8)を実行し、メインサーバの作業履歴検索装置で生成された作業履歴検索要求がわたされたのであれば作業履歴検索処理を実行する(S10)。各処理の終了後は、次に送られてくる情報に対しての処理要求の種類の判定処理を繰り返す。
【0362】
図57に示されている各処理の中で、新規ユーザ接続処理(S2)、作業プロセス生成処理(S4)、ワークアイテム追加処理(S6)は、それぞれ、図30、図31、図32にフローチャートで示した本発明のワークフロー管理システムの実施の形態1で用いられるホームサーバの形態1におけるホームサーバ制御装置によって行われる処理と同様である。
【0363】
図58は、図57にS8として示されているホームサーバ制御装置302により行われる作業アクティビティ終了時処理のフローチャートである。図58をもとにこの処理を説明する。
【0364】
まず、ホームサーバ制御装置は、受け取った作業アクティビティ終了状態の情報から終了した作業の作業IDを取得し(S41)、その作業IDに対応するワークアイテムが格納されているワークアイテム管理装置内の格納位置を取得する(S42)。
【0365】
そして、ワークアイテム管理装置からそのワークアイテムを削除し(S43)、作業アクティビティ終了の要求を発したユーザシステムからその作業アクティビティについてのワークアイテムを削除する(S44)。
【0366】
その後、ホームサーバ制御装置は、履歴管理装置内に新たなエントリを追加し(S45)、この追加したエントリに終了した作業アクティビティについての履歴情報と履歴番号をコピーし(S46)、ホームサーバ用通信管理装置に受け取った作業終了状態を渡し(S47)、処理を終了する。
【0367】
図59は、図57にS10として示されているホームサーバ制御装置302により行われる作業履歴検索処理のフローチャートである。図59をもとにこの処理を説明すると、ホームサーバ制御装置は、検索対象であるユーザのユーザIDを検索キーとして作業履歴検索装置からそのユーザの作業履歴情報を検索し(S51)、処理を終了する。
【0368】
なお、以上まで説明したホームサーバを用いたワークフロー管理システムを構成するメインサーバ及びホームサーバの両者もしくはいずれかが実行する本発明に関する処理を一般的なコンピュータに行なわせることは可能である。そのためには、今まで説明したメインサーバやホームサーバを構成する各構成要素によって行われる処理をコンピュータに行なわせるためのプログラムを作成し、作成したプログラムをコンピュータに実行させるようにする。
【0369】
図60は、上述した本発明に関する処理を実行できる一般的なコンピュータの内部構成ブロックの例を示す図である。図60に示すコンピュータには、このコンピュータ全体の動作をプログラムに基づいて制御する中央処理装置401、中央処理装置401によって実行されるプログラムや中央処理装置401によって演算処理されたデータなどを格納する半導体メモリやハードディスク装置などの記憶装置402、中央処理装置401によって処理されるプログラムやデータが入力されるキーボードや記憶媒体読取装置などや中央処理装置401による演算処理結果を出力するプリンタやディスプレイなどの入出力装置403、ネットワークを介して他のコンピュータなどの装置との間でデータの授受を行なう外部インターフェース装置404を有しており、各構成要素はシステムバス405を介して相互にデータの授受が可能である。
【0370】
ここで、図60の例に示すようなコンピュータで、今まで説明したメインサーバやホームサーバの両者もしくはいずれかを構成する各構成要素によって行われる処理を実行させるためのプログラムは、コンピュータによって読み取り可能な記憶媒体に記憶させるようにする。そして、読み出されたプログラムは記憶装置402に格納させ、それを中央処理装置401に実行させるようにする。
【0371】
図61は、上述したプログラムを記憶させるコンピュータによって読み取り可能な記憶媒体の例を示す図である。同図に示すように、ここで用いることの可能な記憶媒体の例としては、いわゆるCD−ROM、DVD−ROM、フロッピーディスク、MO(光磁気ディスク)などといったコンピュータ500が備える記憶媒体読取装置で読み取り可能な可搬型記憶媒体501、コンピュータ500内に備える半導体メモリやハードディスク装置などのメモリ502、あるいは、回線504を介してコンピュータ500にプログラムを伝送することのできるプログラムサーバ505が備えている記憶装置503などがあり、これらのいずれであっても構わない。
【0372】
なお、前述した図6に示す本発明のワークフロー管理プログラム格納記憶媒体74も、先に説明した以外に、図61の例に示すような記憶媒体であっても良く、このワークフロー管理プログラム格納記憶媒体74に格納されているプログラムを図60の例に示すような一般的なコンピュータに読み出させて記憶装置402に格納し、それを中央処理装置401が実行するようにすれば、前述した本発明のワークフロー管理装置の各実施の形態における各構成要素が行なう処理と同様の処理をコンピュータに行なわせることが可能である。
【0373】
【発明の効果】
本発明によれば、ワークフローエンジン間で作業手順、作業情報の転送を高速に行なうことができるので、ワークフローエンジンの負荷の分散、もしくは、作業のバックアップ、代替などを迅速に行なうことができる。そのため、特定のワークフローエンジンにアクセスの集中することがなく、管理する作業量が増えても廻送速度が遅くなることがない。また、バックアップのワークフローエンジンを持つことが容易にできるので、ワークフローエンジンに障害が発生した場合にも代替ワークフローエンジンに迅速に切り換えることができる。そのため、信頼性の高いワークフロー管理装置が得られる。
【0374】
更に、本発明は、次作業アクティビティの次の作業アクティビティを管理するワークフローエンジンを予測して、そのワークフローエンジンに作業情報、作業手順を高速に転送し、そのワークフローエンジンで処理ができるので、作業を能率的に行なうことができるようになる。
【0375】
また、本発明よれば、ワークフローエンジンを有するメインサーバとユーザの操作するユーザシステムとの間に、ホームサーバを設けるようにするので、ユーザが自分の担当である作業アクティビティの処理が行なえるユーザシステムを複数提供できるようになり、複数のユーザによって並行して作業アクティビティの処理を進めることが容易になり、全体の作業の能率が向上する。
【0376】
そして、この複数のユーザによって並行して作業アクティビティを処理する際に問題となる作業アクティビティの排他制御をホームサーバで行なうようすることで、ワークフローエンジンへの処理の負担が少なくなる。
【0377】
また、新規に作業プロセスが生成された際に必要な起票処理をホームサーバで行なうようすることで、新規作業プロセス生成時のユーザへのレスポンスが高速になり、また、ワークフローエンジンへの処理の負担も少なくなる。
【0378】
また、ホームサーバにおいて、処理を終了した作業アクティビティとその作業アクティビティに続く次の作業アクティビティとのそれぞれの担当者が一致する場合には、メインサーバのワークフローエンジンに次の作業アクティビティについての廻送処理は行なわないように通知する処理を行なうことにより、ワークフローエンジンによる廻送処理の負担は軽減され、また、ユーザがある作業アクティビティを終了させてから次作業アクティビティを開始できるようになるまでの待ち時間が短縮される。
【0379】
また、ホームサーバに属するユーザの行なった作業アクティビティの履歴をそのホームサーバで格納するようにし、作業履歴の検索の処理はホームサーバに処理させるようにすることにより、メインサーバの処理負担は軽減される。
【図面の簡単な説明】
【図1】本発明の第一の基本構成を示す図である。
【図2】本発明の第二の基本構成を示す図である。
【図3】本発明のワークフロー管理装置の実施の形態1のシステム構成図である。
【図4】本発明の作業情報管理テーブルの例を示す図である。
【図5】本発明のワークフローエンジン管理テーブルとワークアイテムの例を示す図である。
【図6】本発明のワークフロー管理プログラム格納記憶媒体を示す図である。
【図7】本発明のワークフロー管理装置の実施の形態1のワークフローエンジン管理装置のフローチャートである。
【図8】本発明のワークフロー管理装置の実施の形態1のワークフローエンジン用通信管理装置のフローチャートである。
【図9】本発明のワークフロー管理装置の実施の形態1のユーザシステム用通信管理装置のフローチャートである。
【図10】本発明のワークフロー管理装置の実施の形態2のシステム構成図である。
【図11】本発明のワークフロー管理装置の実施の形態2のワークフローエンジン管理装置のフローチャートである。
【図12】本発明のワークフロー管理装置の実施の形態3のシステム構成図である。
【図13】本発明のワークフロー管理装置の実施の形態4のシステム構成図である。
【図14】本発明のワークフロー管理装置の実施の形態4のワークフローエンジン管理装置のフローチャートである。
【図15】本発明のワークフロー管理装置の実施の形態4の異常状態検出装置のフローチャートである。
【図16】本発明のワークフロー管理装置の実施の形態4のワークフローエンジンのフローチャートである。
【図17】本発明のワークフロー管理装置の実施の形態5のシステム構成図である。
【図18】本発明のワークフロー管理装置の実施の形態5のワークフローエンジン管理装置のフローチャートである。
【図19】本発明のワークフロー管理システムの実施の形態1の全体構成図である。
【図20】作業手順定義情報格納装置に格納されている作業手順の定義例を示す図である。
【図21】作業情報格納装置に格納される作業情報の例を示す図である。
【図22】ユーザ情報管理テーブルの例を示す図である。
【図23】本発明のワークフロー管理システムの実施の形態1のワークフローエンジン管理装置のフローチャートである。
【図24】本発明のワークフロー管理システムの実施の形態1のワークフローエンジン管理装置用通信管理装置のフローチャートである。
【図25】本発明のワークフロー管理システムの実施の形態1のワークフローエンジンのフローチャートである。
【図26】本発明のワークフロー管理システムの実施の形態1のワークフローエンジン用通信管理装置のフローチャートである。
【図27】図19のワークフロー管理システムで用いられるホームサーバの形態1のシステム構成図である。
【図28】ワークアイテム管理装置に格納されているワークアイテムの例を示す図である。
【図29】ホームサーバの形態1のホームサーバ制御装置のフローチャートである。
【図30】図29に示されている新規ユーザ接続処理のフローチャートである。
【図31】図29に示されている新規作業プロセス生成処理のフローチャートである。
【図32】図29に示されているワークアイテム追加処理のフローチャートである。
【図33】図29に示されている作業アクティビティ終了時処理のフローチャートである。
【図34】ホームサーバの形態1のホームサーバ用通信管理装置のフローチャートである。
【図35】ホームサーバの形態1のユーザシステム生成装置のフローチャートである。
【図36】ホームサーバの形態1の接続管理装置のフローチャートである。
【図37】図19のワークフロー管理システムで用いられるホームサーバの形態2のシステム構成図である。
【図38】作業排他制御テーブルの例を示す図である。
【図39】ホームサーバの形態2の作業排他制御装置のフローチャートである。
【図40】ホームサーバの形態2のホームサーバ制御装置のフローチャートである。
【図41】図40に示されている作業アクティビティ処理開始時処理のフローチャートである。
【図42】図40に示されている作業アクティビティ終了時処理のフローチャートである。
【図43】図19のワークフロー管理システムで用いられるホームサーバの形態3のシステム構成図である。
【図44】ホームサーバの形態3の起票処理装置のフローチャートである。
【図45】ホームサーバの形態3のホームサーバ制御装置によって行われる新規作業プロセス生成処理のフローチャートである。
【図46】図43に示すホームサーバの形態3を本発明のワークフロー管理システムの実施の形態1に用いるときのワークフローエンジンのフローチャートである。
【図47】図19のワークフロー管理システムで用いられるホームサーバの形態4のシステム構成図である。
【図48】ホームサーバの形態4の次作業アクティビティ検出装置のフローチャートである。
【図49】ホームサーバの形態4のホームサーバ制御装置によって行われる作業アクティビティ終了時処理のフローチャートである。
【図50】図47に示すホームサーバの形態4を本発明のワークフロー管理システムの実施の形態1に用いるときのワークフローエンジンのフローチャートである。
【図51】本発明のワークフロー管理システムの実施の形態2の全体構成図である。
【図52】図51のワークフロー管理システムで用いられるホームサーバのシステム構成図である。
【図53】作業履歴管理装置に格納されている履歴情報の例を示す図である。
【図54】本発明のワークフロー管理システムの実施の形態2の作業履歴検索装置のフローチャートである。
【図55】本発明のワークフロー管理システムの実施の形態2のワークフローエンジン管理装置用通信管理装置のフローチャートである。
【図56】図52に示すホームサーバのホームサーバ用通信管理装置のフローチャートである。
【図57】図52に示すホームサーバのホームサーバ制御装置のフローチャートである。
【図58】図57に示されている作業アクティビティ終了時処理のフローチャートである。
【図59】図57に示されている作業履歴検索処理のフローチャートである。
【図60】一般的なコンピュータの内部構成ブロックの例を示す図である。
【図61】コンピュータによって読み取り可能な記憶媒体の例を示す図である。
【図62】従来のワークフロー管理システムの構成例を示す図である。
【図63】従来のワークフロー管理システムの動作を説明する図である。
【符号の説明】
W ワークフロー管理装置
1、1001 ワークフロー支援手段A
2 作業手順定義格納装置A
3 作業手順定義
4 作業情報格納装置A
11、1011 ワークフロー支援手段B
12 作業手順定義格納装置B
13 作業手順定義
14 作業情報格納装置B
20 ワークフロー支援手段管理装置
21 作業管理情報保持部
31、1111 ユーザシステムA
32、1112 ユーザシステムB
33、1113 ユーザシステムC
1000 メインサーバ
1002 作業手順定義格納手段A
1003 第一作業情報格納手段A
1012 作業手順定義格納手段B
1013 第一作業情報格納手段B
1021 ユーザ情報管理手段
1022 ワークフロー支援手段管理手段
1100 ホームサーバA
1101 第二作業情報格納手段
1102 作業情報提供手段
1103 作業処理情報送出手段
1200 ホームサーバB
1211 ユーザシステムD
1212 ユーザシステムE
1213 ユーザシステムF
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention manages a series of work based on a predefined work procedure (workflow), and executes an apparatus and a system that support execution of the series of work between a plurality of users, and a computer to execute the work. The present invention relates to a storage medium for storing a program for causing a computer to perform work management and work execution support.
[0002]
[Prior art]
Based on a work sequence (workflow) of a series of pre-defined tasks, information necessary for performing the task, such as a person in charge of each task and a work deadline, is managed, and the series of tasks is performed between a plurality of users. There is a system that supports this, and is called a workflow management system. FIG. 62 shows a configuration example of a conventional workflow management system.
[0003]
In FIG. 62, a server 111 is provided with a workflow engine 112 for managing a workflow.
The work procedure definition information storage device 121 holds a work procedure of a series of works managed by the workflow engine 112, and the work procedure is a work process (for example, a series of works such as manufacturing management and personnel management). It is stored for each. For example, when the work process is manufacturing management, the work procedure definition information storage device 121 stores an order slip, a work of issuing manufacturing management information such as product specifications, a work of issuing a slip for giving a manufacturing instruction, and the like. Are stored. The work that constitutes each work procedure of the work process like each of these works is called a work activity.
[0004]
The work information storage device 122 holds created forms and work procedures of work processes being worked on. For example, work information such as a person in charge of each work, a work instruction, a work deadline, a work history, etc. Information is stored.
[0005]
The work database 123 is a product specification database for manufacturing management, and is a general database that the server 111 has.
In this example, the client A 141 is provided in the sales department of the company.
[0006]
In this example, it is assumed that the client B 142 is provided in the production management unit of the company.
In this example, the client C143 is provided in the manufacturing department of the company.
[0007]
FIG. 63 is a diagram for explaining the operation of the conventional workflow management device shown in FIG.
FIG. 63 shows an example of a production management workflow. In this workflow, first, a sales department that receives a product request from a customer issues a form for manufacturing the product to the manufacturing management department, and the manufacturing management department that receives the form sends the manufacturing request to the manufacturing department. And the manufacturing department receives the manufacturing request.
[0008]
The workflow engine 112 executes a work activity transfer process 114 between each client and a next work activity determination process 115 based on the progress of the work process.
[0009]
The work procedure definition information storage device 121 stores a table 121 ′ indicating a workflow of manufacturing management.
The work database 123 stores a database of product specifications of various products that can be manufactured by the manufacturing department, including a product specification A130 of a product for which a manufacturing request is made. Also stored are forms (forms) of various forms to be exchanged. The form can be newly created and used in the user system of each client.
[0010]
In this example, the work information 126 stored in the work information storage device 122 is information necessary for processing the work process by the user system (order work information 001, the person in charge of order is the sales department A, the person in charge of the manufacturing request). Person has a product management department B, a production staff has a production department C, a production deadline is December 11, 1999), an order slip 127, a production request slip 128, and a product specification A129.
[0011]
The order slip 127 has been created by the salesperson A in the client A141.
The manufacturing request slip 128 is created by the person in charge of the manufacturing management section B in the client B142.
[0012]
The product specification A 129 is a specification of a product requested to be manufactured, created in the client B 142 based on the product specifications of various products stored in the work database 123.
[0013]
The order slip 151 is created by the salesperson A in the client A141 by inputting data into the items of a predetermined form.
The order work item information 152 is obtained by the client B 142 receiving the order slip 151.
[0014]
The manufacturing request slip 153 is created by the person in charge of the product management section B inputting data to predetermined form form items in the client B 142.
[0015]
The product specification A 154 is a specification of a product to be manufactured, which is created based on the product specifications of various products stored in the work database 123. The product specification A 154 is created in the client B 142 and attached to the manufacturing request slip 153. Is sent around.
[0016]
The manufacturing request slip 155 is obtained by receiving the manufacturing request slip 153 sent from the client B 142 at the client C 143 provided in the manufacturing unit.
[0017]
The product specification A 156 has been attached to the production request slip 155 and has been sent from the client B 142 together with the production request slip 153.
The operation of FIG. 63 will be described.
[0018]
In the client A 141, the salesperson A creates an order slip 151 using an input tool provided in the client A 141. When this creation work is completed, the workflow engine 112 creates work information 126, refers to the table 121 ′ stored in the work procedure definition information storage device 121, and places an order based on the work procedure indicated therein. The slip 151 is forwarded to the client B142. At this point, the work information 126 does not include the production request slip 128 and the product specification A129.
[0019]
In the client B 142, the person in charge of the manufacturing management section B uses the input tool provided in the client B 142 based on the order work item information 152 obtained from the transferred manufacturing request slip 151, and A slip 153 is created. Further, a product specification A154 is created based on the product specification A130 of the product for which the manufacturing request is stored in the work database 123, attached to the manufacturing request slip 153, and the manufacturing request operation is completed.
[0020]
Upon completion of the manufacturing request work in the client B 142, the workflow engine 112 updates the work information 126 stored in the work information storage device 122, and adds the manufacturing request slip 128 and the product specification A129. Then, it refers to the table 121 ′ stored in the work procedure definition information storage device 121, and forwards the manufacturing request slip 153 and the product specification A154 to the client C143 based on the work procedure indicated therein.
[0021]
When the client C 143 outputs the production request slip 155 and the product specification A 156, the person in charge C of the production department checks them and notifies the workflow engine 112 of the completion of the entire production management work process.
[0022]
Upon receiving the production management work process completion notification from the client C 143, the workflow engine 112 ends a series of processes based on the order slip 151.
[0023]
[Problems to be solved by the invention]
Since the conventional workflow management system operates as described above, each time the forwarding process is performed, access to the work procedure definition information storage device 121 and the work information storage device 122 occurs. Therefore, when the amount of work to be managed increases, a large number of accesses to the work procedure definition information storage device 121 and the work information storage device 122 are concentrated, so that the forwarding speed is extremely reduced and efficiency is reduced. Had a problem.
[0024]
The problem to be solved by the present invention is to provide a workflow management system capable of performing workflow management quickly and efficiently even if the amount of work to be managed increases.
[0025]
[Means for Solving the Problems]
In order to solve the above-described problems, a first aspect of the present invention includes a plurality of workflow support means (corresponding to the above-described workflow engine) and a workflow support means management device, and a workflow support means management device. Has determined the workflow support means in charge of the management of each workflow. At this time, in order to prevent the burden from being concentrated on a specific workflow support means, the load status of each workflow support means is recorded at the time of the work process generation processing, and the load information is referred to, and the workflow management means is assigned to which workflow support means. Was decided.
[0026]
Then, each workflow engine is provided with a work procedure definition information storage device and a work information storage device, and among the information of the work procedure definition information storage device, the work information required for each work activity (for example, Work activity). Further, the workflow support means sends only the work information necessary for each work activity.
[0027]
In the second invention of the present invention, a system for managing a workflow by a main server and a home server is configured.
The main server is provided with a workflow support unit having a work procedure definition storage unit and a work information storage unit, and the transfer of the work information by the workflow support unit is performed by a user who is a transfer destination of the work information. To be forwarded to the home server to which it belongs.
[0028]
Further, the home server has a storage unit for storing the work information sent from the main server, so that the work information for each user is individually provided in response to a request from a user belonging to the home server. did.
[0029]
In the following description, the generation of a new work process or the generation of a work process means that when a user requests a new work process, the type of the work process is designated, and information necessary for processing the work process (person in charge , A deadline, etc.) are started.
[0030]
The transfer of the work activity by the workflow support means (workflow engine) means that after the work process is generated, the work flow is defined based on the work procedure definition of the designated work process and the input work information. Workflow engine) transfers information necessary for each work activity to a user system corresponding to the person in charge of each work activity. Information necessary for processing individual work activities, such as a work instruction at this time, is particularly called a work item (work item information) in the work information. The work item includes various information such as the content of the work activity to be performed, a document required for the work activity, and a tool (for example, a word processor or the like) activated at the time of processing the work activity.
[0031]
The work activity end process is a process of notifying the workflow support means of a work activity end state when the process of the work activity as the user system ends. Note that the work activity end state is a state in which the end of the work activity processing and conclusive information on the processing contents of the work activity such as approval or rejection are transmitted.
[0032]
The determination and transfer of the next work activity by the workflow support means means that the next work activity is determined from the work activity end state, the work procedure definition information, and the work activity in the end state, and the next work activity is determined. This is a process of transferring a new work item to the person in charge of the next work activity after reflecting the information on the information, and is also simply referred to as a forwarding process.
[0033]
According to a first basic configuration of the present invention, a work procedure definition storage device for storing a work procedure definition, a work information storage device for storing work information, and a work procedure definition storage based on information on work input by a user. A workflow management unit that creates work information with reference to the device and the work information storage device and forwards the work information to another user; Workflow support means, the work procedure definition storage device and the work information storage device provided in each work flow support means, and the work flow support means for selecting the work flow support means so that the load on each work flow support means becomes as equal as possible. A management device is provided.
[0034]
FIG. 1 is a diagram showing a first basic configuration of the present invention.
1, the internal configuration of the workflow management device W will be described first.
A work procedure definition storage device A2 is connected to the workflow support means A1, and stores a work procedure definition 3.
[0035]
The work procedure definition 3 defines work procedure procedures for each work type (for each work process).
Further, a work information storage device A4 is further connected to the workflow support means A1, and the work information storage device A4 manages the work process personnel managed by the workflow support means A1, the content of each work activity, the deadline, the history of the work activity, and the like. Work information is stored.
[0036]
A work procedure definition storage device B12 is connected to the workflow support means B11, and stores a work procedure definition 13.
Further, a work information storage device B14 is further connected to the workflow support means B11, and the work information of the work process managed by the workflow support means B11 is stored.
[0037]
The workflow support unit management device 20 records the load status of the workflow support unit A1 and the workflow support unit B11 in the workflow support unit information storage unit 22, and refers to the load status recorded in the workflow support unit information storage unit 22. When a new work process occurs, a workflow support means for managing the new work process is determined.
[0038]
Each time a work process occurs, the work management information holding unit 21 provided in the workflow support means management device 20 stores the type of work process, the work procedure of the work process, the work activity of each person in charge, and the work activity of the work activity. It holds work definitions and the like necessary for processing.
[0039]
The work flow support means information holding unit 22 records the state of the work flow support means A and B (1, 11) such as the load status.
1, a user system A31, a user system B32, and a user system C33 are connected to the workflow management device W, respectively.
[0040]
In the configuration of FIG. 1, at the beginning of the work process, a form or the like that presents a work item (work content, worker, etc.) to another user system in the user system A31, user system B32, or user system C33. When the creation process is completed and the creation process ends, an end state of the creation process is returned to the workflow support unit management device 20. At this time, as the processing when the work process occurs, work management information such as the progress state of the work process, the work procedure, the person in charge, and the like are generated and recorded in the work management information holding unit 21.
[0041]
When a request for generating a new work process arrives from the user system (31, 32, 33), the workflow support unit management device 20 refers to the workflow support unit information holding unit 22 and determines the load status of each workflow support unit. Then, it is determined which workflow support means (1, 11) is to manage the work process. The workflow support means management device 20 activates a new workflow support means if necessary. Alternatively, when the workflow support means management device 20 receives information about the end state of the work activity (the end of the work activity processing and the conclusion of the processing contents of the work activity such as approval or rejection) from the user system, With reference to the work flow support means information holding unit 22, the work flow support means (1, 11) for managing the corresponding work process is obtained, and information on the work activity end state is passed.
[0042]
Further, the workflow support means (1, 11) refers to the work procedure definition storage device (2, 12) to determine the next work activity and to transfer the work activity. When the work activity is forwarded, the work information is created based on the work management information, the contents of the work management information holding unit 21 are updated, and a work item is generated and transmitted via the workflow support means management device 20. The work item is sent to the user system (31, 32, 33).
[0043]
According to the first basic configuration of the present invention, the load is not concentrated on a specific workflow support unit, and the load state of each workflow support unit can be constantly averaged. Therefore, access is not concentrated on the work procedure definition storage device and the work information storage device, and the forwarding speed does not decrease even if the amount of work to be managed increases.
[0044]
Further, in the second basic configuration of the present invention, in a workflow management system that manages a series of works based on a predefined work procedure and supports the execution of the series of works among a plurality of users, , A home server to which the user belongs, wherein the main server stores a work procedure definition storing means for storing the definition of the work procedure, and a first work for storing work information necessary for performing the series of works. An information storage unit, a user information management unit that manages user information indicating a home server to which the user belongs, a work procedure stored in the work procedure definition storage unit, and a work procedure stored in the first work information storage unit. Based on the work information and the processing information on the work performed by the user belonging to the home server sent from the home server. Work information on the next work in the work procedure is generated, and based on the user information stored in the user information management means, the work information on the next work is transmitted to the home server to which the user in charge of the next work belongs. The home server is stored in the second work information storage means for storing the work information sent from the main server, and stored in the second work information storage means. Work information providing means for providing work information for the work for which the user is in charge for each user, and work processing information sending means for sending processing information about the work performed by the user to the main server, To have.
[0045]
FIG. 2 is a diagram showing a second basic configuration of the present invention.
In the basic configuration of the workflow management system of the present invention shown in FIG. 1, a main server 1000 and two home servers (1100, 1200) are shown.
[0046]
2, the internal configuration of the main server 1000 will be described first.
The main server 1000 has two workflow support means (1001, 1011), the workflow support means A1001 includes a work procedure definition storage means A1002 and a first work information storage means A1003, and the workflow support means B1011 performs work. It has a procedure definition storage unit B1012 and a first work information storage unit B1013. Note that the number of workflow support units individually provided with the work procedure definition storage unit and the first work information storage unit of the main server 1000 is not limited to two, but only one configuration, or three or more. It is also possible to adopt a configuration of
[0047]
The workflow support means A1001 and workflow support means B1011, the work procedure definition storage means A1002 and work procedure definition storage means B1012, the first work information storage means A1003 and the first work information storage means B1013 have the same functions. Here, only one of them will be described.
[0048]
The work procedure definition storage unit A1002 stores work procedures of a work process, which is a series of work defined in advance, for each work type.
The first work information storage unit A1003 stores work information such as a person in charge of each work process, a work instruction, a deadline, a work history, and the like necessary for performing a predefined work process.
[0049]
The user information management means 1021 stores and manages user information indicating a home server to which a user who is in charge of each work activity constituting a predefined work process belongs. In FIG. 2, one user information management unit 1021 is provided in the main server 1000, and is shown to be shared by the two workflow support units (1001, 1011). The information management means may be provided for each workflow support means.
[0050]
The workflow support unit A1001 includes a work procedure stored in the work procedure definition storage unit A1002, work information stored in the first work information storage unit A1003, and user information stored in the user information management unit 1021. Generating work information on the next work activity in the work process based on the processing information obtained as a result of processing the work activity in charge performed by the user belonging to the home server sent from the home server. Of these, the work item, which is work information necessary for processing the work activity, is forwarded to the home server to which the user in charge of the work activity belongs.
[0051]
The workflow support means management means 1022 manages the workflow support means so that the loads of the processes performed by each of the two workflow support means (1001, 1011) become equal. Note that the workflow support means management means 1022 is unnecessary when the main server 1000 is constituted by only one workflow support means.
[0052]
Next, the configuration of the two home servers (1100, 1200) shown in FIG. 2 will be described.
Home server A1100 and home server B1200 have the same internal configuration. Note that the number of home servers is not limited to two, and it is also possible to use only one or more than three home servers. In that case, the internal configuration of each home server is the same. Good.
[0053]
Home server A 1100 has three user systems (1111, 1112, 1113), and home server B 1200 also has three user systems (1211, 1212, 1213). In addition, the number of user systems possessed by each home server is not limited to three, and may be arbitrary.
[0054]
As described above, home server A 1100 and home server B 1200 have the same internal configuration. Therefore, here, only the internal configuration of home server A1100 will be described.
[0055]
The home server A1100 has a second work information storage unit 1101, a work information providing unit 1102, and a work processing information sending unit 1103.
The second work information storage unit 1101 stores a work item sent from the workflow support unit A1001 or the workflow support unit B1011 of the main server 1000.
[0056]
The work information providing unit 1102 operates the second user information storage unit 1101 in response to a request from a user belonging to the home server A1100 that operates any of the user systems (1111, 1112, 1113) of the home server A1100. Is provided to the user via a user system operated by the user, for the work item for the work activity for which the user is responsible.
[0057]
The work processing information sending unit 1103 sends to the main server 1000 processing information indicating the processing result of the assigned work activity performed by the user based on the work information provided to the user by the work information providing unit 1102. .
[0058]
In the configuration of FIG. 2, for example, it is assumed that in the user system A1111 of the home server A1100, a form or the like for presenting a work item to another user system is created at the beginning of a work process. When the creation processing is completed, the information is sent to the main server 1000 by the work processing information sending unit 1103 of the home server A1100.
[0059]
In the main server 1000, when a request for generating a new work process arrives from the home server A1100, the workflow support means management means 1022 determines which workflow support means (1001, 1011) based on the load status of each workflow support means. Decide if you want to manage that work process. Here, it is assumed that the workflow support unit A1001 has determined to manage the work process.
[0060]
The workflow support unit A1001 includes a work procedure stored in the work procedure definition storage unit A1002, work information stored in the work information storage unit A1003, user information stored in the user information management unit 1021, Based on the processing information performed by the user who operates the user system A1111 sent from the server A1100, work information on the work activity of the next work procedure is created, and the work information required for processing the work activity therein is created. Is transferred to the home server to which the user in charge of the next work activity belongs as a work item. Here, it is assumed that the work item has been sent to home server A1100.
[0061]
The home server A1100 first stores the transferred work item in the second work information storage unit 1101. Thereafter, the user who is in charge of the work activity corresponding to the forwarded work item operates, for example, the user system B1112, and thereby, through the work information providing means 1102, the work activity of the user in charge of the work activity. The work item is extracted from the second work information storage unit 1101 and provided to the user system B 1112. The user processes this work based on the given work item, and when the processing of the work activity ends, information on the end state of the work activity is sent by the work process information sending unit 1103 of the home server A1100. It is sent to the main server 1000.
[0062]
By repeating the above processing, management of a work process, which is a series of work, is performed.
According to the second basic configuration of the present invention, any user system of the home server to which the user belongs allows the user to perform his / her own work activity.
[0063]
The main server and the home server alone in the second basic configuration of the present invention are also related to the present invention.
[0064]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, in each embodiment of the workflow management apparatus having the first basic configuration of the present invention, the workflow support means is a workflow engine, the workflow support means management apparatus is a workflow engine management apparatus, and the workflow support means information holding unit is a workflow engine. The management table and the work management information holding unit will be described as work information management tables.
[0065]
FIG. 3 is a system configuration diagram of the workflow management device according to the first embodiment of the present invention.
The internal configuration of the server S in FIG. 3 will be described.
[0066]
The workflow engine management device 40 has a work information management table 41.
The workflow engine management device 40 is connected to a workflow engine A42, a workflow engine B43, and a communication management device 45.
[0067]
The communication management device 45 has a workflow engine communication management device 46, a user system communication management device A47, a user system communication management device B48, and a user system communication management device C49.
[0068]
The workflow engine communication management device 46 has a next work activity information adding means 46 'for the next work activity, and this is used to set the destination of the work activity next to the work activity that the work item is currently scheduled for. This is added to the work item.
[0069]
Each user system communication management device manages communication with each user system connected to the server S, and the user system communication management device A47 is a user system A (client 1) 71 user system. The communication management device B48 manages communication of the user system B (client 2) 72, and the communication management device C49 for user system manages communication of the user system C (client 3) 73.
[0070]
The workflow engine management device 40 is further connected with a workflow engine management table 50 and a work procedure definition information storage device C63.
The workflow engine management table 50 records the state of each workflow engine (42, 43) such as the load status.
[0071]
The work procedure definition information storage device C63 is a work procedure definition storage device for the workflow engine management device 40.
A work procedure definition information storage device A61 and a work information storage device A64 are connected to the workflow engine A42.
[0072]
The work procedure definition information storage device A61 is a work procedure definition storage device for the workflow engine A42.
The work information storage device A64 is a work information storage device for the workflow engine A42, and stores work information about a work process managed by the workflow engine A42.
[0073]
A work procedure definition information storage device B62 and a work information storage device B65 are connected to the workflow engine B43.
The work procedure definition information storage device B62 is a work procedure definition storage device for the workflow engine B43.
[0074]
The work information storage device B65 is a work information storage device for the workflow engine B43, and stores work information about a work process managed by the workflow engine B43.
[0075]
A general-purpose database 66 is further connected to the workflow engine A42 and the workflow engine B43, and data access is possible from either workflow engine. The general database 66 stores various data (for example, specifications of products to be manufactured, forms of various forms, etc.) necessary for the user to perform work.
[0076]
In FIG. 3, only two workflow engines are provided, but three or more workflow engines may be provided.
User systems A, B, and C (71, 72, 73) are connected to the server S. These are for presenting a work item to the user to give an instruction on the processing of the work activity, and for returning the end state of the work activity to the server S.
[0077]
In the configuration of FIG. 3, the workflow engine management device 40 generates the work information management table 41 based on the work procedure stored in the work procedure definition information storage device C63. Then, each time information on the creation of a new work process or the end of a work activity is delivered from each user system (71, 72, 73) to the workflow engine management device 40, the work procedure definition information storage device C63 and the work information management table 41 are updated. The work item for the next work activity is generated by reference. Then, the work information in the work information management table 41 and the work information storage devices (64, 65) is updated.
[0078]
The communication management device 45 controls communication between the workflow engine management device 40 and each of the user systems (71, 72, 73) and distributes the transmitted information to the destination device. For example, when the user system A71 generates a work process, the generation request is passed to the workflow engine management device 40 via the user system communication management device A47 and the workflow engine communication management device 46.
[0079]
The workflow engine management device 40 refers to the workflow engine management table 50, checks the load status of each workflow engine, and determines a workflow engine that manages a work process. For example, suppose here that a decision is made to cause the workflow engine A42 to perform management.
[0080]
The designated workflow engine A42 refers to the work procedure definition information storage device A61 and the work information storage device A64 to generate work information and determine the destination of a work item for the next work activity obtained from the work information. I do. Then, the work item is sent to the user system communication management device of the destination user system via the workflow engine management device 40 and the workflow engine communication management device 46, and the communication management device for the user system receiving the work item is Send the work item to the corresponding user system. During this process, the workflow engine communication management device 46 refers to the user information of the work item, determines the destination of the work activity next to the current work activity, and adds the destination to the work item.
[0081]
In the above, when the storage device connected to the designated workflow engine (for example, the workflow engine A42) does not hold the work procedure or work information of the work process to be managed, the work The necessary work procedure and work information are transmitted from the workflow engine B43 having the procedure and work information in the storage device. Then, based on the information, the workflow engine A 42 generates work information and the like, and passes the work information and the like to the workflow engine management device 40. Subsequent operations are the same as those described above.
[0082]
FIG. 4 shows an example of the work information management table according to the present invention, which manages the steps of ordering, manufacturing request, and manufacturing.
The work information management table holds work process procedures for each work activity (ordering, manufacturing request, manufacturing, etc.) and information (person in charge, workflow engine in charge, etc.) necessary for each work activity.
[0083]
In FIG. 4, the work ID is a serial number generated each time a work process occurs. The work procedure, procedure name (work activity name), and next work activity for each work ID are based on work procedure definition information obtained from the work procedure definition information storage device. The information of each work ID is generated by a report from the user system that the processing of the first work activity has been completed. From FIG. 4, for example, the work ID 1 is generated by the process of work procedure 0 (ordering) performed by the person having the person ID of ID 0, and the work procedure, the person in charge, and the engine in charge as shown in the figure. It can be seen that there is an ID (ID of the workflow engine responsible for management).
[0084]
Each workflow engine (42, 43) determines the next work activity according to the work procedure definition information stored in its own work procedure definition information storage device (61, 62), and circulates the work activity. When the work activity is forwarded, a work item is generated with reference to the work activity definition (order, manufacturing request, manufacture, etc.) specified in the work procedure definition, and the work item is generated via the workflow engine management device 40. The generated work item is sent to the user system (71, 72, 73).
[0085]
FIG. 5 is a diagram showing an example of a workflow engine management table and work items according to the present invention.
FIG. 5A is an example of a workflow engine management table when there are three workflow engines. For each workflow engine, the number of loads (the magnitude of the load) and the state (whether the operation of the workflow engine is normal or abnormal) , And the work ID of the work process in progress.
[0086]
FIG. 5B shows an example of a work item, in which a work ID, a sender ID, an ID of a communication management device for a user system of a user in charge of a next work activity, and a user in charge of a work activity next to the next work activity. ID of the communication management device for the user system, work status (used to notify the status of new work process creation, work activity end, work process completion, etc. when querying work history, etc.), procedure name, work activity staff ID and other information. Although not shown in the figure, a procedure ID corresponding to the procedure name or a procedure ID of the next work activity may be provided as necessary.
[0087]
FIG. 6 shows a storage medium for storing a workflow management program according to the present invention.
The workflow management program storage medium 74 of the present invention is a magnetic storage device, a storage device using light such as a CD-ROM, or the like, and includes a workflow engine program, a workflow engine management program, a communication management program for a workflow engine, and a user system. It includes a communication management program, a workflow engine management table creation program, a work procedure definition creation program, and the like. Each program stored in the workflow management program storage medium 74 is read out and executed by a general computer, so that processing similar to the processing performed by each component of the present invention described below is performed by the computer. Is performed.
[0088]
FIG. 7 is a flowchart of a process performed by the workflow engine management device 40 according to the first embodiment of the workflow management device of the present invention. This process will be described with reference to FIG.
[0089]
First, the workflow engine management device determines the type of a processing request made by the user system (S1). If a request for generating a new work process is received from the user system, the process from S2 is performed. If a request for ending the work activity is received from the user system, the process from S10 is performed. If it has been received from the user system, the processing after S12 is performed.
[0090]
As a result of the determination processing in S1, the workflow engine management device that has determined that a request to generate a new work process has been received searches the workflow engine management table (S2), and subsequently calculates the load status of each workflow engine (S3).
[0091]
As a result of this calculation, the workflow engine management device selects the workflow engine with the least load (S4).
Here, the workflow engine management device determines whether the load of the selected workflow engine is equal to or less than a predetermined value (S5). As a result of the determination, if it is not less than the predetermined value, the processing from S6 is performed, and if it is less than the predetermined value, the processing from S8 is performed.
[0092]
As a result of the determination processing in S5, the workflow engine management device that determines that the load is not less than the predetermined value activates a new workflow engine (S6), and adds the ID of the activated new workflow engine to the workflow engine management table. Then, the data is initialized (S7).
[0093]
Thereafter, the workflow engine management device adds the work information in charge of the workflow engine to the workflow engine management table (S8), further increases the load information (the number of loads) of the workflow engine by 1 (S9), and ends the current process. .
[0094]
On the other hand, as a result of the determination processing in S1, the workflow engine management device that has determined that the work activity end request has been received searches the workflow engine management table using the work ID as a key (S10), and the workflow engine management device corresponding to the work ID is searched. A work activity end state (the end of one work activity, information indicating the end and the processing content performed in the work activity, for example, notification of approval, rejection, etc.) is sent (S11), and the current process ends. I do.
[0095]
Further, as a result of the determination processing in S1, the workflow engine management device that determines that the work process completion request has been received searches the workflow engine management table using the work ID as a search key (S12), and the assigned workflow engine corresponding to the work ID , A work process completion state (a state in which a series of work processes is completed) is sent to the server, and all management processes of the corresponding work process performed by the workflow engine are completed (S13).
[0096]
Then, the workflow engine management device decreases the load information of the corresponding workflow engine in the workflow engine management table by 1 (S14), and ends the current processing.
[0097]
FIG. 8 is a flowchart of a process performed by the workflow engine communication management device 46 according to the first embodiment of the workflow management device of the present invention. Note that this flowchart is the same as a flowchart for processing performed by the workflow engine communication management device according to the second embodiment of FIG. 11 described later.
[0098]
This processing will be described with reference to FIG.
First, the workflow engine communication management device determines whether the received information is a return to the workflow engine (S1). If the result of the determination is that the information is returned to the workflow engine, the process of S2 is performed, and if the information is not returned to the workflow engine, the processes of S3 and thereafter are performed.
[0099]
As a result of the determination process in S1, the workflow engine communication management device that determines that the received information is the return of information on the end of the work activity to the workflow engine, sends the work activity end information (the end of the work activity) to the workflow engine. Information indicating the existence and all necessary information such as a slip, a specification, etc.) are passed (S2), and the current process ends.
[0100]
On the other hand, as a result of the determination process in S1, the workflow engine communication management device that determines that the received information is not a return to the workflow engine includes, from the information, the user information of the current transmission destination (the transmission destination of the current work item). Is taken out (S3).
[0101]
Then, the next work activity information adding means of the next work activity included in the communication management device for the workflow engine uses the communication for the user system of the return destination (the transmission destination of the work item for the current next work activity) from the work information management table. The management device ID is extracted (S4), and the communication management device ID for the return destination user system is added to the work item (S5).
[0102]
Thereafter, the workflow engine communication management device sends the work item to the communication management device corresponding to the communication management device ID (S6), and ends the current process.
FIG. 9 is a flowchart of a process performed by the user system communication management device (47, 48, 49) according to the first embodiment of the workflow management device of the present invention. Note that this flowchart is drawn so that it can be commonly used for processing performed by a user system communication management device according to another embodiment described later. This process will be described with reference to FIG.
[0103]
First, when receiving the information, the communication management device for the user system determines whether the information is work activity end information (S1). As a result of the determination, if the received information is not the work activity end information, the process of S2 is performed, and if the received information is the work activity end information, the process of S3 is performed.
[0104]
As a result of the determination process in S1, the communication management device for the user system that determines that the received information is not the work activity end information passes the work item to the user system (S2), and ends the current process.
[0105]
On the other hand, as a result of the determination process in S1, the communication management device for the user system that determines that the received information is the work activity end information includes, from the information, the ID of the communication management device for the return destination workflow engine (FIG. 8). The workflow engine communication management device ID added in S5 of the flowchart is extracted (S3), and work activity end information is sent to the workflow engine communication management device corresponding to the workflow engine communication management device ID (S4). In FIG. 2, since there is only one communication management device for the workflow engine, the communication management device ID for the workflow engine is transmitted. Note that the processes of S3 and S4 are processes mainly performed in a third embodiment of the present invention described later. Thereafter, the current process ends.
[0106]
FIG. 10 is a system configuration diagram of a workflow management device according to a second embodiment of the present invention.
In the second embodiment of the workflow management device of the present invention, when the next work activity is managed by another workflow engine, the work procedure definition and work information related to the work are managed by the work flow engine that manages the next work activity. To be passed to.
[0107]
When the next work activity following the next work activity is managed by another workflow engine, the next work activity may be performed by the workflow engine that manages the next work activity of the next work activity. good. In this case, the work procedure definition and the work information relating to the work activity are transferred to the workflow engine, and the work engine is made to manage the work activity.
[0108]
The internal configuration of the server S in FIG. 10 will be described.
FIG. 10 is different from FIG. 3 only in that a work information transfer device 67 is added to the system configuration diagram of the workflow management device according to the first embodiment of the present invention. In FIG. 10, only two workflow engines are provided, but three or more workflow engines may be provided.
[0109]
10, the same components as those in FIG. 3 are denoted by the same reference numerals.
For example, when the work process managed by the workflow engine A is managed by the workflow engine B43 because the work load of the workflow engine A42 is heavy, the work information transfer device 67 performs the work procedure of the work process managed by the workflow engine A42. The definition, work information, and the like are transferred to the workflow engine B43. In the opposite case, for example, the work procedure definition and work information of the work process managed by the work flow engine B43 are transferred to the work flow engine A42. Alternatively, for example, when another workflow engine is used as a backup of the management processing of the workflow engine A42, the work procedure definition, work information, and the like of the work process managed by the workflow engine A42 are transferred to the backup side.
[0110]
FIG. 11 is a flowchart of a process performed by the workflow engine management device 40 according to the second embodiment of the workflow management device of the present invention. This process will be described with reference to FIG.
[0111]
First, the workflow engine management device determines the type of a processing request made by the user system (S1). If a request to create a new work process is received from the user system, the process from S2 is performed. If the end of the work activity is received from the user system, the process from S9 is performed, and completion of the work process is received from the user system. If so, the processing after S17 is performed.
[0112]
As a result of the determination processing in S1, the workflow engine management device that has determined that a request to generate a new work process has been received calculates the load status of each workflow engine (S2), and as a result of this calculation, selects the workflow engine with the least load. (S3).
[0113]
Here, the workflow engine management device determines whether the load of the selected workflow engine is equal to or less than a predetermined value (S4). As a result of the determination, if it is not less than the predetermined value, the processing from S5 is performed, and if it is less than the predetermined value, the processing from S7 is performed.
[0114]
As a result of the determination processing in S4, the workflow engine management device that determines that the load is not less than the predetermined value activates a new workflow engine (S5), and adds the ID of the activated new workflow engine to the workflow engine management table. To initialize the data (S6).
[0115]
Thereafter, the workflow engine management device adds the work in charge of the workflow engine to the workflow engine management table (S7), increases the load information (the number of loads) of the workflow engine by 1 (S8), and ends the current process.
[0116]
On the other hand, as a result of the determination process in S1, the workflow engine management device that determines that the work activity end request has been received searches the workflow engine management table for the responsible workflow engine from the workflow engine management table (S9), and subsequently calculates the load status of the responsible workflow engine. (S10).
[0117]
Here, the workflow engine management device determines whether the load of the selected workflow engine is equal to or less than a predetermined value (S11). As a result of the determination, if it is not less than the predetermined value, the processing from S12 is performed, and if it is less than the predetermined value, the processing from S16 is performed.
[0118]
As a result of the determination processing in S11, the workflow engine management device that determines that the load is not equal to or less than the predetermined value searches the workflow engine management table (S12), and subsequently calculates the load status of each workflow engine to determine the load of the most load. A small number of workflow engines are selected (S13).
[0119]
Then, the workflow engine management device instructs the work information transfer device to transfer the work information from the workflow engine currently in charge to the previously selected workflow engine with the least load (S14).
[0120]
Thereafter, the workflow engine management device updates the information of the assigned workflow engine in the workflow engine management table in accordance with the transfer of the work information (S15).
[0121]
Then, the workflow engine management device sends a work activity end state to the assigned workflow engine (S16), and ends the current process.
Further, as a result of the determination processing in S1, the workflow engine management device that has determined that the work process completion request has been received searches the workflow engine management table for the responsible workflow engine from the workflow engine management table (S17). Is sent (S18), the load information of the workflow engine is reduced by 1 (S19), and the current process is terminated.
[0122]
FIG. 12 is a system configuration diagram of a workflow management device according to a third embodiment of the present invention.
The internal configuration of the server S in FIG. 12 will be described.
[0123]
FIG. 12 shows a configuration in which a workflow engine communication management device (461, 462) is provided for each workflow engine, and further, a workflow engine communication device management device (463) is provided.
[0124]
12, the same components as those in FIG. 3 are denoted by the same reference numerals.
The workflow engine communication management device A461 is a communication management device for the workflow engine A42.
[0125]
The workflow engine communication management device B462 is a communication management device for the workflow engine B43.
The communication management device 463 for the workflow engine management device is a communication management device for the workflow engine management device 40.
[0126]
In the configuration of FIG. 12, the processing information for the work activity transmitted from each user system (71, 72, 73) is included in the processing information in the communication management device (47, 48, 49) for each user system. The ID of the destination workflow engine is read, and the processing information is passed to the workflow engine communication management devices (461, 462) corresponding to the specified workflow engine. The workflow engine communication management devices (461, 462) pass the received information to the corresponding workflow engine (42, 43). In addition, the work items addressed to each user system (71, 72, 73) from the workflow engine (42, 43) are transmitted to the workflow engine communication management device (461, 462) or the workflow engine management device communication management device (463). In), the user ID (person in charge) included in the work item is read, and the communication management device ID for the user system of the current transmission destination is read. Further, the communication management device ID for the user system of the next transmission destination this time is obtained from the work information management table 41, and is added to the work item. Then, the work item is sent to the communication management device for the user system of the transmission destination this time.
[0127]
The flowchart of the workflow engine communication management device of FIG. 12 is the same as the flowchart of FIG. The flowchart of the communication management device for the user system in FIG. 12 is the same as the flowchart in FIG.
[0128]
FIG. 13 is a system configuration diagram of a workflow management device according to a fourth embodiment of the present invention.
The internal configuration of the server S in FIG. 13 will be described.
[0129]
FIG. 13 is a flowchart illustrating the implementation of the workflow engine management apparatus of the present invention in FIG. 10 only in that the workflow engine management apparatus 40 includes an abnormal state detection apparatus 91 that detects an abnormal state of the system and a duplicate work management apparatus 92. This is different from the system configuration diagram of the second embodiment.
[0130]
In FIG. 13, the same components as those in FIG. 3 are denoted by the same reference numerals.
The abnormal state detecting device 91 detects an abnormal operation of the workflow engine.
[0131]
The duplicate work management device 92 manages backup of workflow management processing between workflow engines.
FIG. 14 is a flowchart of a process performed by the workflow engine management device 40 according to the fourth embodiment of the workflow management device of the present invention. This process will be described with reference to FIG.
[0132]
First, the workflow engine management device determines the type of a processing request made by the user system (S1). If a request for generating a new work process is received from the user system, the process from S2 is performed. If a request for ending the work activity is received from the user system, the process from S21 is performed. If received from the system, the process from S41 is performed.
[0133]
As a result of the determination processing in S1, the workflow engine management device that has determined that a request to generate a new work process has been received searches the workflow engine management table (S2), and subsequently calculates the load status of each workflow engine (S3).
[0134]
As a result of this calculation, the workflow engine management device selects the workflow engine with the least load (S4).
Here, the workflow engine management device determines whether the load of the selected workflow engine is equal to or less than a predetermined value (S5). As a result of the determination, if it is not less than the predetermined value, the processing from S6 is performed, and if it is less than the predetermined value, the processing from S8 is performed.
[0135]
As a result of the determination processing in S5, the workflow engine management device that determines that the load is not less than the predetermined value activates a new workflow engine (S6), and adds the ID of the activated new workflow engine to the workflow engine management table. To initialize the data (S7).
[0136]
Thereafter, the workflow engine management device adds the work in charge of the workflow engine to the workflow engine management table (S8), and increases the load information (the number of loads) of the workflow engine by one (S9).
[0137]
Next, the workflow engine management device selects a workflow engine to be backed up (S10), and instructs the work information transfer device to transfer work information, a work procedure definition, and the like to the selected workflow engine (S10). S11).
[0138]
Then, the workflow engine management device newly adds information of the backup destination workflow engine to the duplicate work information management device (S12), and ends the current process.
[0139]
On the other hand, as a result of the determination processing in S1, the workflow engine management device that has determined that the request for ending the work activity has been received searches the workflow engine management table using the work ID as a key (S21).
[0140]
Then, the status of the assigned workflow engine is confirmed (S22), and it is checked whether the status of the assigned workflow engine is abnormal (S23). If the status is abnormal or no response is obtained, the processing from S24 is executed. On the other hand, if a reaction is obtained and it is confirmed that there is no abnormality, the processing after S30 is performed.
[0141]
As a result of the determination processing in S23, the workflow engine management apparatus that has recognized any abnormality in the assigned workflow engine writes “abnormal” in the assigned workflow engine information of the workflow engine management table (S24).
[0142]
After that, the workflow engine management device searches the duplicate work information management device for a backup destination workflow engine (S25).
Then, the assigned workflow engine information in the workflow engine management table is updated to the backup destination information (S26), the work activity end state is sent to the assigned workflow engine (S27), and the load information of the assigned workflow engine in the workflow engine management table is set to 1. Then, the load information of the workflow engine at the backup destination is incremented by 1 (S29), and the current process ends.
[0143]
On the other hand, as a result of the determination processing in S23, the workflow engine management apparatus that has not recognized any abnormality in the assigned workflow engine sends a work activity end state to the assigned workflow engine (S30), and stores the processing result in the assigned workflow engine as a backup destination. The work information transfer apparatus is instructed to transfer the work information to the work flow engine (S31), and the current process ends.
[0144]
Further, as a result of the determination processing in S1, the workflow engine management device that determines that a request for completion of the work process has been received searches the workflow engine management table using the work ID as a key (S41), and notifies the workflow engine in charge of the work process completion state. Sending (S42), the load information of the corresponding workflow engine in the workflow engine management table is decremented by 1 (S43), and the current process ends.
[0145]
FIG. 15 is a flowchart of a process performed by the abnormal state detection device 91 of the workflow management device according to the fourth embodiment of the present invention. This flowchart is a subroutine for a main program that causes the workflow engine management device 40 to perform processing. This process will be described with reference to FIG.
[0146]
First, the abnormal state detection device determines the value of the workflow engine state flag (S1). As will be described later, this flag is set by the workflow engine. As a result of the determination, if the value of the flag indicates normal, the process from S2 is performed, and if the value of the flag indicates abnormal, the process of S6 is performed.
[0147]
As a result of the determination processing in S1, the abnormal state detection device that determines that the value of the workflow engine state flag indicates normal compares the current time with the last operation time when the workflow engine executed the processing before that. Then, the length of the time between the time difference between the two and the predetermined value is determined (S3).
[0148]
If the result of the determination in S3 is that the difference between the current time and the last operation time is equal to or less than the predetermined value, the workflow engine is determined to be normal, and “normal” is returned to the main program (S4), and the current process ends. I do.
[0149]
On the other hand, if the result of the determination in S3 is that the difference between the current time and the final operation time is not less than the predetermined value, it is determined that no response has been obtained from the workflow engine, and "no response" is returned to the main program (S5). ), End the current process.
[0150]
Further, as a result of the determination processing in S1, the abnormal state detection device that determines that the value of the workflow engine state flag indicates an abnormality returns “abnormal” to the main program (S6), and ends the current processing.
[0151]
FIG. 16 is a flowchart of a process performed by the workflow engine (42, 43) according to the fourth embodiment of the workflow management device of the present invention. This process will be described with reference to FIG.
[0152]
First, the workflow engine determines whether there is a work activity end state to be processed (S1). As a result of the determination, if there is a work activity end state to be processed, the process of S2 is performed. On the other hand, if there is no work activity end state to be processed, the process of S3 and thereafter is performed.
[0153]
As a result of the determination processing in S1, the workflow engine that has determined that there is a work activity end state to be processed exists in the processing at the end of the work activity (the processing end processing of the work activity and the necessary information (decision of approval, rejection, etc.)). (Sending) is performed (S2), and processing after S5 is performed.
[0154]
On the other hand, as a result of the determination processing in S1, the workflow engine that has determined that the work activity end state to be processed does not exist is a work process completion state to be processed (a state in which processing is performed when all work activities in a certain work process are completed). ) Is determined (S3). As a result of the determination, if there is a work process completion state to be processed, the processing after S4 is performed. On the other hand, if there is no work process completion state to be processed, the processing after S7 is performed.
[0155]
As a result of the determination process in S3, the workflow engine that determines that there is a work process completion state to be processed exists, and performs the process at the time of completion of the work process (S4).
[0156]
Next, the workflow engine determines whether the processing at the end of the work activity in S2 or the processing at the end of the work process in S4 has ended normally (S5). As a result of the determination, if the processing is completed normally, the processing from S7 is performed, and if the processing is not completed normally, the processing of S6 is performed.
[0157]
As a result of the determination process in S5, the workflow engine that has determined that the above-described process has not been completed normally sets the workflow engine status flag of the abnormal status detection device of the workflow engine management device to “abnormal” (S6). The process ends.
[0158]
On the other hand, as a result of the determination processing in S5, the workflow engine that has determined that the above-described processing has been completed normally updates the final operation time of the workflow engine set in the abnormal state detection device of the workflow engine management device to the current time. (S7), the workflow engine status flag of the abnormal status detection device of the workflow engine management device is set to "normal" (S8), and thereafter, the above-described processes after S1 are repeated.
[0159]
FIG. 17 is a system configuration diagram of a workflow management device according to a fifth embodiment of the present invention.
The internal configuration of the server S in FIG. 17 will be described.
[0160]
FIG. 17 differs from the system configuration diagram of the second embodiment of the workflow management device of the present invention in FIG. 10 only in that the workflow engine management device 40 is provided with a work transfer route prediction device 93.
[0161]
17, components common to those in FIG. 10 are denoted by common numbers.
The work forwarding route prediction device 93 predicts the next work activity after the next work activity.
[0162]
FIG. 18 is a flowchart of a process performed by the workflow engine management device 40 according to the fifth embodiment of the workflow management device of the present invention. This process will be described with reference to FIG.
[0163]
First, the workflow engine management device determines the type of a processing request made by the user system (S1). If a request for generating a new work process is received from the user system, the process from S2 is performed. If a request for ending the work activity is received from the user system, the process from S21 is performed. If received from the system, the process from S41 is performed.
[0164]
As a result of the determination processing in S1, the workflow engine management device that has determined that a request to generate a new work process has been received searches the workflow engine management table (S2), and subsequently calculates the load status of each workflow engine (S3).
[0165]
As a result of this calculation, the workflow engine management device selects the workflow engine with the least load (S4).
Here, the workflow engine management device determines whether the load of the selected workflow engine is equal to or less than a predetermined value (S5). As a result of the determination, if it is not less than the predetermined value, the processing from S6 is performed, and if it is less than the predetermined value, the processing from S8 is performed.
[0166]
As a result of the determination processing in S5, the workflow engine management device that determines that the load is not less than the predetermined value activates a new workflow engine (S6), and adds the ID of the activated new workflow engine to the workflow engine management table. To initialize the data (S7).
[0167]
Thereafter, the workflow engine management device adds the charge information of the workflow engine to the workflow engine management table (S8), increases the load information of the workflow engine by 1 (S9), and ends the current process.
[0168]
On the other hand, as a result of the determination processing in S1, the workflow engine management device that has determined that a request for ending the work activity has been received searches the workflow engine management table using the work ID as a key (S21), and notifies the workflow engine in charge of the work activity end state. Send (S22).
[0169]
Thereafter, the workflow engine management device receives the information on the next work activity sent from the workflow engine in charge (S23).
Here, the workflow engine management device determines whether the next work activity identified by the received information is managed by another workflow engine (S24). As a result of the determination, if the next work activity is managed by another workflow engine, the process of S25 is performed. On the other hand, if the next work activity is not managed by another workflow engine, the processes of S26 and thereafter are performed.
[0170]
As a result of the determination processing in S24, the workflow engine management device that has determined that the next work activity is managed by another workflow engine sends work activity end information (work activity process end) to the workflow engine responsible for managing the next work activity. Is transferred (S25, slips, specifications, etc.) created in the process of the work activity (S25), and the current process ends.
[0171]
On the other hand, as a result of the determination process in S24, the workflow engine management device that determines that the next work activity is not managed by another workflow engine searches all the management information of the work activity next to the next work activity from the work information management table. Then, one piece of work activity definition information is newly extracted from the retrieved information (S27).
[0172]
Then, it is determined whether or not the extracted work activity is managed by another workflow engine (S28). As a result of the determination, if the work activity is managed by another workflow engine, the process from S29 is performed. On the other hand, if the work activity is not managed by another workflow engine, the process of S30 is performed.
[0173]
As a result of the determination process in S28, the workflow engine management device that determines that the work activity is managed by another workflow engine instructs the work transfer device to transfer the work information on the next work activity to another workflow engine. (S29).
[0174]
Thereafter, the workflow engine management device determines whether the processes from S27 to S29 have been completed for the work definition information after all the next work activities (S30). As a result of the determination, if these processes have been completed, the current process is completed. On the other hand, if unprocessed work definition information remains, the processing from S27 is repeated.
[0175]
Further, as a result of the determination processing in S1, the workflow engine management device that determines that a request for completion of the work process has been received searches the workflow engine management table using the work ID as a key (S41), and notifies the workflow engine in charge of the work process completion state. Sending (S42), the load information of the corresponding workflow engine in the workflow engine management table is decremented by 1 (S43), and the current process ends.
[0176]
Next, a workflow management system using a home server will be described.
In the workflow management apparatus described so far, a user system that can be used by a user (worker) is predetermined, and a work terminal that can be used by the user is fixed.
[0177]
In addition, when a user performs a task in the user system, it is necessary to obtain information such as a form of a form from a general-purpose database at the start of the task. The process of retrieving this information and providing it to the user system is performed by the workflow management device. Therefore, when many users work in parallel with the workflow management device described above, the process at the start of the work is performed. Processing speed decreases.
[0178]
In view of the above problems, the workflow management system described below can provide a plurality of user systems that can be used by the user. In addition, in order to reduce the processing load on the workflow management device in processing at the time of starting work, a home server is used. Is a major feature.
[0179]
FIG. 19 is an overall configuration diagram of Embodiment 1 of the workflow management system of the present invention.
19, the same components as those in FIG. 12 are denoted by the same reference numerals.
[0180]
FIG. 20 is a diagram showing a definition example of a work procedure stored in each work procedure definition information storage device (63, 64, 65) in FIG. In the example shown in the figure, a work procedure is defined by a work procedure ID, a procedure name, an ID of a person in charge of a work activity of the work procedure, and , Etc. of the work activity of the user are stored.
[0181]
FIG. 21 is a diagram showing an example of work information stored in the work information storage device (61, 62) in FIG. In the example shown in the figure, the work information corresponds to the work type ID corresponding to the work ID and the work type ID for each work ID defined in each work procedure definition information storage device (63, 64, 65). A list of work procedures, the ID of a workflow engine in charge of the work process of the work ID, and information on “state” indicating the progress of the work process of each work ID by the procedure ID are stored.
[0182]
In FIG. 19, three home servers A, B, and C (211, 212, 213) are connected to the main server S '. The number of home servers connected to the main server S 'may be arbitrary.
[0183]
First, the internal configuration of the main server S 'in FIG. 19 will be described. The configuration of the main server S' is similar to the configuration of the server S in the third embodiment of the workflow management device of the present invention shown in FIG. The configuration of the communication management device 45 in the server S shown in FIG. 12 is different.
[0184]
The workflow engine communication management devices A and B (461 ′, 462 ′) control communication between the workflow engines A and B (42, 43) and the home servers A, B, C (211, 212, 213). It is a device that distributes the sent information.
[0185]
The communication management device 463 ′ for the workflow engine management device controls communication between the workflow engine management device 41 and the home servers A, B, and C (211, 212, 213) and distributes the transmitted information. is there.
[0186]
The workflow engine communication management devices A and B (461 ′ and 462 ′) and the workflow engine management device communication management device 463 ′ have user information management tables A, B and C (201, 202 and 203), respectively. ing. FIG. 22 shows an example of the user information management table. As shown in the figure, the user information management table has a user ID, a user name, and a password that each user has, and stores an ID of a home server (a home server in charge) to which the user belongs. I have.
[0187]
Although not clearly shown in FIG. 19, the communication management device 463 ′ for the workflow engine management device and the workflow engine A or B (42, 43) or the communication management device A or B (461) for the workflow engine. ', 462') can be directly transmitted and received.
[0188]
Home servers A, B and C (211, 212, 213) are connected to the main server S ′. Each home server (211, 212, 213) has a similar internal configuration. For example, each home server (211, 212, 213) is provided for each department of a company such as a sales department, a production management department, and a production department. In the management device, a part of the processing that the workflow engine was to execute is executed instead, thereby reducing the processing load of the workflow engine.
[0189]
In FIG. 19, the home server A 211 has two user systems A and B (81, 82), the home server B 212 has three user systems C, D, E (83, 84, 85), and the home server C 213. Has three user systems D, E, and F (86, 87, 88). As will be described in detail later, these home server user systems are used by a user to process work activities on a client 90 connected to the home server to which the user belongs, such as a personal computer. This is generated in each home server in response to a new connection request to the home server, which is generated by executing the user program 91. Therefore, the number of user systems that each home server (211, 212, 213) has is not limited to the number shown in FIG. This is the same in other forms of the home server described later.
[0190]
In the configuration shown in FIG. 19, for example, when the user system A81 generated by the home server A211 generates a new work process, information on the generation of the work process is transmitted to the communication management device 463 ′ for the workflow engine management device. To the workflow engine management device 40 '. The communication management device 463 ′ for the workflow engine management device refers to the workflow engine management table 50 and refers to the load state of each workflow engine (42, 43), selects the workflow engine that is responsible for the generated work process, and The engine management table 50 is updated. Here, for example, it is assumed that the workflow engine A42 is selected. The selected workflow engine A42 creates work information with reference to the work procedure definition information storage device 64, adds the work information to the work information table stored in the work information storage device 61, and stores the work information and the general database. A work item related to the next work procedure is generated from the information stored in the work process 66 and sent to the home server to which the person in charge of the work activity of the next work procedure belongs via the workflow engine A communication management device 461 ′. Send the item.
[0191]
Further, for example, when a work activity end state is generated in the user system C83 generated by the home server B212, the work activity end state is transmitted from the home server B212 to the workflow engine in charge of this work. Here, assuming that the assigned workflow engine is the workflow engine B43, the workflow engine B43 refers to the work procedure definition information storage device 65 and the work information storage device 62 to check the next work activity, and stores the work activity in the work information storage device 62. In addition to updating the stored work information table, a work item for the next work activity is generated from the work information and the information stored in the general database 66, and the home server to which the person in charge of the work activity belongs This work item is sent to the work engine B via the communication management device 462 ′ for workflow engine B. When the end state of the last work activity of the work process is transmitted from the user system C83, a work process completion message is sent to the workflow engine management device 40 'without generating or sending a work item. The workflow engine management device 40 ′ that has received the work process completion message updates the workflow engine management table 50.
[0192]
FIG. 23 is a flowchart of a process performed by the workflow engine management device 40 'of the first embodiment of the workflow management system of the present invention shown in FIG. This processing will be described with reference to FIG.
[0193]
First, the workflow engine management device determines the type of a processing request for the received information (S1). If a request for generation of a new work process is received from the home server, the process from S2 is performed, and if a request for work completion issued from the workflow engine is received, the process from S11 is performed. Note that the workflow engine management device according to the first embodiment of the workflow management system of the present invention shown in FIG. 19 does not issue a processing request for terminating the work activity.
[0194]
As a result of the determination process in S1, the workflow engine management device that determines that a request for generating a new work process has been received searches the workflow engine management table (S2), and subsequently calculates the load status of each workflow engine, and A small number of workflow engines are selected (S3).
[0195]
Then, the workflow engine management device adds the assigned information of the selected workflow engine to the workflow engine management table (S4), and further increases the load information (the number of loads) of the selected workflow engine by one (S5).
[0196]
Thereafter, the workflow engine management device generates a new work process start request message (S6), adds the ID of the workflow engine selected as the assigned workflow engine ID to the message (S7), and manages the message with the workflow engine management. The information is passed to the device communication management device (S8), and the current process ends.
[0197]
Further, as a result of the determination processing in S1, the workflow engine management device that determines that a request for completion of the work process has been received searches the workflow engine management table using the work ID as a search key (S11), and sets the work ID in the work flow engine management table. The load information of the workflow engine that was in charge of the management of the corresponding work process is reduced by 1 (S12), and the current process ends.
[0198]
FIG. 24 is a flowchart of a process performed by the communication management device 463 ′ for the workflow engine management device according to the first embodiment of the workflow management system of the present invention illustrated in FIG. This processing will be described with reference to FIG.
[0199]
First, the communication management device for the workflow engine management device determines the type of the received message (information) (S1). As a result of the determination, if the received message is a work process completion message from the workflow engine or a new work process generation message from the home server, the process of S2 is performed, and the received message is a workflow engine management device. If the message is a new work process start request message from, the process of S3 is performed.
[0200]
As a result of the determination process in S1, the communication management device for the workflow engine management device that determines that the received message is a message of the completion of the work process or a message of creation of a new work process passes the message to the workflow engine management device ( S2), end the current process.
[0201]
On the other hand, as a result of the determination processing in S1, the communication management device for the workflow engine management device that has determined that the received message is a message of a new work process start request is the workflow corresponding to the assigned workflow engine ID described in this message. This message is passed to the engine (S3), and the current process ends.
[0202]
FIG. 25 is a flowchart of a process performed by the workflow engines A and B (42, 43) of the workflow management system according to the first embodiment of the present invention shown in FIG. This processing will be described with reference to FIG.
[0203]
First, the workflow engine determines the type of a processing request for the received information (S1). If a request for terminating the work activity issued from the user system is received, the process from S2 is performed, and if a request for a new work process generation process issued from the workflow engine management device is received, the process from S21 is performed. Do.
[0204]
As a result of the determination processing in S1, the workflow engine that has determined that the work activity end request has been received extracts the work ID from the received work activity end information (S2), and stores the work ID in the work information storage device using the work ID as a search key. The work information is retrieved and retrieved from the work information table (S3). Further, a work type ID is extracted from the work information (S4), and the work procedure information is searched and extracted from the work procedure definition information storage device using the extracted work type ID as a search key (S5). The reason why the work procedure information is not directly extracted from the work information is that, for example, when the work procedure is changed, the work procedure information included in the work information may be the same as the work information before the change. This is to prevent such problems in advance.
[0205]
Next, the workflow engine extracts the current procedure ID from the received work end information (S6), and searches and extracts the procedure of the work activity from the previously extracted work procedure information using the procedure ID as a search key (S7). ), Take out the next work activity of the current work procedure (S8).
[0206]
Here, the workflow engine determines whether or not the work content of the next work activity corresponding to the extracted work procedure ID is the completion of the work process (S9). If the content of the next work activity is the completion of the work process, the process of S10 is performed, and if the content of the next work activity is not the completion of the work process, the process of S11 and thereafter is performed.
[0207]
As a result of the determination processing in S9, the workflow engine that has determined that the next work activity is the completion of the work process sends a work process completion message addressed to the workflow engine management device to the workflow engine communication management device together with the work information (S10). Then, the current process ends.
[0208]
In the workflow management apparatus described above, the completion of the work process is notified from the user system. However, in the workflow management system using the home server, the end of the work process is replaced with the notification of the completion of the work process. The end of the work activity is notified from the home server, and the workflow engine of the main server recognizes the completion of the work process by detecting that the next work procedure ID of the last work activity is “completed”. ing.
[0209]
Return to the description of the flowchart. As a result of the determination processing in S9, the workflow engine that determines that the next work activity is not the completion of the work process writes the work procedure ID of the next work activity in the “state” column of the work information indicating the progress of the work process (S11). ) Further, the ID of the person in charge corresponding to the procedure ID of the next work activity (that is, the person in charge of the next work activity) is acquired from the work information and written in the “person in charge ID” column of the work information (S12). .
[0210]
Then, the workflow engine acquires information necessary for processing the next work activity (for example, a form of a slip created in the next work, a specification of a product to be manufactured, etc.) from the work procedure definition information storage device or the general database. A work item is generated, a necessary item is copied (copied) from the work information to the work item (S13), and the work item is sent to the communication management device for the workflow engine (S14), and the current process is terminated. .
[0211]
On the other hand, as a result of the determination processing in S1, the workflow engine that has determined that the new work process start request has been received extracts the work type ID from the received new work process start message (S21), and uses the work type ID as a search key to perform the work The work procedure information is retrieved and retrieved from the procedure definition information storage device (S22).
[0212]
Then, the workflow engine adds new work information to the work information table (S23), extracts a work process drafter ID from the received new work process start message (S24), and stores the drafter ID in the work information. Is written in the "person in charge ID" column (S25), and further, a procedure ID corresponding to "work procedure 0" is written in the "state" column of the work information (S26).
[0213]
Thereafter, the workflow engine generates a work item, copies necessary work information from the work information to the work item (S27), sends the work item to the workflow engine communication management device (S28), and performs the current process. To end.
[0214]
FIG. 26 is a flowchart of processing performed by the workflow engine communication management devices (461 ′, 462 ′) of the first embodiment of the workflow management system of the present invention shown in FIG. This processing will be described with reference to FIG.
[0215]
First, the workflow engine communication management device determines the type of the received message (S1). As a result of the determination, if the received message is a work process completion message from the workflow engine, the process of S2 is performed. If the received message is a work item from the workflow engine, the process of S3 and the following processes are performed. If the work activity end information is received from the home server, the process of S7 is performed.
[0216]
As a result of the determination process in S1, the workflow engine communication management device that determines that the received message is a work process completion message passes the message to the workflow engine management device communication management device (S2), and executes the current process. finish.
[0219]
On the other hand, as a result of the determination process in S1, the workflow engine communication management device that determines that the received message is a work item extracts information (person in charge ID) of a user who processes the work from the work item (S3). The ID (home server ID in charge) of the home server (to which the user belongs) is searched from the user information management table (S4), and the return destination communication management device ID is added to the work item (S5). This work item is sent to the home server corresponding to the responsible home server ID (S6), and the current process ends.
[0218]
Further, as a result of the determination processing in S1, the communication management device for the workflow engine that determines that the received message is the information of the end of the work activity passes this message to the workflow engine (S7), and ends the current processing.
[0219]
Next, the internal configuration of the home servers A, B, and C (211, 212, 213) in FIG. 19 will be described.
FIG. 27 is a system configuration diagram of the first embodiment of the home server used in the workflow management system of FIG. This home server includes a home server communication management device 301, a home server control device 302, a user system generation device 303, a connection management device 304, a work item management device 305, and a user information management table 306. Shows a case where three user systems A, B, and C (311, 312, 313) are generated.
[0220]
The home server communication management device 301 controls communication between the home server control device 302 and each communication management device (461 ′, 462 ′, 463 ′) of the main server S ′, and distributes the transmitted information. It is a device to do.
[0221]
The home server control device 302 generates a user system (311, 312, 313) in response to a user's new connection request to the home server from the connection management device 304, and processes each user system (311, 312, 313). Of transmitting a new work process generation request from the workflow engine management device 40 'to the home server communication management device 301, and the work transmitted from each workflow engine (42, 43) via the home server communication management device 301. A process of storing an item in the work item management device 305, a work activity end state sent from each user system (311, 312, 313) to the workflow engine (42, 43) to the home server communication management device 301 and a work item. Update the content stored in the management device 305 And the like.
[0222]
The user system generation device 303 performs a process of generating a new user system from the passed work items in accordance with an instruction from the home server control device 302.
[0223]
In response to a new connection request from the user to the home server by the user program, the connection management device 304 checks whether or not the user is an authorized user. A process to be passed to the control device 302 is performed.
[0224]
The work item management device 305 stores a work item passed from the workflow engine (42, 43) in which a user belonging to this home server is a person in charge, and stores a user ID (person in charge ID) from the stored work item. ) Is used to search for a work item for each user. FIG. 28 shows an example of a work item stored in the work item management device 305. As shown in FIG. 28, the work item management device 305 stores, in the work item management table 305, a work ID of each work item, a procedure ID indicating the progress of the work process of the work ID, a work procedure name corresponding to the work ID, and The ID of the person in charge, the procedure ID of the work activity next to the work procedure, and the ID of the workflow engine responsible for managing the work process are stored. Although not shown in FIG. 28, work items generated and sent by the workflow engine include information necessary for processing each work activity (for example, a form of a slip created in the next work activity). The work item management device 305 also stores such information for each work item.
[0225]
The user information management table 306 stores a user ID, a user name, a password, and the like of a user belonging to the home server. These pieces of information are stored by copying in advance the information stored in the user information management table C203 of the communication management device 463 ′ for the workflow engine management device.
[0226]
In the configuration shown in FIG. 27, first, the user operates a user program with a client corresponding to the home server, and inputs his / her user ID and password. The connection management device 304 compares the input user ID and password with the user information management table 306, and if the user belongs to this home server, passes a new user connection request to the home server control device 302.
[0227]
The home server control device 302 extracts from the work items stored in the work item management device 305 all the work items of the work activity for which this user is in charge, and extracts the work items extracted to 303 to the user system generation device. The user system is instructed to generate a user system, and the user system is generated. Here, it is assumed that the user system A311 has been generated.
[0228]
The user processes a work item included in the user system A311 using the user program. When the processing ends, a work end request is transmitted to the home server control device 302.
[0229]
At this time, the home server control device 302 deletes the work item for the work activity for which processing has been completed from the work item management device 305 and the user system A 311, and manages the work activity via the home server communication management device 301. Send the work activity end status information to the workflow engine of the main server that is in charge of.
[0230]
When the user creates a new work process in the user system A 311, the home server control device 302 sends a new work process creation message to the workflow engine management device of the main server via the home server communication management device 301. .
[0231]
Further, when a work item is sent from the workflow engine of the main server, the home server control device 302 additionally stores the work item sent to the work item management device 305.
[0232]
FIG. 29 is a flowchart of a process performed by the home server control device 302 according to the first embodiment of the home server shown in FIG. This processing will be described with reference to FIG.
[0233]
The home server control device determines the type of the processing request for the received information (S1, S3, S5, S7). If a request for a new user connection has been made by the user operating the user program, a new user connection process is executed (S2), and if a request for a new work process generation has been made from the user system, a new work process generation process has been made. (S4), and if a work item generated by the workflow engine of the main server has been passed, a work item adding process is executed (S6), and a request for ending the work activity is sent from the user system. For example, a work activity end process (S8) is executed. After the end of each process, the process of determining the type of the processing request for the next transmitted information is repeated.
[0234]
FIG. 30 is a flowchart of the new user connection process performed by the home server control device 302 shown as S2 in FIG. This processing will be described with reference to FIG.
[0235]
First, the home server control device extracts a user ID from information of a new connection request made by a user who operates a user program (S11), and manages all work items having a staff ID matching the user ID in the work item management. A search is made from the device (S12).
[0236]
Then, the home server control device passes all the searched work items to the user system generation device to generate a new user system (S13), and ends the current processing.
[0237]
FIG. 31 is a flowchart of a new work process generation process performed by the home server control device 302 shown as S4 in FIG. This processing will be described with reference to FIG.
[0238]
The home server control device creates a new work process creation message (S21), embeds the work type indicated in the new work process creation request from the user system in the message (S22), and creates this new work process creation message. The message is passed to the home server communication management device (S23), and the current process ends.
[0239]
FIG. 32 is a flowchart of a work item adding process performed by the home server control device 302 shown as S6 in FIG. This processing will be described with reference to FIG.
[0240]
The home server control device creates a new entry in the work item management device (S31), copies the received work item to the created entry (S32), and ends the current process.
[0241]
FIG. 33 is a flowchart of work activity end processing performed by the home server control device 302 shown as S8 in FIG. This processing will be described with reference to FIG.
[0242]
First, the home server control device acquires the work ID of the work process corresponding to the finished work activity from the received work activity end state information (S41), and stores the work item corresponding to the work ID. The storage position in the item management device is obtained (S42).
[0243]
Then, the entry of the work item is deleted from the work item management device (S43), and further, the work item corresponding to the finished work activity is deleted from the user system that has issued the work activity end request (S44), and the home server is used. The received work activity end state is passed to the communication management device (S45), and the process ends.
[0244]
FIG. 34 is a flowchart of a process performed by the home server communication management device 301 of the home server mode 1 shown in FIG. This processing will be described with reference to FIG.
[0245]
First, the home server communication management device determines the type of the received message (S1). As a result of the determination, if the received message is a message for generating a new work process from the home server control device, the process of S2 is performed, and if the received message is information on the end status of the work activity from the home server control device, S3 and thereafter. If the received message is a work item generated by the workflow engine of the main server, the process of S5 is performed.
[0246]
As a result of the determination process in S1, the home server communication management device that determines that the received message is a message for generating a new work process sends the message to the workflow engine management device communication management device (S2), and performs the current process. To end.
[0247]
On the other hand, as a result of the determination processing in S1, the home server communication management device that determines that the received message is the information on the work activity end state extracts the assigned workflow engine ID from the information on the work activity end state (S3). ), The received work activity end state information is sent to the workflow engine communication management device corresponding to the assigned work flow engine ID (S4), and the current process ends.
[0248]
Further, as a result of the determination process in S1, the home server communication management device that determines that the received message is a work item passes the received work item to the home server control device (S5), and ends the current process.
[0249]
FIG. 35 is a flowchart of a process performed by the user system generation device 303 of the first embodiment of the home server shown in FIG. This processing will be described with reference to FIG.
[0250]
The user system generation device that has received the instruction from the home server control device first generates an empty user system (S1), sets the user ID of the user who operates the user program in the user system (S2), and furthermore, Then, all the work items passed from the home server control device are copied to the user system (S3), the user system is completed, and the process is terminated.
[0251]
FIG. 36 is a flowchart of a process performed by the connection management device 304 of the first embodiment of the home server shown in FIG. This processing will be described with reference to FIG.
First, the connection management device acquires a user ID input by a user operating a user program (S1), retrieves a user information management table using the user ID as a search key, and extracts user information of the user (S2). ).
[0252]
Then, the connection management device acquires the password input by the user operating the user program (S3), and determines whether the input password matches the password indicated in the user information (S3). S4).
[0253]
As a result of the determination in S4, the connection management device that determines that the input password matches the password indicated in the user information sends a request for a new user connection to the home server control device together with the user information (S5). ), End the process.
[0254]
On the other hand, as a result of the determination in S4, the connection management device that determines that the input password does not match the password indicated in the user information rejects the user's connection request (S6), and terminates the process. I do.
[0255]
FIG. 37 is a system configuration diagram of form 2 of the home server used in the workflow management system of FIG.
In FIG. 37, the same components as those in the system configuration diagram of the first embodiment of the home server shown in FIG. 27 are denoted by the same reference numerals.
[0256]
The configuration of the second form of the home server shown in FIG. 37 is different from the configuration of the first form of the home server shown in FIG. 27 in having a work exclusion controller 321 and a work exclusion control table 322. Although the number of user systems is different in both figures, this is only the number of user systems generated by the user system generating device 303, and this point is not an essential difference ( This difference in the number of user systems is the same in other forms of the home server described later.)
[0257]
In the example of each work process described so far, it is assumed that only one person can be in charge of the work activity of a certain work procedure. In the actual work process, there may be more than one person who can take charge of the work activity, for example, agency settlement, and in such a case, multiple people process a single work activity in parallel. In order to prevent such a situation, after a person in charge starts processing a work activity, it is necessary to prevent other persons from processing the work activity. This control in the workflow management is referred to as work exclusive control.
[0258]
Up to now, exclusive control of this work has been performed by the workflow engine. Therefore, the work exclusion control imposes a processing burden on the workflow engine, and it takes some time to notify the user who performs the work activity of permission / non-permission of the start of the work.
[0259]
A feature of the home server mode 2 shown in FIG. 37 is that the exclusive control of the work is executed in the home server, and this feature reduces the processing load of the workflow engine associated with the work exclusive control. The response until the result of the exclusive control is notified to the user who performs the activity process is improved.
[0260]
In FIG. 37, the work exclusion controller 321 searches the work exclusion control table 322 for a certain work, determines whether the work activity has already been started by another user, and returns the determination result to the home. This is returned to the server control device 302.
[0261]
The work exclusion control table 322 stores the progress status of a work activity whose processing has been started by any person in charge. FIG. 38 shows an example of the work exclusion control table. As shown in the figure, in the work exclusive control table, the work ID, state (current work procedure), procedure name, and current work procedure of the work process for the work activity that has been started by any person in charge The ID of the person in charge of the work activity and the processing status of the work activity in the current work procedure are shown. Note that the processing state is "processing" indicating that the person in charge is actually performing the processing, and "processing in progress" indicating that the processing has been started but the person in charge is currently interrupting the processing for some reason. "Process is suspended".
[0262]
In the configuration of FIG. 37, for example, when a user starts processing a work activity in the user system A 311, a request to start processing is transmitted to the home server control device 302. The home server control device 302 requests the work exclusion control device 321 for permission to start processing the work activity. The work exclusion controller 321 refers to the work exclusion control table 322 and checks whether or not the processing of this work activity has been started by another person in charge. As a result, if the processing has not been started, the start of processing is notified to the home server control device 302 and the new work whose processing is started is described in the work exclusion control information stored in the work exclusion control table 322. Add activity information. If the processing of the work activity has already been started, the home server controller 302 is notified of the rejection of the processing start. The home server control device 302 transmits the notification from the work exclusive control device 321 to the user system A311.
[0263]
Further, for example, when the processing of the work activity being advanced by the user in the user system A311 is interrupted, the interruption of the processing is transmitted to the work exclusion controller 321 via the home server controller 302, and the work exclusion controller 321 The processing status of the work activity stored in the exclusive control table 322 is updated.
[0264]
Further, for example, when the processing of the work activity being advanced by the user in the user system A 311 ends, the work activity end state is transmitted to the home server control device 302. The home server control device 302 requests the work exclusion control device 321 to execute the process at the end of the work activity. The work exclusion controller 321 executes the work activity end-time process in response to the request, and deletes the work exclusion control information on the work activity stored in the work exclusion control table 322.
[0265]
In FIG. 37, the processes performed by the home server communication management device 301, the user system generation device 303, and the connection management device 304 are respectively the same as in the home server mode 1 shown in the flowcharts of FIGS. 34, 35, and 36. This is the same as the processing performed by the device. In FIG. 37, the contents of the information stored in the work item management device 305 and the user information management table 306 are the same as those in the first embodiment of the home server.
[0266]
FIG. 39 is a flowchart of the process performed by the work exclusion controller 321 of the home server mode 2 shown in FIG. This processing will be described with reference to FIG.
First, the work exclusion control device extracts a work ID from the work item passed along with the processing request, for example, from the home server control device (S1).
[0267]
Next, the work exclusion controller determines the type of the requested processing (S2). As a result of the determination, if the requested process is a request for a process of interrupting the process of the work activity from the user operating the user system, the process after S3 is performed, and the requested process is the process of the work activity from the home server control device. If the request is for the start process, the process from S11 is performed, and if the requested process is the process for ending the process of the work activity from the home server control device, the process from S21 is performed.
[0268]
As a result of the determination processing in S2, the work exclusion control device that has determined that a request to interrupt the processing has been received from the user searches the work exclusion control table for the corresponding work exclusion control information using the previously extracted work ID as a search key. (S3), "Process interruption" is written in the "Process status" column (S4), and the current process ends.
[0269]
On the other hand, as a result of the determination processing in S2, the work exclusion control device that has determined that the processing start processing request has been received from the home server control device uses the previously extracted work ID as a search key and performs the corresponding work from the work exclusion control table. The exclusive control information is searched (S11), and it is determined whether or not the work exclusive control information is found (S12).
[0270]
As a result of the determination processing in S12, the work exclusion control device that determines that the work exclusion control information was not found creates a new entry in the work exclusion control table (S13), and based on the work ID, The state, the procedure name, and the person-in-charge ID are copied (S14), and thereafter, the processing of S17 and thereafter is performed.
[0271]
On the other hand, as a result of the determination processing in S12, the work exclusion control device that has determined that the work exclusion control information has been found determines whether or not the processing state of the found work exclusion control information indicates “under processing” (S15). ).
[0272]
As a result of the determination process in S15, the work exclusion control device that has determined that the processing status of the work exclusion control information indicates “under processing” indicates that the home server control device has rejected the processing start request for the work activity. (S16), and the current process ends.
[0273]
On the other hand, as a result of the determination processing in S15, the work exclusion control device that has determined that the processing state of the work exclusion control information does not indicate “under processing” performs the processing from S17.
[0274]
The work exclusion control device writes "processing" in the processing state of the work exclusion control information (S17), and notifies the home server control device that the request to start the process for this work activity is permitted (S18). To end.
[0275]
Also, as a result of the determination processing in S2 described above, the work exclusion control device that has determined that it has received a processing end request from the home server control device responds from the work exclusion control table using the previously extracted work ID as a search key. The work exclusion control information is searched (S21), the searched work exclusion control information is deleted from the work exclusion control table (S22), and the current process ends.
[0276]
FIG. 40 is a flowchart of a process performed by the home server control device 302 of the home server mode 2 shown in FIG. This processing will be described with reference to FIG.
[0277]
The home server control device determines the type of the processing request for the received information (S1, S3, S5, S7, S9). As a result of the determination, if a request for a new user connection is made by the user operating the user program, a new user connection process is executed (S2). If a request for generating a new work process is made from the user system, a new user connection process is performed. A work process generation process is executed (S4). If a work item generated by the workflow engine of the main server is passed, a work item addition process is executed (S6). If the request has been sent, the work activity process start time process (S8) is executed, and if the work activity process end request has been sent from the user system, the work activity end process (S10) is executed. After the end of each process, the process of determining the type of the processing request for the next transmitted information is repeated.
[0278]
Although not shown in FIG. 40, when a request to suspend the processing of the work activity is received from the user system, the home server control device passes the request as it is to the work exclusive control device.
[0279]
Among the processes shown in FIG. 40, the new user connection process (S2), the work process generation process (S4), and the work item addition process (S6) are shown in flowcharts in FIGS. 30, 31, and 32, respectively. This is the same as the process performed by the home server control device in the first embodiment of the home server shown by.
[0280]
FIG. 41 is a flowchart of the work activity process start process performed by the home server control device 302 shown as S8 in FIG. This processing will be described with reference to FIG.
[0281]
First, the home server control device requests the work exclusion control device to execute a process start process (S41).
Thereafter, the home server control device determines whether or not the process start is permitted as a result of the execution of the process start process by the work exclusive control device (S42). As a result of the determination processing, the home server control device that determines that the processing start is permitted returns a work activity processing permission to the user system (S43), and ends the current processing. On the other hand, as a result of the determination processing, the home server control device that has determined that the processing start has not been permitted (rejected) returns an error indicating “processing start failure” to the user system (S44), and executes the current processing. finish.
[0282]
FIG. 42 is a flowchart of the work activity end processing performed by the home server control device 302 shown as S10 in FIG. This processing will be described with reference to FIG.
[0283]
First, the home server control device acquires the work ID of the completed work from the received information on the work activity end state (S51), and stores the work item in the work item management device in which the work item corresponding to the work ID is stored. The position is obtained (S52).
[0284]
Then, the work item is deleted from the work item management device (S53), a request is made to the work exclusive control device to execute the process at the end of the process (S54), and the work activity completed by the user system that has issued the work activity end request. The work item related to the home server is deleted (S55), the received work activity end state is passed to the home server communication management device (S56), and the process ends.
[0285]
FIG. 43 is a system configuration diagram of form 3 of the home server used in the workflow management system of FIG.
43, components common to those in the system configuration diagram of the first embodiment of the home server shown in FIG. 27 are denoted by common numbers.
[0286]
The configuration of the home server according to the third embodiment shown in FIG. 43 is different from the configuration of the home server according to the first embodiment shown in FIG. 27 in having a draft processing device 331 and a work procedure definition information storage device 332.
[0287]
In the workflow management system described so far, when a user creates a new work process in the user system, the user system requests the main server to generate a new work process, and the workflow engine in the main server creates a new work process. A work process is generated, and a work item (form, such as a form) necessary for processing a work activity at the beginning of the work process (work procedure 0) is generated, and the work item is received only by the user system. The user can start the processing of the work activity, which is the first work procedure of a series of work processes. Therefore, it takes a considerable time before the user can actually start processing the first work activity.
[0288]
In view of this problem, in the home server form 3 shown in FIG. 43, a process of temporarily generating a work item for the first work activity at the time of generating a new work process in the home server (this process is referred to as a draft process) ) Is a major feature. This feature reduces the processing load on the workflow engine associated with the creation of a new work process, and the first work after the user makes a request to create a new work process. The waiting time in the user system before the activity processing can be started is reduced.
[0289]
In FIG. 43, a draft processing device 331 generates a temporary work item from work procedure definition information stored in a work procedure definition information storage device 332 in accordance with an instruction from a user.
[0290]
The work procedure definition information storage device 332 stores the work procedure definition information. Of the work procedure definition information stored in the work procedure definition information storage device of each workflow engine of the main server, Those required by the server are stored in advance. Further, in some cases, information stored in the general database of the main server is required for generating a temporary work item. Therefore, if such a temporary work item is to be generated, such information is also stored in advance. I will keep it.
[0291]
In the configuration of FIG. 43, for example, when a user creates a new work process in the user system A 311, a request for a draft is first transmitted to the draft processing device 331 via the home server control device 302. The draft processing device 331 generates a temporary work item from the work procedure definition information stored in the work procedure definition information storage device 332 and passes it to the user system A311. The user system A311 processes the work activity, which is the first work procedure, using the temporary work item, and passes the processing result to the home server control device 302. When the home server control device 302 sends a new work process generation request to the workflow engine of the main server, the temporary work item is attached and sent. Upon receiving this new work process generation request, the workflow engine of the main server reflects the attached temporary work item in the work information, generates a regular work item, and performs the forwarding process for subsequent work activities. I will proceed.
[0292]
In FIG. 43, the processes performed by the home server communication management device 301, the user system generation device 303, and the connection management device 304 are respectively performed by the home server according to the first embodiment shown in the flowcharts of FIGS. 34, 35, and 36. This is the same as the processing performed by the device. In FIG. 43, the contents of the information stored in the work item management device 305 and the user information management table 306 are the same as those in the first embodiment of the home server.
[0293]
FIG. 44 is a flowchart of a process performed by the slip processing device 331 of the form 3 of the home server shown in FIG. This processing will be described with reference to FIG.
Upon receiving an instruction from the user operating the user system, the draft processing device searches the work procedure definition information stored in the work procedure definition information storage device using the work type included in the instruction as a search key (S1). ), A temporary work item is generated based on the search result (S2), and the generated temporary work item is passed to the user system (S3), and the process ends.
[0294]
The process performed by home server control device 302 in FIG. 43 is the same as the process performed by home server control device in home server mode 1 shown in the flowchart in FIG. 29, and is shown as a subroutine in the flowchart shown in FIG. Of the four processes performed, the new user connection process, the work item addition process, and the process at the end of the work are performed in the same manner as those shown in the flowcharts of the processes shown in FIGS. 30, 32, and 33, respectively. . However, a new work process generation process is newly added to the process shown in the flowchart of FIG.
[0295]
FIG. 45 is a flowchart of a new work process generation process performed by the home server control device 302 of the home server mode 3. In FIG. 45, the same steps as those in the flowchart of the new work process generation process performed by the home server control device 302 of the home server mode 1 shown in FIG.
[0296]
Comparing FIG. 45 with FIG. 31, after embedding the work type in the created new work process generation message, embedding the temporary work item generated by the draft processing device (S24) and passing it to the home server communication management device Are different.
[0297]
When the home server shown in FIG. 43 is used in the workflow management system shown in FIG. 19, it is performed by the workflow engines A and B (42, 43) of the first embodiment of the workflow management system shown in the flowchart in FIG. Processing needs to be changed.
[0298]
FIG. 46 is a flowchart of processing performed by the workflow engines A and B (42, 43) when the home server form 3 shown in FIG. 43 is used in the first embodiment of the workflow management system of the present invention. In FIG. 46, the same processing steps as those in the flowchart shown in FIG. 25 are denoted by the same reference numerals.
[0299]
Comparing FIG. 46 with FIG. 25, the processing of the workflow engine when receiving a request for ending the work activity from the home server is exactly the same. In the process of the workflow engine when a request for starting a new work process is received from the home server, "work procedure 0" is written in the status column of the work information (S26), and a work item is generated by this workflow engine to store the work information. The process of copying (S27) is deleted. Instead, as a new process, the temporary work item included in the received new work process start message is extracted (S29), and the data indicated in the extracted temporary work item is extracted. Is copied to the work information (S30), and "work procedure 1" is written in the status field of the work information (S31), and the person responsible for the work activity of "work procedure 1" of the work process requested to be started The ID is acquired and written in the person in charge column of the work information (S32), and the work item of "work procedure 1" is entered. Form copy the work information (S33) processing is performed.
[0300]
FIG. 47 is a system configuration diagram of form 4 of the home server used in the workflow management system of FIG.
In FIG. 47, the same components as those in the system configuration diagram of the first embodiment of the home server shown in FIG.
[0301]
The configuration of the home server according to the fourth embodiment shown in FIG. 47 differs from the configuration of the home server according to the first embodiment shown in FIG. 27 in that a next work activity detecting device 341 and a work procedure definition information storage device 342 are provided.
[0302]
In the workflow management system described so far, the forwarding process for the work activity by the workflow engine has been performed for all the work activities in the finished state. Therefore, the person in charge of finishing a certain work activity and the person in charge of the next work activity (next work activity) of the finished work activity are the same user, and the next work activity is processed by the same user system. Is passed, the work item is exchanged between the user system and the workflow engine. For this reason, it may take a considerable amount of time from when a user ends a certain work activity in the user system to when the same user following the work activity can start the next work activity in charge.
[0303]
In view of this problem, in the form 4 of the home server shown in FIG. 47, the home server compares the persons in charge of the work activity for which the processing has been completed and the next person in charge of the next work activity. The main feature is to execute processing to prevent the forwarding of the next work activity by the workflow engine when the two match. When the person in charge matches, the burden on the forwarding process of the workflow engine is reduced, and the waiting time in the user system from the time when the user ends one work activity until the next work activity can be started Is shortened.
[0304]
In FIG. 47, the next work activity detection device 341 detects the next work activity of the work activity for which processing has been completed in accordance with the processing request from the home server control device 302, and the work activity for which processing has been completed, the next work activity, It is determined whether or not the respective persons in charge match each other, and the determination result is notified to the home server control device 302.
[0305]
The work procedure definition information storage device 342 stores the work procedure definition information. Like the work procedure definition information storage device 332 shown in FIG. 43, the work procedure definition information stored in each workflow engine of the home server. The same information as the work procedure definition information stored in the storage device is stored in advance.
[0306]
In the configuration of FIG. 47, for example, if the user ends a work activity of a certain work procedure in the user system A 311, the end request of the work activity is transmitted from the user system A 311 to the home server control device 302. Here, the home server control device 302 requests the next work activity detection device 341 to execute the next work activity detection process.
[0307]
In response to this request, the next work activity detection device 341 detects the next work activity following the finished work activity with reference to the work procedure definition information stored in the work procedure definition information storage device 342, and further terminates the processing. It is determined whether the person in charge of the work activity and the person in charge of the detected next work activity are the same, and this determination result is returned to the home server control device 302.
[0308]
Based on the determination result returned from the next work activity detection device 341, if the person in charge of the completed work activity and the person in charge of the detected next work activity are the same, the home server control device 302 The work activity can be started immediately, and the work engine of the main activity in the main server is notified via the home server communication management device 301 that the work item of the next work activity is not required to be forwarded. I do.
[0309]
In FIG. 47, the processes performed by the home server communication management device 301, the user system generation device 303, and the connection management device 304 are respectively the same as those in the home server mode 1 shown in the flowcharts of FIGS. 34, 35, and 36. This is the same as the processing performed by the device. In FIG. 47, the contents of the information stored in the work item management device 305 and the user information management table 306 are also the same as those in the first embodiment of the home server.
[0310]
FIG. 48 is a flowchart of a process performed by the next work activity detection device 341 of the form 4 of the home server shown in FIG. This processing will be described with reference to FIG.
[0311]
The next work activity detecting device that has received the processing request from the home server control device extracts the work type ID from the work item received together (S1), and uses the extracted work type ID as a search key to store the work procedure definition information storage device. And retrieve the corresponding work procedure information (S2).
[0312]
Further, the next work activity detecting device extracts the current procedure ID from the work item (S3), and extracts the procedure of the entire work process from the previously extracted work procedure information using the extracted procedure ID as a search key (S4). Then, a work procedure ID of the next work activity with respect to the current work activity is extracted from the extracted procedure (S5).
[0313]
Here, the next work activity detection device determines whether or not the work procedure ID of the extracted next work activity indicates that the work process is completed (S6). As a result of the determination, if the work procedure ID for the next work activity does not indicate the completion of the work process, the processing after S7 is performed, and the work procedure ID for the next work activity indicates the completion of the work process. If there is, the process of S11 is performed.
[0314]
As a result of the determination processing in S6, the next work activity detecting device that has determined that the work procedure ID of the next work activity does not indicate the completion of the work process, determines the next work activity from the work procedure information extracted earlier. The information of the person in charge corresponding to the work procedure ID is acquired (S7), and it is determined whether the person in charge of the current work activity that has completed the process is the same as the person in charge of this next work activity (S7). S8). If the result of this determination is that the persons in charge of both work activities are the same, the processing from S9 is performed, and if the persons in charge of both work activities are not the same, the processing of S11 is performed.
[0315]
As a result of the determination process in S8, the next work activity detection device that determines that the person in charge of the current work activity and the person in charge of the next work activity are the same writes the procedure ID of the next work in the “state” column of the work item (S9). ), Information indicating "return is unnecessary" is returned to the home server control device (S10), and the current process is terminated.
[0316]
On the other hand, as a result of the determination processing in S6, it is determined that the work procedure ID for the next work activity indicates the completion of the work process, or as a result of the determination processing in S8, the current work activity and the next work activity are determined. The next work activity detection device that determines that the person in charge is not the same returns information indicating "return required" to the home server control device (S11), and terminates the current process.
[0317]
The process performed by home server control device 302 in FIG. 47 is the same as the process performed by home server control device in form 1 of the home server shown in the flowchart in FIG. 29, and is shown as a subroutine in the flowchart shown in FIG. Among the four processes performed, the processes shown in the flowcharts of FIGS. 30, 31, and 32 are similarly performed for the new user connection process, the new work generation process, and the work item addition process. However, the processing at the end of the work activity is newly added to the processing shown in the flowchart of FIG.
[0318]
FIG. 49 is a flowchart of work activity end processing performed by the home server control device 302 according to the fourth embodiment of the home server. In FIG. 49, common steps are denoted by the same reference numerals as those in the flowchart of the work end processing performed by the home server control device 302 of the first embodiment of the home server shown in FIG. The processing at the end of the work activity will be described with reference to FIG.
[0319]
The home server control device acquires the work ID of the work process for the work activity for which processing has been completed from the received work activity end state information (S41), and the work item in which the work item corresponding to the work ID is stored. After obtaining the storage location in the management device (S42), the control unit requests the next work activity detection device to detect the next work activity (S46).
[0320]
Then, the home server control device determines whether or not the processing result of the next work activity detection by the next work activity detection device is “transfer required” (S47).
[0321]
As a result of the determination processing in S47, the home server control device that has determined that the processing result of the next work activity detection is “transfer required” deletes the work item entry from the work item management device (S43), and further performs work. The work item for which the work has been completed is deleted from the user system that has issued the activity end request (S44), and the received work activity end state indicates that the work item needs to be transferred by the workflow engine. The flag is added and passed to the home server communication management device (S48), and the process ends.
[0322]
On the other hand, as a result of the determination processing in S47, the home server control device that determines that the processing result of the next work activity detection is not “transfer required” does not require the workflow engine to transfer the work item to the received work activity end state. Is added and passed to the home server communication management device (S49), and the process ends.
[0323]
FIG. 50 is a flowchart of a process performed by the workflow engines A and B (42, 43) when the home server form 4 shown in FIG. 47 is used in the first embodiment of the workflow management system of the present invention. 50, the same processing steps as those in the flowchart shown in FIG. 25 are denoted by the same reference numerals.
[0324]
Comparing FIG. 50 with FIG. 25, the process of the workflow engine when receiving a request for starting a new work process from the home server is exactly the same. Further, the process of the workflow engine when receiving a request for ending the work activity from the home server is different only in that one judgment process is added.
[0325]
In FIG. 50, the workflow engine upon receiving a work activity end request performs the processes from S1 to S8 in the same manner as in FIG.
Thereafter, the workflow engine determines whether the processing content corresponding to the extracted work procedure ID of the next work activity indicates that the work process is completed (S9). If the processing content is the completion of the work process, the process of S10 is performed in the same manner as in FIG. 25. If the processing content is not the completion of the work process, the determination process of S15 is performed.
[0326]
As a result of the determination processing in S9, the workflow engine that determines that the processing content of the next work activity is not the completion of the work process determines whether or not the “transfer required flag” is added to the work activity end state (S15). .
[0327]
As a result of the determination processing in S15, the workflow engine that has determined that the “transfer required flag” has been added to the work activity end state, as in the processing shown in FIG. 25, generates and transmits a work item for the next work activity. The transmission is performed from S11 to S14, and the current process ends.
[0328]
On the other hand, as a result of the determination processing in S15, the workflow engine that has determined that the “transfer required flag” has not been added to the work activity end state ends this processing without doing anything.
[0329]
FIG. 51 is an overall configuration diagram of Embodiment 2 of the workflow management system of the present invention.
FIG. 52 is a system configuration diagram of a home server used in the workflow management system of FIG.
[0330]
In FIG. 51, the same components as those in the overall configuration diagram of the first embodiment of the workflow management system shown in FIG. 19 are denoted by the same reference numerals, and in FIG. 52, the configuration of the home server shown in FIG. Components common to those in the first system configuration diagram are denoted by common numbers.
[0331]
The configuration of the second embodiment of the workflow management system shown in FIG. 51 is different from the configuration of the first embodiment of the workflow management system shown in FIG. 19 in that a work history search device 92 is provided in the main server S ''. . The configuration of the home server shown in FIG. 52 is different from the configuration of the home server according to the first embodiment shown in FIG. 27 in having a work history management device 351.
[0332]
One of the functions frequently used in the workflow management system is to search for a work history. This function is a function for confirming the history of the processed work activities for each user.
[0333]
In a conventional workflow management system having a single workflow engine, since the workflow engine also processes the search of the work history, the search for the frequently used work history causes a reduction in the processing speed of the entire workflow management. It had become one of.
[0334]
In a workflow management device having a plurality of workflow engines, it is possible to process the search of the work history by each workflow engine. However, it is possible that all the work activities performed by a user have been managed. Since it is in the workflow engine, it is necessary to cause all the workflow engines to perform a search process in order to search for the work history of one user, which imposes a heavy processing load on the workflow engine.
[0335]
Therefore, it is conceivable to cause the workflow engine management device to store and retrieve the work history. However, if the workflow engine management apparatus is made to store and search for all work histories, for example, when a large number of user systems request a search for work histories at the same time, the processing load of the workflow engine management apparatus is reduced. And the search for the work history takes a considerable amount of time.
[0336]
In the workflow management system using the home server shown in FIGS. 51 and 52, the history of the work activities performed by the user belonging to the home server is stored in the home server to which the user belongs, and the work history search process is performed. A major feature is that the processing is performed by the home server. With this feature, the processing load on each element of the main server associated with the search of the work history is reduced.
[0337]
51, the work history search device 92 searches the user information management table C203 for the home server to which the user performing the history search belongs based on the ID of the user performing the history search, and executes the history search on the home server. Then, the history search result from the home server is notified to the user system of the home server that has requested the history search.
[0338]
In FIG. 52, a work history management device 351 stores a history of work activities performed by a user belonging to this home server on a user system.
[0339]
FIG. 53 is a diagram illustrating an example of history information stored in the work history management device. As shown in the figure, the history information stored in the work history management device includes, for each work activity in each work procedure, a work ID of a work process, a state (procedure ID), a procedure name, a person in charge ID, and a work flow in charge. There are an engine ID, a history number (a serial number written when the work history is stored), and the like.
[0340]
In the configurations of FIGS. 51 and 52, for example, if the user ends the processing of the work activity of a certain work procedure in the user system A 311, the home server control device 302 adds to the processing at the end of the work activity described so far. The history of the completed work activity is stored in the work history management device 351.
[0341]
Further, for example, when a search for a work history of a certain user is requested from the user system B312, the request is transmitted to the work history search device 92 in the main server S ''. The work history search device 92 searches the home server to which the user to be searched belongs by referring to the user information management table C203, and sends a work history search request to the home server.
[0342]
Upon receiving the work history search request, the home server control device 302 refers to the work history management device 351 to search the stored work activity history performed by the search target user, and stores the search result of the work history as the main search result. This is returned to the work history search device 92 in the server S ''.
[0343]
The work history search device 92 that has received the search result of the work history transmits the search result to the user system B 312 that has requested the search.
First, processing performed by each component in the workflow management system according to the second embodiment of the present invention shown in FIG. 51 will be described.
[0344]
In FIG. 51, the processes performed by the workflow engine management device 40 ′, each workflow engine (42, 43), and each workflow engine communication management device (461 ′, 462 ′) are shown in FIG. 23, FIG. 26 is the same as the process performed by each component in the workflow management system according to the first embodiment of the present invention shown in the flowchart in FIG. In FIG. 51, a workflow engine management table 50, work information storage devices (61, 62), work procedure definition information storage devices (64, 65), a general database 66, and user information management tables (201, 202, 203) The contents of the information respectively stored in the first and second embodiments are the same as those in the first embodiment of the workflow management system of the present invention.
[0345]
FIG. 54 is a flowchart of a process performed by the work history search device 92 according to the second embodiment of the workflow management system of the present invention shown in FIG. This processing will be described with reference to FIG.
[0346]
First, the work history search device receives the ID of the user performing the work history search (S1), and uses the received user ID as a search key to find the home server to which the user belongs (home server in charge of search processing) from the user information management table. Search (S2).
[0347]
Then, the work history search device creates a work history search request message (S3), and sets the ID of the home server in charge and the user ID in this message (S4). The history search request message is passed (S5), and the process waits until the result of the work history search is returned from the home server (S6).
[0348]
Thereafter, the work history search device that has received the history search result returns the work history search result to the user system of the home server that has requested the work history search (S7), and ends the current process.
[0349]
FIG. 55 is a flowchart of a process performed by the communication management device 463 ′ for the workflow engine management device in the second embodiment of the workflow management system of the present invention illustrated in FIG. 51. This processing will be described with reference to FIG.
[0350]
First, the communication management device for the workflow engine management device determines the type of the received message (S1). As a result of the determination, if the received message is a work completion message from the workflow engine or a new work generation message from the home server, the process of S2 is performed, and the received message is If the message is a new work process start request message, the process in S3 is performed. If the received message is a work history search request message from the work history search device, the process in S4 is performed, and the received message is a work from the home server. If the message is a history search result message, the process of S5 is performed.
[0351]
As a result of the determination process in S1, the communication management device for the workflow engine management device that determines that the received message is a message of the completion of the work process or a message of creation of a new work process passes the message to the workflow engine management device ( S2), end the current process.
[0352]
On the other hand, as a result of the determination processing in S1, the communication management device for the workflow engine management device that has determined that the received message is a message of a new work process start request is the workflow corresponding to the assigned workflow engine ID described in this message. This message is passed to the engine (S3), and the current process ends.
[0353]
Further, as a result of the determination processing in S1, the communication management device for the workflow engine management device that determines that the received message is the message of the work history search request is the home server corresponding to the assigned home server ID described in this message. (S4), and the current process ends.
[0354]
Further, as a result of the determination processing in S1, the communication management device for the workflow engine management device that determines that the received message is a message of the search result of the work history passes this message to the work history search device (S5). The process ends.
[0355]
Next, processing performed by each component of the home server shown in FIG. 52 will be described.
In FIG. 52, the processes performed by the user system generation device 303 and the connection management device 304 are the same as the processes performed by the respective devices in the home server mode 1 shown in the flowcharts of FIGS. In FIG. 52, the contents of information stored in the work item management device 305 and the user information management table 306 are also the same as those in the first embodiment of the home server.
[0356]
FIG. 56 is a flowchart of a process performed by the home server communication management device 301 of the home server shown in FIG. This processing will be described with reference to FIG.
[0357]
First, the home server communication management device determines the type of the received message (S1). As a result of the determination, if the received message is a message for generating a new work process from the home server control device, the process in S2 is performed. If the received message is information on the end status of the work activity from the home server control device, S3 and thereafter If the received message is a work item generated by the workflow engine of the main server or a work history search request message generated by the work history search device of the main server, the process of S5 is performed.
[0358]
As a result of the determination process in S1, the home server communication management device that determines that the received message is a message for generating a new work process sends the message to the workflow engine management device communication management device (S2), and performs the current process. To end.
[0359]
On the other hand, as a result of the determination processing in S1, the home server communication management device that determines that the received message is the information on the work activity end state extracts the assigned workflow engine ID from the information on the work activity end state (S3). ), The received work activity end state information is sent to the workflow engine communication management device corresponding to the assigned work flow engine ID (S4), and the current process ends.
[0360]
Also, as a result of the determination processing in S1, the home server communication management device that determines that the received message is a work item or a work history search request message passes the received message to the home server control device (S5). This processing ends.
[0361]
FIG. 57 is a flowchart of the process performed by the home server control device 302 of the home server shown in FIG. This processing will be described with reference to FIG.
The home server control device determines the type of the processing request for the received information (S1, S3, S5, S7, S9). As a result of the determination, if a request for a new user connection is made by the user operating the user program, a new user connection process is executed (S2). If a request for generating a new work process is made from the user system, a new user connection process is performed. A work process generation process is executed (S4). If a work item generated by the workflow engine of the main server is passed, a work item addition process is executed (S6), and a request for ending the work activity is sent from the user system. If it has been received, the work activity end processing (S8) is executed, and if the work history search request generated by the work history search device of the main server has been passed, the work history search processing is executed (S10). After the end of each process, the process of determining the type of the processing request for the next transmitted information is repeated.
[0362]
Among the processes shown in FIG. 57, the new user connection process (S2), the work process generation process (S4), and the work item addition process (S6) are shown in flowcharts in FIGS. 30, 31, and 32, respectively. This is the same as the process performed by the home server control device in the first embodiment of the home server used in the first embodiment of the workflow management system of the present invention shown in FIG.
[0363]
FIG. 58 is a flowchart of the work activity end processing performed by the home server control device 302 shown as S8 in FIG. This processing will be described with reference to FIG.
[0364]
First, the home server control device acquires the work ID of the completed work from the received work activity end state information (S41), and stores the work ID in the work item management device in which the work item corresponding to the work ID is stored. The position is obtained (S42).
[0365]
Then, the work item is deleted from the work item management device (S43), and the work item for the work activity is deleted from the user system that has issued the request for terminating the work activity (S44).
[0366]
Thereafter, the home server control device adds a new entry in the history management device (S45), copies history information and a history number of the completed work activity to the added entry (S46), and communicates with the home server. The received work end state is passed to the management device (S47), and the process ends.
[0367]
FIG. 59 is a flowchart of the work history search process performed by the home server control device 302 shown as S10 in FIG. This process will be described with reference to FIG. 59. The home server control device searches the work history search device for work history information of the user using the user ID of the user to be searched as a search key (S51). finish.
[0368]
It should be noted that it is possible to cause a general computer to perform the processing related to the present invention, which is executed by either or any of the main server and the home server that constitute the workflow management system using the home server described above. For this purpose, a program for causing a computer to perform the processes performed by the components constituting the main server and the home server described above is created, and the created program is executed by the computer.
[0369]
FIG. 60 is a diagram illustrating an example of internal configuration blocks of a general computer that can execute the above-described processing according to the present invention. The computer shown in FIG. 60 includes a central processing unit 401 that controls the operation of the entire computer based on a program, a semiconductor that stores a program executed by the central processing unit 401, data processed by the central processing unit 401, and the like. Input devices such as a storage device 402 such as a memory and a hard disk device, a keyboard and a storage medium reading device into which programs and data to be processed by the central processing unit 401 are input, and a printer and a display for outputting a calculation processing result by the central processing unit 401 The output device 403 has an external interface device 404 for exchanging data with another device such as a computer via a network. Each component can exchange data with each other via a system bus 405. It is.
[0370]
Here, a program for causing a computer as shown in the example of FIG. 60 to execute a process performed by each component constituting both or any of the main server and the home server described above is readable by the computer. To be stored in a suitable storage medium. Then, the read program is stored in the storage device 402, and is executed by the central processing unit 401.
[0371]
FIG. 61 is a diagram illustrating an example of a computer-readable storage medium that stores the above-described program. As shown in the figure, examples of a storage medium that can be used here include a storage medium reading device provided in the computer 500 such as a so-called CD-ROM, DVD-ROM, floppy disk, MO (magneto-optical disk), and the like. A readable portable storage medium 501, a memory 502 such as a semiconductor memory or a hard disk device provided in the computer 500, or a storage device provided in a program server 505 capable of transmitting a program to the computer 500 via a line 504. 503, and any of these may be used.
[0372]
Note that the workflow management program storage medium 74 of the present invention shown in FIG. 6 described above may be a storage medium as shown in the example of FIG. 60 is read out by a general computer as shown in the example of FIG. 60, stored in the storage device 402, and executed by the central processing unit 401. It is possible to cause a computer to perform the same processing as the processing performed by each component in each embodiment of the workflow management apparatus.
[0373]
【The invention's effect】
According to the present invention, the work procedure and the work information can be transferred between the workflow engines at high speed, so that the load of the workflow engine can be dispersed, or the work can be backed up or replaced quickly. Therefore, access is not concentrated on a specific workflow engine, and the forwarding speed does not decrease even if the amount of work to be managed increases. Also, since it is easy to have a backup workflow engine, even if a failure occurs in the workflow engine, it is possible to quickly switch to the alternative workflow engine. Therefore, a highly reliable workflow management device can be obtained.
[0374]
Further, the present invention predicts a workflow engine that manages the next work activity of the next work activity, transfers work information and work procedures to the work flow engine at high speed, and can process the work by the work flow engine. It can be done efficiently.
[0375]
Also, according to the present invention, a home server is provided between a main server having a workflow engine and a user system operated by a user, so that a user system capable of processing work activities for which the user is in charge of the user system. Can be provided, and it becomes easy for a plurality of users to proceed with the work activity in parallel, thereby improving the efficiency of the whole work.
[0376]
Then, by performing exclusive control of the work activity that causes a problem when the plurality of users process the work activity in parallel, the load on the workflow engine is reduced.
[0377]
In addition, by performing the draft processing required when a new work process is generated on the home server, the response to the user when the new work process is generated becomes faster, and the processing to the workflow engine is performed. The burden is reduced.
[0378]
Also, in the home server, if the respective persons in charge of the completed work activity and the next work activity following the work activity match, the workflow engine of the main server forwards the next work activity. The process of notifying that work is not performed reduces the burden of forwarding processing by the workflow engine, and the waiting time from when a user ends one work activity to when the next work activity can be started. Is shortened.
[0379]
Further, the history of the work activities performed by the user belonging to the home server is stored in the home server, and the processing of searching for the work history is performed by the home server, thereby reducing the processing load on the main server. You.
[Brief description of the drawings]
FIG. 1 is a diagram showing a first basic configuration of the present invention.
FIG. 2 is a diagram showing a second basic configuration of the present invention.
FIG. 3 is a system configuration diagram of a workflow management device according to a first embodiment of the present invention.
FIG. 4 is a diagram showing an example of a work information management table according to the present invention.
FIG. 5 is a diagram showing an example of a workflow engine management table and work items according to the present invention.
FIG. 6 is a diagram showing a storage medium for storing a workflow management program according to the present invention.
FIG. 7 is a flowchart of the workflow engine management device according to the first embodiment of the workflow management device of the present invention.
FIG. 8 is a flowchart of a workflow engine communication management device according to the first embodiment of the present invention;
FIG. 9 is a flowchart of a communication management device for a user system according to the first embodiment of the workflow management device of the present invention.
FIG. 10 is a system configuration diagram of a workflow management device according to a second embodiment of the present invention.
FIG. 11 is a flowchart of a workflow engine management device according to a second embodiment of the workflow management device of the present invention.
FIG. 12 is a system configuration diagram of a workflow management device according to a third embodiment of the present invention.
FIG. 13 is a system configuration diagram of a workflow management device according to a fourth embodiment of the present invention.
FIG. 14 is a flowchart of a workflow engine management device according to a fourth embodiment of the present invention;
FIG. 15 is a flowchart of an abnormal state detection device according to a fourth embodiment of the workflow management device of the present invention.
FIG. 16 is a flowchart of a workflow engine according to the fourth embodiment of the workflow management device of the present invention.
FIG. 17 is a system configuration diagram of a workflow management device according to a fifth embodiment of the present invention.
FIG. 18 is a flowchart of a workflow engine management device according to the fifth embodiment of the workflow management device of the present invention.
FIG. 19 is an overall configuration diagram of a workflow management system according to the first embodiment of the present invention.
FIG. 20 is a diagram showing a definition example of a work procedure stored in a work procedure definition information storage device.
FIG. 21 is a diagram illustrating an example of work information stored in a work information storage device.
FIG. 22 is a diagram illustrating an example of a user information management table.
FIG. 23 is a flowchart of the workflow engine management device according to the first embodiment of the workflow management system of the present invention.
FIG. 24 is a flowchart of a communication management device for a workflow engine management device according to the first embodiment of the workflow management system of the present invention.
FIG. 25 is a flowchart of a workflow engine according to the first embodiment of the workflow management system of the present invention.
FIG. 26 is a flowchart of a workflow engine communication management device according to the first embodiment of the workflow management system of the present invention.
FIG. 27 is a system configuration diagram of a first embodiment of a home server used in the workflow management system of FIG. 19;
FIG. 28 is a diagram illustrating an example of a work item stored in the work item management device.
FIG. 29 is a flowchart of the home server control device according to the first embodiment of the home server.
30 is a flowchart of a new user connection process shown in FIG.
FIG. 31 is a flowchart of a new work process generation process shown in FIG. 29.
FIG. 32 is a flowchart of a work item adding process shown in FIG. 29.
FIG. 33 is a flowchart of work activity end processing shown in FIG. 29.
FIG. 34 is a flowchart of the home server communication management device according to the first embodiment of the home server.
FIG. 35 is a flowchart of the user system generation device according to the first embodiment of the home server.
FIG. 36 is a flowchart of the connection management device according to the first embodiment of the home server.
FIG. 37 is a system configuration diagram of form 2 of a home server used in the workflow management system in FIG. 19;
FIG. 38 is a diagram illustrating an example of a work exclusive control table.
FIG. 39 is a flowchart of the work exclusion controller of the second embodiment of the home server.
FIG. 40 is a flowchart of the home server control device according to the second embodiment of the home server.
FIG. 41 is a flowchart of work activity process start processing shown in FIG. 40;
42 is a flowchart of work activity end processing shown in FIG. 40.
FIG. 43 is a system configuration diagram of form 3 of a home server used in the workflow management system in FIG. 19;
FIG. 44 is a flowchart of the slip processing device according to the third embodiment of the home server.
FIG. 45 is a flowchart of a new work process generation process performed by the home server control device according to the third embodiment of the home server.
FIG. 46 is a flowchart of a workflow engine when the home server form 3 shown in FIG. 43 is used in the workflow management system according to the first embodiment of the present invention.
FIG. 47 is a system configuration diagram of form 4 of a home server used in the workflow management system of FIG. 19;
FIG. 48 is a flowchart of the next work activity detection device according to the fourth embodiment of the home server.
FIG. 49 is a flowchart of work activity end processing performed by the home server control device of the fourth embodiment of the home server.
FIG. 50 is a flowchart of a workflow engine when the home server form 4 shown in FIG. 47 is used in the workflow management system according to the first embodiment of the present invention.
FIG. 51 is an overall configuration diagram of a workflow management system according to a second embodiment of the present invention.
FIG. 52 is a system configuration diagram of a home server used in the workflow management system of FIG. 51.
FIG. 53 is a diagram showing an example of history information stored in the work history management device.
FIG. 54 is a flowchart of the work history search device according to the second embodiment of the workflow management system of the present invention.
FIG. 55 is a flowchart of a communication management device for a workflow engine management device according to the second embodiment of the workflow management system of the present invention.
FIG. 56 is a flowchart of the home server communication management device of the home server shown in FIG. 52.
FIG. 57 is a flowchart of the home server control device of the home server shown in FIG. 52.
FIG. 58 is a flowchart of work activity end processing shown in FIG. 57.
FIG. 59 is a flowchart of a work history search process shown in FIG. 57.
FIG. 60 is a diagram illustrating an example of an internal configuration block of a general computer.
FIG. 61 is a diagram illustrating an example of a storage medium readable by a computer.
FIG. 62 is a diagram illustrating a configuration example of a conventional workflow management system.
FIG. 63 is a diagram illustrating an operation of a conventional workflow management system.
[Explanation of symbols]
W Workflow management device
1, 1001 Workflow support means A
2 Work procedure definition storage device A
3 Work procedure definition
4 Work information storage device A
11, 1011 Workflow support means B
12 Work procedure definition storage device B
13 Work procedure definition
14 Work information storage device B
20 Workflow support means management device
21 Work management information storage
31, 1111 User system A
32, 1112 User system B
33, 1113 User system C
1000 main server
1002 work procedure definition storage means A
1003 first work information storage means A
1012 Work procedure definition storage means B
1013 First work information storage means B
1021 User information management means
1022 Workflow support means management means
1100 Home server A
1101 second work information storage means
1102 Work information providing means
1103 work processing information sending means
1200 home server B
1211 User system D
1212 User system E
1213 User system F

Claims (14)

予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援するワークフロー管理システムにおいて、
メインサーバと、
前記ユーザが属するホームサーバと、
で構成され、
前記メインサーバは、
前記作業手順と、前記作業についての作業情報と、前記ユーザにより行われた前記作業についての処理情報と、に基づいて該作業の次の作業についての作業情報を生成し、
該次作業を担当するユーザの属するホームサーバに該次作業についての作業情報を廻送し、
前記ホームサーバは、
前記メインサーバより廻送されてくる作業情報を蓄積し、
前記作業情報を該作業の担当であるユーザ別に提供し、
前記ユーザにより行われた前記作業についての処理情報を前記メインサーバへ送出する、
ことを特徴とするワークフロー管理システム。
In a workflow management system that manages a series of operations based on a predefined operation procedure and supports the execution of the series of operations among a plurality of users,
A main server,
A home server to which the user belongs;
Consists of
The main server is:
The work procedure, work information about the work, and processing information about the work performed by the user, based on the work, to generate work information about the next work of the work,
Forwarding work information about the next work to the home server to which the user in charge of the next work belongs;
The home server is
Accumulate work information sent from the main server,
Providing the work information for each user who is in charge of the work,
Sending processing information about the work performed by the user to the main server;
A workflow management system characterized in that:
予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援するワークフロー管理システムにおいて、
メインサーバと、
前記ユーザが属するホームサーバと、
で構成され、
前記メインサーバは、
前記作業手順の定義を格納する作業手順定義格納手段と、
前記一連の作業の遂行に必要な作業情報を格納する第一作業情報格納手段と、
前記ユーザが属するホームサーバを示すユーザ情報を管理するユーザ情報管理手段と、
前記作業手順定義格納手段に格納されている作業手順と、前記第一作業情報格納手段に格納されている作業情報と、前記ホームサーバより送られてくる該ホームサーバに属するユーザにより行われた作業についての処理情報と、に基づいて該作業手順における次の作業についての作業情報を生成し、前記ユーザ情報管理手段に格納されているユーザ情報に基づいて該次作業を担当するユーザの属するホームサーバに該次作業についての作業情報を廻送するワークフロー支援手段と、
を有し、
前記ホームサーバは、
前記メインサーバより廻送されてきた作業情報を格納する第二作業情報格納手段と、
前記第二作業情報格納手段に格納されている前記ユーザが担当である作業についての作業情報を該ユーザ別に提供する作業情報提供手段と、
前記ユーザにより行われた前記作業についての処理情報を前記メインサーバに送出する作業処理情報送出手段と、
を有する、
ことを特徴とするワークフロー管理システム。
In a workflow management system that manages a series of operations based on a predefined operation procedure and supports the execution of the series of operations among a plurality of users,
A main server,
A home server to which the user belongs;
Consists of
The main server is:
Work procedure definition storage means for storing the definition of the work procedure,
First work information storage means for storing work information necessary for performing the series of work,
User information management means for managing user information indicating a home server to which the user belongs;
A work procedure stored in the work procedure definition storage means, work information stored in the first work information storage means, and work performed by a user belonging to the home server sent from the home server The home server to which the user who is in charge of the next work belongs based on the user information stored in the user information management means, based on the processing information about A workflow support means for transmitting work information on the next work to
Has,
The home server is
Second work information storage means for storing the work information sent from the main server,
Work information providing means for providing work information on work for which the user is in charge stored in the second work information storage means for each user;
Work processing information sending means for sending processing information about the work performed by the user to the main server;
Having,
A workflow management system characterized in that:
前記メインサーバは、
前記ワークフロー支援手段を複数有し、
前記ワークフロー支援手段には、前記作業手順定義格納手段及び前記第一作業情報格納手段が個々に備えられ、
前記ワークフロー支援手段のそれぞれに行わせる処理の負荷が均等になるように該ワークフロー支援手段を管理するワークフロー支援手段管理手段を更に有する、
ことを特徴とする請求項2に記載のワークフロー管理システム。
The main server is:
Having a plurality of the workflow support means,
The workflow support means is provided with the work procedure definition storage means and the first work information storage means individually,
Further comprising a workflow support means management means for managing the workflow support means so that the load of processing performed by each of the workflow support means is equal;
The workflow management system according to claim 2, wherein:
前記一連の作業におけるある作業手順の作業を担当することのできるユーザは複数存在し、
前記ホームサーバは、該ホームサーバに属するユーザにより該ユーザが担当である前記作業が開始された後には、該作業の担当である他のユーザによる該作業の開始を却下する作業排他制御手段を更に有する、
ことを特徴とする請求項2に記載のワークフロー管理システム。
There are a plurality of users who can take charge of the work of a certain work procedure in the series of work,
The home server further includes a work exclusive control unit for rejecting the start of the work by another user who is in charge of the work after the work assigned to the user is started by a user belonging to the home server. Have,
The workflow management system according to claim 2, wherein:
前記ホームサーバは、該ホームサーバに属するユーザからの要求に応じて、前記一連の作業における最初の作業手順の作業の遂行に必要な作業情報を生成して該ユーザに提供する新規作業情報提供手段を更に有することを特徴とする請求項2に記載のワークフロー管理システム。The new work information providing means for generating, in response to a request from a user belonging to the home server, work information necessary for performing the work of the first work procedure in the series of work, and providing the work information to the user The workflow management system according to claim 2, further comprising: 前記ホームサーバは、
前記メインサーバの有する作業手順定義格納手段に格納されているものと同様の作業手順の定義を格納する副作業手順定義格納手段と、
前記副作業手順定義格納手段に格納されている作業手順の定義より、該ホームサーバに属するユーザにより行われた作業の次の作業手順の作業を担当するユーザを検出し、該作業を行なったユーザと該検出された次作業を担当するユーザとが一致するときには、該次作業についての作業情報の廻送の中止を前記メインサーバに指示する次作業検出手段と、
を更に有し、
前記メインサーバの有するワークフロー支援手段は、前記ホームサーバからの前記次作業についての作業情報の廻送の中止の指示に従い、該作業情報の廻送を中止する、
ことを特徴とする請求項2に記載のワークフロー管理システム。
The home server is
Sub-work procedure definition storage means for storing the same work procedure definition stored in the work procedure definition storage means of the main server;
From the definition of the work procedure stored in the sub-work procedure definition storage means, a user who is in charge of the work following the work performed by the user belonging to the home server is detected, and the user who performed the work is detected. And when the detected user in charge of the next work matches, the next work detection means for instructing the main server to stop forwarding the work information about the next work,
Further having
Workflow support means of the main server, according to an instruction to stop the transfer of work information about the next work from the home server, to stop the transfer of the work information,
The workflow management system according to claim 2, wherein:
前記メインサーバは、特定のユーザにより行われた前記作業の履歴の検索を該ユーザの属する前記ホームサーバに指示する作業履歴検索指示手段を更に有し、
前記ホームサーバは、
該ホームサーバに属するユーザにより行われた作業の履歴を管理する作業履歴管理手段と、
前記メインサーバからの指示に応じて、前記作業履歴管理手段により管理されている作業の履歴から、前記特定のユーザにより行われた作業の履歴を検索する作業履歴検索手段と、
を更に有する、
ことを特徴とする請求項2に記載のワークフロー管理システム。
The main server further includes a work history search instructing unit that instructs the home server to which the user belongs to search for a history of the work performed by a specific user,
The home server is
Work history management means for managing a history of work performed by a user belonging to the home server;
In accordance with an instruction from the main server, a work history search unit that searches a history of work performed by the specific user from a work history managed by the work history management unit,
Further having
The workflow management system according to claim 2, wherein:
予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援する、メインサーバと前記ユーザが属するホームサーバとで構成されるワークフロー管理システムに用いられるメインサーバであって、
前記作業手順と、前記作業についての作業情報と、前記ユーザにより行われた前記作業についての処理情報と、に基づいて該作業の次の作業についての作業情報を生成し、
該次作業を担当するユーザの属するホームサーバに該作業情報を廻送する、
ことを特徴とするワークフロー管理システムに用いられるメインサーバ。
It is used for a workflow management system configured with a main server and a home server to which the user belongs, which manages a series of work based on a predefined work procedure and supports execution of the series of work among a plurality of users. Main server,
The work procedure, work information about the work, and processing information about the work performed by the user, based on the work, to generate work information about the next work of the work,
Forward the work information to the home server to which the user in charge of the next work belongs;
A main server used in a workflow management system, characterized in that:
予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援する、メインサーバと前記ユーザが属するホームサーバとで構成されるワークフロー管理システムに用いられるメインサーバであって、
前記作業手順の定義を格納する作業手順定義格納手段と、
前記一連の作業の遂行に必要な作業情報を格納する第一作業情報格納手段と、
前記ユーザが属するホームサーバを示すユーザ情報を管理するユーザ情報管理手段と、
前記作業手順定義格納手段に格納されている作業手順と、前記第一作業情報格納手段に格納されている作業情報と、前記ホームサーバより送られてくる該ホームサーバに属するユーザにより行われた作業についての処理情報と、に基づいて該作業手順における次の作業についての作業情報を生成し、前記ユーザ情報管理手段に格納されているユーザ情報に基づいて該次作業を担当するユーザの属するホームサーバに該次作業についての作業情報を廻送するワークフロー支援手段と、
を有することを特徴とするワークフロー管理システムに用いられるメインサーバ。
It is used for a workflow management system configured with a main server and a home server to which the user belongs, which manages a series of work based on a predefined work procedure and supports execution of the series of work among a plurality of users. Main server,
Work procedure definition storage means for storing the definition of the work procedure,
First work information storage means for storing work information necessary for performing the series of work,
User information management means for managing user information indicating a home server to which the user belongs;
A work procedure stored in the work procedure definition storage means, work information stored in the first work information storage means, and work performed by a user belonging to the home server sent from the home server The home server to which the user who is in charge of the next work belongs based on the user information stored in the user information management means, based on the processing information about A workflow support means for transmitting work information on the next work to
A main server used in a workflow management system, comprising:
前記メインサーバは、
前記ワークフロー支援手段を複数有し、
前記ワークフロー支援手段には、前記作業手順定義格納手段及び前記第一作業情報格納手段が個々に備えられ、
前記ワークフロー支援手段のそれぞれに行わせる処理の負荷が均等になるように該ワークフロー支援手段を管理するワークフロー支援手段管理手段を更に有する、
ことを特徴とする請求項9に記載のワークフロー管理システムに用いられるメインサーバ。
The main server is:
Having a plurality of the workflow support means,
The workflow support means is provided with the work procedure definition storage means and the first work information storage means individually,
Further comprising a workflow support means management means for managing the workflow support means so that the load of processing performed by each of the workflow support means is equal;
A main server used in the workflow management system according to claim 9, wherein:
予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援する、メインサーバと前記ユーザが属するホームサーバとで構成されるワークフロー管理システムに用いられるホームサーバであって、
前記メインサーバより廻送されてくる作業情報を蓄積し、
前記作業情報を該作業の担当であるユーザ別に提供し、
前記ユーザにより行われた前記作業についての処理情報を前記メインサーバへ送出する、
ことを特徴とするワークフロー管理システムに用いられるホームサーバ。
It is used for a workflow management system configured with a main server and a home server to which the user belongs, which manages a series of work based on a predefined work procedure and supports execution of the series of work among a plurality of users. A home server,
Accumulate work information sent from the main server,
Providing the work information for each user who is in charge of the work,
Sending processing information about the work performed by the user to the main server;
A home server used for a workflow management system, characterized in that:
予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援する、メインサーバと前記ユーザが属するホームサーバとで構成されるワークフロー管理システムに用いられるホームサーバであって、
前記メインサーバより廻送されてくる前記作業の遂行に必要な作業情報を格納する第二作業情報格納手段と、
前記第二作業情報格納手段に格納されている前記ユーザが担当である作業についての作業情報を該ユーザ別に提供する作業情報提供手段と、
前記ユーザにより行われた前記作業についての処理情報を前記メインサーバに送出する作業処理情報送出手段と、
を有する、
ことを特徴とするワークフロー管理システムに用いられるホームサーバ。
It is used for a workflow management system configured with a main server and a home server to which the user belongs, which manages a series of work based on a predefined work procedure and supports execution of the series of work among a plurality of users. A home server,
Second work information storage means for storing work information necessary for performing the work sent from the main server,
Work information providing means for providing work information on work for which the user is in charge stored in the second work information storage means for each user;
Work processing information sending means for sending processing information about the work performed by the user to the main server;
Having,
A home server used for a workflow management system, characterized in that:
コンピュータで実行させることにより、予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援する、メインサーバと前記ユーザが属するホームサーバとで構成されるワークフロー管理システムに用いられる該メインサーバの機能を該コンピュータに行なわせるメインサーバプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、
前記作業手順の定義を格納する作業手順定義格納機能と、
前記一連の作業の遂行に必要な作業情報を格納する作業情報格納機能と、
前記ユーザが属するホームサーバを示すユーザ情報を管理するユーザ情報管理機能と、
前記作業手順の定義と、前記作業情報と、前記ホームサーバより送られてくる該ホームサーバに属するユーザにより行われた作業についての処理情報と、に基づいて、該作業手順における次の作業についての作業情報を生成し、前記ユーザ情報に基づいて該次作業を担当するユーザの属するホームサーバに該次作業についての作業情報を廻送するワークフロー支援機能と、
をコンピュータに実行させるメインサーバプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
A main server and a home server to which the user belongs, which manages a series of work based on a predefined work procedure and executes the series of work among a plurality of users by being executed by a computer. A computer-readable storage medium storing a main server program that causes the computer to perform the function of the main server used in the workflow management system,
A work procedure definition storage function for storing the work procedure definition,
A work information storage function for storing work information necessary for performing the series of work,
A user information management function for managing user information indicating a home server to which the user belongs;
Based on the definition of the work procedure, the work information, and processing information on work performed by a user belonging to the home server sent from the home server, a next work in the work procedure is performed. A workflow support function of generating work information and forwarding work information on the next work to a home server to which a user in charge of the next work belongs based on the user information;
Computer-readable storage medium storing a main server program for causing a computer to execute the program.
コンピュータで実行させることにより、予め定義された作業手順に基づいて一連の作業を管理し、複数のユーザ間における該一連の作業の遂行を支援する、メインサーバと前記ユーザが属するホームサーバとで構成されるワークフロー管理システムに用いられる該ホームサーバの機能を該コンピュータに行なわせるホームサーバプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、
前記メインサーバより廻送されてくる前記作業の遂行に必要な作業情報を格納する作業情報格納機能と、
前記ユーザが担当である作業についての作業情報を該ユーザ別に提供する作業情報提供機能と、
前記ユーザにより行われた前記作業についての処理情報を前記メインサーバに送出する作業処理情報送出機能と、
をコンピュータに実行させるホームサーバプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
A main server and a home server to which the user belongs, which manages a series of work based on a predefined work procedure and executes the series of work among a plurality of users by being executed by a computer. A computer-readable storage medium storing a home server program that causes the computer to perform the functions of the home server used in the workflow management system to be performed,
A work information storage function for storing work information necessary for performing the work transmitted from the main server;
A work information providing function of providing work information on work for which the user is in charge for each user;
A work processing information sending function for sending processing information about the work performed by the user to the main server;
Computer-readable storage medium storing a home server program for causing a computer to execute the program.
JP2003145741A 1997-11-19 2003-05-23 Workflow management system and computer-readable storage medium Pending JP2004030636A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003145741A JP2004030636A (en) 1997-11-19 2003-05-23 Workflow management system and computer-readable storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP31792297 1997-11-19
JP2003145741A JP2004030636A (en) 1997-11-19 2003-05-23 Workflow management system and computer-readable storage medium

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP10193881A Division JPH11213082A (en) 1997-11-19 1998-07-09 Workflow management apparatus, workflow management system, and computer-readable storage medium storing these programs

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2006103817A Division JP2006202334A (en) 1997-11-19 2006-04-05 Workflow management system and computer-readable storage medium

Publications (1)

Publication Number Publication Date
JP2004030636A true JP2004030636A (en) 2004-01-29

Family

ID=31189796

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003145741A Pending JP2004030636A (en) 1997-11-19 2003-05-23 Workflow management system and computer-readable storage medium

Country Status (1)

Country Link
JP (1) JP2004030636A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007052570A (en) * 2005-08-17 2007-03-01 Fuji Xerox Co Ltd Ordering system, information processor and control method and program for computer
JP2015061141A (en) * 2013-09-17 2015-03-30 株式会社リコー Information processing system, information acquisition device, server, program, and information processing method
CN113077139A (en) * 2021-03-30 2021-07-06 深圳市智莱科技股份有限公司 Process configuration method, device, equipment and computer readable storage medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007052570A (en) * 2005-08-17 2007-03-01 Fuji Xerox Co Ltd Ordering system, information processor and control method and program for computer
JP2015061141A (en) * 2013-09-17 2015-03-30 株式会社リコー Information processing system, information acquisition device, server, program, and information processing method
CN113077139A (en) * 2021-03-30 2021-07-06 深圳市智莱科技股份有限公司 Process configuration method, device, equipment and computer readable storage medium

Similar Documents

Publication Publication Date Title
JPH11213082A (en) Workflow management apparatus, workflow management system, and computer-readable storage medium storing these programs
US6490574B1 (en) Method and system for managing rules and events in a multi-user intelligent agent environment
US20060271653A1 (en) Computer system
JPH08101817A (en) Work flow support system
JP2003085005A (en) Computer system configuration automatic changing system
CN101568919A (en) Single view of data in a networked computer system with distributed storage
JP5687989B2 (en) Access authority management apparatus, access authority management method, and access authority management program
JP2004030636A (en) Workflow management system and computer-readable storage medium
JPH02219168A (en) Document-marking method
JPH11154189A (en) State monitoring workflow control method and system
JP5373493B2 (en) ID management program
JPH0981409A (en) Mutual hot standby system selecting system
JP2002202956A (en) Security management system, security management method, and security management program
JP2000284998A (en) Data update control system, data update control method, and computer-readable recording medium storing a program for executing the method
JP2006202334A (en) Workflow management system and computer-readable storage medium
JP2001071593A (en) Printing method, printing system and computer readable recording medium
JP2998648B2 (en) Load balancing job processing system
JPH06290098A (en) Method for processing distributed data base
JP2001216319A (en) Document management method, device for executing the method, and recording medium recording the processing program
JP2009282757A (en) Server and shared file management method
JPH11328256A (en) Estimation and sales managing method, device, recording medium recording estimation and sales management program and one chip semiconductor integrated device provided with estimation and sales managing function
JP7497230B2 (en) Computer system and cooperative control method
JP2000251004A (en) Document management method, document management device, document management system, and recording medium storing document management program
JP3801680B2 (en) Database information collection system in distributed processing system
JP6961133B1 (en) Search device, search method, and search program

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060405

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060502

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060518

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060619

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20060825