JP4247584B2 - Work process management apparatus and work process management method - Google Patents

Work process management apparatus and work process management method Download PDF

Info

Publication number
JP4247584B2
JP4247584B2 JP01449999A JP1449999A JP4247584B2 JP 4247584 B2 JP4247584 B2 JP 4247584B2 JP 01449999 A JP01449999 A JP 01449999A JP 1449999 A JP1449999 A JP 1449999A JP 4247584 B2 JP4247584 B2 JP 4247584B2
Authority
JP
Japan
Prior art keywords
activity
information
execution
procedure
unit
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.)
Expired - Fee Related
Application number
JP01449999A
Other languages
Japanese (ja)
Other versions
JP2000215242A (en
JP2000215242A5 (en
Inventor
裕一 上野
佳弘 増田
克倫 堀井
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP01449999A priority Critical patent/JP4247584B2/en
Publication of JP2000215242A publication Critical patent/JP2000215242A/en
Publication of JP2000215242A5 publication Critical patent/JP2000215242A5/en
Application granted granted Critical
Publication of JP4247584B2 publication Critical patent/JP4247584B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、複数のサーバ装置および複数のクライアント装置などの計算機システムがネットワークで結ばれたネットワーク情報システムにおいて、活動およびワークプロセス情報を分散的に管理し、また、分散的に管理されている活動およびワークプロセス情報を利用してワークフロー管理を行なうワークプロセス管理装置及びワークプロセス管理方法に関するものである。
【0002】
【従来の技術】
従来のワークフロー管理システムは、1つの仕事における一連の仕事の流れをワークプロセス定義という形に予め明確に定義しておく。そして仕事を実行するときは、そのワークプロセス定義に従って、仕事の割り当てや電子文書の受け渡しを自動的に行えるようになっている。
【0003】
しかし実際の仕事の過程では、書類の不備や、担当者の欠席など、不測の事態が頻繁に生じる。従来のワークフロー管理システムにおいて、このような仕事の過程で生じる不測の事態に対処するには、それらの不測の事態も予めワークプロセス定義に含める必要があった。そのため、事前に予測できない事態に対処するのは困難であり、また、仕事の運用中に定義を変えることができないなど、運用上の柔軟性に問題があった。
【0004】
このような問題に対処するために、ワークプロセス定義を事前に完全に定義するのではなく、部分的には未定義にしておき、仕事を実行する時点で、その未定義部を具体化することにより、運用上の柔軟性を持たせるための技術が存在する。例えばL.Nastansky,W.Hilpert ,“The GroupFlow System:A Scalable Approach to Workflow Management between Cooperation and Automation”,University of Paderborn ,1994.2に記載されているシステムは、半構造化ワークプロセス定義に基づいたシステムである。これは、
(1)仕事の手順の一部を、複数のユーザからなる協調作業の場として定義することが出来る、
(2)仕事の手順の一部を複数のユーザが担当可能にし、実行時に担当者を選択することができる、
(3)仕事の手順の一部に対し、例外的な事態に応じて部分的に修正を加えることができる、
という特徴を持っている。さらに、仕事の手順の各ステップを複数まとめて、より抽象的な1つのステップとして要約した形で表示する機能も持っている。
【0005】
また、特開平9−237292号公報に記載されているシステムは、仕事の各手順を同一詳細度で定義するのではなく、抽象的なステップを展開していく形で段階的に詳細化して予め定義できるようにしている。同様に、特開平9−245092号公報に記載されているシステムでは、部分的に定義されたワークフローをグループの形でまとめ、それらのグループの間でワークフローを定義できるようにしている。両文献とも、ワークプロセスの実行時には、まだワークプロセスの実行が及んでいない定義は修正が可能であるようにしている。
【0006】
特開平10−111888号公報,特開平10−177608号公報に記載されているシステムでは、部門間に渡るメインとなるワークプロセス定義と、部門内で切り替え可能な複数のサブのワークフローを有している。業務の性質によって実行時に部門内でのサブのワークフローを切り替えて対応することにより、様々な業務に対応することができる。
【0007】
特開平8−221475号公報,特開平8−221476号公報に記載されているシステムは、部門ごとに定義されたワークフローを、「パブリックフロー」として公開することにより、他部門からも利用可能とするものである。
【0008】
特開平8−161393号公報に記載されているシステムでは、作業を行う計算機に対して作業内容を配布することにより作業を進めるものである。このシステムでは、作業内容の変更および再配布により、ワークプロセスの実行中でもワークプロセスを変更することが可能である。
【0009】
さらに、米国特許第5,212,771号明細書に記載されているシステムでは、プロセスを定義する言語に基づいてワークプロセスを段階的にサブプロセスに分解していく形で定義するモデリング手段および定義されたプロセスの正当性を検査手段を備えている。これらの手段を用いて、予め定められた形での階層的なワークプロセスを定義することができる。
【0010】
ここまで挙げた従来の技術では、それまで予め同一の詳細度で定義しなければならなかったワークプロセス定義に対して、階層定義やグループ化定義を導入することによって、定義をより柔軟に行うことができる。また、ワークプロセスの実行中に定義を変更する場合の影響を、階層やグループに局所化することができるようになっている。そのため、ワークプロセスを構成する各ステップとして、階層やグループといった抽象的な形態を利用することができる。これによって、ワークプロセスの実行時に、各ステップの機能を達成できる形であれば、ワークプロセスの実行中に各ステップの内部の変更や候補の選択などを行いながら仕事を遂行することが可能となった。
【0011】
これらの従来の技術では、ワークプロセスの定義者が手動で局所的な変更を行うか、部門内などの事前に定義された範囲内でのみ自動的にサブワークフローの切り替えを行っている。そのため従来のシステムでは、管理単位が複数あり、異なる管理単位を越えて運用することはできなかった。このことは、従来の技術では、システム全体で見ると、各ステップの内部の変更や候補の選択の可能性が例えば別の部門に存在していても、それらが十分活用できないことを意味している。また、システムの規模が大きくなるほど、このような潜在的に利用可能なワークプロセスの活用損失が増大する。
【0012】
例えば上述の特開平8−221475号公報や特開平8−221476号公報においては、「パブリックフロー」という形で部門内のワークプロセスを部門外からも利用可能にする機構を導入し、複数の管理単位の間でも相互に運用を行えるような技術を提供している。しかし、どの部門にどんなワークプロセスが存在するか把握できず、やはり、システムの規模が大きくなると、潜在的に利用可能なワークプロセスを十分に活用できなくなってしまう。
【0013】
【発明が解決しようとする課題】
本発明は、上述した事情に鑑みてなされたもので、システム全体で統一的にワークプロセス情報の管理を行うことにより、大規模かつ多数の活動が出現、消滅する動的な環境下で利用でき、さらに、そのような環境によりもたらされるワークプロセス情報の多様性を十分に活用することで、実行時の例外的な事態に広く対応可能なワークプロセス管理装置及びワークプロセス管理方法を提供することを目的とするものである。
【0014】
【課題を解決するための手段】
本発明では、複数のサーバ装置およびクライアント装置がネットワークで結ばれたネットワーク情報システム上で構成されたワークプロセス管理装置において、活動に関する情報を記憶する活動情報記憶手段と、活動の実行制御に関わる活動実行受付手段と、活動実行制御手段と、活動実行手段と、活動手順実行制御手段を、各1以上備えている。
【0018】
活動情報記憶手段は、ワークプロセスのステップを表す単位活動情報と、ワークプロセス定義を表す活動手順定義情報とを、両情報および活動集約情報自身を活動内容の包含関係に従って組織化する活動集約情報により関係付けて管理する。またその関係付けは、活動情報が有するロケータ、活動集約情報が有するリンクロケータ、活動手順定義情報が有する活動手順ロケータという論理的な位置情報によりなされるため、ネットワークを経て分散的に管理することができる。
【0019】
活動の実行を要求するユーザは、クライアント装置を通して活動実行受付手段に対して活動の実行要求を入力する。活動実行受付手段は要求に対応する活動実行指令を生成して、これを活動実行制御手段に渡す。活動実行制御手段は、活動集約情報の包含関係に従って単位活動情報または活動手順定義情報を選択して、それらの情報を活動実行指令に実行対象として含め、それぞれ、活動実行手段、活動手順実行制御手段に渡す。活動実行手段は、活動の実行を要求するユーザと、活動の実行を担当するユーザまたは装置との間に接続を確立して活動を行わせる。また活動手順実行制御手段は、ワークプロセス定義の実行であり、ワークプロセスのステップが単位活動情報であれば、活動実行手段により活動を行わせる。またワークプロセスのステップが活動手順定義情報または活動集約情報であれば、それぞれ再び活動手順実行制御手段または活動実行手段により処理される。これらの手段により、実行時におけるワークプロセスの動的な組み換えを伴うワークプロセスを、システムが管理する大局的な規模で実行することができる。
【0020】
本発明では、上述のように、ワークプロセスに関する情報を分散管理することができるので、まず大規模なシステムにも対応することができる。さらに、その分散管理されたワークプロセスに関する情報を、その活動の内容の包含関係によって階層的に組織化して管理する形態を基盤としている。
【0021】
従来のシステムでの階層管理では、予めワークプロセス定義者が定めた固定的な展開関係にそってのみ階層管理していたが、本発明はワークプロセスの各ステップの提供する機能そのものをもとに、システムが自動的に階層管理を行う。この構成により、システムが管理する大局的な管理単位が一つとなるため、従来のシステムのようにワークプロセスの定義者が管理する範囲や部門といった局所的な管理単位間での相互運用が困難であるという問題は解消される。また、論理的には大局的な管理単位が一つであっても、物理的にはネットワーク上で分散的に管理することができるので、システムの規模が大きくなっても、ある1つの装置に負荷が集中したり、多量の記憶領域を使うという問題が発生しないように構成することができる。
【0022】
そして、ワークプロセスの実行時には、システムは階層管理しているワークプロセスを再帰下降探索し、実行時にワークフローやその各ステップを選択するという動的なワークフローの実行管理を行なう。これにより、従来のシステムのようにワークプロセスの定義者が管理する範囲や部門といった局所的な管理単位でのワークプロセスの実行時修正にとどまらず、システム全体の大局的な範囲でのワークプロセスの実行時修正が可能となる。
【0023】
本発明の構成として、さらに、活動実行制御手段が活動実行手段から告知される活動の実行状況の成否を見て、失敗時には自動的に代替活動を選択してワークプロセスの実行を維持することを特徴としている。
【0024】
また、上述のように分散して管理している活動情報を、それぞれの担当範囲内で選択する活動情報選択手段を配置し、活動実行制御手段が活動情報を選択する際に活動情報選択手段を用いるように構成することができる。これによって、活動情報記憶手段に近接して活動情報の選択処理を行なうことができ、さらに処理の分散化を図ることが可能になり、ネットワークの有効利用により処理速度を向上させることができる。
【0025】
さらに、活動情報更新手段および活動情報組織化手段を付加し、活動情報記憶手段に記憶されている単位活動情報または活動集約情報または活動手順定義情報を追加、削除、変更するとともに、各活動情報間のリンクの再構成を行うことができる。これにより、新たなワークプロセスやステップの登録、既存のワークプロセスやステップの修正や取り消し、階層的に組織化された構造の変更を行うことができる。
【0026】
さらに、活動情報クラスタリング手段および活動集約情報生成手段を付加し、既存の各活動情報を収集してそれらのクラスタリングによる類似性を検出し、クラスタリング結果をもとにして新たな活動集約情報を自動的に生成し、登録することができる。これにより、既存の各活動情報に対する新たな階層が得られ、ワークプロセス実行における自由度を向上させることができる。
【0027】
さらに、共起活動検出手段および活動手順定義情報生成手段を付加し、ユーザの要求により生成された活動実行指令を収集し、それらに含まれる活動内容で共起関係にある活動内容を検出し、この情報をもとに、新たな活動手順定義情報を生成、登録することができる。これにより、異種の活動でもセットにして行ってほしいという活動利用者の間の潜在的なニーズを、活動手順定義情報という形で取り出し、再利用可能な状態にすることができる。
【0028】
さらに、活動情報記憶手段に活動情報および活動情報間に対する許可/不許可の条件を表す連携情報をさらに記憶させることができる。これによって、ワークプロセスの実行時に、自動的に選択されるステップを制約することができ、業務の受渡しが約束されている正規の連携のみを利用できるようになる。
【0029】
さらに、活動情報記憶手段に活動情報の開示の許可/不許可の条件を表す開示情報をさらに記憶させることができる。これによって、ワークプロセスの実行を依頼したユーザに対して、実行状況を部分的に非開示扱いにすることができ、異なる会社や異なる部門をまたがってワークプロセスの連携を行うような場合に、各会社や部門内部で秘密にしておきたい業務内容を秘匿できるようになる。
【0030】
【発明の実施の形態】
図1は、本発明のワークプロセス管理装置の第1の実施の形態を含むシステム構成図である。図中、1はネットワーク、11,12はクライアント装置、21〜28はサーバ装置、31〜40は通信部、41,71は活動実行受付部、42,72は活動実行制御部、43,73は活動手順実行制御部、51,74は活動実行部、52,53は活動情報選択部、61,81は活動情報記憶部、62,82は活動情報更新部、63,83は活動情報組織化部である。なお、図1に示したシステム構成では、サーバ装置およびクライアント装置を複数備えたネットワーク情報システムにおいて、複数のサーバ装置に渡って本発明のワークプロセス管理装置の各構成要素を分散配置した形態の分散処理システムとして構成した例を示している。
【0031】
図1に示したシステムでは、ネットワーク1に複数のサーバ装置21〜28,…およびクライアント装置11,12,…が接続されている。サーバ装置21は何らかの活動を行う装置であるものとする。サーバ装置22〜28は、本発明のワークプロセス管理装置の第1の実施の形態における構成要素を分散して備えた装置である。各クライアント装置11,12,…および各サーバ装置21〜28,…は、それぞれ通信部31〜40,…を備え、この通信部31〜40,…を用いてネットワーク1を介した協調動作を行なうことができる。特に、この例では、各サーバ装置22〜28に配置された本発明のワークプロセス管理装置の第1の実施の形態における構成要素も、通信部34〜40によりネットワーク1を介して連携動作を行なう構成になっている。もちろん、単一のサーバ装置に本発明のワークプロセス管理装置の第1の実施の形態における構成要素を集中的に配置し、通信部34〜40を用いることなく連携を行わせる構成をとってもかまわない。また、本発明のワークプロセス管理装置の第1の実施の形態における構成要素を分散させる際にいずれの構成要素をどのサーバ装置に分散させるか、および、各構成要素の数なども任意である。さらに、ネットワーク1に接続されている装置も、図1に示した構成に限られるものではなく、さらに多くのネットワーク機器が接続されていてよい。
【0032】
サーバ装置25,28は、それぞれ、通信部37,40を有するとともに、活動情報記憶部61,81、活動情報更新部62,82、活動情報組織化部63,83を有している。活動情報記憶部61,81は、ワークプロセスのステップを表す単位活動情報と、ワークプロセス定義を表す活動手順定義情報とを、活動内容の包含関係に従って組織化する活動集約情報により関係付けて管理する。以下の説明では、単位活動情報と活動手順定義情報と活動集約情報をまとめて活動情報と呼ぶことがある。各情報については後述する。活動情報更新部62,82は、クライアント装置11,12から送られてくる要求に従って、活動情報を活動情報記憶部61,81上で追加、削除、変更する。また、活動情報組織化部63,83は、活動情報更新部62,82が活動情報記憶部61,81上の活動情報を追加、削除、変更した場合に、全ての活動情報記憶部61および81に記憶されているどの単位活動情報および活動手順定義情報も少なくとも1以上の活動集約情報からロケータにより指示され、なおかつ、どの活動集約情報に含まれている活動内容記述子も、当該活動集約情報に含まれているロケータが指示している活動情報に含まれている活動内容記述子が表す活動の内容を包含する活動の内容を表すように、活動集約情報間のロケータを再構成する。なおこの明細書では、ある活動内容が別の活動内容を包含すると表現した場合、両者が一致する場合も含んでいる。
【0033】
サーバ装置22は、通信部34とともに、活動実行受付部41、活動実行制御部42、活動手順実行制御部43を有している。同様に、サーバ装置27は、通信部39と、活動実行受付部71、活動実行制御部72、活動手順実行制御部73を有しているとともに、活動実行部74を有している。活動実行受付部41,71は、通信部34,39を介してクライアント装置11や12から送られてくる活動の実行要求を受け付け、その実行要求に対応する活動実行指令を生成して、活動実行制御部42,72に入力する。活動実行制御部42,72は、活動実行指令を受け取り、組織化された活動集約情報の包含関係に従って単位活動情報または活動手順定義情報などの活動情報を選択し、選択した活動情報を活動実行指令に実行対象として含める。活動情報の選択の際には、活動情報選択部52,53を利用することができる。そして、選択した活動情報が単位活動情報なら、その活動実行指令を活動実行部51や活動実行部74に渡す。また、選択した活動情報が活動手順定義情報であれば、その活動実行指令を活動手順実行制御部43,73に渡す。活動手順実行制御部43,73は、ワークプロセスのステップが単位活動情報であれば、活動実行部51,74に活動を行わせ、また活動手順定義情報または活動集約情報であれば、それぞれ活動手順実行制御部43,73または活動実行制御部42,72により処理を行わせて、ワークプロセス定義を実行する。活動実行部74は、活動実行指令を受け取り、活動の実行を要求するユーザと活動の実行を担当するユーザまたは装置との間に接続を確立して、活動を行わせる。
【0034】
サーバ装置23は、通信部35とともに活動実行部51を有している。活動実行部51は、ネットワーク1を介して他のサーバ装置から送られてくる活動実行指令を受け取り、上述の活動実行部74と同様の動作を行う。
【0035】
サーバ装置24,26は、通信部36,38とともに、活動情報選択部52,53を有している。活動情報選択部52,53は、例えば活動実行制御部42,72や、他の活動情報選択部などから送られてくる活動情報選択指令を受け付け、担当範囲の活動情報記憶部について、組織化された活動集約情報の包含関係に従って単位活動情報または活動手順定義情報などの活動情報を選択し、選択した活動情報を返す。活動情報の選択時に、担当範囲外の活動情報記憶部に記憶されている単位活動情報または活動集約情報または活動手順定義情報が包含されている場合には、対応する活動情報記憶部を担当範囲とする活動情報選択部に対して、当該活動情報選択指令を渡す。活動情報選択部52,53は、このようにして協働して活動情報の選択を行う。
【0036】
図2は、本発明のワークプロセス管理装置における単位活動情報、活動集約情報、活動手順定義情報のデータ構造の一例の説明図である。101〜107は単位活動情報、111〜116は活動集約情報、121,122は活動手順定義情報である。各活動情報(単位活動情報、活動集約情報、活動手順定義情報)は「活動内容記述子」と、「ロケータ」による他の活動情報へのリンクを持っている。図2に示す各活動情報が持つ「ロケータ」によるリンクは、他の活動情報を指し示す論理的なリンクである。リンクは、ネットワーク上で各活動情報を指し示すことができればどのようなものを用いてもよい。例えば、各活動情報が位置するホスト名と、そのホスト上のリソースの位置を示すパス名の組合せなどを用いることができる。このようなリンクの例としては、例えばワールドワイドウェブ(World Wide Web)で用いられているURLなどがある。
【0037】
各活動情報が持つ「活動内容記述子」は、それぞれの活動情報が表す活動の内容を示す記述であり、機械処理可能な何らかの活動記述言語を用いることができる。このような活動記述言語の例としては、例えばMITにより開発されているPIFなどがある。
【0038】
各活動集約情報111〜116は、単位活動情報および活動手順定義情報を、その活動内容の包含関係に従って組織化し、階層構造を形成している。例えば活動集約情報111は、ロケータで示されている活動集約情報113,114,115等を下位の階層として有し、これらの活動集約情報113,114,115をまとめた上位の活動内容を含んでいる。同様に、活動集約情報113は、ロケータで示されている単位活動情報101,102と、活動集約情報116、活動手順定義情報121等を下位の階層として有している。
【0039】
このように各活動集約情報111〜116は、単位活動情報および活動手順定義情報の活動内容の包含関係を示している。そのため、各活動集約情報111〜116が持つ活動内容記述子は、その活動集約情報がロケータによりリンクしている他の活動情報の(活動内容記述子により表されている)活動内容を包含する活動内容が記述されている。例えば、活動集約情報113の活動内容記述子には、単位活動情報101、単位活動情報102、活動手順定義情報121、活動集約情報116の活動内容を包含する活動内容が記述されている。
【0040】
各単位活動情報101〜107は、ロケータによるリンクを1つ持ち、このリンクは、ネットワーク1上のクライアント装置ないしはサーバ装置のいずれかを示している。このリンクにより示されたクライアント装置には、対応する単位活動情報の持つ活動内容記述子に表された活動を行なう作業者がおり、後述する動作に従ってこの作業者は仕事を受け取り、作業を行なうことになる。また、リンクがサーバ装置を示している場合は、作業者はおらず、サーバ装置が自動で何らかの作業を行なうことになる。
【0041】
各活動手順定義情報121,122は、活動内容記述子と、ロケータにより指示される論理的なリンクのほかに、活動手順記述子を持つ。活動手順記述子は、論理的にリンクしている他の活動情報間でのワークプロセス定義を含んでいる。
【0042】
図3、図4は、本発明のワークプロセス管理装置における活動集約情報の階層構造とサーバ装置への配置の一例の説明図である。各活動情報(単位活動情報、活動集約情報、活動手順定義情報)はネットワーク1上の複数の活動情報記憶部に分散的に配置されてよい。図3および図4では、活動情報記憶部が3つある場合の各活動情報の配置例である。ここでは、サーバ装置(甲)、サーバ装置(乙)、サーバ装置(丙)がそれぞれ活動情報記憶部を有しているときの、各活動情報の物理的な配置と論理的なリンク形態の一例を示している。図3に示すように、各活動情報の論理的なリンクの階層構造と物理的な配置を対応させ、特定の階層を特定のサーバ装置に割り当ててもよい。あるいは図4に示すように、論理的なリンクの階層構造と物理的な配置を全く無関係に扱っても構わない。
【0043】
次に、本発明のワークプロセス管理装置の第1の実施の形態における動作の一例について説明する。なお、以下の説明では活動情報記憶部61,81に活動情報がすでに登録されているものとする。
【0044】
活動実行受付部41,71は、通信部34,39を介して、クライアント装置11やクライアント装置12から、ワークプロセスを利用したいユーザによるワークプロセスの実行要求を受け付ける。この要求には、当該ユーザの求める活動を記した活動内容記述子が含まれている。活動実行受付部41,71は、実行要求に含まれている活動内容記述子と、当該クライアント装置を指示する活動実行指令発行元ロケータとを使い、活動実行指令を生成して活動実行制御部42,72に入力する。図5は、本発明のワークプロセス管理装置における活動実行指令のデータ構造の一例の説明図である。図5に示すように、活動実行指令は、指令発行元ロケータと、実行活動情報から構成されている。指令発行元ロケータは、この活動実行指令を発行する発行元を指し示す論理的なリンクであり、図2に示す活動情報におけるロケータと同様の情報である。実行活動情報は、実行すべき内容が含まれ、例えばユーザが求める活動を記した活動内容記述子のほか、活動内容記述子を含む単位活動情報、活動手順定義情報などを含めることができる。
【0045】
活動実行制御部42,72は、活動実行指令が入力されると、入力された活動実行指令に含まれている活動内容記述子をもとに、活動情報選択部52,53を用いて適切な活動を選択する。さらに、単位活動情報または活動手順定義情報に到達するまでロケータを辿って活動情報間のリンクを下降することにより、実行すべき単位活動情報または活動手順定義情報を具体的に選択する。
【0046】
図6は、本発明のワークプロセス管理装置の第1の実施の形態における活動実行制御部の動作の一例の概略を示すPAD図である。S201において、異常終了した活動情報のリストFを空にしておく。S202において、活動実行指令を受け付け、これを変数rに格納する。S203において、変数rに格納した活動実行指令内の活動内容記述子に適する活動内容記述子を持つ活動情報を選択して、選択した活動情報を変数aに格納する。この活動情報の選択には、この活動実行制御部で行ってもよいし、大規模なシステムでは例えば活動選択部52,53を用いて行うことができる。
【0047】
S204において、S203で選択された活動情報からロケータによるリンクを辿って到達できるすべての単位活動情報および活動手順定義情報を取得し、リストTに格納する。S205において、このリストTに格納されている単位活動情報および活動手順定義情報について、S206〜S215における活動の実行処理を行う。なお、到達可能な単位活動情報または活動手順定義情報がない場合にはS216に進み、変数rに格納されている活動実行指令の指令発行元ロケータの指す指令発行元に対して異常終了を通知する。
【0048】
S206において、リストTから単位活動情報または活動手順定義情報を1つ選択し、変数a’に格納する。この単位活動情報または活動手順定義情報の選択は、例えばユーザとの対話、ないしは、活動実行制御部42,72が予め定めた優先順序により、選択する単位活動情報または活動手順定義情報を決定する。図7は、ユーザとの対話による単位活動情報または活動手順定義情報の選択方法の一例の概念図である。いま、太い矢印で示した活動集約情報Aに対応する活動実行指令を受け付けたものとし、この活動集約情報Aからロケータによるリンクを辿ることで、ハッチングを施した活動単位情報B,Fおよび活動手順定義情報C,Eが取得されたものとする。このとき、取得された活動単位情報B,Fおよび活動手順定義情報C,Eの内容をユーザ・インタフェースに表示する。表示すべきクライアント装置は、変数rに格納されている活動実行指令中の指令発行元ロケータによって知ることができる。作業を依頼するユーザは、このユーザ・インターフェース画面を通して、実際に作業を依頼する活動情報を選択することができる。
【0049】
図8は、活動実行制御部が定めた優先順序による単位活動情報または活動手順定義情報の選択方法の一例の概念図である。図7と同様に、太い矢印で示した活動集約情報Aに対応する活動実行指令を受け付けたものとし、この活動集約情報Aからロケータによるリンクを辿ることで、ハッチングを施した活動単位情報B,Fおよび活動手順定義情報C,Eが取得されたものとする。ここでは、各活動単位情報および活動手順定義情報に対して、作業を依頼するユーザ毎に優先度を設定している。優先度は、例えば利用実績や重要度等、各種の情報から設定すればよい。活動実行制御部42,72は、取得された活動単位情報B,Fおよび活動手順定義情報C,Eの優先度を参照し、優先度の最も高いものを自動的に選択することができる。
【0050】
このようにして、単位活動情報または活動手順定義情報が一つ選択されると、図6のS207において、S206で選択して変数a’に格納した単位活動情報または活動手順定義情報を、S202で受け付けた活動実行指令(変数r)の実行活動情報として設定する。この活動実行指令を変数r’に格納する。
【0051】
S208において、変数a’に単位活動情報が格納されているのか、または活動手順定義情報が格納されいるのかを判断する。変数a’に単位活動情報が格納されている場合には、S209において、変数r’に格納されている活動実行指令を活動実行部51や活動実行部74に受け渡す。また、変数a’に活動手順定義情報が格納されている場合には、S210において、変数r’に格納されている活動実行指令を活動手順実行制御部43や活動手順実行制御部73に受け渡す。これらの活動実行指令の受け渡しの際に、その活動実行指令がこの処理を行っている活動実行制御部からのものである旨の情報も渡す。
【0052】
S209において活動実行指令を受け渡した活動実行部51または活動実行部74、あるいは、S210において活動実行指令受け渡した活動手順実行制御部43または活動手順実行制御部73から、実行結果を受け取る。S211において、受け取った実行結果を参照し、正常終了したか否かを判定する。正常終了した場合には、S212において、変数rに格納されている活動実行指令中の指令発行元ロケータが指す活動実行指令の発行元に対して、正常終了を通知する。そして、この活動実行制御の処理を終了する。
【0053】
受け取った実行結果が異常終了であった場合には、S213において、変数a’に格納されている異常終了した単位活動情報または活動手順定義情報を、異常終了した活動情報のリストFに追加する。そしてS214において、S204と同様にS203で選択された活動情報(変数a)からロケータによるリンクを辿って到達できるすべての単位活動情報および活動手順定義情報を取得してリストTを再構成し、S215においてリストTから異常終了した活動情報のリストFの内容を除去する。リストTが空でなければ、S206に戻って異常終了していない他の活動情報が選択され、その活動情報に対して活動実行指令を渡し、活動情報の切り替えを試みる。
【0054】
すべての切り替え候補がなくなった場合、すなわちリストTに異常終了していない他の活動情報が残らなくなった場合には、S216において、変数rに格納されている活動実行指令中の指令発行元ロケータで示される活動実行指令の発行元に対して異常終了を通知する。
【0055】
なお、活動実行部,活動手順実行制御部は、活動実行制御部のある装置と同一の装置にあっても、通信部を介して別々の装置にあってもかまわない。図1に示した例では、活動実行部51が活動実行制御部42,72の存在する装置とは別の装置にあり、それ以外は同一の装置に存在する例を示している。
【0056】
活動の実行時に必要なのは、ワークプロセスを利用したいユーザの使うクライアント装置と、活動を提供するユーザの使うクライアント装置、ないしは、自動的な活動を提供するサーバ装置との間の通信だけである。上述の構成のように、活動実行部を活動実行制御部や活動手順実行制御部と別の装置に分離することは、ネットワーク1への負荷の集中を分散させる上で効果がある。
【0057】
上述のようにして活動実行制御部42,72から活動実行指令を受け渡された活動実行部51あるいは活動実行部74は、活動実行指令中の指令発行元ロケータで示されるクライアント装置の情報と、単位活動情報中のロケータで示されるサーバ装置またはクライアント装置の情報を用いて、両装置の間に通信の接続を確立する。これにより、ワークプロセスの実行を要求したユーザと、単位活動情報が示すサーバ装置の自動処理または、クライアント装置の作業者との間が通信によって接続され、作業の依頼やその結果の受け取りを行なうことができるようになる。この活動の結果は、活動実行指令の発行元に通知される。
【0058】
図9は、活動の実行の一例を示す概念図である。この例では、図1に示す構成の一部と、活動情報の構造の一例の一部を示している。具体例として作業依頼ユーザがクライアント装置11から活動実行指令を発したものとしている(▲1▼)。この活動実行指令は、例えばサーバ装置22に存在する活動実行受付部41で受け付けられて、活動実行制御部42において図6に示すような活動実行制御が行われる。例えば作業依頼ユーザから依頼された実行活動内容が活動集約情報Aに対応するものであるとき、ハッチングを施した活動単位情報B,Fおよび活動手順定義情報C,Eが取得され、その中から活動単位情報Bが選択されたとする(▲2▼)。上述のように、この選択は作業依頼ユーザがクライアント装置11から行ってもよいし、活動実行制御部42が優先順位に従って選択してもよい。なお、ここでは活動単位情報Bのロケータはクライアント装置12を指し示しているものとする。
【0059】
活動事項制御部42は、選択された活動単位情報Bを実行活動情報とする活動実行指令を活動実行部に受け渡す。ここでは活動実行制御部42は、活動単位情報Bを実行活動情報として含む活動実行指令を活動実行部51に受け渡している(▲3▼)。
【0060】
活動実行部51は、受け渡された活動実行指令中の指令発行元ロケータで示されるクライアント装置11と、単位活動情報Bのロケータで示されるクライアント装置12との間に通信の接続を確立する(▲4▼,▲5▼)。これにより、ワークプロセスの実行を要求した作業依頼ユーザと、単位活動情報Bが示すクライアント装置12の作業実行担当ユーザとの間が通信によって接続され、作業の依頼やその結果の受け取りなどの活動を実行する(▲6▼)。この活動の結果(正常終了または異常終了)は、活動実行指令の発行元である活動実行制御部42に通知される。
【0061】
活動手順実行制御部43,73は、複数の活動情報がワークプロセスに従って連携されたものであり、通常のワークプロセス実行エンジンにより実行することができる。図10は、活動手順定義情報によるワークプロセス表現の一例の説明図である。図10に示すように、活動手順定義情報はロケータによってリンクしている活動情報をワークプロセスの各ステップとした、ワークプロセス定義を作業手順記述として持っている。このワークプロセス定義によって、各活動情報を順次実行させてゆくことができる。例えば図10に示した例では、活動手順定義情報Cは、ロケータにより活動単位情報U,X、活動集約情報V,Wとリンクしている。また、その作業手順記述には、活動単位情報Uの活動内容を実行後、活動集約情報Vおよび活動集約情報Wの活動内容を実行し、これらの実行後に活動単位情報Xの活動内容を実行するワークプロセス定義が記されており、このワークプロセス定義に従って各活動内容が実行される。このワークプロセスの実行結果は、活動実行指令の発行元に通知される。
【0062】
活動手順定義情報は、各ステップにおいて、単位活動情報を実行したり、あるいは他の活動手順定義情報をサブプロセスとして実行することができる。活動手順定義情報は、単位活動情報および活動手順定義情報のほかに、活動集約情報をとることができる。例えば図10に示した例では、活動集約情報V,Wの活動内容をそれぞれ1つのステップとしている。活動集約情報に実行が及ぶ場合には、活動手順実行制御部は、当該活動集約情報を実行活動情報とし、指令発行元ロケータがこの処理を行っている活動手順実行制御部を指し示す、新たな活動実行指令を生成し、再び活動実行制御部42または活動実行制御部72に渡す処理を行なう。この処理により、活動集約情報の形で定義されているステップは、再帰的に具体的な活動へ詳細化される。また、異常終了時にはこの再帰的な処理がバックトラックされる。これらの処理によって、ステップやワークプロセスを動的に切り替えながら実行を行なうことができる。
【0063】
例えば図10に示した例では、活動集約情報Vの活動内容を実行するステップでは、実行時に活動手順定義情報V1の活動内容か、活動単位情報V2の活動内容に詳細化される。また、活動集約情報Wの活動内容を実行するステップでは、実行時に活動単位情報W1の活動内容か、活動単位情報W2の活動内容に詳細化される。なお、活動集約情報Vが活動手順定義情報V1に詳細化されたときは、活動手順定義情報V1は再びワークプロセス定義を含むため、活動集約情報Vの活動内容を実行するステップは、活動手順定義情報V1に含まれるワークプロセス定義のプロセスが、新たなワークプロセスとして動的に生成されて実行が行なわれる。
【0064】
活動手順定義情報V1で定義されているワークプロセスが実行途中で異常終了した場合には、活動単位情報V2が代替の活動情報として選択され、実行される。活動単位情報V2の実行も異常終了した場合には、活動手順定義情報Cが異常終了し、活動集約情報Aの下にある他の活動情報について実行が試みられる。
【0065】
このような動的実行制御により、ワークプロセス実行時において実際に利用可能な活動が選択されて利用されることになる。これによって、各プロセスは正常終了することが多くなり、障害に対する耐性を向上させることができる。また、システムの規模が大きくなるほど、すなわち活動情報記憶部に記憶されている活動情報の数が増える程、切り替え可能な活動情報の候補が増すため、障害に対する耐性も向上する。なお、ある活動情報の実行が異常終了により失敗した場合に、例えば所定時間経過後に再試行してもよい。この場合、所定回数の再試行後、代替の活動情報に切り換えるとよい。
【0066】
次に、活動情報選択部52,53における活動情報の選択動作について説明する。活動情報選択部52,53は、例えば図6に示した処理においては、S203において活動情報を選択する際に利用することができる。活動情報選択部52,53を利用する際には、活動実行制御部42,72は、活動情報選択部52または活動情報選択部53に対して、活動内容記述子と指令発行元ロケータとを含む活動情報選択指令を渡す。活動情報選択部52,53は、活動情報選択指令を受け取ると、当該活動情報選択指令に含まれる活動内容記述子に適する活動内容記述子を保持している単位活動情報または活動集約情報または活動手順定義情報を、前記活動情報記憶部61,81に記憶されている活動集約情報の間の論理的なリンクを辿ることにより選択し、得られた活動情報を指令発信元に返す。論理的なリンクを辿る処理は、単一の活動情報選択部が行ってもかまわないし、複数の活動情報選択部が協調的に動作してもかまわない。ここでは活動情報選択部52,53が協調的に動作するものとする。例えば図1に示した例において、活動情報選択部52は活動情報記憶部61を担当範囲とし、活動情報選択部53は活動情報記憶部81を担当範囲とする。各活動情報選択部52,53が処理の過程で論理的なリンクを辿る際に、担当範囲を越える場合には、越えた先を担当する別の活動情選択部53,52に処理を伝達する。なお、各活動情報選択部52,53と、その担当範囲である各活動情報記憶部61,81は、ネットワーク1を介して分離されているが、それぞれの通信部36〜38,40を介してアクセスすることができるようになっている。
【0067】
図11は、本発明のワークプロセス管理装置における活動情報選択指令のデータ構造の一例の説明図である。上述のように、活動情報選択指令は、選択すべき活動情報の活動内容が記述された活動内容記述子と、この活動情報選択指令を発効した指令発行元ロケータを少なくとも有している。それとともに、選択候補となる活動情報が格納される注視活動情報と、既に調べた活動情報を示す到達活動情報も含むことができる。最終的に活動実行制御部42,72には活動情報選択指令が返され、その中の注視活動情報が選択すべき活動情報となる。なお、活動情報選択指令に適合する、選択すべき活動情報とは、活動情報選択指令の活動内容記述子が表す活動内容を包含する活動内容を表す活動内容記述子を持つ活動情報の中で、活動集約情報の間のリンクの末端に最も近いものであるとする。
【0068】
図12は、本発明のワークプロセス管理装置の第1の実施の形態における活動情報選択部の動作の一例を示すPAD図である。S221において、各活動情報選択部52,53は、活動情報選択指令を受け取り、受け取った活動情報選択指令を変数rに格納する。S222において、受け取った活動情報選択指令の中の注視活動情報が空であるか否かを判定する。例えば活動実行制御部42,72から活動情報選択指令を受け取った時点では、この注視活動情報は空である。その場合には、S223において、探索のための初期化を行う。この例では、活動情報の選択処理の起点を、全ての活動情報のルートとし、このルートに当たる活動情報を保持する活動情報記憶部を担当範囲とする活動情報選択部から選択処理を開始するものとする。そのためS223では、変数rに格納されている活動情報選択指令中の注視活動情報に、ルートに当たる活動情報を設定する。さらにS224において、ルートに当たる活動情報を含む活動情報記憶部を担当範囲とする活動情報選択部への参照(リンク)を変数fに格納する。S225において、その変数fに格納されたリンクに対して、すなわち、ルートに当たる活動情報を含む活動情報記憶部を担当範囲とする活動情報選択部に対して、変数rに格納されている活動情報選択指令を送信し、処理を終了する。この先の処理は、活動情報選択指令を受け取った活動情報選択部が行う。この活動情報選択指令を受け取る活動情報選択部は、送信元と同じであってよい。
【0069】
受け取った活動情報選択指令中の注視活動情報が空でなければ、以下の処理によって、下位の活動情報についての探索を行う。S226において、変数rに格納されている受け取った活動情報選択指令から注視活動情報を取り出し、変数tに格納する。S227において、取り出した注視活動情報(変数t)が担当範囲に存在するか否かを判定する。担当範囲に存在しない場合には、S228において、変数tに格納した注視活動情報を担当範囲とする活動情報選択部への参照(リンク)を変数fに格納する。そしてS229において、変数fに格納されたリンク、すなわち注視活動情報(変数t)を担当範囲とする活動情報選択部に対して、変数r内の活動情報選択指令を送信して処理を終了する。
【0070】
受け取った活動情報選択指令の注視活動情報(変数t)が担当範囲に存在する場合には、S230において、その注視活動情報(変数t)の活動内容記述子に記述されている活動内容が、活動情報選択指令(変数r)の活動内容記述子に記載されている活動内容に包含されるか否かを判定する。上述のように、活動情報のルートから探索を開始しているので、注視活動情報の活動内容が、活動情報選択指令の活動内容を包含する状態が続く。そして、後述するようにして順に下位の階層に詳細化されるにつれて、活動内容が狭まり、やがて注視活動情報の活動内容が、活動情報選択指令の活動内容に包含されるようになる。このときの注視活動情報は、活動情報選択指令の活動内容よりも活動内容が狭くなる状態に達したので、それ以上の詳細化は打ち切る必要がある。選択すべき活動情報は、このとき注視活動情報となっている活動情報より一つ上の階層にある活動情報であり、当該活動情報は、後述するS235の処理によって、活動情報選択指令の到達活動情報の末尾に格納されている。この場合、S231において、変数rに格納されている活動情報選択指令中の指令発行元ロケータが指す指令発行元(活動実行制御部)に対して、変数rに格納されている活動情報選択指令を送信して処理を終了する。
【0071】
注視活動情報(変数t)の活動内容が、活動情報選択指令(変数r)の活動内容に包含されない場合には、さらに下位の活動情報の探索を行う。S232において、変数tに格納されている活動情報(注視活動情報)のロケータでリンクされている先の活動情報から、変数rに格納されている活動情報選択指令の活動内容記述子に記述されている活動内容を包含する活動内容の活動内容記述子を持つ活動情報をすべて取り出す。そして、取り出した活動情報をリストTに格納する。
【0072】
S233において、リストTが空か否かを判定する。リストTが空であることは、活動情報の構造の末端まで到達したことを示している。あるいは、活動情報選択指令の活動内容が下位のすべての活動情報の活動内容を包含する場合であるが、この場合は活動情報選択指令の活動内容が注視活動情報の活動内容を包含していることを示し、基本的にはS230においてS231の処理を行っている。リストTが空の場合には、S234において、変数rに格納されている活動情報選択指令中の指令発行元ロケータが指す指令発行元(活動実行制御部)に対して、変数rに格納されている活動情報選択指令を送信して処理を終了する。
【0073】
リストTが空でなければ、この活動情報よりも下位の活動情報中に選択すべき活動情報が存在することを示す。S235において、変数rに格納されている活動情報選択指令の到達活動情報の末尾に、変数tに格納されている活動情報(注視活動情報)を追加する。そして、S236において、リストTの要素の数だけ、到達活動情報追加後の活動情報選択指令を複製し、リストTの各要素を複製したそれぞれの活動情報選択指令の注視活動情報に設定して、新たな活動情報選択指令を生成する。このようにして生成された活動情報選択指令を、再び活動情報選択部に入力し、再帰的に活動情報選択部の処理を行う。
【0074】
新たに生成された活動情報選択指令を受け取った活動情報選択部は、上述の処理を行い、その活動情報選択指令中の注視活動情報に対する判定と、それより下位の活動情報についての判定を行うことになる。もちろん、担当範囲外の活動情報については、その活動情報を担当する活動情報選択部に処理を依頼する。このようにして、階層的に構成された活動情報を分散的な処理によって探索し、指示された活動内容に適する活動内容記述子の記述を有する、選択すべき活動情報を返すことができる。
【0075】
なお、図12に示した処理は、活動情報選択指令に適合する活動情報が見つかった場合(S231)、ないしは、リンクを末端まで辿っても見つからなかった場合(S234)に、当該活動情報選択指令の発行元に結果を通知することで終了する。この処理の結果、活動情報選択指令が要求発行元に返された時点で、注視活動情報の保持する活動内容が、活動情報選択指令の(活動内容記述子の表す)活動内容に包含されるものである場合には、到達活動情報の末尾にある活動情報が選択される活動情報である。そうでない場合は、選択に失敗している。
【0076】
活動実行制御部42,72は、このようにして活動情報選択部52,53における活動情報の選択処理によって選択された活動情報を用い、図6に示した処理を行うことになる。
【0077】
上述の動作の説明では、活動情報が活動情報記憶部61,81に記憶された状態での動作を示している。活動情報記憶部61,81に記憶されている活動情報は追加、削除、変更が可能であり、任意の時点で活動情報の追加、削除、変更を行うことによってワークプロセスを任意に追加、削除、変更することが可能である。以下、ワークプロセスの追加、削除、変更処理について説明する。
【0078】
図13は、本発明のワークプロセス管理装置の第1の実施の形態における活動情報更新部における動作の一例を示すPAD図である。活動情報更新部62,82は、通信部37,40を介してクライアント装置11または12と通信し、S241において、活動情報を受け付けて変数rに格納し、また、S242において、その活動情報に対する操作を受け付けて変数oに格納する。S243において、受け付けた操作(変数o)を判定し、活動情報の追加である場合には、S244において、変数rに格納されている活動情報を活動情報記憶部に格納する。また、受け付けた操作が活動情報の削除である場合には、S245において、活動情報記憶部から変数rに格納されている活動情報を削除する。このような活動情報の追加、削除の処理は、活動情報更新部を備えたサーバ装置内の活動情報記憶部、あるいは別のサーバ装置内の対応する活動情報記憶部に対して行われ、その更新処理が反映される。
【0079】
そして、活動情報更新部62,82は、活動情報記憶部61,81に活動情報の更新を反映させた後、S246において、活動情報組織化部63,83に対して、変数rに格納されている活動情報と変数oに格納されている操作を伝える。
【0080】
活動情報組織化部63,83は、活動情報更新部62,82が活動情報を更新した際に、その更新された活動情報に関わるリンクを張り直す処理を行なう。この処理により、更新された活動情報に対する適切な再組織化が行われる。
【0081】
図14は、本発明のワークプロセス管理装置の第1の実施の形態における活動情報組織化部の動作の一例を示すPAD図である。まず、S251およびS252において、活動情報およびその活動情報に対する操作を受け付ける。そして、活動情報に対する操作が追加である場合には、S254において、受け付けた活動情報の活動内容に適する活動内容を持つ活動情報をすべて選択し、選択した活動情報をリストUに格納する。この活動情報の選択には、活動情報選択部52,53を利用することができる。
【0082】
そして、リストUに格納された各活動情報に対して、S256〜S258の処理を行う。まずS256において、選択された活動情報のリンク先の有無を判定し、リンク先があれば、S257で変数rに格納されている活動情報のロケータに、選択された活動情報が有するロケータを追加する。さらに、選択された活動情報のロケータを、変数rに格納されている活動情報を指し示すように変更する。これによって、追加する活動情報を、その活動内容の包含関係に従って挿入することができる。
【0083】
活動情報に対する操作が削除である場合には、S259において、受け付けた活動情報をリンク先とする活動情報をすべて選択し、選択した活動情報をリストUに格納する。そして、リストUに格納された各活動情報に対して、S261〜S263の処理を行う。まずS261において、変数rに格納されている活動情報のロケータによってリンクされている活動情報が存在するか否かを判定する。リンクされている活動情報が存在する場合には、S262において、選択された活動情報のロケータを、変数rに格納されている活動情報のロケータに変更し、変数rに格納されている活動情報がリンク先とならないように変更する。
【0084】
また、変数rに格納されている活動情報のロケータによってリンクされている活動情報が存在しない場合には、S263において、選択された活動情報のロケータを削除し、変数rに格納されている活動情報がリンク先とならないように変更する。
【0085】
図15は、活動集約情報を追加する場合の組織化処理の具体例の説明図である。いま、図15(A)に示すように活動情報がその活動内容に従って組織化されているものとする。各活動情報の活動内容を活動内容1ないし活動内容6としている。ここで、活動内容7を有する活動集約情報Cを追加する場合を考える。活動内容の包含関係は、活動内容7が活動内容5,6を含み、活動内容1が活動内容7を含む関係にあるとする。
【0086】
まず、追加される活動集約情報Cの活動内容記述子が表す活動情報7を包含する、活動内容1を表す活動内容記述子を持つ活動集約情報Aを選択する。このとき、追加する活動集約情報Cのロケータとして、活動集約情報Aのロケータによってリンクされている単位活動情報Bおよび単位活動情報Cへのリンクを追加する。さらに、活動集約情報Aのロケータのうち、単位活動情報Bおよび単位活動情報Cへのリンクを、追加する活動集約情報Cへのリンクに変更する。これによって、図15(B)に示すように組織化される。
【0087】
図16は、単位活動情報を追加する場合の組織化処理の具体例の説明図である。いま、図16(A)に示すように活動情報がその活動内容に従って組織化されているものとする。各活動情報の活動内容を活動内容1ないし活動内容6としている。ここで、活動内容7を有する単位活動情報Cを追加する場合を考える。活動内容の包含関係は、活動内容7が活動内容3に包含される関係にあるとする。
【0088】
まず、追加される単位活動情報Cの活動内容記述子が表す活動情報7を包含する、活動内容3を表す活動内容記述子を持つ活動集約情報Cを選択する。そして、活動集約情報Cのロケータに、追加する単位活動情報Cを指し示すリンクを追加する。単位活動情報の場合、その下位には活動情報がリンクされないので、活動集約情報Cに対する単位活動情報Cへのリンクの追加のみで処理は終了する。これによって、図16(B)に示すように組織化される。なお、活動手順定義情報の追加の場合も同様である。
【0089】
図17は、活動集約情報を削除する場合の組織化処理の具体例の説明図である。いま、図17(A)に示すように活動情報がその活動内容に従って組織化されているものとする。ここで、活動集約情報Cを削除する場合を考える。まず、削除する活動集約情報Cをリンク先としている活動情報を選択する。この例では活動集約情報Aが活動集約情報Cをリンク先としている。この場合、活動集約情報Aの活動集約情報Cへのリンクを示すロケータを、活動集約情報Cのリンク先である単位活動情報Bおよび単位活動情報Cへのリンクを示すロケータに変更する。これによって活動集約情報Aから活動集約情報Cへのリンクは削除され、活動集約情報Aから直接、単位活動情報Bおよび単位活動情報Cがリンクされ、図17(B)に示すように組織化される。
【0090】
図18は、単位活動情報を削除する場合の組織化処理の具体例の説明図である。いま、図18(A)に示すように活動情報がその活動内容に従って組織化されているものとする。ここで、単位活動情報Cを削除する場合を考える。まず、削除する単位活動情報Cをリンク先としている活動情報を選択する。この例では活動集約情報Cが単位活動情報Cをリンク先としている。この場合、単位活動情報Cにはリンク先がないので、単に活動集約情報Cの単位活動情報Cへのリンクを削除するのみでよい。これによって、図18(B)に示すように組織化される。
【0091】
なお、活動情報の変更処理は、上述のような活動情報の追加処理と削除処理を組み合わせることで行なうことができる。
【0092】
図19は、本発明のワークプロセス管理装置の第2の実施の形態を含むシステム構成図である。図中、図1と同様の部分には同じ符号を付して説明を省略する。29,30はサーバ装置、91,94は通信部、92は活動情報クラスタリング部、93は活動集約情報生成部、95は共起活動検出部、96は活動手順定義情報生成部である。サーバ装置29は、活動情報クラスタリング部92、活動集約情報生成部93を備え、さらに、通信部91を介して他のクライアント装置やサーバ装置と連携動作を行なう。サーバ装置30は、共起活動検出部95、活動手順定義情報生成部96を備え、さらに、通信部94を介して他のクライアント装置やサーバ装置と連携動作を行なう。
【0093】
活動情報クラスタリング部92は、定期的にネットワーク1上の活動情報記憶部61,81を参照し、それらに記憶されている活動情報を収集する。収集には、活動情報間の論理的なリンクを辿る方法、各活動情報記憶部61,81が記憶している活動情報を活動情報記憶部61,81から単に取得する方法など、任意の方法を適用できる。そして、活動情報クラスタリング部92は、収集した活動情報のそれぞれが持つ活動内容記述子の類似性に基づいて、各活動情報のクラスタリングを行ない、その結果を活動集約情報生成部93に送る。クラスタリングのための類似性の評価基準は、様々なものを設定してよい。例えば、ある特定の活動に着目してそれを含むものと含まないものに分割したり、いくつかの典型的な活動を設定し、それに包含される活動情報を各々集めてもよい。さらに、活動情報クラスタリング部92は、図19では1つしか示していないが、複数の活動情報クラスタリング部を設けて、それぞれの活動情報クラスタリング部ごとに異なる類似性の評価基準を設定し、様々なクラスタリングを行ない、処理に多様性を持たせることもできる。
【0094】
活動集約情報生成部93は、活動情報クラスタリング部92より渡されるクラスタの各々に対して、そのクラスタに含まれる活動情報が保持している活動内容記述子を包含する活動内容記述子を持った活動集約情報を生成する。生成した活動集約情報は、例えば活動情報更新部62,82(および活動情報組織化部63,83)を用いて登録すればよい。
【0095】
図20は、活動集約情報の生成および追加の処理の一例を示す概念図である。いま、図20(A)に示すように活動情報がその活動内容に従って組織化されているものとする。各活動情報の活動内容を活動内容2ないし活動内容7としている。活動情報クラスタリング部92におけるクラスタリング処理によって、例えば破線で囲んだ活動集約情報Bと活動集約情報Cとが1つのクラスタに分類されたとする。活動集約情報生成部93は、このクラスタリングの結果を受け取り、活動集約情報Bおよび活動集約情報Cの活動内容記述子の活動内容2,3を包含する、活動内容1の活動内容記述子を有する活動集約情報Aを生成する。
【0096】
そして、上述した活動情報更新部62,82および活動情報組織化部63,83の処理によって、活動集約情報生成部93で生成した活動集約情報Aの追加処理を行うことにより、図20(B)に示すような組織化された活動情報が得られる。
【0097】
このようにして、ワークプロセス管理装置は活動集約情報を自律的に生成、追加してゆくことができる。これにより、既存の活動情報に対して新しい索引付けを追加し続けることができ、活動の利用者および活動の提供者が活動の選択を行なう上での自由度を増加させ、利便性を向上させることができる。
【0098】
共起活動検出部95は、各活動実行受付部41,71から送出される活動実行指令を収集し、活動実行指令の中で同時に出現する頻度の高い活動内容記述子を共起関係にあるものとして検出する。そして、検出した活動内容記述子の組を、活動手順定義情報生成部96に送る。共起活動検出部95が各活動実行受付部41,71から送出される活動実行指令を収集するために、例えば活動実行受付部41,71は、生成した活動実行指令を活動実行制御部42,72に送るとともに、通信部34,39,94を介して、共起活動検出部95にも送るようにしておくとよい。
【0099】
図21は、共起活動検出部における共起活動の検出動作の一例の概念図である。図21に示した例では、活動実行受付部41から1つの活動実行指令を、また、活動実行受付部71から2つの活動実行指令を収集した例を示している。これらの収集した活動実行指令の活動内容記述子を調べると、それぞれU,V,Wという連続した活動を示す活動内容が記述されている。共起活動検出部95では、この活動内容U,V,Wを共起関係にあるとして検出し、その活動記述子の組を活動手順定義情報生成部96に送る。
【0100】
活動手順定義情報生成部96は、共起活動検出部95より渡される活動内容記述子の組について、各活動内容記述子の制約関係の解消などを行ない、適切な活動手順記述子を求める。また、各活動内容記述子を総括した活動内容記述子を生成する。そして、生成した活動手順記述子および活動内容記述子をもとに、活動手順定義情報を生成する。生成した活動手順定義情報は、例えば活動情報更新部62,82(および活動情報組織化部63,83)を用いて登録すればよい。
【0101】
図22は、活動手順定義情報生成部における活動手順定義情報の生成動作の一例の概念図である。ここでは一例として、破線で囲んだ活動単位情報U、活動集約情報V、活動集約情報Wが、共起活動検出部95で共起関係にあるとして検出されたとする。活動手順定義情報生成部96は、これらの共起関係にある活動単位情報U、活動集約情報V、活動集約情報Wの活動手順(例えば図22において吹き出しで示したようにU→V→Wの順)を示す活動手順記述子を生成する。また、これらの活動内容を包含する活動内容記述子(活動内容3)を生成する。さらに、活動単位情報U、活動集約情報V、活動集約情報Wへのリンクを示すロケータを生成し、活動手順定義情報Cを生成する。この活動手順定義情報Cを活動情報更新部62または82に送り、追加を依頼すればよい。この例では、活動集約情報Aの下位に活動手順定義情報Cが追加されている。
【0102】
このようにして、実行される活動内容の中から共起関係にある活動情報を抽出し、新たな活動手順定義情報を生成して自動的に登録される。これによって、例えば異種の活動でも、セットで行われる活動を自動的に再利用可能な状態にすることができ、ユーザの利便性を向上させることができる。
【0103】
次に、本発明のワークプロセス管理装置の第3の実施の形態について説明する。この第3の実施の形態を含むシステム構成は、上述の図1、図19に示した第1および第2の実施の形態と同様である。ただし、各活動情報記憶部61,81が開示情報および連携情報を記憶する点で異なる。また、各活動実行制御部42,72には、これらの情報に対する処理が追加される。
【0104】
図23は、本発明のワークプロセス管理装置の第3の実施の形態における連携情報のデータ構造の一例の説明図である。連携情報は、活動情報および活動情報間に対する許可/不許可の条件を表す。そのため、この連携情報は、各活動情報に付加されて利用される。図23に示す連携情報のデータ構造における各レコードは、「契約している活動情報」および「ルーティング条件」から構成されている。「契約している活動情報」は、当該連携情報が付加されている活動情報の前工程あるいは後工程として仕事を引き渡すことを予め契約により取り決めているか否かを示す情報である。「ルーティング条件」は、仕事を引き渡す際の様々な条件を指定し、この条件が成立したときに、この活動情報が選択候補となる。この条件には、仕事の内容そのもの以外に、例えば仕事を発行したユーザに関する条件も指定できる。例えば、ネットワーク1上で近いユーザの発行した仕事に対してのみ選択候補となるといった制御も可能となる。
【0105】
図24は、連携情報による動的選択の制約の一例の説明図である。図中、連携情報として、契約関係にある活動情報をリストとして示している。いま、活動手順定義情報Cに定義されているワークプロセスを実行する場合を考える。活動手順定義情報Cの活動手順記述子には、吹き出しで示したように、単位活動情報Uを実行した後、活動集約情報Vおよび活動集約情報Wを実行し、その後、単位活動情報Xを実行する手順が記述されており、この順で各活動を実行する。
【0106】
単位活動情報Uを実行した後、活動集約情報Vの実行に移る。活動集約情報Vは活動手順定義情報V1および単位活動情報V2にリンクされており、いずれかを実行することになる。このとき、活動単位情報Uの連携情報には、活動手順定義情報V1は登録されているが、単位活動情報V2には登録されていない。また、後工程である単位活動情報Xの連携情報にも、活動手順定義情報V1は登録されているが、単位活動情報V2は登録されていない。また、活動手順定義情報V1の連携情報には、前工程の単位活動情報Uおよび単位活動情報Xが登録されている。そのため、単位活動情報V2は選択されず、活動手順定義情報V1のみが選択されて実行される。なお、活動手順定義情報V1で活動が失敗した場合には、単位活動情報V2は代替活動とはならず、活動集約情報Vの活動が失敗する。
【0107】
活動集約情報Wでは、その下位に単位活動情報W1,W2がある。これらの単位活動情報W1,W2は、いずれも前工程である単位活動情報Uの連携情報および後工程である単位活動情報Xの連携情報に登録されている。また、単位活動情報W1,W2の連携情報にも、単位活動情報Uおよび単位活動情報Xが登録されている。そのため、単位活動情報W1,W2の一方が選択されて実行され、他方が代替活動として一方が失敗したときに実行される。
【0108】
単位活動情報Xでは、前工程の活動集約情報Vの下位に存在する活動手順定義情報V1および単位活動情報V2のうち、活動手順定義情報V1については登録されている。そのため、活動手順定義情報V1における活動結果を受けて活動を行うが、単位活動情報V2の活動結果を受け付けない。もう一方の前工程の活動集約情報Wの下位に存在する単位活動情報W1および単位活動情報W2については、両方とも連携情報に登録されているので、いずれで活動が行われても、後工程として単位活動情報Xの活動を行うことができる。
【0109】
図25は、本発明のワークプロセス管理装置の第3の実施の形態における開示情報のデータ構造の一例の説明図である。開示情報は、活動情報のユーザに対する開示の許可/不許可を示す情報である。この開示情報も、上述の連携情報と同様に、各活動情報に付加されて利用される。図25に示した開示情報のデータ構造における各レコードは、開示許可条件から構成されている。この開示許可条件には、仕事を発行しているユーザの条件や、その仕事が行われている部門の条件などを指定することができる。例えば、開示許可条件が成立する場合のみ、活動情報の内容、例えば活動手順定義情報で詳細化された活動手順を、仕事を発行したユーザに対して開示する。これにより、例えば、部門外や社外のユーザの仕事を行なう場合、ワークフローをノウハウとして隠蔽したいといった要求に対応することが可能になる。
【0110】
図26は、開示情報による表示制限の具体例の説明図である。この例では、活動手順定義情報Cに対して開示情報が付加されている。開示情報には、部門A,B,Cのユーザに対して開示を許可する開示許可条件が含まれている。この場合、部門Aのユーザがこの活動手順定義情報Cを参照する場合、その活動手順記述子に記述されているワークプロセスを表示させることができる。しかし、部門Xのユーザが同じくこの活動手順定義情報Cを参照しても、その活動手順記述子に記述されているワークプロセスは表示されない。このようにして、開示情報によって許可されていないユーザに対して、内容の詳細を秘密にしておくことができる。ここでは開示情報に開示を許可するユーザを登録したが、逆に開示を許可しないユーザを登録するように構成してもよい。
【0111】
【発明の効果】
以上の説明から明らかなように、本発明によれば、分散環境に対応してワークプロセス情報を分散管理することができ、大規模かつ多数の活動が出現、消滅する動的な環境下で利用することができる。また、ワークプロセス情報の分散管理にあたって、活動情報をその活動内容の包含関係によって組織化して管理するので、大規模になっても管理、利用が容易になる。さらに、このように組織化された活動情報の探索によって活動を実行して行くため、代替可能な活動を容易に実行することができ、事前に意図しない障害や、ワークプロセスの変更などにも対応することが可能となるとともに、多様なワークプロセスに柔軟に対応して行くことができる。本発明によれば、これら以外にも、上述したように各種の効果がある。
【図面の簡単な説明】
【図1】 本発明のワークプロセス管理装置の第1の実施の形態を含むシステム構成図である。
【図2】 本発明のワークプロセス管理装置における単位活動情報、活動集約情報、活動手順定義情報のデータ構造の一例の説明図である。
【図3】 本発明のワークプロセス管理装置における活動集約情報の階層構造とサーバ装置への配置の一例の説明図である。
【図4】 本発明のワークプロセス管理装置における活動集約情報の階層構造とサーバ装置への配置の別の例の説明図である。
【図5】 本発明のワークプロセス管理装置における活動実行指令のデータ構造の一例の説明図である。
【図6】 本発明のワークプロセス管理装置の第1の実施の形態における活動実行制御部の動作の一例の概略を示すPAD図である。
【図7】 ユーザとの対話による単位活動情報または活動手順定義情報の選択方法の一例の概念図である。
【図8】 活動実行制御部が定めた優先順序による単位活動情報または活動手順定義情報の選択方法の一例の概念図である。
【図9】 活動の実行の一例を示す概念図である。
【図10】 活動手順定義情報によるワークプロセス表現の一例の説明図である。
【図11】 本発明のワークプロセス管理装置における活動情報選択指令のデータ構造の一例の説明図である。
【図12】 本発明のワークプロセス管理装置の第1の実施の形態における活動情報選択部の動作の一例を示すPAD図である。
【図13】 本発明のワークプロセス管理装置の第1の実施の形態における活動情報更新部における動作の一例を示すPAD図である。
【図14】 本発明のワークプロセス管理装置の第1の実施の形態における活動情報組織化部の動作の一例を示すPAD図である。
【図15】 活動集約情報を追加する場合の組織化処理の具体例の説明図である。
【図16】 単位活動情報を追加する場合の組織化処理の具体例の説明図である。
【図17】 活動集約情報を削除する場合の組織化処理の具体例の説明図である。
【図18】 単位活動情報を削除する場合の組織化処理の具体例の説明図である。
【図19】 本発明のワークプロセス管理装置の第2の実施の形態を含むシステム構成図である。
【図20】 活動集約情報の生成および追加の処理の一例を示す概念図である。
【図21】 共起活動検出部における共起活動の検出動作の一例の概念図である。
【図22】 活動手順定義情報生成部における活動手順定義情報の生成動作の一例の概念図である。
【図23】 本発明のワークプロセス管理装置の第3の実施の形態における連携情報のデータ構造の一例の説明図である。
【図24】 連携情報による動的選択の制約の一例の説明図である。
【図25】 本発明のワークプロセス管理装置の第3の実施の形態における開示情報のデータ構造の一例の説明図である。
【図26】 開示情報による表示制限の具体例の説明図である。
【符号の説明】
1…ネットワーク、11,12…クライアント装置、21〜30…サーバ装置、31〜40…通信部、41,71…活動実行受付部、42,72…活動実行制御部、43,73…活動手順実行制御部、51,74…活動実行部、52,53…活動情報選択部、61,81…活動情報記憶部、62,82…活動情報更新部、63,83…活動情報組織化部、91,94…通信部、92…活動情報クラスタリング部、93…活動集約情報生成部、95…共起活動検出部、96…活動手順定義情報生成部。
[0001]
BACKGROUND OF THE INVENTION
The present invention manages activities and work process information in a distributed manner in a network information system in which a plurality of computer systems such as a plurality of server devices and a plurality of client devices are connected via a network. In addition, the present invention relates to a work process management apparatus and work process management method for performing workflow management using work process information.
[0002]
[Prior art]
In the conventional workflow management system, a series of work flows in one work is clearly defined in advance in the form of a work process definition. When a job is executed, according to the work process definition, job assignment and electronic document delivery can be automatically performed.
[0003]
However, in the actual work process, unforeseen circumstances frequently occur, such as document deficiencies and the absence of staff. In the conventional workflow management system, in order to cope with such an unexpected situation that occurs in the course of work, it is necessary to previously include the unexpected situation in the work process definition. For this reason, it is difficult to cope with situations that cannot be predicted in advance, and there is a problem in operational flexibility such that the definition cannot be changed during the operation of work.
[0004]
In order to deal with such problems, the work process definition is not completely defined in advance, but partially undefined, and the undefined part is instantiated when the work is executed. Therefore, there is a technology for giving operational flexibility. For example, the system described in L. Nastansky, W. Hilpert, “The GroupFlow System: A Scalable Approach to Workflow Management between Cooperation and Automation”, University of Paderborn, 1994.2, is a system based on a semi-structured work process definition. is there. this is,
(1) A part of work procedure can be defined as a place for collaborative work consisting of multiple users.
(2) A part of work procedure can be handled by a plurality of users, and a person in charge can be selected at the time of execution.
(3) A part of the work procedure can be partially modified according to exceptional circumstances.
It has the characteristics. Furthermore, it has a function of displaying a plurality of steps of a work procedure in a summarized form as one more abstract step.
[0005]
Further, the system described in Japanese Patent Laid-Open No. 9-237292 does not define each procedure of work with the same level of detail, but refines it in stages by developing abstract steps in advance. It can be defined. Similarly, in the system described in Japanese Patent Application Laid-Open No. 9-245092, partially defined workflows are grouped into groups, and workflows can be defined between these groups. In both documents, when a work process is executed, a definition that has not yet been executed can be modified.
[0006]
The systems described in JP-A-10-111888 and JP-A-10-177608 have a main work process definition across departments and a plurality of sub-workflows that can be switched within the department. Yes. By changing the sub-workflow in the department at the time of execution according to the nature of the business, it is possible to deal with various business.
[0007]
The systems described in JP-A-8-212475 and JP-A-8-221476 can be used from other departments by publishing a workflow defined for each department as a “public flow”. Is.
[0008]
In the system described in Japanese Patent Laid-Open No. Hei 8-161393, the work is advanced by distributing the work contents to the computers performing the work. In this system, the work process can be changed even during execution of the work process by changing and redistributing the work content.
[0009]
Further, in the system described in US Pat. No. 5,212,771, modeling means and definition for defining a work process in a stepwise decomposition process based on a language defining the process. It is equipped with means to inspect the correctness of the process. These means can be used to define hierarchical work processes in a predetermined manner.
[0010]
With the conventional technologies listed so far, the definition can be made more flexible by introducing hierarchical definitions and grouping definitions for work process definitions that had previously been defined with the same level of detail. Can do. In addition, the effect of changing definitions during the execution of work processes can be localized to hierarchies and groups. Therefore, abstract forms such as hierarchies and groups can be used as the steps constituting the work process. As a result, if the function of each step can be achieved at the time of execution of the work process, it becomes possible to carry out the work while changing the inside of each step or selecting candidates during the execution of the work process. It was.
[0011]
In these conventional techniques, a work process definer manually changes locally or switches sub-workflows automatically only within a predefined range such as within a department. Therefore, the conventional system has a plurality of management units and cannot be operated across different management units. This means that, with the conventional technology, if the entire system is viewed, there is a possibility of internal changes in each step and selection of candidates even if they exist in other departments, for example. Yes. Further, as the scale of the system increases, the utilization loss of such potentially usable work processes increases.
[0012]
For example, in the above-mentioned Japanese Patent Application Laid-Open Nos. 8-221475 and 8-221476, a mechanism for enabling a work process in a department to be used from outside the department in the form of “public flow” is also introduced. We provide technology that enables mutual operation between units. However, it is impossible to grasp what work processes exist in which departments. Again, as the scale of the system increases, it becomes impossible to fully utilize the potentially available work processes.
[0013]
[Problems to be solved by the invention]
The present invention has been made in view of the above-described circumstances, and can be used in a dynamic environment in which a large number of activities appear and disappear by managing work process information uniformly throughout the system. Furthermore, by fully utilizing the diversity of work process information brought about by such an environment, a work process management device and a work process management method capable of widely handling exceptional situations during execution are provided. It is the purpose.
[0014]
[Means for Solving the Problems]
In the present invention, in a work process management apparatus configured on a network information system in which a plurality of server apparatuses and client apparatuses are connected via a network, activity information storage means for storing information related to activities, and activities related to activity execution control One or more execution reception means, activity execution control means, activity execution means, and activity procedure execution control means are provided.
[0018]
The activity information storage means includes unit activity information representing work process steps and activity procedure definition information representing work process definitions, by activity aggregation information that organizes both information and activity aggregation information itself according to the inclusion relationship of the activity contents. Manage by associating. In addition, since the association is made by logical location information such as a locator included in the activity information, a link locator included in the activity aggregation information, and an activity procedure locator included in the activity procedure definition information, it can be managed in a distributed manner via the network. it can.
[0019]
A user who requests the execution of an activity inputs an activity execution request to the activity execution receiving means through the client device. The activity execution accepting unit generates an activity execution command corresponding to the request and passes it to the activity execution control unit. The activity execution control means selects unit activity information or activity procedure definition information according to the inclusion relation of the activity aggregation information, includes the information as an execution target in the activity execution command, and each of the activity execution means and the activity procedure execution control means. To pass. The activity execution means establishes a connection between a user who requests execution of the activity and a user or a device responsible for executing the activity and performs the activity. The activity procedure execution control means is execution of the work process definition. If the step of the work process is unit activity information, the activity execution means causes the activity to be performed. If the step of the work process is activity procedure definition information or activity aggregation information, it is processed again by the activity procedure execution control means or the activity execution means, respectively. By these means, work processes involving dynamic recombination of work processes at the time of execution can be executed on a global scale managed by the system.
[0020]
In the present invention, as described above, since information related to work processes can be distributed and managed, it is possible to cope with a large-scale system. Furthermore, it is based on a form in which information relating to the distributedly managed work processes is organized and managed hierarchically according to the inclusion relation of the contents of the activities.
[0021]
In the hierarchical management in the conventional system, the hierarchical management is performed only in accordance with the fixed development relationship previously determined by the work process definer. However, the present invention is based on the function itself provided by each step of the work process. The system automatically performs hierarchy management. With this configuration, there is only one global management unit managed by the system, so interoperability between local management units such as the scope and department managed by the work process definer is difficult as in conventional systems. The problem of being is solved. In addition, even if there is a single logical management unit, it can be managed physically in a distributed manner on the network, so even if the system scale increases, It can be configured so that the problem of concentration of load and use of a large amount of storage area does not occur.
[0022]
When executing a work process, the system performs a recursive descending search for a work process that is hierarchically managed, and performs dynamic workflow execution management by selecting a workflow and its steps at the time of execution. As a result, it is not limited to runtime correction of work processes in local management units such as the scope and department managed by the work process definer as in the conventional system, but the work processes in the global scope of the entire system Runtime correction is possible.
[0023]
As a configuration of the present invention, the activity execution control means further checks the success or failure of the execution status of the activity notified from the activity execution means, and automatically selects an alternative activity and maintains the execution of the work process upon failure. It is a feature.
[0024]
In addition, activity information selection means for selecting the activity information distributed and managed as described above within the respective responsible areas is arranged, and the activity information selection means is selected when the activity execution control means selects the activity information. It can be configured to be used. As a result, it is possible to perform the process of selecting activity information in the vicinity of the activity information storage means, and to further decentralize the process, and to improve the processing speed by effectively using the network.
[0025]
Furthermore, activity information updating means and activity information organizing means are added, and unit activity information, activity aggregate information or activity procedure definition information stored in the activity information storage means is added, deleted, changed, and between each activity information Can be reconfigured. This makes it possible to register new work processes and steps, modify or cancel existing work processes and steps, and change hierarchically organized structures.
[0026]
In addition, activity information clustering means and activity aggregation information generation means are added, each existing activity information is collected and the similarity by those clustering is detected, and new activity aggregation information is automatically based on the clustering result Can be created and registered. Thereby, a new hierarchy with respect to each existing activity information is obtained, and the freedom degree in work process execution can be improved.
[0027]
Furthermore, a co-occurrence activity detection means and an activity procedure definition information generation means are added, activity execution commands generated by user requests are collected, and activity contents having a co-occurrence relationship are detected from the activity contents included in them, Based on this information, new activity procedure definition information can be generated and registered. As a result, the potential needs among the activity users who want to perform different types of activities as a set can be extracted in the form of activity procedure definition information and made reusable.
[0028]
Further, the activity information storage means can further store the link information indicating the permission / non-permission condition for the activity information and between the activity information. As a result, it is possible to restrict the steps that are automatically selected when the work process is executed, and it is possible to use only the regular cooperation promised to deliver the business.
[0029]
Further, the activity information storage means can further store the disclosure information indicating the permission / non-permission condition of the disclosure of the activity information. As a result, the execution status can be partially undisclosed for the user who requested the execution of the work process, and each work process can be linked across different companies and departments. You will be able to conceal the work you want to keep secret inside the company or department.
[0030]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a system configuration diagram including a first embodiment of a work process management apparatus of the present invention. In the figure, 1 is a network, 11 and 12 are client devices, 21 to 28 are server devices, 31 to 40 are communication units, 41 and 71 are activity execution accepting units, 42 and 72 are activity execution control units, and 43 and 73 are Activity procedure execution control unit, 51 and 74 are activity execution units, 52 and 53 are activity information selection units, 61 and 81 are activity information storage units, 62 and 82 are activity information update units, and 63 and 83 are activity information organization units It is. In the system configuration shown in FIG. 1, in a network information system having a plurality of server devices and client devices, the components of the work process management device of the present invention are distributed over a plurality of server devices. An example configured as a processing system is shown.
[0031]
In the system shown in FIG. 1, a plurality of server devices 21 to 28,... And client devices 11, 12,. The server device 21 is a device that performs some activity. The server devices 22 to 28 are devices provided with distributed components in the first embodiment of the work process management device of the present invention. Each of the client devices 11, 12,... And each of the server devices 21 to 28,... Includes communication units 31 to 40, and performs a cooperative operation via the network 1 using the communication units 31 to 40,. be able to. In particular, in this example, the constituent elements in the first embodiment of the work process management apparatus of the present invention arranged in each of the server apparatuses 22 to 28 also perform a cooperative operation via the network 1 by the communication units 34 to 40. It is configured. Of course, it is possible to adopt a configuration in which the components in the first embodiment of the work process management apparatus of the present invention are centrally arranged on a single server device and can be linked without using the communication units 34 to 40. . Moreover, when distributing the components in the first embodiment of the work process management apparatus of the present invention, which component is distributed to which server device, the number of each component, and the like are arbitrary. Furthermore, the apparatus connected to the network 1 is not limited to the configuration shown in FIG. 1, and more network devices may be connected.
[0032]
The server devices 25 and 28 have communication units 37 and 40, respectively, and activity information storage units 61 and 81, activity information update units 62 and 82, and activity information organization units 63 and 83, respectively. The activity information storage units 61 and 81 manage unit activity information representing work process steps and activity procedure definition information representing work process definitions by associating them with activity aggregation information organized according to the inclusion relation of activity contents. . In the following description, unit activity information, activity procedure definition information, and activity aggregation information may be collectively referred to as activity information. Each information will be described later. The activity information update units 62 and 82 add, delete, and change the activity information on the activity information storage units 61 and 81 in accordance with requests sent from the client devices 11 and 12. Further, the activity information organizing units 63 and 83 add all the activity information storage units 61 and 81 when the activity information update units 62 and 82 add, delete, or change the activity information on the activity information storage units 61 and 81. Any unit activity information and activity procedure definition information stored in the table is instructed by the locator from at least one activity aggregation information, and the activity content descriptor included in any activity aggregation information is also included in the activity aggregation information. The locator between the activity aggregation information is reconfigured so as to represent the content of the activity including the content of the activity represented by the activity content descriptor included in the activity information indicated by the included locator. In addition, in this specification, when it expresses that one activity content includes another activity content, the case where both correspond is also included.
[0033]
The server device 22 includes an activity execution receiving unit 41, an activity execution control unit 42, and an activity procedure execution control unit 43 along with the communication unit 34. Similarly, the server device 27 includes a communication unit 39, an activity execution receiving unit 71, an activity execution control unit 72, and an activity procedure execution control unit 73, and an activity execution unit 74. The activity execution receiving units 41 and 71 receive an activity execution request sent from the client device 11 or 12 via the communication units 34 and 39, generate an activity execution command corresponding to the execution request, and execute the activity. Input to the control units 42 and 72. The activity execution control units 42 and 72 receive the activity execution command, select activity information such as unit activity information or activity procedure definition information in accordance with the inclusion relation of the organized activity aggregation information, and execute the selected activity information as an activity execution command. Include as execution target. When selecting the activity information, the activity information selection units 52 and 53 can be used. If the selected activity information is unit activity information, the activity execution command is passed to the activity execution unit 51 and the activity execution unit 74. If the selected activity information is activity procedure definition information, the activity execution command is passed to the activity procedure execution control units 43 and 73. The activity procedure execution control units 43 and 73 cause the activity execution units 51 and 74 to perform an activity if the step of the work process is unit activity information, and each activity procedure if the activity procedure definition information or the activity aggregation information. The execution control units 43 and 73 or the activity execution control units 42 and 72 perform processing to execute the work process definition. The activity execution unit 74 receives the activity execution command, establishes a connection between the user who requests the execution of the activity and the user or device responsible for the execution of the activity, and performs the activity.
[0034]
The server device 23 includes an activity execution unit 51 together with the communication unit 35. The activity execution unit 51 receives an activity execution command sent from another server device via the network 1 and performs the same operation as that of the activity execution unit 74 described above.
[0035]
The server devices 24 and 26 have activity information selection units 52 and 53 as well as communication units 36 and 38. The activity information selection units 52 and 53 receive, for example, activity information selection commands sent from the activity execution control units 42 and 72 and other activity information selection units, and the activity information storage unit in charge is organized. Activity information such as unit activity information or activity procedure definition information is selected according to the inclusion relationship of the activity aggregation information, and the selected activity information is returned. When unit activity information, activity aggregation information, or activity procedure definition information stored in an activity information storage unit outside the assigned range is included when selecting activity information, the corresponding activity information storage unit is set as the assigned range. The activity information selection command is passed to the activity information selection unit. The activity information selection units 52 and 53 cooperate in this way to select activity information.
[0036]
FIG. 2 is an explanatory diagram showing an example of the data structure of unit activity information, activity aggregation information, and activity procedure definition information in the work process management apparatus of the present invention. 101-107 are unit activity information, 111-116 are activity aggregation information, 121,122 is activity procedure definition information. Each activity information (unit activity information, activity aggregation information, activity procedure definition information) has an “activity content descriptor” and a link to other activity information by “locator”. The link by the “locator” which each activity information shown in FIG. 2 has is a logical link pointing to other activity information. Any link may be used as long as each activity information can be pointed on the network. For example, a combination of a host name where each piece of activity information is located and a path name indicating the location of the resource on the host can be used. An example of such a link is a URL used in the World Wide Web, for example.
[0037]
The “activity content descriptor” possessed by each activity information is a description indicating the content of the activity represented by each activity information, and any activity description language capable of machine processing can be used. An example of such an activity description language is a PIF developed by MIT, for example.
[0038]
Each activity aggregation information 111-116 organizes unit activity information and activity procedure definition information according to the inclusion relation of the activity contents, and forms a hierarchical structure. For example, the activity aggregation information 111 includes the activity aggregation information 113, 114, 115, etc. indicated by the locator as a lower hierarchy, and includes the higher level activity content that summarizes the activity aggregation information 113, 114, 115. Yes. Similarly, the activity aggregation information 113 has unit activity information 101 and 102 indicated by a locator, activity aggregation information 116, activity procedure definition information 121, and the like as lower layers.
[0039]
As described above, each of the activity aggregation information 111 to 116 indicates the inclusion relationship between the activity contents of the unit activity information and the activity procedure definition information. Therefore, the activity content descriptor possessed by each of the activity aggregation information 111 to 116 includes an activity content (represented by the activity content descriptor) of other activity information to which the activity aggregation information is linked by the locator. The contents are described. For example, the activity content descriptor of the activity aggregation information 113 describes the activity content including the activity content of the unit activity information 101, the unit activity information 102, the activity procedure definition information 121, and the activity aggregation information 116.
[0040]
Each unit activity information 101 to 107 has one link by a locator, and this link indicates either a client device or a server device on the network 1. In the client device indicated by this link, there is a worker who performs the activity represented in the activity content descriptor of the corresponding unit activity information, and this worker receives work and performs work according to the operation described later. become. When the link indicates a server device, there is no worker, and the server device automatically performs some work.
[0041]
Each activity procedure definition information 121 and 122 has an activity procedure descriptor in addition to an activity content descriptor and a logical link indicated by a locator. The activity procedure descriptor contains work process definitions among other activity information that are logically linked.
[0042]
3 and 4 are diagrams for explaining an example of a hierarchical structure of activity aggregation information and an arrangement in a server apparatus in the work process management apparatus of the present invention. Each activity information (unit activity information, activity aggregation information, activity procedure definition information) may be distributed in a plurality of activity information storage units on the network 1. 3 and 4 show examples of arrangement of each activity information when there are three activity information storage units. Here, an example of the physical arrangement and logical link form of each activity information when the server device (the former), the server device (the second), and the server device (one) each have an activity information storage unit. Is shown. As shown in FIG. 3, a specific hierarchy may be assigned to a specific server device by associating the logical link hierarchical structure of each activity information with the physical arrangement. Alternatively, as shown in FIG. 4, the hierarchical structure of the logical links and the physical arrangement may be handled completely independently.
[0043]
Next, an example of the operation of the work process management apparatus according to the first embodiment of the present invention will be described. In the following description, it is assumed that activity information has already been registered in the activity information storage units 61 and 81.
[0044]
The activity execution receiving units 41 and 71 receive work process execution requests from users who want to use work processes from the client devices 11 and 12 via the communication units 34 and 39. This request includes an activity content descriptor describing the activity requested by the user. The activity execution accepting units 41 and 71 generate an activity execution command by using the activity content descriptor included in the execution request and the activity execution command issuing source locator that instructs the client device, and the activity execution control unit 42 , 72. FIG. 5 is an explanatory diagram showing an example of the data structure of the activity execution command in the work process management apparatus of the present invention. As shown in FIG. 5, the activity execution command includes a command issuer locator and execution activity information. The command issuer locator is a logical link indicating the issuer that issues this activity execution command, and is the same information as the locator in the activity information shown in FIG. The execution activity information includes contents to be executed. For example, in addition to an activity content descriptor describing an activity requested by a user, unit activity information including the activity content descriptor, activity procedure definition information, and the like can be included.
[0045]
When the activity execution command is input, the activity execution control units 42 and 72 appropriately use the activity information selection units 52 and 53 based on the activity content descriptor included in the input activity execution command. Select an activity. Further, the unit activity information or activity procedure definition information to be executed is specifically selected by following the locator until the unit activity information or the activity procedure definition information is reached and descending the link between the activity information.
[0046]
FIG. 6 is a PAD diagram showing an outline of an example of the operation of the activity execution control unit in the first embodiment of the work process management apparatus of the present invention. In S201, the list F of activity information that has ended abnormally is left empty. In S202, an activity execution command is received and stored in a variable r. In S203, activity information having an activity content descriptor suitable for the activity content descriptor in the activity execution command stored in the variable r is selected, and the selected activity information is stored in the variable a. The activity information may be selected by the activity execution control unit, or may be performed by using the activity selection units 52 and 53 in a large-scale system, for example.
[0047]
In S204, all unit activity information and activity procedure definition information that can be reached by following the link by the locator from the activity information selected in S203 are acquired and stored in the list T. In S205, for the unit activity information and activity procedure definition information stored in the list T, the activity execution processing in S206 to S215 is performed. If there is no unit activity information or activity procedure definition information that can be reached, the process proceeds to S216, and an abnormal end is notified to the command issuer indicated by the command issuer locator of the activity execution command stored in the variable r. .
[0048]
In S206, one unit activity information or activity procedure definition information is selected from the list T and stored in the variable a ′. The unit activity information or the activity procedure definition information is selected by, for example, dialogue with the user or the priority order determined in advance by the activity execution control units 42 and 72. FIG. 7 is a conceptual diagram of an example of a method for selecting unit activity information or activity procedure definition information through dialogue with the user. It is assumed that an activity execution command corresponding to the activity aggregation information A indicated by the thick arrow is received, and the activity unit information B and F that are hatched by following the link by the locator from the activity aggregation information A and the activity procedure It is assumed that definition information C and E have been acquired. At this time, the contents of the acquired activity unit information B, F and activity procedure definition information C, E are displayed on the user interface. The client device to be displayed can be known by the command issuer locator in the activity execution command stored in the variable r. The user who requests the work can select the activity information that actually requests the work through the user interface screen.
[0049]
FIG. 8 is a conceptual diagram illustrating an example of a method for selecting unit activity information or activity procedure definition information in a priority order determined by the activity execution control unit. As in FIG. 7, it is assumed that an activity execution command corresponding to the activity aggregation information A indicated by the thick arrow is received, and the activity unit information B that has been hatched by tracing the link by the locator from this activity aggregation information A, Assume that F and activity procedure definition information C and E are acquired. Here, priority is set for each user who requests work for each activity unit information and activity procedure definition information. The priority may be set based on various types of information such as usage record and importance. The activity execution control units 42 and 72 can automatically select the one with the highest priority with reference to the priorities of the acquired activity unit information B and F and the activity procedure definition information C and E.
[0050]
When one unit activity information or activity procedure definition information is selected in this way, in S207 of FIG. 6, the unit activity information or activity procedure definition information selected in S206 and stored in the variable a ′ is obtained in S202. It is set as execution activity information of the received activity execution command (variable r). This activity execution command is stored in the variable r ′.
[0051]
In S208, it is determined whether the unit activity information is stored in the variable a ′ or the activity procedure definition information is stored. If the unit activity information is stored in the variable a ′, the activity execution command stored in the variable r ′ is transferred to the activity execution unit 51 and the activity execution unit 74 in S209. If the activity procedure definition information is stored in the variable a ′, the activity execution command stored in the variable r ′ is transferred to the activity procedure execution control unit 43 and the activity procedure execution control unit 73 in S210. . When delivering these activity execution commands, information indicating that the activity execution command is from the activity execution control unit performing this processing is also passed.
[0052]
The execution result is received from the activity execution unit 51 or the activity execution unit 74 that has received the activity execution command in S209, or from the activity procedure execution control unit 43 or the activity procedure execution control unit 73 that has received the activity execution command in S210. In step S211, the received execution result is referred to, and it is determined whether or not the processing has been normally completed. In the case of normal termination, in S212, the normal termination is notified to the issuer of the activity execution command pointed to by the command issuer locator in the activity execution command stored in the variable r. Then, the activity execution control process ends.
[0053]
If the received execution result is abnormal termination, in S213, the abnormally terminated unit activity information or activity procedure definition information is added to the abnormally terminated activity information list F. In S214, as in S204, all unit activity information and activity procedure definition information that can be reached by following the link by the locator from the activity information (variable a) selected in S203 are obtained, and the list T is reconstructed. S215 The contents of the list F of activity information that ended abnormally from the list T in FIG. If the list T is not empty, the process returns to S206 and other activity information that has not ended abnormally is selected, an activity execution command is passed to the activity information, and switching of the activity information is attempted.
[0054]
When all the switching candidates are lost, that is, when no other activity information that has not ended abnormally remains in the list T, in S216, the command issuer locator in the activity execution command stored in the variable r is used. Abnormal termination is notified to the issuer of the indicated activity execution command.
[0055]
The activity execution unit and the activity procedure execution control unit may be in the same device as the device having the activity execution control unit or may be in a separate device via the communication unit. In the example shown in FIG. 1, an example is shown in which the activity execution unit 51 is in a different device from the device in which the activity execution control units 42 and 72 exist, and the other devices exist in the same device.
[0056]
When executing an activity, only communication between a client device used by a user who wants to use a work process and a client device used by a user who provides an activity or a server device which provides an automatic activity is required. As in the above-described configuration, separating the activity execution unit into a device separate from the activity execution control unit and the activity procedure execution control unit is effective in distributing the load concentration on the network 1.
[0057]
The activity execution unit 51 or the activity execution unit 74 that has received the activity execution command from the activity execution control units 42 and 72 as described above includes information on the client device indicated by the command issuer locator in the activity execution command, A communication connection is established between both devices using information on the server device or client device indicated by the locator in the unit activity information. As a result, the user who requested the execution of the work process and the automatic processing of the server device indicated by the unit activity information or the worker of the client device are connected by communication, and the work request and the result are received. Will be able to. The result of this activity is notified to the issuer of the activity execution command.
[0058]
FIG. 9 is a conceptual diagram illustrating an example of execution of an activity. In this example, a part of the configuration shown in FIG. 1 and a part of an example of the structure of activity information are shown. As a specific example, it is assumed that the work requesting user issues an activity execution command from the client device 11 ((1)). This activity execution command is received by, for example, the activity execution receiving unit 41 existing in the server device 22 and the activity execution control as shown in FIG. For example, when the content of the execution activity requested by the work requesting user corresponds to the activity aggregation information A, the activity unit information B and F and the activity procedure definition information C and E that have been hatched are acquired, and the activity is included in the activity information. Assume that unit information B is selected ((2)). As described above, this selection may be performed by the work requesting user from the client device 11, or the activity execution control unit 42 may select according to the priority order. Here, it is assumed that the locator of the activity unit information B points to the client device 12.
[0059]
The activity item control unit 42 delivers an activity execution command using the selected activity unit information B as execution activity information to the activity execution unit. Here, the activity execution control unit 42 passes an activity execution command including the activity unit information B as execution activity information to the activity execution unit 51 ((3)).
[0060]
The activity execution unit 51 establishes a communication connection between the client device 11 indicated by the command issuer locator in the delivered activity execution command and the client device 12 indicated by the locator of the unit activity information B ( (4), (5)). Thereby, the work requesting user who requested execution of the work process and the user in charge of the work execution of the client device 12 indicated by the unit activity information B are connected by communication, and activities such as requesting work and receiving the result are performed. Execute ((6)). The result of this activity (normal end or abnormal end) is notified to the activity execution control unit 42 that is the source of the activity execution command.
[0061]
The activity procedure execution control units 43 and 73 are a plurality of activity information linked in accordance with a work process, and can be executed by a normal work process execution engine. FIG. 10 is an explanatory diagram of an example of a work process expression based on activity procedure definition information. As shown in FIG. 10, the activity procedure definition information has a work process definition as a work procedure description in which the activity information linked by the locator is used as each step of the work process. By this work process definition, each activity information can be executed sequentially. For example, in the example shown in FIG. 10, the activity procedure definition information C is linked to the activity unit information U and X and the activity aggregation information V and W by a locator. In addition, in the work procedure description, after executing the activity contents of the activity unit information U, the activity contents of the activity aggregation information V and the activity aggregation information W are executed, and after these executions, the activity contents of the activity unit information X are executed. A work process definition is described, and each activity is executed according to the work process definition. The execution result of this work process is notified to the issuer of the activity execution command.
[0062]
As the activity procedure definition information, unit activity information can be executed at each step, or other activity procedure definition information can be executed as a sub-process. The activity procedure definition information can take activity aggregation information in addition to unit activity information and activity procedure definition information. For example, in the example shown in FIG. 10, the activity contents of the activity aggregation information V and W are each set as one step. When the activity aggregation information is executed, the activity procedure execution control unit sets the activity aggregation information as the execution activity information, and a new activity indicating the activity procedure execution control unit in which the command issuer locator performs this processing. An execution command is generated, and the process of passing it to the activity execution control unit 42 or the activity execution control unit 72 is performed again. By this process, the steps defined in the form of activity aggregation information are recursively refined into specific activities. In addition, this recursive process is backtracked when the process ends abnormally. Through these processes, execution can be performed while dynamically switching between steps and work processes.
[0063]
For example, in the example shown in FIG. 10, in the step of executing the activity content of the activity aggregation information V, the activity content of the activity procedure definition information V1 or the activity content of the activity unit information V2 is detailed at the time of execution. In the step of executing the activity content of the activity aggregation information W, the activity content of the activity unit information W1 or the activity content of the activity unit information W2 is detailed at the time of execution. When the activity aggregation information V is refined to the activity procedure definition information V1, the activity procedure definition information V1 includes the work process definition again. Therefore, the step of executing the activity contents of the activity aggregation information V is the activity procedure definition. The work process definition process included in the information V1 is dynamically generated and executed as a new work process.
[0064]
When the work process defined by the activity procedure definition information V1 ends abnormally during execution, the activity unit information V2 is selected as alternative activity information and executed. If the execution of the activity unit information V2 also ends abnormally, the activity procedure definition information C ends abnormally, and execution is attempted on other activity information under the activity aggregation information A.
[0065]
By such dynamic execution control, activities that can actually be used at the time of work process execution are selected and used. As a result, each process often ends normally, and resistance to failures can be improved. In addition, as the scale of the system increases, that is, as the number of activity information stored in the activity information storage unit increases, the number of candidates for the activity information that can be switched increases, so that the tolerance to failure is improved. When execution of certain activity information fails due to abnormal termination, for example, a retry may be made after a predetermined time has elapsed. In this case, it is preferable to switch to alternative activity information after a predetermined number of retries.
[0066]
Next, the operation information selection operation in the activity information selection units 52 and 53 will be described. For example, in the process shown in FIG. 6, the activity information selection units 52 and 53 can be used when selecting activity information in S203. When using the activity information selection units 52 and 53, the activity execution control units 42 and 72 include an activity content descriptor and a command issuer locator for the activity information selection unit 52 or the activity information selection unit 53. Pass the activity information selection command. Upon receiving the activity information selection command, the activity information selection units 52 and 53 receive unit activity information, activity aggregate information, or activity procedure that holds an activity content descriptor suitable for the activity content descriptor included in the activity information selection command. The definition information is selected by following a logical link between the activity aggregation information stored in the activity information storage units 61 and 81, and the obtained activity information is returned to the command source. The process of following a logical link may be performed by a single activity information selection unit, or a plurality of activity information selection units may operate cooperatively. Here, it is assumed that the activity information selection units 52 and 53 operate cooperatively. For example, in the example illustrated in FIG. 1, the activity information selection unit 52 sets the activity information storage unit 61 as a responsible range, and the activity information selection unit 53 sets the activity information storage unit 81 as a responsible range. When each activity information selection unit 52, 53 follows a logical link in the course of processing and exceeds the assigned range, the process is transmitted to another activity information selection unit 53, 52 in charge of the beyond destination. . In addition, although each activity information selection part 52,53 and each activity information storage part 61,81 which is the range in charge are isolate | separated via the network 1, it is via each communication part 36-38,40. It can be accessed.
[0067]
FIG. 11 is an explanatory diagram showing an example of the data structure of the activity information selection command in the work process management apparatus of the present invention. As described above, the activity information selection command has at least an activity content descriptor in which the activity content of the activity information to be selected is described, and a command issuer locator that has issued the activity information selection command. At the same time, gaze activity information in which activity information that is a selection candidate is stored and reaching activity information indicating activity information that has already been examined can be included. Eventually, an activity information selection command is returned to the activity execution control units 42 and 72, and the gaze activity information therein becomes the activity information to be selected. Note that the activity information to be selected that conforms to the activity information selection command is the activity information having the activity content descriptor that represents the activity content including the activity content represented by the activity content descriptor of the activity information selection command. Suppose that it is closest to the end of the link between the activity aggregation information.
[0068]
FIG. 12 is a PAD showing an example of the operation of the activity information selection unit in the first embodiment of the work process management apparatus of the present invention. In S221, each activity information selection unit 52, 53 receives an activity information selection command, and stores the received activity information selection command in a variable r. In S222, it is determined whether the gaze activity information in the received activity information selection command is empty. For example, when the activity information selection command is received from the activity execution control units 42 and 72, the gaze activity information is empty. In that case, initialization for search is performed in S223. In this example, the starting point of the activity information selection process is the route of all the activity information, and the selection process is started from the activity information selection unit whose activity information storage unit holds the activity information corresponding to this route. To do. Therefore, in S223, the activity information corresponding to the route is set in the gaze activity information in the activity information selection command stored in the variable r. Further, in S224, a reference (link) to the activity information selection unit having the activity information storage unit including the activity information corresponding to the route as the responsible range is stored in the variable f. In S225, the activity information selected in the variable r is selected for the link stored in the variable f, that is, for the activity information selection unit whose scope is the activity information storage unit including the activity information corresponding to the route. The command is transmitted and the process is terminated. This processing is performed by the activity information selection unit that has received the activity information selection command. The activity information selection unit that receives this activity information selection command may be the same as the transmission source.
[0069]
If the gaze activity information in the received activity information selection command is not empty, the lower-level activity information is searched by the following processing. In S226, gaze activity information is extracted from the received activity information selection command stored in the variable r and stored in the variable t. In S227, it is determined whether or not the extracted gaze activity information (variable t) exists within the assigned range. If it is not in the assigned range, in S228, a reference (link) to the activity information selection unit having the gaze activity information stored in the variable t as the assigned range is stored in the variable f. In step S229, the activity information selection command in the variable r is transmitted to the activity information selection unit that handles the link stored in the variable f, that is, the gaze activity information (variable t), and the process is terminated.
[0070]
When the gaze activity information (variable t) of the received activity information selection command exists in the assigned range, in S230, the activity content described in the activity content descriptor of the gaze activity information (variable t) is the activity. It is determined whether or not it is included in the activity content described in the activity content descriptor of the information selection command (variable r). As described above, since the search starts from the route of the activity information, the activity content of the gaze activity information continues to include the activity content of the activity information selection command. As described later, the details of the activities are gradually reduced to the lower layers, and the activity contents of the gaze activity information are eventually included in the activity contents of the activity information selection command. At this time, the gaze activity information has reached a state where the activity content becomes narrower than the activity content of the activity information selection command, so further refinement needs to be discontinued. The activity information to be selected is activity information that is one level higher than the activity information that is the gaze activity information at this time, and the activity information is reached by the activity information selection command reaching process by the process of S235 described later. Stored at the end of the information. In this case, in S231, the activity information selection command stored in the variable r is sent to the command issuer (activity execution control unit) indicated by the command issuer locator in the activity information selection command stored in the variable r. Send and finish the process.
[0071]
If the activity content of the gaze activity information (variable t) is not included in the activity content of the activity information selection command (variable r), further lower-level activity information is searched. In S232, it is described in the activity content descriptor of the activity information selection command stored in the variable r from the previous activity information linked by the locator of the activity information (gaze activity information) stored in the variable t. All the activity information having the activity content descriptor of the activity content including the activity content is extracted. Then, the extracted activity information is stored in the list T.
[0072]
In S233, it is determined whether or not the list T is empty. The fact that the list T is empty indicates that the end of the structure of the activity information has been reached. Or, the activity content of the activity information selection command includes the activity content of all the lower-level activity information. In this case, the activity content of the activity information selection command includes the activity content of the gaze activity information Basically, the process of S231 is performed in S230. When the list T is empty, in step S234, the list is stored in the variable r for the command issuer (activity execution control unit) pointed to by the command issuer locator in the activity information selection command stored in the variable r. The activity information selection command is transmitted and the process is terminated.
[0073]
If the list T is not empty, it indicates that there is activity information to be selected in the activity information lower than this activity information. In S235, the activity information (gaze activity information) stored in the variable t is added to the end of the reaching activity information of the activity information selection command stored in the variable r. Then, in S236, duplicate the activity information selection command after the arrival activity information is added by the number of elements of the list T, and set the gaze activity information of each activity information selection command that duplicates each element of the list T, A new activity information selection command is generated. The activity information selection command generated in this way is input again to the activity information selection unit, and the activity information selection unit is recursively processed.
[0074]
Upon receiving the newly generated activity information selection command, the activity information selection unit performs the above-described processing, and performs determination on gaze activity information in the activity information selection command and determination on lower-level activity information. become. Of course, for the activity information outside the scope of responsibility, processing is requested to the activity information selection section in charge of the activity information. In this manner, activity information arranged in a hierarchy can be searched by distributed processing, and activity information to be selected having a description of an activity content descriptor suitable for the indicated activity content can be returned.
[0075]
The process shown in FIG. 12 is performed when the activity information suitable for the activity information selection command is found (S231) or when the link is not found even after tracing the link (S234). It ends by notifying the issuer of the result. As a result of this processing, when the activity information selection command is returned to the request issuer, the activity content held in the gaze activity information is included in the activity content (represented by the activity content descriptor) of the activity information selection command If it is, the activity information at the end of the reaching activity information is the activity information to be selected. If not, the selection has failed.
[0076]
The activity execution control units 42 and 72 perform the process shown in FIG. 6 using the activity information selected by the activity information selection process in the activity information selection units 52 and 53 in this way.
[0077]
In the above description of the operation, the operation in a state where the activity information is stored in the activity information storage units 61 and 81 is shown. The activity information stored in the activity information storage units 61 and 81 can be added, deleted, and changed, and by adding, deleting, and changing the activity information at an arbitrary time, a work process can be arbitrarily added, deleted, It is possible to change. Hereinafter, the process of adding, deleting, and changing work processes will be described.
[0078]
FIG. 13 is a PAD showing an example of the operation in the activity information update unit in the first embodiment of the work process management apparatus of the present invention. The activity information update units 62 and 82 communicate with the client device 11 or 12 via the communication units 37 and 40, receive the activity information in S241, store it in the variable r, and operate the activity information in S242. Is stored in the variable o. In S243, the accepted operation (variable o) is determined. If activity information is to be added, the activity information stored in the variable r is stored in the activity information storage unit in S244. If the accepted operation is deletion of activity information, the activity information stored in the variable r is deleted from the activity information storage unit in S245. Such addition / deletion processing of activity information is performed on the activity information storage unit in the server device provided with the activity information update unit or the corresponding activity information storage unit in another server device, and the update is performed. The process is reflected.
[0079]
Then, the activity information update units 62 and 82 reflect the update of the activity information in the activity information storage units 61 and 81, and then, in S246, are stored in the variable r with respect to the activity information organization units 63 and 83. Activity information and the operation stored in the variable o.
[0080]
When the activity information updating units 62 and 82 update the activity information, the activity information organizing units 63 and 83 perform a process of re-establishing a link related to the updated activity information. By this processing, appropriate reorganization is performed on the updated activity information.
[0081]
FIG. 14 is a PAD showing an example of the operation of the activity information organizing unit in the first embodiment of the work process management apparatus of the present invention. First, in S251 and S252, activity information and an operation on the activity information are accepted. If the operation for the activity information is additional, all the activity information having the activity content suitable for the activity content of the received activity information is selected in S254, and the selected activity information is stored in the list U. The activity information selection units 52 and 53 can be used for selecting the activity information.
[0082]
And the process of S256-S258 is performed with respect to each activity information stored in the list U. First, in S256, it is determined whether or not there is a link destination of the selected activity information. If there is a link destination, the locator included in the selected activity information is added to the locator of the activity information stored in the variable r in S257. . Further, the locator of the selected activity information is changed to point to the activity information stored in the variable r. Thus, the activity information to be added can be inserted according to the inclusion relationship of the activity content.
[0083]
If the operation on the activity information is deletion, all the activity information linked to the received activity information is selected in S259, and the selected activity information is stored in the list U. And the process of S261-S263 is performed with respect to each activity information stored in the list U. First, in S261, it is determined whether or not there is activity information linked by the locator of the activity information stored in the variable r. If linked activity information exists, the locator of the selected activity information is changed to the locator of activity information stored in the variable r in S262, and the activity information stored in the variable r is changed. Change so that it does not become a link destination.
[0084]
If there is no activity information linked by the locator of the activity information stored in the variable r, the locator of the selected activity information is deleted in S263, and the activity information stored in the variable r is deleted. Change so that does not become the link destination.
[0085]
FIG. 15 is an explanatory diagram of a specific example of the organization process when adding activity aggregation information. Assume that activity information is organized according to the activity content as shown in FIG. The activity content of each activity information is activity content 1 to activity content 6. Here, a case is considered where activity aggregation information C having activity content 7 is added. It is assumed that the activity content includes a relationship in which the activity content 7 includes the activity content 5 and 6 and the activity content 1 includes the activity content 7.
[0086]
First, the activity aggregation information A having the activity content descriptor representing the activity content 1 including the activity information 7 represented by the activity content descriptor of the added activity aggregation information C is selected. At this time, as the locator of the activity aggregation information C to be added, the unit activity information B linked by the locator of the activity aggregation information A and the link to the unit activity information C are added. Furthermore, the link to the unit activity information B and the unit activity information C among the locators of the activity aggregation information A is changed to a link to the activity aggregation information C to be added. As a result, it is organized as shown in FIG.
[0087]
FIG. 16 is an explanatory diagram of a specific example of the organization process when adding unit activity information. Assume that activity information is organized according to the activity content as shown in FIG. The activity content of each activity information is activity content 1 to activity content 6. Here, consider a case where unit activity information C having activity content 7 is added. It is assumed that the activity content inclusion relationship is such that the activity content 7 is included in the activity content 3.
[0088]
First, the activity aggregation information C having the activity content descriptor representing the activity content 3 including the activity information 7 represented by the activity content descriptor of the unit activity information C to be added is selected. Then, a link indicating the unit activity information C to be added is added to the locator of the activity aggregation information C. In the case of unit activity information, since the activity information is not linked to the lower level, the processing ends only by adding a link to the unit activity information C with respect to the activity aggregate information C. As a result, it is organized as shown in FIG. The same applies when adding activity procedure definition information.
[0089]
FIG. 17 is an explanatory diagram of a specific example of the organization process when deleting the activity aggregation information. Assume that activity information is organized according to the activity content as shown in FIG. Here, consider a case where the activity aggregation information C is deleted. First, the activity information that links the activity aggregation information C to be deleted is selected. In this example, the activity aggregation information A uses the activity aggregation information C as a link destination. In this case, the locator indicating the link of the activity aggregation information A to the activity aggregation information C is changed to the locator indicating the unit activity information B to which the activity aggregation information C is linked and the link to the unit activity information C. As a result, the link from the activity aggregation information A to the activity aggregation information C is deleted, and the unit activity information B and the unit activity information C are directly linked from the activity aggregation information A to be organized as shown in FIG. The
[0090]
FIG. 18 is an explanatory diagram of a specific example of the organization process when deleting unit activity information. Assume that activity information is organized according to the activity content as shown in FIG. Here, consider a case where the unit activity information C is deleted. First, the activity information that links the unit activity information C to be deleted is selected. In this example, the activity aggregation information C uses the unit activity information C as the link destination. In this case, since there is no link destination in the unit activity information C, it is only necessary to delete the link to the unit activity information C of the activity aggregation information C. As a result, it is organized as shown in FIG.
[0091]
The activity information changing process can be performed by combining the activity information adding process and the deleting process described above.
[0092]
FIG. 19 is a system configuration diagram including the second embodiment of the work process management apparatus of the present invention. In the figure, the same parts as those in FIG. 29 and 30 are server devices, 91 and 94 are communication units, 92 is an activity information clustering unit, 93 is an activity aggregation information generation unit, 95 is a co-occurrence activity detection unit, and 96 is an activity procedure definition information generation unit. The server device 29 includes an activity information clustering unit 92 and an activity aggregation information generation unit 93, and further performs a cooperative operation with other client devices and server devices via the communication unit 91. The server device 30 includes a co-occurrence activity detection unit 95 and an activity procedure definition information generation unit 96, and further performs a cooperative operation with other client devices and server devices via the communication unit 94.
[0093]
The activity information clustering unit 92 periodically refers to the activity information storage units 61 and 81 on the network 1 and collects the activity information stored in them. For collection, an arbitrary method such as a method of following a logical link between activity information and a method of simply acquiring the activity information stored in each of the activity information storage units 61 and 81 from the activity information storage units 61 and 81 is used. Applicable. Then, the activity information clustering unit 92 performs clustering of each activity information based on the similarity of the activity content descriptors possessed by each of the collected activity information, and sends the result to the activity aggregation information generating unit 93. Various similarity evaluation criteria for clustering may be set. For example, it is possible to focus on a specific activity and divide it into those that do not include it, set some typical activities, and collect the activity information included in each of them. Furthermore, although only one activity information clustering unit 92 is shown in FIG. 19, a plurality of activity information clustering units are provided, and different evaluation criteria for similarity are set for each activity information clustering unit. Clustering can also be used to provide diversity in processing.
[0094]
The activity aggregation information generation unit 93 has an activity content descriptor including an activity content descriptor held by the activity information included in the cluster for each cluster delivered from the activity information clustering unit 92. Generate aggregate information. The generated activity aggregation information may be registered using, for example, the activity information update units 62 and 82 (and the activity information organization units 63 and 83).
[0095]
FIG. 20 is a conceptual diagram illustrating an example of generation and addition processing of activity aggregation information. Assume that activity information is organized according to the activity content as shown in FIG. The activity content of each activity information is activity content 2 to activity content 7. It is assumed that, for example, the activity aggregation information B and the activity aggregation information C surrounded by a broken line are classified into one cluster by the clustering process in the activity information clustering unit 92. The activity aggregation information generation unit 93 receives the result of this clustering, and includes an activity content descriptor of activity content 1 including activity content 2 and 3 of activity content descriptors of the activity aggregation information B and activity aggregation information C. Aggregated information A is generated.
[0096]
Then, by adding the activity aggregation information A generated by the activity aggregation information generating unit 93 by the processing of the activity information updating units 62 and 82 and the activity information organizing units 63 and 83 described above, FIG. Organized activity information is obtained as shown in
[0097]
In this way, the work process management apparatus can autonomously generate and add activity aggregation information. This allows new indexing to continue to be added to existing activity information, increasing the freedom of activity users and activity providers in selecting activities and improving convenience. be able to.
[0098]
The co-occurrence activity detection unit 95 collects the activity execution commands sent from the activity execution receiving units 41 and 71, and has a co-occurrence of activity content descriptors that frequently appear in the activity execution commands. Detect as. Then, the detected activity content descriptor set is sent to the activity procedure definition information generation unit 96. In order for the co-occurrence activity detection unit 95 to collect the activity execution commands sent from the activity execution receiving units 41 and 71, for example, the activity execution receiving units 41 and 71 may use the generated activity execution commands as the activity execution control unit 42, 72 and to the co-occurrence activity detection unit 95 via the communication units 34, 39, and 94.
[0099]
FIG. 21 is a conceptual diagram illustrating an example of a co-occurrence activity detection operation in the co-occurrence activity detection unit. In the example illustrated in FIG. 21, one activity execution command is collected from the activity execution receiving unit 41 and two activity execution commands are collected from the activity execution receiving unit 71. When the activity content descriptors of these collected activity execution commands are examined, activity contents indicating continuous activities of U, V, and W are described. The co-occurrence activity detection unit 95 detects the activity contents U, V, and W as having a co-occurrence relationship, and sends the set of activity descriptors to the activity procedure definition information generation unit 96.
[0100]
The activity procedure definition information generation unit 96 eliminates the constraint relationship of each activity content descriptor with respect to the set of activity content descriptors passed from the co-occurrence activity detection unit 95, and obtains an appropriate activity procedure descriptor. In addition, an activity content descriptor summarizing each activity content descriptor is generated. Then, activity procedure definition information is generated based on the generated activity procedure descriptor and activity content descriptor. What is necessary is just to register the produced | generated activity procedure definition information, for example using the activity information update parts 62 and 82 (and activity information organization parts 63 and 83).
[0101]
FIG. 22 is a conceptual diagram illustrating an example of an operation procedure definition information generation operation in the activity procedure definition information generation unit. Here, as an example, it is assumed that the activity unit information U, activity aggregation information V, and activity aggregation information W surrounded by a broken line are detected by the co-occurrence activity detection unit 95 as having a co-occurrence relationship. The activity procedure definition information generation unit 96 performs the activity procedure of the activity unit information U, the activity aggregation information V, and the activity aggregation information W in the co-occurrence relationship (for example, U → V → W as shown by the balloon in FIG. 22). Generate an activity procedure descriptor indicating (in order). Further, an activity content descriptor (activity content 3) including these activity contents is generated. Further, a locator indicating a link to the activity unit information U, the activity aggregation information V, and the activity aggregation information W is generated, and the activity procedure definition information C is generated. The activity procedure definition information C may be sent to the activity information update unit 62 or 82 to request addition. In this example, activity procedure definition information C is added below the activity aggregation information A.
[0102]
In this way, activity information having a co-occurrence relationship is extracted from the activity contents to be executed, and new activity procedure definition information is generated and automatically registered. As a result, even in different activities, for example, the activities performed in a set can be automatically reusable, and the convenience for the user can be improved.
[0103]
Next, a third embodiment of the work process management apparatus of the present invention will be described. The system configuration including the third embodiment is the same as that of the first and second embodiments shown in FIGS. However, it differs in that each activity information storage unit 61, 81 stores disclosure information and cooperation information. In addition, processing for these pieces of information is added to each of the activity execution control units 42 and 72.
[0104]
FIG. 23 is an explanatory diagram showing an example of the data structure of the linkage information in the third embodiment of the work process management apparatus of the present invention. The linkage information represents permission / non-permission conditions for activity information and activity information. Therefore, this cooperation information is added to each activity information and used. Each record in the data structure of the linkage information shown in FIG. 23 includes “contracted activity information” and “routing conditions”. “Contracted activity information” is information indicating whether or not it has been agreed in advance to deliver work as a pre-process or post-process of the activity information to which the cooperation information is added. The “routing condition” specifies various conditions for handing over work, and when this condition is satisfied, the activity information becomes a selection candidate. In this condition, in addition to the work content itself, for example, a condition related to the user who issued the work can be specified. For example, it is possible to perform control such that selection is made only for work issued by a nearby user on the network 1.
[0105]
FIG. 24 is an explanatory diagram of an example of restrictions on dynamic selection based on cooperation information. In the figure, as cooperation information, activity information in a contract relationship is shown as a list. Consider a case where a work process defined in the activity procedure definition information C is executed. In the activity procedure descriptor of the activity procedure definition information C, as shown in the balloon, after the unit activity information U is executed, the activity aggregation information V and the activity aggregation information W are executed, and then the unit activity information X is executed. The procedure to be performed is described, and each activity is executed in this order.
[0106]
After the unit activity information U is executed, the operation aggregation information V is executed. The activity aggregation information V is linked to the activity procedure definition information V1 and the unit activity information V2, and one of them is executed. At this time, the activity procedure definition information V1 is registered in the linkage information of the activity unit information U, but not registered in the unit activity information V2. Moreover, although the activity procedure definition information V1 is registered also in the cooperation information of the unit activity information X which is a subsequent process, the unit activity information V2 is not registered. Further, unit activity information U and unit activity information X of the previous process are registered in the linkage information of the activity procedure definition information V1. Therefore, the unit activity information V2 is not selected, and only the activity procedure definition information V1 is selected and executed. If the activity fails in the activity procedure definition information V1, the unit activity information V2 is not a substitute activity, and the activity of the activity aggregation information V fails.
[0107]
In the activity aggregation information W, there are unit activity information W1 and W2 at a lower level. These unit activity information W1 and W2 are both registered in the cooperation information of the unit activity information U which is the preceding process and the cooperation information of the unit activity information X which is the subsequent process. Also, unit activity information U and unit activity information X are registered in the link information of unit activity information W1 and W2. Therefore, one of the unit activity information W1 and W2 is selected and executed, and the other is executed when one of the unit activities information W1 and W2 fails as an alternative activity.
[0108]
In the unit activity information X, the activity procedure definition information V1 is registered among the activity procedure definition information V1 and the unit activity information V2 existing below the activity aggregation information V of the previous process. Therefore, the activity is received in response to the activity result in the activity procedure definition information V1, but the activity result of the unit activity information V2 is not accepted. The unit activity information W1 and the unit activity information W2 existing in the lower level of the activity aggregation information W of the other previous process are both registered in the link information, so that any activity can be performed as a subsequent process. The activity of the unit activity information X can be performed.
[0109]
FIG. 25 is an explanatory diagram showing an example of the data structure of the disclosure information in the third embodiment of the work process management apparatus of the present invention. The disclosure information is information indicating permission / non-permission of disclosure of the activity information to the user. This disclosure information is also used by being added to each activity information, similarly to the above-described linkage information. Each record in the data structure of the disclosure information shown in FIG. 25 includes a disclosure permission condition. In this disclosure permission condition, a condition of a user who issues a job, a condition of a department in which the job is performed, and the like can be specified. For example, only when the disclosure permission condition is satisfied, the content of the activity information, for example, the activity procedure detailed by the activity procedure definition information is disclosed to the user who issued the job. As a result, for example, when the work of a user outside the department or outside the company is performed, it becomes possible to respond to a request for hiding the workflow as know-how.
[0110]
FIG. 26 is an explanatory diagram of a specific example of display restriction based on disclosure information. In this example, disclosure information is added to the activity procedure definition information C. The disclosure information includes a disclosure permission condition for permitting disclosure to users in departments A, B, and C. In this case, when the user of the department A refers to the activity procedure definition information C, the work process described in the activity procedure descriptor can be displayed. However, even if the user of department X refers to the activity procedure definition information C, the work process described in the activity procedure descriptor is not displayed. In this way, details of the contents can be kept secret to users who are not permitted by the disclosure information. Here, a user who is permitted to disclose is registered in the disclosure information, but conversely, a user who is not permitted to disclose may be registered.
[0111]
【The invention's effect】
As is apparent from the above description, according to the present invention, work process information can be distributed and managed in correspondence with a distributed environment, and used in a dynamic environment where a large number of large-scale activities appear and disappear. can do. In distributed management of work process information, activity information is organized and managed by the inclusion relationship of the activity contents, so that management and use are facilitated even in a large scale. Furthermore, since activities are executed by searching for organized activity information in this way, it is possible to easily execute alternative activities, and cope with unintended failures and work process changes in advance. And can respond flexibly to various work processes. According to the present invention, besides these, there are various effects as described above.
[Brief description of the drawings]
FIG. 1 is a system configuration diagram including a first embodiment of a work process management apparatus of the present invention.
FIG. 2 is an explanatory diagram showing an example of the data structure of unit activity information, activity aggregation information, and activity procedure definition information in the work process management apparatus of the present invention.
FIG. 3 is an explanatory diagram showing an example of a hierarchical structure of activity aggregation information and an arrangement in a server device in the work process management device of the present invention.
FIG. 4 is an explanatory diagram of another example of a hierarchical structure of activity aggregation information and arrangement in a server device in the work process management device of the present invention.
FIG. 5 is an explanatory diagram showing an example of a data structure of an activity execution command in the work process management apparatus of the present invention.
FIG. 6 is a PAD diagram showing an outline of an example of the operation of the activity execution control unit in the first embodiment of the work process management apparatus of the present invention.
FIG. 7 is a conceptual diagram illustrating an example of a method for selecting unit activity information or activity procedure definition information through dialogue with a user.
FIG. 8 is a conceptual diagram illustrating an example of a method for selecting unit activity information or activity procedure definition information in a priority order determined by an activity execution control unit.
FIG. 9 is a conceptual diagram showing an example of execution of an activity.
FIG. 10 is an explanatory diagram of an example of a work process expression based on activity procedure definition information.
FIG. 11 is an explanatory diagram showing an example of a data structure of an activity information selection command in the work process management apparatus of the present invention.
FIG. 12 is a PAD showing an example of the operation of the activity information selection unit in the first embodiment of the work process management apparatus of the present invention.
FIG. 13 is a PAD showing an example of the operation in the activity information update unit in the first embodiment of the work process management apparatus of the present invention.
FIG. 14 is a PAD showing an example of the operation of the activity information organizing unit in the first embodiment of the work process management apparatus of the present invention.
FIG. 15 is an explanatory diagram of a specific example of organization processing when adding activity aggregation information;
FIG. 16 is an explanatory diagram of a specific example of organization processing when adding unit activity information.
FIG. 17 is an explanatory diagram of a specific example of organization processing when activity aggregation information is deleted.
FIG. 18 is an explanatory diagram of a specific example of organization processing when unit activity information is deleted.
FIG. 19 is a system configuration diagram including a second embodiment of a work process management apparatus according to the present invention;
FIG. 20 is a conceptual diagram illustrating an example of generation and addition processing of activity aggregation information.
FIG. 21 is a conceptual diagram illustrating an example of a co-occurrence activity detection operation in a co-occurrence activity detection unit;
FIG. 22 is a conceptual diagram illustrating an example of an operation procedure definition information generation operation in the activity procedure definition information generation unit.
FIG. 23 is an explanatory diagram showing an example of a data structure of linkage information in the third embodiment of the work process management apparatus of the present invention;
FIG. 24 is an explanatory diagram of an example of restrictions on dynamic selection based on cooperation information;
FIG. 25 is an explanatory diagram showing an example of a data structure of disclosure information in the third embodiment of the work process management apparatus of the present invention;
FIG. 26 is an explanatory diagram of a specific example of display restriction based on disclosure information.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Network, 11, 12 ... Client apparatus, 21-30 ... Server apparatus, 31-40 ... Communication part, 41, 71 ... Activity execution reception part, 42, 72 ... Activity execution control part, 43, 73 ... Activity procedure execution Control unit 51, 74 ... Activity execution unit, 52, 53 ... Activity information selection unit, 61, 81 ... Activity information storage unit, 62, 82 ... Activity information update unit, 63, 83 ... Activity information organization unit, 91, 94 ... Communication unit, 92 ... Activity information clustering unit, 93 ... Activity aggregation information generation unit, 95 ... Co-occurrence activity detection unit, 96 ... Activity procedure definition information generation unit.

Claims (10)

複数のサーバ装置およびクライアント装置がネットワークで結ばれたネットワーク情報システム上で構成されたワークプロセス管理装置において、活動情報記憶手段と、活動実行受付手段と、活動実行制御手段と、活動実行手段と、活動手順実行制御手段を各1以上備え、前記活動情報記憶手段は、ワークプロセスのステップを表す単位活動情報とワークプロセス定義を表す活動手順定義情報とを活動内容の包含関係に従って組織化する活動集約情報により関係付けて管理するものであり、前記活動実行受付手段は、前記クライアント装置から活動の実行要求を受け付け該実行要求に対応する活動実行指令を生成して前記活動実行制御手段に入力するものであり、前記活動実行制御手段は、前記活動実行指令を受け取り組織化された前記活動集約情報の包含関係に従って前記単位活動情報または前記活動手順定義情報を選択し選択した前記単位活動情報または前記活動手順定義情報を前記活動実行指令に実行対象として含めて前記活動実行手段または前記活動手順実行制御手段に渡し、また前記活動実行手段に渡した前記活動実行指令に対応する活動の実行結果の成否情報を含む活動実行結果通知を受け取って該活動実行結果通知により活動の失敗を検出した場合に、受け取っている前記活動実行指令に対応する前記活動集約情報に含まれかつ失敗していない前記単位活動情報または前記活動手順定義情報が存在していればその中から失敗を検出した活動の代替となる活動情報を予め定められた優先度に応じて選択し、選択した活動情報を当該実行活動情報として再試行を行ない、代替となる活動情報が選択できない場合には当該活動実行指令を入力した活動実行受付手段または活動手順実行制御手段に対して活動の失敗情報を含む活動実行結果通知を通知するものであり、前記活動実行手段は、前記活動実行指令を受け取り活動の実行を要求するユーザと活動の実行を担当するユーザまたは装置との間に接続を確立して活動を行わせ、また入力された前記活動実行指令に対応する活動の実行結果の成否情報を含む前記活動実行結果通知を当該活動実行指令を入力した活動制御手段または活動手順実行制御手段に対して通知するものであり、前記活動手順実行制御手段は、ワークプロセスのステップが単位活動情報であれば前記活動実行手段に活動を行わせ、また前記活動手順定義情報または前記活動集約情報であればそれぞれ再び前記活動手順実行制御手段または前記活動実行制御手段により処理を行わせてワークプロセス定義を実行し、また前記活動実行結果通知により活動の失敗を検出した場合には、当該活動に対応する活動手順記述子を含む活動実行指令について該活動実行指令を入力した活動実行受付手段または活動手順実行制御手段に対して活動の失敗情報を含む活動実行結果通知を通知するものであることを特徴とするワークプロセス管理装置。In a work process management device configured on a network information system in which a plurality of server devices and client devices are connected via a network, activity information storage means, activity execution reception means, activity execution control means, activity execution means, The activity information storage means comprises one or more activity procedure execution control means, and the activity information storage means organizes unit activity information representing a work process step and activity procedure definition information representing a work process definition in accordance with an activity content inclusion relationship. The activity execution accepting unit receives an activity execution request from the client device, generates an activity execution command corresponding to the execution request, and inputs the activity execution command to the activity execution control unit The activity execution control means receives the activity execution command and organizes the activity The unit activity information or the activity procedure definition information is selected according to the inclusion relation of about information, and the selected unit activity information or the activity procedure definition information is included in the activity execution command as an execution target, and the activity execution means or the activity procedure When an activity execution result notification including success / failure information of the execution result of the activity corresponding to the activity execution command passed to the activity execution unit is received and failure of the activity is detected by the activity execution result notification If the unit activity information or the activity procedure definition information that is included in the activity aggregation information corresponding to the received activity execution command and has not failed exists , the replacement of the activity in which the failure is detected from the unit activity information or the activity procedure definition information become selected in response to the activity information predetermined priority, performs retry the selected activity information as the execution activity information, When the activity information to be replaced cannot be selected, an activity execution result notification including activity failure information is notified to the activity execution accepting means or the activity procedure execution control means that has input the activity execution command, and the activity The execution means establishes a connection between a user who receives the activity execution command and requests execution of the activity and a user or a device in charge of the execution of the activity, and performs the activity. The activity execution result notification including the success / failure information of the execution result of the corresponding activity is notified to the activity control means or the activity procedure execution control means that has input the activity execution command, and the activity procedure execution control means includes: If the step of the work process is unit activity information, the activity execution means performs the activity, and if the step of the work process is the activity procedure definition information or the activity aggregation information, When each of the activity procedure execution control means or the activity execution control means performs processing again to execute a work process definition, and when a failure of the activity is detected by the activity execution result notification, the corresponding activity is handled. The activity execution command including the activity procedure descriptor is characterized in that an activity execution result notification including activity failure information is notified to the activity execution receiving unit or the activity procedure execution control unit that has input the activity execution command. Work process management device. 複数のサーバ装置および複数のクライアント装置がネットワークで結ばれたネットワーク情報システム上に構築されたワークプロセス管理装置において、活動情報記憶手段と、活動実行受付手段と、活動実行制御手段と、活動実行手段と、活動手順実行制御手段を各1以上備え、前記活動情報記憶手段は、単位活動情報と活動集約情報と活動手順定義情報を記憶し、前記単位活動情報は、前記ネットワーク上の前記クライアント装置または前記サーバ装置へのロケータと、当該ロケータの指示する装置が提供する活動の内容を表す活動内容記述子とを含み、前記活動集約情報は、前記単位活動情報または前記活動集約情報または前記活動手順定義情報のいずれかの活動情報への1以上のリンクロケータと、各々の前記リンクロケータの指示する前記活動情報がそれぞれ含んでいる前記活動内容記述子で表される活動の内容を全て包含する活動の内容を表す活動内容記述子を含み、前記活動手順定義情報は、前記単位活動情報または前記活動集約情報または前記活動手順定義情報のいずれかの活動情報への1以上の活動手順ロケータと、それぞれの前記活動手順ロケータが指示する前記活動情報間に渡る一連の手順を定義する活動手順記述子と、該活動手順記述子による活動の内容を表す活動内容記述子とを含んでおり、前記活動実行受付手段は、前記クライアント装置から実行が要求される活動の内容を表す活動内容記述子を受け付け、該活動内容記述子と該クライアント装置を指示する活動実行指令発行元ロケータとを含む活動実行指令を生成し、前記活動実行制御手段に入力するものであり、前記活動実行制御手段は、前記活動実行指令を受け付け、該活動実行指令に含まれる前記活動内容記述子に適合する活動内容記述子を持つ前記単位活動情報または前記活動手順定義情報を、前記活動情報記憶手段に記憶されている活動集約情報が含むリンクロケータを辿ることで選択し、選択した前記単位活動情報または前記活動手順定義情報を実行活動情報として当該活動実行指令に対して追加し、また単位活動情報を選択した場合には前記活動実行手段に対して当該活動実行指令を入力し、活動手順定義情報を選択した場合には活動手順実行制御手段に対して当該活動実行指令を入力し、また前記活動実行手段に渡した前記活動実行指令に対応する活動の実行結果の成否情報を含む活動実行結果通知を受け取って該活動実行結果通知により活動の失敗を検出した場合に、受け取っている前記活動実行指令に対応する前記活動集約情報に含まれかつ失敗していない前記単位活動情報または前記活動手順定義情報が存在していればその中から失敗を検出した活動の代替となる活動情報を予め定められた優先度に応じて選択し、選択した活動情報当該実行活動情報として再試行を行ない、代替となる活動情報が選択できない場合には当該活動実行指令を入力した活動実行受付手段または活動手順実行制御手段に対して活動の失敗情報を含む活動実行結果通知を通知するものであり、前記活動実行手段は、前記活動実行指令を受け付け、該活動実行指令に実行活動情報として含まれる単位活動情報が指示するサーバ装置またはクライアント装置と当該活動実行指令に含まれる活動実行指令発行元ロケータの指示するクライアント装置との間で通信の接続を確立して活動の実行を可能とし、また入力された前記活動実行指令に対応する活動の実行結果の成否情報を含む前記活動実行結果通知を当該活動実行指令を入力した活動制御手段または活動手順実行制御手段に対して通知するものであり、前記活動手順実行制御手段は、前記活動実行指令を受け付け、該活動実行指令に実行活動情報として含まれる活動手順定義情報に含まれている活動手順記述子に従って、当該活動手順定義情報に含まれる活動手順ロケータが指示する活動情報を取得し、当該活動情報が単位活動情報または活動手順定義情報である場合には当該活動情報を実行活動情報として含みさらに当該活動実行指令に含まれる活動実行指令発行元ロケータを含む新たな活動実行指令を生成して該新たな活動実行指令をそれぞれ前記活動実行手段または前記活動手順実行手段に入力し、当該活動情報が活動集約情報である場合には当該活動集約情報に含まれる活動内容記述子を含みさらに当該活動実行指令に含まれる活動実行指令発行元ロケータを含む新たな活動実行指令を生成して該新たな活動実行指令を前記活動実行制御手段に入力し、また前記活動実行結果通知により活動の失敗を検出した場合には、当該活動に対応する活動手順記述子を含む活動実行指令について該活動実行指令を入力した活動実行受付手段または活動手順実行制御手段に対して活動の失敗情報を含む活動実行結果通知を通知するものであることを特徴とするワークプロセス管理装置。In a work process management apparatus constructed on a network information system in which a plurality of server devices and a plurality of client devices are connected by a network, activity information storage means, activity execution reception means, activity execution control means, and activity execution means And one or more activity procedure execution control means, wherein the activity information storage means stores unit activity information, activity aggregation information, and activity procedure definition information, and the unit activity information is the client device on the network or A locator for the server device, and an activity content descriptor representing the content of an activity provided by the device indicated by the locator, wherein the activity aggregation information is the unit activity information, the activity aggregation information, or the activity procedure definition One or more link locators to any activity information in the information and the indication of each said link locator An activity content descriptor representing the content of the activity including all the content of the activity represented by the activity content descriptor each included in the activity information, and the activity procedure definition information includes the unit activity information or the activity One or more activity procedure locators for the activity information of either aggregated information or the activity procedure definition information, and an activity procedure descriptor defining a series of procedures between the activity information indicated by each of the activity procedure locators An activity content descriptor representing the content of the activity according to the activity procedure descriptor, and the activity execution accepting unit accepts an activity content descriptor representing the content of the activity requested to be executed from the client device, An activity execution command including the activity content descriptor and an activity execution command issuing source locator that indicates the client device is generated and input to the activity execution control means. The activity execution control means receives the activity execution command, and receives the unit activity information or the activity procedure definition information having an activity content descriptor that matches the activity content descriptor included in the activity execution command. , Selecting by tracing the link locator included in the activity aggregate information stored in the activity information storage means, and adding the selected unit activity information or the activity procedure definition information as execution activity information to the activity execution command When the unit activity information is selected, the activity execution command is input to the activity execution means. When the activity procedure definition information is selected, the activity execution command is input to the activity procedure execution control means. An activity execution result notification including the success / failure information of the execution result of the activity corresponding to the activity execution command input and passed to the activity execution means is received and the activity execution is performed If an activity failure is detected by the result notification , if the unit activity information or the activity procedure definition information that is included in the activity aggregation information corresponding to the received activity execution command and has not failed exists. When the activity information that will replace the activity that detected the failure is selected according to the predetermined priority , the selected activity information is retried as the execution activity information, and the alternative activity information cannot be selected The activity execution receiving unit or the activity procedure execution control unit that inputs the activity execution command is notified of an activity execution result notification including failure information of the activity, and the activity execution unit outputs the activity execution command. Accepted and included in the activity execution command with the server device or client device indicated by the unit activity information included in the activity execution command as execution activity information The communication execution is established by establishing a communication connection with the client device instructed by the activity execution command issuer locator, and includes success / failure information of the execution result of the activity corresponding to the input activity execution command The activity execution result notification is notified to the activity control means or the activity procedure execution control means that has input the activity execution command, and the activity procedure execution control means accepts the activity execution command and adds the activity execution command to the activity execution command. In accordance with the activity procedure descriptor included in the activity procedure definition information included as the execution activity information, the activity information indicated by the activity procedure locator included in the activity procedure definition information is acquired, and the activity information is unit activity information or activity. In the case of procedure definition information, the activity execution command issuer location that includes the activity information as execution activity information and is included in the activity execution command. If the activity information is activity aggregation information, the new activity execution command is generated and the new activity execution command is input to the activity execution means or the activity procedure execution means. Generating a new activity execution command including the activity content descriptor included in the activity execution command and including the activity execution command issuing source locator included in the activity execution command, and inputting the new activity execution command to the activity execution control means, Further, when an activity failure is detected by the activity execution result notification, the activity execution reception means or the activity procedure execution control means that has input the activity execution command for the activity execution command including the activity procedure descriptor corresponding to the activity. A work process management apparatus for notifying an activity execution result notification including failure information of an activity. さらに活動情報選択手段を1以上備え、前記活動実行制御手段は、入力された活動実行指令に含まれる活動内容記述子に適合する活動内容記述子を含む単位活動情報または活動手順定義情報を選択する際に、当該活動実行制御手段を指示する活動情報選択指令発行元ロケータと、当該入力された活動実行指令に含まれる活動内容記述子とを含む活動情報選択指令を生成し、前記活動情報選択手段に入力して前記活動情報選択手段により返される活動情報を用いて処理を行ない、前記活動情報選択手段は、前記活動情報選択指令の入力を受け付け、担当範囲の前記活動情報記憶手段上の活動集約情報のみについて該活動集約情報が含むリンクロケータを辿り、当該リンクロケータが担当範囲外の活動情報記憶手段に記憶されている前記単位活動情報または前記活動集約情報または前記活動手順定義情報のいずれかの活動情報を指示している場合には、対応する活動情報記憶手段を担当範囲とする活動情報選択手段に対して当該活動情報選択指令を入力し、また当該活動情報選択指令に含まれる活動内容記述子に適合する活動内容記述子を含んだ前記単位活動情報または前記活動集約情報または前記活動手順定義情報のいずれかの活動情報が見出された場合には当該活動情報選択指令に含まれる活動情報選択指令発行元ロケータが指示する当該活動情報選択指令の発行元に対して見出された当該活動情報を返すことを特徴とする請求項1または請求項2に記載のワークプロセス管理装置。  In addition, the activity execution control means further includes unit activity information or activity procedure definition information including an activity content descriptor that matches the activity content descriptor included in the input activity execution command. And generating an activity information selection command including an activity information selection command issuing source locator for instructing the activity execution control means and an activity content descriptor included in the input activity execution command. The activity information selection means accepts the input of the activity information selection command and collects the activity on the activity information storage means in the area in charge. The unit activity which traces the link locator included in the activity aggregation information only for information, and the link locator is stored in the activity information storage means outside the scope of charge If the activity information of the information or the activity aggregation information or the activity procedure definition information is instructed, the activity information selection command is sent to the activity information selection means whose scope is the corresponding activity information storage means The activity information of the unit activity information, the activity aggregation information, or the activity procedure definition information including the activity content descriptor that matches the activity content descriptor included in the activity information selection command is viewed. If issued, the activity information found for the issuer of the activity information selection command instructed by the activity information selection command issuer locator included in the activity information selection command is returned. Item 3. The work process management apparatus according to item 1 or 2. さらに、前記クライアント装置から送られる要求に従って単位活動情報または活動集約情報または活動手順定義情報を前記活動情報記憶手段上で追加、削除、変更する活動情報更新手段と、前記活動情報更新手段が前記活動情報記憶手段上の単位活動情報または活動集約情報または活動手順定義情報を追加、削除、変更した場合に全ての活動情報記憶手段に記憶されているどの単位活動情報および活動手順定義情報も少なくとも一以上の活動集約情報からリンクロケータにより指示され、なおかつ、どの活動集約情報に含まれている活動内容記述子も、当該活動集約情報に含まれているリンクロケータが指示している活動情報に含まれている活動内容記述子が表す活動の内容を包含する活動の内容を表すように、活動集約情報間のリンクロケータを再構成する活動情報組織化手段をそれぞれ1以上備えていることを特徴とする請求項1ないし請求項3のいずれか1項に記載のワークプロセス管理装置。  Furthermore, activity information update means for adding, deleting, and changing unit activity information, activity aggregate information, or activity procedure definition information on the activity information storage means according to a request sent from the client device, and the activity information update means includes the activity information At least one or more unit activity information and activity procedure definition information stored in all activity information storage means when unit activity information or activity aggregate information or activity procedure definition information on the information storage means is added, deleted or changed The activity content descriptor indicated by the link locator included in any activity aggregation information is included in any activity aggregation information. The link location between the activity aggregation information so that the activity content including the activity content represented by the activity content descriptor Work process management apparatus according to any one of claims 1 to 3, characterized in that it comprises a work information organization means for reconstructing the data 1 or more, respectively. さらに、1以上の前記活動情報記憶手段に記憶されている前記活動情報を収集し該活動情報が保持している活動内容の類似性に基づくクラスタリングを行なう活動情報クラスタリング手段と、前記活動情報クラスタリング手段が形成するクラスタ毎に新たな活動集約情報を生成して前記活動情報更新手段により当該活動集約情報を登録する活動集約情報生成手段をそれぞれ1以上備えていることを特徴とする請求項4に記載のワークプロセス管理装置。  Further, activity information clustering means for collecting the activity information stored in one or more of the activity information storage means and performing clustering based on similarity of activity contents held by the activity information, and the activity information clustering means 5. The apparatus according to claim 4, further comprising at least one activity aggregation information generating unit that generates new activity aggregation information for each cluster formed by the group and registers the activity aggregation information by the activity information update unit. Work process management device. さらに、前記クライアント装置から送られる要求に従って単位活動情報または活動集約情報または活動手順定義情報を前記活動情報記憶手段上で追加、削除、変更する活動情報更新手段と、前記活動情報更新手段が前記活動情報記憶手段上の活動情報を追加、削除、変更した場合に全ての活動情報記憶手段に記憶されているどの単位活動情報および活動手順定義情報も少なくとも一以上の活動集約情報からリンクロケータにより指示され、なおかつ、どの活動集約情報に含まれている活動内容記述子も、当該活動集約情報に含まれているリンクロケータが指示している活動情報に含まれている活動内容記述子が表す活動の内容を包含する活動の内容を表すように、活動集約情報間のリンクロケータを再構成する活動情報組織化手段と、前記活動実行受付手段が出力する活動実行指令を収集し同時に出現する頻度の高い活動内容を検出する共起活動検出手段と、前記共起活動検出手段により検出された同時に出現する頻度の高い活動内容を持つ1以上の活動情報を前記活動情報選択手段により選択し該活動情報の各々を指示する活動手順ロケータと活動手順記述子と活動内容記述子とを含む活動手順定義情報を新たに生成し前記活動情報更新手段により当該活動手順定義情報を登録する活動手順定義情報生成手段とをそれぞれ1以上備えたことを特徴とする請求項3に記載のワークプロセス管理装置。  Furthermore, activity information update means for adding, deleting, and changing unit activity information, activity aggregate information, or activity procedure definition information on the activity information storage means according to a request sent from the client device, and the activity information update means includes the activity information When the activity information on the information storage means is added, deleted, or changed, any unit activity information and activity procedure definition information stored in all the activity information storage means is instructed by the link locator from at least one activity aggregate information. In addition, the activity content descriptor included in any activity aggregation information is the activity content represented by the activity content descriptor included in the activity information indicated by the link locator included in the activity aggregation information. Activity information organizing means for reconfiguring a link locator between activity aggregated information so as to represent the contents of activities including Collecting activity execution commands output by the execution accepting means, and detecting co-occurrence activity detecting means for detecting activity contents that frequently appear at the same time, and activity contents frequently appearing simultaneously detected by the co-occurrence activity detecting means One or more pieces of activity information are selected by the activity information selection means, and activity procedure definition information including an activity procedure locator, an activity procedure descriptor and an activity content descriptor for indicating each of the activity information is newly generated and the activity information is generated. 4. The work process management apparatus according to claim 3, further comprising at least one activity procedure definition information generating unit for registering the activity procedure definition information by the updating unit. 前記活動情報記憶手段は、さらに、前記単位活動情報または前記活動集約情報または前記活動手順定義情報を含む活動情報および該活動情報間に対する許可または不許可の条件を表す連携情報を記憶し、前記活動実行制御手段は、前記単位活動情報または前記活動手順定義情報を得るに際して前記連携情報を参照して連携可能な条件が成立した単位活動情報または活動手順定義情報のみを選択することを特徴とする請求項1ないし請求項6のいずれか1項に記載のワークプロセス管理装置。  The activity information storage means further stores activity information including the unit activity information, the activity aggregation information, or the activity procedure definition information, and linkage information representing permission or non-permission conditions for the activity information, and the activity The execution control means selects only unit activity information or activity procedure definition information for which a condition for enabling cooperation is established with reference to the linkage information when obtaining the unit activity information or the activity procedure definition information. The work process management apparatus according to any one of claims 1 to 6. 前記活動情報記憶手段は、さらに、前記単位活動情報または前記活動集約情報または前記活動手順定義情報を含む活動情報の開示の許可または不許可の条件を表す開示情報を記憶し、前記活動実行制御手段は、前記活動情報に含まれるロケータによって示される活動情報について前記開示情報を参照して開示許可の条件が成立した活動情報について開示することを特徴とする請求項1ないし請求項7のいずれか1項に記載のワークプロセス管理装置。  The activity information storage means further stores disclosure information indicating permission conditions or disapproval conditions of activity information including the unit activity information, the activity aggregation information, or the activity procedure definition information, and the activity execution control means 8. The activity information indicated by the locator included in the activity information is disclosed with respect to the activity information for which a disclosure permission condition is satisfied with reference to the disclosure information. Work process management device according to item. 複数のサーバ装置およびクライアント装置がネットワークで結ばれたネットワーク情報システム上で構成されたワークプロセスの管理を行うワークプロセス管理方法において、ワークプロセスのステップを表す単位活動情報とワークプロセス定義を表す活動手順定義情報とを活動情報記憶手段が活動内容の包含関係に従って組織化する活動集約情報により関係付けて管理しており、前記クライアント装置から活動の実行要求を活動実行受付手段が受け付け、該実行要求に対応する活動実行指令を生成して活動実行制御手段に入力し、前記活動実行指令を前記活動実行制御手段が受け取り、組織化された前記活動集約情報の包含関係に従って前記単位活動情報または前記活動手順定義情報を選択して、選択した前記単位活動情報または前記活動手順定義情報を前記活動実行指令に実行対象として含めて該活動実行指令を活動実行手段または活動手順実行制御手段に渡し、前記活動実行指令を前記活動実行手段が受け取った場合には、活動の実行を要求するユーザと活動の実行を担当するユーザまたは装置との間に接続を確立して活動を行わせ、入力された前記活動実行指令に対応する活動の実行結果の成否情報を含む前記活動実行結果通知を当該活動実行指令を入力した活動制御手段または活動手順実行制御手段に対して通知し、前記活動実行指令を前記活動手順実行制御手段が受け取った場合にはワークプロセスのステップが単位活動情報であれば前記活動実行手段に活動を行わせ、また前記活動手順定義情報または前記活動集約情報であればそれぞれ再び前記活動手順実行制御手段または前記活動実行制御手段により処理を行わせてワークプロセス定義を実行し、また前記活動実行結果通知により活動の失敗を検出した場合には、当該活動に対応する活動手順記述子を含む活動実行指令について該活動実行指令を入力した活動実行受付手段または活動手順実行制御手段に対して活動の失敗情報を含む活動実行結果通知を通知し、前記活動実行制御手段が前記活動実行手段に渡した前記活動実行指令に対応する活動の実行結果の成否情報を含む活動実行結果通知を受け取って該活動実行結果通知により活動の失敗を検出した場合に、受け取っている前記活動実行指令に対応する前記活動集約情報に含まれかつ失敗していない前記単位活動情報または前記活動手順定義情報が存在していればその中から失敗を検出した活動の代替となる活動情報を予め定められた優先度に応じて選択し、選択した活動情報当該実行活動情報として再試行を行ない、代替となる活動情報が選択できない場合には当該活動実行指令を入力した活動実行受付手段または活動手順実行制御手段に対して活動の失敗情報を含む活動実行結果通知を通知することを特徴とするワークプロセス管理方法。In a work process management method for managing work processes configured on a network information system in which a plurality of server devices and client devices are connected by a network, unit activity information indicating work process steps and activity procedures indicating work process definitions The activity information storage means manages the definition information in association with the activity aggregation information that is organized according to the inclusion relation of the activity contents, and the activity execution receiving means receives the activity execution request from the client device, and A corresponding activity execution command is generated and input to the activity execution control means, the activity execution control means receives the activity execution control means, and the unit activity information or the activity procedure according to the inclusion relation of the organized activity aggregation information Select definition information and select the unit activity information or activity The sequence definition information is included in the activity execution command as an execution target, the activity execution command is passed to the activity execution means or the activity procedure execution control means, and if the activity execution command is received by the activity execution means, the activity is executed. The activity execution including the success / failure information of the execution result of the activity corresponding to the input activity execution command, establishing a connection between the user requesting the user and the user or device in charge of executing the activity to perform the activity When the result notification is notified to the activity control means or the activity procedure execution control means that has input the activity execution command, and the activity procedure execution control means receives the activity execution command, the step of the work process is unit activity information. If so, the activity execution means performs the activity, and if the activity procedure definition information or the activity aggregation information, respectively, the activity procedure execution control unit again. Alternatively, when the activity execution control means performs processing to execute a work process definition, and an activity failure is detected by the activity execution result notification, an activity execution command including an activity procedure descriptor corresponding to the activity The activity execution result notification including the failure information of the activity is notified to the activity execution reception means or the activity procedure execution control means that has input the activity execution command for the activity execution control means, and the activity execution control means passes the activity execution means to the activity execution means When the activity execution result notification including the success / failure information of the execution result of the activity corresponding to the execution command is received and the failure of the activity is detected by the activity execution result notification, the activity aggregation information corresponding to the received activity execution command If the unit activity information or the activity procedure definition information that is included in and does not fail is present , the cost of the activity in which the failure is detected is detected. The activity information to be replaced is selected according to a predetermined priority , the selected activity information is retried as the execution activity information, and if the alternative activity information cannot be selected, the activity execution command is input A work process management method characterized by notifying an activity execution reception means or an activity procedure execution control means of an activity execution result notification including failure information of an activity. 複数のサーバ装置およびクライアント装置がネットワークで結ばれたネットワーク情報システム上で構成されたワークプロセスの管理を行うワークプロセス管理方法において、前記ネットワーク上の前記クライアント装置または前記サーバ装置へのロケータ及び当該ロケータの指示する装置が提供する活動の内容を表す活動内容記述子とを含む単位活動情報と、前記単位活動情報または前記活動集約情報または前記活動手順定義情報のいずれかの活動情報への1以上のリンクロケータ及び各々の前記リンクロケータの指示する前記活動情報がそれぞれ含んでいる前記活動内容記述子で表される活動の内容を全て包含する活動の内容を表す活動内容記述子を含む活動集約情報と、前記単位活動情報または前記活動集約情報または前記活動手順定義情報のいずれかの活動情報への1以上の活動手順ロケータ及びそれぞれの前記活動手順ロケータが指示する前記活動情報間に渡る一連の手順を定義する活動手順記述子及び該活動手順記述子による活動の内容を表す活動内容記述子とを含む活動手順定義情報とを、活動情報記憶手段が活動内容の包含関係に従って組織化する活動集約情報により関係付けて管理しており、前記クライアント装置から実行が要求される活動の内容を表す活動内容記述子を活動実行受付手段が受け付け、該活動内容記述子と該クライアント装置を指示する活動実行指令発行元ロケータとを含む活動実行指令を生成して活動実行制御手段に入力し、前記活動実行指令を前記活動実行制御手段が受け取り、該活動実行指令に含まれる前記活動内容記述子に適合する活動内容記述子を持つ前記単位活動情報または前記活動手順定義情報を、前記活動情報記憶手段に記憶されている活動集約情報が含むリンクロケータを辿ることで選択し、選択した前記単位活動情報または前記活動手順定義情報を実行活動情報として当該活動実行指令に対して追加し、また単位活動情報を選択した場合には前記活動実行手段に対して当該活動実行指令を入力し、活動手順定義情報を選択した場合には活動手順実行制御手段に対して当該活動実行指令を入力し、前記活動実行指令を前記活動実行手段が受け取った場合には、該活動実行指令に実行活動情報として含まれる単位活動情報が指示するサーバ装置またはクライアント装置と当該活動実行指令に含まれる活動実行指令発行元ロケータの指示するクライアント装置との間で通信の接続を確立して活動の実行を可能とし、入力された前記活動実行指令に対応する活動の実行結果の成否情報を含む前記活動実行結果通知を当該活動実行指令を入力した活動制御手段または活動手順実行制御手段に対して通知し、前記活動実行指令を前記活動手順実行制御手段が受け取った場合には該活動実行指令に実行活動情報として含まれる活動手順定義情報に含まれている活動手順記述子に従って、当該活動手順定義情報に含まれる活動手順ロケータが指示する活動情報を取得し、当該活動情報が単位活動情報または活動手順定義情報である場合には当該活動情報を実行活動情報として含みさらに当該活動実行指令に含まれる活動実行指令発行元ロケータを含む新たな活動実行指令を生成して該新たな活動実行指令をそれぞれ前記活動実行手段または前記活動手順実行手段に入力し、当該活動情報が活動集約情報である場合には当該活動集約情報に含まれる活動内容記述子を含みさらに当該活動実行指令に含まれる活動実行指令発行元ロケータを含む新たな活動実行指令を生成して該新たな活動実行指令を前記活動実行制御手段に入力し、また前記活動実行結果通知により活動の失敗を検出した場合には、当該活動に対応する活動手順記述子を含む活動実行指令について該活動実行指令を入力した活動実行受付手段または活動手順実行制御手段に対して活動の失敗情報を含む活動実行結果通知を通知し、前記活動実行制御手段が前記活動実行手段に渡した前記活動実行指令に対応する活動の実行結果の成否情報を含む活動実行結果通知を受け取って該活動実行結果通知により活動の失敗を検出した場合に、受け取っている前記活動実行指令に対応する前記活動集約情報に含まれかつ失敗していない前記単位活動情報または前記活動手順定義情報が存在していればその中から失敗を検出した活動の代替となる活動情報を予め定められた優先度に応じて選択し、選択した活動情報当該実行活動情報として再試行を行ない、代替となる活動情報が選択できない場合には当該活動実行指令を入力した活動実行受付手段または活動手順実行制御手段に対して活動の失敗情報を含む活動実行結果通知を通知することを特徴とするワークプロセス管理方法。In a work process management method for managing a work process configured on a network information system in which a plurality of server devices and client devices are connected by a network, a locator to the client device or the server device on the network and the locator Unit activity information including an activity content descriptor representing the content of the activity provided by the device instructed by the device, and one or more of the activity information of the unit activity information or the activity aggregation information or the activity procedure definition information Activity aggregation information including activity content descriptors representing the content of activities including all the content of activities represented by the activity content descriptors included in the activity content descriptors included in each of the link locators and the activity information indicated by each of the link locators; , The unit activity information or the activity aggregation information or the activity procedure One or more activity procedure locators to any activity information of the information and an activity procedure descriptor defining a series of procedures between the activity information indicated by each of the activity procedure locators, and of the activity by the activity procedure descriptor Activity procedure definition information including an activity content descriptor representing content is managed in association with activity aggregate information organized by activity information storage means according to the inclusion relationship of the activity content, and requested to be executed from the client device The activity execution receiving means receives the activity content descriptor representing the content of the activity to be performed, generates an activity execution command including the activity content descriptor and an activity execution command issuer locator that indicates the client device, and performs activity execution control The activity execution command is received by the activity execution control unit, and an activity conforming to the activity content descriptor included in the activity execution command is received. The unit activity information having the content descriptor or the activity procedure definition information is selected by tracing the link locator included in the activity aggregation information stored in the activity information storage means, and the selected unit activity information or the activity is selected. Procedure definition information is added to the activity execution command as execution activity information. When unit activity information is selected, the activity execution command is input to the activity execution means, and the activity procedure definition information is selected. In this case, when the activity execution command is input to the activity procedure execution control means and the activity execution command is received by the activity execution means, unit activity information included in the activity execution command as execution activity information is included. Communication between the instructing server device or client device and the client device instructed by the activity execution command issuer locator included in the activity execution command. An activity control means that inputs the activity execution command to the activity execution result notification including the success / failure information of the activity execution result corresponding to the input activity execution command. When the activity procedure execution control means is notified and the activity procedure execution control means receives the activity procedure execution control means, the activity procedure included in the activity procedure definition information included in the activity execution command as execution activity information According to the descriptor, the activity information indicated by the activity procedure locator included in the activity procedure definition information is acquired. If the activity information is unit activity information or activity procedure definition information, the activity information is included as execution activity information. Further, a new activity execution command including an activity execution command issuer locator included in the activity execution command is generated, and each of the new activity execution commands is added to the activity execution command. When the activity information is activity aggregation information, which is input to the execution means or the activity procedure execution means, the activity execution command issuer which includes the activity content descriptor included in the activity aggregation information and is further included in the activity execution command When a new activity execution command including a locator is generated and the new activity execution command is input to the activity execution control means, and an activity failure is detected by the activity execution result notification, the activity corresponding to the activity is handled. An activity execution result notification including activity failure information is sent to the activity execution receiving means or the activity procedure execution control means that has input the activity execution command for the activity execution command including the activity procedure descriptor, and the activity execution control means includes on the activity execution result notification received active execution result notification including the success information of the activity execution of activity corresponding to the command execution result of passing the activity execution means When detecting the failure of activities, among them if the activity aggregated included in the information and failing non the unit activity information or the activity procedure definition information in which the corresponding activities execution instruction has been received is present Select activity information that will substitute for the activity that detected the failure according to a predetermined priority , retry the selected activity information as the execution activity information, and if the alternative activity information cannot be selected A work process management method comprising: notifying an activity execution reception means or an activity procedure execution control means that has input an activity execution command, an activity execution result notification including activity failure information.
JP01449999A 1999-01-22 1999-01-22 Work process management apparatus and work process management method Expired - Fee Related JP4247584B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01449999A JP4247584B2 (en) 1999-01-22 1999-01-22 Work process management apparatus and work process management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01449999A JP4247584B2 (en) 1999-01-22 1999-01-22 Work process management apparatus and work process management method

Publications (3)

Publication Number Publication Date
JP2000215242A JP2000215242A (en) 2000-08-04
JP2000215242A5 JP2000215242A5 (en) 2005-11-04
JP4247584B2 true JP4247584B2 (en) 2009-04-02

Family

ID=11862762

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01449999A Expired - Fee Related JP4247584B2 (en) 1999-01-22 1999-01-22 Work process management apparatus and work process management method

Country Status (1)

Country Link
JP (1) JP4247584B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4535816B2 (en) * 2004-09-21 2010-09-01 富士通株式会社 Information processing system and method related to real estate registration
JP2007042142A (en) * 2006-11-02 2007-02-15 Osk:Kk Reception side system

Also Published As

Publication number Publication date
JP2000215242A (en) 2000-08-04

Similar Documents

Publication Publication Date Title
US5920867A (en) Data management system having data management configuration
US5812130A (en) Data management system and method for concurrent engineering
US6035297A (en) Data management system for concurrent engineering
US5950201A (en) Computerized design automation method using a single logical PFVL paradigm
Ziegler A distributed information system study
US5864875A (en) Data management system for problems, releases and parts
US7127445B2 (en) Data mapping management apparatus
US6088693A (en) Data management system for file and database management
US5920873A (en) Data management control system for file and database
JP2003528362A (en) Knowledge management system for dynamic distributed problem solving
CN101196896A (en) Document providing system and method
CN101741614B (en) Equivalent type node manager and equivalent type node management method
JP2006528801A (en) Service management of service-oriented business framework
CN1689298B (en) Composition service for autonomic computing
EP0438020B1 (en) Method and system for automatically controlling the distribution of data objects
Davami et al. Fog-based architecture for scheduling multiple workflows with high availability requirement
López et al. An efficient and scalable search engine for models
CN112015696A (en) Data access method, data relationship setting method, data access device, data relationship setting device and storage medium
JP4247584B2 (en) Work process management apparatus and work process management method
JP2000076049A (en) Program development management support device
JP5574993B2 (en) Control computer, information processing system, control method, and program
JP2013033333A (en) Business process/business rule execution system, business process/business rule execution method and program
JPH0850559A (en) File memory protector
Ordille Descriptive Name Services for Large Internets
Plagman et al. A data dictionary/directory system within the context of an integrated corporate data base

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050811

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050811

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080908

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081217

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081230

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120123

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120123

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130123

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130123

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140123

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees