(57)【要約】【課題】ワークフローを柔軟に進行させることができるワークフロー管理装置を提供する。【解決手段】少なくとも１つ以上のタスクとそれぞれのユーザとが関連付けられたワークフローテーブルと、ユーザに対応したタスクの一覧であるタスクリストと、ワークフローにおいて処理の対象とされている対象タスクを担当するユーザを認識する認識手段と、対象タスクの処理が完了しているか否かを判定する判定手段と、処理が完了していないと判定された場合に、対象タスクが予め定められた条件を満たすか否かを判定する第２の判定手段と、第２の判定手段による判定の結果、予め定められた条件を満たすと判定された場合に、対象タスクを担当するユーザに対応したタスクリストに、対象タスクを登録する登録手段と、登録手段により登録されると、対象タスクを処理済みとして、ワークフローの次のタスクの処理に進行させる進行制御手段とを備える。【選択図】図７
2010170230.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つ以上のタスクから構成されたワークフローを管理するワークフロー管理装置であって、
ユーザに対応したタスクの一覧であるタスクリストと、
前記ワークフローにおいて処理の対象とされている対象タスクを担当するユーザを認識する認識手段と、
前記対象タスクの処理が完了しているか否かを判定する判定手段と、
前記判定手段による判定の結果、処理が完了していないと判定された場合に、前記対象タスクが予め定められた条件を満たすか否かを判定する第２の判定手段と、
前記第２の判定手段による判定の結果、予め定められた条件を満たすと判定された場合に、前記対象タスクを担当するユーザに対応した前記タスクリストに、前記対象タスクを登録する登録手段と、
前記登録手段により登録されると、前記対象タスクを処理済みとして、前記ワークフローの次のタスクの処理に進行させる進行制御手段と
を備えることを特徴とするワークフロー管理装置。
【請求項２】
前記登録手段によって登録された後にユーザによる前記対象タスクの処理の完了に応じて、完了した旨を前記ワークフローの次のタスクを担当するユーザに通知する通知手段を、更に備えることを特徴とする請求項１に記載のワークフロー管理装置。
【請求項３】
前記タスクリストにおいて、タスクは、前記対象タスクが処理されるワークフローと関連付けられていることを特徴とする請求項１又は２に記載のワークフロー管理装置。
【請求項４】
前記ワークフローを構成するタスクは、文書を処理するタスクであることを特徴とする請求項１乃至３のいずれか１項に記載のワークフロー管理装置。
【請求項５】
前記登録手段は、仮の文書を処理済みの文書とし、前記タスクリストに前記対象タスクを登録し、
前記進行制御手段は、前記登録手段によって仮の文書が処理済みの文書とされると、前記対象タスクを処理済みとして、前記ワークフローの次のタスクの処理に進行させる、ことを特徴とする請求項４に記載のワークフロー管理装置。
【請求項６】
前記登録手段によって登録された後にユーザによる前記文書の処理の完了に応じて、前記文書を前記仮の文書に代えて処理済みの文書として定める特定手段を、更に備えることを特徴とする請求項５に記載のワークフロー管理装置。
【請求項７】
前記判定手段による判定の結果、処理が完了していないと判定された場合に、前記ワークフローの次のタスクを担当するユーザに承認を要求する要求手段を更に備え、
前記要求に応じて前記次のタスクを担当するユーザから承認された場合に、前記登録手段によって前記タスクリストに前記対象タスクを登録することを特徴とする請求項１乃至４のいずれか１項に記載のワークフロー管理装置。
【請求項８】
前記少なくとも１つ以上のタスクとそれぞれのユーザとが関連付けられたワークフローテーブルを更に備え、
前記認識手段は、前記ワークフローテーブルを参照することによって、前記ワークフローにおいて処理の対象とされている対象タスクを担当するユーザを認識することを特徴とする請求項１乃至７のいずれか１項に記載のワークフロー管理装置。
【請求項９】
少なくとも１つ以上のタスクから構成されたワークフローを管理し、ユーザに対応したタスクの一覧であるタスクリストを備えたワークフロー管理装置において実行されるワークフロー管理方法であって、
前記ワークフロー管理装置の認識手段が、前記ワークフローにおいて処理の対象とされている対象タスクを担当するユーザを認識する認識工程と、
前記ワークフロー管理装置の判定手段が、前記対象タスクの処理が完了しているか否かを判定する判定工程と、
前記ワークフロー管理装置の第２の判定手段が、前記判定工程における判定の結果、処理が完了していないと判定された場合に、前記対象タスクが予め定められた条件を満たすか否かを判定する第２の判定工程と、
前記ワークフロー管理装置の登録手段が、前記第２の判定工程における判定の結果、予め定められた条件を満たすと判定された場合に、前記対象タスクを担当するユーザに対応した前記タスクリストに、前記対象タスクを登録する登録工程と、
前記ワークフロー管理装置の進行制御手段が、前記登録工程において登録されると、前記対象タスクを処理済みとして、前記ワークフローの次のタスクの処理に進行させる進行制御工程と
を備えることを特徴とするワークフロー管理方法。
【請求項１０】
少なくとも１つ以上のタスクから構成されたワークフローを管理するためのワークフロー管理プログラムであって、
前記ワークフローにおいて処理の対象とされている対象タスクを担当するユーザを認識する認識手段と、
前記対象タスクの処理が完了しているか否かを判定する判定手段と、
前記判定手段による判定の結果、処理が完了していないと判定された場合に、前記対象タスクが予め定められた条件を満たすか否かを判定する第２の判定手段と、
前記第２の判定手段による判定の結果、予め定められた条件を満たすと判定された場合に、前記対象タスクを担当するユーザに対応したタスクの一覧に、前記対象タスクを登録する登録手段と、
前記登録手段により登録されると、前記対象タスクを処理済みとして、前記ワークフローの次のタスクの処理に進行させる進行制御手段と
してコンピュータを機能させることを特徴とするワークフロー管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、業務を管理するワークフロー管理装置に関する。
【背景技術】
【０００２】
電子文書が業務の中核を担うようになり、電子文書と業務とを関連付けて管理できるシステムの必要性が高まっている。そのようなシステムとして、ワークフロー管理システムが広く用いられており、文書が予め定義されたワークフローという業務の流れに沿って処理されていく。例えば、承認システムのように、「作成（一般社員）→精査（課長）→承認（部長）」というワークフローを事前に作成しておき、そのワークフローに従って、決済書や企画書が処理されていく。
【０００３】
しかしながら、そのようなワークフロー管理システムは、事前にフローの細かい設定が行われているので、様々な部門で利用するといった場合には、その業務に合ったワークフローとして柔軟に業務を進めることができないという問題がある。例えば、ユーザＡが文書Ａと文書Ｂの書類を作成して提出するといったタスクの場合に、文書Ａの書類は作成したが文書Ｂの書類作成が終わっていないためにワークフローが進まず、業務が止まってしまう場合がある。このように、フローを柔軟に設定することができない場合に、業務を進めるにあたって支障が生じてしまう。
【０００４】
そのような課題を解決するために、特許文献１に示されるように、タスクを処理を終了したタスクと未完了であるタスクに分割し、終了したタスクのみ、次のタスクのユーザが確認することが可能なシステムが提案されている。
【特許文献１】特開平１０−６３７５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のワークフロー管理システムにおいては、まず、交通費の清算や仕様書の承認といった従来の業務を構成する個々の作業を洗い出し、それらをワークフローという個々の作業を一つのフローとしてまとめたものを設計する必要がある。そのために、業務ごとにワークフローの設計を事前に行なっておく必要がある。また、システム設計や変更があった場合の管理にコストがかかってしまうという問題がある。
【０００６】
また、複雑なフロー制御を行なうワークフローエンジンを動作させる必要があるので、ＰＣなどのシステムに高い処理能力が求められ、システム構築にかかる費用が大きくなってしまう。そのため、柔軟に業務を遂行するワークフロー管理システムの実現が困難であった。
【０００７】
特許文献１に記載のワークフロー管理システムにおいては、定義された１つのタスクを複数に分割し、タスク中に含まれる複数の作業を完了した作業のみ、次のタスクの担当者が確認することができる。しかしながら、ワークフローの１つのタスク内での作業分割であるので、まだ完了していない作業が完了するまでは、結局、次のワークフローの工程に進むことができない。
【０００８】
また、作業が１つである場合には、タスクを分割することができないので、柔軟なワークフロー管理システムを構築することができない。
【０００９】
そこで、上記の点に鑑み、本発明は、ワークフローを柔軟に進行させることができるワークフロー管理装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、本発明に係るワークフロー管理装置は、少なくとも１つ以上のタスクから構成されたワークフローを管理するワークフロー管理装置であって、前記ユーザに対応したタスクの一覧であるタスクリストと、前記ワークフローにおいて処理の対象とされている対象タスクを担当するユーザを認識する認識手段と、前記対象タスクの処理が完了しているか否かを判定する判定手段と、前記判定手段による判定の結果、処理が完了していないと判定された場合に、前記対象タスクが予め定められた条件を満たすか否かを判定する第２の判定手段と、前記第２の判定手段による判定の結果、予め定められた条件を満たすと判定された場合に、前記対象タスクを担当するユーザに対応した前記タスクリストに、前記対象タスクを登録する登録手段と、前記登録手段により登録されると、前記対象タスクを処理済みとして、前記ワークフローの次のタスクの処理に進行させる進行制御手段とを備える。
【００１１】
また、本発明に係るワークフロー管理方法は、少なくとも１つ以上のタスクから構成されたワークフローを管理し、前記ユーザに対応したタスクの一覧であるタスクリストを備えたワークフロー管理装置において実行されるワークフロー管理方法であって、前記ワークフローにおいて処理の対象とされている対象タスクを担当するユーザを認識する認識工程と、前記対象タスクの処理が完了しているか否かを判定する判定工程と、前記判定工程における判定の結果、処理が完了していないと判定された場合に、前記対象タスクが予め定められた条件を満たすか否かを判定する第２の判定工程と、前記第２の判定工程における判定の結果、予め定められた条件を満たすと判定された場合に、前記対象タスクを担当するユーザに対応した前記タスクリストに、前記対象タスクを登録する登録工程と、前記登録工程において登録されると、前記対象タスクを処理済みとして、前記ワークフローの次のタスクの処理に進行させる進行制御工程とを備える。
【００１２】
さらに、本発明に係るワークフロー管理プログラムは、少なくとも１つ以上のタスクから構成されたワークフローを管理するためのワークフロー管理プログラムであって、前記ワークフローにおいて処理の対象とされている対象タスクを担当するユーザを認識する認識手段と、前記対象タスクの処理が完了しているか否かを判定する判定手段と、前記判定手段による判定の結果、処理が完了していないと判定された場合に、前記対象タスクが予め定められた条件を満たすか否かを判定する第２の判定手段と、前記第２の判定手段による判定の結果、予め定められた条件を満たすと判定された場合に、前記対象タスクを担当するユーザに対応したタスクの一覧に、前記対象タスクを登録する登録手段と、前記登録手段により登録されると、前記対象タスクを処理済みとして、前記ワークフローの次のタスクの処理に進行させる進行制御手段としてコンピュータを機能させる。
【発明の効果】
【００１３】
本発明によれば、ワークフローを柔軟に進行させることができる。
【発明を実施するための最良の形態】
【００１４】
以下に、本発明を実施するための最良の形態について、図面を参照しながら詳しく説明する。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
【００１５】
＜第１の実施形態＞
以下、本発明に係る第１の実施形態について、図１〜図１２を参照しながら説明する。
【００１６】
＜システム構成＞
図１は、本実施形態におけるワークフロー管理システムの構成を示すブロック図である。１０００は、ワークフロー管理システムにおけるクライアントソフトウェアを示す。１１００は、ワークフロー管理システムにおけるサーバソフトウェアを示す。クライアントソフトウェア１０００は、ＣＰＵ、ＲＡＭ、ＲＯＭ、ＨＤＤ等から構成されるクライアントコンピュータ（以下、クライアント）のＯＳ上で動作するソフトウェアである。また、サーバソフトウェア１１００は、ＣＰＵ、ＲＡＭ、ＲＯＭ、ＨＤＤ等から構成されるサーバコンピュータ（以下、サーバ）のＯＳ上で動作するソフトウェアである。しかしながら、本実施形態においては、１つのコンピュータ上で、クライアントソフトウェアとサーバソフトウェアが実装されるような構成であっても良い。
【００１７】
１００１は、ユーザインタフェース部である。システムは、ユーザインタフェース１００１を介してユーザ操作を受け取り、そのユーザ操作をコマンド制御部１００２に伝える。
【００１８】
コマンド制御部１００２は、ユーザの操作依頼に応じて、通信制御部１００３、ＴｏＤｏリスト制御部１００４、ワークフロー制御部１００５を用いて操作結果をユーザインタフェース１００１に返す。
【００１９】
通信制御部１００３は、コマンド制御部１００２の命令に応じて、サーバソフトウェア１１００と通信を行う。
【００２０】
ワークフロー制御部１００５は、コマンド制御部１００２の命令に応じて、ワークフローを制御する。ここで、ワークフロー毎に、ユーザとそのタスクが管理されており、ワークフロー管理システムは、ワークフロー毎にタスク管理を行うことができる。
【００２１】
ＴｏＤｏリスト制御部１００４は、コマンド制御部１００２の命令に応じて、ＴｏＤｏリストを制御する。ここで、ＴｏＤｏリストは、ワークフロー管理システムに登録されたユーザ毎に作成されるリストである。ワークフロー管理システムは、ユーザ毎に、設定されたタスクを管理することができる。また、このＴｏＤｏリストには、ワークフローから移行したタスク以外に、ユーザが設定したタスクも登録されることができる。
【００２２】
本実施形態においては、ワークフローとＴｏＤｏリストに、上記のようにそれぞれタスクが設定されている。また、本ワークフロー管理システムにおいては、条件を満たすワークフローのタスクを、ユーザのＴｏＤｏリストのタスクとして移行することができる。
【００２３】
その結果、本実施形態においては、ワークフローによって定義されたタスクを、ユーザのＴｏＤｏリストのタスクとして管理することができる。また、そのタスクの処理が完了した場合に、その旨がＴｏＤｏリスト制御部１００４からワークフロー制御部１００５に通知されてワークフローのタスクの処理が正式に完了する。
【００２４】
サーバソフトウェア１１００における通信制御部１１０１は、文書管理制御部１１０２の命令に応じて、クライアントソフトウェア１０００と通信を行う。
【００２５】
文書管理制御部１１０２は、クライアントソフトウェア１０００の操作依頼に応じて、データベース制御部１１０３を用いて、操作結果を通信制御部１１０１を介してクライアントソフトウェア１０００に返信する。
【００２６】
データベース制御部１１０３は、文書管理制御部１１０２の命令に応じて、文書データベース１１０４、ワークフローデータベース１１０５、ＴｏＤｏリストデータベース１１０６を制御する。
【００２７】
ここで、文書データベース１１０４は、文書情報を格納し、ワークフローデータベース１１０５は、ワークフロー情報を格納する。また、ＴｏＤｏリストデータベース１１０６は、ＴｏＤｏリスト情報を格納し、ユーザ管理データベース１１０７は、ユーザ情報を格納する。
【００２８】
＜ハードウェア構成＞
図１２は、クライアント又はサーバの構成を示す図である。図１２において、１２００は装置全体の制御を行うＣＰＵである。ＣＰＵ１２００は、ハードディスク（ＨＤ）１２０５に格納されているアプリケーションプログラム、ＯＳや、本実施形態の情報処理プログラム等を実行する。また、ＣＰＵ１２００は、ＲＡＭ１２０２にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御も行う。
【００２９】
１２０１は、ＲＯＭであり、内部には、基本Ｉ／Ｏプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。１２０２は、ＲＡＭであり、ＣＰＵ１２００の主メモリ、ワークエリア等として機能する。
【００３０】
１２０３は、フロッピディスクドライブであり、ＦＤドライブ１２０３を通じて、記憶媒体としてのＦＤ１２０４に記憶されたプログラム等を本コンピュータにロードすることができる。
【００３１】
１２０４は、記憶媒体であるフロッピディスク（ＦＤ）であり、コンピュータが読み取り可能にプログラムが格納された記憶媒体である。なお、記憶媒体はＦＤに限らず、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＰＣカード、ＤＶＤ、ＩＣメモリカード、ＭＯ、メモリスティック等、任意である。
【００３２】
１２０５は、大容量メモリとして機能するハードディスク（ＨＤ）であり、アプリケーションプログラム、プリンタドライバプログラム、ＯＳ、情報処理プログラム、関連プログラム等を格納している。
【００３３】
１２０６は、キーボードであり、ユーザがコンピュータに対して、デバイスの制御コマンドの命令等を入力指示するものである。
【００３４】
１２０７は、ディスプレイであり、キーボード１２０６から入力したコマンドや、プリンタの状態等を表示したりするものである。
【００３５】
１２０８は、システムバスであり、システムバス１２０８を介してコンピュータ内のデータの送受信が行われる。
【００３６】
１２０９は、外部との入出力インタフェースであり、インタフェース１２０９を介して情報処理装置は外部装置とのデータの通信を行う。
【００３７】
なお、上記コンピュータの構成はその一例であり、図１２の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてＲＯＭ、ＲＡＭ、ＨＤなどで変更することも可能である。
【００３８】
本実施形態におけるワークフロー管理システムは、クライアントとサーバとを含んで構成されても良いし、上述したように、１つのコンピュータ上で、図１に示すクライアントソフトウェアとサーバソフトウェアとが実装されるような構成であっても良い。
【００３９】
＜ワークフロー作成＞
次に、本実施形態におけるワークフローの作成について説明する。
【００４０】
まず、ユーザは、クライアントソフトウェア１０００を介して、ワークフロー管理システムにログインし、任意のユーザとそのユーザに対するタスクを指定することでワークフローを作成する。
【００４１】
図２は、本実施形態におけるワークフロー管理システムの概要を示す図である。また、図３は、ワークフロー作成の処理の手順を示すフローチャートである。以下、図２及び図３を参照して詳細に説明する。
【００４２】
図２の（ａ）は、ワークフロー管理システムの概要を説明するための図であり、図２の（ｂ）は、タスクが設定されているワークフローの一例としてのワークフロー１００（ワークフローテーブル）を示す図である。
【００４３】
まず、図３に示すステップＳ１００において、ワークフロー１００を作成するために、クライアントは、ユーザインタフェース１００１を介して入力されたタスクを担当するユーザの情報を受け付ける。その後、データベース制御部１１０３を介して、サーバのユーザ管理データベース１１０７からユーザ情報を取得することによりユーザを認識する。ここで、ユーザ情報とはユーザＩＤ、ユーザ名、所属、役職などが含まれる。
【００４４】
次に、ステップＳ１０１において、ユーザインタフェース１００１を介して入力されたタスク情報を取得する。ここで、タスク情報とは、タスクの内容、対象文書、期限、比較テンプレートなどが含まれる。ワークフロー１００においては、これらのタスク情報がユーザと関連付けられている。
【００４５】
また、比較テンプレートとは、文書中に記載が必要な箇所に関してのみ記載がされている比較用の文書である。例えば、見積もり金額の入力欄のみが記載された文書であり、見積もり依頼のタスクにおいて、仮文書として見積もり金額のみ記載されていれば、そのタスクとしては条件を満たしているというように用いられる。
【００４６】
ステップＳ１０２において、ステップＳ１００、Ｓ１０１により取得したユーザ情報とタスク情報をワークフローとして登録する。
【００４７】
ステップＳ１０３において、ステップＳ１０２により登録したタスクに追加する比較テンプレートがあるか否かを判定する。ここで、追加する比較テンプレートがあると判定された場合に、ステップＳ１０４に進む。一方、追加する比較テンプレートがないと判定された場合に、ステップＳ１０５に進む。
【００４８】
ステップＳ１０４において、登録されたタスクに比較テンプレート１０１を登録する。
【００４９】
ステップＳ１０５において、追加するタスクが存在するか否かを判定する。ここで、追加するタスクがあると判定された場合に、ステップＳ１００〜Ｓ１０４を繰り返し、ユーザ情報、タスク情報を取得してフローを追加し、ワークフローを作成する。一方、追加するタスクがないと判定された場合には、本処理を終了する。
【００５０】
図３に示す処理によって、具体的には、図２に示すワークフロー１００が作成され、例えば、サーバのワークフローデータベース１１０５に格納される。
【００５１】
＜ＴｏＤｏリスト作成＞
次に、本実施形態におけるＴｏＤｏリストの作成について説明する。
【００５２】
ユーザは、クライアントソフトウェア１０００を介してワークフロー管理システムにログインし、任意のユーザとそのユーザに対するタスクを指定することにより、ＴｏＤｏリストを作成する。
【００５３】
図４は、本システムにおけるＴｏＤｏリスト（タスクリスト）の一例を示す図である。また、図５は、ＴｏＤｏリスト作成の処理の手順を示すフローチャートである。以下、図４及び図５を参照して詳細に説明する。
【００５４】
まず、図４に示すＴｏＤｏリスト２００を作成するために、まず、ステップＳ２００において、ＴｏＤｏリスト作成画面を表示する。この時にユーザから受け取る情報はユーザ情報とタスク情報である。
【００５５】
ステップＳ２０１において、クライアントは、ユーザインタフェース１００１を介して入力されたユーザの情報を受け付け、データベース制御部１１０３を介して、サーバのユーザ管理データベース１１０７からユーザ情報を取得する。ここで、ユーザ情報とはユーザＩＤ、ユーザ名、所属、役職などが含まれる。
【００５６】
ステップＳ２０２において、ユーザインタフェース１００１を介して入力されたタスク情報を取得する。ここで、タスク情報とは、タスクの内容、対象ユーザ、対象文書、期限、コメント、ワークフローリンクなどが含まれる。ワークフローリンクとは、ＴｏＤｏリストに登録されている該当タスクとワークフローとをリンクするための情報である。例えば、図４には、ＴｏＤｏリストにおける「仕様書Ａを作成する」というタスクは、ワークフロー（ＷＦ−Ｂ）におけるタスクＤであるということを示している。また、ワークフローリンクとは、ユーザからのタスク情報を基に登録されるのではなく、後述するワークフローのタスクをＴｏＤｏリストの各ユーザのタスクに移行した場合に設定される。
【００５７】
ステップＳ２０３において、ステップＳ２０１、ステップＳ２０２で取得した情報をタスクとして、該当するユーザのＴｏＤｏリストに登録する。図４には、例えば、ユーザＢのＴｏＤｏリスト２００が示されている。
【００５８】
ステップＳ２０４において、追加するタスクが存在するか否かを判定する。ここで、追加するタスクがあると判定された場合に、ステップＳ２００からＳ２０３を繰り返し、ユーザ情報、タスク情報を取得してタスクを追加する。一方、追加するタスクがないと判定された場合には、本処理を終了する。
【００５９】
＜ワークフロー処理＞
以下、本実施形態におけるワークフロー管理システムにおけるワークフロー処理について説明する。
【００６０】
まず、ユーザは、クライアントソフトウェア１０００を介してシステムにログインし、ワークフローで定義されたタスクを処理する。本実施形態においては、タスクを処理する際に、処理が未完のタスクをＴｏＤｏリストに追加することでワークフローとしてタスクを完了し、次のフローに進行する。
【００６１】
図６は、本システムにおけるワークフロー処理と、その処理におけるＴｏＤｏリストへのタスク追加の概要を示す図である。また、図７は、ワークフロー処理と、その処理におけるＴｏＤｏリストへのタスク追加処理の手順を示すフローチャートである。以下、図６及び図７を参照して詳細に説明する。
【００６２】
図７に示すステップＳ３００において、現在対象とされているワークフロー１００（以下、「ＷＦ−Ａ」ともいう）を表示する。
【００６３】
ステップＳ３０１において、該当のユーザが処理するべき対象タスクがある場合に、そのタスクを表示する。例えば、ユーザＢがワークフロー１００を選択した場合に、ユーザＢのタスクであるタスクＢが表示される。
【００６４】
ステップＳ３０２において、ユーザによるワークフローのタスクの処理結果を受け付けたユーザインタフェース１００１は、その処理結果を、コマンド制御部１００２に送信する。ワークフローに対するタスクの処理であるので、その処理は、コマンド制御部１００２からワークフロー制御部１００５に送信される。
【００６５】
例えば、図６のワークフロー１００に示すように、ユーザＢのタスクは文書Ｂの登録と文書Ｃの登録であるので、文書Ｂの登録と文書Ｃの登録が行われる。また、図６に示すように、文書Ｂに対しては処理済みであり、文書Ｃに対しては処理が完了していない。このように、ユーザＢが文書Ｃの登録を完了していない場合には、本システムは、ＴｏＤｏリスト移行操作をユーザから受け付けて行う。
【００６６】
ここで、図６には、文書Ｂと文書Ｃの登録という２つのタスクが記載されているが、タスクが１つであり、そのタスクの処理が完了していない場合にも、本システムは、ＴｏＤｏリスト移行操作をユーザから受け付けて行う。
【００６７】
ステップＳ３０３において、ステップＳ３０２の処理の結果、ＴｏＤｏリストに追加するタスクがあるか否かを判定する。即ち、上述したように、ＴｏＤｏリストに追加するタスクとは、処理が完了していない未完のタスクである。ここで、ＴｏＤｏリストに追加するタスクがあると判定された場合には、ステップＳ３０４に進み、一方、ないと判定された場合には、ステップＳ３１０に進む。
【００６８】
ステップＳ３０４において、ＴｏＤｏリストに追加するタスクの情報を取得する。ＴｏＤｏリストに追加するタスクとは、例えば、図６に示すように、文書Ｃの登録についてのタスクの情報である。
【００６９】
また、ＴｏＤｏリスト移行操作を行ったユーザ以外のユーザのタスクとして、ＴｏＤｏリストに追加する場合が考えられる。そのような場合にも、ＴｏＤｏリストへのタスクの移行処理において、ユーザを指定することによって、どのユーザのＴｏＤｏリストにタスクを追加することができるか指定するようにしても良い。
【００７０】
ステップＳ３０５において、ステップＳ３０４において取得された情報に対応するタスクに対して比較テンプレートが定義されているか否かが判定される。ここで、定義されていると判定された場合に、ステップＳ３０６に進み、一方、定義されていないと判定された場合に、ステップＳ３０３に戻る。
【００７１】
ステップＳ３０６において、対象タスクにおける登録文書とワークフローデータベース１１０５に登録された比較テンプレート１０１を比較する。例えば、「文書Ｃの登録」のタスクで仮登録された仮の文書Ｃと比較テンプレートとして登録されている比較文書１（図６に示す比較テンプレート１０１）とを比較する。
【００７２】
ステップＳ３０７において、ステップＳ３０６での比較結果が予め定められた条件を満たしているか否かを判定する（第２の判定）。条件を満たしているかとは、例えば、上述のように、見積もり金額のみ記載されているか否かといったことである。ここで、条件を満たしていると判定された場合には、ステップＳ３０８に進み、一方、満たしていないと判定された場合には、ステップＳ３０３に戻る。
【００７３】
ステップＳ３０８において、対象タスクを対象ユーザのＴｏＤｏリスト２００に追加する。例えば、図６に示すように、「文書Ｃの登録」のタスクをユーザＢのＴｏＤｏリスト２００に追加し、ＴｏＤｏリストのワークフローリンク情報欄に、「ＷＦ−Ａ−タスクＢ」として、該当ワークフローへのリンク情報を追加する。
【００７４】
ステップＳ３０９において、ステップＳ３０８で対象ユーザのＴｏＤｏリスト２００にタスクを移行したタスクのステータスを完了に変更する。例えば、図６に示すワークフロー１００における「文書Ｃを登録する」というタスクのステータスが「完了」とされている。
【００７５】
ステップＳ３０９の後は、再び、ステップＳ３０３に戻る。ステップＳ３０３において、ワークフローからＴｏＤｏリストのタスクに追加するタスクがないと判定された場合に、ステップＳ３１０において、全てのタスクが完了しているか否かを判定する。例えば、ワークフローにおけるタスクＢが進行中である場合に、タスクＢの「文書Ｂの登録」のタスクと「文書Ｃの登録」のタスクが両方とも完了しているか否かを判定する。ここで、全てのタスクが完了していると判定された場合には、ステップＳ３１１に進み、一方、完了していないと判定された場合には、ステップＳ３０３に戻る。
【００７６】
ステップＳ３１１においては、ワークフローにおける次のフローに進行させるように進行制御する。
【００７７】
以上のように、本実施形態においては、ワークフローの対象タスクをユーザのＴｏＤｏリストのタスクに移行した場合に、ＴｏＤｏリストのタスクの属性として、ワークフローの対象タスクへのリンク情報を有している。その結果、ワークフローのタスクから、どのユーザのＴｏＤｏリストに移行したかを検索することができる。
【００７８】
なお、本実施形態では、ワークフローから移行したタスクの管理をユーザがＴｏＤｏリストにより行えるだけでなく、通常の使用方法としてワークフロー管理システムに登録された文書に対するタスクの管理をＴｏＤｏリストを用いて行うことができる。
【００７９】
＜ＴｏＤｏリスト処理＞
以下、本実施形態におけるワークフロー管理システムにおけるＴｏＤｏリスト処理について説明する。
【００８０】
ユーザは、クライアントソフトウェア１０００を介してワークフロー管理システムにログインし、ＴｏＤｏリストで定義されたタスクを処理する。そのタスクを処理する際に、完了したタスクについて、そのタスクの登録元がワークフローである場合には、そのタスクの完了通知と文書登録の処理が行われる。
【００８１】
図８は、本実施形態におけるＴｏＤｏリストのタスク完了処理とワークフローへの通知と文書登録処理の概要を示す図である。また、図９は、ＴｏＤｏリストのタスク完了処理とワークフローへの通知と文書登録処理の手順を示すフローチャートである。以下、図８及び図９を参照して詳細に説明する。
【００８２】
まず、図９に示すステップＳ４００において、クライアントは、クライアントソフトウェア１０００を介して文書管理システムにログインしたユーザのＴｏＤｏリストを表示する。具体的には、図８に示すユーザＢのＴｏＤｏリストが表示される。
【００８３】
ステップＳ４０１において、ＴｏＤｏリストのタスクの中で処理が完了した完了タスクの情報を取得する。
【００８４】
ステップＳ４０２において、ステップＳ４０１で取得した完了タスクにワークフローリンクが設定されているか否かを判定する。ここで、ワークフローリンクが設定されていると判定された場合に、ステップＳ４０３に進み、そのリンクを基に、対象タスクで処理が完了した文書をワークフローの対象タスクに登録する。例えば、図８に示すように、「ＴｏＤｏ３」のタスクで作成が完了した文書Ｃをワークフロー１００（ＷＦ−Ａ）のタスクＢにおける「文書Ｃの登録」のタスクとして、文書Ｃを登録する。
【００８５】
一方、ステップＳ４０２において、ワークフローリンクが設定されていないと判定された場合には、ステップＳ４０６に進む。
【００８６】
ステップＳ４０４において、ステップＳ４０３で登録した文書の前に仮登録されていた文書を過去のバージョンとして登録する。即ち、ユーザＢによって処理が完了された文書Ｃを仮の文書に代えて、ワークフローにおける処理済みの文書として特定する。
【００８７】
ステップＳ４０５において、ステップＳ４０３で対象タスクに対しての登録処理が行われたことを、対象タスクの次のタスクのユーザに通知する（図８に図示）。ここで、通知方法として、メールでの通知、文書管理システム上のメッセージでの通知などが用いられても良い。
【００８８】
ステップＳ４０６において、ＴｏＤｏリストの対象タスクをＴｏＤｏリストから削除する。即ち、図８においては、ＴｏＤｏリスト２００にＴｏＤｏ３のリストが表示されているが、ステップＳ４０６の処理の後、削除される。
【００８９】
以上のように、本実施形態においては、ユーザがＴｏＤｏリストを参照して、そのリストに登録されているタスクを処理することにより、同時に、ワークフロー管理システムにおけるワークフローを進行させることができる。このように、ワークフロー管理システムと、ユーザレベルでのＴｏＤｏリストとが連携しているので、ワークフロー管理システムのワークフローにおけるタスクの管理を容易とすることができる。
【００９０】
また、ワークフロー管理システムのワークフローは、該当ユーザによって必ずしも該当タスクの全てを完了させる必要はないので、柔軟かつ迅速にワークフローを進行させることができる。
【００９１】
＜第２の実施形態＞
次に、第２の実施形態について、図１０及び図１１を参照しながら説明する。
【００９２】
本第２の実施形態におけるワークフロー管理システムは、比較テンプレートによる処理ではなく、ユーザの承認処理によってユーザのＴｏＤｏリストにタスクを移行する点において、第１の実施形態と異なる。
【００９３】
＜ワークフロー処理＞
ユーザは、クライアントソフトウェア１０００を介してワークフロー管理システムにログインし、ワークフローで定義されたタスクを処理する。そのタスクを処理する際に、処理が未完のタスクについて、ユーザのＴｏＤｏリストに追加することでワークフローとしてタスクを完了し、次のワークフローに進行する。
【００９４】
図１０は、本実施形態におけるワークフロー処理とＴｏＤｏリストへのタスク追加の概要を示す図である。また、図１１は、ワークフロー処理とＴｏＤｏリストへのワークフローのタスク追加処理の手順を示すフローチャートである。以下、図１０及び図１１を参照して詳細に説明する。
【００９５】
まず、図１１に示すステップＳ５００において、対象のワークフローが表示される。この時、ワークフロー一覧からユーザが選択したワークフローが表示される。ここでは、例えば、ワークフロー１００（ＷＦ−Ａ）が選択されて表示される。
【００９６】
ステップＳ５０１において、ユーザが処理するべき対象タスクがある場合に、そのタスクが表示される。例えば、ユーザＢがワークフロー１００（ＷＦ−Ａ）を選択した場合に、ユーザＢのタスクとしてタスクＢがあれば、タスクＢが表示される。
【００９７】
ステップＳ５０２において、ユーザからワークフローに対するタスクの処理結果を受け付けたユーザインタフェース１００１は、その処理結果をコマンド制御部１００２に送信する。ワークフローに対するタスクの処理であるので、その処理は、コマンド制御部１００２からワークフロー制御部１００５に送信される。
【００９８】
例えば、図１０に示すように、ユーザＢのタスクは、「文書Ｂの登録」と「文書Ｃの登録」であるので、文書Ｂの登録と文書Ｃの登録を行う。この時に、ユーザＢが文書Ｃの登録について処理を完了していない場合には、システムはＴｏＤｏリスト追加操作を受け付ける。
【００９９】
ステップＳ５０３において、ＴｏＤｏリストに追加するタスクがあるか否かが判定される。ここで、ＴｏＤｏリストに追加するタスクがあると判定された場合には、ステップＳ５０４に進み、一方、ないと判定された場合には、ステップＳ５０９に進む。
【０１００】
ステップＳ５０４において、ＴｏＤｏリストに追加するタスクの情報を取得する。ＴｏＤｏリストに追加するタスクとは、即ち、処理が完了していないタスクである。例えば、図１０に示す「文書Ｃの登録」のタスクである。
【０１０１】
ステップＳ５０５において、ステップＳ５０４において受け付けたタスクについての承認依頼を、ワークフローにおける次のタスクのユーザに対して行う。その承認依頼の際には、該当タスクの情報と仮登録された文書を承認依頼先のユーザに送付する。
【０１０２】
ステップＳ５０６において、次のタスクのユーザより承認されたか否かが判定される。ここで、承認されたと判定された場合に、ステップＳ５０７に進む。一方、承認されなかったと判定された場合には、ステップＳ５０３に戻る。
【０１０３】
ステップＳ５０７において、対象タスクを対象ユーザのＴｏＤｏリストに追加する。例えば、「文書Ｃの登録」のタスクをユーザＢのＴｏＤｏリストに追加し、ＴｏＤｏリストのワークフローリンクの欄に、リンク情報として「ＷＦ−Ａ−タスクＢ」を追加する。
【０１０４】
ステップＳ５０８において、ステップＳ５０７で対象ユーザのＴｏＤｏリストに移行したタスクに対応するワークフローのタスクのステータスを「完了」に変更する。
【０１０５】
ステップＳ５０８の処理の後、再び、ステップＳ５０３に戻り、ワークフローからＴｏＤｏリストのタスクに追加するタスクがない場合に、ステップＳ５０９において、全てのタスクが完了しているか確認をする。
【０１０６】
例えば、現在、ワークフローにおけるタスクＢが進行中である場合に、タスクＢにおける「文書Ｂの登録」のタスクと「文書Ｃの登録」のタスクが両方とも完了しているか否かを判定する。
【０１０７】
ステップＳ５０９において、全てのタスクが完了されていると判定された場合には、ステップＳ５１０に進み、一方、全てのタスクが完了されていないと判定された場合には、ステップＳ５０３に戻る。
【０１０８】
ステップＳ５１０において、ワークフローにおける次のフローに進行する。
【０１０９】
以上のように、本実施形態においては、ワークフローの設定時に図２に示すような比較テンプレートを登録していない場合に、ワークフローにおける次のタスクのユーザに対して承認を要求する。その結果、承認を得ると、ワークフローのタスクをユーザのＴｏＤｏリストへ移行し、ワークフローを進行させることができる。
【０１１０】
本発明には、プログラム（ワークフロー管理プログラム）コードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部又は全部を行い、その処理により前述した実施形態の機能が実現される場合も含まれる。更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた場合についても、本発明は適用される。その場合には、書き込まれたプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１１１】
【図１】本実施形態におけるワークフロー管理システムの構成を示すブロック図である。
【図２】本実施形態におけるワークフロー管理システムの概要を示す図である。
【図３】ワークフロー作成の処理の手順を示すフローチャートである。
【図４】本システムにおけるＴｏＤｏリストの一例を示す図である。
【図５】ＴｏＤｏリスト作成の処理の手順を示すフローチャートである。
【図６】本システムにおけるワークフロー処理と、その処理におけるＴｏＤｏリストへのタスク追加の概要を示す図である。
【図７】ワークフロー処理と、その処理におけるＴｏＤｏリストへのタスク追加処理の手順を示すフローチャートである。
【図８】本実施形態におけるＴｏＤｏリストのタスク完了処理とワークフローへの通知と文書登録処理の概要を示す図である。
【図９】ＴｏＤｏリストのタスク完了処理とワークフローへの通知と文書登録処理の手順を示すフローチャートである。
【図１０】本実施形態におけるワークフロー処理とＴｏＤｏリストへのタスク追加の概要を示す図である。
【図１１】ワークフロー処理とＴｏＤｏリストへのワークフローのタスク追加処理の手順を示すフローチャートである。
【図１２】クライアント及びサーバの構成を示す図である。
【符号の説明】
【０１１２】
１０００  クライアントソフトウェア
１１００  サーバソフトウェア
【図１】
2010170230.tif 000003
【図２】
2010170230.tif 000004
【図３】
2010170230.tif 000005
【図４】
2010170230.tif 000006
【図５】
2010170230.tif 000007
【図６】
2010170230.tif 000008
【図７】
2010170230.tif 000009
【図８】
2010170230.tif 000010
【図９】
2010170230.tif 000011
【図１０】
2010170230.tif 000012
【図１１】
2010170230.tif 000013
【図１２】
2010170230.tif 000014