JPH07319961A - 情報処理システムおよび情報処理システムの作業の流れ管理方法 - Google Patents

情報処理システムおよび情報処理システムの作業の流れ管理方法

Info

Publication number
JPH07319961A
JPH07319961A JP13631494A JP13631494A JPH07319961A JP H07319961 A JPH07319961 A JP H07319961A JP 13631494 A JP13631494 A JP 13631494A JP 13631494 A JP13631494 A JP 13631494A JP H07319961 A JPH07319961 A JP H07319961A
Authority
JP
Japan
Prior art keywords
work
information
routing
state
work process
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.)
Granted
Application number
JP13631494A
Other languages
English (en)
Other versions
JP3649345B2 (ja
Inventor
Yoichi Hirose
陽一 廣瀬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP13631494A priority Critical patent/JP3649345B2/ja
Priority to US08/424,645 priority patent/US5710921A/en
Priority to EP95105906A priority patent/EP0684573A3/en
Publication of JPH07319961A publication Critical patent/JPH07319961A/ja
Application granted granted Critical
Publication of JP3649345B2 publication Critical patent/JP3649345B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Operations Research (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • General Factory Administration (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】 【目的】 情報を媒介にして連携する複数の作業工程か
らなる作業について、複数の作業工程の順序と、各作業
工程の処理内容を定めて、作業を支援する情報処理シス
テムにおいて、ルーティングを柔軟に、かつ、動的に決
定する。 【構成】 各作業工程に対して、その作業工程の仕事の
開始の際に、必要な情報の固まりを与えると共に、当該
作業工程からその作業工程の処理結果が前記情報の固ま
りに含められたものを得るようにする。作業工程の担当
者と、システムとの間でやり取りする情報の固まりの中
に、当該作業工程の後続の作業工程に作業を開始させる
か否かを決定するための情報のフィールドを追加するル
ーティング前処理手段32を設ける。作業工程の担当者
からの情報の固まり中の、前記情報フィールドの内容に
基づいて、後続の作業工程に仕事を開始させるか否かを
決定するようにするルーティング後処理手段33を設け
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、情報を媒介にして連
携する複数の作業工程からなる作業について、複数の作
業工程の順序と、各作業工程の処理内容を定め、各作業
工程の間での情報の受け渡しなど、作業の処理を支援す
る情報処理システムおよび、この情報処理システムの作
業の流れ管理方法に関する。
【0002】
【従来の技術】従来から、業務処理の効率化を図るため
に、コンピュータによる、いわゆるオフィスオートメー
ション化が提案されている。しかし、従来は、業務処理
においては、個々の作業処理自体についての自動化が行
なわれているだけであった。つまり、作業間の連携の部
分については、従来のオフィスオートメーションでは考
慮されていなかった。
【0003】この作業間の連携部分を自動化して業務処
理のトータルな効率化や迅速化を図ろうとするものとし
て、ワークフロー・オートメーションが提案されてい
る。ワークフロー・オートメーションにおいては、作業
対象となる情報を媒介にして連携する複数の作業工程は
ワークフローと呼ばれ、このワークフローを自動化する
ための支援システムはワークフローシステムと呼ばれ
る。
【0004】ワークフローシステムは、ネットワーク化
された分散処理環境などの処理環境において、業務処理
における複数のユーザ間の情報の受け渡しと、情報を受
けてから次の作業工程に渡すまでの間に処理すべき作業
などのルールを、予め設計、定義することにより業務処
理を自動化する情報処理システムである。
【0005】このワークフローシステムは、次のような
処理機能で構成される。 業務処理の流れ、各業務におけるルールを定義するた
めの編集機能 テンプレート(定義されたワークフロー)を管理する
機能 処理すべき情報が配達されたことをユーザに知らせる
通知機能 配達された情報を管理するデータベース機能 設定された業務の流れ、ルールに従って情報を次の作
業工程に渡すルーティング機能 作業の状況を管理するための進捗管理機能 実行中のワークフローの維持管理を行なうためのシス
テム管理機能。
【0006】このワークフローシステムの概要は、日経
BP社発行の雑誌「日経情報ストラテジー」 1993
年8月号、マイケル・D・カーン、安田誠寄稿、「ワー
クフロー管理技術とその可能性」P123〜P130に
記載されている。
【0007】ワークフローが定義された場合、そのワー
クフローの仕事の流れ(フロー)はグラフ構造によって
表現される。図47は、この定義されたワークフローの
流れの一例である。
【0008】図47において、それぞれ四角で囲まれた
各ノードは、作業の単位である作業工程(以下ステップ
と呼ぶ)を表している。各アーク(矢印)は仕事の流れ
(つながり、作業の順番や因果関係)を定義しており、
あるステップの後ろにステップがあるということは、前
のステップが完了しないと、後ろのステップは開始でき
ないことを意味する。逆に、前のステップが完了する
と、自動的に後ろのステップが開始するということを意
味する。
【0009】ワークフローでは、各ステップでの実際の
作業は人間が行なうが、以上のような作業の流れの管理
は全てワークフローシステムが行なう。すなわち、ワー
クフローシステムは、定義されたワークフローを元に、
各ステップの作業が終了すると、適宜、次のステップの
作業を開始するようにして、作業全体の流れを管理す
る。
【0010】上記のように、あるステップが完了した場
合に別のステップを開始するような機能をルーティング
機能と呼ぶ。あるステップの作業が終了したときに、後
続のステップの作業を開始させることをそのステップに
対してルーティングを行なうといい、後続のステップに
仕事を流さない場合はルーティングを行なわないとい
う。上述した文献には、このルーティングの方法の詳細
については、記述されてない。
【0011】
【発明が解決しようとする課題】ところで、図47に示
すような、すべてのステップの後ろに一つしかステップ
がない状況では、ルーティングは単純であり、前のステ
ップが終了したとき、自動的に次のステップに仕事を流
して、作業を開始させればよい。しかし、そのようなワ
ークフローでは単純な業務処理しか定義できず、通常
は、図48に示すように、フローの途中に、分岐が設け
られたり、また、分岐されたステップが再び合流するよ
うなワークフローが定義されることが多々ある。
【0012】このような複雑なワークフローにおいて
は、ルーティングを後続のステップに対してどのように
行なうかを決定する必要がある。すなわち、複数のステ
ップに分岐される場合においては、ルーティングの態様
としては、 後続の複数ステップのすべてにルーティングを行なう
方法 後続の複数ステップの内の一つにのみ、ルーティング
を行なう方法 後続の複数のステップの内の複数のステップにルーテ
ィングを行なう方法 などがある。
【0013】図47に示したような単純なワークフロー
でのルーティングは、前ステップの処理の終了通知後
に、ワークフローシステムが自動的に行なうことができ
るが、図48に示したような分岐のステップにワークフ
ローシステムによってルーティングを行なわせる場合に
は、ルーティングを行なうか行なわないかを容易に決定
できる方策が望まれる。
【0014】その方策の一例として、例えばワークフロ
ー起動時に、分岐後の複数ステップのどのステップにル
ーティングを行なうかをあらかじめ決めておく方法が考
えられる。しかし、このように、あらかじめルーティン
グの仕方を決定しておく画一的な方法では、前ステップ
でのユーザの処理結果などのユーザの要求に応じてルー
ティングを変えるなどの柔軟な決定を行なうことができ
ない。
【0015】また、ワークフローシステムにルーティン
グを決定させるのではなく、前ステップのユーザが、分
岐後のステップについてのルーティングを決定すること
ができれば、非常に便利であるが、従来、そのための方
策は提供されていない。
【0016】この発明の第1の目的は、分岐を含む複雑
なワークフローであっても、ルーティングの決定を容易
に行なうことができる情報処理システムを提供すること
である。また、ルーティングを作業結果やユーザの要求
に応じて柔軟に行なうようにすることができる情報処理
システムを提供する点にある。
【0017】次に、上述のような分岐を有するワークフ
ローの場合には、合流のステップでの作業の開始の決め
方が問題になる。
【0018】すなわち、図47のような後続ステップが
一つの場合のワークフローのときには、前ステップの完
了の通知があれば、後ステップのルーティングを即座に
行って仕事を開始させることができるが、図48のよう
な分岐の場合においては、上述のように、分岐後のすべ
てのステップの作業が行なわれる場合と、一部のステッ
プのみ、作業が行なわれる場合があるため、前のステッ
プのすべての終了を待って後ステップの仕事を開始させ
るという単純な方法でルーティングを行なうことができ
ない。作業が行なわれないステップでは、そのステップ
が完了するということはないからである。
【0019】この発明の第2の目的は、以上のような分
岐後のルーティングに柔軟性を持たせた場合であって
も、合流の処理を確実に行なうことができるようにした
情報処理システムを提供することである。
【0020】この発明の第3の目的は、作業担当者を定
めず機械が自動的に作業を実行する作業工程を設けるこ
とが可能にして、ワークフローによる作業を効率的に実
行することができるようにすることである。
【0021】この発明の第4の目的は、複雑なワークフ
ローであっても、比較的容易に定義することが可能であ
り、かつ、その作業の流れの管理も簡易化することがで
きる作業の流れ管理方法を提供することである。
【0022】
【課題を解決するための手段】上記課題を解決するた
め、請求項1の発明(以下第1の発明という)による情
報処理システムは、後述の実施例の参照符号を対応させ
ると、順序だって処理すべき作業を、複数個の作業工程
に分け、その複数個の作業工程の順序と、各作業工程の
処理内容を定めて、前記作業を支援する情報処理システ
ムであって、前記各作業工程に対して、必要な情報の固
まりを与えると共に、当該作業工程からその作業工程の
処理結果が前記情報の固まりに含められたものを得るよ
うにする情報処理システムにおいて、前記作業工程との
間でやり取りする前記情報の固まりの中に、当該作業工
程の後続の作業工程に作業を行なわせるか否かを決定す
るための情報のフィールドを追加する追加手段(32)
と、前記作業工程からの前記情報の固まり中の、前記追
加された情報フィールドの内容に基づいて、後続の作業
工程に仕事を行なわせるか否かを決定するルーティング
手段(33)とを設けたことを特徴とする。
【0023】また、請求項2の発明(以下、第2の発明
という)による情報処理システムは、順序だって処理す
べき作業を、複数個の作業工程に分け、その複数個の作
業工程の順序と、各作業工程の処理内容を定めて、前記
作業を支援する情報処理システムであって、前記各作業
工程に対して、必要な情報の固まりを与えると共に、当
該作業工程からその作業工程の処理結果が前記情報の固
まりに含められたものを得るようにする情報処理システ
ムにおいて、前記作業工程に対して与える必要な情報の
固まりの中に、当該作業工程に直接的につながる複数個
の後続の作業工程のそれぞれに対して、その作業を行な
わせるか否かを決定するための情報フィールドを追加す
る追加手段(32)と、前記作業工程についてあらかじ
め定義された約束事を実行することにより、前記追加さ
れた情報フィールドに、当該作業工程に直接的につなが
る複数個の後続の作業工程のそれぞれについて、その作
業を行なわせるか否かの情報を記述するルール評価手段
と、前記作業工程からの前記情報の固まり中の、前記情
報フィールドの内容に基づいて、前記後続の作業工程の
それぞれに対して仕事を行なわせるか否かを決定するル
ーティング手段(33)とを設けたことを特徴とする。
【0024】さらに、請求項3の発明(以下、第3の発
明という)による情報処理システムは、順序だって処理
すべき作業を、複数個の作業工程に分け、その複数個の
作業工程の順序と、各作業工程の処理内容を定めて、前
記作業を支援する情報処理システムであって、前記各作
業工程に対して、必要な情報の固まりを与えると共に、
当該作業工程からその作業工程の処理結果が前記情報の
固まりに含められたものを得るようにする情報処理シス
テムにおいて、前記作業工程の作業の終了時に、当該作
業工程からの前記情報の固まりに含まれる情報を用い
て、当該作業工程に直接的につながる複数個の後続の作
業工程のそれぞれへの移行に関してあらかじめ定義され
た約束事を実行するルール評価手段(34)と、このル
ール評価手段の評価結果により、後続の作業工程のそれ
ぞれに対して仕事を開始させるか否かを決定するルーテ
ィング手段(33)とを備えることを特徴とする。
【0025】また、請求項4の発明(以下、第4の発明
という)の情報処理システムは、順序だって処理すべき
作業を、複数個の作業工程に分け、その複数個の作業工
程の順序と、各作業工程の処理内容を定めて、前記作業
を支援する情報処理システムであって、各作業工程の終
了状態を、作業終了となったことを示す作業終了状態
と、作業が開始されずに前記連携する複数の作業工程か
らなる流れから切り離されたことを示す切り離し状態と
で管理する作業工程の状態管理手段(31)と、前記作
業工程の前の作業工程の状態のすべてが、前記作業終了
状態あるいは前記切り離し状態になったときに、当該作
業工程に作業を開始させるための処理を行なうルーティ
ング手段(33)とを備えることを特徴とする。
【0026】また、請求項5の発明(以下、第5の発明
という)の情報処理システムは、順序だって処理すべき
作業を、複数個の作業工程に分け、その複数個の作業工
程の順序と、各作業工程の処理内容を定めて、前記作業
を支援する情報処理システムであって、各作業工程の状
態を、作業の開始準備ができている状態を表す待機状態
と、作業を実行している状態を表す実行状態と、作業を
終了した状態を表す終了状態とで管理する作業工程の状
態管理手段(31)と、前記作業工程が、担当ユーザに
より作業が実行される通常作業工程か、前記情報処理シ
ステム内において作業が実行される自動実行作業工程か
を判別する判別手段と、この判別手段での判別の結果、
前記通常作業工程であると判別されたときには、前記作
業工程の状態管理手段での状態データが前記待機状態に
なった作業工程の担当者に通知をした後、当該作業工程
の状態を実行状態にし、前記担当ユーザからの作業終了
の通知を受けて当該作業工程の状態を終了状態にし、前
記判別手段での判別の結果、前記自動実行作業工程であ
ると判別されたときには、当該自動実行作業工程の状態
が前記待機状態になったときに、前記実行状態に移行さ
せ、作業が終了したときには、前記自動実行作業工程の
状態を終了状態に移行させる作業工程管理手段とを備え
ることを特徴とする。
【0027】また、請求項6の発明(以下、第6の発明
という)は、順序だって処理すべき作業を、複数個の作
業工程に分け、その複数個の作業工程の順序と、各作業
工程の処理内容を定めて定義し、各作業工程の作業が終
了すると、次の作業工程の作業を開始するように管理す
ることにより、前記作業を支援する情報処理システムの
作業の流れ管理方法において、前記定義された作業の流
れの内の適宜の作業工程において、その作業工程の作業
を細分化した作業の単位と、その細分化した作業の単位
の前後のつながりとで定義したサブフローを起動し、こ
のサブフローによる作業が完了したときに、前記サブフ
ローを起動をした作業工程は、終了できるようにしたこ
とを特徴とする。
【0028】
【作用】第1の発明の構成においては、追加手段により
各作業工程とシステムとの間でやり取りされる情報の固
まりの中に、当該作業工程の後続の作業工程に作業を行
なわすか否かを決定するための情報フィールドが追加さ
れる。例えば、当該作業工程の後続の作業工程が複数個
あれば、各作業工程に対応してその数だけ上記の情報フ
ィールドが追加される。
【0029】ルーティング手段は、当該作業工程の後続
の各作業工程についての上記の追加された情報フィール
ドの内容を参照して、それぞれの後続の作業工程への仕
事の受け渡しを行なうか否かの決定を行なう。
【0030】このように、追加された情報フィールドを
用いて、後続の作業工程が分岐の場合であっても、当該
後続の作業工程に対してルーティングを行なうか否かを
容易に決定することができる。追加された情報フィール
ドに、作業工程の担当者が、当該作業工程の後続の作業
工程に仕事の受け渡しを行なうか否かの情報を記述した
場合には、作業工程の担当者により後続の作業工程に関
してルーティングを行なうか否かの指定ができる。つま
り、前作業工程の担当者により後作業工程に対するルー
ティングを指示することが可能となり、作業担当者の要
求を反映した柔軟なルーティングを行なうことができ
る。
【0031】また、第2の発明の構成においては、ルー
ル評価手段は、作業工程についてあらかじめ定義された
約束事(以下、ルールという)を実行して評価し、その
評価結果として、後の作業工程に対するルーティングの
指示情報を、前記の情報フィールドに記入する。ルーテ
ィング手段は、この情報フィールドの内容に従って、そ
れぞれの後続の作業工程に仕事の受け渡しを行なうか否
かの決定を行なう。これにより、あらかじめシステムに
定義されたルールに従って後続の作業工程のルーティン
グが決定される。
【0032】また、第3の発明の構成においては、ある
作業工程から、その後続の作業工程への仕事の受け渡し
に関するルールが定義されており、このルールが、作業
工程からの前記情報の固まりに含まれる情報を用いて実
行され、ルール評価手段で評価される。そして、ルーテ
ィング手段は、その評価結果により、ルーティングを決
定する。
【0033】例えば、見積もり金額の額に応じて後続の
作業工程にどのようにルーティングを行なうかのルール
が定義されている場合には、作業工程からの情報の固ま
りに含まれるその見積もり金額が参照されて、前記のル
ールが実行され、その結果に応じて後の作業工程のうち
のどの作業工程に作業を開始させるが決定される。
【0034】したがって、前の作業工程の作業結果など
を参照して、情報処理システムが、後の作業工程に対す
るルーティングを決定することができ、ワークフローの
実行中に、その作業状況に応じて動的、かつ、柔軟にル
ーティングの決定を行なうことができる。
【0035】また、第4の発明の構成においては、連携
する複数の作業工程の流れから切り離された状態の切り
離し状態が作業工程の状態として状態管理手段で管理さ
れる。例えばルーティングが行なわれず、仕事が行なわ
れないことが決定した作業工程の状態が、この切り離し
状態となる。
【0036】例えば分岐後の合流のように前作業工程が
複数個存在している場合には、前作業工程のすべてが終
了しないと合流の作業工程は仕事を開始することができ
ない。この場合に、前作業工程の一部にルーティングが
行なわれない作業工程があると、その作業工程は作業終
了状態にならないから、そのままでは合流の作業工程は
仕事を開始することができなくなる。
【0037】第4の発明においては、状態管理手段はル
ーティングが行なわれない作業工程は切り離し状態と
し、これを終了状態として管理する。このため、ルーテ
ィング手段は、すべての前作業工程が作業終了状態ある
いは切り離し状態となったときは、合流の作業工程のす
べての前作業工程が終了したとすることができるので、
当該合流の作業工程にルーティングを行なう。
【0038】このように、前作業工程に分岐の作業工程
があった場合において、一部の作業工程が実行されなか
ったときにも、分岐後の合流の作業工程において何等支
障を生じることなくルーティングを行なうことができ
る。
【0039】第5の発明の情報処理システムにおいて
は、判別手段で、次の作業工程が通常作業工程であると
判別されたときには、作業工程管理手段は、状態管理手
段の状態データから上記の作業工程が待機状態になった
ことを検知すると、その作業工程の担当者に通知をす
る。すると当該担当者は作業開始の合図を送ってくるの
で、作業工程管理手段は、状態管理手段のその作業工程
の状態データを実行状態にする。当該作業工程の作業が
終了すると、担当者は、作業終了の通知を送ってくるの
で、この作業終了の通知を受けて、作業工程管理手段
は、状態管理手段の当該作業工程の状態データを終了状
態にする。以上のようにして作業工程の状態の遷移を管
理して、あらかじめ定められた順序に従って実行される
複数の作業工程からなるワークフローの流れを管理す
る。
【0040】そして、第5の発明においては、担当ユー
ザによって作業が実行される通常作業工程の他に、自己
の情報処理システムの管理下にある自動実行作業工程が
設けられる。作業工程管理手段は、判別手段で次の作業
工程がこの自動実行作業工程であると判別されたときに
は、状態管理手段の状態データから当該作業工程が待機
状態になったと検知したときに、担当ユーザーに対する
通知の処理を省略して、当該作業工程の状態データを即
座に実行状態に移行させ、作業を実行させる。また、作
業が終了したときには、作業終了の通知を待たずに即座
に状態データを終了状態に移行させる。
【0041】したがって、担当ユーザによらず、情報処
理システム自身あるいはその管理下にあるハードウエア
が自動実行作業工程を実行し、その自動実行作業工程の
終了後、次の作業工程に移行することが可能となる。す
なわち、人間よりも機械の方が向いている作業をワーク
フロー中に定義して自動的に実行させることが可能にな
る。
【0042】第6の発明の情報処理システムの作業の流
れ管理方法においては、ワークフロー中の適宜の作業工
程において、サブフローが起動される。そして、このサ
ブフローによる作業がすべて完了となった後に、このサ
ブフローが起動された作業工程が作業終了可能となる。
したがって、ワークフローの作業の流れを階層的に定義
および動作させることができ、詳細で規模の大きいワー
クフローのみで運用する場合に比べて、より柔軟に対応
する運用をすることができる作業の流れ管理方法を構築
することができる。
【0043】
【実施例】以下、この発明による情報処理システムの一
実施例を、図を参照しながら説明する。
【0044】図2は、この例の情報処理システムの全体
の概要を示すもので、その機能をブロックとして示した
ものである。この情報処理システムは、前述したワーク
フローシステムの構成を有するものであって、システム
部10と、ユーザインターフェース部20とからなって
おり、ワークフローを管理して支援すると共に、各作業
工程(以下、作業工程をステップと呼ぶ)の担当者によ
る処理を支援するための作業環境を提供する役割も有す
る。
【0045】システム部10は、ファイル管理装置を内
蔵する例えばサーバー装置の構成とすることができる。
また、ユーザインターフェース部20は、例えばワーク
ステーションなどの情報処理端末装置により構成するこ
とができ、そのディスプレイに各作業段階の作業環境を
表示することができる。ユーザインターフェース部20
は、複数の担当者が共通の1個を共有して使用するよう
に構成することもできるし、担当者毎に設ける構成とす
ることもできる。そして、システム部10とユーザイン
ターフェース部20とを、例えばLANなどのネットワ
ークにより接続して、分散処理環境を構築することがで
きる。なお、システム部10とユーザインターフェース
部20とを同一の装置において構成することもできる。
【0046】システム部10は、テンプレート管理部1
1と、ルーティング管理部12と、通知管理部13と、
進捗情報管理部14と、ユーザ管理部15と、システム
管理部16と、参照情報管理部17とを備える。また、
ユーザインターフェース部20は、編集部21と、通知
部22と、進捗管理部23と、インターフェースコント
ロール部24とを備える。
【0047】ユーザインターフェース部20の編集部2
1では、ユーザにより設定入力された業務処理の流れ、
各業務におけるルールによりワークフローを定義する。
システム部10のテンプレート管理部11は、定義され
たワークフロー(テンプレート)を管理する。
【0048】システム部10のルーティング管理部12
は、後で詳細に説明するように、設定された業務の流
れ、ステップの担当者(ユーザ)による指定、あらかじ
め定義されたルールにしたがって、このルーティングを
行なう。
【0049】システム部10の通知管理部13は、処理
すべき情報の配達の、ユーザ(担当者)への通知を管理
する。ユーザへの通知は、ユーザインターフェース部2
0の通知部22が行なう。
【0050】システム部10の進捗情報管理部14は、
作業の状況、作業の履歴を管理するための情報を管理す
る。ユーザインターフェース部20の進捗管理部23
は、この情報を用いて作業の状況を管理する。
【0051】ユーザ管理部15は、各ステップを担当す
るユーザを管理する。システム管理部16は、システム
部10の全体を管理する。参照情報管理部17は、各ス
テップの担当者に与える、作業に必要な情報を管理す
る。
【0052】[ワークフローシステムによるワークフロ
ーの流れの管理の概要]この例のワークフローシステム
においては、定義されたワークフローの各ステップを、
以下のような5つの状態により、その遷移状態を管理す
る。
【0053】ステップがまだ作業を開始することがで
きない開始不可状態(以下、この状態を「not re
ady」という) ステップの開始準備ができており、担当者の仕事の開
始を待っている待機状態(以下、この状態を「read
y」という) 担当者が作業をしている実行状態(以下、この状態を
「run」という) 担当者が作業を終了した作業終了状態(以下、この状
態を「complete」という) ルーティングが行なわれず、ワークフローから切り離
された切り離し状態(以下、この状態を「isolat
e」という) の5種である。
【0054】後述するように、あるステップの後続のア
ークが複数個存在、すなわち、複数のステップに分岐が
なされているときに、ルーティングが行なわれないステ
ップがあるとき、そのルーティングが行なわれないステ
ップが「isolate」の状態になる。
【0055】以上のステップの状態遷移に応じてワーク
フローシステムは、基本的には、次のような動作を行な
い、この動作が各ステップに対して繰り返されることに
より、ワークフローは進行する。
【0056】初期状態では、各ステップは、「not
ready」の状態にされている。ワークフローの起動
が行なわれると、最初のステップが「ready」にさ
れる。また、後述するように、前ステップが終了したと
き(「complete」および「isolate」の
状態になったとき)に、ルーティング管理部により決定
された次のステップの状態が「ready」とされる。
【0057】ステップが「ready」になると、担当
者に対して通知を行なうことにより作業の開始を促す。
担当者が開始の合図をワークフローシステムに対して行
なうと、ステップの状態は「run」となる。このと
き、ワークフローシステムから担当者に対して、作業を
行なうために必要な情報をひとまとめにしたデータの固
まりを送り返す。このデータの固まりは、作業を行なう
ために必要な情報の実体と、その参照情報からなり、こ
れを以下パケットと呼ぶ。
【0058】担当者が指定された作業を終了すると、作
業内容を反映させたパケットとともに、ワークフローシ
ステムに対し、完了の合図を送る。この時、ステップの
状態は「complete」となる。
【0059】ワークフローシステムは各ステップが終了
した時に、次に実行されるステップを決定し、当該ステ
ップに対して、ルーティングを行なう。具体的には、当
該ステップの状態を「ready」にすることによっ
て、担当者に通知を送り、ワークフローを進行させる。
【0060】[ルーティングの方法の概要]上述したよ
うに、あるステップが終了すると次に実行されるステッ
プがルーティング機能により決定される。この場合にお
いて、前述もしたように、当該終了したステップに対し
て、後続のステップが、分岐のように複数のステップが
ある場合には、そのうちのどれを開始するのか、あるい
は全て開始しなければならないのかを決定しなければな
らない。この例においては、以下に説明するようにし
て、ワークフローの実行時に動的にしかも柔軟にルーテ
ィングが決定される。
【0061】(1)担当者によるルーティングの指定方
法 ルーティングの指定方法のひとつとして、この例では、
ワークフロー中に分岐がある場合、分岐の手前のステッ
プの担当者により、次のステップを指定させる方法を用
いる。すなわち、この方法においては、ステップの担当
者には、次ステップの候補が示され、担当者は、そのう
ちルーティングを行なわせたいステップを選ぶ。
【0062】これを実現するために、この例において
は、パケットにルーティング情報とよばれる情報のフィ
ールドを追加する。ルーティング情報には、例えばその
ステップの後続のステップの名前と真理値がペアになっ
て含まれている。あるいは、ルーティング情報には、後
続のアーク(例えばステップ1からステップ2のアーク
であればステップ1−2のように表現)と、その真理値
のペアが記述される。
【0063】真理値の値はシステムによって初期化され
るが、ステップの担当者は、このルーティング情報の真
理値を変更することができる。値が「真」であることは
ルーティングが行なわれることを意味し、値が「偽」で
あることはルーティングが行なわれないことを意味す
る。
【0064】システムによって初期化された値は、担当
者がルーティング情報を何も変更しなかった場合のデフ
ォルトの値となる。担当者は送られてきたルーティング
情報を参考に、目的を達成するために最も良いと判断さ
れるように真理値を変える。具体的にはルーティングを
行ないたいステップに対しては対応するルーティング情
報の真理値を「真」にし、ルーティングを行ないたくな
いステップに対してはルーティング情報の対応する真理
値を「偽」にする。これにより、ワークフローの実行中
にルーティングをステップの担当ユーザの指示により柔
軟かつ動的に決定することが可能となる。
【0065】変更されたルーティング情報はパケットに
含まれ、作業完了の合図とともに、ワークフローシステ
ムに送り返される。システムはパケット中のルーティン
グ情報を参照し、後続のステップに対応する真理値を調
べ、「真」であるステップに対してはルーティングを行
ない、「偽」であるステップに対しては、ルーティング
を行なわない。
【0066】(2)ワークフローシステムによるルーテ
ィングの指定方法 分岐の際のルーティングの決定は、場合によって担当者
ではなく、ワークフローシステムによって自動的に行っ
て欲しい場合もある。しかし、ワークフローシステムも
何の情報もなしにルーティングは決定することはできな
い。そこで、この例では、前のステップの作業結果の情
報を用いると共に、あらかじめ定義したルールなどの
「約束事」を用いることによって、ワークフローシステ
ムによるこの場合のルーティングの決定を実現する。こ
の方法は、担当者に直接ルーティングは指定させたくな
いが、担当者が下した別の判断を材料にルーティングを
決定する際に便利である。
【0067】このワークフローシステムによるルーティ
ングの指定方法の一つとしては、前述したルーティング
情報フィールドを用いずにルーティングの決定を行なう
方法がある。例えばルールのみを用いてルーティングを
決定する方法である。すなわち、ルールなどの約束事の
実行(評価)の結果、ルーティングを行なうと決定した
ときには、真理値として「真」を、ルーティングを行な
わないと決定したときには、真理値として「偽」を、そ
れぞれ評価結果として得る。そして、その評価結果を用
いて、ワークフローシステムは、次の作業工程に対して
ルーティングを行なうか否かの決定をする。
【0068】ワークフローシステムによるルーティング
の指定方法の他の方法としては、ルールを用いてルーテ
ィング情報フィールドの内容を記述するようにする方法
がある。この方法によれば、前述した担当者によるルー
ティングの決定方法と、このワークフローシステムによ
る自動のルーティングの決定方法とのいずれであって
も、ルーティング情報フィールドの内容を参照すること
によりルーティングを決定することができるので、ルー
ティングの決定のためのソフトウエアを簡略化できる。
【0069】[第1の実施例の説明]以下に説明する第
1の実施例は、ルーティング情報フィールドを用いて担
当者が後続の作業工程に対してルーティングを行うか否
かの指定を行えるようにすると共に、ルーティング情報
フィールドを用いずにルールのみによりワークフローシ
ステムがルーティングを決定することができるようにし
た例である。
【0070】この第1の実施例の場合には、ワークフロ
ーの定義を行なう時に、定義者は、ワークフローシステ
ムに自動的にルーティングを決めて欲しいステップに対
してルールを記述する。実際的には、あるステップAの
後が分岐であった場合、そのステップAの後続のすべて
のアークに対してルールを記述する。
【0071】例えば、あるステップAの担当者が出した
見積りの金額によって、その次のステップを自動的に選
ぶ場合の例を説明する。この場合、ルールとしては、例
えば見積もり金額Sが所定の基準値Rより大きい場合に
は、後続の例えば2分岐のステップB、Cの内のステッ
プBにのみルーティングを行ない、見積もり金額Sが所
定の基準値Rより小さい場合には、後続の複数ステップ
の内のステップCにのみルーティングを行なうように定
義したものを設定しておく。
【0072】ステップAの担当者に渡すパケットには、
担当者が見積もり金額を記述するための情報フィールド
が追加される。担当者が終了の合図をワークフローシス
テムに送ってからワークフローシステムがルーティング
の処理を開始するまでの間に、前述のように定義された
ルールによって、パケットの情報中の見積もり金額Sが
評価され、ルーティングが決定される。
【0073】<機能ブロック図の説明>図1は、この第
1の実施例の情報処理システムにおけるワークフローの
流れの管理に関する部分の機能のブロック図である。
【0074】テンプレート管理部11は、定義されたワ
ークフローに関するデータを、記憶部11Mに記憶す
る。定義されたワークフローの仕事の流れは、前述した
ように、作業の単位であるステップと、各ステップ間を
つなぐアーク(矢印)とからなるグラフ構造によって表
現される。したがって、ワークフローに関するデータ
は、ワークフローがどのような複数のステップからなっ
ているかを示すステップテーブルと、アークに関するデ
ータであるステップの実行順序のテーブルとで構成する
ことができる。
【0075】また、前述したように、分岐のときのアー
クであって、当該分岐におけるルーティングをワークフ
ローシステムによって決定させるときには、各アークに
前述したようなルールが定義され、テンプレート管理部
11の記憶部11Mに記憶される。
【0076】ルーティング管理部12は、この場合、機
能的には、ステップ状態管理部31と、ルーティング前
処理部32と、ルーティング後処理部33と、ルール評
価部34と、パケット管理部35とを備える。
【0077】ルーティング前処理部32は、次ステップ
の担当者に渡すパケットにルーティング情報フィールド
や見積もりなどのルーティングのために必要な情報フィ
ールドを追加する処理を行なう。
【0078】また、ルーティング後処理部33は、実際
のルーティングの決定を行なう。ルーティング後処理部
33は、分岐のときのようにルールがアークについてい
れば、そのルールの評価をルール評価部34に対して要
求する。ルール評価部34は、テンプレート管理部11
に記憶されているアーク毎のルールを実行してその評価
結果をルーティング後処理部33に返す。
【0079】ステップ状態管理部31が、テンプレート
管理部11に登録されている定義されたワークフローの
各ステップの状態を、前述の5種の状態により管理し
て、ワークフローの流れを管理する。このステップ状態
管理部31は、定義されたワークフローの各ステップの
状態データの記憶部31Mを備える。前述もしたよう
に、初期時には、各ステップの状態は「not rea
dy」となっている。
【0080】ステップ状態管理部31は、ステップの状
態が「not ready」から「ready」になる
ときに、ルーティング前処理部32に処理要求を出す。
ワークフローの開始時においては、担当者によるワーク
フローの起動要求を受けたとき、最初のステップの状態
が「not ready」から「ready」になる。
また、ワークフローの実行中は、ステップ状態管理部3
1は、ルーティング後処理部33からの要求によって、
ルーティングを行なうステップの状態を、「not r
eady」から「ready」にし、ルーティングを行
なわないステップの状態を「isolate」にする。
【0081】ステップが「not ready」から
「ready」になるとき、ステップ状態管理部31
は、通知管理部13に通知要求を出す。通知管理部13
は、次ステップの担当者に対して通知を行なって担当者
の作業の開始を促す。
【0082】この通知に対して担当者が開始の合図をワ
ークフローシステムに対して行なうと、この合図を通知
管理部13が受け、ステップ状態管理部31にその旨を
知らせる。ステップ状態管理部31は、これに応じてス
テップの状態を「ready」から「run」にする。
【0083】そして、ステップ状態管理部31は、パケ
ット管理部35にパケット送信要求を出して、このパケ
ット管理部35より、担当者が作業を行なうために必要
な情報をひとまとめにしたデータの固まりであるパケッ
トを担当者に対して送る。このパケットには、ルーティ
ング前処理部32により付加されたルーティング情報
や、その他のルーティングに必要な情報のフィールドが
含まれている。
【0084】パケットは参照情報管理部17により管理
され、参照情報管理部17は、このパケットの記憶部1
7Mを有する。パケット管理部35は、参照情報管理部
17に管理されている情報を用いて次にルーティングす
るパケットを形成する。また、ユーザから得たパケット
を一時的に蓄え、そのルーティングに必要な情報フィー
ルドのデータをルーティング後処理部33に送る。
【0085】前述したように、ルーティング前処理部3
2は、パケット管理部35がパケットを担当者に送る前
に、前述したルーティング情報や見積もりの情報などの
フィールドを、当該担当者に送るパケットに追加する処
理を行なう。
【0086】担当者は、ワークフローシステムから配達
されたパケットを元に作業を実行する。また、担当者
は、パケットに追加された情報フィールドに、必要な情
報、例えば後続のステップに関するルーティング情報の
真理値や、ルール評価のための材料となる情報を記述す
る。
【0087】指定された作業を終了すると、担当者は、
適宜、必要な情報を記述したルーティング情報や作業結
果の情報を含む、担当者の作業内容を反映させたパケッ
トとともに、ワークフローシステムに対し、完了の合図
を送る。このとき、ステップ状態管理部31は、当該ス
テップの状態を「run」から「complete」と
する。
【0088】ステップ状態管理部31は、ステップの状
態が「run」から「complete」になるとき
に、ルーティング後処理部33に処理要求を出す。ルー
ティング後処理部33は、実際のルーティングの決定を
行なう。すなわち、ルーティング情報が付加されていれ
ば、それに基づいて次にルーティングを行なうステップ
を決定し、ステップ状態管理部31に通知する。また、
当該ステップの後続のアークについてルールが定義され
ていれば、ルーティングのための情報中の前記ルール評
価の材料となる情報フィールドの値をルール評価部34
に送って、このルール評価部34に評価要求を出す。
【0089】ルール評価部34は、テンプレート管理部
11のワークフローデータ中のあらかじめ定義されたル
ールを用いて評価を実行し、その結果をルーティング後
処理部33に送る。ルーティング後処理部33は、この
ルール評価部34からの評価結果に基づいてルーティン
グを行なうステップを決定し、ステップ状態管理部31
に通知する。
【0090】ステップ状態管理部31は、ルーティング
後処理部33からの通知によりルーティングを行なうス
テップの状態を、「not ready」から「rea
dy」にする。また、ルーティングを行なわないステッ
プの状態を、「not ready」から「isola
te」にする。以下、上述と同様の処理を繰り返して、
ワークフローを進行させ、後続のステップがなくなると
ワークフローの処理を終了する。
【0091】<ルーティング前処理部32の動作の具体
例>図3は、前述したルーティング前処理部32で実行
される処理ルーチンS0の一例を示すフローチャートで
ある。
【0092】ステップの状態が「not ready」
から「ready」になると、ステップ状態管理部31
から処理要求が到来して図3のルーティング前処理ルー
チンS0が開始し、現在のステップ(「ready」の
状態になったステップ)の後続アークのすべてを、ワー
クフローデータを参照して探す。また、その他の必要な
情報フィールドを追加する(処理S1)。
【0093】次に、そのステップに送るパケットに、後
続アークの数だけルーティング情報フィールドを追加す
る(処理S2)。次に、前記後続アークの属性情報を調
べ(処理S4)、ワークフローシステムにより設定され
ているデフォルトのルーティング情報があるか否か判別
し(判断S5)、デフォルトのルーティング情報が存在
すれば、そのルーティング情報で、前記追加したルーテ
ィング情報フィールドを初期化する(処理S6)。
【0094】判断S5でデフォルトのルーティング情報
がないと判断された場合、あるいは、処理S6の処理が
終了した後には、ステップS3に進んで、前記後続のア
ークのすべてのアークについて処理S4〜S6の処理が
終了したか否か判断し、終了していなければ、処理S4
〜S6を繰り返し、すべてのアークについての処理が終
了したときには、このルーティング前処理ルーチンは終
了となる。
【0095】<ルーティング後処理部33の動作の具体
例>図4は、前述したルーティング後処理部33で実行
される処理の一例を示すフローチャートである。ステッ
プの状態が「run」から「complete」になる
ときに、ステップ状態管理部31から処理要求が到来し
て図4のルーティング後処理ルーチンS10が開始す
る。
【0096】まず、状態が「run」から「compl
ete」になった現在のステップ(以下、このステップ
を現在ステップPSと称する)の後続のステップの処理
は、終了しているか否か、つまり処理が終了していない
後続ステップがあるか否か判断し(判断S11)、処理
が終了していない後続のステップがなければこのルーチ
ンS10を終了する。
【0097】現在ステップPSに対して処理が終了して
いない後続のステップ(以下、このステップを後続ステ
ップBSと称する)が存在する場合には、その後続ステ
ップBSに至るアークにルールが定義されているか否か
判断する(判断S12)。ルールが定義されていれば、
ルール評価部34に対してルール評価処理の要求を出す
と共に、現在ステップPSからのパケット中のルール評
価のためのルーティング情報フィールドの情報を送っ
て、ルール評価を実行させる(処理S13)。その後、
判断S14に進む。
【0098】そして、判断S14では、そのルール評価
結果を受けて、その後続ステップBSにルーティングを
行なうか否か判断する。また、判断S12でアークにル
ールが定義されていないと判断されたときには、そのま
ま判断S14に進んで、ルーティング情報フィールドの
アークに関する真理値を参照して、その後続ステップB
Sにルーティングを行なうか否か判断する。
【0099】判断S14で、ルーティングを行なうと判
断したときには、判断S15に進み、ルーティングを行
おうとする後続ステップBSにアークによってつながっ
ている前ステップが複数あることを想定して、その前ス
テップはすべて終了となっているか否か判断する。この
判断S15での前ステップの終了の判断は、前ステップ
が「complete」の状態になっているか、あるい
は「isolate」の状態になっているかによって行
なう。
【0100】判断S15で、すべての前ステップが終了
していると判断されたときには、当該後続ステップBS
の状態を「not ready」から「ready」に
変更する要求をステップ状態管理部31に出し、判断S
11に戻って、現在ステップPSの他の後続ステップB
Sに関する上述の処理を行なう。
【0101】また、判断S15において、ルーティング
を行おうとする後続ステップBSの前記複数の前ステッ
プのうちの一部が終了となっていないと判断されたとき
には、当該後続ステップBSの状態を「not rea
dy」から「ready」にする要求は出さずに、この
後続ステップBSに関してスタートフラグを立てる(処
理S17)。そして、判断S11に戻って、前記現在ス
テップPSの他の後続ステップBSに関して上述の処理
を行なう。
【0102】また、判断S14において、後続ステップ
BSに対してルーティングを行なわないと判断された場
合には、判断S18に進み、ルーティングを行なわない
当該後続ステップBSの前ステップはすべて終了となっ
ているか否か判断する。この判断S18での前ステップ
の終了の判断も、前述と同様に、前ステップが「com
plete」の状態になっているか、あるいは「iso
late」の状態になっているかによって行なう。
【0103】判断S18において、ルーティングを行な
わない後続ステップBSの前の複数のステップのうちの
一部が終了となっていないと判断されたときには、その
まま判断S11に戻って、前記現在ステップPSの他の
後続ステップBSに関して上述の処理を行なう。
【0104】また、判断S18において、ルーティング
を行なわない後続ステップBSの前のステップがすべて
終了であると判断されたときには、判断S19に進み、
当該後続ステップBSにスタートフラグが立っているか
否か判断する。スタートフラグが立っていれば、処理S
16に進み、当該後続ステップBSの状態を「read
y」とし、判断S11に戻る。
【0105】すなわち、判断S19において、スタート
フラグが立っている状態は、現在ステップからはルーテ
ィングを行なわない後続ステップBSに、現在ステップ
と異なる他のステップからのルーティングが行なわれる
ことが決定されていて、そのルーティングが待ちの状態
になっていることを示している。そして、当該後続ステ
ップBSの前ステップはすべて終了であると判断S18
で既に判断されているので、当該後続ステップへのルー
ティングが可能になる。このため、処理S16に進ん
で、「ready」の状態となる。
【0106】また、判断S19において、スタートフラ
グが立っていないと判断されたときには、処理S20に
進み、当該後続ステップBSの状態を「isolat
e」にする。次に、処理S21に進み、当該後続のステ
ップBSの後続のステップに移行してそのステップに対
して処理S18から処理S20までの処理を行なう。こ
うして、「isolate」の状態になったステップの
後続のステップについて、処理S18から処理S20ま
での処理を再帰的に行なう。その後、判断S11に戻
る。
【0107】<第1の実施例が適用されたワークフロー
の具体例>ワークフローの第1の具体例として、以下、
図面作成処理のフローの場合の例について説明する。
【0108】図5は、図面作成処理のフローの例を有向
グラフにより現したものである。この例の図面作成処理
のワークフローは、ステップ番号1のステップ(以下、
ステップ1という)が「図面の作成」、ステップ番号2
(以下、ステップ2という)と、ステップ番号3(以
下、ステップ3という)とが「図面の検査」、ステップ
番号4(以下、ステップ4という)が「図面の承認」の
4つのステップからなり、ステップ1からステップ2ま
たはステップ1からステップ3に分岐し、ステップ2お
よびステップ3からステップ4に合流するものとして定
義されている。
【0109】この例の場合、テンプレート管理部11で
管理される、定義されたワークフロー(テンプレート)
に関するデータは、図6に示すような、ワークフローが
どのような複数のステップからなっているかを示すステ
ップテーブルSTと、図7に示すような、ステップの実
行順序の情報である実行順序テーブルOTとからなる。
実行順序テーブルOTには、ステップ識別子としてのス
テップ番号を用いて前後のステップが記述されることに
よりアークが記述されることになる。なお、実行順序テ
ーブルOTにおいて、ステップ番号「0」は、開始のス
テップ、ステップ番号「NULL」は、終了のステップ
を示している。
【0110】この例の場合には、複数個のワークフロー
を同時に管理することを想定しているためステップテー
ブルSTと、実行順序テーブルOTには、ワークフロー
識別子が付与されており、このワークフロー識別子によ
り、いずれのワークフローであるかが一意に識別され
る。図の例のワークフロー識別子「1000」は、図面
作成処理のワークフローを示している。
【0111】この例の説明において、ステップ番号は各
ステップの識別子となる。また、ステップ名は、各ステ
ップで行なう作業内容を示す作業名である。担当者の欄
には、各ステップの作業を実行するユーザ名が記述され
る。ユーザの代わりに、営業部門、設計部門などの担当
部門が担当者として設定される場合や、図面作成者、検
査者、承認者などの作業を実行する役割者名が記述され
る場合もある。担当ユーザ名の代わりに担当部門名や、
役割者名が担当者の欄に記述される場合には、ユーザ管
理部15で管理されている、個々のユーザと担当部門と
の対応や、個々のユーザと役割者名との対応に応じて実
際に担当するユーザ名が決定される。
【0112】前述したように、ワークフローを流れるデ
ータを管理するために、パケットにワークフローを実行
するための必要な様々な情報を含めて、各ステップから
次ステップへと渡される。
【0113】ワークフローにおけるパケットの流れと、
その内容の変化と、パケットの情報フィールドを用いた
ルーティングの決定の仕方の例を、この例の図面作成の
ワークフローを用いて以下に説明する。
【0114】(1)担当者によるルーティングの決定の
場合 まず、ステップ1の担当者が、その後続のステップ2、
3にどのようにルーティングするかを決定する場合につ
いて説明する。
【0115】まず、起動者によってワークフローが起動
される。起動する際に、起動者は、最初のステップの担
当者宛てのメッセージがあれば、その通信文を書く。
【0116】図8は、ステップ1が開始されるときに作
成され、ステップ1の担当者に送られるパケットの内容
の例であり、フィールド名と、そのフィールド値からな
る。フィールド名「担当者」「作業名」「概要」の欄の
フィールド値は、ワークフローを定義したときに定義さ
れている値であり、ワークフローシステムがワークフロ
ーデータから転記する。
【0117】フィールド名「コメント」の欄はワークフ
ローを起動した者が、最初のステップの担当者宛ての通
信欄として使用することができる。1回、ワークフロー
が起動されると、この「コメント」の欄は、前の担当者
から次の担当者への連絡用に使われる。
【0118】フィールド名「Date」「Curren
t Step」の欄のフィールド値は、それぞれ当該パ
ケットが送信された日付と、送信の宛先のステップ番号
であり、ワークフローシステムが自動的に追加する。
【0119】そして、ワークフローシステムは、起動者
によるワークフローの起動を受けて、ステップ1の状態
を「ready」にしたとき、前述したルーティング前
処理を実行する。このルーティング前処理では、ステッ
プ1の下流に、ステップ2とステップ3の二つのステッ
プがあるため、ルーティングのための二つのフィールド
「step−1−2」「step−1−3」を付加し、
デフォルトのフィールド値として「真(図ではtrue
と示した。以下同じ)」を挿入する。
【0120】フィールド「step−1−2」は、ステ
ップ1からステップ2へのアークを示し、フィールド
「step−1−3」は、ステップ1からステップ3へ
のアークを示している。なお、前述もしたように、フィ
ールド値の「真」は、ルーティングを行なうことを意味
しており、「偽(図ではfalseと示す。以下同
じ)」はルーティングを行なわないことを意味してい
る。
【0121】前述したように、ステップ1の状態が「r
eady」になった後、担当者から作業開始の合図が来
ると、上述の図8のような内容の最初のパケットが、ス
テップ1の担当者に送られる。ステップ1の担当者は、
受け取ったパケットの中身を見て、自分の仕事が図面作
成であることを知り、図面作成の作業を行なう。作成し
た図面は、担当者がパケットに追加する。担当者は、ま
た、必要に応じて次ステップの担当者に宛てたメッセー
ジをパケットの「コメント」の欄に挿入する。
【0122】また、ステップ1の担当者は、パケット内
のルーティングの情報フィールドである二つのフィール
ド「step−1−2」「step−1−3」のフィー
ルド値を書き換えることにより、後続の二つの検査のス
テップ2とステップ3に対するルーティングを決定する
ことができる。この例では、デフォルトのフィールド値
は、「真」であるので、フィールド値を書き換えること
は、ルーティングを行なわないことを指示することに等
しい。
【0123】ステップ1の作業が終了したときのパケッ
トの例を図9に示す。この図9のパケットでは、ステッ
プ1の担当者によって、ステップ3にルーティングを行
なわないように指示されている。なお、パケットの情報
フィールドの欄の内、「担当者」や「Date」などの
ワークフローシステムが用いる欄は、担当者が勝手に変
えることはできないように構成されている。
【0124】ステップ1が終了すると、その終了の合図
と共に、図9のパケットがワークフローシステムに返送
されてくる。このパケットを受けると、ワークフローシ
ステムは、前述したように、ルーティング後処理を開始
する。
【0125】すなわち、ワークフローシステムは、受け
取ったパケットの中身を検査し、ルーティングの情報を
用いて後続のステップに対するルーティングを行なうか
否かの決定を行なう。この例の場合には、フィールド
「step−1−2」の値が「真」であるので、ステッ
プ2にはルーティングを行なう。しかし、フィールド
「step−1−3」は「偽」であるので、ステップ3
にはルーティングを行なわない。そして、ステップ2に
は、ルーティングを行なうので、その状態を「read
y」にする。また、ステップ3には、ルーティングを行
なわないので、その状態を「isolate」にする。
【0126】そして、ルーティングを行なうステップ2
にパケットを送るために、ワークフローシステムは、
「担当者」「作業名」「概要」などのフィールドの値を
入れ替え、また、ルーティング前処理を行って、フィー
ルド「step−2−3」をパケットに付加し、そのフ
ィールド値としてデフォルトの「真」を挿入し、そのパ
ケットをステップ2の担当者に宛てて送る。ただし、こ
のフィールド「step−2−3」のように、後続のス
テップが一つしかない場合には、そのデフォルトのフィ
ールド値は、「担当者」や「Date」などの欄と同様
に、担当者が勝手に書き換えることができないように構
成されている。
【0127】ステップ2の担当者は、受け取ったパケッ
トの中身を見て、自分の仕事が図面検査であることを知
り、図面検査の作業を行なう。検査後の図面は、担当者
がパケットに戻す。担当者は、また、必要に応じて次ス
テップの担当者に宛てたメッセージをパケットの「コメ
ント」の欄に挿入する。
【0128】そして、ステップ2の作業が終了すると、
終了の合図と共に、前記パケットがワークフローシステ
ムに戻される。ワークフローシステムは、終了の合図に
よって、ステップ2の状態を「run」から「comp
lete」にする。そして、ルーティング後処理を行な
い、パケットのルーティング情報フィールド「step
−2−3」の値が「真」であることから、ステップ4に
ルーティングを行なうことを決定するが、ステップ4に
は、前ステップとして、ステップ3の存在するので、ス
テップ2の状態だけでなく、ステップ3の状態をも参照
する。このとき、ステップ3の状態は「isolat
e」になっているので、ステップ2の状態「compl
ete」と合わせて、ステップ4の前ステップのすべて
が終了したと判断して、前述と同様にしてステップ4に
ルーティングを実行する。
【0129】(2)アークに付いたルールによるルーテ
ィングの決定の場合 この例の場合、ワークフローの定義時に、分岐のときの
アークに対してルールを記述しておく。このルールの例
を図10および図11に示す。図10は、ステップ1か
らステップ2へのアークに付いているルールの例であ
り、「ステップ1で計算された見積もり金額が1000
0円を越えた場合には、ステップ2にルーティングを行
ない、ステップ3にはルーティングを行なわない、10
000円以下の場合には、ステップ3にルーティングを
行ない、ステップ2にはルーティングを行なわない」と
いう内容である。
【0130】また、図11は、ステップ1からステップ
3へのアークに付いているルールの例であり、「ステッ
プ1で計算された見積もり金額が10000円以下であ
る場合には、ステップ2にルーティングを行ない、ステ
ップ3にはルーティングを行なわない、10000円を
越えた場合には、ステップ3にルーティングを行ない、
ステップ2にはルーティングを行なわない」という内容
である。
【0131】この例の場合には、ステップ1にルーティ
ングが行なわれるときに、ルーティング前処理により、
そのステップ1の担当者に送られるパケットには、図1
2に示すように、ステップ1からステップ2へのアーク
およびステップ1からステップ3へのアークに関するル
ーティング情報フィールド「step−1−2」「st
ep−1−3」に加えて、「見積もり」のフィールドが
追加される。
【0132】ステップ1の担当者は、前述したようにし
て、図面作成の作業を行なうと共に、見積もり金額を計
算し、その金額をパケットの「見積もり」のフィールド
に、そのフィールド値として挿入する。例えば担当者は
見積もり金額を「12000円」と決定した場合、その
値「12000」をフィールド「見積もり」の値として
挿入する。この場合のステップ1の終了時のパケットの
例を図13に示す。
【0133】ステップ1の担当者が作業を終了し、その
合図をしたとき、図13のパケットがワークフローシス
テムに返送される。これを受けて、ワークフローシステ
ムは、ルーティング後処理を開始する。この場合、ステ
ップ1の後続のアークには、ルールが付いているので、
パケットに追加されているルーティング情報の真理値を
確認する代わりに、返送されてきた図13のパケットの
フィールド「見積もり」の値を用いて、ステップ1に後
続のアークに付いているルールをすべて評価し、その評
価結果によりルーティングを決定する。
【0134】前述したように、ルールの評価は、ルール
評価部34で行なわれる。まず、ステップ1からステッ
プ2へのアークに付いているルールが評価される。この
例の場合には、パケットのフィールド「見積もり」の値
が「12000」であるため、評価結果は「真」とな
る。したがって、ステップ2には、ルーティングが行な
われる。
【0135】次に、同様にして、ステップ1からステッ
プ3に向かうアークに付いているルールの評価が行なわ
れる。この例の場合には、パケットのフィールド「見積
もり」の値が「12000」であるため、評価結果は
「偽」となる。したがって、ステップ3には、ルーティ
ングが行なわれない。
【0136】以上のようにして、あらかじめアークに対
して定義されたルールを用いることにより、前のステッ
プの作業結果に応じて後のステップに対するルーティン
グをワークフローシステムが動的に決定することができ
る。この場合には、ルーティング情報フィールドを参照
する必要はない。
【0137】なお、以上の実施例では、ルールがアーク
に付いている場合に、パケットに含まれるルーティング
情報フィールドに対してルールを優先としてルーティン
グを行なったが、ステップの担当者がルーティング情報
フィールドの真理値を変更したときには、当該担当者に
より設定変更されたルーティング情報フィールドをルー
ルに優先するようにしてもよい。
【0138】[この発明の情報処理システムの第2の実
施例]上述した第1の実施例においては、ワークフロー
システムによるルーティングの指定方法はアークについ
て定義したルールを、ルーティング後処理において評価
してルーティングを決定するようにしたが、第2の実施
例においては、ステップの状態などについてルールを定
義して、そのルールの評価結果として得られるルーティ
ングに関する真理値を、システムがルーティング情報フ
ィールドに書き込むようにする。
【0139】この第2の実施例の場合には、ルーティン
グ後処理においては、ルールの評価を行なう必要がない
ので、ルーティング後処理のルーチンは、図14のルー
チンS100に示すように、図4のルーティング後処理
のルーチンS10において、判断S12と、処理S13
とを省略し、判断S11の判断結果が「NO」の場合に
は、判断S14に進むようにしたものとすることがで
き、ルーティング後処理のソフトウエアを簡略化でき
る。
【0140】なお、第1の実施例においても、アークに
ついて記述されているルールを、ルーティング後処理の
前に必ず実行し、ルールの評価結果により、ルーティン
グ情報フィールドの真理値を書き換えるようにしておく
ことにより、ルーティング後処理のソフトウエアを簡略
化できる。
【0141】[第2の実施例が適用されたワークフロー
の具体例]第2の実施例が適用されたワークフローの具
体例として、以下、設計変更処理のフローの場合の例に
ついて説明する。
【0142】以下に説明するワークフローの実施例にお
いては、ステップの状態について定義されたルールによ
り、ルーティングを決定するための情報の生成を行な
い、後述する自動実行ステップによりルーティング情報
フィールドに、ルーティングを行なうか否かを決定する
ための真理値を記入するようにしている。
【0143】<自動実行ステップ>この第2の実施例に
おいては、ワークフロー中の作業の中には、人間よりも
機械の方が向いている作業も存在することにかんがみ、
特に担当ユーザを定めずに、自動的に作業の実行を行な
うステップを創設する。以下、このタイプのステップを
自動実行ステップと呼び、これと担当ユーザが実行する
タイプの通常のステップとを区別する必要があるとき
は、担当ユーザが実行するステップを通常ステップと呼
ぶことにする。
【0144】自動実行ステップの作業は、この例ではワ
ークフローシステム内で行なう作業として定義される。
ワークフローシステムは、自動実行ステップの状態が
「ready」になった時には通知を出さず、即座に
「run」の状態へと移行させる。そして、予め定義さ
れた作業をワークフローシステム内で自動的に実行し、
それが終了すると自動的に「complete」の状態
として、次ステップに対するルーティングを行なう。
【0145】なお、ワークフローシステム自身ではな
く、ワークフローシステムの管理下にあるハードウエア
に仕事をさせるようにしてもよい。
【0146】人間が担当しない作業であっても、ワーク
フローシステム内ではない、あるいは、ワークフローシ
ステムの管理下ではない他のシステムに作業の実行をさ
せるステップも考えられる。しかし、その場合には、当
該ステップの作業を実行するシステムを担当者として、
他のシステムを割り当てれば、通常ステップとして扱う
ことができる。すなわち、この場合、当該他のシステム
は、ワークフローシステムから通知を受けると、即座に
作業の開始の合図を送って作業を開始し、作業が終了す
ると終了の通知をワークフローシステムに送るように、
ソフトウエアにより処理する。このようにすることによ
り、人間以外の機械を担当者として、ワークフローシス
テム外のネットワーク上に設定することもできる。
【0147】<サブフロー>また、この第2の実施例で
は、複雑で、規模の大きいワークフローを、より柔軟
に、かつ、様々な局面に対応することができるようにす
るために、ワークフローを階層的に動作させることがで
きるようにしている。
【0148】すなわち、ワークフローを上位のメインフ
ローと、その下位のサブフローとから構成する。サブフ
ローは、メインフローの内の適宜の一つのステップに結
び付いたものであって、その結び付いたステップの作業
を細分化した複数のステップと、その複数のステップ間
の前後のつながりをアークで定義したものである。サブ
フローが一つのステップに結び付いているということ
は、その結び付かれているステップは、サブフローが終
了しないと終了できないことを意味している。
【0149】サブフローは、一つのステップに対して、
複数個、定義することもでき、その場合には、すべての
サブフローが終了しないと、それら複数のサブフローが
結びついているステップは終了できない。
【0150】この例の場合には、サブフローが結び付い
ているステップが「run」の状態になったときに、そ
のステップの担当者が、自分の作業をより詳細化し、そ
の作業を実行するために相応しいと思われるサブフロー
を新たに定義して、起動する。サブフローの典型例をあ
らかじめ登録しておき、その中から起動するサブフロー
を、ステップの担当者が選ぶようにすることもできる。
【0151】サブフローの各ステップは、すべて通常ス
テップで構成することもできるし、サブフローのすべて
のステップを自動実行ステップで構成することもでき
る。また、サブフローの一部を自動実行ステップで構成
することも、もちろんできる。
【0152】また、サブフローをあらかじめ定義してお
き、このサブフローが結び付いているステップが「re
ady」の状態になったら、自動的にサブフローを起動
するようにすることもできる。その場合に、起動するサ
ブフローは複数個あってもよい。また、当該複数個のサ
ブフローのすべてを自動実行ステップで構成した場合に
は、一つのステップに対して自動で起動され、処理が自
動で実行される複数の作業を容易に定義することが可能
になる。
【0153】このように、ステップの担当者がサブフロ
ーを定義して起動し、そのサブフローが終了しない限
り、当該ステップが終了することができないようにする
ことにより、メインのワークフロー中には、当該サブフ
ローが結び付いているステップの代わりに、そのサブフ
ローの内容を詳細に定義する必要がなくなり、ワークフ
ローの管理が容易になる。
【0154】<設計変更プロセスと、そのワークフロー
>まず、この例の設計変更プロセスについて説明する。
典型的な設計変更のプロセスは、例えば以下の手順のよ
うに行なわれる。
【0155】1.設計変更の要求 2.要求の受け付け 3.変更のレビュー 4.実施の可否 5.設計変更 6.承認 7.配布。
【0156】まず始めに設計変更の要求が上がる。これ
は必ずしも設計部門で起こるとは限らない。設計変更の
詳細は文書化されて、設計部門の設計変更担当の窓口へ
と送られる。
【0157】設計部門の窓口で設計変更の要求を受け取
ると、その変更を実際に行なうかどうかを決定しなけれ
ばならない。窓口では変更を行なうかどうかを判断する
ためのレビュワーを決定し、各レビュワーに対して、該
当する図面と変更内容を伝え、実際に変更を行なうかど
うかを決定して欲しい旨の依頼をする。
【0158】各レビュワーは送られてきた図面と変更内
容を吟味し、実際に変更を行なうかどうかを決定し、集
計を行なう担当者に結果を報告する。集計を行なう担当
者は各レビュワーから送られてきた結果を元に、実際に
変更を行なうか行なわないかを決定する。通常は多数決
もしくは全員一致により、変更が決定される。
【0159】変更が行なわれないことが決定したら該当
図面と変更要求内容を設計部門に送付し、実際の設計変
更を依頼する。また、設計変更を行うことが決定したら
該当図面と変更要求内容を設計部門に送付し、実際の設
計変更を依頼する。
【0160】設計部門では、該当図面と設計変更要求を
受け取ると、設計変更を行なう担当者を決め、実際の設
計変更を行なう。
【0161】設計変更が終了すると、変更された図面と
要求内容とともに、変更された内容などを記述した書面
が添付され、設計部門長宛に送られる。設計部門長は送
られてきた図面を承認する。承認を受けた図面は関係各
部門に配布される。
【0162】以上のような設計変更プロセスを定義した
ワークフローの例を図15を示す。各ステップの機能は
以下のように、ワークフローの定義者により定義されて
いる。
【0163】「開始」のステップはワークフローの開始
を表す。実際の業務と照らし合わせると、設計変更の要
求を上げることに当たる。なお、「開始」のステップ
は、自動実行ステップの一種である。
【0164】「要求受け付け」のステップは、設計変更
を設計部門の窓口の担当者(事務局)が受け取ることを
表す。ここで、受け付けられた設計変更の要求に対し、
窓口の担当者は該当する図面を添付し、各レビュワーに
配布する。
【0165】「レビュー(1)」、「レビュー
(2)」、「レビュー(3)」のステップは、それぞ
れ、設計部門において設計変更を行なうかどうかを判断
するためのレビューを行なうステップである。ここでは
各レビュワーは送られてきた図面と設計変更の要求を照
らし合わせ、実際に設計変更を行なうか、行なわないか
を、それぞれ決定する。
【0166】「受理?」のステップは、各レビュワーの
結論を集計し、実際に設計変更を行なうか行なわないか
の決定を下す。この例では、この「受理?」のステップ
は、自動実行ステップで、ワークフローシステムが自動
的に各レビュワーの結論を集計し、予め設定された規則
にそって、設計変更要求を受理するかどうかを決定す
る。設計変更要求が受理された場合は「設計変更」のス
テップへと進む。受理されなかった場合は「要求却下」
のステップへ進む。
【0167】「要求却下」のステップは、設計変更要求
が受理されなかった場合に事後処理を行なうステップで
ある。
【0168】「設計変更」のステップは、実際の設計変
更を行なうステップであり、設計部門の担当者に送られ
る。実際の設計変更は、別のワークフロー、すなわち、
サブフローを起動し、より詳細に作業を進めるようにし
ている。
【0169】「承認」のステップは、設計変更された図
面を承認するためのステップである。設計部門長が図面
をチェックし、承認印を図面にいれる。
【0170】「設計変更配布」のステップは、変更され
た図面を関係部門に配布するためのステップである。
【0171】上述したワークフローの定義は、ワークフ
ローシステムの編集機能により行われる。このワークフ
ローの定義時の作業は大きく分けて、 ステップの作成 ステップの接続 ルールの記述 の3つがある。各ステップの作成は各種属性、すなわ
ち、ステップが通常ステップか、自動実行ステップかを
表す「タイプ」、ステップの作業内容を示す「名前」、
「担当者」(この例では、担当部門)のほか、ルールの
設定も含む。この例における各ステップの初期属性値
(定義時の属性値)を、図16から図26までに示す。
【0172】各ステップを作成したら、流れにそって、
前後のステップを接続していく。このステップの作成、
接続の作業を繰り返すことによって、ワークフロー全体
を作成する。
【0173】必要に応じて、各ステップにはルールを記
述する。ルールは、前述したようにアークについて定義
することもできるし、また、ステップの各状態ごとに付
けることもできる。
【0174】この例では、「レビュー(1)」、「レビ
ュー(2)」、「レビュー(3)」のステップの状態
「run」のルールで、パケットに「投票($vot
e)」という名前のブール(boolean)型の変数
「投票結果」(後述する図42参照)のフィールドを追
加する。この「レビュー(1)」、「レビュー
(2)」、「レビュー(3)」のステップの状態「ru
n」のルールを図27に示す。各ステップ「レビュー
(1)」、「レビュー(2)」、「レビュー(3)」の
担当者は、その変数「投票結果」のフィールドの欄を埋
める。
【0175】ワークフローシステムは、各ステップ「レ
ビュー(1)」、「レビュー(2)」、「レビュー
(3)」の状態「complete」のルールでこれの
集計を行なう。この「レビュー(1)」、「レビュー
(2)」、「レビュー(3)」のステップの状態「co
mplete」のルールを図28に示す。ワークフロー
システムは、集計を行なった結果を元に、自動実行ステ
ップである次のステップ「受理?」でルーティングを決
定する。
【0176】ステップ「受理?」で実行される内容は、
図20において、属性「スクリプト」に示されている。
図20の例の場合の「スクリプト」の内容は、「投票数
が2以上のときには、ステップ「設計変更」にルーティ
ングを行い、ステップ「要求却下」にはルーティングを
行わなず、投票数が2以上でなければ、ステップ「設計
変更」にはルーティングを行わず、ステップ「要求却
下」にルーティングを行なう」というものである。
【0177】以上のようにしてワークフローの定義を終
了したらワークフローの開始を宣言する。ワークフロー
の開始とは具体的には、定義したワークフローのワーク
フローシステムへの登録、登録されたワークフローの開
始の2段階である。
【0178】図29にワークフローの定義から起動まで
の起動者の処理の流れ図を示す。まず、始めに、あらか
じめ登録されている既存のワークフローを検索し(手順
S21)、その中に、行おうとする業務に適応している
ワークフローがあるか否か判断する(手順S22)。適
応しているワークフローがあれば、そのワークフローが
修正の必要があるか否か判断し(手順S23)、修正の
必要があれば、その修正を行う(手順S24)。そし
て、修正が終了した後、あるいは、修正の必要がなけれ
ばそのまま、ワークフローをワークフローシステムに登
録する(手順S25)。
【0179】また、手順S22で、あらかじめ登録され
ている既存のワークフローに、望みのワークフローがな
かったときには、新しいワークフローを定義し(手順S
26)、このワークフローをワークフローシステムに登
録する(手順S25)。
【0180】以上のようにしてワークフローシステムに
ワークフローが登録されると、ワークフローシステム
は、自動的にワークフローの開始の作業に移る。まず始
めに、必要な初期化を行ない、先頭のステップの作業を
開始する。
【0181】図30は、初期化の際のワークフローシス
テムの処理ルーチンS30の一例のフローチャートであ
る。すなわち、まず、定義されたワークフローのすべて
のステップの状態を、「not ready」に初期化
する(処理S31)。次に、最初のステップを探し(処
理S32)、その最初のステップの状態を「read
y」にして、この処理ルーチンS30を終了する。
【0182】こうして、ステップの状態が「not r
eady」から「ready」になるとき、ワークフロ
ーシステムは、状態「ready」時の処理ルーチンS
40を実行する。図31に、この処理ルーチンS40の
一例のフローチャートを示す。
【0183】まず、「ready」の状態になったステ
ップについて、「ready」においてのルールがあれ
ばそれを実行する(処理S41)。ルールの実行が済ん
だら、当該ステップは自動実行ステップか否か判断し
(判断S42)、自動実行ステップでなく、通常ステッ
プであれば、その担当者に対して、通知を送って(処理
S43)、この処理ルーチン40を終了する。
【0184】また、判断S42での判断の結果、自動実
行ステップであると判断されたときには、処理S44に
移って、通知をすることなくステップの状態を「ru
n」にして、この処理ルーチン40を終了する。
【0185】「ready」になったステップが通常ス
テップの場合には、前記通知に対して担当者が作業の開
始を宣言するとステップは「run」の状態となる。自
動実行ステップの場合には、前述のように、「read
y」から即座に「run」の状態になる。ステップの状
態が「run」になると、ワークフローシステムは、状
態「run」時の処理ルーチンS50を実行する。図3
2は、この処理ルーチンS50の一例のフローチャート
である。
【0186】まず、担当者に送るパケットを作成する
(処理S51)。そして、当該ステップに「run」状
態についてのルールがあれば、それを実行する(処理S
52)。ルールの実行が済んだら、当該ステップは自動
実行ステップか否か判断し(判断S53)、自動実行ス
テップでなく、通常ステップであれば、その担当者に対
して、パケットを送って(処理S54)、この処理ルー
チン50を終了する。
【0187】また、判断S53での判断の結果、自動実
行ステップであると判断されたときには、処理S55に
移って、パケットを送ることなくステップの状態を「c
omplete」にして、この処理ルーチン50を終了
する。
【0188】ステップが通常ステップの場合には、担当
者が終了を宣言すると「complete」状態になる
が、サブフローが当該ステップで実行中は、担当者が終
了宣言をしても、ステップの状態は「complet
e」にはならない。自動実行ステップの場合には、前述
のように、自動実行の作業が終了すると、ワークフロー
システム自身が「run」から「complete」の
状態に移行させる。ステップの状態が「complet
e」になるとき、ワークフローシステムは、状態「co
mplete」に関する処理ルーチンS60を実行す
る。図33は、この処理ルーチンS60の一例のフロー
チャートである。
【0189】まず、サブフローが実行中か否か判断し
(処理S61)、実行中であればこのルーチンS60を
そのまま終了する。前述したように、サブフローが当該
ステップで起動されているときには、当該ステップに結
び付いているすべてのサブフローが終了しないと当該ス
テップは、終了できないからである。
【0190】サブフローがすべて終了しているときに
は、処理S62に進んで、当該ステップの状態「com
plete」についてルールが定義されていればそのル
ールを実行する。ルールの実行が済んだら、当該ステッ
プは自動実行ステップか否か判断し(判断S63)、自
動実行ステップでなく、通常ステップであれば、前述し
たルーティング(ルーティング後処理およびルーティン
グ前処理)を行い(処理S64)、この処理ルーチン6
0を終了する。
【0191】また、判断S63での判断の結果、自動実
行ステップであると判断されたときには、処理S65に
移って、定義されているスクリプトを実行した後、処理
S64に移行してルーティングを行った後、この処理ル
ーチンS60を終了する。以下、最後のステップの作業
が終了するまで、以上と同様に繰り返す。
【0192】次に、前述した設計変更のワークフローの
例を用いてさらに詳細に説明する。
【0193】<ワークフローの開始>まず始めに、ワー
クフローの定義者がワークフローシステムに対して、定
義したワークフローの登録を行なう。もしくはワークフ
ローは予め定義されており、定義者とは異なる者により
ワークフローが登録されることもある。
【0194】この例では、予め定義されていたワークフ
ローを用いて定義者とは異なる者がワークフローをワー
クフローシステムに登録したものとする。この登録した
者は、実際的には設計変更の依頼を行なう人である。こ
の設計変更の依頼者はワークフローの最初の担当者に対
して、メッセージを送ることができる。この機能は通常
の電子メールに類似の機能である。この例では、ワーク
フローの起動者は最初のステップの担当者(ここでは
「要求受け付け」の担当者、すなわち事務局)に対し
て、“部品Xの幅を1mm大きくして欲しいのです
が。”というメッセージを送ったものとする。
【0195】登録が行なわれると、ワークフローシステ
ムは初期化の作業を行なう。図16〜図26に示したよ
うに、定義されたばかりのステップは状態をもたない
が、この初期化により、全てのステップの状態は「no
t ready」にされる(例えば図34参照)。
【0196】ワークフローシステムの初期化が終了する
と、先頭のステップが開始される。この例の場合、先頭
のステップは「開始」である。「開始」のステップが開
始されるということはすなわち、「開始」のステップが
「ready」状態になるということである(図3
5)。
【0197】ステップが「ready」状態になると、
通常、ワークフローシステムはステップの担当者に通知
を送る。しかし、「開始」は特殊なステップ(自動実行
ステップの一種)であるために、通知は送られず、即座
に「run」状態へと移行する。(図36)。
【0198】自動実行ステップであれば、この「ru
n」状態への移行により、定義時に指定された動作を行
うのであるが、「開始」は開始を合図するための特殊な
ステップであるために、この定義がない。したがって、
ここでは、何もせずに「complete」の状態へと
移行する(図37)。
【0199】ステップ「開始」の状態が「comple
te」になると、ワークフローシステムはルーティング
を開始する。この場合、後続のステップは「要求受け付
け」のみであるために、特別なことは行なわず、ステッ
プ「要求受け付け」に対して、ルーティングが行なわれ
る。
【0200】ステップ「要求受け付け」が「read
y」状態になると、このステップの担当者に対して通知
が送られる。担当者は、例えば電子メールを読むような
感覚で通知を受け取る。この通知の例を図38に示す。
【0201】この通知を受け取った担当者が開始の合図
をワークフローシステムに対して送ると、ワークフロー
システムからそのステップの作業を行なうために必要な
情報などを織り込んだパケット(図39参照)が送り返
される。このパケットには、後続の3つのステップ「レ
ビュー(1)」「レビュー(2)」「レビュー(3)」
へのルーティングを決定するためのルーティング情報が
付加されている。
【0202】担当者はパケットの中の情報を元に要求さ
れた作業を行なう。ステップ「要求受け付け」の作業は
要求内容を確認し、設計変更を依頼された部品の図面を
集め、設計部門のレビュー担当者に対して、レビューを
依頼することである。この作業に関する記述は予めワー
クフローを定義した定義者によって定義されており、前
記通知のなかの、図38の例では「Descripti
on:」フィールドに、作業内容として織り込まれてい
る。通知には、この他に、ワークフローの起動者からの
メッセージが、図38に示すように、「Commen
t:」フィールドに含まれている。
【0203】「要求受け付け」の担当者は、「Desc
ription:」フィールドと、「Commen
t:」フィールドのふたつの記述を元に、必要な図面を
集め、パケットに添付する。ここでは設計変更の要求は
部品Xについてなので、担当者は部品Xの図面を探し出
しパケットに加える。
【0204】次にレビューを担当する担当者を決める。
この例ではレビュー担当者は3人定義されている。通常
は全員の投票によってレビューが行なわれるため、ステ
ップ「要求受け付け」の担当者に送られるパケットに含
まれているルーティング情報の各レビュワーに対応する
真理値の値は、ワークフローシステムにより全て「真
(true)」に初期化されている。
【0205】今、例えばステップ「要求受け付け」の担
当者が、特にレビュワーの変更の必要がないと判断した
場合には、ルーティング情報の真理値は変更しない。こ
のため、パケットのルーティング情報は、変更されず
に、システムに送り返される。また、このとき、担当者
は各レビュワーに送るコメントを記述し、パケットに含
める。この例の場合の作業終了結果のパケットは図40
に示すようなものとなる。
【0206】ワークフローシステムは、このパケットを
受け取ると、ルーティング情報をチェックする。この例
では、ルーティング情報の中身は全て「真」であるた
め、全ての後続のステップに対してルーティングが行な
われる。
【0207】「レビュー(1)」が「ready」状態
になると「レビュー(1)」の担当者に対して、通知が
送られる。この通知には「要求受け付け」の担当者が記
入したコメントが書かれている(図41参照)。
【0208】「レビュー(1)」の担当者は、この通知
を読み、開始を宣言する。このとき、「レビュー
(1)」のステップには、図27に例示したように、ル
ールが定義されているため、パケットを担当者に送信す
る前に、ワークフローシステムはそのルールを実行す
る。その結果、担当者に送られるパケットには、図42
に示すように、投票用のフィールド「投票結果」が追加
される。
【0209】ルールの実行が終わると、ワークフローシ
ステムより図42に示したパケットが送られる。このパ
ケットの中には「要求受け付け」の担当者が追加した図
面が含まれている。また、ステップ「レビュー(1)」
の後ろにはひとつしかステップがないため、ルーティン
グ情報は空になっている。すなわち、ステップ「レビュ
ー(1)」の担当者はルーティングを指示することはで
きない。
【0210】ステップ「レビュー(1)」の担当者は、
ステップ「要求受け付け」の担当者からのコメントに従
い、送られてきた図面と設計変更要求をチェックし、実
際に設計変更を行なうべきか行なわないべきかを決め、
パケットの投票用のフィールド「投票結果」に自分の判
断をyes/no形式で記入する。例えば、ステップ
「レビュー(1)」の担当者が「yes」と投票し、所
定のコメントを記述したとすると、パケットは、図43
に示すようなものとなる。
【0211】こうして作業が終了したステップ「レビュ
ー(1)」の担当者は、自分の意見を含めたパケット
(図43)とともに、作業の完了をワークフローシステ
ムに通知する。この時、ステップ「レビュー(2)」と
ステップ「レビュー(3)」が、まだ終了していない場
合には、ワークフローシステムは、ルーティング後処理
において、次のステップ「受理?」について、スタート
フラグを立てるだけで処理を終了する。
【0212】また、このとき、ステップ「レビュー
(1)」には、図28に例示したように、「compl
ete」時のルールも定義されているため、これが実行
される。実行された結果、「投票結果」のフィールドが
「yes」であるため、「$vote」という変数がイ
ンクリメントされる。この結果「$vote」という変
数の値は1となる。
【0213】ステップ「レビュー(2)」の動作は、ス
テップ「レビュー(1)」と同様である。ただし、この
例では、ステップ「レビュー(2)」の担当者は設計変
更に非同意で、投票用のフィールド「投票結果」に「n
o」と記入し、コメントを付加したとする。このステッ
プ「レビュー(2)」の終了時のパケットの例を図44
に示す。
【0214】作業が終了したステップ「レビュー
(2)」の担当者は、自分の意見を含めたパケット(図
44)とともに、作業の完了をワークフローシステムに
通知する。ここで、未だ、ステップ「レビュー(3)」
が終了していないとすると、ワークフローシステムは、
図14に示したルーティング後処理の処理ルーチンS1
00において、「受理?」ステップのスタートフラグを
立てる(実際にはすでに立っているが)だけで処理を終
了する。
【0215】また、ステップ「レビュー(2)」の「c
omplete」時のルールが実行されるが、「投票結
果」のフィールドが「no」であるため、変数「$vo
te」はインクリメントされず、その値は1のままであ
る。
【0216】ステップ「レビュー(3)」の動作も、ス
テップ「レビュー(1)」と同様である。ただし、この
例では、ステップ「レビュー(3)」では担当者は設計
変更に同意で、投票用のフィールド「投票結果」に「y
es」を記入し、コメントを付加したものとする。
【0217】作業が終了すると、ステップ「レビュー
(3)」の担当者は、自分の意見を含めたパケットとと
もに、作業の完了をワークフローシステムに通知する。
ここで、全てのレビューが終了したため、「受理?」ス
テップは作業を開始することが可能となる。すなわち、
ワークフローシステムは、ルーティング後処理におい
て、「受理?」ステップはスタートフラグが立っている
ため、状態「isolate」とはせずに、「read
y」状態とする。
【0218】また、ステップ「レビュー(3)」の「c
omplete」時のルールが実行される。ここでは、
「投票結果」のフィールド値が「yes」であったた
め、変数「$vote」はインクリメントされ、値は2
となる。
【0219】ステップ「受理?」は、この例では、自動
実行ステップである。この例では、図20に例示したよ
うに、上流の3つのステップ「レビュー(1)」「レビ
ュー(2)」「レビュー(3)」の投票結果を集計し、
その結果によってルーティングを変更するためのスクリ
プトが予め定義してある。
【0220】前述したように、ここで定義されているス
クリプトは、上流の各レビュワーから返された投票結果
を集計し、多数決を行なうもので、設計変更を行なうこ
とに対し、「yes」が勝った場合は、ステップ「要求
却下」にはルーティングを行なわずに、ステップ「設計
変更」にルーティングを行ない、逆に「no」が勝った
場合は、ステップ「要求却下」にルーティングを行な
い、ステップ「設計変更」にルーティングを行なわない
という内容である。
【0221】具体的には、各レビュワーのステップの状
態「complete」時に実行されたルールにより設
定された変数「$vote」の値を参照し、2以上であ
ればステップ「設計変更」に対するルーティング情報フ
ィールドの真理値を「真」とし、ステップ「要求却下」
に対するルーティング情報フィールドの真理値を「偽」
とする。逆に、変数「$vote」の値が2未満の場合
は、ステップ「設計変更」に対するルーティング情報フ
ィールドの真理値を「偽」とし、ステップ「要求却下」
に対するルーティング情報フィールドの真理値を「真」
とする。
【0222】この例の場合は、変数「$vote」の値
は2であるために、ステップ「設計変更」に対するルー
ティング情報フィールドの真理値が「真」とされ、ステ
ップ「要求却下」の真理値は「偽」とされる。
【0223】スクリプトの実行が終了すると、ステップ
「受理?」は、終了し、「complete」の状態に
なる。すると、図14に示したルーティング後処理のル
ーチンS100が実行され、ルーティング情報フィール
ドの真理値が参照されることにより、ステップ「受理
?」のスクリプト通りのルーティング結果が得られる。
すなわち、この例の場合には、ステップ「設計変更」は
「ready」状態となり、ステップ「要求却下」は
「isolate」状態となる。
【0224】この例の場合、ステップ「設計変更」の担
当者は自分の作業をより詳細化し、サブフローを起動す
る。すなわち、設計変更の担当者は要求されている設計
変更を行なうためにもっともふさわしいと思われるワー
クフローを選び、または、新たに定義し、それを現在動
いているワークフローのサブフローとして起動する。こ
のサブフローが終了しない限り、「設計変更」ステップ
は終了することができない。
【0225】このサブフローの例を図45に示す。この
例のサブフローは、すべて通常ステップからなり、最初
のステップは、設計変更のための「仕様作成」のステッ
プであり、担当者は、設計リーダーである。次のステッ
プは、実際に設計図を作成する「設計」のステップであ
り、担当者は設計者である。次のステップは、最後のス
テップであり、設計者の作成した設計図の検査する「検
図」のステップである。
【0226】このサブフローも、上述したワークフロー
と、まったく同様にして作業が行われてゆく。このサブ
フローの管理も、同じワークフローシステムで行っても
よいが、別のワークフローシステムにより、サブフロー
の実行管理を行わせるようにすることも、もちろんでき
る。サブフローの最後のステップが終了して、その最後
のステップの担当者から作業終了の合図があったとき
に、これが結び付いているステップ「設計変更」を、担
当者が終了として、ワークフローシステムにその通知を
することができる。なお、サブフローが複数個、ステッ
プについて定義された場合には、すべてのサブフローが
終了するまで、当該サブフローが結び付いているステッ
プは作業を終了とすることができない。
【0227】この例の場合には、ステップ「設計変更」
の担当者は、自分が起動したサブフローが終了すると、
サブフローにおいて実際に変更された図面をパケットに
戻し、作業を終了する。
【0228】ステップ「設計変更」の次のステップ「承
認」では、変更された図面の承認を行なう。具体的には
変更された図面に承認印を押す。
【0229】次のステップ「設計変更配布」では、この
実施例においては、「設計変更」と同様サブフローを起
動する。こうすることにより、どのような配布形態をと
るか柔軟に決定することができる。
【0230】図46に、この例のステップ「設計変更配
布」について定義されたサブフローの例を示す。この例
のサブフローは、3つの自動実行ステップが、並行に実
行されるワークフローである。自動実行ステップ「出
図」は、例えばプリンタにより設計変更図面を印刷させ
て図面を出力させるものであり、自動実行ステップ「保
管」は、設計変更図面をファイルに格納しておくもので
あり、自動実行ステップ「FAX」は、ファクシミリ装
置によって、設計変更図面を所定の宛先に配送するもの
である。
【0231】このように、あるステップで起動されるサ
ブフローのすべてを、自動実行ステップで構成すること
によって、定型業務を大幅に改善することができる。
【0232】この例のワークフローシステムは、これら
の作業のためのハードウエアとしてのプリンタ、ファイ
リング装置、ファクシミリ装置を内蔵している。もっと
も、LANなどのネットワークを通じて、それぞれのハ
ードウエアに対してワークフローシステムより処理要求
を出して、処理を行わせるようにすることも勿論でき
る。
【0233】この場合、ステップ「設計変更配布」が
「ready」状態になると、即座に「run」状態と
なり、図46のサブフローが起動されると、自動的に3
つの自動実行ステップ「出図」「保管」「FAX」が開
始して、それぞれの作業を自動的に行う。
【0234】そして、すべての自動実行ステップの作業
の終了を待って、ステップ「設計変更配布」の担当者
「事務局」が終了の通知を出すと、このステップ「設計
変更配布」の状態は「complete」になる。一
方、ステップ「要求却下」は、前述したように、「is
olate」になっているので、以上で、設計変更のワ
ークフローは、終了する。
【0235】なお、「受理?」のステップで、ステップ
「設計変更」にはルーティングは行なわないと決定され
たときには、ステップ「設計変更」の状態は、「iso
late」の状態になり、かつ、図14のルーティング
後処理のルーチンS100の処理S21として説明され
ているように、その後続のステップ「承認」、ステップ
「設計変更配布」について、再帰的に「isolat
e」の状態に移行させる処理を行なう。
【0236】したがって、ステップ「要求却下」の作業
が終了して状態「complete」になったとき、ス
テップ「設計変更配布」の状態は、「isolate」
になっているので、設計変更のワークフローは終了す
る。
【0237】上述のように、この例の設計変更のワーク
フローにおいては、ステップ「要求受け付け」の担当者
は、パケットに付加されているルーティング情報のフィ
ールドの真理値を変更することができ、その変更によ
り、その後続のステップ「レビュー(1)」「レビュー
(2)」「レビュー(3)」のそれぞれに対してルーテ
ィングを行うか否かを決定することが可能である。ただ
し、上述の例では、ステップ「レビュー(1)」「レビ
ュー(2)」「レビュー(3)」のすべてにルーティン
グを行うと担当者が決定したので、担当者によるルーテ
ィング情報の変更は行われず、デフォルトの真理値
「真」はそのままとされた。
【0238】また、この例の設計変更のワークフローに
おいては、ステップ「受理?」を自動実行ステップで構
成し、その作業内容をあらかじめ定義したスクリプトに
より、ステップ「レビュー(1)」「レビュー(2)」
「レビュー(3)」の担当者が、その状態「run」の
ルールで追加された投票用のフィールド「投票結果」に
記入した投票結果を集計し、その結果によって下流のス
テップのルーティングを決定することができる。すなわ
ち、前ステップの担当者が行った作業内容に基づいて演
算を行うなどの比較的複雑なルーティングの決定が可能
になる。
【0239】また、「設計変更」のステップでは、担当
者が自分の作業をより詳細化し、サブフローを起動して
作業を実行するようにしたので、親のワークフロー中に
は、設計変更のプロセスを詳細に記述する必要がない。
そして、担当者が起動するサブフローを定義することが
できるので、ワークフローの作業の流れを柔軟に設計す
ることができる。
【0240】さらに、上述の例のステップ「設計変更配
布」のように、ステップをすべて自動実行ステップから
なるサブフローで構成することにより、定型業務の作業
負荷を大幅に改善することができる。
【0241】また、前述もしたように、ルールは、各作
業工程の状態や、自動実行ステップの処理内容(スクリ
プト)として定義されていて、各ステップの状態におい
て実行されるので、第1の実施例の場合のように、ルー
ティング後処理においてルールを実行する必要がない。
そして、図14に示したようなルーティング後処理の実
行により、担当者によるルーティングの決定と、ワーク
フローシステムによるルーティングの決定とを、行うこ
とができる。
【0242】なお、サブフローが結び付く親ワークフロ
ーのステップを自動実行ステップで構成し、その自動実
行ステップで行う作業をソフトウエアで実行させると共
に、そのソフトウエアによってサブフローを定義して、
自動的にサブフローを起動させるようにすれば、親ワー
クフローの前記自動実行ステップにルーティングが行わ
れたとき、サブフローが自動的に起動されてその作業が
開始され、担当者がサブフローを起動する必要がない。
【0243】なお、以上の例では、自動実行ステップで
ルーティング情報フィールドの真理値を書き換えて、後
続のステップのルーティングを決定するようにしたが、
ステップの状態が「ready」「run」「comp
lete」になったときに実行されるルールによりパケ
ットのルーティング情報フィールドの書き換えを行なう
ようにすることもできる。
【0244】
【発明の効果】以上説明したように、第1の発明によれ
ば、各作業工程に対して与える作業に必要な情報の固ま
りの中に、その作業工程の後続の作業工程に作業を開始
させるか否かを決定するための情報フィールドを追加
し、この追加された情報フィールドの内容を用いて後続
の作業工程に作業を開始させるか否かを決定するように
したので、作業の分岐があったときに、分岐後のいずれ
の作業工程に仕事を開始させるかを容易に決定すること
ができる。
【0245】また、前記の後続の作業工程に作業を開始
させるか否かを決定するために追加された情報フィール
ドには、作業工程の担当者が記入することができるの
で、後続の作業工程に仕事を開始させるか否かの決定
に、作業担当者の要求を反映することができ、仕事の流
れを作業担当者の要求に応じて柔軟に変更することがで
きる。
【0246】また、第2の発明によれば、作業工程につ
いて定義されたルールが実行されて、その結果により、
前記情報フィールドに後続の作業工程に作業を実行させ
るか否かの情報が記述され、その情報フィールドの記述
に従ってルーティングが決定されるので、情報処理シス
テム自身が作業工程の作業結果を反映したルーティング
の決定をすることができる。しかも、ルーティングのた
めの情報フィールドの内容を参照するのは、担当者によ
る場合も同じであり、ルーティングの決定のためのソフ
トウエアを簡略化することができる。
【0247】また、第3の発明によれば、あらかじめ定
義された約束事などにより前の作業工程の処理結果の評
価を行って、後続の作業工程に仕事を開始させるか否か
を決定することが可能となり、作業工程における作業結
果を、作業の流れ管理に反映させることができる。例え
ば作業工程で計算された見積もりに応じて後続の作業の
流れを変更したりすることができる。この場合には、ル
ーティングのための特別の情報フィールドを参照する必
要がない。
【0248】また、第4の発明によれば、分岐の作業工
程があるときに、仕事が開始されなかった作業工程は、
作業の流れから切り離されたことを示す切り離し状態と
して、その作業工程の終了状態を管理するようにしたの
で、分岐後の合流が支障なく行える。
【0249】また、第5の発明によれば、担当者を定め
ずに機械に作業を実行させる自動実行作業工程を定義
し、この自動実行作業工程も、他の通常の担当者が定め
られる作業工程と同様に状態管理するようにしたので、
この自動実行作業工程をワークフローの中に適宜挿入す
ることができ、作業の効率化を計ることができる。
【0250】さらに、第6の発明によれば、各作業工程
の担当者は、当該作業工程においてサブフローを定義し
て起動することができるので、作業の流れの定義時に各
作業工程を詳細に定義する必要はない。また、サブフロ
ーを用いることにより、すべての作業工程を詳細に定義
する場合に比べて、より柔軟に様々な局面に対して対応
することが可能になる。
【図面の簡単な説明】
【図1】この発明による情報処理システムの一実施例の
要部の機能ブロック図である。
【図2】この発明による情報処理システムの一実施例の
概要を示すブロック図である。
【図3】この発明による情報処理システムの一実施例の
要部の処理動作の例のフローチャートである。
【図4】この発明による情報処理システムの第1の実施
例の要部の処理動作の例のフローチャートである。
【図5】この発明による情報処理システムの第1の実施
例が適用される作業の流れの例を示す図である。
【図6】図5の実施例の作業の流れを構成する各ステッ
プに関するデータの例を示す図である。
【図7】図5の実施例の作業の流れを構成する各ステッ
プのつながりを表すデータの例を示す図である。
【図8】図5の実施例のステップ1の担当者に送られる
データの固まりの例を示す図である。
【図9】図5の実施例のステップ1の担当者からの作業
結果のデータの固まりの例を示す図である。
【図10】図5の実施例のステップ1からステップ2へ
のつながりについて定義されたルールの例を示す図であ
る。
【図11】図5の実施例のステップ1からステップ3へ
のつながりについて定義されたルールの例を示す図であ
る。
【図12】図5の実施例のステップ1の担当者に送られ
るデータの固まりの他の例を示す図である。
【図13】図5の実施例のステップ1の担当者からの作
業結果のデータの固まりの他の例を示す図である。
【図14】この発明による情報処理システムの第2の実
施例の要部の処理動作の例のフローチャートである。
【図15】この発明による情報処理システムの第2の実
施例が適用される作業の流れの例を示す図である。
【図16】図15の実施例のステップ「開始」の定義時
の属性値の例を示す図である。
【図17】図15の実施例のステップ「要求受け付け」
の定義時の属性値の例を示す図である。
【図18】図15の実施例のステップ「レビュー
(1)」の定義時の属性値の例を示す図である。
【図19】図15の実施例のステップ「レビュー
(2)」の定義時の属性値の例を示す図である。
【図20】図15の実施例のステップ「レビュー
(3)」の定義時の属性値の例を示す図である。
【図21】図15の実施例のステップ「受理?」の定義
時の属性値の例を示す図である。
【図22】図15の実施例のステップ「設計変更」の定
義時の属性値の例を示す図である。
【図23】図15の実施例のステップ「承認」の定義時
の属性値の例を示す図である。
【図24】図15の実施例のステップ「設計変更配布」
の定義時の属性値の例を示す図である。
【図25】図15の実施例のステップ「要求却下」の定
義時の属性値の例を示す図である。
【図26】図15の実施例のステップ「終了」の定義時
の属性値の例を示す図である。
【図27】図15の実施例のステップ「レビュー
(1)」の状態「run」のときのルールの例を示す図
である。
【図28】図15の実施例のステップ「レビュー
(1)」の状態「complete」のときのルールの
例を示す図である。
【図29】この発明による情報処理システムにおけるワ
ークフローの定義時の処理の流れの例を示すフローチャ
ートである。
【図30】この発明による情報処理システムにおけるワ
ークフローの初期化処理の流れの例を示すフローチャー
トである。
【図31】この発明による情報処理システムにおいて、
ステップの状態が「ready」になったときの処理の
流れの例を示すフローチャートである。
【図32】この発明による情報処理システムにおいて、
ステップの状態が「run」になったときの処理の流れ
の例を示すフローチャートである。
【図33】この発明による情報処理システムにおいて、
ステップの状態が「complete」になったときの
処理の流れの例を示すフローチャートである。
【図34】図15の実施例のステップ「開始」の登録時
の属性値の例を示す図である。
【図35】図15の実施例のステップ「開始」の開始時
の属性値の例を示す図である。
【図36】図15の実施例のステップ「開始」の状態
「run」時の属性値の例を示す図である。
【図37】図15の実施例のステップ「開始」の状態
「complete」時の属性値の例を示す図である。
【図38】図15の実施例のステップ「要求受け付け」
の担当者に対する通知の例を示す図である。
【図39】図15の実施例のステップ「要求受け付け」
の開始の際に、担当者に対して与えられる情報の固まり
の例を示す図である。
【図40】図15の実施例のステップ「要求受け付け」
の担当者から、その終了時に送られてくる情報の固まり
の例を示す図である。
【図41】図15の実施例のステップ「レビュー
(1)」の担当者に対する通知の例を示す図である。
【図42】図15の実施例のステップ「レビュー
(1)」の開始の際に、担当者に対して与えられる情報
の固まりの例を示す図である。
【図43】図15の実施例のステップ「レビュー
(1)」の担当者から、その終了時に送られてくる情報
の固まりの例を示す図である。
【図44】図15の実施例のステップ「レビュー
(2)」の担当者から、その終了時に送られてくる情報
の固まりの例を示す図である。
【図45】図15の実施例のステップ「設計変更」にお
いて起動されるサブフローの例を示す図である。
【図46】図15の実施例のステップ「設計変更配布」
において起動されるサブフローの例を示す図である。
【図47】ワークフローの一例を示す図である。
【図48】ワークフローの他の例を示す図である。
【符号の説明】
10 ユーザインターフェース部 11 テンプレート管理部 12 ルーティング管理部 13 通知管理部 14 進捗情報管理部 15 ユーザ管理部 17 参照情報管理部 20 システム部 21 編集部 22 通知部 31 ステップ状態管理部 31M ステップ状態メモリ 32 ルーティング前処理部 33 ルーティング後処理部 34 ルール評価部

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】順序だって処理すべき作業を、複数個の作
    業工程に分け、その複数個の作業工程の順序と、各作業
    工程の処理内容を定めて、前記作業を支援する情報処理
    システムであって、前記各作業工程に対して、必要な情
    報の固まりを与えると共に、当該作業工程からその作業
    工程の処理結果が前記情報の固まりに含められたものを
    得るようにする情報処理システムにおいて、 前記作業工程との間でやり取りする前記情報の固まりの
    中に、当該作業工程の後続の作業工程に作業を行なわせ
    るか否かを決定するための情報フィールドを追加する追
    加手段と、 前記作業工程からの前記情報の固まり中の、前記追加さ
    れた情報フィールドの内容に基づいて、後続の作業工程
    に仕事を行なわれるか否かを決定するルーティング手段
    とを設けたことを特徴とする情報処理システム。
  2. 【請求項2】順序だって処理すべき作業を、複数個の作
    業工程に分け、その複数個の作業工程の順序と、各作業
    工程の処理内容を定めて、前記作業を支援する情報処理
    システムであって、前記各作業工程に対して、必要な情
    報の固まりを与えると共に、当該作業工程からその作業
    工程の処理結果が前記情報の固まりに含められたものを
    得るようにする情報処理システムにおいて、 前記作業工程に対して与える必要な情報の固まりの中
    に、当該作業工程に直接的につながる複数個の後続の作
    業工程のそれぞれに対して、その作業を行なわせるか否
    かを決定するための情報フィールドを追加する追加手段
    と、 前記作業工程について定義された約束事を実行すること
    により、前記追加された情報フィールドに、当該作業工
    程に直接的につながる複数個の後続の作業工程のそれぞ
    れについて、その作業を行なわせるか否かの情報を記述
    するルール評価手段と、 前記作業工程からの前記情報の固まり中の、前記追加さ
    れた情報フィールドの内容に基づいて、前記後続の作業
    工程のそれぞれに対して仕事を行なわせるか否かを決定
    するルーティング手段とを設けたことを特徴とする情報
    処理システム。
  3. 【請求項3】順序だって処理すべき作業を、複数個の作
    業工程に分け、その複数個の作業工程の順序と、各作業
    工程の処理内容を定めて、前記作業を支援する情報処理
    システムであって、前記各作業工程に対して、必要な情
    報の固まりを与えると共に、当該作業工程からその作業
    工程の処理結果が前記情報の固まりに含められたものを
    得るようにする情報処理システムにおいて、 前記作業工程の作業の終了時に、当該作業工程からの前
    記情報の固まりに含まれる情報を用いて、当該作業工程
    に直接的につながる複数個の後続の作業工程のそれぞれ
    への移行に関してあらかじめ定義された約束事を実行す
    るルール評価手段と、 このルール評価手段の評価結果により、前記後続の作業
    工程のそれぞれに対して仕事を行なわせるか否かを決定
    するようにするルーティング手段とを設けたことを特徴
    とする情報処理システム。
  4. 【請求項4】順序だって処理すべき作業を、複数個の作
    業工程に分け、その複数個の作業工程の順序と、各作業
    工程の処理内容を定めて、前記作業を支援する情報処理
    システムであって、 各作業工程の終了状態を、作業終了となったことを示す
    作業終了状態と、作業が開始されずに前記連携する複数
    の作業工程からなる流れから切り離されたことを示す切
    り離し状態とで管理する作業工程の状態管理手段と、 前記作業工程の前の作業工程の状態のすべてが、前記作
    業終了状態あるいは前記切り離し状態になったときに、
    当該作業工程に作業を開始させるための処理を行なうル
    ーティング手段とを備える情報処理システム。
  5. 【請求項5】順序だって処理すべき作業を、複数個の作
    業工程に分け、その複数個の作業工程の順序と、各作業
    工程の処理内容を定めて、前記作業を支援する情報処理
    システムであって、 各作業工程の状態を、作業の開始準備ができている状態
    を表す待機状態と、作業を実行している状態を表す実行
    状態と、作業を終了した状態を表す終了状態とで管理す
    る作業工程の状態管理手段と、 前記作業工程が、担当ユーザにより作業が実行される通
    常作業工程か、前記情報処理システムの管理下において
    担当者なしで作業が実行される自動実行作業工程かを判
    別する判別手段と、 この判別手段での判別の結果、前記通常作業工程である
    と判別されたときには、前記作業工程の状態管理手段で
    の状態データが前記待機状態になった作業工程の担当者
    に通知をした後、当該作業工程の状態を実行状態にし、
    前記担当ユーザからの作業終了の通知を受けて当該作業
    工程の状態を終了状態にし、前記判別手段での判別の結
    果、前記自動実行作業工程であると判別されたときに
    は、当該自動実行作業工程の状態が前記待機状態になっ
    たときに、前記実行状態に移行させ、作業が終了したと
    きには、前記自動実行作業工程の状態を終了状態に移行
    させる作業工程管理手段とを備える情報処理システム。
  6. 【請求項6】順序だって処理すべき作業を、複数個の作
    業工程に分け、その複数個の作業工程の順序と、各作業
    工程の処理内容を定めて定義し、各作業工程の作業が終
    了すると、次の作業工程の作業を開始するように管理す
    ることにより、前記作業を支援する情報処理システムの
    作業の流れ管理方法において、 前記定義された作業の流れの内の適宜の作業工程におい
    て、その作業工程の作業を細分化した作業の単位と、そ
    の細分化した作業の単位の前後のつながりとで定義した
    サブフローを起動し、このサブフローによる作業が完了
    したときに、前記サブフローを起動をした作業工程は、
    終了できるようにした情報処理システムの作業の流れ管
    理方法。
JP13631494A 1994-05-26 1994-05-26 情報処理システム Expired - Fee Related JP3649345B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP13631494A JP3649345B2 (ja) 1994-05-26 1994-05-26 情報処理システム
US08/424,645 US5710921A (en) 1994-05-26 1995-04-19 Information processing system and work flow management method therefor
EP95105906A EP0684573A3 (en) 1994-05-26 1995-04-20 Information processing system and procedures for workflow management.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13631494A JP3649345B2 (ja) 1994-05-26 1994-05-26 情報処理システム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002324635A Division JP3726903B2 (ja) 2002-11-08 2002-11-08 情報処理システムおよび情報処理システムによる作業の流れ管理方法

Publications (2)

Publication Number Publication Date
JPH07319961A true JPH07319961A (ja) 1995-12-08
JP3649345B2 JP3649345B2 (ja) 2005-05-18

Family

ID=15172315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13631494A Expired - Fee Related JP3649345B2 (ja) 1994-05-26 1994-05-26 情報処理システム

Country Status (3)

Country Link
US (1) US5710921A (ja)
EP (1) EP0684573A3 (ja)
JP (1) JP3649345B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002109165A (ja) * 2000-09-22 2002-04-12 Microsoft Corp 文書承認システム用サーバ、文書承認方法および記録媒体
JP2007157124A (ja) * 2005-11-09 2007-06-21 Kobe Steel Ltd スケジュール修正装置及びスケジュール修正プログラム、並びにスケジュール修正方法
JP2012068804A (ja) * 2010-09-22 2012-04-05 Kyodo Printing Co Ltd 工程管理装置、工程管理方法及び工程管理プログラム
US8464264B2 (en) 2009-03-16 2013-06-11 Canon Kabushiki Kaisha Information processing apparatus and method of controlling same

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3063582B2 (ja) * 1995-08-25 2000-07-12 富士ゼロックス株式会社 画像処理装置
DE19612688A1 (de) * 1996-03-29 1997-10-02 Ibm Verfahren und Vorrichtung zur dynamischen Anpassung von Computer-gesteuerten Geschäftsprozessen
US6338074B1 (en) * 1997-07-23 2002-01-08 Filenet Corporation System for enterprise-wide work flow automation
US5978836A (en) 1997-07-28 1999-11-02 Solectron Corporation Workflow systems and methods
US7546346B2 (en) 1997-07-28 2009-06-09 Juniper Networks, Inc. Workflow systems and methods for project management and information management
JP3465543B2 (ja) * 1997-08-01 2003-11-10 富士ゼロックス株式会社 ワークフロー支援システムおよび方法
US6442563B1 (en) 1998-04-30 2002-08-27 Enterworks Workflow management system, method, and medium that morphs work items
US6430538B1 (en) 1998-04-30 2002-08-06 Enterworks Workflow management system, method and medium with personal subflows
JP2000040104A (ja) * 1998-07-23 2000-02-08 Hitachi Ltd ワークフロー管理方法
US6327362B1 (en) 1998-11-23 2001-12-04 Lucent Technologies Inc. System and method including dynamic differential treatment in workflows and contact flow
US7117172B1 (en) 1999-03-11 2006-10-03 Corecard Software, Inc. Methods and systems for managing financial accounts
JP2001014389A (ja) * 1999-06-25 2001-01-19 Hitachi Ltd ワークフローサーバおよびクライアント端末
US6490693B1 (en) 1999-08-31 2002-12-03 International Business Machines Corporation Dynamic reconfiguration of a quorum group of processors in a distributed computing system
US6487678B1 (en) 1999-08-31 2002-11-26 International Business Machines Corporation Recovery procedure for a dynamically reconfigured quorum group of processors in a distributed computing system
US6526432B1 (en) * 1999-08-31 2003-02-25 International Business Machines Corporation Relaxed quorum determination for a quorum based operation of a distributed computing system
US6542929B1 (en) 1999-08-31 2003-04-01 International Business Machines Corporation Relaxed quorum determination for a quorum based operation
JP2003030392A (ja) * 2001-07-19 2003-01-31 Toyota Keeramu:Kk アクション管理支援システム
US20030115115A1 (en) * 2001-08-25 2003-06-19 Ouchi Norman Ken Private exchange catalog system and methods
US20030135384A1 (en) * 2001-09-27 2003-07-17 Huy Nguyen Workflow process method and system for iterative and dynamic command generation and dynamic task execution sequencing including external command generator and dynamic task execution sequencer
US6687557B2 (en) 2002-02-19 2004-02-03 Norman Ken Ouchi Consolidated component catalog
US7672853B2 (en) * 2002-03-29 2010-03-02 Siebel Systems, Inc. User interface for processing requests for approval
US7131071B2 (en) 2002-03-29 2006-10-31 Siebel Systems, Inc. Defining an approval process for requests for approval
US7529680B2 (en) * 2002-03-29 2009-05-05 Siebel Systems, Inc. Screening electronic service requests
US20030236838A1 (en) * 2002-04-09 2003-12-25 Ouchi Norman Ken Shared and private node workflow system
US20050010371A1 (en) * 2003-07-09 2005-01-13 Merriam-Leith Christopher Scott Workflow-based research system with genetic pedigree display and organism tracking
US20050015293A1 (en) * 2003-07-16 2005-01-20 International Business Machines Corporation Collaboration enhanced workflow system
US7213022B2 (en) * 2004-04-29 2007-05-01 Filenet Corporation Enterprise content management network-attached system
US20060085374A1 (en) * 2004-10-15 2006-04-20 Filenet Corporation Automatic records management based on business process management
US20060085245A1 (en) * 2004-10-19 2006-04-20 Filenet Corporation Team collaboration system with business process management and records management
US20070168325A1 (en) * 2006-01-13 2007-07-19 Julian Bourne System and method for workflow processing using a portable knowledge format
US10402756B2 (en) * 2005-10-19 2019-09-03 International Business Machines Corporation Capturing the result of an approval process/workflow and declaring it a record
US20070088736A1 (en) * 2005-10-19 2007-04-19 Filenet Corporation Record authentication and approval transcript
US7856436B2 (en) * 2005-12-23 2010-12-21 International Business Machines Corporation Dynamic holds of record dispositions during record management
US8339636B2 (en) * 2006-01-27 2012-12-25 Kyocera Document Solutions Inc. Multi-function peripheral apparatus for processing unified job steps
US20070239715A1 (en) * 2006-04-11 2007-10-11 Filenet Corporation Managing content objects having multiple applicable retention periods
JP4267011B2 (ja) * 2006-08-24 2009-05-27 キヤノン株式会社 画像形成装置及び権限制御サーバ及び画像形成システム
US8037029B2 (en) * 2006-10-10 2011-10-11 International Business Machines Corporation Automated records management with hold notification and automatic receipts
US20080313536A1 (en) * 2007-06-14 2008-12-18 Microsoft Corporation Situation Sharing and Viewing
JP4450042B2 (ja) * 2007-09-27 2010-04-14 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
US20100017246A1 (en) * 2008-07-20 2010-01-21 Farrell Glenn H Software user interface for specification of project task dependencies and deadlines
US9734266B2 (en) * 2013-03-15 2017-08-15 IronCAD, LLC Computer-aided design multi-user design negotiation system and method thereof
US11003466B2 (en) 2016-12-09 2021-05-11 Vmware, Inc. Information-technology workflows using executable tiles with plural user interfaces
US10732934B2 (en) 2016-12-09 2020-08-04 Vmware, Inc. Information-technology workflows using executable tiles
US10733013B2 (en) 2016-12-09 2020-08-04 Vmware, Inc. Information-technology workflows using executable tiles distributed between workflow instances
US10732947B2 (en) 2016-12-09 2020-08-04 Wmware, Inc. Information-technology workflow using tiles that declaratively specify datatypes

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3662401A (en) * 1970-09-23 1972-05-09 Collins Radio Co Method of program execution
US4503499A (en) * 1982-09-14 1985-03-05 Eaton Corporation Controlled work flow system
CA2041992A1 (en) * 1990-05-18 1991-11-19 Yeshayahu Artsy Routing objects on action paths in a distributed computing system
US5301320A (en) * 1991-06-28 1994-04-05 Digital Equipment Corporation Workflow management and control system
AU4019493A (en) * 1992-06-29 1994-01-06 Hassan Seif El Din Khorshid Systems management processor
US5535322A (en) * 1992-10-27 1996-07-09 International Business Machines Corporation Data processing system with improved work flow system and method
US5640504A (en) * 1994-01-24 1997-06-17 Advanced Computer Applications, Inc. Distributed computing network

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002109165A (ja) * 2000-09-22 2002-04-12 Microsoft Corp 文書承認システム用サーバ、文書承認方法および記録媒体
JP2007157124A (ja) * 2005-11-09 2007-06-21 Kobe Steel Ltd スケジュール修正装置及びスケジュール修正プログラム、並びにスケジュール修正方法
US8464264B2 (en) 2009-03-16 2013-06-11 Canon Kabushiki Kaisha Information processing apparatus and method of controlling same
JP2012068804A (ja) * 2010-09-22 2012-04-05 Kyodo Printing Co Ltd 工程管理装置、工程管理方法及び工程管理プログラム

Also Published As

Publication number Publication date
US5710921A (en) 1998-01-20
EP0684573A3 (en) 1997-04-09
JP3649345B2 (ja) 2005-05-18
EP0684573A2 (en) 1995-11-29

Similar Documents

Publication Publication Date Title
JPH07319961A (ja) 情報処理システムおよび情報処理システムの作業の流れ管理方法
JP4700883B2 (ja) 最適化された結果導出ワークフローの合成および削除処理方法およびシステム
US5745687A (en) System for distributed workflow in which a routing node selects next node to be performed within a workflow procedure
Quartel et al. Methodological support for service-oriented design with ISDL
JP4020504B2 (ja) ワークフロー管理システム制御方法及びワークフロー管理システム
US6799314B2 (en) Work flow management method and work flow management system of controlling a work flow
Jennings et al. ADEPT: Managing business processes using intelligent agents
EP0841627A2 (en) Task execution support system
JP2004062438A (ja) ワークフローシステム、ワークフローサーバ、ワークフローエンジン、ワークフロー処理集約方法、およびプログラム
Tadayon et al. Algorithms and complexity analysis for robust single-machine scheduling problems
JP2001202408A (ja) 要素編成支援装置、要素編成支援方法及び記録媒体
JP2003203148A (ja) 情報処理システム
US7024670B1 (en) Timed start-conditions for activities in workflow management systems
CN113850558A (zh) 一种工作流程编排方法及装置
JP2001356907A (ja) 処理コード情報を有するデータベース・システムおよび情報処理システム
CN113988819A (zh) 一种审批流程的处理方法、系统、电子设备及存储介质
JPH10177608A (ja) ワークフローシステム
JPH1063751A (ja) ワークフローシステムおよびその作業分割方法
CN117251157A (zh) 一种用户界面生成方法、装置、设备及介质
JP2001325413A (ja) コネクター志向ワークフロー管理システム及びワークフロー検出方法
CN116308132A (zh) 一种基于工作流引擎的自动化办公方法和系统
US20060112062A1 (en) Controlling the creation of process instances in workflow management systems
JP3225997B2 (ja) 情報処理システム
Chopra Interaction-Oriented Software Engineering: Programming abstractions for autonomy and decentralization
CN114219451A (zh) 一种基于可视化引擎的工作流设计方法和系统

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050210

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: 20080225

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090225

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100225

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110225

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120225

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130225

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130225

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20140225

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees