(57)【要約】【課題】  プロジェクトの進行を管理するシステムであって、作業遅延が発生した場合に、プロジェクト管理者に対し、遅延挽回のために客観的に適切な対策を提案することができるシステムを提供する。【解決手段】  細分化された各作業の進捗状況から所定の条件に従って遅延発生の判定を行い、遅延が発生した場合には、現在の開発人員の状態やスキル、予備の開発人員の状態やスキル、プロジェクト全体や細分化された各作業の進捗状況、難易度、予算などの情報を総合的に判断して、適切な遅延挽回のための対策をプロジェクト管理者等に提案するシステム。【選択図】  図１
2006126898.tif 000002
【特許請求の範囲】
【請求項１】
開発人員の開発能力及びスケジュールに関する情報を保持する開発人員情報データベースと、
開発対象であるプロジェクトの開発規模、開発スケジュール及び進捗状況に関する情報を保持するプロジェクト情報データベースと、
前記プロジェクト情報データベースを参照して、プロジェクトの開発規模、開発スケジュール及び進捗状況に基づいて、プロジェクト開発における遅延の発生を判定する遅延判定手段と、
遅延が発生したプロジェクトについて、前記プロジェクト情報データベースを参照して、当該プロジェクトの開発規模、開発スケジュール及び進捗状況から遅延を挽回するために必要な作業量を計算し、前記開発人員情報データベースを参照して、開発人員の開発能力及びスケジュールから、前記遅延を挽回するために必要な作業量を処理するのに適した対策を判定する対策判定手段と、
判定された対策をユーザに提示する対策提案手段とを含むプロジェクト管理システムであって、
前記対策には、当該プロジェクトの開発人員に残業を指示すること、予備の開発人員を追加すること、並びに優先作業の指示を行うことのうち少なくとも１つが含まれることを特徴とするプロジェクト管理システム。
【請求項２】
前記開発人員情報データベースは、開発人員のコストに関する情報をさらに保持しており、
前記プロジェクト情報データベースは、プロジェクトの予算に関する情報をさらに保持しており、
前記対策判定手段は、残業の指示又は予備の開発人員の追加によるコスト増加を計算し、そのコスト増加によりプロジェクトの予算が超過しないことを条件として、残業の指示又は予備の開発人員の追加を遅延挽回に適した対策と判定することを特徴とする請求項１に記載のプロジェクト管理システム。
【請求項３】
前記プロジェクト情報データベースは、プロジェクト開発に含まれる各作業間の関係性を示す情報をさらに保持しており、
前記対策判定手段は、前記プロジェクト開発に含まれる各作業間の関係性を示す情報に基づいて遅延の原因となっている作業を判別し、当該プロジェクトの開発スケジュール及び進捗状況と、開発人員の開発能力とから、当該作業を優先的に行うことにより前記遅延挽回に必要な作業量を処理できると予測される場合には、当該作業を優先作業として指示することを適した対策であると判定することを特徴とする請求項１又は２に記載のプロジェクト管理システム。
【請求項４】
前記プロジェクト情報データベースは、さらに、プロジェクトの開発に含まれる各モジュール作成作業について、開発規模、開発スケジュール及び進捗状況に関する情報を保持しており、
前記遅延判定手段は、モジュール作成作業ごとに遅延の発生を判定し、
前記対策判定手段は、遅延が発生したモジュール作成作業について、前記プロジェクト情報データベースを参照して、当該モジュールの開発規模、開発スケジュール及び進捗状況から遅延を挽回するために必要な作業量を計算し、前記開発人員情報データベースを参照して、開発人員の開発能力及びスケジュールから、前記遅延を挽回するために必要な作業量を処理するのに適した対策を判定することを特徴とする請求項１から３のいずれか１項に記載のプロジェクト管理システム。
【請求項５】
前記プロジェクト情報データベースは、さらに、各モジュールの複雑さに関する情報を保持しており、
前記対策判定手段は、遅延が発生したモジュール作成作業について、遅延を挽回するために必要な作業量を計算する際に、当該モジュールの複雑さを加味して計算を行うことを特徴とする請求項４に記載のプロジェクト管理システム。
【請求項６】
ファンクションポイント法に従ってモジュールの複雑さを判定する手段をさらに含んでいることを特徴とする請求項５に記載のプロジェクト管理システム。
【請求項７】
前記対策判定手段は、前記遅延挽回に必要な作業量を計算する際に、開発人員の作業に対する理解度を加味して計算を行うことを特徴とする請求項１から６のいずれか１項に記載のプロジェクト管理システム。
【請求項８】
前記開発人員情報データベースが保持する開発人員の開発能力に関する情報には、開発言語、開発効率、所定基準によるスキルレベル、バグ率、バグ対策工数比のうち少なくとも１つが含まれていることを特徴とする請求項１から７のいずれか１項に記載のプロジェクト管理システム。
【請求項９】
前記開発人員情報データベースが保持する開発人員のスケジュールに関する情報には、現在担当している作業、当該作業の開発開始予定日及び開発終了予定日、当該作業の進捗状況のうち少なくとも１つが含まれていることを特徴とする請求項１から８のいずれか１項に記載のプロジェクト管理システム。
【請求項１０】
前記対策判定手段において、遅延が発生したプロジェクトについて、前記遅延を挽回するために必要な作業量を処理するのに適した対策が存在しないと判定した場合には、前記対策提案手段は、所定の警告をユーザに提示することを特徴とする請求項１から９のいずれか１項に記載のプロジェクト管理システム。
【請求項１１】
開発人員の開発能力及びスケジュールに関する情報を保持する開発人員情報データベースと、開発対象であるプロジェクトの開発規模、開発スケジュール及び進捗状況に関する情報を保持するプロジェクト情報データベースとを参照して、プロジェクト開発の管理を行うプログラムであって、
前記プロジェクト情報データベースを参照して、プロジェクトの開発規模、開発スケジュール及び進捗状況に基づいて、プロジェクト開発における遅延の発生を判定する遅延判定ステップと、
遅延が発生したプロジェクトについて、前記プロジェクト情報データベースを参照して、当該プロジェクトの開発規模、開発スケジュール及び進捗状況から遅延を挽回するために必要な作業量を計算する遅延挽回作業量計算ステップと、
前記開発人員情報データベースを参照して、開発人員の開発能力及びスケジュールから、前記遅延を挽回するために必要な作業量を処理するのに適した対策を判定する対策判定ステップと、
判定された対策をユーザに提示する対策提案ステップとを含み、
前記対策には、当該プロジェクトの開発人員に残業を指示すること、予備の開発人員を追加すること、並びに優先作業の指示を行うことのうち少なくとも１つが含まれていることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロジェクトの進行を管理するシステムに関し、特に、作業の進捗状況を把握し遅延が発生・悪化するのを回避するためのプロジェクト管理システムに関するものである。
【背景技術】
【０００２】
従来のプロジェクトの進捗管理を行なうシステムとしては、各人員のスキル、各作業の重要度、業務付加価値等を数値化して進捗管理を行うものが知られている。例えば、特許文献１には、プロジェクトの進行過程で作成される成果物に着目し、成果物別に作成工数を求めることにより、プロジェクトの作業スケジュールについての見積り精度を上げる技術が開示されている。開発が進むにつれて成果物の内容が確定してゆくと、その確定内容を基に、成果物の作成に必要な工数の見直しを逐次行ない、その結果をプロジェクト計画に反映させて、プロジェクトの作業スケジュールについての見積り精度をさらに向上する事ができるとされている。また、各工程の進捗状況を常に把握する機構により、関連する作業の進捗状況を迅速かつ的確に把握することができるようになっている。例えば、テスト工程に入る前にテスト待ちの有無やその待ち時間の度合いも一見して把握する事ができるようになっている。これにより、作業遅延の対策を講じたり、次工程との連携を考慮した作業進行を行ったりすることが容易となっている。また、プロジェクトの計画を立てた際に、以後に担当者を変更する可能性が大きい作業については、グループ単位で作業を割り当て、担当者を変更する可能性が小さい作業については、作業者単位で作業を割り当てるようにすることにより、工数の見積り変更や作業の遅れ等の状況の変化に対して柔軟に対応することが可能となっている。この結果、精度の高いプロジェクト計画を基に的確な工程管理が可能であるとされている。
【０００３】
特許文献２には、プロジェクト開始前に開発予定値を入力した後、実際の開発の進捗に合わせて実績値を入力することにより、開発の予定値と実績値とを比較対照可能なように表示して進捗状況を把握する技術が開示されている。これにより、担当者は自己の作業と関連する作業の進行に異常が生じているのを察知し、その対策を早急に立てることができるとされている。また、１人が複数の作業を担当している場合には、それぞれの作業の進捗状況と、それぞれの関連作業とを把握することにより、現在どの作業に力を入れるべきであるかを判断することができるとされている。
【０００４】
【特許文献１】特開平８−２０２７７３号公報。
【特許文献２】特開平７−１１４４６６号公報。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示されている技術は、プロジェクト進行過程で作成される成果物に着目し、確定した成果物の内容を基に成果物の工数見直しを逐次行なうことにより、プロジェクトの作業スケジュールの見積り精度を向上するものであり、各工程の進捗状況を把握する機構により、作業遅延の対策や連携する他作業との同期進行が可能であるとされている。しかしながら、具体的な作業遅延の対策としては、プロジェクト管理者に優先作業を指示することにより遅延発生を防ぐなどの事前の対策が中心であり、実際に遅延が発生した場合には警告を行うとされているのみで、遅延が発生してしまった作業を挽回するために具体的にどのような対策を行うべきかという指針は与えられていない。
【０００６】
特許文献２に開示されている技術は、早期に作業の進行に異常が生じているのを察知しその対策を行うとしているが、どのような情報に基づいてどのようなポリシーで作業遅延の対策を行うのかが明らかではない。従来、プロジェクト管理者が作業遅延の対策として人員の再配置などの措置を行なう場合には、管理者の「経験」や「勘」といった不確定な要素に少なからず依存しており、プロジェクト管理者が客観的に適切な対策を講じていることを保証する術はなかった。
【０００７】
本発明は、このような実情に鑑みてなされたものであり、プロジェクトの進行を管理するシステムであって、作業遅延が発生した場合に、プロジェクト管理者に対し、遅延挽回のために客観的に適切な対策を提案することができるシステムを提供しようとするものである。
【課題を解決するための手段】
【０００８】
上記解決課題に鑑みて鋭意研究の結果、本発明者は、細分化された各作業の進捗状況から所定の条件に従って遅延発生の判定を行い、遅延が発生した場合には、現在の開発人員の状態やスキル、予備の開発人員の状態やスキル、プロジェクト全体や細分化された各作業の進捗状況、難易度、予算などの情報を総合的に判断して、適切な遅延挽回のための対策をプロジェクト管理者等に提案するシステムを構築することに想到した。このシステムでは、開発人員の状態やスキル、実績など、並びにプロジェクトや作業の進捗状況、難易度、予算などを客観的な指標（数値等）として表し、これをデータベースに保持しておくことにより、遅延挽回のためにどのような対策を行うのが適切であるかを客観的に判断することが可能となっている。
【０００９】
本発明は、開発人員の開発能力及びスケジュールに関する情報を保持する開発人員情報データベースと、開発対象であるプロジェクトの開発規模、開発スケジュール及び進捗状況に関する情報を保持するプロジェクト情報データベースと、前記プロジェクト情報データベースを参照して、プロジェクトの開発規模、開発スケジュール及び進捗状況に基づいて、プロジェクト開発における遅延の発生を判定する遅延判定手段と、遅延が発生したプロジェクトについて、前記プロジェクト情報データベースを参照して、当該プロジェクトの開発規模、開発スケジュール及び進捗状況から遅延を挽回するために必要な作業量を計算し、前記開発人員情報データベースを参照して、開発人員の開発能力及びスケジュールから、前記遅延を挽回するために必要な作業量を処理するのに適した対策を判定する対策判定手段と、判定された対策をユーザに提示する対策提案手段とを含むプロジェクト管理システムであって、前記対策には、当該プロジェクトの開発人員に残業を指示すること、予備の開発人員を追加すること、並びに優先作業の指示を行うことのうち少なくとも１つが含まれることを特徴とするプロジェクト管理システムを提供するものである。
【００１０】
本発明のプロジェクト管理システムにおいて、前記開発人員情報データベースは、開発人員のコストに関する情報をさらに保持しており、前記プロジェクト情報データベースは、プロジェクトの予算に関する情報をさらに保持しており、前記対策判定手段は、残業の指示又は予備の開発人員の追加によるコスト増加を計算し、そのコスト増加によりプロジェクトの予算が超過しないことを条件として、残業の指示又は予備の開発人員の追加を遅延挽回に適した対策と判定することを特徴とする。
【００１１】
本発明のプロジェクト管理システムにおいて、前記プロジェクト情報データベースは、プロジェクト開発に含まれる各作業間の関係性を示す情報をさらに保持しており、前記対策判定手段は、前記プロジェクト開発に含まれる各作業間の関係性を示す情報に基づいて遅延の原因となっている作業を判別し、当該プロジェクトの開発スケジュール及び進捗状況と、開発人員の開発能力とから、当該作業を優先的に行うことにより前記遅延挽回に必要な作業量を処理できると予測される場合には、当該作業を優先作業として指示することを適した対策であると判定することを特徴とする。
【００１２】
本発明のプロジェクト管理システムにおいて、前記プロジェクト情報データベースは、さらに、プロジェクトの開発に含まれる各モジュール作成作業について、開発規模、開発スケジュール及び進捗状況に関する情報を保持しており、前記遅延判定手段は、モジュール作成作業ごとに遅延の発生を判定し、前記対策判定手段は、遅延が発生したモジュール作成作業について、前記プロジェクト情報データベースを参照して、当該モジュール作成作業の開発規模、開発スケジュール及び進捗状況から遅延を挽回するために必要な作業量を計算し、前記開発人員情報データベースを参照して、開発人員の開発能力及びスケジュールから、前記遅延を挽回するために必要な作業量を処理するのに適した対策を判定することを特徴とする。
【００１３】
本発明のプロジェクト管理システムにおいて、前記プロジェクト情報データベースは、さらに、各モジュールの複雑さに関する情報を保持しており、前記対策判定手段は、遅延が発生したモジュール作成作業について、遅延を挽回するために必要な作業量を計算する際に、当該モジュールの複雑さを加味して計算を行うことを特徴とする。
【００１４】
本発明のプロジェクト管理システムは、また、上記のモジュールの複雑さをファンクションポイント法に従って判定する手段をさらに含んでいることを特徴とする。
【００１５】
本発明のプロジェクト管理システムにおいて、前記対策判定手段は、前記遅延挽回に必要な作業量を計算する際に、開発人員の作業に対する理解度を加味して計算を行うことを特徴とする。
【００１６】
本発明のプロジェクト管理システムにおいて、前記開発人員情報データベースが保持する開発人員の開発能力に関する情報には、開発言語、開発効率、所定基準によるスキルレベル、バグ率、バグ対策工数比などが含まれていることを特徴とする。また、前記開発人員情報データベースが保持する開発人員のスケジュールに関する情報には、現在担当している作業、当該作業の開発開始予定日及び開発終了予定日、当該作業の進捗状況などが含まれていることを特徴とする。
【００１７】
本発明のプロジェクト管理システムにおいて、前記対策判定手段において、遅延が発生したプロジェクトについて、前記遅延を挽回するために必要な作業量を処理するのに適した対策が存在しないと判定した場合には、前記対策提案手段は、所定の警告をユーザに提示することを特徴とする。
【００１８】
本発明は、また、コンピュータ上で上記のプロジェクト管理システムを実現するためのプログラムとして、開発人員の開発能力及びスケジュールに関する情報を保持する開発人員情報データベースと、開発対象であるプロジェクトの開発規模、開発スケジュール及び進捗状況に関する情報を保持するプロジェクト情報データベースとを参照して、プロジェクト開発の管理を行うプログラムであって、前記プロジェクト情報データベースを参照して、プロジェクトの開発規模、開発スケジュール及び進捗状況に基づいて、プロジェクト開発における遅延の発生を判定する遅延判定ステップと、遅延が発生したプロジェクトについて、前記プロジェクト情報データベースを参照して、当該プロジェクトの開発規模、開発スケジュール及び進捗状況から遅延を挽回するために必要な作業量を計算する遅延挽回作業量計算ステップと、前記開発人員情報データベースを参照して、開発人員の開発能力及びスケジュールから、前記遅延を挽回するために必要な作業量を処理するのに適した対策を判定する対策判定ステップと、判定された対策をユーザに提示する対策提案ステップとを含み、前記対策には、当該プロジェクトの開発人員に残業を指示すること、予備の開発人員を追加すること、並びに優先作業の指示を行うことのうち少なくとも１つが含まれていることを特徴とするプログラムを提供するものである。
【発明の効果】
【００１９】
以上、説明したように、本発明のプロジェクト管理システムによれば、作業遅延が発生した場合に、プロジェクト管理者に対し、遅延挽回のために客観的に適切な対策を提案することが可能となる。これにより、プロジェクト管理効率が向上される。
【発明を実施するための最良の形態】
【００２０】
以下、添付図面を参照しながら、本発明のプロジェクト管理システムを実施するための最良の形態を詳細に説明する。図１〜図２０は、本発明の実施の形態を例示する図であり、これらの図において、同一の符号を付した部分は同一物を表わし、基本的な構成及び動作は同様であるものとする。
【００２１】
プロジェクト管理システムの構成
図１は、本実施形態のプロジェクト管理システムの全体構成を概略的に示す機能ブロック図である。図１において、プロジェクト管理システムは、プロジェクト管理者又は開発作業者である社員のユーザ端末１０１と、社員の氏名、所属等の基本情報を含む社員基本情報ＤＢ１０２と、各社員のスキルレベルに関する情報を含む社員スキル情報ＤＢ１０３と、各社員について、現在従事している作業の期間や作業現況、並びに出勤状況に関する情報を含む社員スケジュール情報ＤＢ１０４と、プロジェクトの名称、担当者、作業内容、予算、進捗状況等に関する情報を含むプロジェクトＤＢ１０５と、社員基本情報ＤＢ１０２、社員スキル情報ＤＢ１０３及び社員スケジュール情報ＤＢ１０４に所定の情報を登録する社員情報登録部１１０と、各種データベース１０２〜１０５から所定の条件に合致する社員を検索する社員検索部１１１と、作業の遅延を挽回するために投入されるべき人員を提案する遅延対策処理部１１２と、開発作業の進捗状況をプロジェクトＤＢ１０５から取得しユーザに提示する進捗状況処理部１１３と、開発の実績をモジュール単位又はプロジェクト単位でプロジェクトＤＢ１０５に登録する開発実績登録部１１４と、プロジェクトに関する情報及びそのプロジェクトで作成するモジュールに関する情報をプロジェクトＤＢ１０５に登録するプロジェクト登録部１１５と、モジュールの複雑さを判定するモジュール複雑さ判定処理部１１６とを含んでいる。
【００２２】
図２は、社員基本情報ＤＢ１０２が有する社員基本情報テーブルのデータ構成を示す図である。社員基本情報テーブルには、社員を識別するための社員番号、氏名、連絡先であるメールアドレス、所属部署、賃金（時給）などが含まれている。
【００２３】
図３は、社員スキル情報ＤＢ１０３が有する社員スキル情報テーブルのデータ構成を示す図である。社員スキル情報テーブルには、各社員について、スキルレベル及び単位時間あたりの平均開発能力が含まれている。スキルレベルは、社員の開発スキルを示す数値化された客観的な指標であり、ここでは経済産業省が定めたＩＴＳＳ（Skill Standards for ITprofessional :ＩＴスキル標準）による７段階のスキルレベルを採用している。また、社員の時間あたりの平均開発能力を示す客観的な指標として、開発言語、開発効率、バグ対策工数比（開発に掛かった全工数のうちバグ対策にかかった工数の比率）、バグ率（１０００ステップ中に発生する平均バグ件数）などを採用している。
【００２４】
図４は、社員スケジュール情報ＤＢ１０４が有する社員スケジュール情報テーブルのデータ構成を示す図である。社員スケジュール情報テーブルには、各社員が現在従事している業務の内容とそのスケジュールや作業現況などの情報が含まれている。尚、作業現況については、作業中、完了、未開始等のステータスのみを含むようにしてもよい。図４に示すように進捗状況をパーセンテージで表示する場合には、後述するモジュール作成進捗状況テーブルの進捗率データなどを利用して計算を行うものとする。
【００２５】
図５は、プロジェクトＤＢ１０５が有するプロジェクト管理テーブルのデータ構成を示す図である。プロジェクト管理テーブルには、各プロジェクトについて、プロジェクト名、開発言語、開発規模、工数、予算、担当者の社員番号などのプロジェクトに関する基本的な情報が含まれている。また、図示しないが、プロジェクト管理テーブルには、プロジェクト開発作業における各作業工程間の順序関係に関する情報を含んでいる。この情報は、例えば、ＰＥＲＴ（Program Evaluation and Review Technique）などに基づいた情報である。
【００２６】
図６は、プロジェクトＤＢ１０５が有するモジュール情報テーブルのデータ構成を示す図である。モジュール情報テーブルには、各プロジェクトにおいて作成されるモジュールに関する情報が含まれている。本プロジェクト管理システムでは、特に、モジュール情報テーブルにおいて各モジュールの作成の難易度を数値で示す「複雑さ」を含んでいることを特徴としている。また、上記のプロジェクト管理テーブルと同様に、モジュール作成作業における各作業工程間の順序関係に関する情報を含んでいるものとする。
【００２７】
図７は、プロジェクトＤＢ１０５が有するモジュール作成進捗状況テーブルのデータ構成を示す図である。プロジェクト進捗状況テーブルには、各モジュールについて、予定されている開発スケジュールと実際の開発進行具合とが含まれている。また、作業遅延が生じていることを示す遅延フラグ及び遅延原因に関する情報が含まれている。例えば、現時点で開発終了予定日を経過しているのにもかかわらず開発が終了していないモジュールについては遅延フラグをオンにすることができる。
【００２８】
図８は、プロジェクトＤＢ１０５が有する遅延原因テーブルのデータ構成を示す図である。遅延原因テーブルには、作業遅延発生の原因とその対策時間とが含まれている。対策時間は、見積り値と実績値とを含んでいるのが好ましい。この場合、対策時間の実績値については、実際に対策を行った後にかかった時間を入力するものとし、複数の入力があったときはその平均値を保持すればよい。
【００２９】
尚、図２〜図８に示した各テーブルのデータ構成は例示に過ぎず、必要に応じて正規化や構成変更を加えたものを利用してもよい。
【００３０】
プロジェクト管理システムの動作
図９は、本実施形態のプロジェクト管理システムを利用して開発作業を行う際の全体的な処理の流れを示すフローチャートである。図９において、まず、プロジェクト管理者あるいは開発担当者は、プロジェクト登録部１１５により、開発プロジェクトとそのプロジェクトで作成するモジュールに関する情報をプロジェクトＤＢ１０５のプロジェクト管理テーブル及びモジュール情報テーブルに登録し（ステップ９０１）、さらにモジュールごとに開発担当者及び開発予定をモジュール作成進捗状況テーブルに登録する（ステップ９０２）。また、モジュールを登録する際に、モジュール複雑さ判定処理部１１６により各モジュールの複雑さを判定し、その結果をモジュール情報テーブルに登録する（ステップ９０３）。
【００３１】
ここで、モジュールの複雑さを判定する手法について説明する。本実施形態のプロジェクト管理システムにおいて、モジュール複雑さ判定処理部１１６は、ファンクションポイント法によりモジュールの複雑さを判定する。まず、モジュールを構成するデータを内部論理ファイル、外部インターフェースファイル、外部入力、外部出力、外部照会の５つのデータタイプに分類し、それぞれの個数を予め計数しておく。外部入力、外部出力及び外部照会については外部の参照ファイル数と項目数（データ要素数）とに基づいて重み付けを行い、内部論理ファイル及び外部インターフェースファイルについてはレコード種類数と項目数とに基づいて重み付けを行う。重み付けはデータタイプごとに数値化される（重み付け係数）。重み付けの例を図１０に示す。モジュール構成する５種類のデータそれぞれについて、その個数と重み付け係数とを掛け合わせたものの合計値を粗ファンクションポイントとする。一方、モジュールのシステム特性に基づいて補正係数を求める。補正係数算出の基礎となるシステム特性の項目の例を図１１に示す。粗ファンクションポイントに補正係数を掛け合わせたものをファンクションポイントとする。このファンクションポイントをモジュールの複雑さとしてプロジェクト登録部１１５に出力する。以上説明した手法によりモジュールの複雑さを計算する例を図１２に示す。
【００３２】
続いて、開発作業が開始されると、プロジェクト管理者又は開発担当者は、開発実績登録部１１４により、開発作業の成果物の実績をプロジェクトＤＢ１０５のモジュール作成進捗状況テーブルに登録する（ステップ９０４）。開発実績として入力されるデータは、例えば、工数や進捗率などの数値である。また、開発実績登録部１１４は、入力された実績データを基に、当該モジュールの開発終了日を予測し、モジュール作成進捗状況テーブルに書き込みを行う。
【００３３】
入力された開発実績データからモジュールの開発終了日を予測するには、開発担当者の作業に対する理解の度合い（以下、簡単のために「理解度」と略す）を考慮した上で、今後の開発作業の進み具合を予測する。通常、未経験の作業を実施するとその経験を理解し、慣れる（理解度が上昇する）までに時間がかかる。しかし、経験と慣れにより理解度は次第に上昇するとともに成果物の作成量も増加し、作業時間が減少する。図１３及び図１４このような一般的な開発者の作業に対する理解度の推移を示すグラフである。
【００３４】
図１３において、作業完了時の成果物作成量をＶＦ（開発規模[KS]で表すことができる）とし、γを定数（過去の実績より決定された定数）として、時間をｔ（現時点での開発済み工数により表すことができる）とすると、成長曲線Ｖｔは以下の式で表される。
【００３５】
【数１】
2006126898.tif 000003
【００３６】
また、図１４において、作業の理解に関する成長の速さの目安となる成長速度を描いた成長率曲線は、式（１）を時間ｔで微分した以下の式により表される。
【００３７】
【数２】
2006126898.tif 000004
【００３８】
式（２）によれば、今後の成果物の作成量を予測する指標となるＶｔ＋Ｖ△ｔ＝Ｖｔ＋△ｔの値は、任意の時点ｔにおける成果物の作成量Ｖｔと、作業完了時の成果物作成量ＶＦ及び任意の時点ｔにおける成果物作成量Ｖｔの差ＶＦ−Ｖｔとに比例し、作業完了時ＶＦに反比例することが分かる。
【００３９】
開発実績データの入力により、プロジェクトＤＢ１０５のモジュール作成進捗状況テーブルが更新されると、進捗状況処理部１１３は、更新されたモジュールについて、開発終了予定日と開発終了予想日や進捗率とを比較して進捗状況を判定する（ステップ９０５）。ここで、現時点で開発終了予定日を経過しているにもかかわらず開発作業が終了していない場合や、開発終了予想日が開発終了予定日よりも後の日付になっている場合などには、当該モジュールの遅延フラグをオンにする。あるいは、残日数（現時点から開発終了予定日までの日数）と進捗率とから作業が遅延しているかどうかを判定することもできる。進捗状況処理部１１３は、進捗状況の判定結果をユーザ端末１０１上に表示する（ステップ９０６）。
【００４０】
モジュール作成作業の進捗状況をグラフで表示する例を図１５に示す。このグラフでは、成果物の作成量縦軸にとり、時間を横軸にとっている。プロジェクト管理者又は開発担当者は、このグラフを見ることにより、モジュールごとあるいはプロジェクト全体について、計画値と実績値とがどれだけ乖離しているかを視覚的に把握することができる。また、今後の予測値も視覚的に確認することができる。尚、進捗状況の表示形式はグラフ表示に限定されるわけではなく、表形式などで表示してもよい。
【００４１】
さらに、進捗状況処理部１１３は、プロジェクト全体の開発予定から、作業の遅延が発生しているかどうかを判定する（９０７）。この遅延発生の判定条件は、プロジェクト管理者又は開発担当者が予め設定してあるものとする。例えば、図１６に示すような画面において判定条件の設定を行うことができる。ステップ９０７において、遅延が発生していると判定した場合には、遅延対策処理部１１２により所定の遅延対策処理を行う（ステップ９０８）。
【００４２】
以後、全ての成果物が作成完了するまで上記のステップ９０４からステップ９０８までの処理が繰り返される（ステップ９０９）。
【００４３】
作業遅延対策の処理
図１７は、図９のステップ９０８において行われる遅延対策処理の詳細を示すフローチャートである。図１７において、遅延対策処理部１１２は、まず、プロジェクトＤＢ１０５のモジュール作成進捗状況テーブルから、処理の遅延を挽回するのに必要な作業量を見積もる計算を行う（ステップ１７０１）。この作業量は、例えば、標準的な能力の開発担当者１人が１時間に行う作業量を単位作業量として[人・時間]という単位で表すことができる。以下のステップでは、この必要作業量に基づいて遅延挽回の対策を決定し、プロジェクト管理者又は開発担当者に提案することになる。遅延挽回対策を決定する基準となる条件は、プロジェクト管理者又は開発担当者が予め設定してあるものとする。例えば、図１８に示すような画面において条件の設定を行うことができる。なお、開発担当者の残業に関する条件については、プロジェクト管理者又は開発担当者自身が状況に応じて適時変更するものとする。例えば、疲れにより作業量が落ちていたり、他の作業の割り込みが発生していたりする場合などには、残業可能な時間を減らす必要がある。
【００４４】
遅延挽回のための対策を決定するために、遅延対策処理部１１２は、開発担当者が残業することにより遅延挽回が可能であるかどうかを判定する（ステップ１７０２）。この判定は、遅延挽回に必要な作業量と予め設定してある開発担当者の残業に関する条件とを比較することにより行うことができる。可能であると判定した場合には、開発担当者に残業を指示する提案を行う（ステップ１７０３）。この提案は、ユーザ端末１０１上に表示される。
【００４５】
残業によっては遅延挽回が可能でないと判定した場合には、遅延対策処理部１１２は、人員を追加するための予算があるかどうかを判定する（ステップ１７０４）。この判定は、遅延挽回に必要な作業量と予め設定してある開発予算に関する条件とを比較することにより行うことができる。可能であると判定した場合には、遅延挽回に必要な作業量とともに遅延挽回作業に割り当てる社員の検索の指示を社員検索部１１１に出力する。社員検索部１１１は、社員基本情報ＤＢ１０２、社員スキル情報ＤＢ１０３及び社員スケジュール情報ＤＢ１０４から、遅延挽回作業を引き受け可能な社員を検索し、その結果を遅延対策処理部１１２に返す（ステップ１７０５）。遅延対策処理部１１２は、それらの社員を開発人員に追加するよう提案を行う（ステップ１７０６）。ステップ１７０５における検索方法については後に詳しく説明する。
【００４６】
遅延挽回作業を引き受け可能な社員の検索結果を表示する画面例を図１９に示す。プロジェクト管理者等は、ユーザ端末１０１に表示された検索結果画面を見て、遅延挽回作業に任ずる社員を決定することができる。尚、社員のスキルレベルによって作業効率が異なり得るため、図２０に示すような作業時間換算表に基づいて、遅延挽回作業に従事する社員の作業時間を見積もるのが好ましい。図２０に示す係数は、プロジェクトＤＢ１０５等に保持されている過去のデータを用いて算出した値であるが、その算出方法としては、作業の種類毎に各開発担当者の作業時間の実績値を集計し、平均や標準偏差などから算出する方法などがある。
【００４７】
遅延挽回作業のために人員追加を行う予算がない場合には、遅延対策処理部１１２は、優先作業の指示により遅延挽回が可能であるかどうかを判定する（ステップ１７０７）。例えば、ボトルネックとなっている作業工程がある場合には、他の作業工程の人員を一時的にその作業工程に割り当てて作業を促進することにより、遅延挽回が可能となることがある。遅延対策処理部１１２は、プロジェクトＤＢ１０５のプロジェクト管理テーブルやモジュール情報テーブルなどを参照して、そのような対処が可能かどうかを判定することができる。優先作業の指示により遅延挽回が可能であると判定した場合には、優先すべき作業工程を提示する画面をユーザ端末１０１に表示する（ステップ１７０８）。
【００４８】
以上のいずれの手段によっても遅延挽回が可能でないと判定した場合には、遅延対策処理部１１２は、遅延挽回の対策ができないという警告を示す画面をユーザ端末１０１に表示する（ステップ１７０９）。
【００４９】
ここで、上記のステップ１７０５において、社員基本情報ＤＢ１０２、社員スキル情報ＤＢ１０３及び社員スケジュール情報ＤＢ１０４から、遅延挽回作業を引き受け可能な社員を検索する方法について、具体例を挙げて説明する。
【００５０】
社員検索部１１１は、各社員が以下の要件を全て満たしているかどうかに基づいて遅延挽回作業の引き受け可否を判定する。
（ａ）他作業を支援する余裕はあるか
（ｂ）必要な開発言語及びスキルに関する条件を満たしているか
（ｃ）必要コストは予算条件の範囲内に収まるか
（ｄ）当該社員の本来の作業は予定期間内に終了するか
【００５１】
要件（ａ）及び（ｄ）については、社員スケジュール情報ＤＢ１０４の社員スケジュール情報テーブルを参照して判定する。例えば、遅延しているプロジェクト又はモジュールの作業終了予定日、開発規模、進捗率、使用工数などに基づき、当該社員が一日の作業時間内（残業を含まない）で作業を続けた場合に予定日までに作業が終了すると予測できる場合には、この要件を満たしていると判定することができる。
【００５２】
要件（ｂ）については、社員スキル情報ＤＢ１０３の社員スキル情報テーブルを参照して判定する。例えば、当該社員の開発言語、スキルレベル、開発効率等が遅延しているプロジェクト又はモジュールの開発作業を行うのに適しているかどうかを判定すればよい。尚、判定にあたっては、図２０に示すような係数を考慮するのが望ましい。
【００５３】
要件（ｃ）については、プロジェクトＤＢ１０５のプロジェクト管理テーブルを参照して判定する。例えば、遅延しているプロジェクト又はモジュールの作業終了予定日、開発規模、進捗率、使用工数などに基づき、当該社員に任ずるべき遅延挽回作業量を見積り、これに当該社員の賃金を掛けると、当該社員についての必要コストが算出される。
【００５４】
上記の要件（ａ）〜（ｄ）を全て満たしている社員が遅延挽回作業を引き受け可能な社員として提示されることになる。
【００５５】
以上、本発明のプロジェクト管理システムについて、具体的な実施の形態を示して説明したが、本発明はこれらに限定されるものではない。当業者であれば、本発明の要旨を逸脱しない範囲内において、上記各実施形態又は他の実施形態にかかる発明の構成及び機能に様々な変更・改良を加えることが可能である。
【産業上の利用可能性】
【００５６】
本発明のプロジェクト管理システムは、記憶手段、入力手段、表示手段等を備えたコンピュータ上で実現され得るものであり、プロジェクト開発の管理という情報処理が上記の記憶手段、入力手段、表示手段等を用いて具体的に実現されるものであるから、産業上利用することができる発明である。
【図面の簡単な説明】
【００５７】
【図１】本発明のプロジェクト管理システムの全体構成を概略的に示す機能ブロック図である。
【図２】図１に示す社員基本情報ＤＢが有する社員基本情報テーブルのデータ構成を示す図である。
【図３】図１に示す社員スキル情報ＤＢが有する社員スキル情報テーブルのデータ構成を示す図である。
【図４】図１に示す社員スケジュール情報ＤＢが有する社員スケジュール情報テーブルのデータ構成を示す図である。
【図５】図１に示すプロジェクトＤＢが有するプロジェクト管理テーブルのデータ構成を示す図である。
【図６】図１に示すプロジェクトＤＢが有するモジュール情報テーブルのデータ構成を示す図である。
【図７】図１に示すプロジェクトＤＢが有するモジュール作成進捗状況テーブルのデータ構成を示す図である。
【図８】図１に示すプロジェクトＤＢが有する遅延原因テーブルのデータ構成を示す図である。
【図９】図１に示すプロジェクト管理システムを利用して開発作業を行う際の全体的な処理の流れを示すフローチャートである。
【図１０】モジュールの複雑さ判定処理において用いられるデータタイプ別の重み付けの例を示す図である。
【図１１】モジュールの複雑さ判定処理において用いられる補正係数を算出する基礎となるシステム特性の項目の例を示す図である。
【図１２】図１０及び図１１に示す判定基準を用いてモジュールの複雑さを計算する例を示す図である。
【図１３】一般的な開発者の作業に対する理解度の推移を成長曲線で示すグラフである。
【図１４】一般的な開発者の作業に対する理解度の推移を成長率曲線で示すグラフである。
【図１５】モジュール作成作業の進捗状況をグラフで表示する例を示す図である。
【図１６】図１に示すプロジェクト管理システムの進捗状況処理部により遅延発生の判定条件を設定する画面例を示す図である。
【図１７】図９のステップ９０８において行われる遅延対策処理の詳細を示すフローチャートである。
【図１８】図１に示すプロジェクト管理システムの遅延対策処理部により遅延挽回対策を決定する基準となる条件を設定する画面例を示す図である。
【図１９】図１に示すプロジェクト管理システムの遅延対策処理部により遅延挽回作業を引き受け可能な社員の検索結果を表示する画面例を示す図である。
【図２０】開発担当者のスキルレベルと作業時間との換算表を示す図である。
【符号の説明】
【００５８】
１０１  ユーザ端末
１０２  社員基本情報ＤＢ
１０３  社員スキル情報ＤＢ
１０４  社員スケジュール情報ＤＢ
１０５  プロジェクトＤＢ
１１０  社員情報登録部
１１１  社員検索部
１１２  遅延対策処理部
１１３  進捗状況処理部
１１４  開発実績登録部
１１５  プロジェクト登録部
１１６  モジュール複雑さ判定処理部
【図１】
2006126898.tif 000005
【図２】
2006126898.tif 000006
【図３】
2006126898.tif 000007
【図４】
2006126898.tif 000008
【図５】
2006126898.tif 000009
【図６】
2006126898.tif 000010
【図７】
2006126898.tif 000011
【図８】
2006126898.tif 000012
【図９】
2006126898.tif 000013
【図１０】
2006126898.tif 000014
【図１１】
2006126898.tif 000015
【図１２】
2006126898.tif 000016
【図１３】
2006126898.tif 000017
【図１４】
2006126898.tif 000018
【図１５】
2006126898.tif 000019
【図１６】
2006126898.tif 000020
【図１７】
2006126898.tif 000021
【図１８】
2006126898.tif 000022
【図１９】
2006126898.tif 000023
【図２０】
2006126898.tif 000024