(57)【要約】【課題】ワークフローを構成する各タスクと関連付けて明示的にリスクを管理する。【解決手段】動的に構成タスクを変更可能なタスク管理システムであって、作成したタスクに対して関連するリスクを提示して選択を求める手段と、選択されたリスクをポテンシャルプロブレムとしてタスクに関連付けて登録する手段と、登録済のポテンシャルプロブレムのうちユーザにより選択されたポテンシャルプロブレムに対して現実の問題の発生の報告を受け付け、当該ポテンシャルプロブレムの状態を更新する手段とを備える。【選択図】図１
2010286999.tif 000002
【特許請求の範囲】
【請求項１】
動的に構成タスクを変更可能なタスク管理システムであって、
作成したタスクに対して関連するリスクを提示して選択を求める手段と、
選択されたリスクをポテンシャルプロブレムとしてタスクに関連付けて登録する手段と、
登録済のポテンシャルプロブレムのうちユーザにより選択されたポテンシャルプロブレムに対して現実の問題の発生の報告を受け付け、当該ポテンシャルプロブレムの状態を更新する手段と
を備えたことを特徴とするタスク管理システム。
【請求項２】
請求項１に記載のタスク管理システムにおいて、
前記リスクは、自然文で書き下した内容を含む
ことを特徴とするタスク管理システム。
【請求項３】
請求項２に記載のタスク管理システムにおいて、
前記作成したタスクに対して関連するリスクを提示して選択を求める手段は、タスク情報に含まれる記述に基づいて、リスクに含まれる記述を検索することにより、タスクに関連するリスクを抽出する
ことを特徴とするタスク管理システム。
【請求項４】
請求項１乃至３のいずれか一項に記載のタスク管理システムにおいて、
所定のタスクに対し、当該タスクの親子関係にある他のタスクに関連するリスク情報を取得し、当該タスクに関連付けて新たなポテンシャルプロブレムを登録する手段
を備えたことを特徴とするタスク管理システム。
【請求項５】
請求項１乃至４のいずれか一項に記載のタスク管理システムにおいて、
ユーザよりポテンシャルプロブレムに対して現実の問題の発生の報告を受け付けた場合に、当該ポテンシャルプロブレムが関連付けられたタスクに関連する所定のユーザに対してリスク情報を通知する手段
を備えたことを特徴とするタスク管理システム。
【請求項６】
動的に構成タスクを変更可能なタスク管理システムの制御方法であって、
作成したタスクに対して関連するリスクを提示して選択を求める工程と、
選択されたリスクをポテンシャルプロブレムとしてタスクに関連付けて登録する工程と、
登録済のポテンシャルプロブレムのうちユーザにより選択されたポテンシャルプロブレムに対して現実の問題の発生の報告を受け付け、当該ポテンシャルプロブレムの状態を更新する工程と
を備えたことを特徴とするタスク管理制御方法。
【請求項７】
動的に構成タスクを変更可能なタスク管理システムを構成するコンピュータを、
作成したタスクに対して関連するリスクを提示して選択を求める手段、
選択されたリスクをポテンシャルプロブレムとしてタスクに関連付けて登録する手段、
登録済のポテンシャルプロブレムのうちユーザにより選択されたポテンシャルプロブレムに対して現実の問題の発生の報告を受け付け、当該ポテンシャルプロブレムの状態を更新する手段
として機能させるタスク管理制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動的に構成タスクを変更可能なタスク管理システムに関する。
【背景技術】
【０００２】
従来のタスク管理システム（ワークフロー管理システム）は、複数のタスクから構成されるワークフローの実行前にワークフローモデルを決定する必要があった。すなわち、ワークフローを構成する個々のタスクの順序関係や個々のタスクの詳細を決定する必要があった。
【０００３】
しかし、研究開発や一部のサービスなど、事前情報の完全性の低い分野では、先行的なワークフローモデルの策定が難しい。すなわち、業務を進める過程で新たなタスクを追加しなければならなくなったり、タスクの実行順序を変更しなければならなくなったり、想定していたタスクが不要になったりということがしばしば起こり、事前に固定的なワークフローモデルを決めることが困難である。
【０００４】
そこで、コンストラクティブワークフローと呼ばれる、ワークフロー実行時に動的にワークフローモデルを構成できる、すなわち動的にタスク構成を変更可能な手法が開発されてきた。
【０００５】
さらに、コンストラクティブワークフローにおいて、タスク実行時の作業性を向上させることを目的に、ワークフロー実行の際に必要となる各種情報（関連情報）を、タスク実行中に適時に検索・提供できるワークフロー管理システムが提案されている（例えば、特許文献１〜４等を参照。）。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、
（イ）ソフトウェア開発など、ダイナミックなプロジェクトを柔軟に管理したい。
（ロ）柔軟なワークフローおよびタスク管理システムを用いてプロジェクト管理を行う。
（ハ）ダイナミックなプロジェクトでは、プロジェクト開始時にすべてのタスクが洗い出せるわけではない。タスクはプロジェクト実施に従って明らかになるものと、新たに発生するもの、省略されて削除されるものがある。
といった条件下で、プロジェクトのタスクの組（タスクツリー）から、より早く、より正確に、プロジェクトの状態を知る方法が求められている。
【０００７】
ＥＶＡ（Earned Value Analysis）／ＥＶＭ（Earned Value Management）は、このようなプロジェクトの状態を現時点における予算消化割合という側面からとらえたものであり、近年普及の兆しがある。
【０００８】
タスク実行の遅れなどの数値的に簡単に導出できるリスクに関しては、ＥＶＡ／ＥＶＭは有効であると考えられる。
【０００９】
ただし、ＥＶＡ／ＥＶＭはリスク要因をすべて予算（コスト）に置き換えて計算するものであり、環境の変化などの数値化しづらいリスクに関しては適用性が低い。
【００１０】
柔軟なプロジェクト・タスク管理では、定型的なプロジェクト・タスク管理に比べ、リスクの予測と対応がより難しい。これは、プロジェクトの状況がダイナミックに変化することと、その変化した状況がリスクの判断を行う者に正しく伝わらないことに起因すると考えられる。
【００１１】
これまでのコンストラクティブワークフローでは、タスク実行時にタスクの構成を変更できる方式によって、状況の流動性に対応するシステムを提案してきた。しかし、各タスクに関連するリスクを明示的にリストし、管理する機能は実装されていなかった。また、タスクリスト中の情報を解析して潜在的なリスクを導出する手段もなかった。
【００１２】
本発明は上記の従来の問題点に鑑み提案されたものであり、その目的とするところは、ワークフローを構成する各タスクと関連付けて明示的にリスクを管理することのできるタスク管理システムを提供することにある。
【課題を解決するための手段】
【００１３】
上記の課題を解決するため、本発明にあっては、請求項１に記載されるように、動的に構成タスクを変更可能なタスク管理システムであって、作成したタスクに対して関連するリスクを提示して選択を求める手段と、選択されたリスクをポテンシャルプロブレムとしてタスクに関連付けて登録する手段と、登録済のポテンシャルプロブレムのうちユーザにより選択されたポテンシャルプロブレムに対して現実の問題の発生の報告を受け付け、当該ポテンシャルプロブレムの状態を更新する手段とを備えるタスク管理システムを要旨としている。
【００１４】
また、請求項２に記載されるように、請求項１に記載のタスク管理システムにおいて、前記リスクは、自然文で書き下した内容を含むようにすることができる。
【００１５】
また、請求項３に記載されるように、請求項２に記載のタスク管理システムにおいて、前記作成したタスクに対して関連するリスクを提示して選択を求める手段は、タスク情報に含まれる記述に基づいて、リスクに含まれる記述を検索することにより、タスクに関連するリスクを抽出するようにすることができる。
【００１６】
また、請求項４に記載されるように、請求項１乃至３のいずれか一項に記載のタスク管理システムにおいて、所定のタスクに対し、当該タスクの親子関係にある他のタスクに関連するリスク情報を取得し、当該タスクに関連付けて新たなポテンシャルプロブレムを登録する手段を備えるようにすることができる。
【００１７】
また、請求項５に記載されるように、請求項１乃至４のいずれか一項に記載のタスク管理システムにおいて、ユーザよりポテンシャルプロブレムに対して現実の問題の発生の報告を受け付けた場合に、当該ポテンシャルプロブレムが関連付けられたタスクに関連する所定のユーザに対してリスク情報を通知する手段を備えるようにすることができる。
【００１８】
また、請求項６に記載されるように、動的に構成タスクを変更可能なタスク管理システムの制御方法であって、作成したタスクに対して関連するリスクを提示して選択を求める工程と、選択されたリスクをポテンシャルプロブレムとしてタスクに関連付けて登録する工程と、登録済のポテンシャルプロブレムのうちユーザにより選択されたポテンシャルプロブレムに対して現実の問題の発生の報告を受け付け、当該ポテンシャルプロブレムの状態を更新する工程とを備えるタスク管理制御方法として構成することができる。
【００１９】
また、請求項７に記載されるように、動的に構成タスクを変更可能なタスク管理システムを構成するコンピュータを、作成したタスクに対して関連するリスクを提示して選択を求める手段、選択されたリスクをポテンシャルプロブレムとしてタスクに関連付けて登録する手段、登録済のポテンシャルプロブレムのうちユーザにより選択されたポテンシャルプロブレムに対して現実の問題の発生の報告を受け付け、当該ポテンシャルプロブレムの状態を更新する手段として機能させるタスク管理制御プログラムとして構成することができる。
【発明の効果】
【００２０】
本発明のタスク管理システムにあっては、ワークフローを構成する各タスクと関連付けて明示的にリスクを管理することができ、プロジェクトのより一層の円滑な遂行に寄与することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態にかかるシステムの構成例を示す図である。
【図２】タスク管理システムの実装例を示す図である。
【図３】システム要素のハードウェア構成例を示す図である。
【図４】タスクおよびリスクの関係を示す図である。
【図５】タスクインスタンスのデータ構造例を示す図である。
【図６】リスクのデータ構造例を示す図である。
【図７】ポテンシャルプロブレムのデータ構造例を示す図である。
【図８】実施形態の処理例を示すシーケンス図（その１）である。
【図９】作成したタスクインスタンスの例を示す図である。
【図１０】検索されたリスクの例を示す図である。
【図１１】リスク提示の画面例を示す図である。
【図１２】ポテンシャルプロブレムの例を示す図である。
【図１３】ユーザによる修正後のポテンシャルプロブレムの例を示す図である。
【図１４】実施形態の処理例を示すシーケンス図（その２）である。
【図１５】ポテンシャルプロブレム一覧の画面例を示す図である。
【図１６】レポート入力画面の例を示す図である。
【図１７】対策タスク詳細入力画面の例を示す図である。
【図１８】レポート実施により更新されたタスクインスタンスの例を示す図である。
【図１９】レポート実施により更新されたポテンシャルプロブレムの例を示す図である。
【図２０】実施形態の処理例を示すシーケンス図（その３）である。
【図２１】ポテンシャルプロブレム一覧画面の他の例と編集等の画面の例を示す図である。
【発明を実施するための形態】
【００２２】
以下、本発明の好適な実施形態につき説明する。
【００２３】
＜構成＞
図１は本発明の一実施形態にかかるシステムの構成例を示す図である。
【００２４】
図１において、ユーザＵが使用（操作）するタスク管理システム１００は、ＰＣ（Personal Computer）等で動作するＷｅｂブラウザ等のユーザインタフェース１１０と、アプリケーションサーバ等で動作するワークフローエンジン１２０と、データベースサーバ等で動作するデータベース１３０とから構成される。
【００２５】
ユーザインタフェース１１０は、画面描画（レンダリング）を行うレンダリングエンジン１１１と、ワークフローエンジン１２０に対するコマンドおよびデータの入出力を行う入出力制御部１１２とを備えている。
【００２６】
データベース１３０には、オブジェクト間の関係（タスク間の関係、文書間の関係、タスクと文書間の関係）を保持・管理する関係情報ＤＢ１３１と、文書データを格納する文書ＤＢ１３２とが設けられている。また、データベース１３０には、予め管理者等によって抽象化されたタスクモデルを格納するタスクモデルＤＢ１３３と、具体的なタスクに対応するタスクインスタンスを格納するタスクインスタンスＤＢ１３４とが設けられている。更に、データベース１３０には、ワークフローの作業記録を格納する作業記録ＤＢ１３５と、ユーザ情報（ユーザＩＤ、パスワード等を含む）および組織情報を格納するユーザ情報ＤＢ１３６と、タスクに関連するリスク情報を格納するリスク情報ＤＢ１３７とが設けられている。リスク情報の詳細については後述する。
【００２７】
ワークフローエンジン１２０は、データベース１３０に対して各種の検索を実行する検索エンジン１２１と、ワークフローを構成するタスクの制御を行うタスク制御部１２２と、ワークフローに対する作業記録を作業記録ＤＢ１３５に対して行うワークフロー記録部１２６とを備えている。タスク制御部１２２は、タスクを作成するタスク作成部１２３と、作成されたタスクを実行するタスク実行部１２４と、作業記録ＤＢ１３５の情報を元にユーザＵの現在のタスクを推測し、関連する情報をデータベース１３０から検索して提示する推測エンジン１２５とを備えている。
【００２８】
ワークフロー制御の基本的な動作概要としては、ユーザＵはユーザインタフェース１１０を通じてワークフローエンジン１２０を操作し、ワークフローの作成、実行、ワークフローモデルの作成、関連情報、文書の登録、およびこれらとワークフローインスタンス、ワークフローモデルとのリンク等の作業を行う。ワークフローの作成に際し、ワークフローエンジン１２０の検索エンジン１２１は、データベース１３０に対して各種の検索を実行する。
【００２９】
タスク制御部１２２は、タスクモデルＤＢ１３３およびタスクインスタンスＤＢ１３４を使用し、ユーザＵの指示等に基づいてタスクを制御する。タスク制御部１２２のタスク作成部１２３は、ユーザＵの指示等に従ってデータベース１３０の情報を元にタスクの作成、情報のリンク付け等の作業を行う。タスク実行部１２４は、ユーザＵの指示に従ってタスクインスタンスＤＢ１３４の情報を利用し、実際のタスク情報の更新（タスクの実行とはシステム側から見ればタスク情報の更新である。）を行う。推測エンジン１２５は、作業記録ＤＢ１３５の情報を元にユーザＵの現在のタスクを推測し、関連する情報をデータベース１３０から検索し、ユーザＵに提示する。ワークフロー記録部１２６は、ユーザＵとワークフローエンジン１２０の動作を監視し、ワークフローの作業記録を作業記録ＤＢ１３５に格納する。
【００３０】
検索エンジン１２１は、タスク制御部１２２からの情報を利用し、文書ＤＢ１３２、タスクモデルＤＢ１３３、タスクインスタンスＤＢ１３４を検索し、結果をユーザＵに提示する。タスク間の関係、文書間の関係、タスクと文書間の関係は関係情報ＤＢ１３１に保持されており、それを利用してタスクネットワーク、文書ネットワーク、タスク―文書ネットワークを構築する。
【００３１】
また、タスクに関連するリスクをリスク情報ＤＢ１３７において管理する。タスクからポテンシャルプロブレム（リスクインスタンス）へのリンクは、タスク情報の一部としてタスクインスタンスＤＢ１３４で管理される。また、タスクモデルもリスクへのリンクを持つことができ、これはタスクモデル情報の一部としてタスクモデルＤＢ１３３で管理される。
【００３２】
図２はタスク管理システム１００の実装例を示す図であり、「Web Browser」がユーザインタフェース１１０に相当し、「J2EE Web Application」「HTML-based Collaborative Documenting System」「Web Server」「Workflow Management System」「Search Engine」がワークフローエンジン１２０に相当する。「J2EE Web Application」「HTML-based Collaborative Documenting System」「Web Server」はフロントエンド（Frontend）を構成している。「J2EE Web Application」はアプリケーションロジックを制御するＪａｖａ（登録商標）アプリケーションである。「HTML-based Collaborative Documenting System」はＷｉｋｉ等のＨＴＭＬベースの協調文書作成システムである。ユーザＵがＷｅｂブラウザを用いてシステムにアクセスできるようにＷｅｂサーバとＨＴＭＬベースの協調文書作成システムを具備している。また、ネットワーク上でのファイルへのアクセスを管理する必要があるが、NetDrive等のネットワーク上でのファイル管理システムを用いて本機能を実現することができる。
【００３３】
「Workflow Management System」「Search Engine」はバックエンド（Backend）を構成している。ワークフロー管理の基本的な機能に関しては従来のシステムと同一であるため、本発明によるシステムにも一般的なワークフロー管理システムのエンジンを用いることができる。また、タスクや関連情報を検索するための検索エンジンについても、一般的なクエリに基づいた検索エンジンを使用することができる。
【００３４】
また、「MySQL」「RDF Repositories」「Doc.Index」「WebDAV Repositories」がデータベース１３０に相当し、データレイヤ（Data layer)を構成している。タスク情報、関係情報およびリスク情報はＲＤＦ（Resource Description Framework）リポジトリとして管理されるものとし、文書情報等は文書リポジトリとインデックスサーバにより管理される。前者はタスクモデルＤＢ１３３、タスクインスタンスＤＢ１３４、関係情報ＤＢ１３１およびリスク情報ＤＢ１３７に相当し、後者は文書ＤＢ１３２に相当する。ユーザ情報も同じくＲＤＦリポジトリで実現され、ユーザ情報ＤＢ１３６に相当する。
【００３５】
図３はシステム要素のハードウェア構成例を示す図であり、ユーザインタフェース１１０が動作するＰＣ、ワークフローエンジン１２０が実行するアプリケーションサーバ、データベース１３０が動作するデータベースサーバ等のコンピュータ装置１０のハードウェア構成例を示している。すなわち、システムバス１１に接続されたＣＰＵ（Central Processing Unit）１２、ＲＯＭ（Read Only Memory）１３、ＲＡＭ（Random Access Memory）１４、ＮＶＲＡＭ（Non-Volatile Random Access Memory）１５、Ｉ／Ｆ（Interface）１６と、Ｉ／Ｆ１６に接続された、キーボード、マウス、モニタ等のＩ／Ｏ（Input/Output Device）１７、ＨＤＤ（Hard Disk Drive）１８、ＮＩＣ（Network Interface Card）１９を備えている。
【００３６】
図４はタスクおよびリスクの関係を示す図であり、右側をモデルデータ、左側をインスタンスデータとしている。タスクモデルがモデルデータに含まれ、タスクインスタンスがインスタンスデータに含まれることは説明を要しないであろう。
【００３７】
同様に、リスクとポテンシャルプロブレム、対策タスクモデルと対策タスクインスタンスが定義される。
【００３８】
リスクは特定のタスクインスタンスもしくはタスクモデルに対して関連付けられる。
【００３９】
リスク、ポテンシャルプロブレム、プロブレムの定義は次のようになる。
・リスクは、プロジェクトの潜在的な危険要因を指す。（Risk refers to the potential dangerous factors in a project.）
・ポテンシャルプロブレムは、タスクに関連するものとしてユーザにより追加もしくは選択されたリスクである。（Potential problem is the risk added/ selected by the user as relevant to the task.）
・プロブレムは、発生したリスクであり、プロジェクトに危険であることが確認されたものである。（Problem is an occurred risk, which is confirmed to be dangerous to the project.）
リスクは"予見される問題"であり、これが具現化することで実際の問題となる。そのため、具現化する以前のリスクは、抽象化されたモデル情報として扱うほうがよい。この考えに基づき、本実施形態ではリスクはモデル情報として管理されている。
【００４０】
また、リスクが実際に具現化した場合に対する対応策を予めそのリスクに関連付けておくことで、上記問題によりクイックに対応できるものと考えられる。そのため、対策タスクがわかっている場合には、リスクと対策タスクが関連付けられている。ただし、この対策タスクは、リスクが具現化する以前は具体的情報を持たないため、やはりモデルとして管理される。
【００４１】
リスクがユーザにより特定のタスクに関連付けられた場合には、ポテンシャルプロブレムとして、リスクからインスタンス化される。本実施形態では、ポテンシャルプロブレムはプレースホルダとして機能し、元になったリスクと、対策タスクをまとめて管理する。ポテンシャルプロブレム情報は、リスク情報ＤＢ１３７（図１）で管理される。リスクに対策タスクのタスクモデルが予め関連付けられている場合には、同タスクモデルをインスタンス化し、ポテンシャルプロブレムに関連付ける。
【００４２】
図５はタスクインスタンスＤＢ１３４に格納されるタスクインスタンスのデータ構造例を示す図である。タスクインスタンスは、「タスク名」「タスクＩＤ」「実行者ＩＤ」「実行者電子メールアドレス」「プロジェクトＩＤ」「使用者及び時間」「実行日時」「終了日時」「期日」「状態」「使用時間」「実行に必要な情報」「実行により作られた情報」「サブタスクに関する情報」「制約条件」「タスクの詳細情報」「関連情報ＵＲＩ」「関連リスクＩＤ」「関連ポテンシャルプロブレムＩＤ」「関連ポテンシャルプロブレム状態」等の項目を含んでいる。「関連リスクＩＤ」「関連ポテンシャルプロブレムＩＤ」「関連ポテンシャルプロブレム状態」以外は一般的なタスクインスタンスに含まれる項目である。
【００４３】
「関連リスクＩＤ」は、当該タスク（タスクインスタンス）と関連付いたリスクのＩＤである。「関連ポテンシャルプロブレムＩＤ」は、ユーザにより選択され、あるいは伝播により当該タスクと関連付いたポテンシャルプロブレムのＩＤである。「関連ポテンシャルプロブレム状態」は、「関連ポテンシャルプロブレムＩＤ」で示されるポテンシャルプロブレムの状態（実際の問題発生の有無等）である。なお、「関連ポテンシャルプロブレムＩＤ」が複数となる場合は、その順序に応じて「関連ポテンシャルプロブレム状態」が設定される。
【００４４】
なお、タスクインスタンスのデータ構造例について図示したが、タスクインスタンスの元となるタスクモデルについても項目については同様である。タスクモデルがタスクインスタンスと異なるのは、具体的な情報が設定されない項目がある点である。
【００４５】
図６はリスク情報ＤＢ１３７に格納されるリスクのデータ構造例を示す図である。リスクは、「リスク名」「リスクＩＤ」「リスクの詳細情報」「発生確率低減措置」「インパクト低減措置」「対策タスク（モデル）ＩＤ」「関連タスクＩＤ」「関連リスクＩＤ」等の項目を含んでいる。「リスク名」は、リスクの名称であり、自然文により簡潔に記載されるものである。「リスクＩＤ」は、リスクの識別子である。「リスクの詳細情報」は、リスクの内容説明であり、自然文により詳細が理解できるように記載されるものである。「発生確率低減措置」は、当該リスクの発生確率を低減する措置の内容である。「インパクト低減措置」は、当該リスクのインパクトを低減する措置の内容である。「対策タスク（モデル）ＩＤ」は、当該リスクの対策のために設けられたタスク（モデル）のＩＤである。「関連タスクＩＤ」は、当該リスクが関連付けられたタスクのＩＤである。「関連リスクＩＤ」は、当該リスクと関連する他のリスクのＩＤである。
【００４６】
図７はリスク情報ＤＢ１３７に格納されるポテンシャルプロブレムのデータ構造例を示す図である。ポテンシャルプロブレムは、「ポテンシャルプロブレム名」「ポテンシャルプロブレムＩＤ」「ポテンシャルプロブレムの詳細情報」「生成元リスクＩＤ」「発生確率低減措置」「インパクト低減措置」「対策タスク（モデル）ＩＤ」「関連タスクＩＤ」「関連リスクＩＤ」「カテゴリ」「責任者」「チェック方法」「リストアップ日時」「状態」「コメント」「最終更新日時」等の項目を含んでいる。
【００４７】
「ポテンシャルプロブレム名」「ポテンシャルプロブレムの詳細情報」「発生確率低減措置」「インパクト低減措置」「対策タスク（モデル）ＩＤ」「関連タスクＩＤ」「関連リスクＩＤ」は、デフォルトとして元になったリスクの「リスク名」「リスクの詳細情報」「発生確率低減措置」「インパクト低減措置」「対策タスク（モデル）ＩＤ」「関連タスクＩＤ」「関連リスクＩＤ」を引き継ぐ。
【００４８】
「ポテンシャルプロブレムＩＤ」は、ポテンシャルプロブレムの識別子であり、新たに発行される。「生成元リスクＩＤ」は、インスタンスである当該ポテンシャルプロブレムの生成の元となったモデルとしてのリスクのＩＤである。「カテゴリ」は、ポテンシャルプロブレムの管理のカテゴリである。「責任者」は、ポテンシャルプロブレムの管理責任者であり、タスク実行者である。「チェック方法」「リストアップ日時」は、管理項目である。「状態」は、当該ポテンシャルプロブレムの状態（実際の問題発生の有無等）である。ここでは、簡単のため、「本タスクにおいて当該ポテンシャルプロブレムがまだ発生していない」、「本タスクにおいて当該ポテンシャルプロブレムが発生した」の２つのみとし、それぞれ数値「０」、「１」を割り当てるものとする。「コメント」は、当該ポテンシャルプロブレムが実際に発生したことがユーザによって報告（レポート）された場合に入力されるコメントである。「最終更新日時」は、当該ポテンシャルプロブレムの最後の更新日時である。
【００４９】
＜動作＞
図８は上記の実施形態の処理例を示すシーケンス図であり、タスク作成時の処理例である。
【００５０】
図８において、ユーザＵがユーザインタフェース１１０に対し、タスクツリー上の作成位置や元になるタスクモデル等を指定し、所定の入力を行ってタスク作成を指示すると（ステップＳ１０１）、ユーザインタフェース１１０はワークフローエンジン１２０にタスク作成指示を伝える（ステップＳ１０２）。
【００５１】
これを受け、ワークフローエンジン１２０は、タスク情報に基づいてタスクインスタンスのデータを生成し、タスクインスタンスＤＢ１３４に登録を行う（ステップＳ１０３〜Ｓ１０５）。図９は作成したタスクインスタンスの例を示す図であり、タスク名「製品Ａの開発」についてのタスクであるとしている。
【００５２】
図８に戻り、ワークフローエンジン１２０は、作成したタスクインスタンスのテキスト情報を解析することにより、キーワードを抽出する（ステップＳ１０６）。図９に示したタスクインスタンスからは、「製品Ａ」「コンポーネントソフトウェアＸ」「開発用ソフトウェアＹ」のキーワードセットを得るものとする。
【００５３】
図８に戻り、ワークフローエンジン１２０は、抽出したキーワードセットに基づいてタスクインスタンスＤＢ１３４を検索し（ステップＳ１０７〜Ｓ１０９）、同様にリスク情報ＤＢ１３７を検索する（ステップＳ１１０〜Ｓ１１２）。すなわち、抽出したキーワードセットを用いてタスクおよびリスクのテキスト情報の検索（タスク名、リスク名、タスク詳細記述、リスク詳細情報などの全文検索）を行い、キーワードを含むタスクに関連付いたリスクや、キーワードを含むリスクを探す。この際、関連リスクや関連タスク、および、タスク実行者に関連しているタスク等については、優先度を高くして検索を行う。
【００５４】
なお、リスク情報ＤＢ１３７の検索（ステップＳ１１０〜Ｓ１１２）では、キーワードセットに基づく検索の他、タスクインスタンスＤＢ１３４の検索（ステップＳ１０７〜Ｓ１０９）でヒットしたリスクＩＤからのリスク情報の取得も併せて行っている。
【００５５】
上述した「製品Ａ」「コンポーネントソフトウェアＸ」「開発用ソフトウェアＹ」からは、図１０（ａ）（ｂ）に示す２つのリスクが検索されたものとする。
【００５６】
図８に戻り、ワークフローエンジン１２０は検索されたリスクの候補情報をユーザインタフェース１１０に引き渡し（ステップＳ１１３）、ユーザインタフェース１１０はユーザＵに提示する（ステップＳ１１４）。図１１はリスク提示の画面例を示す図であり、２つのリスクが候補として表示されている。各リスクの左側のチェックボックスを選択し、「ＯＫ」ボタンを押下することで選択が行われる。ユーザＵは、提示されたリスクの中から当該タスクにおいて考慮すべきと判断したものを選択することになる。
【００５７】
図８に戻り、ユーザＵがリスクの選択を完了すると（ステップＳ１１５）、ユーザインタフェース１１０はリスク選択をワークフローエンジン１２０に伝える（ステップＳ１１６）。
【００５８】
これを受け、ワークフローエンジン１２０は、選択されたリスクに対応するポテンシャルプロブレム候補のデータ内容を生成し、ユーザインタフェース１１０に引き渡し（ステップＳ１１７）、ユーザインタフェース１１０はユーザＵに提示する（ステップＳ１１８）。図１２はポテンシャルプロブレムの例を示す図であり、図１０（ａ）のリスクがユーザＵに選択（ユーザＵはタスク「製品Ａの開発」に特に関連するリスクとして「ライセンス条項の更改」を選択）されたものとし、そのリスクに対応するポテンシャルプロブレムを示している。なお、ユーザＵに提示する内容はこれらのデータ内容を見やすくレイアウトしたものとなる。
【００５９】
図８に戻り、ポテンシャルプロブレム候補の内容を見たユーザＵが、内容に修正を行いたいと思った場合、修正内容をユーザインタフェース１１０に指示し（ステップＳ１１９）、ユーザインタフェース１１０は同指示内容をワークフローエンジン１２０に伝える（ステップＳ１２０）。図１３はユーザＵによる修正後のポテンシャルプロブレムの例を示す図であり、ポテンシャルプロブレム名等を修正した場合を示している。
【００６０】
図８に戻り、ワークフローエンジン１２０は、ユーザＵに指示された修正後のポテンシャルプロブレム候補の情報をリスク情報ＤＢ１３７に登録し（ステップＳ１２１〜Ｓ１２３）、続いて、リスク情報ＤＢ１３７への登録時に発行されたポテンシャルプロブレムＩＤをタスクインスタンスＤＢ１３４における対応するタスクに登録する（ステップＳ１２４〜Ｓ１２６）。なお、この登録時におけるポテンシャルプロブレムの状態は「０」である。そして、ワークフローエンジン１２０は、登録完了の旨をユーザＵまで伝える（ステップＳ１２７、Ｓ１２８）。
【００６１】
図１４は実施形態の他の処理例を示すシーケンス図であり、タスクの遂行において実際に問題が発生した場合の処理例である。
【００６２】
図１４において、タスクの遂行において実際に問題が発生した場合、ユーザＵはユーザインタフェース１１０に対してポテンシャルプロブレムを指定してレポート指示を行う（ステップＳ１３１）。図１５はポテンシャルプロブレム一覧の画面例を示す図であり、タスク毎に関連付いたポテンシャルプロブレムがわかるようになっている。ここで、該当するポテンシャルプロブレムに対応する「ｒｅｐｏｒｔ」ボタンを押下することで、レポート指示を行うことができる。
【００６３】
図１４に戻り、レポート指示を受けたユーザインタフェース１１０は、レポート入力画面を表示し、ユーザＵにレポート入力を要求する（ステップＳ１３２）。なお、レポート入力画面のデータを既にユーザインタフェース１１０が有しているものとしているが、ワークフローエンジン１２０に要求して取得するようにしてもよい。図１６はレポート入力画面の例を示す図であり、コメント（ｃｏｍｍｅｎｔ）入力欄と、対策タスクの作成用チェックボックスと、「ｓａｖｅ」ボタンおよび「ｃａｎｃｅｌ」ボタンとが設けられている。
【００６４】
図１４に戻り、ユーザＵがレポート入力を行うと（ステップＳ１３３）、対策タスクの作成が要求されている場合、ユーザインタフェース１１０は続いて対策タスク詳細入力画面を表示し、ユーザＵに入力を要求する（ステップＳ１３４）。なお、対策タスク詳細入力画面のデータを既にユーザインタフェース１１０が有しているものとしているが、ワークフローエンジン１２０に要求して取得するようにしてもよい。図１７は対策タスク詳細入力画面の例を示す図であり、対策タスクが支援する機能をチェックボックスによって選択できるようになっている。
【００６５】
図１４に戻り、ユーザＵのレポート入力（ステップＳ１３３）あるいは対策タスク詳細入力（ステップＳ１３５）の後、ユーザインタフェース１１０は、レポート対象となったポテンシャルプロブレムＩＤとコメント等の情報をワークフローエンジン１２０に伝える（ステップＳ１３６）。
【００６６】
これを受け、ワークフローエンジン１２０は、タスクインスタンスＤＢ１３４における、現時点で処理対象となっているタスクインスタンス（タスクＩＤで特定）の、ポテンシャルプロブレムＩＤで特定されるポテンシャルプロブレムの関連ポテンシャルプロブレム状態を「１」に更新する（ステップＳ１３７〜Ｓ１３９）。図１８はレポート実施により更新されたタスクインスタンスの例を示す図である。
【００６７】
図１４に戻り、ワークフローエンジン１２０は、リスク情報ＤＢ１３７における、ポテンシャルプロブレムＩＤで特定されるポテンシャルプロブレムの状態を「１」に更新するとともに、コメント欄にコメントを設定する（ステップＳ１４０〜Ｓ１４２）。図１９はレポート実施により更新されたポテンシャルプロブレムの例を示す図である。
【００６８】
図１４に戻り、ユーザＵにより対策タスクの作成が要求されている場合、ワークフローエンジン１２０は、対策タスク情報に基づいてタスクインスタンスＤＢ１３４に対策タスクの登録（タスク作成）を行う（ステップＳ１４３〜Ｓ１４５）。
【００６９】
次いで、ワークフローエンジン１２０は、タスクＩＤに基づいてタスクインスタンスＤＢ１３４を検索することで関係者の電子メールアドレスを取得し（ステップＳ１４６〜Ｓ１４８）、ユーザＵにより実際の発生が報告されたポテンシャルプロブレムについての情報をメール送信する（ステップＳ１４９）。
【００７０】
そして、ワークフローエンジン１２０は、処理完了の旨をユーザＵまで伝える（ステップＳ１５０、Ｓ１５１）。
【００７１】
図２０は実施形態の他の処理例を示すシーケンス図であり、ユーザＵがリスク情報の伝播を指示した場合の処理例である。なお、リスク情報の伝播は、実際の問題の発生を報告する前であっても後であってもよい。
【００７２】
図２０において、ユーザＵがユーザインタフェース１１０にタスクを指定してリスク情報の伝播を指示すると（ステップＳ１６１）、ユーザインタフェース１１０はタスクＩＤと伝播指示をワークフローエンジン１２０に伝える（ステップＳ１６２）。
【００７３】
これを受け、ワークフローエンジン１２０は、タスクＩＤに基づいてタスクインスタンスＤＢ１３４を検索することで、当該タスクＩＤのタスクの親タスクおよび子タスクのタスクＩＤを取得する（ステップＳ１６３〜Ｓ１６５）。
【００７４】
次いで、ワークフローエンジン１２０は、タスクの親タスクおよび子タスクのタスクＩＤに基づいてリスク情報ＤＢ１３７を検索することで、関連付いているポテンシャルプロブレムＩＤを取得する（ステップＳ１６６〜Ｓ１６８）。
【００７５】
次いで、ワークフローエンジン１２０は、取得したポテンシャルプロブレムＩＤで特定されるポテンシャルプロブレムの複製を、新たなポテンシャルプロブレムＩＤを発行してリスク情報ＤＢ１３７に登録する（ステップＳ１６９〜Ｓ１７１）。
【００７６】
次いで、ワークフローエンジン１２０は、タスクインスタンスＤＢ１３４において、対象となるタスクのタスクインスタンスに、新たに登録したポテンシャルプロブレムＩＤを関連付ける登録を行う（ステップＳ１７２〜Ｓ１７４）。そして、ワークフローエンジン１２０は、処理完了の旨をユーザＵまで伝える（ステップＳ１７５、Ｓ１７６）。
【００７７】
図２１はポテンシャルプロブレム一覧画面の他の例と編集等の画面の例を示す図である。図１５にもポテンシャルプロブレムの一覧表示例を示したが、図２１ではより一覧性を高めている。また、「Reduce possibility action」「Reduce impact action」内に対策タスクの作成ボタンを設けることで、この一覧から対策タスクの作成を指示することができる。このように、リスクの提示の仕方を工夫し、ユーザとのインタラクションを最小化することで、プロジェクトのリスクをより早期に発見し、関係者により迅速な対策がとられることに寄与することができる。
【００７８】
また、図２１（ａ）では、左側のチェックボックスにチェックを入れ、下のボタンを操作することで、編集（Ｅｄｉｔ）、追加（Ａｄｄ）、複製（Ｄｕｐｌｉｃａｔｅ）、削除（Ｄｅｌｅｔｅ）等の操作を行えるようになっている。すなわち、ポテンシャルプロブレムは独立したオブジェクトとしてシステムが管理しているため、各種の操作を柔軟に行うことができる。図１５（ｂ）は編集画面の例、（ｃ）は追加画面の例、（ｄ）は複製画面の例を示している。
【００７９】
＜総括＞
以上説明したように、本実施形態によれば、次のような利点がある。
（１）ワークフローを構成する各タスクと関連付けて明示的にリスクを管理することができ、プロジェクトのより一層の円滑な遂行に寄与することができる。
（２）自然言語による自然文でリスクの内容を記述できるため、ユーザへのオーバーヘッドを抑え、かつリスク抽出の完全性を高めることができる。
（３）親子関係にある他のタスクからリスク情報を伝播することができるため、ユーザの同様な操作を削減することができる。
（４）関係者にリスク情報を通知することができるため、発生した問題に対しての迅速な対処に寄与することができる。
【００８０】
以上、本発明の好適な実施の形態により本発明を説明した。ここでは特定の具体例を示して本発明を説明したが、特許請求の範囲に定義された本発明の広範な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更を加えることができることは明らかである。すなわち、具体例の詳細および添付の図面により本発明が限定されるものと解釈してはならない。
【符号の説明】
【００８１】
１００      タスク管理システム
１１０      ユーザインタフェース
１１１      レンダリングエンジン
１１２      入出力制御部
１２０      ワークフローエンジン
１２１      検索エンジン
１２２      タスク制御部
１２３      タスク作成部
１２４      タスク実行部
１２５      推測エンジン
１２６      ワークフロー記録部
１３０      データベース
１３１      関係情報ＤＢ
１３２      文書ＤＢ
１３３      タスクモデルＤＢ
１３４      タスクインスタンスＤＢ
１３５      作業記録ＤＢ
１３６      ユーザ情報ＤＢ
１３７      リスク情報ＤＢ
Ｕ          ユーザ
【先行技術文献】
【特許文献】
【００８２】
【特許文献１】特開２００７−１８８１４５号公報
【特許文献２】特開２００８−６５７８４号公報
【特許文献３】特開２００８−７１０８２号公報
【特許文献４】特開２００８−７１０８３号公報
【図１】
2010286999.tif 000003
【図２】
2010286999.tif 000004
【図３】
2010286999.tif 000005
【図４】
2010286999.tif 000006
【図５】
2010286999.tif 000007
【図６】
2010286999.tif 000008
【図７】
2010286999.tif 000009
【図８】
2010286999.tif 000010
【図９】
2010286999.tif 000011
【図１０】
2010286999.tif 000012
【図１１】
2010286999.tif 000013
【図１２】
2010286999.tif 000014
【図１３】
2010286999.tif 000015
【図１４】
2010286999.tif 000016
【図１５】
2010286999.tif 000017
【図１６】
2010286999.tif 000018
【図１７】
2010286999.tif 000019
【図１８】
2010286999.tif 000020
【図１９】
2010286999.tif 000021
【図２０】
2010286999.tif 000022
【図２１】
2010286999.tif 000023