(57)【要約】【課題】システム開発等のプロジェクトにおいて発生しうる超過コストを客観的に予測する。【解決手段】システム開発プロジェクト超過コスト予想装置１００は、複数の大フェーズおよび複数の小フェーズに分割されたプロジェクトにおいて発生が予想される超過コストを算出する。この装置１００は、小フェーズに関する予定情報と実績を示す進捗情報をユーザから受け付けるユーザインタフェイス機能１１０と、複数の小フェーズそれぞれの予定情報と進捗情報とを比較して、複数の小フェーズそれぞれについて予想される超過コストを算出し、算出された超過コストを、複数の小フェーズそれぞれが対応づけられた大フェーズごとに集計して、複数の大フェーズそれぞれについて予想される超過コストを算出する超過コスト算出機能１３０とを実現する。【選択図】図１
2010073040.tif 000002
【特許請求の範囲】
【請求項１】
進行中のプロジェクトについて、そのプロジェクトの進行において発生が予想される超過コストを算出するコンピュータプログラムであって、
前記プロジェクトは所定の基準で設定された作業単位である複数の大フェーズに分割され、それぞれの大フェーズは前記プロジェクトにおいて任意に設定された作業単位である複数の小フェーズに分割されており、
作業者が作業すべき小フェーズにおける予定情報と、その小フェーズに対する作業者による作業実績を示す進捗情報とをユーザから受け付ける機能と、
前記予想される超過コストの算出をユーザから要求されたとき、前記複数の小フェーズそれぞれの予定情報と進捗情報とを比較して、前記複数の小フェーズそれぞれについて予想される超過コストを算出する機能と、
前記複数の小フェーズそれぞれについて予想される超過コストを、前記複数の小フェーズそれぞれが対応づけられた大フェーズごとに集計して、前記複数の大フェーズそれぞれについて予想される超過コストを算出する機能と、
前記複数の大フェーズそれぞれについて予想される超過コストを、前記プロジェクトの進行において発生が予想される超過コストとして前記ユーザに通知する機能と、
をコンピュータに実現させるための超過コスト算出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理技術であって、特に、ユーザのシステム開発を支援する超過コスト算出プログラムに関する。
【背景技術】
【０００２】
システム開発プロジェクトでは、開発対象の難易度、開発体制（プロジェクトマネージャー、メンバーのスキルやチームワークや品質管理体制など）、開発期間や、さらに開発を行う側と開発を委託する側の関係性、開発時の品質など多岐の要因によって当初予定していた日程、コスト、品質でシステムを完成させ安定稼動させることがしばしば困難となる。その結果、開発を委託する側、開発する側双方にとって不幸な事態となる。そこで事前にできるだけ客観的にこれら問題を発見し、問題が大きくなる前に対策をほどこし、できるだけ当初の予定通りにシステムを安定稼動させたいという要望が強い。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
システム開発のプロジェクトでは、各種要因によって当初予定していた日程、コスト、品質でシステムを完成させ安定稼動させることがしばしば困難となる問題がある。特に開発側の問題点として次のようなものがあると本発明者は考えた。
【０００４】
１．見積もり段階で、客観的に将来発生しうる超過コストのリスクを見積もることが困難である問題。
２．開発途中での今後発生しえる超過コストを客観的見積もることが困難であることから、コスト増加を招いてしまう状況の把握がおくれ、また効果的な対処方法が曖昧になり、さらなる超過コストを発生させてしまう問題。
３．多数のシステムを平行に開発した場合にコストの増加を招いてしまいそうなプロジェクトを客観的に早い段階で見つけることがむずかしく、対処が遅れさらなる超過コストを発生させてしまう問題、さらに開発中の複数のシステムをよりコスト超過を招かないように遂行するための方策が客観的に判断できない問題。
４．システムを顧客にリリース後に発生するバグ対策費を事前に客観的に予想することが困難である問題。
【０００５】
本発明は、本発明者の上記着目に基づいて完成された発明であり、その主たる目的は、システム開発等のプロジェクトにおいて発生しうる超過コストを客観的に予測する技術を提供することである。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様の超過コスト算出プログラムは、進行中のプロジェクトについて、そのプロジェクトの進行において発生が予想される超過コストを算出するコンピュータプログラムであって、プロジェクトは所定の基準で設定された作業単位である複数の大フェーズに分割され、それぞれの大フェーズはプロジェクトにおいて任意に設定された作業単位である複数の小フェーズに分割されており、作業者が作業すべき小フェーズにおける予定情報と、その小フェーズに対する作業者による作業実績を示す進捗情報とをユーザから受け付ける機能と、予想される超過コストの算出をユーザから要求されたとき、複数の小フェーズそれぞれの予定情報と進捗情報とを比較して、複数の小フェーズそれぞれについて予想される超過コストを算出する機能と、複数の小フェーズそれぞれについて予想される超過コストを、複数の小フェーズそれぞれが対応づけられた大フェーズごとに集計して、複数の大フェーズそれぞれについて予想される超過コストを算出する機能と、複数の大フェーズそれぞれについて予想される超過コストを、プロジェクトの進行において発生が予想される超過コストとしてユーザに通知する機能と、をコンピュータに実現させる。
【０００７】
なお、以上の構成要素の任意の組合せ、本発明の表現を装置、方法、システム、プログラム、プログラムを格納した記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明を実施するための最良の形態】
【０００８】
本発明の実施の形態について、その構成を説明する前にまず概要を説明する。
本実施の形態で提案するシステム開発プロジェクト超過コスト予想装置は、システムの開発プロジェクトの見積もり段階からリリース後のバグ対応までの各工程での予定および開発成果物の量や品質を表す値を逐次蓄積し、それらの情報を基に、プロジェクトの現状での超過コスト、さらに今後発生するであろう超過コストの予想を行う。この予想においては、超過コストを予想すべき開発プロジェクトに関する情報に基づく予想と、過去の開発プロジェクトの実績に基づく予想とが適宜組み合わされる。予想される超過コストをユーザが確認できることにより、ユーザは見積もりの精度を向上でき、また、超過コストを抑制する方策を事前に検討しやすくなる。
【０００９】
また、このシステム開発プロジェクト超過コスト予想装置は、プロジェクトマネージャーや開発者の能力を算出でき、その情報を基に超過コストの予想を行うことが可能である。またこの超過コストの予想を行う機能を利用し、システム開発プロジェクトの見積もり段階、開発段階およびリリース後のバグ対応段階にて逐次予想超過コストを求め、超過コストが発生しそうなプロジェクトを早期に発見可能にする。さらに、プロジェクトマネージャーやメンバーの変更を含めた予定を仮に変更してみて再度超過コストを予想することによって、適切な対処方法を求めることを支援する。
【００１０】
図１は、本発明の実施の形態に係わるシステム開発プロジェクト超過コスト予想装置の構成を示す機能ブロック図である。これらの構成は、ハードウェアコンポーネントでいえば、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
【００１１】
システム開発プロジェクト超過コスト予想装置１００は、ユーザインタフェイス機能１１０、超過コスト表示機能１２０、超過コスト算出機能１３０、類似プロジェクト検索機能１７０、プロジェクトマネージャーケーパビリティ算出機能１８０、メンバーケーパビリティ算出機能１９０、データベース入力機能３００を備える。
【００１２】
データベース２００は、システム開発のプロジェクト開始前の時点での予定、システムの開発（リリース後のバグ対応期間も含む）段階での任意の複数の時点での状態に関する情報およびこの装置で算出した情報を逐次蓄積する。そのためにデータベース２００には、システム開発中の情報のみならず、すでに開発の終了したシステムの情報も蓄積される。
【００１３】
また、データベース２００は、プロジェクトマネージャー、メンバーと言った人間系の情報も保持する。なおプロジェクトマネージャーとはプロジェクトを遂行する責任者（リーダー）をあらわす。なお１プロジェクトマネージャーの実態は１人の個人のみならず、複数人によるチームや、１つの部門、組織、会社さらにそれらを組み合わせた形態でも構わない。またメンバーとはシステム開発での設計、プログラミング、検査等の実際の業務を行う者を指す。なお１メンバーの実体は１人の個人のみならず、複数人によるチームや、１つの部門、組織、会社さらにそれらを組み合わせた形態でも構わない。
【００１４】
なおデータベース２００は、システム開発プロジェクト超過コスト予想装置１００からの検索、入力、参照が可能であれば、その物理的な配置、形態については特に制限はないものとする。
【００１５】
ユーザインタフェイス機能１１０は、ユーザからの入力処理やユーザへの情報表示、出力などユーザインタフェイス全般に関する処理を担当する。
【００１６】
超過コスト表示機能１２０は、ユーザインタフェイス機能１１０を介したユーザの操作にしたがい、超過コストに関する情報を各種表示形態に編集し、ユーザインタフェイス機能１１０を介してユーザに提供する。また、この際に超過コスト表示機能は、本装置が動いているコンピュータでの集計、計算作業以外に、データベース２００での集計、計算機能も利用する。
【００１７】
超過コスト算出機能１３０は、データベース２００に蓄積されている情報およびユーザインタフェイス機能１１０を介して入力された情報を元に超過コストを算出する。この超過コストには、大きく分けてつぎの２つの超過コストがある。１つは、すでにシステム開発の作業をおこなった部分について実際に発生した超過コスト（以下、この超過コストを「現状超過コスト」と称す）である。また、もう１つの超過コストは、まだ実際には作業を行っていない部分において将来発生するであろうと予想される超過コストである（以下、こちらの超過コストを「予想超過コスト」と称す）。
【００１８】
そこでこの超過コスト算出機能１３０は、この現状超過コストを算出する現状超過コスト算出機能１４０と、予想超過コストを算出する予想超過コスト算出機能１５０を有する。さらに予想超過コスト算出機能１５０は、データベース２００に登録されている本来の予定の一部または全てを、一時的に変更する予定仮変更機能１６０を有する。また予想超過コスト算出機能１５０は、データベース２００に登録されている本来の予定によって予想超過コストを算出するだけでなく、この予定仮変更機能１６０によって一時的に変更した予定による予想超過コストの算出も可能である。この予定仮変更機能１６０とこの一時的に変更した予定から求めた予想超過コストを使ってユーザは例えば、超過コストが増加して問題となっているプロジェクトについて、仮にその予定を変更して予想コストを算出してみることを繰り返し試みる。これにより、予想超過コストを減らすことができる変更事項を見つけることが可能となり、より的確にプロジェクトを遂行することが可能となる。
【００１９】
類似プロジェクト検索機能１７０は、データベース２００に蓄積されているプロジェクトに関するデータからユーザまたは各機能が参照すべき的確な１つまたは複数のプロジェクトを探し出す。本機能はデータベース２００に蓄積されている情報を参照する色々な場面で利用される。本機能が利用される機能については各機能の詳しい説明の中で述べる。
【００２０】
プロジェクトマネージャーケーパビリティ算出機能１８０は、データベース２００に蓄積されている情報からプロジェクトマネージャーケーパビリティと称するプロジェクトマネージャーがプロジェクトを担当したときの成績（評価）を表した１つの指標を求める。この指標は各プロジェクトマネージャーのプロジェクト遂行能力を類推する１つの指標となり、本実施形態では予定超過コストを算出する場合に利用する。なお本装置でのプロジェクトマネージャーケーパビリティの特徴としては、このプロジェクトマネージャーケーパビリティの数値にはプロジェクトマネージャーの個人的な成果ではなく、開発時のメンバーとの関係、開発環境などさまざまな条件を含んだ結果の数値であることである。なおプロジェクトマネージャーケーパビリティ（以後「ＰＭケーパビリティ」と称す）の算出方法の詳しい説明は後述する。
【００２１】
メンバーケーパビリティ算出機能１９０は、データベース２００に蓄積されている情報からメンバーケーパビリティと称するメンバーの業務遂行力を表した１つの指標を求める。なおこのメンバーケーパビリティは本実施形態では、予定仮変更機能１６０によってメンバーを変更するときなどその新旧のメンバーを比較する場合などで利用する。なおメンバーケーパビリティの算出方法の詳しい説明は後述する。
【００２２】
データベース入力機能３００は、データベース２００にプロジェクト、プロジェクトマネージャー、メンバーに関する情報を入力、変更する。なおデータベース入力機能３００の一部または全部の機能が他のシステムによって代用できる場合は、本機能の代用可能な機能の一部または全部を省略できる。なおデータベース入力機能３００は、入力データの違いによって、プロジェクトに関する情報を入力、変更するプロジェクト情報入力機能３１０とプロジェクトマネージャーやメンバーといった人間系の情報を入力、変更するプロジェクトマネージャー、メンバー情報入力機能３２０を有する。
【００２３】
図２は、システム開発を行うプロジェクトの予定および進捗状況を本装置でどのように扱うかを説明する図である。まずシステム開発のプロジェクトの各工程をフェーズと称するブロックに分けて扱う。さらにフェーズはさらに細かい作業内容を表すサブフェーズと称する複数のブロックに分けて扱う。なおフェーズの終了時点を特にマイルストーンと称す。
【００２４】
それではフェーズ、サブフェーズ、マイルストーンについて詳しく説明する。
プロジェクトをどのようなフェーズに分割するかは本装置上での制限はないが、本装置の導入先では事前に実際のシステム開発の工程をフェーズに割り当てておく必要がある。例えば、基本設計工程をフェーズ１、詳細設計工程をフェーズ２、プログラミング工程をフェーズ３、単体テスト工程をフェーズ４、結合テスト工程をフェーズ５、システムテスト工程をフェーズ６、初期リリース期間をフェーズ７というように１つの工程を１つのフェーズとする。また事前に決めた各フェーズの工程を本装置であつかう全てのプロジェクトで共通的に使用しなけれならない。このことによって、規模・開発期間など条件の異なる複数のプロジェクトについても、各フェーズの終了時点であるマイルストーンでの開発状況を比較可能となる。なお特定のプロジェクトでは省略されるフェーズがあっても構わない。またフェーズの期間は他のフェーズと重複してもよい。このことによって規模の小さいプロジェクトや特殊なプロジェクトなどで必要ないフェーズがあった場合も扱え、さらに次工程のフェーズを先行着手した場合なども扱える。
【００２５】
サブフェーズは各フェーズでの細かい作業内容を表し、本装置ではこのサブフェーズに対して予定を入力しておき、サブフェーズでの任意の複数の時点での進捗状態を入力し、予定との進捗具合を比較することによって進捗状態を入力した時点での超過コストを算出する。またサブフェーズは、フェーズと異なり、異なったプロジェクト間でサブフェーズ同士を比較することはないので、個々のプロジェクトでの個々のフェーズで任意にサブフェーズに規定できる。またフェーズをどのようなサブフェーズに分けるかも特に制限はない。例えば、あるプロジェクトのあるフェーズでは開発者個人単位での作業をサブフェーズに分けて予定や進捗状況を扱ってもよい。また別のフェーズではそのフェーズ全体を１つのサブフェーズとしてまとめて予定や進捗状況を扱ってもよい。また同一のフェーズ内でも開発者個人単位のサブフェーズや、複数の開発者が担当するような大きな単位のサブフェーズなど混在させてもよい。なお、サブフェーズの期間は重複しても構わない。
【００２６】
図３は、データベース入力機能３００の１つの機能ブロックであるプロジェクト情報入力機能３１０の詳細な機能ブロック図である。このプロジェクト情報入力機能３１０はプロジェクトに関する情報をデータベース２００に入力、変更する機能で、さらにプロジェクトの概要的な情報を入力するプロジェクト概要情報入力機能３１１と、プロジェクト、フェーズ、サブフェーズの予定を入力および変更する予定情報入力機能３１２とサブフェーズの進捗状態を逐次入力する進捗情報入力機能３１３と、フェーズ、プロジェクトの開発完了時の結果を入力する結果情報入力機能３１４を有する。これら機能によって入力または変更した情報はデータベース２００に蓄積され、蓄積された情報はユーザインタフェイス機能１１０によって参照できる。
【００２７】
なおプロジェクト概要情報入力機能３１１、結果情報入力機能３１４であつかうプロジェクト概要情報、結果情報は基本的に１回のみの入力であるが、入力後、同機能によって任意の時点で任意の回数変更可能である。なお、この変更は上書き変更となり特に変更履歴はデータベース２００に蓄積されない。また進捗情報は、１つのサブフェーズにおける複数時点で入力するが、１つの時点での入力は基本的に１回のみである。しかしこれについても、入力後、同機能によって任意の時点で任意の回数変更可能である。なお、この変更は上書き変更となり特に変更履歴はデータベース２００に蓄積されない。一方、予定情報は途中で変更される可能性のある情報で、任意の時点で任意の回数予定情報入力機能３１２よって情報の変更が可能である。また本機能による変更は変更履歴としてデータベース２００に蓄積される。
【００２８】
なおセキュリティ対策としてシステムでの入力、表示の履歴を蓄積することは、全くの別問題であり、ここでの機能がセキュリティ対策の機能に制限をもたせるものではないものとする。
【００２９】
ここからは、図３で説明したプロジェクト概要情報入力機能３１１、予定情報入力機能３１２、進捗情報入力機能３１３において入力および変更する情報をプロジェクト、フェーズ、サブフェーズごとに分けていくつかの図を使って説明する。
【００３０】
図４は、サブフェーズに関する各種情報について説明する図である。サブフェーズでは予定および進捗情報を持っており、予定情報は予定情報入力機能３１２にて、進捗情報は進捗情報入力機能３１３によって入力および変更する。なおサブフェーズの予定はサブフェーズの１回目の進捗入力前で、可能な限り作業が始まる前に入力しておき、またもし途中で予定が変更された場合は予定情報入力機能３１２を使って変更した情報を入力する。進捗入力は逐次任意の時点での任意の回数入力する。なお作業の終了は、この進捗入力によって宣言しサブフェーズの作業を完了させる。
【００３１】
サブフェーズの予定情報には予定コスト、担当予定のメンバーＩＤ、分担重み、難易度、進捗入力であつかう任意数の進捗指数の種類とその指数の終了時点での達成目標値、および進捗指数の達成目標値と同数の重視度を少なくとも含む。なお、後に参照して有用な情報を任意に追加できるものとする。
【００３２】
それではまず始めに進捗指数について説明する。進捗指数とは、サブフェーズの作業の達成度を計測するための各種情報の値で、例えば、ドキュメントページ数や、プログラム・ステップ数などの成果物の量を表す数値や、バグ密度やレビュー回数など品質を表す数値である。なお、どんな進捗指数を使うかは任意であり、ユーザが任意に設定可能である。サブフェーズでは事前の予定で、このサブフェーズの進捗入力で入力する進捗指数を決めておき、進捗入力で計測した進捗指数を入力する。なお１つのサブフェーズでは任意の数の進捗指数を入力対象とすることが可能である。
【００３３】
また重視度とは、進捗指数と対になる値で、進捗指数が複数ある場合にどの進捗指数をより重要視するかを表した数値で指定する。なお重視度は任意の整数で、数値が多きほど重要であることを意味することとする。
【００３４】
ではサブフェーズの予定情報の各情報について詳しく説明する。
予定コストは、サブフェーズの作業を完了させるために必要なコストである。
担当予定のメンバーＩＤは、このサブフェーズを担当予定のメンバーを表す。
分担重みは、１つのサブフェーズの作業量が、サブフェーズの属するフェーズ全体から見てどのくらいの割合かを表す数値であり、１つのサブフェーズ分担の割合は、そのサブフェーズの分担重みをフェーズ内のすべての分担重みの合算で割ることによって求める。通常、この分担重みは、そのサブフェーズの予定コストと同じとなる。
【００３５】
難易度はこのサブフェーズの作業の難易度を表す値で、サブフェーズを分類するときの参考データとなる。例えば１つのサブフェーズに着目し、このサブフェーズでの超過コスト割合が他の同一の難易度のサブフェーズでの平均超過コスト割合と比較することによって劣っているかどうか判断したり、難易度ごとのメンバーケーパビリティを求めたりする。
【００３６】
進捗指数・達成目標値は、このサブフェーズでの入力対象とする進捗指数の種類とサブフェーズの完了時点での達成目標値となる。なお、この進捗指数・達成目標値は任意の個数入力可能である。
重視度は進捗指数・達成目標値と対に入力する。そのために進捗指数・達成目標値の個数入力する。
【００３７】
サブフェーズの進捗情報は、進捗日、投入コスト、担当メンバーＩＤ、作業障害パラメータ、進捗指数および完了フラグをすくなくとも含む。なお、後に参照して有用な情報を任意で追加できるものとする。
【００３８】
ではサブフェーズの進捗情報の各情報について詳しく説明する。
進捗日は、進捗入力する進捗指数などの情報を得た日付である。
投入コストは、このサブフェーズでの前回の進捗入力の進捗日からこの進捗入力の進捗日までの間にこのサブフェーズの作業で発生したコストである。なおサブフェーズでの最初の進捗入力の場合は、そのサブフェーズの作業開始からこの進捗入力の進捗日の間で発生したコストとなる。
担当メンバーＩＤは、前回の進捗入力から今回の進捗入力までの作業を行ったメンバーＩＤである。
【００３９】
作業障害パラメータは、前回の進捗入力から今回の進捗入力までの作業上の障害となる各種の問題を表すパラメータである。この作業障害パラメータは本装置では主にメンバーケーパビリティの算出で利用する。なお作業障害パラメータは、システム上では単なる文字列であり、システム運用前に事前にこのパラメータ文字列の意味をユーザが任意に決めておくものとする。例えば、特段問題がない場合はパラメータを空にし、なにか作業上で障害になる問題がある場合はその障害の種類ごとに割り振ってある１文字をパラメータとする。なお、複数の障害がある場合はそれぞれの障害に割り振られている文字をつなげた文字列とする。障害に割り振る文字は、例えば、他の作業の終了を待っている状態の場合には“Ｗ”、メンバーの知識不足がある場合には“Ｐ”、仕様変更がたびたび発生するための後戻りがある場合には“Ｂ”といった具合である。複数の障害がある例としては、メンバーの知識不足および仕様変更がたびたび発生している場合は、“ＰＢ”というパラメータになる。
【００４０】
進捗指数は、この進捗入力の進捗日で測定した値である。なお測定する進捗指数の種類は、予定で入力した進捗指数・達成目標値に従う。
完成フラグは、このサブフェーズの作業が終了したときのみフラグを立てて入力する。なお、この完成フラグを立てた時点での進捗報告の進捗指数が、予定で入力した進捗指数・達成目標値に達していなくても構わないものとする。
なお、後で詳しく説明するが、各進捗入力の時点において、その時点での現状の超過コストや、それ以降の予想超過コストを算出可能である。
【００４１】
図５は、フェーズに関する各種情報について説明する図である。フェーズでは予定および結果情報を持っており、予定情報は予定情報入力機能３１２にて、結果情報は結果情報入力機能３１４によって入力変更する。
【００４２】
なお、フェーズの予定は可能な限りフェーズの作業が始まる前に入力しておき、また、もし途中で予定変更された場合は予定情報入力機能３１２を使って変更した情報を入力する。なお結果入力は、フェーズに含まれるすべてのサブフェーズが完了した時点での入力となり、結果情報として、所属するサブフェーズの集計値を用いたり、ユーザインタフェイス機能１１０によってユーザが直接入力したりする。
【００４３】
フェーズの予定情報にはフェーズＩＤ、予定期間、予定総コスト、担当プロジェクトマネージャーＩＤをすくなくとも含む。なお後に参照して有用な情報を任意で追加できるものとする。
【００４４】
ではフェーズの予定情報の各情報について詳しく説明する。
フェーズＩＤは、事前に決めてあるフェーズの作業工程を表すフェーズＩＤである。このフェーズＩＤによってこのフェーズの作業工程（基本設計、詳細設計など）を表す。
予定期間は、このフェーズの予定の作業期間である。
予定総コストは、フェーズの作業を完了させるために必要なコストの合計値の予定である。なおこの予定総コストは、フェーズに含まれるサブフェーズの予定コストの合計と必ずしも一致する必要はなく、サブフェーズの予定コストの合計以外に間接的なコストなども必要に応じて追加して計上できる。なおこの予定総コストは、ＰＭケーパビリティの算出時に利用する。詳しくは後述する。
担当予定プロジェクトマネージャーＩＤは、このフェーズを担当するプロジェクトマネージャーＩＤである。また担当プロジェクトマネージャーを変更する場合は、この予定情報を変更する。
【００４５】
フェーズでは特に進捗情報を直接入力する必要はなく、サブフェーズの進捗情報を集計することによって把握する。ただし、フェーズに含まれる全てのサブフェーズが完了した時点で総括的な情報を結果情報として結果情報入力機能３１４を用いて入力する。
フェーズの結果情報には総投入コストおよび期間をすくなくとも含む。なお、後に参照して有用な情報を任意で追加できるものとする。
【００４６】
ではフェーズの結果情報の各情報について詳しく説明する。
総投入コストは、このフェーズの作業の開始から完了させるために必要だったコストの合計値である。なおこの総投入コストは、フェーズに含まれるサブフェーズの投入コストの合計と必ずしも一致する必要はなく、サブフェーズの投入コストの合計以外に間接的なコストなども必要に応じて追加して計上できる。なおこの総投入コストは、ＰＭケーパビリティの算出時に利用する。詳しくは後述する。
期間は、実際にこのフェーズの作業に費やした期間である。
【００４７】
図６は、プロジェクトに関する各種情報について説明する図である。プロジェクトでは予定情報、結果情報さらにプロジェクトの概要を表す概要情報を保持している。
なおプロジェクトの概要情報および予定情報は可能な限りプロジェクトの作業が始まる前に入力しておく。なお概要情報の入力は、プロジェクト概要情報入力機能３１１を使用する。また予定情報の入力は、予定情報入力機能３１２を使用し、もし途中で予定変更された場合は、予定情報入力機能３１２を再度使用して変更情報を入力する。なお結果入力は、プロジェクトに含まれるすべてのフェーズが完了した時点での入力となり、結果情報として、所属するフェーズ、サブフェーズの集計値を用いてもよく、ユーザインタフェイス機能１１０を介してユーザが直接入力してもよい。
【００４８】
概要情報は少なくともプロジェクト名を含み、さらに類似プロジェクト検索時に参照したい情報を任意に定義して決める。例えば、システムの扱う対象分野（金融、流通など）や、開発時に利用したツールなどが考えられる。
予定情報は、予定総コスト、予定期間、総規模をすくなくとも含む。なお、後に参照して有用な情報を任意で追加できるものとする。
【００４９】
ではプロジェクトの予定情報の各情報について詳しく説明する。
予定総コストは、プロジェクトの全過程での必要なコストの予定である。なおこの予定総コストは、プロジェクトに含まれるフェーズの予定総コストの合計と必ずしも一致する必要はなく、フェーズの予定総コストの合計以外に間接的なコストなども必要に応じて追加して計上できる。なおこの予定総コストは、類似プロジェクト検索時に主に利用する。
予定期間は、このプロジェクトの予定の作業期間である。
総規模は、このプロジェクトの全体的な規模を表す数値である。
【００５０】
プロジェクトでは特に進捗情報を直接入力する必要はなく、フェーズ、サブフェーズの進捗情報を集計することによって把握する。ただしプロジェクトに含まれる全てのフェーズが完了した時点で総括的な情報を結果情報として結果情報入力機能３１４を用いて入力する。プロジェクトの結果情報には、総投入コスト、期間、総規模をすくなくとも含む。なお後に参照して有用な情報を任意で追加できるものとする。
【００５１】
ではプロジェクトの結果情報の各情報について詳しく説明する。
総投入コストは、このプロジェクトを完了させるまでに発生したコストの合計値である。なおこの総投入コストは、プロジェクトに含まれ全フェーズの総投入コストの合計と必ずしも一致する必要はなく、フェーズの総投入コストの合計以外に間接的なコストなども必要に応じて追加して計上できる。なおこの総投入コストは、類似プロジェクト検索時に主に利用する。
期間は、このプロジェクトが完了するまでに費やした期間である。
総規模は、このプロジェクトが完了した時点での規模を示す数値である。
【００５２】
図７は、ＰＭケーパビリティ算出機能１８０で算出するＰＭケーパビリティの算出方法を説明する図である。ＰＭケーパビリティはプロジェクトマネージャーがプロジェクトのフェーズを担当したときの評価（成績）を表した１つの指標である。
本実施形態では、つぎのような式で求めた数値をＰＭケーパビリティとして用いることとする。
ＰＭケーパビリティ  ＝  担当したフェーズの総投入コスト  ÷  フェーズの予定総コスト
【００５３】
このＰＭケーパビリティは式の通り、担当したフェーズを予定した総コストで完了させた場合は「１」となり、予定した総コストより２倍のコストをかけてしまった場合は「２」となる。つまり数値が大きいほど低評価ということである。このＰＭケーパビリティ算出方法は、「予定総コストより総投入コストが増加してしまう原因は多岐に渡るが、それらさまざまな原因をうまく切り抜けて、できるだけコストが増加しないようにしていくことがプロジェクトマネージャーの重要な任務であり能力というものである。」という考え方に基づいたものである。
【００５４】
１つのフェーズでの評価としてのＰＭケーパビリティではなく、プロジェクトマネージャーの任務遂行能力を類推するＰＭケーパビリティとしては、１つのフェーズのＰＭケーパビリティより、複数のＰＭケーパビリティを平均したＰＭケーパビリティがより的確であると考えられる。したがって、ＰＭケーパビリティ算出機能１８０では、図７で示したフローでＰＭケーパビリティを求める。
【００５５】
そのフローでは、まず類似プロジェクト検索機能１７０を利用して、ＰＭケーパビリティを求める対象のフェーズをデータベース２００から求める。なお、求めるフェーズは複数になっても構わないものとする（Ｓ１００１）。つぎに求めたフェーズでの平均ＰＭケーパビリティを算出する（Ｓ１００２）。
【００５６】
図８は、メンバーケーパビリティ算出機能１９０で算出するメンバーケーパビリティの算出方法を説明する図である。メンバーケーパビリティは、メンバーがサブフェーズを担当したときの業務遂行力を表した１つの指標である。
【００５７】
まずメンバーケーパビリティ算出においては、メンバーケーパビリティを算出したい対象のサブフェーズを求める。例えば、プロジェクト内でのあるメンバーのメンバーケーパビリティを求めたいときは、類似プロジェクト検索機能１７０を利用して求める（Ｓ１１０１）。ここで準備的な作業として、複数の進捗ごとに求めたメンバーケーパビリティの平均をもとめるためのメンバーケーパビリティ蓄積スタックをリセットする（Ｓ１１０２）。つぎにステップＳ１１０１で求めた１つまたは複数のサブフェーズを逐次１つのサブフェーズを対象とするサブフェーズループを開始する（Ｓ１１０３）。
【００５８】
さらにサブフェーズループで順次対象となったサブフェーズで進捗入力されている全ての進捗を順次１つを対象にする進捗ループを開始する（Ｓ１１０４）。つぎにループで対象になっている１つの進捗が、メンバーケーパリビティ算出対象であるか判断する。この判断では、サブフェーズの進捗入力で入力した作業障害パラメータを参照して判断する。判断の一例としては、メンバーケーパビリティ算出対象とするのは、作業障害パラメータが特に支障がない場合のみとするといった具合である。なぜなら、このような障害がある場合は、メンバーの業務遂行能力に係わらず業務が滞ってしまう場合が多いからである。また、メンバーがそのサブフェーズの業務に対するスキルが不足しているという障害だった場合は、そもそも業務に合ったメンバーを配置できなかったプロジェクトマネージャーの責任と考えメンバーケーパビリティには含めないこととしてもよい。（Ｓ１１０５）。
【００５９】
つぎにその進捗がメンバーケーパビリティ算出対象であった場合は、その進捗でのメンバーケーパビリティを算出する。本実施例での算出方法は、以下のとおりとする。
メンバーケーパビリティ  ＝  その進捗での投入コスト  ÷  その進捗期間での予定コスト
なお、「その進捗期間での予定コスト」の求め方は、後で詳しく説明するサブフェーズでの現状超過コストの算出方法の説明で述べる（Ｓ１１０６）。
【００６０】
つぎに求めたメンバーケーパビリティを一旦メンバーケーパビリティ蓄積スタックに追加登録する（Ｓ１１０７）。ここまでの時点で進捗ループを繰り返す。また、Ｓ１１０５ステップで対象の進捗がメンバーケーパビリティ算出対象でなかった場合は直接このステップに移る（Ｓ１１０８）。さらにサブフェーズループを繰り返す（Ｓ１１０９）。そして最後に、メンバーケーパビリティ蓄積スタックに蓄積されたメンバーケーパビリティの平均値を求め、それを求めたいメンバーケーパビリティとする（Ｓ１１１０）。
【００６１】
図９は、現状超過コスト算出機能１４０の詳細な機能ブロック図である。現状超過コスト算出機能１４０は、サブフェーズ個々での現状超過コストを算出するサブフェーズ現状超過コスト算出機能１４１と、個々のフェーズ単位での現状超過コストを算出するフェーズ現状超過コスト算出機能１４５とを備える。
【００６２】
さらにサブフェーズ現状超過コスト算出機能１４１は、個々のサブフェーズの達成度を表すサブフェーズ達成度を算出するサブフェーズ達成度算出機能１４２と、個々のサブフェーズの進捗度を表すサブフェーズ進捗度を算出するサブフェーズ進捗度算出機能１４３を有する。
【００６３】
同じように、サブフェーズ現状超過コスト算出機能１４５は、１つのフェーズの達成度を表すフェーズ達成度を算出するフェーズ達成度算出機能１４６と、１つのフェーズの進捗度を表すフェーズ進捗度を算出するフェーズ進捗度算出機能１４７を有する。
【００６４】
なおサブフェーズ達成度、フェーズ達成度とは、１つ１つのサブフェーズまたはフェーズで予定していた成果物、品質が目標としていたレベルにどれだけ達しているかを示す指標である。またサブフェーズ進捗度、フェーズ進捗度とは、１つ１つのサブフェーズまたはフェーズでの予定作業がどのくらい行われたかを示す指標である。なお、これら指標の詳しい算出方法は後述する。
【００６５】
図１０は、サブフェーズ現状超過コスト算出機能１４１でのサブフェーズ現状超過コストの算出フローを表す。
サブフェーズ現状超過コスト算出機能１４１は、まず、サブフェーズ達成度算出機能１４２を使い、現状（そのサブフェーズでの最新の進捗入力時）までに行った作業の達成度であるサブフェーズ達成度を算出する（Ｓ１２０１）。つぎに、サブフェーズ進捗度算出機能１４３を使い、Ｓ１２０１で求めたサブフェーズ達成度も参照し、現状までに終わっている作業のサブフェーズ全体の作業に対しての割合であるサブフェーズ進捗度を求める（Ｓ１２０２）。
【００６６】
つぎに、算出したサブフェーズ進捗度も利用して、現状までに行った作業分の予定コストであるサブフェーズ現状予定コストを求める（Ｓ１２０３）。つぎに、現状までに行った作業分で実際に投入したコストであるサブフェーズ現状投入コストを求める（Ｓ１２０４）。つぎに、サブフェーズ現状超過コストを算出する（Ｓ１２０５）。そしてさらに、予定していたコストに対する超過コストの割合であるサブフェーズ超過コスト割合を算出する（Ｓ１２０６）。なお個々のステップでの算出方法はこれから詳しく述べる。
【００６７】
図１１は、サブフェーズ達成度算出機能１４２でのサブフェーズ達成度の算出方法を説明する図である。基本的にサブフェーズ達成度は、サブフェーズの予定情報として入力した進捗指数の予定達成目標値と重視度、サブフェーズでの最後の進捗入力で入力された進捗指数によって算出する。達成度は、進捗入力時に入力した進捗指数の値が、目標値と同じ場合は１とし、達していない場合は１未満、目標値以上に達している場合は１以上となる。
【００６８】
また進捗指数ごとに達成目標値と入力値から達成度を求める計算方法は、進捗指数ごとに事前に用意しておき、その計算方法にしがたい達成度を求める。例としては、図１１の進捗指数１は、入力値と達成度が線形関係だが、進捗指数２では、入力値と達成度が線形ではない関係になっているといった具合である。
【００６９】
なお１つのサブフェーズで１つの進捗指数によって進捗を把握する場合は、サブフェーズでの達成度は、その進捗指数の達成度と同じになる。しかし１つのサブフェーズで複数の進捗指数で進捗を把握する場合は、それぞれの進捗指数での達成度を求め、さらにサブフェーズの入力で指定されている重視度によって平均化する。このことによってサブフェーズごとに品質重視で達成度を求めたり、成果物の量を重視して達成度を求めたりすることが可能である。
【００７０】
図１２は、サブフェーズ進捗度算出機能１４３でのサブフェーズ進捗度の算出方法を説明する。サブフェーズ進捗度は、このサブフェーズの作業が完了している場合は１となり、完了していない場合はその作業の進捗具合に応じた１未満の数値となる。
【００７１】
前にも説明したが、サブフェーズでは進捗入力のときにサブフェーズの完了フラグを立てると、そのサブフェーズの達成度に関係なく、そのサブフェーズを完了したことになる。そのために図１２のようにサブフェーズの完了フラグがＯＮの場合は、サブフェーズ進捗度は１となる。つぎにサブフェーズ達成度が０．９９９９９（厳密には１未満でコンピュータの計算精度上一番大きい数値）以上の場合は、サブフェーズ進捗度は０．９９９９９（厳密には１未満でコンピュータの計算精度上一番大きい数値）となる。また、それ以外の場合は、サブフェーズ進捗度はサブフェーズ達成度と同じになる。
【００７２】
なお、まだサブフェーズが完了していなくてもサブフェーズ達成度が１以上の場合は、上記の方法でサブフェーズ進捗度は０．９９９９９となるが、通常は、作業が終わっていないということは目標を達成していないためなので、サブフェーズの予定にある進捗指数の達成目標値を引き上げるように変更してサブフェーズ達成度を１以下にするのが本来である。
【００７３】
図１３は、サブフェーズ現状超過コスト算出機能１４１でのサブフェーズ現状予定コスト、サブフェーズ現状投入コスト、サブフェーズ現状超過コストおよびサブフェーズ現状超過コスト割合の求め方を説明する図である。
【００７４】
サブフェーズ現状予定コストは、そのサブフェーズの最新の進捗入力までの作業分の予定コストであり、サブフェーズの予定情報として入力した予定コストに、最新の進捗入力時点での進捗度を掛けて求める。サブフェーズ現状投入コストは、実際に作業をした部分で実際にかかったコストで、そのサブフェーズでの最新進捗入力までのすべての進捗入力で入力した投入コストの合計となる。サブフェーズ現状超過コストは、上で求めたサブフェーズ現状投入コストからサブフェーズ現状予定コストを差し引いたものとなる。サブフェーズ超過コスト割合は、予定していたコストに対する超過コストの割合であり、これまでに求めたサブフェーズ現状超過コストをサブフェーズ現状投入コストで割って求める。
【００７５】
図１４は、フェーズ現状超過コスト算出機能１４５でのフェーズ現状超過コストの算出フローを表す。
【００７６】
フェーズ現状超過コスト算出機能１４５は、まずフェーズ達成度算出機能１４６を使い、現状（フェーズに含まれるサブフェーズの進捗日の中で最新の日付）までに行った作業の達成度であるフェーズ達成度を算出する（Ｓ１３０１）。つぎにフェーズ進捗度算出機能１４７を使い、フェーズとして現状までに終わっている作業のフェーズ全体の作業に対しての割合であるフェーズ進捗度を求める（Ｓ１３０２）。つぎに現状までにフェーズ内で終わっている作業分の予定コストであるフェーズ現状予定コストを求める（Ｓ１３０３）。
【００７７】
つぎに現状までにフェーズ内で終わっている作業で実際に発生したフェーズ現状投入コストを求める（Ｓ１３０４）。つぎにフェーズ全体としての超過コストであるフェーズ現状超過コストを算出する（Ｓ１３０５）。そしてさらに、フェーズとして予定していたコストに対する超過コストの割合であるフェーズ現状超過コスト割合を算出する（Ｓ１３０６）。なお個々のステップでの算出方法はこれから詳しく述べる。
【００７８】
図１５は、フェーズ現状超過コスト算出機能１４５で算出されるフェーズ達成度、フェーズ進捗度、フェーズ現状予定コスト、フェーズ現状投入コスト、フェーズ現状超過コストおよび、フェーズ現状超過コスト割合の求め方を説明した図である。
【００７９】
フェーズ達成度は、そのフェーズに属する全てのサブフェーズの達成度からもとめる。ただしフェーズに属するサブフェーズは個々に作業量が異なるために、単純にサブフェーズの達成度の平均をフェーズ達成度とすることはできない、そこで各サブフェーズがフェーズ全体から見てどのくらい作業を分担しているかを表しているサブフェーズの分担重みを使ってフェーズ達成度を求める。まず各サブフェーズの作業分担割合をつぎのように計算して求める。それは１つのサブフェーズの分担重みを、フェーズに含まれる全てのサブフェーズの分担重みの合計値で割って求める。つぎにフェーズに含まれるすべてのサブフェーズでそのサブフェーズの達成度に分担割合を掛けた数値を算出し、さらに求めた数値をすべて合算しそれをフェーズ達成度とする。
【００８０】
フェーズ進捗度もフェーズ達成度と同じようにフェーズに含まれるすべてのサブフェーズでそのサブフェーズの進捗度に分担割合を掛けた数値を算出し、さらに求めた数値をすべて合算して求める。フェーズ現状予定コストは単純にそのフェーズに含まれるすべてのサブフェーズのサブフェーズ現状予定コストを合算して求める。フェーズ現状投入コストも同様にそのフェーズに含まれるすべてのサブフェーズのサブフェーズ現状投入コストを合算して求める。フェーズ現状超過コストも同様にそのフェーズに含まれるすべてのサブフェーズのサブフェーズ現状超過コストを合算して求める。フェーズ現状超過コスト割合は、上記でもとめたフェーズ現状超過コストをフェーズ現状投入コストで割って求める。
【００８１】
図１６は、予想超過コスト算出機能１５０の詳細な機能ブロック図である。予想超過コスト算出機能１５０は、まだ作業が完了していないサブフェーズについてその作業終了時点での超過コストを算出するサブフェーズ予想超過コスト算出機能１５１と、まだ作業が完了してないフェーズについてその作業終了時点での超過コストを算出するフェーズ予想超過コスト算出機能１５５と、さらに予想超過コストを算出するときの条件となるまだ作業を行っていない部分の予定事項を一時的に変更し、予想超過コストを仮に算出するための予定仮変更機能１６０とを備える。
【００８２】
さらにフェーズ予想超過コスト算出機能１５５では、つぎに説明する２つの方式のフェーズ超過予想コスト算出機能を有する。すなわち、フェーズに属するサブフェーズでの予想超過コストから求める直接方式フェーズ予想超過コスト算出機能１５６と、過去のプロジェクトでの超過コストの推移から求める移動率方式フェーズ予想超過コスト算出機能１５７とを有する。
【００８３】
図１７は、サブフェーズ予想超過コスト算出機能１５１での予想超過コストの算出方法を説明するフロー図である。サブフェーズ予想超過コスト算出機能１５１は、サブフェーズのまだ作業を行っていない部分のコストを算出して超過コストを求める。
【００８４】
算出方法の基本は図１７の上部に記述した計算式のように、サブフェーズ予想超過コストは、現状のサブフェーズ超過コストに、残りの作業のサブフェーズ予想コストに見込み超過コスト割合を掛けた値を足し合わせる。この現状のサブフェーズ超過コストはすでにサブフェーズ現状超過コスト算出機能１４０で説明した通りである。またサブフェーズの残り作業の予想コストは、サブフェーズ予定コストに残作業の作業割合を表した１からサブフェーズ進捗度を引いた数を掛けた値をなる。ここまでは現状サブフェーズ超過コスト算出機能１４０で算出済みなので、後は見込み超過コスト割合を算出すれば、サブフェーズ予想超過コストを算出できる。
【００８５】
以下、この見込み超過コスト割合の算出方法を説明する。なお説明は図１７のフロー図に従う。
【００８６】
まず１つのサブフェーズ予想超過コスト算出では、そのサブフェーズが完了しているか判断する（Ｓ１４０１）。もしすでにそのサブフェーズが完了している場合は、そもそも予想超過コストは算出する必要はなく、すでにこのサブフェーズの超過コストはサブフェーズ現状超過コストで確定している。なおここでは処理上見込み超過コスト割合を０にする（Ｓ１４０２）。ステップＳ１４０１にてこのサブフェーズが完了していない場合はこのサブフェーズの作業が開始されているか判断する。判断はこのサブフェーズの進捗報告が一度でもされていれば作業を開始していると判断する（Ｓ１４０３）。ここで作業を開始している場合は、さらに今まで作業を担当していたメンバーを変更するか、そのまま作業を同一メンバーで続けるかを判断する（Ｓ１４０４）。
【００８７】
もしここでメンバーを変更しない場合は、見込み超過コスト割合は、そのサブフェーズでの現状超過コスト割合にＰＭ変更係数を掛けた数値となる。なおこのＰＭ変更係数はプロジェクトマネージャーが現状超過コスト割合を算出したときと変更した場合に１以外の数値になる場合があり、プロジェクトマネージャーが変更されたことによって見込み超過コストを変更する。なおこの部分の詳しい説明は後述する（Ｓ１４０５）。ステップＳ１４０４でメンバーを変更する場合は、変更後のメンバーの見込み超過コスト割合をつぎのように求める。なおメンバー変更時は一般的に、この見込み超過コスト割合を改善しサブフェーズとしての超過コスト全体を圧縮する目的で行われる。まずこのサブフェーズが属するフェーズ内で新しいメンバーが担当し、かつそのサブフェーズの作業が開始されているサブフェーズがあるか判断する（Ｓ１４０６）。
【００８８】
もしそのようなサブフェーズが１つあった場合は、そのサブフェーズでの超過コスト割合にＰＭ変更係数を掛けたものが見込み超過コスト割合となる。また、サブフェーズが複数あった場合は、それらサブフェーズのそれぞれでの超過コスト割合にＰＭ変更係数を掛けた数値の平均が見込み超過コスト割合となる（Ｓ１４０７）。ステップＳ１４０６で条件に合うサブフェーズが見つからなかった場合は、さらに新しいメンバーのランク（メンバー情報として保持している）が同じランクのメンバーが担当しかつ作業が開始されているサブフェーズが同一フェーズ内にあるか判断する（Ｓ１４０８）。
【００８９】
もしそのようなサブフェーズが１つあった場合は、そのサブフェーズでの超過コスト割合にＰＭ変更係数を掛けたものが見込み超過コスト割合となる。また、サブフェーズが複数あった場合は、それらサブフェーズのそれぞれでの超過コスト割合にＰＭ変更係数を掛けた数値の平均が、見込み超過コスト割合となる（Ｓ１４０９）。またなかった場合は、新しいメンバーのメンバー情報として保持しているデフォルト超過コスト割合を見込み超過コスト割合とする（Ｓ１４１０）。
【００９０】
ここで一度ステップＳ１４０３の今対象としているサブフェーズの作業が開始されているかを判断しているステップに戻って説明をつづける。ステップＳ１４０３で対象のサブフェーズの作業が開始されていなかった場合、つまりまだ一度の進捗報告がない場合は、このサブフェーズが属するフェーズ内で、このサブフェーズの担当予定のメンバーが担当し、かつそのサブフェーズの作業が開始されているサブフェーズがあるか判断する（Ｓ１４１１）。
【００９１】
もしそのようなサブフェーズがあった場合は、すでに説明したステップＳ１４０７で見込み超過コスト割合を求める。ステップＳ１４１１で条件にあうサブフェーズが見つからなかった場合は、さらに、担当予定のメンバーのランクと同じランクのメンバーが担当し、かつ、作業が開始されているサブフェーズが同一フェーズ内にあるか判断する（Ｓ１４１２）。ここで条件にあうサブフェーズが合った場合は、すでに説明したステップＳ１４０９にすすみ見込み超過コスト割合を求める。ステップＳ１４１２で条件にあうサブフェーズが見つからなかった場合は、すでに説明したステップ１４１０にて見こみ超過コスト割合を求める。
【００９２】
さらにここで、上記の見込み超過コスト割合の説明にでてきたＰＭ変更係数を説明する。このＰＭ変更係数は、プロジェクトマネージャーの変更を、見込み超過コスト割合に反映させるための係数である。サブフェーズでの超過コスト割合は、作業を担当したメンバーおよびプロジェクトマネージャーの両者が係わっていると考えられる。そこでプロジェクトマネージャーが変更された場合は、環境などが変わり、それが影響し超過コスト割合が変わると考えられる。当然スキルの高いプロジェクトマネージャーに替わった場合は超過コスト割合も低くなると考える。前に説明したＰＭケーパビリティを用いてこのＰＭ変更係数を求める。
【００９３】
見込み超過コスト割合にする超過コスト割合を算出した時点でのプロジェクトマネージャーと今から担当するプロジェクトマネージャーが変更されない場合は、ＰＭ変更係数は１となり、そのままそのサブフェーズでの超過コスト割合となる。変更される場合は、新しいプロジェクトマネージャーのＰＭケーパビリティを今までのプロジェクトマネージャーのＰＭケーパビリティで割った数値にＰＭ変更定数を掛けた数値となる。このＰＭ変更定数は過去の実績値などからこの新旧ＰＭケーパビリティでの比率求と実際の超過コストの改善率から求めた定数となる。
【００９４】
なお前に説明しように、ＰＭケーパビリティは「担当したフェーズの総投入コスト  ÷  フェーズの予定総コスト」となり、数値が多きほどプロジェクトマネージャーのパフォーマンスが悪いことを意味する。そこでプロジェクトマネージャーをパフォーマンスのよいプロジェクトマネージャーに変更した場合は、分子となる新しい担当のＰＭケーパビリティは分母となる旧担当のＰＭケーパビリティより小さくなりＰＭ変更係数も小さくなる。なお場合によっては、ＰＭケーパビリティと実際の超過コストの改善率がこの実施例のような単純な式ではなく、もっと複雑な関係の場合は、最小二乗法などの近似式を使用して求めてもよい。
【００９５】
なおここで使うＰＭケーパビリティは、今対象にしているフェーズの各種条件に類似したフェーズを類似プロジェクト検索機能１７０を使って求め、さらにプロジェクトマネージャーケーパビリティ算出機能１８０を使って動的に求める。
なおプロジェクトマネージャー変更の作業ではプロジェクトマネージャーを変更するためのコストが発生するが、このコストは対象のフェーズに新たにこのプロジェクトマネージャーを変更するためのサブフェーズを追加し計上するようにする。
【００９６】
図１８は、直接方式フェーズ予想超過コスト算出機能１５６での算出方法を説明した図である。直接方式フェーズ予想超過コスト算出では、そのフェーズに含まれる全てのサブフェーズの予想超過コストを合算したものを単純にそのフェーズのフェーズ予想超過コストとする。なおこの直接方式の特徴としては、フェーズの進捗率が進んでいる場合は予想の精度は高くなるが、進捗率が低い場合、精度は落ちることがある。
【００９７】
図１９〜図２５は、移動率方式によるフェーズ予想超過コスト算出機能１５７での算出方法を説明する図である。ここの説明では、２つの実現方式を「例Ａ」、「例Ｂ」として説明する。なお「例Ａ」は簡易的な方法であり、「例Ｂ」はより応用が可能で厳密な方法である。
【００９８】
図１９は、移動率方式によるフェーズ予想超過コスト算出機能１５７での算出方法の例Ａを説明する図の１つである。ここでは超過コスト割合移動表を説明する。
【００９９】
超過コスト割合移動表とは、図１９の例のように２次元のマトリクス表で、１軸はマイルストーン、もう１軸はフェーズ超過コスト割合を適当な区間に区分けしたものになる。この超過コスト割合移動表には、プロジェクトでの各マイルストーン（フェーズが完了した時点）でのそのフェーズの現状超過コスト割合をプロットすることにより、そのプロジェクトでの実際の超過コスト割合の推移をマトリクス表のセルの移動として表現できる。図１９は、すでにマイルストーン５までの作業を終えているプロジェクトの現状超過コスト割合をプロットしたものである。
【０１００】
図２０は、移動率方式によるフェーズ予想超過コスト算出機能１５７での算出方法の例Ａを説明する図の１つである。ここでは超過コスト割合移動表への複数のプロジェクトのプロットと超過コスト割合移動表での移動率算出を説明する。
【０１０１】
始めに、超過コスト割合移動表上の基点となる１つのセルを決める。なおこの基点のセルを特に基点セルと以下称する。図２０の上図の超過コスト割合移動表のように基点セルを通る複数のプロジェクトがあった場合は図のようにそれぞれのプロジェクトで基点セル以降のマイルストーンでの超過コスト割合は異なってくる。なお、基点セルを通るプロジェクトは、事前に用意しておいた検索条件によって、類似プロジェクト検索機能１７０によって求める。
【０１０２】
つぎに図２０の下図のように、基点セルを基点に、その基点セルでのプロジェクトの数で、各セルを通るプロジェクトの数を割ったものを超過コスト割合移動表上のセルに書いたものを導出する。この数値を特に、超過コスト割合移動率と称す。例えば図２０の上図では、マイルストーン３では超過コスト割合１．０以上２．０未満のセルは、１つのプロジェクトのみ存在する。また基点セルで存在したプロジェクトは３であるので、超過コスト割合移動率は１÷３の０．３３３となる。なおこの０．３３３とは１／３を表示用に表現した数値で、計算はあくまでも１／３で行うものとする。またマイルストーン３の超過コスト割合０．３以上１．０未満のセルには２つのプロジェクトが存在するので、このセルでの超過コスト割合移動率は２÷３の０．６６７となる。
【０１０３】
図２１は、移動率方式によるフェーズ予想超過コスト算出機能１５７での算出方法の例Ａを説明する図の１つである。ここでは超過コスト割合移動率をつかってフェーズでの予想超過コストを算出する方法を説明する。
【０１０４】
今、基点セルの状態にあるプロジェクトのそれ以降の各マイルストーンでの超過コスト割合は、その基点セルを基点にした超過コスト割合移動率表での各マイルストーンでの「超過コスト割合区分の平均超過コスト割合×超過コスト割合移動率」の合算とする。
【０１０５】
例えば図２１の上図では、マイルストーン１で超過コスト割合が、０．１以上０．３未満のセルが基点セルとなり、基点セルのつぎのマイルストーンであるのマイルストーン２では、超過コスト割合区分が０．３以上１．０未満のセルでの超過コスト割合移動率が０．６６７で、超過コスト割合区分が１．０以上２．０未満のセルでの超過コスト割合移動率が０．３３３でありその他は０である。するとこのマイルストーン２での予想超過コスト割合は、まず超過コスト割合区分が１．０以上２．０未満の区分での平均超過コスト割合は（１．０＋２．０）÷２となる、また０．３以上１．０未満の区分での平均超過コスト割合は（０．３＋１．０）÷２となる。
【０１０６】
そしてそれぞれにそのセルでの超過コスト移動率である０．６６７、０．３３３を掛けて合算すると、「(（１．０＋２．０）÷２)×０．３３３＋（（０．３＋１．０）÷２）×０．６６７＝０．９３３」となる。これがこのマイルストーン２つまりフェーズ２での予想超過コスト割合となる。
さらにフェーズ予想超過コストはこの求めたフェーズ予想超過コスト割合に、そのフェーズでの予定コストを掛けて求める。
【０１０７】
図２２は、移動率方式によるフェーズ予想超過コスト算出機能１５７での算出方法の例Ｂを説明する図の１つである。ここでは例Ｂでの超過コスト割合移動表を説明する。
【０１０８】
例Ｂでの超過コスト割合移動表とは、図２２のように２次元マトリクス表で、１軸はマイルストーン、もう１軸は各マイルストーンでの任意の数値を適当な区間に区分けしたものになる。なおこの軸にした数値を移動基準値と称し、その区分を移動基準区分と称する。例Ｂの説明では、移動基準値を超過コスト割合としている。
【０１０９】
この超過コスト割合移動表には、プロジェクトでの各マイルストーン（フェーズが完了した時点）での移動基準値を移動基準区分にプロットすることにより、そのプロジェクトでの移動基準値の推移をマトリクス表のセル移動として表現している。図２２は、すでに最終マイルストーン（マイルストーン５）までの作業を終えているプロジェクトの現状超過コスト割合をプロットしたものである。
【０１１０】
図２３は、移動率方式によるフェーズ予想超過コスト算出機能１５７での算出方法の例Ｂを説明する図の１つである。ここでは基点セルの次のマイルストーンでの移動率および平均超過コスト割合さらに基点セルの次のマイルストーンでの予想超過コスト割合の求め方を説明する。
【０１１１】
事前に図２０での説明と同じように超過コスト割合移動表上の基点となる１つのセル（基点セル）と、今予想超過コストを求めているプロジェクトに類似したプロジェクトを検索するための条件を準備しておく。
【０１１２】
図２３の上図では、事前に準備した類似プロジェクト検索条件によって類似プロジェクト検索機能１７０を用いて基点セルを通る１つまたは複数のプロジェクトを求める。求めた類似プロジェクトを基点セルの次のマイルストーン（マイルストーンｎ＋１と称す）での移動基準区分にプロットする。複数の類似プロジェクトがあった場合は図２３の上図のようにマイルストーンｎ＋１で移動する移動基準区分のセルは各類似プロジェクトで異なってくる場合もある。
【０１１３】
図２３の上図では、３つの類似プロジェクトが求まり、そのうちのプロジェクト１は、マイルストーンｎ＋１での移動基準区分０．３以上１．０未満のセルへ移動し、マイルストーンｎ＋１でのプロジェクト１の実際の超過コスト割合は０．６２となる。同様にプロジェクト２は、マイルストーンｎ＋１での移動基準区分１．０以上２．０未満のセルへ移動し、マイルストーンｎ＋１でのプロジェクト２の実際の超過コスト割合は１．７２となる。さらにプロジェクト３は、マイルストーンｎ＋１での移動基準区分０．３以上１．０未満のセルに移動し、マイルストーンｎ＋１でのプロジェクト３の実際の超過コスト割合は０．４７となる。
【０１１４】
つぎに図２３の下図のように、求めた類似プロジェクトの数で、マイルストーンｎ＋１での各セルでのプロジェクトの数を割った数値（移動率と称す）と、移動した各セルに含まれるプロジェクトでの実際の超過コスト割合の平均値（平均超過コスト割合と称す）を求める。
【０１１５】
図２３下図の例では、求めた類似プロジェクトは３つで、マイルストーンｎ＋１では１．０以上２．０未満の区分へ移動したプロジェクトは１つなので、移動率は１÷３＝０．３３３となり、平均超過コスト割合はその１つのプロジェクトの実際の超過コスト割合である１．７２となる。また０．３以上１．０未満の区分へ移動したプロジェクトは２つとなり移動率は２÷３＝０．６６７となり、平均超過コスト割合は、２つのプロジェクトの実際の超過コスト割合である０．６２と０．４７の平均である（０．６２＋０．４７）÷２＝０．５４５となる。
【０１１６】
さらにこのマイルストーンｎ＋１での予想超過コスト割合は、移動した各セルで求めた移動率と平均超過コスト割合を掛け合わせた値の合計値となる。式で表すとΣ（移動率×平均超過コスト割合）となる。図２３での例では、０．３３３×１．７２＋０．６６７×０．５４５＝０．９３６となる。
【０１１７】
図２４は、移動率方式によるフェーズ予想超過コスト算出機能１５７での算出方法の例Ｂを説明する図の１つである。ここでは基点セルの次の次でのマイルストーンでの移動率および平均超過コスト割合さらに予想超過コスト割合の求め方を説明する。
【０１１８】
図２４の上図では図２３で説明したように事前に用意してあった類似プロジェクト検索条件によって基点セルを通る類似プロジェクトによって次のマイルストーン（マイルストーンｎ＋１）での移動基準区分のセルにプロットがされている、そこでこのプロットされたセルをサブ基点セルと呼ぶ。
【０１１９】
図２４の例では、マイルストーンｎ＋１では１．０以上２．０未満のセルと、０．３以上１．０未満の２つのセルにプロットされているのでこの２つのセルがサブ基点セルとなる。なおプロットされている全てのセルをサブ基点セルとする。つぎにサブ基点セルとした複数のセルに対して順次つぎのことを行い最終的にマイルストーンｎ＋２での予想超過コストを求める。
【０１２０】
順次対象とした１つのサブ基点セルを、図２３で説明した基点セルに置き換えたようにし、このサブ基点セルを通る１つまたは複数の類似プロジェクトを事前に用意してあった類似プロジェクト検索条件と類似プロジェクト検索機能１７０を用いて求める。そしてこのサブ基点セルの次のマイルストーン（マイルストーンｎ＋２）での移動基準区分のセルへの移動をプロットし、さらに求めた類似プロジェクトでのマイルストーンｎ＋２での実際の超過コスト割合も合わせて蓄積しておく。
【０１２１】
そして今対象としているサブ基点セルで求めた類似プロジェクトの数で、マイルストーンｎ＋２で移動した各セルでのプロジェクト数を割り、サブ基点セルからの移動率を求め、さらにこのサブ基点セルへの移動率を掛け合わせてこのサブ基点セルを通るマイルストーンｎ＋２の移動率を一旦求める。
【０１２２】
そしてこの処理をマイルストーンｎ＋１でのすべてのサブ基点セルに対して行う。そしてさらにマイルストーンｎ＋２の同一セルで複数のサブ基点セルからの移動率があった場合は、その移動率を合計してマイルストーンｎ＋２での最終的な移動率を求める。なおマイルストーンｎ＋２のセルで１つのサブ基点セルからの移動率のみの場合は、この１つのサブ基点セルからの移動率がそのままこのセルでの最終的な移動率となる。
【０１２３】
またさらにすべてのサブ基点セルで求めた類似プロジェクトのマイルストーンｎ＋２での各セルで実際の超過コスト割合を平均して平均超過コスト割合を求める。このようにしてマイルストーンｎ＋２の各セルへの移動率、平均超過コスト割合を求める。
【０１２４】
そしてこのマイルストーンｎ＋２での予想超過コストは、マイルストーンｎ＋１のときと同じで、各セルで求めた移動率と平均超過コスト割合を掛け合わせた値の合計値となる。式で表すとΣ（移動率×平均超過コスト割合）となる。
【０１２５】
図２４の例では、マイルストーンｎ＋１の１．０以上２．０未満のセルをサブ基点セル（サブ基点セル（１）と称す）とし、このサブ基点セルを通る類似プロジェクトとして、プロジェクト２とプロジェクト４の２つが求まった。このプロジェクト２はマイルストーンｎ＋２では０．３以上１．０未満の区分セルに移動し、そのセルでの実際の超過コスト割合は０．３８となる。プロジェクト４は、マイルストーンｎ＋２では２．０以上５．０未満の区分セルに移動し、そのセルでの実際の超過コスト割合は、４．１１となる。２．０以上５．０未満のセルでの移動率は、サブ基点セル（１）を通りこのセルを通る類似プロジェクトはプロジェクト４のみで、サブ基点セル（１）で求めた類似プロジェクトの数は２なので１÷２の０．５となり、さらにサブ基点セル（１）での移動率が０．３３３なので掛け合わせ０．５×０．３３３の０．１６７となる。もう一方の０．３以上１．０未満のセルでは、同様にプロジェクト２のみで１÷２の０．５となり、さらにサブ基点セル（１）での移動率が０．３３３なので掛け合わせ０．５×０．３３３の０．１６７となる。
【０１２６】
つぎにマイルストーンｎ＋１の０．３以上１．０未満のセルをサブ基点セル（サブ基点セル（２）と称す）とし、このサブ基点セルを通る類似プロジェクトとして、プロジェクト１、プロジェクト３、とプロジェクト５、プロジェクト６の４つが求まった。プロジェクト１はマイルストーンｎ＋２では０．３以上１．０未満の区分セルに移動し、そのセルでの実際の超過コスト割合は０．８５となる。プロジェクト３はマイルストーンｎ＋２では１．０以上２．０未満の区分セルに移動し、そのセルでの実際の超過コスト割合は１．２３となる。プロジェクト５はマイルストーンｎ＋２では０．１以上０．３未満の区分セルに移動し、そのセルでの実際の超過コスト割合は０．２４となる。プロジェクト６はマイルストーンｎ＋２では０．１以上０．３未満の区分セルに移動し、そのセルでの実際の超過コスト割合は０．１９となる。
【０１２７】
そして移動率は、サブ基点セル（２）で求めた類似プロジェクトの数は４で、１．０以上２．０未満のセルはプロジェクト３のみなので１÷４で０．２５となり、さらにサブ基点セル（２）での移動率が０．６６７なので掛け合わせて０．２５×０．６６７の０．１６７となる。同様に０．３以上１．０未満のセルは、プロジェクト１のみなので１÷４で０．２５となり、さらにサブ基点セル（２）での移動率が０．６６７を掛け合わせて０．２５×０．６６７の０．１６７となる。同様に０．１以上０．３未満のセルは、プロジェクト５、６の２つなので２÷４で０．５となり、さらにサブ基点セル（２）での移動率が０．６６７を掛け合わせて０．５×０．６６７の０．３３３となる。
【０１２８】
そしてマイルストーンｎ＋２での最終的な移動率は、２．０以上５．０未満のセルは、サブ基点セル(１)を通る類似プロジェクトのみなので、サブ基点セル（１）でもとめた移動率のまま０．１６７となり、１．０以上２．０未満のセルではサブ基点セル(２)を通る類似プロジェクトのみなので、サブ基点セル（２）でもとめた移動率のまま０．１６７となり、０．３以上１．０未満のセルでは、サブ基点セル（１）を通る類似プロジェクトから求めた移動率０．１６７とサブ基点セル（２）を通る類似プロジェクトから求めた移動率０．１６７を合計した０．３３３となる。さらに０．１以上０．３未満のセルでは、サブ基点セル(２)を通る類似プロジェクトのみなので、サブ基点セル（２）でもとめた移動率のまま０．３３３となる。
【０１２９】
そして最後に各セルでの平均超過コスト割合は、２．０以上５．０未満のセルでは、プロジェクト４のみプロットされているので、平均超過コスト割合はそのまま４．１１となり、１．０以上２．０未満のセルでも、プロジェクト３のみがプロットされているので、平均超過コスト割合はそのまま１．２３となる。０．３以上１．０未満のセルでは、プロジェクト１と２となりその２つ超過コスト割合の平均の（０．３８＋０．８５）÷２の０．６１５となる。０．１以上０．３未満のセルでは、プロジェクト５と６となり、その２つ超過コスト割合の平均の（０．２４＋０．１９）÷２の０．２１５となる。
【０１３０】
最後にこのマイルストーンｎ＋２での予想超過コスト割合は、Σ（移動率×平均超過コスト割合）なので、つぎのように４つのセルの移動率×平均超過コスト割合を合計する。
０．１６７×４．１１  ＋  ０．１６７×１．２３  ＋  ０．３３３×０．６１５  ＋  ０．３３３×０．２１５  ＝  １．００１
【０１３１】
図２５は、移動率方式によるフェーズ予想超過コスト算出機能１５７での算出方法の例Ｂを説明する図の１つである。ここでは基点セル以降のすべてのマイルストーンでの予想超過コスト割合を求める手順を説明する。
【０１３２】
基点セルの次のマイルストーンｎ＋１での予想超過コストの求め方は図２３で説明したとおりで、マイルストーンｎ＋１の次のマイルストーンｎ＋２での予想超過コストの求め方は図２４で説明したとおりである。さらにマイルストーンｎ＋２の次のマイルストーンであるマイルストーンｎ＋３での予想超過コスト割合は、図２４で説明した方法と同様に、マイルストーンｎ＋２で求めた全てのセル（図２４の例では４つのセル）を新たなサブ基点セルとして求めることができる。さらに同様にマイルストーンｎ＋３以降のマイルストーンでは、その１つ前のマイルストーンで求めた全てのセルをサブ基点セルとして予想超過コストを求めることができる。
【０１３３】
まず事前に基点セルと今フェーズでの予想超過コストを求めているプロジェクトの類似プロジェクトの検索条件が準備してあるとする。どのように準備するかは、後の図２６で詳しく説明する。
【０１３４】
基点セルの次のマイルストーンから最終マイルストーンまでを順次繰り返して各マイルストーンでの予想超過コストを求めるマイルストーン・ループを開始する（Ｓ１７０１）。今マイルストーン・ループで対象になっているマイルストーンの１つ前のマイルストーンが基点セルの場合はその基点セルをサブ基点セルとし、１つ前のマイルストーンが基点セルのマイルストーン以降のマイルストーンの場合は、そのマイルストーンで類似プロジェクトが通過したセル（求めた移動率が０より大きなセル）全てをサブ基点セルとする（Ｓ１７０２）。つぎにＳ１７０２で求めた１つまたは複数のサブ基点セルを１つずつ順次対象に処理をするサブ基点セル・ループを開始する（Ｓ１７０３）。今対象となっている１つのサブ基点セルを通る１つまたは複数の類似プロジェクトを事前に用意しておいた類似プロジェクト検索条件と、類似プロジェクト検索機能１７０を用いて求める（Ｓ１７０４）。
【０１３５】
そして求めた類似プロジェクトが今対象となっているマイルストーンでどの移動基準区分のセルを通るかプロットし、さらに前に説明したようにそのサブ基点セルでの移動率と各類似プロジェクトのそのマイルストーンでの通過セルでの実際の超過コスト割合を超過コスト割合移動表に蓄積する（Ｓ１７０５）。ここまでの処理を対象となっているマイルストーンの全てのサブ基点セルに対して行いサブ基点セル・ループを終わらせる（Ｓ１７０６）。そして図２４で説明したように、このマイルストーンで類似プロジェクトが通り各セルでの最終的な移動率と平均超過コスト割合を求め、さらにこのマイルストーンでの予想超過コスト割合を求める（Ｓ１７０７）。そして最終マイルストーンまで順次処理を行い各マイルストーンでの予想超過コスト割合を求めてマイルストーン・ループを終える（Ｓ１７０８）。
【０１３６】
このようにして基点セル以降の全てのマイルストーンでの予想超過コスト割合を求める。さらに例Ａと同様に各フェーズ予想超過コストはこの求めたフェーズ予想超過コスト割合に、そのフェーズでの予想コストを掛けて求める。この例Ｂでの方法では、移動基準値の傾向を移動基準区分に反映した過去プロジェクトでの超過コストを求めることができる。この移動基準値に本例であげた超過コスト割合のように単純なものではなく、さらに超過コスト割合に、品質を表す数値である各マイルストーンでの達成度を加味した数値にすると各マイルストーンでの品質による傾向を加味した予想が可能となる。
【０１３７】
図２６は、フェーズ予想超過コスト算出機能１５５でのフェーズ予想超過コスト算出フローを説明した図である。フェーズ予想超過コスト算出機能１５５では、フェーズ予想超過コストを求めたいプロジェクトのある程度作業が進んでいるフェーズは直接法によって、それ以降は移動率方によってフェーズ予想超過コストを求める。
【０１３８】
フェーズ予想超過コストを求めたいプロジェクトではまず基点のフェーズをつぎのように求める。それは一定進捗度以上で一番下流工程のフェーズを基点のフェーズとする。なお一定進捗度以上のフェーズがなかった場合は、一番上流の工程のフェーズを基点のフェーズとする（Ｓ１５０１）。つぎに基点のフェーズの予想超過コスト割合を直接法による予想超過コスト算出方法によって求める（Ｓ１５０２）。つぎに、求めた基点のフェーズでの超過コスト割合移動表上での基点セルを求める。なお、この求め方は前に説明した各移動率方式によるフェーズ予想超過コスト算出方法の例Ａ、例Ｂなど、利用する各移動率方式によって求める（Ｓ１５０３）。
【０１３９】
つぎに、フェーズ予想超過コストを求めたいプロジェクトの類似プロジェクトを複数類似プロジェクト検索機能１７０によって求めるための検索条件を決める。検索条件には、担当プロジェクトマネージャーのＰＭケーパビリティやメンバーケーパビリティなども条件として含めると、担当したプロジェクトマネージャーの力量や、開発チームのメンバーの力量を考慮した類似プロジェクトが抽出が可能である（Ｓ１５０４）。ステップＳ１５０４で決めた類似プロジェクト検索条件を使って、前に説明した移動率方式による予想超過コスト算出方法にしたがい、基点フェーズ以降の各フェーズでの予想超過コスト割合をもとめ、さらにフェーズ予想超過コストを算出する（Ｓ１５０５）。
【０１４０】
図２７は、本装置を利用した予想超過コストシミュレーション機能のフロー図である。
この予想超過コストシミュレーションは、今後の予定情報を一時的に変更してみて、フェーズまたはサブフェーズの予想超過コストを算出することで、より適切な予定を立案することが可能になる。
【０１４１】
まずシミュレーションを行いたい１つのプロジェクトを用意する。そして予定仮変更機能１６０を使用して、そのプロジェクトの予定情報を一旦変更する。またその際には現状超過コスト算出機能１４０によって現在特に超過コストの発生しているサブフェーズなどを洗い出すなど、問題点の洗い出しが可能である。またさらにプロジェクトマネージャーケーパビリティ算出機能１８０、メンバーケーパビリティ算出機能１９０により、このプロジェクトに適したプロジェクトマネージャー、メンバーを検索することも可能である（Ｓ１６０１）。つぎに予想超過コスト算出機能１５０を利用し、フェーズまたはサブフェーズの予想超過コストを算出する（Ｓ１６０２）。
【０１４２】
ここで満足する結果がえられなかったなど目的が達成しなく、もう一度シミュレーションをやりなおす場合は、ここでステップＳ１６０１にもどり再び予定情報を変更する（Ｓ１６０３）。またつぎにステップＳ１６０１で変更した予定情報の内容を本当の予定にする場合はステップＳ１６０５へ、また必要なければシミュレーションを終了する（Ｓ１６０４）。なお仮予定変更の内容を本当の予定にする場合は、仮予定の内容を本予定にコピーする（Ｓ１６０５）。
【０１４３】
図２８は、超過コスト表示機能１２０での超過コストの表示の１例である。この例では、作業を行っている１つのプロジェクトの現状までの超過コスト推移と今後の予想超過コストの推移をフェーズごとの超過コストおよび累積超過コストを表示している。
【０１４４】
図２９は、予想超過コストシミュレーションの表示例である。図２８にさらにシミュレーションした場合の予想超過コストのグラフを追加している。
【０１４５】
図３０は、開発中の複数のプロジェクトを一度に表示した例である。この表示例では、特に、開発部、会社など大きな単位で同時進行している多数の開発プロジェクトの現状把握と、対策を施すべきプロジェクトの把握を容易にすることを目的とする画面である。
【０１４６】
この画面例では、横軸に現行開発中のプロジェクトでの現状超過コストの累積値を、縦軸には、今後の予想超過コストの合計値をそれぞれ適当な区分に分け各セルに属するプロジェクトの数を表示している。またさらに現状、今後とも超過コストが大きなセルは赤など目立つ色をつけ、問題なさそうなセルは目立たない色をつけるなど注意を促すようにしている。さらにセルを選択するとそのセルに含まれるプロジェクトの一覧が表示され、さらにそのプロジェクトの一覧のプロジェクトを選択すると、図２８で説明したように１つのプロジェクトでの現状、予想超過コストの推移の表を表示したりする。
【０１４７】
なおここまでの説明では、特に見積もり段階で、客観的に将来発生しうる超過コストのリスク見積もり方法を説明しなかったが、プロジェクトの作業前にプロジェクトの予定を入力し、その時点での予想超過コストを算出し、表示することにより実現可能である。
【０１４８】
またシステムのリリース後のバグ発生に伴うコストの予想もシステムリリース後の工程をフェーズにして本装置を用いることによって予想可能となる。
【０１４９】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１５０】
本発明の別の態様としては、超過コスト算出装置が考えられる。この装置は、進行中のプロジェクトについて、そのプロジェクトの進行において発生が予想される超過コストを算出する装置であって、プロジェクトは所定の基準で設定された作業単位である複数の大フェーズに分割され、それぞれの大フェーズはプロジェクトにおいて任意に設定された作業単位である複数の小フェーズに分割されており、作業者が実施すべき小フェーズにおける予定情報と、その小フェーズに対する作業者による作業実績を示す進捗情報とをユーザから受け付けるユーザインタフェイス部と、予想される超過コストの算出をユーザから要求されたとき、複数の小フェーズそれぞれの予定情報と進捗情報とを比較して、複数の小フェーズそれぞれについて予想される超過コストを算出する小フェーズ予想超過コスト算出部と、複数の小フェーズそれぞれについて予想される超過コストを、複数の小フェーズそれぞれが対応づけられた大フェーズごとに集計して、複数の大フェーズそれぞれについて予想される超過コストを算出する大フェーズ予想超過コスト算出部と、を備える。ユーザインタフェイス部は、複数の大フェーズそれぞれについて予想される超過コストを、プロジェクトの進行において発生が予想される超過コストとしてユーザに通知する。
【０１５１】
請求項に記載の各構成要件が果たすべき機能は、実施の形態および変形例において示された各機能ブロックの単体もしくはそれらの連係によって実現されることも当業者には理解されるところである。
【図面の簡単な説明】
【０１５２】
【図１】本発明の実施の形態に係わるシステム開発プロジェクト超過コスト予想装置の構成を示す機能ブロック図である。
【図２】システム開発を行うプロジェクトの予定および進捗状況を本装置でどのように扱うかを説明する図である。
【図３】プロジェクト情報入力機能の詳細な機能ブロック図である。
【図４】サブフェーズでの予定、進捗に関する情報と入力タイミングを説明する図である。
【図５】フェーズでの予定、進捗に関する情報と入力タイミングを説明する図である。
【図６】プロジェクト概要、予定、進捗に関する情報と入力タイミングを説明する図である。
【図７】プロジェクトマネージャーケーパビリティの算出方法の手順、計算方法を説明する図である。
【図８】メンバーケーパビリティを算出する手順を説明する図である。
【図９】現状超過コスト算出機能の詳細な機能ブロック図である。
【図１０】サブフェーズ現状超過コストの算出手順を説明する図である。
【図１１】サブフェーズ達成度の算出方法を説明する図である。
【図１２】サブフェーズ進捗度の算出方法を説明する図である。
【図１３】サブフェーズ現状超過コスト、現状超過コスト割合の算出方法を説明する図である。
【図１４】フェーズ現状超過コストの算出方法の手順を説明する図である。
【図１５】フェーズ達成度、進捗度、現状予定コスト、現状投入コスト、現状超過コスト、現状超過コスト割合の計算方法を説明する図である。
【図１６】予想超過コスト算出機能の詳細な機能ブロック図である。
【図１７】サブフェーズ予想超過コストの算出の詳細な手順と計算方法を説明する図である。
【図１８】直接方式によるフェーズ予想超過コストの算出方法を説明する図である。
【図１９】移動率方式（例Ａ）によるフェーズ予想超過コストの算出での超過コスト割合移動表を説明する図である。
【図２０】移動率方式（例Ａ）によるフェーズ予想超過コストの算出での超過コスト割合移動表を説明する図である。
【図２１】移動率方式（例Ａ）によるフェーズ予想超過コストの算出での予想超過コスト、予想超過コスト割合の算出方法を説明する図である。
【図２２】移動率方式（例Ｂ）によるフェーズ予想超過コストの算出での超過コスト割合移動表を説明する図である。
【図２３】移動率方式（例Ｂ）によるフェーズ予想超過コストの算出での次のフェーズでの予想超過コストを求める方法を説明する図である。
【図２４】移動率方式（例Ｂ）によるフェーズ予想超過コストの算出での次の次のフェーズ以降での予想超過コストを求める方法を説明する図である。
【図２５】移動率方式（例Ｂ）によるフェーズ予想超過コストの算出での各フェーズでの予想超過コスト割合算出手順を示すフローチャートである。
【図２６】作業中のプロジェクトの予想超過コスト算出手順を示すフローチャートである。
【図２７】予想超過コストシミュレーションの手順を示すフローチャートである。
【図２８】特定のプロジェクトの現状超過コストおよび予想超過コストを示す画面の例である。
【図２９】特定のプロジェクトの予想超過コストシミュレーションの結果を示す画面の例である。
【図３０】複数のプロジェクトの現状超過コストの累計と予想超過コストの累計を１つの画面で見せる例である。
【符号の説明】
【０１５３】
１００  システム開発プロジェクト超過コスト予想装置、１１０  ユーザインタフェイス機能、１２０  超過コスト表示機能、１３０  超過コスト算出機能、１４０  現状超過コスト算出機能、１４１  サブフェーズ現状超過コスト算出機能、１４２  サブフェーズ達成度算出機能、１４３  サブフェーズ進捗度算出機能、１４５  フェーズ現状超過コスト算出機能、１４６  フェーズ達成度算出機能、１４７  フェーズ進捗度算出機能、１５０  予想超過コスト算出機能、１５１  サブフェーズ予想超過コスト算出機能、１５５  フェーズ予想超過コスト算出機能、１５６  直接方式フェーズ予想超過コスト算出機能、１５７  移動率方式フェーズ予想超過コスト算出機能、１６０  予定仮変更機能、１７０  類似プロジェクト検索機能、１８０  プロジェクトマネージャーケーパビリティ算出機能、１９０  メンバーケーパビリティ算出機能、２００  データベース、３００  データベース入力機能、３１０  プロジェクト情報入力機能、３１１  プロジェクト概要情報入力機能、３１２  予定情報入力機能、３１３  進捗情報入力機能、３１４  結果情報入力機能、３２０  プロジェクトマネージャー・メンバー情報入力機能。
【図１】
2010073040.tif 000003
【図２】
2010073040.tif 000004
【図３】
2010073040.tif 000005
【図４】
2010073040.tif 000006
【図５】
2010073040.tif 000007
【図６】
2010073040.tif 000008
【図７】
2010073040.tif 000009
【図８】
2010073040.tif 000010
【図９】
2010073040.tif 000011
【図１０】
2010073040.tif 000012
【図１１】
2010073040.tif 000013
【図１２】
2010073040.tif 000014
【図１３】
2010073040.tif 000015
【図１４】
2010073040.tif 000016
【図１５】
2010073040.tif 000017
【図１６】
2010073040.tif 000018
【図１７】
2010073040.tif 000019
【図１８】
2010073040.tif 000020
【図１９】
2010073040.tif 000021
【図２０】
2010073040.tif 000022
【図２１】
2010073040.tif 000023
【図２２】
2010073040.tif 000024
【図２３】
2010073040.tif 000025
【図２４】
2010073040.tif 000026
【図２５】
2010073040.tif 000027
【図２６】
2010073040.tif 000028
【図２７】
2010073040.tif 000029
【図２８】
2010073040.tif 000030
【図２９】
2010073040.tif 000031
【図３０】
2010073040.tif 000032