JP4247584B2 - Work process management apparatus and work process management method - Google Patents
Work process management apparatus and work process management method Download PDFInfo
- 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
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
[0032]
The
[0033]
The
[0034]
The
[0035]
The
[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
[0039]
As described above, each of the
[0040]
Each
[0041]
Each activity
[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
[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
[0044]
The activity
[0045]
When the activity execution command is input, the activity
[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
[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
[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
[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
[0052]
The execution result is received from the activity execution unit 51 or the
[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
[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
[0057]
The activity execution unit 51 or the
[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
[0059]
The activity
[0060]
The activity execution unit 51 establishes a communication connection between the
[0061]
The activity procedure
[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
[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
[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
[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
[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
[0077]
In the above description of the operation, the operation in a state where the activity information is stored in the activity
[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
[0079]
Then, the activity
[0080]
When the activity
[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
[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
[0086]
First, the activity aggregation information A having the activity content descriptor representing the
[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
[0088]
First, the activity aggregation information C having the activity content descriptor representing the
[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
[0093]
The activity
[0094]
The activity aggregation
[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
[0096]
Then, by adding the activity aggregation information A generated by the activity aggregation
[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
[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
[0100]
The activity procedure definition
[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
[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
[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
[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
Claims (10)
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)
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 |
-
1999
- 1999-01-22 JP JP01449999A patent/JP4247584B2/en not_active Expired - Fee Related
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 |