(57)【特許請求の範囲】
【請求項１】
コンピュータが、プロジェクトで実施するワークフローを構成するワークのワーク難易度と、ワークを実施するリソースのスキルレベルと、をもとに各リソースの見積もり作業時間を計算し、その計算した見積もり作業時間を各ワークに割り当てることにより、プロジェクト計画を作成するプロジェクト計画方法であって、
コンピュータが、記憶装置と、入力装置と、制御部と、制御装置とを備えており、前記制御装置は、ワーク難易度決定部と、スキルレベル決定部と、標準作業時間補正部と、を有しており、
前記記憶装置には、各ワークと、そのワークを実施するための必要スキルとの対応を示すワーク対応情報、および、各リソースと、そのリソースが有するスキルとの対応を示すスキル対応情報が記憶されており、
前記入力装置は、前記ワークフローの入力、前記ワーク難易度を計算するためのワーク難易度決定属性の数値入力、および、前記スキルレベルを計算するためのスキルレベル決定属性の数値入力を受け付け、
前記制御部は、入力された前記ワークフローの各ワークについて、前記ワーク対応情報の前記必要スキルと、前記スキル対応情報のリソースが有するスキルとを照合し、前記必要スキル以上のスキルを有する前記リソースを抽出することにより、そのワークを実施するためのリソースをワークごとに対応付け、
前記ワーク難易度決定部は、
前記対応付けされたワークに対して、入力された前記ワーク難易度決定属性の数値を、前記各ワーク難易度決定属性と前記ワーク難易度決定属性ごとの係数との重み付け加算関数である所定のワーク難易度決定関数に代入して前記ワーク難易度決定関数の出力値を計算し、
計算した前記ワーク難易度決定関数の出力値と、ワーク難易度特定用の複数の閾値とを比較することで、その複数の閾値によって区切られる値域ごとに設定されるワーク難易度を特定し、
ワークとそのワーク難易度との組み合わせごとにあらかじめワーク難易度補正値が対応づけられているテーブルを参照することにより、特定したワーク難易度に対応するワーク難易度補正値を計算し、
前記スキルレベル決定部は、
前記対応付けされたリソースのスキルに対して、入力された前記スキルレベル決定属性の数値を、前記各スキルレベル決定属性と前記スキルレベル決定属性ごとの係数との重み付け加算関数である所定のスキルレベル決定関数に代入して前記スキルレベル決定関数の出力値を計算し、
計算した前記スキルレベル決定関数の出力値と、スキルレベル特定用の複数の閾値とを比較することで、その複数の閾値によって区切られる値域ごとに設定されるスキルレベルを特定し、
ワークとスキルレベルとの組み合わせごとにあらかじめスキルレベルが対応づけられているテーブルを参照することにより、特定したスキルレベルに対応するスキルレベル補正値を計算し、
前記標準作業時間補正部は、
ワークに対して割り当てられている標準作業時間に対して、計算された前記ワーク難易度補正値および前記スキルレベル補正値をそれぞれ乗算する計算により、前記標準作業時間を補正した前記見積もり作業時間を計算することを特徴とする
プロジェクト計画方法。
【請求項２】
前記見積もり作業時間を計算する工程は、前記標準作業時間と、前記ワーク難易度補正値と、前記スキルレベル補正値との積を、前記見積もり作業時間とすることを特徴とする
請求項１に記載のプロジェクト計画方法。
【請求項３】
前記制御部は、さらに、
計算した各ワークの前記見積もり作業時間をもとに、リソースごとにその作業期間を各ワークの作業開始時から各ワークの前記見積もり作業時間を経過するまでの期間として求め、
同じリソースにおける複数のワークの作業期間の時期重複の検出により、同じリソースが複数のワークにおいて同時に作業するリソース競合が発生すると、複数のワークのいずれかのワークの作業開始時をずらすことで、各ワークを実施する各リソースの作業期間を設定することを特徴とする
請求項１または請求項２に記載のプロジェクト計画方法。
【請求項４】
前記入力装置は、さらに、ワークが実施された作業時間を示す実績情報の入力を受け付け、
コンピュータは、さらに、各ワークについて、計算した前記見積もり作業時間と、入力された実績情報の作業時間とを対比させて、表示装置に表示することを特徴とする
請求項１ないし請求項３のいずれか１項に記載のプロジェクト計画方法。
【請求項５】
前記入力装置は、さらに、前記表示装置に表示された前記ワーク難易度決定関数および前記スキルレベル決定関数を構成する各パラメータへの数値変更の入力を受け付け、
コンピュータは、さらに、数値変更が入力されたときには、変更後の前記ワーク難易度決定関数および前記スキルレベル決定関数をもとに、前記見積もり作業時間を再計算し、その再計算結果を前記表示装置に表示することを特徴とする
請求項４に記載のプロジェクト計画方法。
【請求項６】
請求項１ないし請求項５のいずれか１項に記載のプロジェクト計画方法を、コンピュータに実行させるためのプロジェクト計画プログラム。
【請求項７】
プロジェクトで実施するワークフローを構成するワークのワーク難易度と、ワークを実施するリソースのスキルレベルと、をもとに各リソースの見積もり作業時間を計算し、その計算した見積もり作業時間を各ワークに割り当てることにより、プロジェクト計画を作成するプロジェクト計画システムであって、
各ワークと、そのワークを実施するための必要スキルとの対応を示すワーク対応情報、および、各リソースと、そのリソースが有するスキルとの対応を示すスキル対応情報が記憶されている記憶装置と、
前記ワークフローの入力、前記ワーク難易度を計算するためのワーク難易度決定属性の数値入力、および、前記スキルレベルを計算するためのスキルレベル決定属性の数値入力を受け付ける入力装置と、
入力された前記ワークフローの各ワークについて、前記ワーク対応情報の前記必要スキルと、前記スキル対応情報のリソースが有するスキルとを照合し、前記必要スキル以上のスキルを有する前記リソースを抽出することにより、そのワークを実施するためのリソースをワークごとに対応付ける制御部と、
前記対応付けされたワークに対して、入力された前記ワーク難易度決定属性の数値を、前記各ワーク難易度決定属性と前記ワーク難易度決定属性ごとの係数との重み付け加算関数である所定のワーク難易度決定関数に代入して前記ワーク難易度決定関数の出力値を計算し、
計算した前記ワーク難易度決定関数の出力値と、ワーク難易度特定用の複数の閾値とを比較することで、その複数の閾値によって区切られる値域ごとに設定されるワーク難易度を特定し、
ワークとそのワーク難易度との組み合わせごとにあらかじめワーク難易度補正値が対応づけられているテーブルを参照することにより、特定したワーク難易度に対応するワーク難易度補正値を計算するワーク難易度決定部と、
前記対応付けされたリソースのスキルに対して、入力された前記スキルレベル決定属性の数値を、前記各スキルレベル決定属性と前記スキルレベル決定属性ごとの係数との重み付け加算関数である所定のスキルレベル決定関数に代入して前記スキルレベル決定関数の出力値を計算し、
計算した前記スキルレベル決定関数の出力値と、スキルレベル特定用の複数の閾値とを比較することで、その複数の閾値によって区切られる値域ごとに設定されるスキルレベルを特定し、
ワークとスキルレベルとの組み合わせごとにあらかじめスキルレベルが対応づけられているテーブルを参照することにより、特定したスキルレベルに対応するスキルレベル補正値を計算するスキルレベル決定部と、
ワークに対して割り当てられている標準作業時間に対して、計算された前記ワーク難易度補正値および前記スキルレベル補正値をそれぞれ乗算する計算により、前記標準作業時間を補正した前記見積もり作業時間を計算する標準作業時間補正部と、を有することを特徴とする
プロジェクト計画システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロジェクト計画方法、プロジェクト計画プログラム、および、プロジェクト計画システムに関する。
【背景技術】
【０００２】
ワーク・ブレークダウン・ストラクチャーは、エンジニアリング業務などのプロジェクトを支援するため、業務全体であるワークフローを個別の業務単位であるワークに展開したものである。そして、ワーク単位を標準的な時間で完了することのできる標準作業時間（ＳＴ：Standard Time）を個別に設定し、各ワーク単位に必要かつ割り付け可能な人や設備などのリソースを割り付けて、ワーク単位の工数を決め、それらの日程計画を立てる。
【０００３】
特許文献１には、部品設置位置、大きさを示す作業完了データに基づいて、工数と相関のある注目因子を抽出し、予測近似式で工数算出することを特徴とする提案がある。特許文献２には、プロジェクトに関する定性的な能力情報によりプロジェクトリスクを評価することを特徴とする提案がある。特許文献３には、ソフト開発の定性的な要員能力やユースケース難易度により工数を見積もることを特徴とする提案がある。
【特許文献１】特開平８−６３５０４号公報
【特許文献２】特開２００５−３２０７９号公報
【特許文献３】特開２００５−２０９１７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前記した従来の技術は、いずれも標準作業時間を活用せずに工数を見積もっていたため、見積もり精度を充分に高めることができなかった。一方、標準作業時間をそのまま見積もり作業時間とすると、作業対象となるワークの難易度や、作業を実行する作業員などのリソースの能力などの作業特有の要因が見積もりに反映されず、同じ作業でも見積もりの精度にばらつきがあった。
【０００５】
そこで、本発明は、前記した問題を解決し、ワークフローを実行するプロジェクトを計画するときに、ワークフローの各ワークの作業時間を高精度で見積もることを主な目的とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するため、本発明は、コンピュータが、プロジェクトで実施するワークフローを構成するワークのワーク難易度と、ワークを実施するリソースのスキルレベルと、をもとに各リソースの見積もり作業時間を計算し、その計算した見積もり作業時間を各ワークに割り当てることにより、プロジェクト計画を作成するプロジェクト計画方法であって、
コンピュータが、記憶装置と、入力装置と、制御部と、制御装置とを備えており、前記制御装置は、ワーク難易度決定部と、スキルレベル決定部と、標準作業時間補正部と、を有しており、
前記記憶装置には、各ワークと、そのワークを実施するための必要スキルとの対応を示すワーク対応情報、および、各リソースと、そのリソースが有するスキルとの対応を示すスキル対応情報が記憶されており、
前記入力装置は、前記ワークフローの入力、前記ワーク難易度を計算するためのワーク難易度決定属性の数値入力、および、前記スキルレベルを計算するためのスキルレベル決定属性の数値入力を受け付け、
前記制御部は、入力された前記ワークフローの各ワークについて、前記ワーク対応情報の前記必要スキルと、前記スキル対応情報のリソースが有するスキルとを照合し、前記必要スキル以上のスキルを有する前記リソースを抽出することにより、そのワークを実施するためのリソースをワークごとに対応付け、
前記ワーク難易度決定部は、
前記対応付けされたワークに対して、入力された前記ワーク難易度決定属性の数値を、前記各ワーク難易度決定属性と前記ワーク難易度決定属性ごとの係数との重み付け加算関数である所定のワーク難易度決定関数に代入して前記ワーク難易度決定関数の出力値を計算し、
計算した前記ワーク難易度決定関数の出力値と、ワーク難易度特定用の複数の閾値とを比較することで、その複数の閾値によって区切られる値域ごとに設定されるワーク難易度を特定し、
ワークとそのワーク難易度との組み合わせごとにあらかじめワーク難易度補正値が対応づけられているテーブルを参照することにより、特定したワーク難易度に対応するワーク難易度補正値を計算し、
前記スキルレベル決定部は、
前記対応付けされたリソースのスキルに対して、入力された前記スキルレベル決定属性の数値を、前記各スキルレベル決定属性と前記スキルレベル決定属性ごとの係数との重み付け加算関数である所定のスキルレベル決定関数に代入して前記スキルレベル決定関数の出力値を計算し、
計算した前記スキルレベル決定関数の出力値と、スキルレベル特定用の複数の閾値とを比較することで、その複数の閾値によって区切られる値域ごとに設定されるスキルレベルを特定し、
ワークとスキルレベルとの組み合わせごとにあらかじめスキルレベルが対応づけられているテーブルを参照することにより、特定したスキルレベルに対応するスキルレベル補正値を計算し、
前記標準作業時間補正部は、
ワークに対して割り当てられている標準作業時間に対して、計算された前記ワーク難易度補正値および前記スキルレベル補正値をそれぞれ乗算する計算により、前記標準作業時間を補正した前記見積もり作業時間を計算することを特徴とする。
その他の手段は、後記する。
【発明の効果】
【０００７】
本発明によれば、ワークフローを実行するプロジェクトを計画するときに、ワークフローの各ワークの作業時間を高精度で見積もることが可能になる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施形態について図面を参照しながら説明する。
【０００９】
図１は、プロジェクトにおけるワークフローを示す説明図である。ワーク・ブレークダウン・ストラクチャは、業務（ワーク）の構造を上流から下流に流れるように階層的に規定する。図１では上流側のワークから下流側のワークに向かって矢印を示すことで、上流下流関係を表現している。ワークフローを構成する各ワークは、基本設計または詳細設計に分類される。例えば、基本設計は、システム設計、電気計装制御計画、配置設計、および、遮蔽設計である。また、各ワークの名称の前には、括弧書きでそのワークを特定するためのワークＩＤを示している。例えば、システム設計のワークＩＤは、「Ｗ１」である。
【００１０】
図２は、プロジェクトにおける計画表を示すガントチャートである。ガントチャートの縦軸がワークＩＤで特定される各ワークとなっており、横軸が右に行くほど時間が経過する時間軸を示す。図２（ａ）は、ワークを実施するリソースに競合が発生していない、適切なプロジェクト計画を示す。なお、ここでのリソースは、作業者（人的リソース）である。
【００１１】
例えば、リソース「丹羽礼子（Ｒ１）」は、２００７年の１月始めから３月中旬まで、ワークＩＤ「Ｗ１」のワークを実施する。なお、各リソースの名称の後には、括弧書きでそのリソースを特定するためのリソースＩＤを示している。例えば、丹羽礼子のリソースＩＤは、「Ｒ１」である。このガントチャートの各リソースを示す矩形の横の長さが、そのリソースにおける作業時間の見積期間である。つまり、リソース「丹羽礼子（Ｒ１）」がワークＩＤ「Ｗ１」のワークを実施するための見積期間は、２ヶ月半である。
【００１２】
一方、図２（ｂ）は、リソースの競合が発生することにより、不適切なプロジェクト計画を示す。リソース「丹羽礼子（Ｒ１）」の見積期間の精度が悪く、２ヶ月半と見積もったが、実際には４ヶ月の作業時間を要した。一方、リソース「丹羽礼子（Ｒ１）」は、「Ｗ１」のワークを実施した後、２００７年４月始めから、別の「Ｗ２」のワークを実施するように計画されていた。よって、２００７年４月には、リソース「丹羽礼子（Ｒ１）」は、「Ｗ１」と「Ｗ２」という２つのワークに対して重複して割り当てられる。このように、複数のワークに対して同一のリソースが割り当てられることを、リソースの競合と呼ぶ。
【００１３】
このように、不適切なプロジェクト計画は、リソースの競合が要因となり、リソースの競合は、作業時間の見積期間の精度が悪いことに起因する。従って、リソースの競合が発生せず、かつ、各リソースを効率的に各ワークに配置する適切なプロジェクト計画を作成するためには、高精度の見積処理を実現することが、重要である。以下に示す本実施形態では、所定ワークを実施するための標準作業時間をそのまま用いるのではなく、ワークの詳細な情報、および、リソースの詳細な情報をもとに、標準作業時間を補正することにより、高精度の見積処理を実現する。
【００１４】
図３は、プロジェクト計画システム９（コンピュータ）の構成図である。プロジェクト計画システム９は、ユーザに入力情報を入力させるためのキーボードやマウスなどで構成される入力装置１、ユーザに各種情報を表示して知らせるためのディスプレイなどで構成される表示装置２、プロジェクトに関するデータを記憶する記憶装置３、演算処理を行う際に用いられる記憶手段としてのメモリ、および、前記演算処理を行う演算処理装置とを少なくとも備えるコンピュータとして構成される。なお、メモリは、ＲＡＭ（Random Access Memory）などにより構成される。演算処理は、ＣＰＵ（Central Processing Unit）によって構成される演算処理装置が、メモリ上のプログラムを実行することで、実現される。
【００１５】
プロジェクト計画システム９は、ワークフロー１１に関する情報として、ワーク難易度情報１２、ワーク難易度決定情報１３、ワーク参考情報１５、および、ワーク難易度参考情報１６を、記憶装置３に記憶する。ワークフロー１１、ワーク参考情報１５、および、ワーク難易度決定情報１３は、入力装置１を介して事前に入力される設定情報である。
【００１６】
プロジェクト計画システム９は、ワーク難易度参考情報入力部１７、および、ワーク難易度決定部１４を有する。まず、ワーク難易度参考情報入力部１７を介してワーク難易度参考情報１６の入力を受け付けると、ワーク参考情報１５をもとにして、ワーク難易度決定属性を求める。次に、ワーク難易度決定部１４は、ワーク難易度決定情報１３のワーク難易度決定関数に、ワーク難易度決定属性を代入することにより、ワーク難易度情報１２のワーク難易度を、ワーク毎に求める。
【００１７】
プロジェクト計画システム９は、リソースに関する情報として、リソースリスト２１、スキルレベル情報２２、スキルレベル決定情報２３、スキル参考情報２５、および、スキルレベル参考情報２６を、記憶装置３に記憶する。リソースリスト２１、スキル参考情報２５、および、スキルレベル決定情報２３は、入力装置１を介して事前に入力される設定情報である。
【００１８】
プロジェクト計画システム９は、スキルレベル参考情報入力部２７、および、スキルレベル決定部２４を有する。まず、スキルレベル参考情報入力部２７を介してスキルレベル参考情報２６の入力を受け付けると、スキル参考情報２５をもとにして、スキルレベル決定属性を求める。次に、スキルレベル決定部２４は、スキルレベル決定情報２３のスキルレベル決定関数に、スキルレベル決定属性を代入することにより、スキルレベル情報２２のスキルレベルを、リソースのスキル毎に求める。
【００１９】
プロジェクト計画システム９は、ワーク難易度決定部１４が求めたワーク難易度、および、スキルレベル決定部２４が求めたスキルレベルそれぞれに対応する補正値をもとに、標準作業時間を補正するためのＳＴ情報３１を、記憶装置３に記憶する。プロジェクト計画システム９は、ＳＴ補正部３２、および、プロジェクト計画部３５を有する。ＳＴ補正部３２は、ＳＴ情報３１を元に標準作業時間を補正することにより、ワークおよびそのワークを担当するリソースの組み合わせごとに、作業時間を見積もる。プロジェクト計画部３５は、ＳＴ補正部３２が見積もった作業時間をもとに、図２（ａ）などで示されるプロジェクト計画を作成する。
【００２０】
ここで、作成されたプロジェクト計画が実行された後、見積もった作業時間と、実際にリソースが作業した作業時間とを比べることができる。そこで、プロジェクト計画システム９は、実際にリソースが作業した作業時間を示す実績情報３３を入力装置１から受け付けて記憶装置３に記憶する。さらに、プロジェクト計画システム９は、実績情報３３と記憶装置３に記憶された各種情報（主に、ワーク難易度決定情報１３、および、スキルレベル決定情報２３）とを見比べられるように表示装置２に表示するとともに、表示された各種情報をユーザに編集させ、その編集結果を記憶装置３に更新する調整表示部３４を有する。この調整表示部３４の編集画面は、後記する。
【００２１】
【表１】
0004852496.tif 000002
表１に示すワーク難易度情報１２は、ワークＩＤ、ワーク名称、ワーク難易度、および、ワーク難易度決定属性を対応づけて構成される。ワークＩＤは、ワークフロー１１のワーク単位のＩＤである。ワーク名称は、ワークＩＤで特定されるワークの名称である。ワークＩＤで特定されるワークのワーク難易度である。ワーク難易度決定属性は、ワーク難易度を決定するための属性である（詳細は後記）。例えば、ワークＩＤ「Ｗ１」のワーク名称「システム設計」は、ワーク難易度が「３」であるので、ワーク難易度が「１」であるワークＩＤ「Ｗ５」のワーク名称「機械設計」よりも難易度の高い（換言すると、作業時間が長くかかる）ワークである。
【００２２】
【表２】
0004852496.tif 000003
表２に示すワーク参考情報１５は、ワーク難易度決定属性、および、ワーク難易度参考情報１６を対応づけて構成される。ワーク難易度参考情報１６は、例えば、プロジェクトのワーク単位で対象となる成果物に関連する（関連するとは、例えば、作業対象物カテゴリが互いに同じである）他の製品あるいは部品の数を示す「関連部品数」、成果物のスペックの数を示す「スペック数」、ワークをさらに詳細に手順化した際の手順の数を示す「詳細手順数」、繰り返し開発を行う回数である「リピート開発回数」、および、ワーク単位で対象となる成果物である製品を審査するときの「製品審査レベル」である。
【００２３】
各ワーク難易度決定属性は、対応するワーク難易度参考情報１６をもとに、数値化される。例えば、属性「ｗａ１」は、関連部品数と同じ値である。その他のワーク難易度参考情報１６は、例えば、ワークの対象となる成果物に着目したときの関連成果物数、および、ワークに着目したときの関連ワーク数が挙げられる。
【００２４】
【表３】
0004852496.tif 000004
表３に示すワーク難易度決定情報１３は、作業対象物カテゴリ、ワーク難易度決定関数、および、１つ以上のワーク難易度決定属性を対応づけて構成される。作業対象物カテゴリ別に決定されるワーク難易度は、表で「○」が示されているワーク難易度決定属性の値を、ワーク難易度決定関数に代入することで、計算される。
【００２５】
例えば、作業対象物カテゴリ「Ｃ１」に対する難易度を３段階とするワーク難易度決定関数「ＷＦ１」が、以下のように規定されていたとする。なお、「200」、「1000」は、ワーク難易度決定関数の計算結果を、３段階に分類するための閾値の一例である。
・WF1(属性wa1,属性wa3,属性wa4,属性wa5)＝属性wa1×係数「1」＋属性wa3×係数「100」＋属性wa4×係数「10」＋属性wa5×係数「1」
・ワーク難易度=1(if WF1＜200)
・ワーク難易度=2(if 200≦WF1≦1000)
・ワーク難易度=3(if WF1＞1000)
例えば、作業対象物カテゴリ「Ｃ１」に対するワークＩＤ「Ｗ１」のワーク名称「システム設計」（表１参照）は、ワーク難易度決定関数「ＷＦ１」が、100×1+3×100+1.5×10+987×1=1402であり、1402＞1000なので、ワーク難易度＝３となる。
【００２６】
【表４】
0004852496.tif 000005
表４に示すリソースリスト２１は、リソースＩＤ、部署ＩＤ、および、氏名を対応づけて構成される。例えば、氏名「丹羽礼子」は、「設計１課」に所属し、「Ｒ１」というリソースＩＤが割り当てられている。なお、リソースは、設計者などの人的リソースだけでなく、設備などの物的リソースを定義してもよい。
【００２７】
【表５】
0004852496.tif 000006
表５に示すスキルレベル情報２２は、リソースＩＤ、スキル、スキルレベル、および、スキルレベル決定属性を対応づけて構成される。リソースＩＤで特定されるリソースは、スキルレベルに応じたスキルを有しており、そのスキルレベルは、スキルレベル決定属性より計算されたものである。スキルは、リソースがワークを実施するための能力であり、同じスキルを有していてもスキルレベルが高いほど、リソースがワークをより効率的に実施する。例えば、リソースが設備の場合、スキルは設備の機能（スペックの種類）を示し、スキルレベルはその機能のスペック値を示す。
【００２８】
例えば、リソースＩＤ「Ｒ１」の丹羽礼子は、スキルレベル３の「機器設計」、スキルレベル１の「モデリング」、および、スキルレベル２の「組立設計」という３つのスキルを有している。そして、スキル「機器設計」がスキル「組立設計」よりもスキルレベルが高いので、スキル「機器設計」に熟練している（換言すると、得意である）ことがわかる。一方、リソースＩＤ「Ｒ３」の伊集院春樹は、スキルレベル３の「モデリング」を有しているので、同じ「モデリング」の仕事を割り当てるときには、スキルレベル１の丹羽礼子よりも作業時間が短くて済む。
【００２９】
【表６】
0004852496.tif 000007
表６に示すスキル参考情報２５は、スキルレベル決定属性、および、スキルレベル参考情報２６を対応づけて構成される。スキルレベル参考情報２６は、例えば、プロジェクトに関わる人的リソースにおいて、スキルに関連する資格の数を示す「関連資格数」、スキルに関連する資格の種類から特定される「資格レベル」、スキルを使ってワークに携わった「経験年数」、スキルを使って担当した「担当プロジェクト数」、およびスキルを使って経験した「関連業務経験数」である。一方、スキルレベル参考情報２６は、プロジェクトに関わる物的リソースにおいて、例えば、プロジェクトに関わる設備リソースのワーク実施に関連するスペックの種類およびその定量値である。
【００３０】
【表７】
0004852496.tif 000008
表７に示すスキルレベル決定情報２３は、スキル、スキルレベル決定関数、および、スキルレベル決定属性を対応づけて構成される。スキルのスキルレベルは、表中「○」が付いているスキルレベル決定属性を引数とするスキルレベル決定関数により計算される。
【００３１】
例えば、難易度を３段階とするスキルレベル決定関数「ＳＦ１７」が、以下のように規定されていたとする。なお、「60」、「80」は、スキルレベル決定関数の計算結果を、３段階に分類するための閾値の一例である。
・SF17(属性sa1)＝属性sa1×係数「100」
・スキルレベル=1(if SF1＜60)
・スキルレベル=2(if 60≦SF1≦80)
・スキルレベル=3(if SF1＞80)
例えば、リソースＩＤ「Ｒ１」のスキル「機器設計」（表５参照）は、スキルレベル決定関数「ＳＦ１７」が、15×100=150であり、150＞80なので、スキルレベル＝３となる。
【００３２】
【表８】
0004852496.tif 000009
表８に示すＳＴ情報３１は、ワークＩＤ、必要スキル、標準作業時間（ＳＴ）、スキルレベル補正値、および、ワーク難易度補正値を対応づけて構成される。まず、ワークＩＤで特定されるワークを実施するためには、必要スキルで特定されるスキルを有しているリソースが必要となる。そのワークと必要スキルとの組み合わせでの補正前の標準作業時間が、対応づけられている。そして、この補正前の標準作業時間に対して、スキルレベル補正値を元にしたスキルレベル補正、および、ワーク難易度補正値を元にしたワーク難易度補正を行うことにより、高精度の作業時間を計算する。
【００３３】
これにより、エンジニアリング業務などのプロジェクトにおけるワークの標準作業時間を単なる所要時間として標準的に決定するのではなく、ワークの難易度や、ワークを実施するリソースのスキルレベルに応じて、定量的に補正することができる。
【００３４】
スキルレベル補正値は、例えば、レベルの高い順にレベル３、レベル２、レベル１の３段階とし、中間のレベル２を標準の補正値「１」として正規化する。そして、レベル２より高いレベル３の補正値を１より小さく、レベル２より低いレベル１の補正値を１より大きくする。これは、スキルレベルが高い、つまり、スキルに熟練するほど、作業時間が短くなる（つまり、補正値が小さくなる）事象を反映したものである。
【００３５】
難易度補正値は、例えば、難易度の高い順に難易度３、難易度２、難易度１の３段階とし、中間の難易度２を標準の補正値「１」として正規化する。そして、難易度２より高い難易度３の補正値を１より大きく、難易度２より低い難易度１の補正値を１より小さくする。これは、難易度が高いワークほど、作業時間が長くなる（つまり、補正値が大きくなる）事象を反映したものである。
【００３６】
ＳＴ補正部３２が実行する標準作業時間の補正計算の例を以下に挙げる。ワークＩＤ「Ｗ７２」のワークを実現するために「モデリング」のスキルを行使する場合を考える。ワークＩＤ「Ｗ７２」のワーク難易度が「３」であり、そのワークを担当するリソースの「モデリング」のスキルレベルが「１」であるとする。この例は、困難なワークに対して、不慣れな担当者が担当する事象を反映するものである。そして、ＳＴ情報３１に記述されている「モデリング」の標準作業時間「１０」に対して、以下の計算を行う。
補正後の作業時間＝１０（標準作業時間）×１．６（スキルレベル１のスキルレベル補正値）×１．３（ワーク難易度３のワーク難易度補正値）＝２０．８
【００３７】
これにより、作業時間が補正前の標準作業時間である１０［日］から補正後の２０．８［日］へと補正された。これにより、困難なワークに対して、不慣れな担当者が担当すると、倍以上の作業時間がかかってしまう高精度な見積もりを、実際に作業が開始される前の計画段階において把握することができる。その結果、スキルレベルの高い別の担当者に割り当てを変更する、または、作業時間に余裕を持ってプロジェクト計画を作成するなど、適切な対応策を行うための支援をすることができる。
【００３８】
図４は、調整表示部３４が表示する調整画面を示す画面図である。調整画面は、決定関数編集部１０１、決定関数表示部１０２、および、反映結果表示部１０３を同一画面上に表示する。決定関数編集部１０１は、ワークＩＤ１０１ａのワーク単位で、ワーク難易度調整１０１ｂ、スキルレベル調整１０１ｃを対応づけて表示する。
【００３９】
ワーク難易度調整１０１ｂは、ワーク難易度情報１２のワーク難易度決定属性とその属性値、ワーク難易度決定関数を構成する属性への係数とその係数値、および、ＳＴ情報３１のワーク難易度補正値を表示するとともに、これらの各パラメータの数値編集を受け付ける。
【００４０】
スキルレベル調整１０１ｃは、スキルレベル情報２２のスキルレベル決定属性とその属性値、スキルレベル決定関数を構成する属性への係数とその係数値、および、ＳＴ情報３１のスキルレベル補正値を表示するとともに、これらの各パラメータの数値編集を受け付ける。
【００４１】
調整表示部３４は、数値を編集させる手段として、例えば、数値上をクリックすると入力可能になるテキストボックスから入力させてもよいし、数値に連動して上下するスクロールバー１０１ｄをドラッグして入力させてもよい。調整表示部３４は、数値が編集により変更された旨のイベントを検知すると、変更後の数値を元に、標準作業時間の補正処理による見積もり作業時間を再計算するように制御する。
【００４２】
決定関数表示部１０２は、決定関数編集部１０１で編集対象となる決定関数（ワーク難易度決定関数、および、スキルレベル決定関数）を表示する。反映結果表示部１０３は、ワーク事例毎に、標準作業時間の補正処理による見積もり作業時間と、別途入力された実績情報３３の実績作業時間とをバーチャートで対比させて表示する。この２つの作業時間の差が少ないほど、高精度な見積もりが行われていることを示す。調整表示部３４の制御により見積もり作業時間が再計算されると、その再計算の結果を反映結果表示部１０３の表示内容に反映する。
【００４３】
以上説明したように、ユーザは、決定関数編集部１０１の各パラメータを編集することで、見積もり作業時間の精度をグラフ上で即座に知ることができる。その結果、各パラメータを試行錯誤して編集し、高精度の見積もりを可能にする決定関数を更新することができる。なお、反映結果表示部１０３は、複数のワーク事例を並べて表示する。これにより、特定のワーク事例だけに過剰適合したパラメータを入力してしまうことを抑制できる。
【００４４】
図５は、プロジェクト計画のメイン処理を示すフローチャートである。
【００４５】
まず、入力装置１は、ワークフロー１１の入力を受け付ける（Ｓ１１）。プロジェクト計画システム９の制御部は、入力されたワークフロー１１のワークを１つずつ順に選択するループを実行する（Ｓ１２〜Ｓ１７）。プロジェクト計画システム９の制御部は、選択したワークと、そのワークを実施するためのリソースとを対応付ける（Ｓ１３）。
【００４６】
そして、ワーク難易度決定部１４は、対応づけたワークのワーク難易度を計算し、そのワーク難易度補正値をＳＴ情報３１から取得する（Ｓ１４）。スキルレベル決定部２４は、対応づけたリソースのスキルレベルを計算し、そのスキルレベル補正値をＳＴ情報３１から取得する（Ｓ１５）。ＳＴ補正部３２は、対応づけたワークの標準作業時間に対して、ワーク難易度補正値およびスキルレベル補正値を用いて補正し、見積もり作業時間とする（Ｓ１６）。
【００４７】
さらに、プロジェクト計画部３５は、計算した見積もり作業時間およびリソース制約をもとに、ワークフロー１１のワークに対して、そのワークを実施するリソースの作業期間を計画する（Ｓ２１）。入力装置１は、ワークが実施された結果である実績情報３３の入力を受け付ける（Ｓ２２）。調整表示部３４は、見積もり作業時間と、入力された実績情報３３の作業時間とを対比させて、見積もり作業時間を計算するためのパラメータを調整させる（Ｓ２３）。調整されたパラメータは、次回以降の見積もり作業時間の計算に使用される。
【００４８】
図６は、Ｓ１３（選択したワークと、そのワークを実施するためのリソースとを対応付ける処理）を示すフローチャートである。
【００４９】
まず、選択されたワークに対して、ＳＴ情報３１からそのワークを実施するための必要スキルを抽出する（Ｓ１０１）。次に、抽出した必要スキルに対して、スキルレベル情報２２からそのスキルを保持するリソースを抽出する（Ｓ１０２）。そして、抽出したリソースのスキルレベルは適切か否かを判定する（Ｓ１０３）。適切なスキルレベルとは、例えば、ワークを実施するための必要スキルのスキルレベルが「２以上」と設定されているとき、リソースのスキルレベルが２または３であることを指す。Ｓ１０３でＹｅｓなら、選択されたワークと、抽出したリソースとの対応付けを行う（Ｓ１０４）。Ｓ１０３でＮｏなら、対応付けをせずに、メイン処理へ戻る。
【００５０】
図７（ａ）は、Ｓ１４（対応づけたワークのワーク難易度を計算し、そのワーク難易度補正値をＳＴ情報３１から取得する処理）を示すフローチャートである。
【００５１】
ワーク難易度参考情報入力部１７は、対応づけたワークに関するワーク難易度参考情報１６の入力を受け付ける（Ｓ２０１）。ワーク難易度決定部１４は、入力されたワーク難易度参考情報１６をもとにして、ワーク難易度決定属性を求める（Ｓ２０２）。ワーク難易度決定部１４は、ワーク難易度決定情報１３のワーク難易度決定関数に、ワーク難易度決定属性を代入することにより、ワーク難易度情報１２のワーク難易度を、ワーク毎に求める（Ｓ２０３）。ワーク難易度決定部１４は、求めたワーク難易度に対応するワーク難易度補正値をＳＴ情報３１から取得する（Ｓ２０４）。
【００５２】
図７（ｂ）は、Ｓ１５（対応づけたリソースのスキルレベルを計算し、そのスキルレベル補正値をＳＴ情報３１から取得する処理）を示すフローチャートである。
【００５３】
スキルレベル参考情報入力部２７は、対応づけたリソースに関するスキルレベル参考情報２６の入力を受け付ける（Ｓ２１１）。スキルレベル決定部２４は、入力されたスキルレベル参考情報２６をもとにして、スキルレベル決定属性を求める（Ｓ２１２）。スキルレベル決定部２４は、スキルレベル決定情報２３のスキルレベル決定関数に、スキルレベル決定属性を代入することにより、スキルレベル情報２２のスキルレベルを、リソースのスキル毎に求める（Ｓ２１３）。スキルレベル決定部２４は、求めたスキルレベルに対応するスキルレベル補正値をＳＴ情報３１から取得する（Ｓ２１４）。
【００５４】
図８は、Ｓ２１（計算した見積もり作業時間およびリソース制約をもとに、ワークフロー１１のワークに対して、そのワークを実施するリソースの作業期間を計画する処理）を示すフローチャートである。
【００５５】
まず、入力されたワークフロー１１を取得する（Ｓ３０１）。次に、ワークフロー１１で規定されている時間順序に従って、ワークを順に選択するループを実行する（Ｓ３０２〜Ｓ３０７）。そして、選択したワークに対して、対応づけた必要スキルを有するリソースを選択する（Ｓ３０３）。さらに、選択したリソースについて、ワークの作業時間を決定する（Ｓ３０４）。
【００５６】
ここで、選択したリソースについて、他のワークとのリソース競合が発生するか否かを判定する（Ｓ３０５）。リソース競合は、図２（ｂ）で示したように、１つのリソースが同時期に複数のワークに重複して割り当てられることを指す。Ｓ３０５でＹｅｓなら、リソース競合を回避するように、選択したワークの作業時間を時間軸上で移動する（Ｓ３０６）。Ｓ３０５でＮｏなら、選択したワークの作業時間を確定する。
【００５７】
図９は、Ｓ２３（見積もり作業時間と、実績情報３３の作業時間とを対比させて、見積もり作業時間を計算するためのパラメータを調整させる処理）を示すフローチャートである。
【００５８】
まず、ワークフロー１１の全てのワークを順に選択するループを実行する（Ｓ４０１〜Ｓ４０９）。選択したワークに対応する実績情報３３の入力を受け付ける（Ｓ４０２）。ＳＴ補正部３２が見積もった見積もり作業時間と、入力された実績情報３３の作業時間とを対比させて、調整画面（図４）の反映結果表示部に表示する（Ｓ４０３）。
【００５９】
ここで、表示された双方の作業時間の差分時間が、誤差範囲内か否かを判定する（Ｓ４０４）。Ｓ４０４でＹｅｓなら、既に充分の精度で計算できており、パラメータを変更する必要がないので、選択したワークに対するループを終了する（Ｓ４０９）。Ｓ４０４でＮｏなら、決定関数を調整するか否かをユーザに問い合わせる（Ｓ４０５）。Ｓ４０５でＮｏなら、ユーザがパラメータを変更する必要がないと判断したので、選択したワークに対するループを終了する（Ｓ４０９）。Ｓ４０５でＹｅｓなら、決定関数を構成する各パラメータの値を変更させる（Ｓ４０６）。そして、パラメータの値が変更されたか否かを判定する（Ｓ４０７）。Ｓ４０７でＹｅｓなら、変更されたパラメータの値をもとに、見積もり作業時間を再計算する（Ｓ４０８）。
【００６０】
以上説明した本実施形態によれば、ワーク難易度およびリソースのスキルレベルに応じて標準作業時間を補正して作業時間を見積もる方式のため、見積もり精度を高精度で計算でき、かつ、精度のばらつきを抑制することができる。その結果、プロジェクトの計画およびその計画を実施するためのコスト算出がより精度良く行え、プロジェクトの成果物を納品する顧客との時間的および金銭的な調整に有効となる。つまり、プロジェクトの計画、見積りの誤りを是正することができるため、膨大な仕損費の発生を未然に抑制することができる。
【図面の簡単な説明】
【００６１】
【図１】本発明の一実施形態に関するプロジェクトにおけるワークフローを示す説明図である。
【図２】本発明の一実施形態に関するプロジェクトにおける計画表を示すガントチャートである。
【図３】本発明の一実施形態に関するプロジェクト計画システムを示す構成図である。
【図４】本発明の一実施形態に関する調整表示部が表示する調整画面を示す画面図である。
【図５】本発明の一実施形態に関するプロジェクト計画のメイン処理を示すフローチャートである。
【図６】本発明の一実施形態に関するワークと、そのワークを実施するためのリソースとを対応付ける処理を示すフローチャートである。
【図７】本発明の一実施形態に関するワーク難易度およびスキルレベルを計算する処理を示すフローチャートである。
【図８】本発明の一実施形態に関するリソースの作業期間を計画する処理を示すフローチャートである。
【図９】本発明の一実施形態に関する見積もり作業時間を計算するためのパラメータを調整させる処理を示すフローチャートである。
【符号の説明】
【００６２】
１      入力装置
２      表示装置
３      記憶装置
９      プロジェクト計画システム
１１    ワークフロー
１２    ワーク難易度情報
１３    ワーク難易度決定情報
１４    ワーク難易度決定部
１５    ワーク参考情報
１６    ワーク難易度参考情報
１７    ワーク難易度参考情報入力部
２１    リソースリスト
２２    スキルレベル情報
２３    スキルレベル決定情報
２４    スキルレベル決定部
２５    スキル参考情報
２６    スキルレベル参考情報
２７    スキルレベル参考情報入力部
３１    ＳＴ情報
３２    ＳＴ補正部
３３    実績情報
３４    調整表示部
３５    プロジェクト計画部
【図１】
0004852496.tif 000010
【図２】
0004852496.tif 000011
【図３】
0004852496.tif 000012
【図４】
0004852496.tif 000013
【図５】
0004852496.tif 000014
【図６】
0004852496.tif 000015
【図７】
0004852496.tif 000016
【図８】
0004852496.tif 000017
【図９】
0004852496.tif 000018