(57)【要約】【課題】  複数の関連するプロジェクトがあるような場合に、他のプロジェクトの管理内容に応じて適正なプロジェクト管理を簡単に行う。【解決手段】  本プロジェクト管理システムでは、タスク完了制御部１００７が、タスクを完了する操作があった場合、対象項目のデータが完了条件を満たすかどうかによって、その操作を許可するかどうかを判定する。関連プロジェクト判定部１００８は、プロジェクトのタスクに新たに対象項目のデータが設定された場合、そのプロジェクトに対する関連プロジェクトの有無を判定する。データ処理部１００９は、関連プロジェクトが有る場合、新たに対象項目が設定されたタスクと対応するタスクに対象項目のデータを設定する。【選択図】  図１０
2007058703.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを用いてプロジェクトを管理するシステムであって、
前記コンピュータが、
プロジェクトにそのプロジェクトのタスクを関係付けるデータを格納する手段と、
プロジェクトに他のプロジェクトを関係付けるデータを格納する手段と、
タスクの完了条件を示すデータを含むタスクのデータを格納する手段と、
プロジェクトのタスクに、完了条件の対象項目のデータを関係付けるデータを格納する手段と、
タスクの完了条件を示すデータ、およびそのタスクに関係付けられた対象項目のデータを読み出し、対象項目のデータの値が完了条件を満たすかどうかによって、そのタスクの完了を許可するか否かの決定をする手段と、
プロジェクトのタスクに対象項目のデータが新たに関係付けられた場合、そのプロジェクトに関係付けられたプロジェクトを検索することにより、プロジェクトに対する関連プロジェクトの有無の判定をする手段と、
関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、新たに対象項目のデータが関係付けられたタスクと対応するタスクを検索し、検索したタスクに対象項目のデータを関係付けるデータを書き込む処理を行う手段と、
タスクに関係付けられた対象項目のデータを読み出して出力する手段と
を備えるプロジェクト管理システム。
【請求項２】
前記判定をする手段が、プロジェクトのタスクに関係付けられた対象項目のデータが変更された場合にも、プロジェクトに対する関連プロジェクトの有無の判定をし、
前記処理を行う手段が、関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、変更された対象項目のデータが関係付けられたタスクと対応するタスクを検索し、検索したタスクに関係付けられた対象項目のデータから、変更された対象項目のデータと対応する対象項目のデータを検索し、検索した対象項目のデータを更新する書き込みを行う
請求項１記載のプロジェクト管理システム。
【請求項３】
前記コンピュータが、プロジェクトの開始時期のデータを含むプロジェクトのスケジュールのデータを格納する手段をさらに備え、
前記処理を行う手段が、プロジェクトに対する関連プロジェクトが有る場合、そのプロジェクトおよびその関連プロジェクトのスケジュールのデータをそれぞれ読み出し、読み出したスケジュールのデータからプロジェクト間の開始時期のずれを計算し、計算した開始時期のずれが予め定めた範囲内にあるかどうかを決定し、その開始時期のずれが前記範囲内にある場合、新たな対象項目のデータが関係付けられたタスクと対応するタスクに、その対象項目のデータと同一のデータを関係付けるデータを書き込む処理を行う
請求項１記載のプロジェクト管理システム。
【請求項４】
前記処理を行う手段が、プロジェクト間の開始時期のずれが前記範囲外にある場合、プロジェクトのタスクに関係付けられた新たな対象項目のデータの値に対し、予め定められた値を加算または減算した値を計算し、そのタスクに対応する関連プロジェクトのタスクに、計算した値を有する対象項目のデータを関係付けるデータを書き込む処理を行う
請求項３記載のプロジェクト管理システム。
【請求項５】
前記処理を行う手段が、関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、新たな対象項目のデータが関係付けられたタスクと対応するタスクを検索し、検索したタスクのデータに、そのタスクの完了条件を示すデータを書き込む
請求項１記載のプロジェクト管理システム。
【請求項６】
前記タスクのデータを格納する手段が、タスクの開始時期のデータを含むタスクのスケジュールのデータを格納し、
前記処理を行う手段が、プロジェクトに対する関連プロジェクトが有る場合、新たに対象項目のデータが関係付けられたタスクおよびそのタスクに対応する関連プロジェクトのタスクのスケジュールのデータをそれぞれ読み出し、読み出したスケジュールのデータからタスク間の開始時期のずれを計算し、計算した開始時期のずれが予め定めた範囲内にあるかどうかを決定し、その開始時期のずれが前記範囲内にある場合、新たな対象項目のデータが関係付けられたタスクの完了条件を示すデータと同一のデータを関連プロジェクトの対応タスクのデータに書き込む
請求項５記載のプロジェクト管理システム。
【請求項７】
前記処理を行う手段が、タスク間の開始時期のずれが前記範囲外にある場合、新たな対象項目のデータが関係付けられたタスクの完了条件を示すデータの値に対し、予め定められた値を加算または減算し、そのタスクに対応する関連プロジェクトのタスクの完了条件を示すデータに、計算した値を書き込む
請求項６記載のプロジェクト管理システム。
【請求項８】
前記決定をする手段が、タスクを完了する操作があった場合、その操作を許可するか否かの決定をする請求項１記載のプロジェクト管理システム。
【請求項９】
前記対象項目がプロジェクトのタスクにおけるリスクを含み、前記対象項目のデータの値がリスクのレベルを示す値を含む
請求項１記載のプロジェクト管理システム。
【請求項１０】
前記完了条件を示すデータが、リスクのレベルを示す値に対する基準値のデータを含む
請求項９記載のプロジェクト管理システム。
【請求項１１】
コンピュータを用いてプロジェクトを管理する方法であって、前記コンピュータが、記憶装置および出力装置を有し、前記記憶装置が、プロジェクトにそのプロジェクトのタスクを関係付けるデータと、プロジェクトに他のプロジェクトを関係付けるデータと、タスクの完了条件を示すデータを含むタスクのデータと、プロジェクトのタスクに、完了条件の対象項目のデータを関係付けるデータとを格納し、
前記コンピュータにより実行可能な手順として、
タスクの完了条件を示すデータ、およびそのタスクに関係付けられた対象項目のデータを前記記憶装置から読み出し、対象項目のデータの値が完了条件を満たすかどうかによって、そのタスクの完了を許可するか否かを決定する手順と、
プロジェクトのタスクに対象項目のデータが新たに関係付けられた場合、そのプロジェクトに関係付けられたプロジェクトを検索することにより、プロジェクトに対する関連プロジェクトの有無の判定をする手順と、
関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、新たに対象項目のデータが関係付けられたタスクと対応するタスクを検索し、検索したタスクに対象項目のデータを関係付けるデータを前記記憶装置に書き込む処理を行う手順と、
タスクに関係付けられた対象項目のデータを前記記憶装置から読み出して前記出力装置に出力する手順と
を備えるプロジェクト管理方法。
【請求項１２】
プロジェクトにそのプロジェクトのタスクを関係付けるデータを格納する手段、
プロジェクトに他のプロジェクトを関係付けるデータを格納する手段、
タスクの完了条件を示すデータを含むタスクのデータを格納する手段、
プロジェクトのタスクに、完了条件の対象項目のデータを関係付けるデータを格納する手段、
タスクの完了条件を示すデータ、およびそのタスクに関係付けられた対象項目のデータを読み出し、対象項目のデータの値が完了条件を満たすかどうかによって、そのタスクの完了を許可するか否かの決定をする手段、
プロジェクトのタスクに対象項目のデータが新たに関係付けられた場合、そのプロジェクトに関係付けられたプロジェクトを検索することにより、プロジェクトに対する関連プロジェクトの有無の判定をする手段、
関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、新たに対象項目のデータが関係付けられたタスクと対応するタスクを検索し、検索したタスクに対象項目のデータを関係付けるデータを書き込む処理を行う手段、そして
タスクに関係付けられた対象項目のデータを読み出して出力する手段
としてコンピュータを機能させるためのプロジェクト管理プログラム。
【請求項１３】
請求項１２記載のプロジェクト管理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、企業のような組織で遂行されるプロジェクトを管理するためのコンピュータシステムに関するものである。
【背景技術】
【０００２】
組織では、様々な目的でプロジェクトを遂行する。プロジェクトを遂行して、例えば新しい商品やサービスを開発したり、組織の構成を変革したりする。組織は、その目的を達成するため必要な人員や資材、予算をプロジェクトに割り当てる。限りある資源のもと、プロジェクトを成功に導くにはプロジェクトの管理が重要となる。
【０００３】
米国のプロジェクトマネジメント協会（Ｐｒｏｊｅｃｔ  Ｍａｎａｇｅｍｅｎｔ  Ｉｎｓｔｉｔｕｔｅ）は、プロジェクトマネジメントの知識体系をＰＭＢＯＫ（Ｐｒｏｊｅｃｔ  Ｍａｎａｇｅｍｅｎｔ  Ｂｏｄｙ  Ｏｆ  Ｋｎｏｗｌｅｄｇｅ）としてまとめている。ＰＭＢＯＫでは、プロジェクト管理の知識領域を９つの領域に分類する。それらの領域は、スコープマネジメント、タイムマネジメント、コストマネジメント、品質マネジメント、組織マネジメント、コミュニケーションマネジメント、リスクマネジメント、調達マネジメントの８つの領域に、統合マネジメントを加えたものである。各領域は複数のプロセスを含む。例えばタイムマネジメントは、目的を達成するために必要な作業の定義、作業順序の設定、所要時間の見積り、スケジュールの作成、スケジュール管理といったプロセスを含む。
【０００４】
スケジュール管理では、各作業の進み具合やプロジェクト全体の進み具合をスケジュール表や進捗管理ソフトウェアを用いて把握する。特許文献１は、ソフトウェア開発プロジェクトにおける進捗管理のための装置を記載している。この装置は、作業ごとの進捗状況をバーチャート形式で表示する。実際の作業が遅れ、作業の進捗率が予定進捗率より小さくなっている場合には、その作業を通常とは異なる色で表示して警告する。
【特許文献１】特開２００１−１４１５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このようなプロジェクト管理は、個々のプロジェクトに対して行われている。しかしながら、別個のプロジェクトであっても、一部で同様の管理をすることができるかもしれない。例えば新商品を開発するプロジェクトとして２９型のテレビジョン受像機を開発するプロジェクトが始まってから、シリーズ商品となる３２型の新商品を開発するプロジェクトが遅れて始まることがある。このような場合、後発プロジェクトにおいて、先行プロジェクトの管理内容を一部利用することができるかもしれない。
【０００６】
個々のプロジェクトに対して管理を行っていると、プロジェクトのメンバは、このような利用が可能かどうかを簡単に把握することができない。関連プロジェクトに関与していなければ、その存在自体が直ぐにわからないこともある。プロジェクトの目的や成果物、スケジュール、リスクなどがプロジェクトの進行に応じて見直されることがあるため、プロジェクト間で実行時期が重なっていると、その把握はさらに困難になる。
【０００７】
その結果、プロジェクトにおける各作業を完了するにあたって、先行プロジェクトでは完了の条件となっていた事項が、後発プロジェクトでは条件から抜けてしまったり不適当な評価をされてしまったりする恐れが生じる。
【０００８】
本発明は、このような従来の技術における課題を解決するためになされたものであり、他のプロジェクトの管理内容に応じて適正なプロジェクト管理を簡単にすることのできるプロジェクト管理システム、プロジェクト管理方法、およびプロジェクト管理プログラムを提供することを目的とするものである。
【課題を解決するための手段】
【０００９】
上述のような目的を達成するため、本発明は、コンピュータを用いてプロジェクトを管理するシステムを提供する。そのプロジェクト管理システムでは、タスク管理データ格納部が、プロジェクトにそのプロジェクトのタスクを関係付けるデータを格納する。プロジェクト間関係データ格納部が、プロジェクトに他のプロジェクトを関係付けるデータを格納する。タスクデータ格納部が、タスクの完了条件を示すデータを含むタスクのデータを格納する。対象項目管理データ格納部が、プロジェクトのタスクに、完了条件の対象項目のデータを関係付けるデータを格納する。タスク完了制御部は、例えばタスクを完了する操作があった場合、そのタスクの完了条件を示すデータ、およびそのタスクに関係付けられた対象項目のデータを読み出し、対象項目のデータの値が完了条件を満たすかどうかによって、そのタスクの完了を許可するか否かを決定する。関連プロジェクト判定部は、プロジェクトのタスクに対象項目のデータが新たに関係付けられた場合、そのプロジェクトに関係付けられたプロジェクトを検索することにより、プロジェクトに対する関連プロジェクトの有無の判定をする。データ処理部は、関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、新たに対象項目のデータが関係付けられたタスクと対応するタスクを検索し、検索したタスクに対象項目のデータを関係付けるデータを書き込む処理を行う。データ出力部は、タスクに関係付けられた対象項目のデータを読み出して出力する。新たに対象項目のデータをタスクに関係付けた場合、そのタスクの属するプロジェクトに関連プロジェクトがあれば、その関連プロジェクトの対応タスクに対象項目のデータを関係付ける。このため、他のプロジェクトで対象項目のデータが追加されたことをユーザが調べる必要がなくなる。その結果、簡単に適正なプロジェクト管理をすることが可能となる。
【００１０】
このプロジェクト管理システムにおいて、関連プロジェクト判定部が、プロジェクトのタスクに関係付けられた対象項目のデータが変更された場合にも、プロジェクトに対する関連プロジェクトの有無の判定をするようにしてもよい。データ処理部は、関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、変更された対象項目のデータが関係付けられたタスクと対応するタスクを検索し、検索したタスクに関係付けられた対象項目のデータから、変更された対象項目のデータと対応する対象項目のデータを検索し、検索した対象項目のデータを更新する書き込みを行うことができる。このようにすれば、他のプロジェクトで対象項目のデータが変更されたことを調べる必要がなくなる。プロジェクトの進捗に応じてそのデータが変更される場合には、その進捗を簡単に把握することができる。
【００１１】
このプロジェクト管理システムに、プロジェクトデータ格納部をさらに備えるようにしてもよい。プロジェクトデータ格納部は、プロジェクトの開始時期のデータを含むプロジェクトのスケジュールのデータを格納する。データ処理部は、プロジェクトに対する関連プロジェクトが有る場合、そのプロジェクトおよびその関連プロジェクトのスケジュールのデータをそれぞれ読み出し、読み出したスケジュールのデータからプロジェクト間の開始時期のずれを計算し、計算した開始時期のずれが予め定めた範囲内にあるかどうかを決定し、その開始時期のずれが範囲内にある場合、新たな対象項目のデータが関係付けられたタスクと対応するタスクに、その対象項目のデータと同一のデータを関係付けるデータを書き込む処理を行うことができる。プロジェクト間の開始時期のずれが範囲外にある場合、データ処理部が、プロジェクトのタスクに関係付けられた新たな対象項目のデータの値に対し、予め定められた値を加算または減算した値を計算し、そのタスクに対応する関連プロジェクトのタスクに、計算した値を有する対象項目のデータを関係付けるデータを書き込む処理を行うこともできる。
【００１２】
このプロジェクト管理システムにおいて、データ処理部が、関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、新たな対象項目のデータが関係付けられたタスクと対応するタスクを検索し、検索したタスクのデータに、そのタスクの完了条件を示すデータを書き込むようにしてもよい。
【００１３】
このプロジェクト管理システムにおいて、タスクデータ格納部が、タスクの開始時期のデータを含むタスクのスケジュールのデータを格納するようにしてもよい。データ処理部は、プロジェクトに対する関連プロジェクトが有る場合、新たに対象項目のデータが関係付けられたタスクおよびそのタスクに対応する関連プロジェクトのタスクのスケジュールのデータをそれぞれ読み出し、読み出したスケジュールのデータからタスク間の開始時期のずれを計算し、計算した開始時期のずれが予め定めた範囲内にあるかどうかを決定し、その開始時期のずれが範囲内にある場合、新たな対象項目のデータが関係付けられたタスクの完了条件を示すデータと同一のデータを関連プロジェクトの対応タスクのデータに書き込むことができる。タスク間の開始時期のずれが範囲外にある場合、データ処理部は、新たな対象項目のデータが関係付けられたタスクの完了条件を示すデータの値に対し、予め定められた値を加算または減算し、そのタスクに対応する関連プロジェクトのタスクの完了条件を示すデータに、計算した値を書き込むことができる。
【００１４】
このプロジェクト管理システムにおいて、対象項目が例えばプロジェクトのタスクにおけるリスクを含み、対象項目のデータの値がリスクのレベルを示す値を含む。さらに完了条件を示すデータが、例えばリスクのレベルを示す値に対する基準値のデータを含む。
【００１５】
他の観点では、本発明は、コンピュータを用いてプロジェクトを管理する方法を提供する。このプロジェクト管理方法は、上述のようなプロジェクト管理装置に対応するものである。コンピュータは、記憶装置および出力装置を有し、記憶装置は、プロジェクトにそのプロジェクトのタスクを関係付けるデータと、プロジェクトに他のプロジェクトを関係付けるデータと、タスクの完了条件を示すデータを含むタスクのデータと、プロジェクトのタスクに、完了条件の対象項目のデータを関係付けるデータとを格納する。プロジェクト管理方法は、そのコンピュータにより実行可能な手順として、タスクの完了条件を示すデータ、およびそのタスクに関係付けられた対象項目のデータを記憶装置から読み出し、対象項目のデータの値が完了条件を満たすかどうかによって、そのタスクの完了を許可するか否かを決定する手順と、プロジェクトのタスクに対象項目のデータが新たに関係付けられた場合、そのプロジェクトに関係付けられたプロジェクトを検索することにより、プロジェクトに対する関連プロジェクトの有無の判定をする手順と、関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、新たに対象項目のデータが関係付けられたタスクと対応するタスクを検索し、検索したタスクに対象項目のデータを関係付けるデータを記憶装置に書き込む処理を行う手順と、タスクに関係付けられた対象項目のデータを記憶装置から読み出して出力装置に出力する手順とを備える。
【００１６】
さらに他の観点では、本発明は上述のようなプロジェクト管理装置の機能をコンピュータにより実現したりプロジェクト管理方法の手順を実行したりするためのプロジェクト管理プログラム、およびそのプログラムを記録したコンピュータ読取可能な記録媒体を提供する。
【発明の効果】
【００１７】
このような構成を採用することにより、本発明では、他のプロジェクトの管理内容に応じて適正なプロジェクト管理を簡単にすることが可能となる。
【発明を実施するための最良の形態】
【００１８】
以下、添付図面を参照して、本発明の実施の形態について説明する。この実施の形態では、家庭用電気器具の新規商品開発プロジェクトを管理するためのコンピュータシステムとして本発明を具体化する。
【００１９】
図１は本実施の形態におけるプロジェクト管理の具体例を説明するための図である。この例は、管理対象として２つのプロジェクト１０１Ａおよび１０１Ｂを含む。プロジェクト１０１Ａは、２９型のテレビジョン受像機の新商品を開発するプロジェクトであり、プロジェクト１０１Ａの名称は「テレビ２９型」である。プロジェクト１０１Ｂは、３２型のテレビジョン受像機の新商品を開発するプロジェクトであり、プロジェクト１０１Ｂの名称は「テレビ３２型」である。プロジェクト１０１Ａとプロジェクト１０１Ｂは開始時期がずれており、プロジェクト１０１Ａが期間１０２だけプロジェクト１０１Ｂより先行している。後発のプロジェクト１０１Ｂで開発される３２型の新商品は、先行のプロジェクト１０１Ａで開発される２９型の新商品のシリーズ商品である。
【００２０】
各プロジェクトの作業は、複数のタスク１０３に分割することができる。分割の手法には、例えばＷＢＳ（Ｗｏｒｋ  Ｂｒｅａｋｄｏｗｎ  Ｓｔｒｕｃｔｕｒｅ）が用いられる。この例において、プロジェクト１０１Ａおよび１０１Ｂの作業は、それぞれ「商品企画」、「構想設計」および「詳細設計」という３つのタスク１０３を含む。各プロジェクトでは、これらのタスク１０３がその順序で逐次実行される。「商品企画」が完了してから「構想設計」が開始し、「構想設計」が完了してから「詳細設計」が開始する。タスク１０３間に依存関係がある場合、このように他のタスク１０３の完了がタスク１０３の開始条件となることが多い。
【００２１】
各タスク１０３には、そのタスク１０３を実行するときの懸念事項であるリスク１０４を関係付けることができる。代表的なリスク１０４は、タイムやコスト、品質の３つの制約条件に関するものである。リスク１０４には、そのリスクのレベルを示す値１０５を与えることができる。
【００２２】
またタスク１０３には、タスク１０３の完了を許可するかどうかを制御するトールゲート１０６を設けることができる。トールゲート１０６は、タスク１０３の完了条件が満たされない限り閉じている。トールゲート１０６が閉じている状態では、次のタスクに移行することができない。完了条件が満たされると、トールゲート１０６が開き、次のタスクに移行することができる。リスク１０４は、完了条件の対象項目の一例である。リスク１０４が許容範囲内のものになったかどうかをトールゲート１０６で確認する。ここでは、リスク値１０５が完了条件の値１０７以下になると、トールゲート１０６が開く。図１では、プロジェクト１０１Ａのタスク「商品企画」に関係付けられたリスク１０４のリスク値１０５が完了条件の値１０７以下となっているため、そのタスクのトールゲート１０６が開いている。
【００２３】
本実施の形態におけるプロジェクト管理システムは、このようなリスク１０４の関係付けや、トールゲート１０６の制御を含む管理をプロジェクト毎に行う。さらにプロジェクト管理システムは、あるプロジェクトの管理内容を必要に応じて他のプロジェクトの管理に反映する。例えば先行のプロジェクト１０１Ａのタスク「商品企画」にリスクを関係付けると、後発のプロジェクト１０１Ｂの対応するタスク「商品企画」にもリスクを関係付ける。
【００２４】
図２乃至図２２は本実施の形態におけるプロジェクト管理システムの詳細を説明するための図である。図２はプロジェクト管理システムの全体構成の一例を示す。このプロジェクト管理システムでは、プロジェクト管理装置２０１が、端末２０２乃至２０５とネットワーク２０６を通じて接続されている。端末２０２乃至２０５は、一または複数のプロジェクトのメンバが利用する端末である。例えば端末２０２は開発リーダが利用する端末であり、端末２０３は開発メンバが利用する端末である。端末２０４は他のプロジェクトの開発メンバが利用する端末であり、端末２０５は営業や購買など関連部門のユーザが利用する端末である。プロジェクト管理装置２０１は、端末２０２乃至端末２０５にプロジェクトの情報を提供する。プロジェクトの情報は、ウェブベースで提供することができる。
【００２５】
図３はプロジェクトのタスクリストを表示するウェブページの一例を示す図である。このウェブページ３０１は、プロジェクトに必要なタスクのリストをユーザが参照するためのものである。プロジェクト管理装置２０１は、端末２０２乃至２０５からの要求に応じて、そのウェブページ３０１を要求元に転送する。端末は、液晶ディスプレイのような表示装置にそのウェブページ３０１を出力する。ウェブページ３０１には、プロジェクト名の表示欄３０２や、そのプロジェクトに必要なタスクのリスト３０３が配置されている。この例では、表示欄３０２に「テレビ２９型」というプロジェクト名を表示し、タスクリスト３０３には「商品企画」、「構想設計」および「詳細設計」という３つのタスクについて情報を表示している。またこの例において、各タスクのタスク名にはリンク３０４を設けている。リンク３０４は、そのタスクの情報を表示するウェブページの転送をシステムに要求するためのものである。
【００２６】
図４はタスクの情報を表示するウェブページの一例を示す図である。このウェブページ４０１は、タスクの基本情報をユーザが参照するためのものである。ウェブページ３０１上のリンク３０４をユーザが選択する操作をすると、そのユーザの端末は、ウェブページ４０１の転送をプロジェクト管理装置２０１に要求する。プロジェクト管理装置２０１からウェブページ４０１を受信すると、表示装置にそのウェブページ４０１を出力する。ウェブページ４０１には、タスク名の表示欄４０２や、基本情報の表示欄４０３が配置されている。この例では、表示欄４０２に「商品企画」というタスク名を表示している。
【００２７】
図５はプロジェクト管理装置に用いるハードウェアの構成の一例を示す図である。プロジェクト管理装置２０１には、一台または複数台の汎用コンピュータを用いることができる。この例では、一台の汎用コンピュータ５０１を用いている。コンピュータ５０１は、ＣＰＵ５０２やバス５０３を備えている。ＣＰＵ５０２はバス５０３を通じてＲＯＭ５０４やＲＡＭ５０５と接続される。ＲＯＭ５０４に記憶されたプログラムの指令に従ってコンピュータ５０１が起動すると、ＣＰＵ５０２はＲＡＭ５０５上でＯＳ５０６の一部または全部を動作させる。バス５０３には通信インターフェイス５０７も接続されている。通信インターフェイス５０７は、ネットワーク２０６を通じてコンピュータ５０１を端末２０２乃至２０５に接続する。またバス５０３には、記憶装置の一つとして、ＨＤＤ５０８も接続されている。ＨＤＤ５０８は、このコンピュータ５０１でプロジェクト管理装置２０１の機能を実現するためのプロジェクト管理プログラム５０９のファイルを格納している。ＣＰＵ５０２は、そのプロジェクト管理プログラム５０９のファイルをコンピュータ５０１の起動時にＨＤＤ５０８から読み出し、ＲＡＭ５０５上でそのプログラム５０９を動作させる。ＨＤＤ５０８は、プログラム５０９のファイルのほか、ウェブサーバプログラム５１０のファイルや、プロジェクトマスタファイル５１１、タスクマスタファイル５１２、リスクマスタファイル５１３および管理データファイル５１４を格納する。
【００２８】
図６はプロジェクトマスタファイルのデータ構成の一例を示す図である。プロジェクトマスタファイル５１１は、プロジェクトのデータを格納する。プロジェクトデータは、プロジェクト毎に、プロジェクトコードやプロジェクト名、シリーズコード、開始日などのデータを含む。プロジェクトコードは各プロジェクトに固有のコードである。シリーズコードは、開発商品のシリーズに固有のコードである。プロジェクトデータがシリーズコードを含んでいれば、そのプロジェクトがシリーズ商品のいずれかを開発するプロジェクトであることを意味する。原則的に、一つのシリーズコードは、複数のプロジェクトコードに関係付けられる。この例では、プロジェクト「テレビ２９型」のレコードと、プロジェクト「テレビ３２型」のレコードの両方が、シリーズコード「Ｓ０００１Ｔ」を含む。両プロジェクトで開発される商品がシリーズ商品であることを意味する。開始日はプロジェクトのスケジュールを表すデータの一例である。開始日のほか終了日や期間の値をスケジュールのデータとしてプロジェクトのデータに含めてもよい。
【００２９】
図７はタスクマスタファイルのデータ構成の一例を示す図である。タスクマスタファイル５１２は、タスクのデータを格納する。タスクデータは、タスク毎に、タスクコードやタスク名、開始日、ステータス、トールゲート条件などのデータを含む。タスクコードは各タスクに固有のコードである。タスク名が同一のタスクでも、属するプロジェクトが異なれば、異なったタスクコードが与えられる。開始日はタスクのスケジュールを表すデータの一例である。タスクのデータには、開始日のほか、終了日や期間の値をスケジュールのデータとして含めることができる。ステータスは、作業中や完了といったタスクの作業状態を示す。ここでは、ステータスの値を数値で与える。ステータスの値が「１」であれば、そのタスクは作業中であり、値が「２」であれば、そのタスクは完了である。トールゲート条件はタスクの完了条件である。ここでは、トールゲート条件として「高い」、「中間」、「低い」という３段階の条件を採用する。このトールゲート条件も数値で与えることができる。トールゲート条件の値が「１」であれば、条件は「高い」であり、値が「２」であれば、条件は「中間」であり、値が「３」であれば、条件は「低い」である。
【００３０】
図８はリスクマスタファイルのデータ構成の一例を示す図である。リスクマスタファイル５１３はリスクのデータを格納する。リスクデータは、リスク毎に、リスクコードやリスク名、リスク値などのデータを含む。リスクコードは、各リスクに固有のコードである。リスク値は、例えば「１」、「２」および「３」という３つの数値で与える。リスク値が「１」のときリスクレベルは高く、「２」のとき中間である。リスク値が「３」のとき、リスクレベルは低い。リスクレベルは、リスクの発生確率と影響度とを乗算することにより見積ることができる。例えばリスクの発生確率を「０．２」、「０．４」および「０．６」のいずれかで与え、影響度を「３」、「４」および「５」のいずれかで与える。このとき、発生確率と影響度とを乗算し、乗算した値の小数点以下の値を切り上げれば、「１」、「２」および「３」のいずれかの値をリスク値として得ることができる。リスク値のデータに代えて、または加えて、リスクの発生確率および影響度のデータをリスクデータに含めてもよい。このようなリスク値に対してトールゲート条件を設定する場合、そのトールゲート条件の値はリスクの許容度を意味する。トールゲート条件が「高い」場合、リスクの許容度が大きい。その場合、リスクが高くても、次のタスクに移行することができる。トールゲート条件が「低い」場合、リスクの許容度が小さい。その場合、リスクが低くならなければ、次のタスクに移行することができない。
【００３１】
図９は管理データファイルのデータ構成の一例を示す図である。管理データファイル５１４は、タスクおよびリスクをプロジェクト毎に管理するための管理データを格納する。この例において管理データは、プロジェクトコードにタスクコードおよびリスクコードを関係付ける。一つのプロジェクトコードには、複数のタスクコードが関係付けられる。一つのタスクコードには、一つまたは複数のリスクコードが関係付けられる。同じプロジェクトコードに関係付けられたタスクコードのうちの複数のタスクコードに、同一のリスクコードが関係付けられることもある。
【００３２】
図１０はプロジェクト管理装置の機能的構成の一例を説明するための図である。コンピュータ５０１は、プロジェクト管理プログラム５０９の指令にしたがって、上述のようなファイル５１１乃至５１４に対して入出力を行い、プロジェクト管理装置２０１としてプロジェクトのデータを管理する。プロジェクト管理装置２０１としてのコンピュータ５０１は、プロジェクトデータ格納部１００１、タスク管理データ格納部１００２、プロジェクト間関係データ格納部１００３、タスクデータ格納部１００４、対象項目データ格納部１００５、対象項目管理データ格納部１００６、タスク完了制御部１００７、関連プロジェクト判定部１００８、データ処理部１００９、通信部１０１０およびデータ出力部１０１１を備える。
【００３３】
プロジェクトデータ格納部１００１は、プロジェクトのデータを格納する。プロジェクトデータ格納部１００１には、プロジェクトマスタファイル５１１を利用することができる。プロジェクトマスタファイル５１１は、プロジェクトの開始日のようなスケジュールのデータや、その他のプロジェクトのデータを格納する。
【００３４】
タスク管理データ格納部１００２は、プロジェクトにそのプロジェクトのタスクを関係付けるデータを格納する。タスク管理データ格納部１００２には、管理データファイル５１４を利用することができる。管理データファイル５１４は、プロジェクトコードにタスクコードを関係付ける。
【００３５】
プロジェクト間関係データ格納部１００３は、プロジェクトに他のプロジェクトを関係付けるデータを格納する。プロジェクト間関係データ格納部１００３にも、プロジェクトマスタファイル５１１を利用することができる。プロジェクトマスタファイル５１１は、シリーズコードを介してプロジェクトコードを他のプロジェクトコードに関係付ける。
【００３６】
タスクデータ格納部１００４は、タスクの完了条件を示すデータを含むタスクのデータを格納する。タスクデータ格納部１００４には、タスクマスタファイル５１２を利用することができる。タスクマスタファイル５１２は、タスクの開始日のようなスケジュールのデータやトールゲート条件の値、その他のタスクのデータを格納する。
【００３７】
対象項目データ格納部１００５は、完了条件の対象項目のデータを格納する。この実施の形態において、対象項目のデータはリスクのデータである。対象項目のデータは、リスクのデータだけでなく他のデータを含んでもよいし、リスク以外のデータであってもよい。例えば成果物の有無のデータを対象項目のデータに用いてもよい。対象項目データ格納部１００５には、リスクマスタファイル５１３を利用することができる。リスクマスタファイル５１３は、リスクのレベルを示すリスク値を含むリスクのデータを格納する。
【００３８】
対象項目管理データ格納部１００６は、プロジェクトのタスクに、完了条件の対象項目のデータを関係付けるデータを格納する。対象項目管理データ格納部１００６にも、管理データファイル５１４を利用することができる。管理データファイル５１４は、タスクコードにリスクコードを関係付ける。
【００３９】
タスク完了制御部１００７は、例えばタスクを完了する操作があった場合、そのタスクの完了条件を示すデータ、およびそのタスクに関係付けられた対象項目のデータを読み出し、対象項目のデータの値が完了条件を満たすかどうかによって、そのタスクの完了を許可するか否かを判定する。タスク完了制御部１００７は、タスクの完了条件を示すデータをタスク管理データ格納部１００２から読み出し、そのタスクに関係付けられたリスクのデータを対象項目データ格納部１００５から読み出す。読み出したリスク値がトールゲート条件の値以下であれば、タスクを完了する操作を許可し、リスク値がトールゲート条件の値より大きければ、その操作を許可しない。
【００４０】
関連プロジェクト判定部１００８は、プロジェクトのタスクに対象項目のデータが新たに関係付けられた場合、そのプロジェクトに関係付けられたプロジェクトを検索することにより、プロジェクトに対する関連プロジェクトの有無の判定をする。関連プロジェクト判定部１００８は、プロジェクトのタスクに対象項目のデータを関係付けるデータが対象項目管理データ格納部１００６に新たに追加されると、プロジェクト間関係データ格納部１００３から、そのプロジェクトに他のプロジェクトを関係付けるデータを検索する。そのデータを検索できた場合、関連プロジェクト判定部１００８は、関連プロジェクトが有ると判定し、検索できなかった場合、関連プロジェクトが無いと判定する。
【００４１】
データ処理部１００９は、関連プロジェクトが有る場合、その関連プロジェクトに関係付けられたタスクから、新たに対象項目のデータが関係付けられたタスクと対応するタスクを検索し、そのタスクに新たな対象項目のデータを関係付けるデータを書き込む処理を行う。データ処理部１００９は、関連プロジェクトが有る場合、タスク管理データ格納部１００２のデータを用いてその関連プロジェクトに関係付けられたタスクを特定し、特定したタスクのデータをタスクデータ格納部１００４から読み出す。特定したタスクのデータを用いて、特定したタスクのうちから、新たに対象項目のデータが関係付けられたタスクを検索する。データ処理部１００９は、検索したタスクに新たな対象項目のデータを関係付けるデータをタスク管理データ格納部１００２に書き込む。
【００４２】
通信部１０１０は、コンピュータ５０１に接続された端末２０２乃至２０５と通信する。この通信には、コンピュータの通信インターフェイス５０７を用いることができる。端末２０２乃至２０５からの要求を受信したり、その要求に対する応答を端末２０２乃至２０５に送信したりする。
【００４３】
データ出力部１０１１は、タスクに関係付けられた対象項目のデータを読み出して出力する。対象項目管理データ格納部１００６のデータを用いて、タスクに関係付けられた対象項目のデータを特定し、特定した対象項目のデータを対象項目データ格納部１００５から読み出す。ユーザがタスクのデータを要求したような場合に、データ出力部１０１１は、特定した対象項目のデータを読み出して出力する。出力先は、例えば通信部１０１０である。表示部や印字部に出力してもよい。
【００４４】
出力される対象項目のデータには、ユーザが登録したものだけでなく、コンピュータ５０１が自動的に記憶したものが含まれる。その対象項目を関係付けたタスクの属するプロジェクトが他のプロジェクトに関連するものであれば、その対象項目のデータは、他のプロジェクトで対象項目のデータが追加されたときに追加される。このため、プロジェクトのメンバが、他のプロジェクトで対象項目のデータが追加されたことを調べる必要がなくなる。
【００４５】
図１１はプロジェクトのリスク管理に関する作業手順の一例を説明するためのフローチャートである。プロジェクトメンバは、プロジェクトのリスクを管理するため、コンピュータ５０１にリスクのデータを登録する（手順１１０１）。コンピュータ５０１は、ユーザの指示にしたがって、リスクのデータの登録処理を実行する。リスクのデータを登録してから、プロジェクトメンバは、登録されたリスクのリスク値を変更して作業実績を登録する（手順１１０２）。コンピュータ５０１は、ユーザの指示にしたがって、リスク値の変更処理を実行する。タスクが完了したと判断すると、プロジェクトメンバは、タスクを完了する操作を行って、コンピュータ５０１にタスク完了の指示を与える（手順１１０３）。コンピュータ５０１は、その指示を受けると、タスク完了の可否を判定する。
【００４６】
図１２はリスクの登録処理に関しコンピュータによる実行手順の一例を説明するためのフローチャートである。コンピュータ５０１は、ユーザの入力に従い、リスクのデータを作成し、作成したデータをリスクマスタファイル５１３に登録する（手順１２０１）。ユーザが登録を指示すると、コンピュータ５０１はリスクコードを発行する。コンピュータ５０１は、リスクマスタファイル５１３のデータ定義にしたがって、発行したリスクコード、およびユーザの入力したリスク名やリスク値を含むレコードを作成し、リスクマスタファイル５１３にそのレコードを書き込む。リスクのデータを作成すると、コンピュータ５０１は、そのリスクをタスクに関係付ける（手順１２０２）。コンピュータ５０１は、管理データファイル５１４のデータ定義にしたがって、ユーザの指定したタスクのタスクコード、および発行したリスクコードを含むレコードを作成し、管理データファイル５１４にそのレコードを書き込む。さらにコンピュータ５０１は、ユーザの指定したタスクのタスクコードを含むレコードをタスクマスタファイル５１２から検索する。コンピュータ５０１は、検索したレコードに、ユーザが入力したトールゲート条件の値を書き込む（手順１２０３）。
【００４７】
このようにしてトールゲート条件の値を書き込むと、コンピュータ５０１は、関連プロジェクトの有無を判定する（手順１２０４）。コンピュータ５０１は、ユーザの指定したタスクが属するプロジェクトのプロジェクトコードを含むレコードをプロジェクトマスタファイル５１１から検索する。コンピュータ５０１は、検索したレコードからシリーズコードを取得し、取得したシリーズコードを含む他のレコードをプロジェクトマスタファイル５１１から検索する。他のレコードが検索できた場合に、そのレコードからプロジェクトコードを取得すると、コンピュータ５０１は、参照元のプロジェクトに対し関連プロジェクトが有ると判定する。他のレコードが検索できなかった場合、コンピュータ５０１は、関連プロジェクトが無いと判定する。関連プロジェクトが無いと判定した場合、コンピュータ５０１は、登録処理を終了する。関連プロジェクトが有ると判定した場合、コンピュータ５０１は、取得した関連プロジェクトの対応するタスクに対してリスクの関連付け処理を実行する（手順１２０５）。リスクの関連付け処理を実行すると、コンピュータ５０１は、そのリスク値に対するトールゲート条件の値を設定する処理を実行する（手順１２０６）。
【００４８】
図１３は関連プロジェクトの対応タスクに対するリスクの関連付け処理に関しコンピュータによる実行手順の一例を説明するためのフローチャートである。コンピュータ５０１は、参照元プロジェクトに関連プロジェクトが有る場合、関連プロジェクトのプロジェクトコードをプロジェクトマスタファイル５１１のレコードから取得する（手順１３０１）。上述のように、既にシリーズコードをプロジェクトマスタファイル５１１から取得している場合、そのシリーズコードを含む他の全てのレコードからプロジェクトコードを取得する。
【００４９】
コンピュータ５０１は、プロジェクトコードを取得すると、関連プロジェクトについての繰り返し処理を開始する（手順１３０２）。コンピュータ５０１は、関連プロジェクトの開始日から参照元プロジェクトの開始日を差し引くことにより、両プロジェクト間の期間１０２を計算する（手順１３０３）。コンピュータ５０１は、いずれかの関連プロジェクトのプロジェクトコードを含むレコード、および参照元プロジェクトのプロジェクトコードを含むレコードをプロジェクトマスタファイル５１１から読み出し、それぞれのレコードから開始日のデータを取得する。両プロジェクト間の期間１０２を計算すると、計算した期間１０２の値が予め定めた範囲内にあるかどうかを判定する（手順１３０４）。ここでは、計算した期間の値の絶対値が３０より小さいという範囲を与える。コンピュータ５０１は、プロジェクト間の開始時期のずれが３０日より小さいか否かを判定する。この判定の後、参照元プロジェクトに対して新たに登録されたリスクのデータから、関連プロジェクトに対するリスク値を決定する。期間の値の絶対値が３０より小さい場合、コンピュータ５０１は、新たに登録されたリスクのリスク値のデータをリスクマスタファイル５１３から読み出し、そのリスク値を関連プロジェクトに対するリスク値に設定する（手順１３０５）。期間の値の絶対値が３０以上である場合で、期間の値が負であれば、コンピュータ５０１は、読み出したリスク値に予め定めた値を加算し、加算した値を関連プロジェクトに対するリスク値に設定する（手順１３０６）。ここでは、読み出したリスク値に「１」を加算する。関連プロジェクトが参照元プロジェクトの後発プロジェクトであり、関連プロジェクトの開始時期が参照元プロジェクトの開始時期より３０日以上遅い場合、リスク値が「１」だけ増加する。期間の値の絶対値が３０以上である場合で、期間の値が正であれば、コンピュータ５０１は、読み出したリスク値から予め定めた値を減算し、減算した値を関連プロジェクトに対するリスク値に設定する（手順１３０７）。予め定めた値が「１」であれば、コンピュータ５０１は、読み出したリスク値から「１」を減算する。関連プロジェクトが参照元プロジェクトの先行プロジェクトであり、関連プロジェクトの開始時期が参照元プロジェクトの開始時期より３０日以上早い場合、リスク値が「１」だけ減少する。このようにして関連プロジェクトに対するリスク値を設定すると、コンピュータ５０１は、関連プロジェクトの対応タスクのタスクコードを取得する（手順１３０８）。ここでは、関連プロジェクトに属するタスクのうち、新たに登録されたリスクを関係付けたタスクと同名のタスクのタスクコードを取得する。コンピュータ５０１は、関連プロジェクトのプロジェクトコードに関係付けられたタスクコードを管理データファイル５１４から取得する。さらに、新たに登録されたリスクを関係付けたタスクのタスクコードを含むレコードから、そのタスクのタスク名を読み出す。コンピュータ５０１は、取得したタスクコード、および読み出したタスク名を含むレコードをタスクマスタファイル５１２から検索し、検索したレコードからタスクコードを取得する。
【００５０】
コンピュータ５０１は、タスクコードを取得すると、関連プロジェクトの対応タスクについての繰り返し処理を開始する（手順１３０９）。取得したタスクコードのいずれかに対し、コンピュータ５０１は、設定したリスク値を用いてリスクデータを作成する（手順１３１０）。コンピュータ５０１は、参照元プロジェクトのタスクに対し新たに登録されたリスクのデータをリスクマスタファイル５１３から読み出し、リスクコードおよびリスク値を除くデータに、読み出したデータを用いてリスクデータを作成する。リスクコードは新たに発行したものを用い、リスク値は設定した値を用いる。リスクデータを作成すると、コンピュータ５０１は、そのリスクデータを対応タスクへ関係付ける（手順１３１１）。コンピュータ５０１は、関連プロジェクトのプロジェクトコードに、取得したタスクコードおよび発行したリスクコードを関係付けるレコードを作成し、そのレコードを管理データファイル５１４に追加する。取得したタスクコード全てについて手順１３１０および手順１３１１を行うと、対応タスクについての繰り返し処理を終了する（手順１３１２）。取得したタスクコードが他にあれば、そのタスクコードに対し、手順１３１０および手順１３１１を繰り返す。関連プロジェクトのプロジェクトコードのいずれかについて手順１３０３乃至１３１２を行うと、コンピュータ５０１は、取得した全てのプロジェクトコードについて手順１３０３乃至１３１２を行ったかどうかを判定し、手順１３０３乃至手順１３１２を行っていれば、関連プロジェクトについての繰り返し処理を終了する（手順１３１３）。取得した全てのプロジェクトコードに対し手順１３０３乃至手順１３１２を行っていなければ、残りのプロジェクトコードに対し手順１３０３乃至手順１３１２を繰り返す。
【００５１】
図１４および図１５はプロジェクト毎のリスクのリストを表示するウェブページの例を示す図である。図１４はウェブページが参照元プロジェクトのリスクリストを表示する例を示す。コンピュータ５０１は、端末２０２乃至２０５からの要求に応じて、このウェブページ１４０１を生成し、生成したウェブページ１４０１を要求元の端末に転送する。このウェブページ１４０１には、プロジェクト名の表示欄１４０２やリスクのリスト１４０３が配置されている。表示欄１４０２は、対象となるリスクが関係付けられたタスクの属するプロジェクトの名称を表示する。この例では、表示欄１４０２に、「テレビ２９型」というプロジェクト名を表示している。リスト１４０３は、リスク毎にリスク名や、リスクの所在、リスク値などを表示する。リスクの所在は、リスクを関係付けたタスクなどである。コンピュータ５０１は、端末２０２乃至２０５からの要求を受信すると、ユーザが指定したプロジェクトに属するタスクに関係付けられたリスクのリスクコードを管理データファイル５１４から取得する。取得したリスクコードを含むレコードのデータをリスクマスタファイル５１３から読み出し、読み出したデータを使ってリスクリスト１４０３のデータを作成する。プロジェクト名や所在のテキストは、プロジェクトマスタファイル５１１やタスクマスタファイル５１２から取得する。ウェブページ１４０１を作成すると、コンピュータ５０１は、通信インターフェイス５０７を用いてそのウェブページ１４０１を要求元の端末へ出力する。
【００５２】
図１５はウェブページが関連プロジェクトのリスクリストを表示する例を示す。図１４の例と異なり、プロジェクト名の表示欄１４０２は、「テレビ３２型」というプロジェクト名を表示している。このプロジェクトは、「テレビ２９型」のプロジェクトの関連プロジェクトである。図１５のリスクリストは、図１４のリスクリストに含まれるリスクと同名のリスク１５０１を含む。これは上述したリスクの登録処理の結果である。コンピュータ５０１は、「テレビ２９型」のプロジェクトに関しリスクの登録処理を行うと、関連プロジェクトである「テレビ３２型」のプロジェクトに関してもリスクの登録処理を行う。これにより、関連プロジェクトのタスクには、参照元プロジェクトのタスクに関係付けられたリスクと同名のリスク１５０１が関係付けられる。管理データファイル５１４はその関係を定義するデータを記憶し、リスクマスタファイル５１３はそのリスク１５０１のデータを格納している。この例で、リスク１５０１のリスク値１５０２は、参照元プロジェクトと関連プロジェクトとで開始時期が３０日以上ずれているため、図１４の例と異なっている。
【００５３】
コンピュータ５０１は、ユーザが「テレビ３２型」のプロジェクトに関しリスクリストを要求したとき、そのプロジェクトに属するタスクに関係付けられたリスク１５０１のリスクコードを管理データファイル５１４から取得する。取得したリスクコードを含むレコードのデータをリスクマスタファイル５１３から読み出し、読み出したリスクのデータを使ってウェブページ１４０１を作成し、要求元の端末へ出力する。その端末のユーザは、「テレビ２９型」のプロジェクトに関与せず、そのプロジェクトのリスク管理を把握していなかったとしても、「テレビ３２型」のプロジェクトにおけるリスクの存在を確実に把握することができる。またリスク値がプロジェクト間の開始時期のずれに応じて設定されるので、適切なリスク管理を簡単に行うことができる。関連プロジェクトのリスク管理は、そのプロジェクトに属するタスクのトールゲート条件を設定することでも簡単かつ適切に行うことができる。
【００５４】
図１６は関連プロジェクトの対応タスクに対するトールゲート条件の設定処理に関しコンピュータによる実行手順の一例を説明するためのフローチャートである。コンピュータ５０１は、参照元プロジェクトに関連プロジェクトが有る場合、関連プロジェクトのプロジェクトコードをプロジェクトマスタファイル５１１のレコードから取得する（手順１６０１）。既に関連プロジェクトのプロジェクトコードを取得しており、そのプロジェクトコードを一時的にＲＡＭ５０５に記憶しているような場合、この手順１６０１を省略してもよい。
【００５５】
関連プロジェクトのプロジェクトコードを取得すると、コンピュータ５０１は、関連プロジェクトについての繰り返し処理を開始する（手順１６０２）。コンピュータ５０１は、関連プロジェクトの対応タスクのタスクコードを取得する（手順１６０３）。既に対応タスクのタスクコードを取得しており、そのタスクコードを一時的にＲＡＭ５０５に記憶しているような場合、この手順１６０３も省略することができる。対応タスクのタスクコードを取得すると、関連プロジェクトの対応タスクについての繰り返し処理を開始する（手順１６０４）。コンピュータ５０１は、新たにリスクのデータを関係付けた参照元プロジェクトのタスクの開始日を対応タスクの開始日から差し引くことにより、両タスク間の開始時期のずれを計算する（手順１６０５）。コンピュータ５０１は、いずれかの対応タスクのタスクコード、および参照元プロジェクトのタスクのタスクコードを含むレコードをタスクマスタファイル５１２から読み出し、それぞれのレコードからタスクの開始日のデータを取得する。参照元プロジェクトと関連プロジェクトの開始時期のずれと、参照元プロジェクトのタスクと関連プロジェクトのタスクの開始時期のずれが一致する場合には、両プロジェクト間のずれの期間を計算することにより、両タスク間のずれの期間を計算することもできる。両タスク間のずれの期間を計算すると、コンピュータ５０１は、計算した期間の値が予め定めた範囲内にあるかどうかを判定する（手順１６０６）。ここでは、計算した期間の値の絶対値が３０より小さいという範囲を与える。コンピュータ５０１は、タスク間の開始時期のずれが３０日より小さいか否かを判定する。この判定の後、コンピュータ５０１は、参照元プロジェクトのタスクに対して設定されたトールゲート条件の値から、関連プロジェクトの対応タスクに対するトールゲート条件の値を決定する。期間の値の絶対値が３０より小さい場合、コンピュータ５０１は、参照元プロジェクトのタスクに対して設定されたトールゲート条件のデータをタスクマスタファイル５１２から読み出し、そのトールゲート条件の値と同一の値を関連プロジェクトの対応タスクに対するトールゲート条件の値として設定する（手順１６０７）。期間の値の絶対値が３０以上である場合で、期間の値が負であれば、コンピュータ５０１は、読み出したトールゲート条件の値に予め定めた値を加算し、加算した値を関連プロジェクトの対応タスクに対するトールゲート条件の値として設定する（手順１６０８）。ここでは、読み出したトールゲート条件の値に「１」を加算する。期間の値の絶対値が以上である場合で、期間の値が正であれば、コンピュータ５０１は、読み出したトールゲート条件の値から予め定めた値を減算し、減算した値を関連プロジェクトの対応タスクに対するトールゲート条件の値として設定する（手順１６０９）。予め定めた値が「１」であれば、コンピュータ５０１は、読み出したトールゲート条件の値から「１」を減算する。このようにして関連プロジェクトの対応タスクに対してトールゲート条件の値を設定すると、コンピュータ５０１は、タスクマスタファイル５１２にアクセスし、対応タスクのタスクコードを含むレコードに、設定したトールゲート条件の値を書き込む（手順１６１０）。取得した全てのタスクコードについて手順１６０５乃至１６１０を行うと、対応タスクについての繰り返し処理を終了する（手順１６１１）。取得したタスクコードが他にあれば、そのタスクコードに対し、手順１６０５乃至１６１０を繰り返す。
【００５６】
関連プロジェクトのプロジェクトコードのいずれかについて手順１６０２乃至手順１６１１を行うと、コンピュータ５０１は、取得した全てのプロジェクトコードについて手順１６０２乃至手順１６１１を行ったかどうかを判定し、手順１６０２乃至手順１６１１を行っていれば、関連プロジェクトについての繰り返し処理を終了する（手順１６１２）。取得した全てのプロジェクトコードに対し手順１６０２乃至手順１６１１を行っていなければ、残りのプロジェクトコードに対し手順１６０２乃至手順１６１１を繰り返す。
【００５７】
図１７は関連プロジェクトに関しタスクの情報を表示するウェブページの一例を示す。図１７の例は、表示対象となるタスクの属するプロジェクトが「３２型テレビ」のプロジェクトである点で図４の例と異なる。図４の例は「２９型テレビ」のプロジェクトに関するものであり、図１７の例はその関連プロジェクトに関するものである。図１７の例において、表示欄４０３は、「商品企画」というタスクの情報を表示している。その表示欄４０３においては、そのタスクの属するプロジェクト名１７０１やそのタスクの開始日などを表示している。さらにトールゲート機能という項目名で、トールゲート条件１７０２を表示している。プロジェクト名１７０１は「３２型テレビ」であり、トールゲート条件１７０２は「リスク値が１以下である」である。トールゲート条件の値は１となる。このトールゲート条件の値は、上述のようなトールゲート条件の設定処理により設定されたものである。タスク間またはプロジェクト間の開始時期のずれに応じてトールゲート条件の値をコンピュータ５０１が設定するため、リスク管理やタスク完了制御を簡単且つ適切に行うことが可能となる。
【００５８】
図１８はリスク値を変更するためのウェブページの一例を示す図である。コンピュータ５０１は、リスクの登録処理の場合だけでなく、リスク値の変更処理の場合にも、その変更を関連プロジェクトのデータに反映することができる。ウェブページ１８０１は、ユーザがリスク値を変更するためのものである。図１４に示したようなウェブページ１４０１上のリンク１４０４を選択する操作をユーザが行うと、そのユーザの端末は、コンピュータ５０１にウェブページ１８０１の転送要求を送信する。コンピュータ５０１は、リンク１４０４に対応するリスク値のデータをリスクマスタファイル５１３から読み出し、読み出したデータを用いてウェブページ１８０１を作成する。このウェブページ１８０１には、リスク名の表示欄１８０２、リスク値変更のための入力欄１８０３乃至１８０５、完了ボタン１８０６およびキャンセルボタン１８０７を配置している。入力欄１８０３は、リスクの発生確率を設定するためのものであり、入力欄１８０４はリスクの影響度を設定するためのものである。この例では、発生確率および影響度を「１」、「２」および「３」のいずれかで表示する。発生確率の「１」乃至「３」には「０．２」、「０．４」および「０．６」をそれぞれ割り当て、影響度の「１」乃至「３」には「３」、「４」および「５」をそれぞれ割り当てることができる。入力欄１８０３および１８０４で設定された値にそれぞれ割り当てた値を乗算すれば、上述のようにリスクレベルの値を計算することができる。このような計算によってリスクレベルの値を定めるほか、入力欄１８０５に対し操作を行うことで、ユーザは、リスクレベルの値を直接変更することもできる。ユーザが完了ボタン１８０６を押す操作をすると、端末は、設定されたリスク値、およびリスクコードを含むデータをコンピュータ５０１に送信し、リスク値の変更をコンピュータ５０１に要求する。
【００５９】
図１９はリスク値の変更処理に関しコンピュータによる実行手順の一例を説明するためのフローチャートである。リスクの登録処理の場合だけでなく、コンピュータ５０１は、リスク値の変更処理の場合にも、関連プロジェクトのデータを処理する。コンピュータ５０１は、ユーザの入力に従い、リスクマスタファイル５１３に登録されたリスク値を変更する（手順１９０１）。例えば、コンピュータ５０１は、上述のような要求を受信すると、受信したデータから、リスクコード、およびユーザの設定したリスク値を取得する。リスクマスタファイル５１３にアクセスし、取得したリスクコードを含むレコードに、リスク値のデータとして、取得したリスク値を書き込む。このようにしてリスク値のデータを更新すると、コンピュータ５０１は、関連プロジェクトの有無を判定する（手順１９０２）。この判定は手順１２０４と同様にすることができる。リスク値を変更するリスクが関係付けられたタスクが属するプロジェクトのプロジェクトコードを含むレコードをプロジェクトマスタファイル５１１から検索する。コンピュータ５０１は、検索したレコードからシリーズコードを取得し、取得したシリーズコードを含む他のレコードをプロジェクトマスタファイル５１１から検索する。他のレコードが検索できた場合に、そのレコードからプロジェクトコードを取得すると、コンピュータ５０１は、参照元プロジェクトに対し関連プロジェクトが有ると判定する。他のレコードが検索できなかった場合、コンピュータ５０１は、関連プロジェクトが無いと判定する。関連プロジェクトが無いと判定した場合、コンピュータ５０１は、リスク値の変更処理を終了する。関連プロジェクトが有ると判定した場合、コンピュータ５０１は、関連プロジェクトの対応タスクに関係付けたリスクデータを変更する処理を実行する（手順１９０３）。
【００６０】
図２０は関連プロジェクトの対応タスクに関係付けたリスクデータの変更処理に関しコンピュータによる実行手順の一例を説明するためのフローチャートである。図２０に示す手順２００１乃至２００８は、図１３の手順１３０１乃至１３０８と基本的に同じである。手順２００５乃至２００７では、新たに登録されたリスクのリスク値ではなく、変更されたリスク値のデータをリスクマスタファイル５１３から読み出し、読み出したリスク値から、関連プロジェクトのリスク値を設定する。手順２００１乃至２００８を行い、手順２００８で関連プロジェクトのタスクコードを取得すると、コンピュータ５０１は、関連プロジェクトの対応タスクについての繰り返し処理を開始する（手順２００９）。取得したタスクコードのいずれかに対し、コンピュータ５０１は、設定したリスク値を用いて関連プロジェクトの対応タスクに関係付けられたリスクのデータを変更する（手順２０１０）。コンピュータ５０１は、対応タスクのタスクコードに関係付けられたリスクコードを管理データファイル５１４から読み出す。またリスク値を変更したリスクのリスク名をリスクマスタファイル５１３から取得する。コンピュータ５０１は、読み出したリスクコードのいずれかと、取得したリスク名とを含むレコードをリスクマスタファイル５１３から検索する。検索により得たレコードに、リスク値のデータとして、設定したリスク値の値を書き込む。このようにしてリスクのデータを変更すると、コンピュータ５０１は、取得した全てのタスクコードについて手順２０１０を行ったかどうかを判定し、手順２０１０を行っていれば、対応タスクについての繰り返し処理を終了する（手順２０１１）。取得した全てのタスクコードについて手順２０１０を行っていなければ、残りのタスクコードに対し手順２０１０を繰り返す。このようにして全ての関連プロジェクトのプロジェクトコードについて手順２００３乃至２０１１を行うと、関連プロジェクトについての繰り返し処理も終了する（手順２０１２）。
【００６１】
図２１はタスク完了の操作をするためのウェブページの一例を示す図である。タスクの作業中は、上述のようにリスク値を変更して作業実績を登録する。タスクの作業が進み、ユーザがタスク完了の操作をすると、コンピュータ５０１は、タスク完了の可否を判定する。ユーザは、ウェブページ２１０１を用いて、タスク完了の操作をすることができる。コンピュータ５０１は、端末２０２乃至２０５からの要求に応じて、このウェブページ２１０１を要求元の端末に転送する。ウェブページ２１０１には、対象となるタスクのタスク名の表示欄２１０２や、タスクのステータスを表示する表示欄２１０３、ステートアップボタン２１０４、ステートダウンボタン２１０５が配置されている。この例では、「商品企画」というタスクのステータスが、「作業中」となっている。タスクのステータスを次に移行させる場合には、ユーザは、ステートアップボタン２１０３を押す操作を行う。タスクのステータスを一つ前に戻す場合には、ステートダウンボタン２１０４を押す操作を行う。ユーザがステートアップボタン２１０３やステートアップボタン２１０４を押す操作を行うと、端末は、その操作に応じてステータスの変更要求をコンピュータ５０１に送信する。その要求が、タスクのステータスを「完了」にするものであるとき、コンピュータ５０１は、タスク完了の可否を判定する。
【００６２】
図２２はタスク完了の制御に関しコンピュータによる実行手順の一例を説明するためのフローチャートである。タスクのステータスを「完了」にする要求を受信すると、コンピュータ５０１は、その要求から、対象となるタスクのタスクコードを取得し、そのタスクコードに関係付けられたリスクコードを管理データファイル５１４から取得する（手順２２０１）。またコンピュータ５０１は、タスクマスタファイル５１２にアクセスし、取得したタスクコードを含むレコードから、トールゲート条件の値のデータを読み出す。リスクコードを取得すると、コンピュータ５０１は、リスクについての繰り返し処理を開始する（手順２２０２）。コンピュータ５０１は、リスクマスタファイル５１３にアクセスし、取得したリスクコードのいずれかを含むレコードからリスク値のデータを読み出す。読み出したリスク値とトールゲート条件の値とを比較し、そのリスク値がトールゲート条件の値以下であるかどうかを判定する（手順２２０３）。リスク値がトールゲート条件の値以下である場合、コンピュータ５０１は、完了可能フラグの値を「ＴＲＵＥ」に設定し（手順２２０４）、リスク値がトールゲート条件の値より大きい場合、完了可能フラグの値を「ＦＡＬＳＥ」に設定する（手順２２０５）。完了可能フラグの値をいずれかに設定すると、コンピュータ５０１は、取得した全てのリスクコードについて手順２２０３乃至２２０５を行ったかどうかを判定し、全てのリスクコードについて手順２２０３乃至２２０５を行っていれば、繰り返し処理を終了する（手順２２０６）。取得した全てのリスクコードについて手順２２０３乃至２２０５を行っていなければ、残りのリスクコードについて手順２２０３乃至２２０５を繰り返す。繰り返し処理を終了すると、コンピュータ５０１は、完了可能フラグの値が「ＴＲＵＥ」であるかどうかを判定する（手順２２０７）。リスク毎に完了可能フラグを設定しているときは、全ての完了可能フラグの値が「ＴＲＵＥ」であるかどうかを判定してもよいし、リスクごとの完了可能フラグの値を乗算したときの値が「ＴＲＵＥ」であるかどうかを判定してもよい。完了可能フラグの値が「ＴＲＵＥ」の場合、コンピュータ５０１は、タスク完了を許可する（手順２２０８）。コンピュータ５０１は、タスクマスタファイル５１２にアクセスし、取得したタスクコードを含むレコードに、ステータスの値として「完了」を表す数値を書き込む。完了可能フラグの値が「ＦＡＬＳＥ」の場合、コンピュータ５０１は、「トールゲート条件を満たしていないので、タスクを完了できません。」というようなタスクの完了を許可しない旨のメッセージをユーザに送る（手順２２０９）。この場合、タスクのステータスのデータは変更しない。
【００６３】
このようなタスク完了制御も簡単且つ適正に行われる。この実施の形態では、関連プロジェクトのリスク値およびトールゲート条件の値を参照元プロジェクトのリスク値およびトールゲート条件の値に応じてコンピュータ５０１が設定している。このため、ユーザが参照元プロジェクトの進捗やリスク管理を把握する必要がなくなる。
【００６４】
上述の実施の形態で利用したプロジェクト管理プログラム５０９は、インターネットなどの電気通信回線を用いたり、コンピュータ読み取り可能な記録媒体に格納したりすることで、関係者や第三者に提供することができる。例えばプログラムの指令を電気信号や光信号、磁気信号などで表現し、その信号を搬送波に載せて送信することで、同軸ケーブルや銅線、光ファイバのような伝送媒体でそのプログラムを提供することができる。またコンピュータ読取可能な記録媒体としては、ＣＤ−ＲＯＭやＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷなどの光学メディアや、フレキシブルディスクのような磁気メディア、フラッシュメモリやＲＡＭのような半導体メモリを利用することができる。
【００６５】
上述した実施の形態は本発明の技術的範囲を制限するものではなく、既に記載したもの以外でも、本発明の範囲内で種々の変形や応用が可能である。例えば本発明は、家庭用電気器具の新商品の開発プロジェクトだけでなく、自動車の新商品を開発するプロジェクトや、その他のプロジェクトを管理するシステムにも適用することが可能である。また管理するプロジェクトのタスク間の依存関係は、他のタスクの完了をタスクの開始条件にする関係に限られるものではない。他のタスクの完了をタスクの完了条件にする関係やその他の関係を有するタスクを有するプロジェクトの管理にも本発明を適用することができる。
【産業上の利用可能性】
【００６６】
本発明に係るプロジェクト管理システム、プロジェクト管理方法およびプロジェクト管理プログラムによれば、他のプロジェクトの管理内容に応じて適正なプロジェクト管理を簡単にすることができ、様々なプロジェクトやリスク、スケジュールなどの管理に有用である。
【図面の簡単な説明】
【００６７】
【図１】本発明の実施の形態におけるプロジェクト管理の具体例を説明するための図
【図２】プロジェクト管理システムの全体構成の一例を示す図
【図３】プロジェクトのタスクリストを表示するウェブページの一例を示す図
【図４】タスクの情報を表示するウェブページの一例を示す図
【図５】プロジェクト管理装置に用いるハードウェアの構成の一例を示す図
【図６】プロジェクトマスタファイルのデータ構成の一例を示す図
【図７】タスクマスタファイルのデータ構成の一例を示す図
【図８】リスクマスタファイルのデータ構成の一例を示す図
【図９】管理データファイルのデータ構成の一例を示す図
【図１０】プロジェクト管理装置の機能的構成の一例を示す図
【図１１】プロジェクトのリスク管理に関する作業手順の一例を説明するためのフローチャート
【図１２】リスクの登録処理に関しコンピュータによる実行手順の一例を説明するためのフローチャート
【図１３】関連プロジェクトの対応タスクに対するリスクの関連付け処理に関しコンピュータによる実行手順の一例を説明するためのフローチャート
【図１４】ウェブページが参照元プロジェクトのリスクリストを表示する例を示す図
【図１５】ウェブページが関連プロジェクトのリスクリストを表示する例を示す図
【図１６】関連プロジェクトの対応タスクに対するトールゲート条件の設定処理に関しコンピュータによる実行手順の一例を説明するためのフローチャート
【図１７】関連プロジェクトに関しタスクの情報を表示するウェブページの一例を示す図
【図１８】リスク値を変更するためのウェブページの一例を示す図
【図１９】リスク値の変更処理に関しコンピュータによる実行手順の一例を説明するためのフローチャート
【図２０】関連プロジェクトの対応タスクに関係付けたリスクデータの変更処理に関しコンピュータによる実行手順の一例を説明するためのフローチャート
【図２１】タスク完了の操作をするためのウェブページの一例を示す図
【図２２】タスク完了の制御に関しコンピュータによる実行手順の一例を説明するためのフローチャート
【符号の説明】
【００６８】
１０１Ａ、１０１Ｂ    プロジェクト
１０２    プロジェクト間のずれの期間
１０３    タスク
１０４    リスク
１０５    リスク値
１０６    トールゲート
１０７    トールゲート条件の値
２０１    プロジェクト管理装置
２０２、２０３、２０４、２０５    端末
５０１    コンピュータ
５１１    プロジェクトマスタファイル
５１２    タスクマスタファイル
５１３    リスクマスタファイル
５１４    管理データファイル
１００１    プロジェクトデータ格納部
１００２    タスク管理データ格納部
１００３    プロジェクト間関係データ格納部
１００４    タスクデータ格納部
１００５    対象項目データ格納部
１００６    対象項目管理データ格納部
１００７    タスク完了制御部
１００８    関連プロジェクト判定部
１００９    データ処理部
１０１０    通信部
１０１１    データ出力部
【図１】
2007058703.tif 000003
【図２】
2007058703.tif 000004
【図３】
2007058703.tif 000005
【図４】
2007058703.tif 000006
【図５】
2007058703.tif 000007
【図６】
2007058703.tif 000008
【図７】
2007058703.tif 000009
【図８】
2007058703.tif 000010
【図９】
2007058703.tif 000011
【図１０】
2007058703.tif 000012
【図１１】
2007058703.tif 000013
【図１２】
2007058703.tif 000014
【図１３】
2007058703.tif 000015
【図１４】
2007058703.tif 000016
【図１５】
2007058703.tif 000017
【図１６】
2007058703.tif 000018
【図１７】
2007058703.tif 000019
【図１８】
2007058703.tif 000020
【図１９】
2007058703.tif 000021
【図２０】
2007058703.tif 000022
【図２１】
2007058703.tif 000023
【図２２】
2007058703.tif 000024