(57)【要約】【課題】  プロジェクト管理において、例えば、プロセスモデルと整合がとれた計画を自動生成し、プロジェクト管理者の作業負荷を軽減することを目的とする。【解決手段】  設定部１１４は、プロジェクト管理情報の生成に利用するプロセスモデル要素及びプロセスモデル要素間のリンクをそれぞれプロセスメタモデル要素及びプロセスメタモデル要素間の関連により設定する。取得部１１５は、記憶装置１０４に記憶されたプロセスメタモデル情報と設定部１１４の設定内容とに基づいて、設定部１１４により設定されたプロセスモデル要素とプロセスモデル要素間のリンクとに該当するものをプロセスモデルから取得する。生成部１１６は、プロジェクト要素及びプロジェクト要素間の関係をそれぞれ取得部１１５により取得されたプロセスモデル要素及びプロセスモデル要素間のリンクにより定義する。【選択図】        図１３
2007004327.tif 000002
【特許請求の範囲】
【請求項１】
入力装置と処理装置と記憶装置とを有し、プロジェクトの管理に係るソフトウェアのプロセスを定義するプロセスモデル要素とプロセスモデル要素間のリンクとで構成されたプロセスモデルを利用して、前記プロジェクトの管理に関するプロジェクト管理情報を生成するプロジェクト管理装置において、
前記プロセスモデル要素にメタ情報を与えるプロセスメタモデル要素と前記プロセスモデル要素間のリンクにメタ情報を与えるプロセスメタモデル要素間の関連とで構成されたプロセスメタモデルを示すプロセスメタモデル情報を予め前記記憶装置に記憶させる記憶部と、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記プロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記プロセスメタモデル要素間の関連により設定し、当該設定の内容をプロセスモデル利用情報として前記記憶装置に記憶させる設定部と、
前記プロセスモデルを示すプロセスモデル情報を前記入力装置により入力する入力部と、
前記記憶装置に記憶されたプロセスメタモデル情報とプロセスモデル利用情報とに基づいて、前記設定部により設定されたプロセスモデル要素とプロセスモデル要素間のリンクとに該当するものを前記入力装置により入力されたプロセスモデル情報が示すプロセスモデルから前記処理装置により取得する取得部と、
前記プロジェクトを構成するプロジェクト要素を前記取得部により取得されたプロセスモデル要素により定義するとともに、プロジェクト要素間の関係を前記取得部により取得されたプロセスモデル要素間のリンクにより定義するプロジェクト管理情報を前記処理装置により生成する生成部とを備えることを特徴とするプロジェクト管理装置。
【請求項２】
前記プロセスモデル及び前記プロセスメタモデルは、オブジェクト指向で定義され、
前記プロセスモデル要素は、前記プロセスメタモデル要素により定義されるクラスのインスタンスであることを特徴とする請求項１に記載のプロジェクト管理装置。
【請求項３】
前記記憶装置に予め記憶されたプロセスメタモデル情報が示すプロセスメタモデルは、成果物を表すプロセスメタモデル要素と階層関係を表すプロセスメタモデル要素間の関連とを含み、
前記設定部は、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記成果物を表すプロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記階層関係を表すプロセスメタモデル要素間の関連により設定し、
前記生成部は、
前記プロジェクト要素として、プロジェクトにおける成果物を分解してツリー状に構成したＷＢＳ（ワークブレークダウンストラクチャ）の構成要素を定義するとともに、前記プロジェクト要素間の関係として、前記ＷＢＳの階層関係を定義するＷＢＳを、前記プロジェクト管理情報として生成することを特徴とする請求項１に記載のプロジェクト管理装置。
【請求項４】
前記入力部は、さらに、
１つのプロセスモデル要素を指定し、
前記生成部は、
前記入力部により指定された１つのプロセスモデル要素をルートとするＷＢＳを生成することを特徴とする請求項３に記載のプロジェクト管理装置。
【請求項５】
前記記憶装置に予め記憶されたプロセスメタモデル情報が示すプロセスメタモデルは、成果物及び作業を表すプロセスメタモデル要素と成果物及び作業の対応関係を表すプロセスメタモデル要素間の関連とを含み、
前記設定部は、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記成果物及び作業を表すプロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記成果物及び作業の対応関係を表すプロセスメタモデル要素間の関連により設定し、
前記生成部は、
前記プロジェクト要素として、プロジェクトにおける成果物を分解してツリー状に構成したＷＢＳ（ワークブレークダウンストラクチャ）の最下層に含まれるワークパッケージと前記ワークパッケージをさらに詳細な作業に分解したアクティビティとを定義するとともに、前記プロジェクト要素間の関係として、前記ワークパッケージと前記アクティビティとの対応関係を定義するプロジェクト管理情報を生成することを特徴とする請求項１に記載のプロジェクト管理装置。
【請求項６】
前記記憶装置に予め記憶されたプロセスメタモデル情報が示すプロセスメタモデルは、作業を表すプロセスメタモデル要素と作業間の順序関係を表すプロセスメタモデル要素間の関連とを含み、
前記設定部は、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記作業を表すプロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記作業間の順序関係を表すプロセスメタモデル要素間の関連により設定し、
前記生成部は、
前記プロジェクト要素として、プロジェクトにおける成果物を分解してツリー状に構成したＷＢＳ（ワークブレークダウンストラクチャ）の最下層に含まれるワークパッケージをさらに詳細な作業に分解したアクティビティを定義するとともに、前記プロジェクト要素間の関係として、アクティビティ間の順序関係を定義するプロジェクト管理情報を生成することを特徴とする請求項１に記載のプロジェクト管理装置。
【請求項７】
前記記憶装置に予め記憶されたプロセスメタモデル情報が示すプロセスメタモデルは、作業及び役割を表すプロセスメタモデル要素と作業及び役割の対応関係を表すプロセスメタモデル要素間の関連とを含み、
前記設定部は、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記作業及び役割を表すプロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記作業及び役割の対応関係を表すプロセスメタモデル要素間の関連により設定し、
前記入力部は、さらに、
前記設定部により前記役割を表すプロセスメタモデル要素により設定されたプロセスモデル要素とプロジェクトにおける成果物を分解してツリー状に構成したＷＢＳ（ワークブレークダウンストラクチャ）の最下層に含まれるワークパッケージをさらに詳細な作業に分解したアクティビティを担当する役割を持つ担当者とを対応付けるプロセスモデル対応情報を前記入力装置により入力し、
前記生成部は、
前記プロジェクト要素として、前記アクティビティを定義し、前記入力装置により入力されたプロセスモデル対応情報に基づいて前記担当者を定義するとともに、前記プロジェクト要素間の関係として、前記アクティビティと前記担当者との対応関係を定義するプロジェクト管理情報を生成することを特徴とする請求項１に記載のプロジェクト管理装置。
【請求項８】
入力装置と処理装置と記憶装置とを有し、プロジェクトの管理に係るソフトウェアのプロセスを定義するプロセスモデル要素とプロセスモデル要素間のリンクとで構成されたプロセスモデルを利用して、前記プロジェクトの管理に関するプロジェクト管理情報を生成するプロジェクト管理装置を用いるプロジェクト管理方法において、
前記記憶装置が、前記プロセスモデル要素にメタ情報を与えるプロセスメタモデル要素と前記プロセスモデル要素間のリンクにメタ情報を与えるプロセスメタモデル要素間の関連とで構成されたプロセスメタモデルを示すプロセスメタモデル情報を予め記憶する記憶ステップと、
前記処理装置が、前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記プロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記プロセスメタモデル要素間の関連により設定し、当該設定の内容をプロセスモデル利用情報として前記記憶装置に記憶させる設定ステップと、
前記入力装置が、前記プロセスモデルを示すプロセスモデル情報を入力する入力ステップと、
前記処理装置が、前記記憶ステップで前記記憶装置に記憶されたプロセスメタモデル情報とプロセスモデル利用情報とに基づいて、前記設定ステップで設定されたプロセスモデル要素とプロセスモデル要素間のリンクとに該当するものを前記入力ステップで前記入力装置により入力されたプロセスモデル情報が示すプロセスモデルから取得する取得ステップと、
前記処理装置が、前記プロジェクトを構成するプロジェクト要素を前記取得ステップで取得されたプロセスモデル要素により定義するとともに、プロジェクト要素間の関係を前記取得ステップで取得されたプロセスモデル要素間のリンクにより定義するプロジェクト管理情報を生成する生成ステップとを備えることを特徴とするプロジェクト管理方法。
【請求項９】
入力装置と処理装置と記憶装置とを有し、プロジェクトの管理に係るソフトウェアのプロセスを定義するプロセスモデル要素とプロセスモデル要素間のリンクとで構成されたプロセスモデルを利用して、前記プロジェクトの管理に関するプロジェクト管理情報を生成するプロジェクト管理装置により実行されるプロジェクト管理プログラムにおいて、
前記プロセスモデル要素にメタ情報を与えるプロセスメタモデル要素と前記プロセスモデル要素間のリンクにメタ情報を与えるプロセスメタモデル要素間の関連とで構成されたプロセスメタモデルを示すプロセスメタモデル情報を予め前記記憶装置に記憶させる記憶処理と、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記プロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記プロセスメタモデル要素間の関連により設定し、当該設定の内容をプロセスモデル利用情報として前記記憶装置に記憶させる設定処理と、
前記プロセスモデルを示すプロセスモデル情報を前記入力装置により入力する入力処理と、
前記記憶装置に記憶されたプロセスメタモデル情報とプロセスモデル利用情報とに基づいて、前記設定処理により設定されたプロセスモデル要素とプロセスモデル要素間のリンクとに該当するものを前記入力装置により入力されたプロセスモデル情報が示すプロセスモデルから前記処理装置により取得する取得処理と、
前記プロジェクトを構成するプロジェクト要素を前記取得処理により取得されたプロセスモデル要素により定義するとともに、プロジェクト要素間の関係を前記取得処理により取得されたプロセスモデル要素間のリンクにより定義するプロジェクト管理情報を前記処理装置により生成する生成処理とをコンピュータに実行させることを特徴とするプロジェクト管理プログラム。
【請求項１０】
前記記憶装置に予め記憶されたプロセスメタモデル情報が示すプロセスメタモデルは、成果物を表すプロセスメタモデル要素と階層関係を表すプロセスメタモデル要素間の関連とを含み、
前記設定処理は、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記成果物を表すプロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記階層関係を表すプロセスメタモデル要素間の関連により設定し、
前記生成処理は、
前記プロジェクト要素として、プロジェクトにおける成果物を分解してツリー状に構成したＷＢＳ（ワークブレークダウンストラクチャ）の構成要素を定義するとともに、前記プロジェクト要素間の関係として、前記ＷＢＳの階層関係を定義するＷＢＳを、前記プロジェクト管理情報として生成することを特徴とする請求項９に記載のプロジェクト管理プログラム。
【請求項１１】
前記記憶装置に予め記憶されたプロセスメタモデル情報が示すプロセスメタモデルは、成果物及び作業を表すプロセスメタモデル要素と成果物及び作業の対応関係を表すプロセスメタモデル要素間の関連とを含み、
前記設定処理は、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記成果物及び作業を表すプロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記成果物及び作業の対応関係を表すプロセスメタモデル要素間の関連により設定し、
前記生成処理は、
前記プロジェクト要素として、プロジェクトにおける成果物を分解してツリー状に構成したＷＢＳ（ワークブレークダウンストラクチャ）の最下層に含まれるワークパッケージと前記ワークパッケージをさらに詳細な作業に分解したアクティビティとを定義するとともに、前記プロジェクト要素間の関係として、前記ワークパッケージと前記アクティビティとの対応関係を定義するプロジェクト管理情報を生成することを特徴とする請求項９に記載のプロジェクト管理プログラム。
【請求項１２】
前記記憶装置に予め記憶されたプロセスメタモデル情報が示すプロセスメタモデルは、作業を表すプロセスメタモデル要素と作業間の順序関係を表すプロセスメタモデル要素間の関連とを含み、
前記設定処理は、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記作業を表すプロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記作業間の順序関係を表すプロセスメタモデル要素間の関連により設定し、
前記生成処理は、
前記プロジェクト要素として、プロジェクトにおける成果物を分解してツリー状に構成したＷＢＳ（ワークブレークダウンストラクチャ）の最下層に含まれるワークパッケージをさらに詳細な作業に分解したアクティビティを定義するとともに、前記プロジェクト要素間の関係として、アクティビティ間の順序関係を定義するプロジェクト管理情報を生成することを特徴とする請求項９に記載のプロジェクト管理プログラム。
【請求項１３】
前記記憶装置に予め記憶されたプロセスメタモデル情報が示すプロセスメタモデルは、作業及び役割を表すプロセスメタモデル要素と作業及び役割の対応関係を表すプロセスメタモデル要素間の関連とを含み、
前記設定処理は、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記作業及び役割を表すプロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記作業及び役割の対応関係を表すプロセスメタモデル要素間の関連により設定し、
前記入力処理は、さらに、
前記設定処理により前記役割を表すプロセスメタモデル要素により設定されたプロセスモデル要素とプロジェクトにおける成果物を分解してツリー状に構成したＷＢＳ（ワークブレークダウンストラクチャ）の最下層に含まれるワークパッケージをさらに詳細な作業に分解したアクティビティを担当する役割を持つ担当者とを対応付けるプロセスモデル対応情報を前記入力装置により入力し、
前記生成処理は、
前記プロジェクト要素として、前記アクティビティを定義し、前記入力装置により入力されたプロセスモデル対応情報に基づいて前記担当者を定義するとともに、前記プロジェクト要素間の関係として、前記アクティビティと前記担当者との対応関係を定義するプロジェクト管理情報を生成することを特徴とする請求項９に記載のプロジェクト管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロジェクト管理装置及びプロジェクト管理方法及びプロジェクト管理プログラムに関するものである。特に、プロジェクト管理において、プロジェクトの計画に利用されるものに関する。
【背景技術】
【０００２】
まず本技術に関わる標準技術としてＰｒｏｊｅｃｔ  Ｍａｎａｇｅｍｅｎｔ  Ｂｏｄｙ  Ｏｆ  Ｋｎｏｗｌｅｄｇｅ（例えば、非特許文献１参照。以下、ＰＭＢＯＫ（登録商標）という。）とＳｏｆｔｗａｒｅ  Ｐｒｏｃｅｓｓ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｍｅｔａｍｏｄｅｌ（例えば、非特許文献２参照。以下、ＳＰＥＭという。）を説明する。
【０００３】
ＰＭＢＯＫ（登録商標）は適用対象に独立なプロジェクト管理一般に関わる業界標準である。ＰＭＢＯＫ（登録商標）はプロジェクト管理におけるプロセスを図１のように定義している。図１の行方向は知識エリア、列方向はプロセス群、行と列の交点（各項目）はプロセスを示している。各プロセス名の前の番号は非特許文献１の章節番号である。本発明の対象は「計画」プロセス群のうち、特に以下のプロセスである。
（１）「５．  プロジェクト・スコープ・マネジメント」知識エリアの「５．３  ＷＢＳ作成」プロセス
（２）「６．  プロジェクト・タイム・マネジメント」知識エリアの「６．１  アクティビティ定義」、「６．２  アクティビティ順序設定」、「６．３  アクティビティ資源見積り」の各プロセス
ＳＰＥＭはソフトウェアを開発するプロセス（手順や作業成果を定義したもの）のメタモデルである。ＳＰＥＭでは自身の位置付けを明確化するために、図２に示す４つのメタレベルを定義している。なお図２はＵｎｉｆｉｅｄ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ（例えば、非特許文献３参照。以下、ＵＭＬという。）の文法に準拠している。まずメタレベル１「プロセスモデル（Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌ）」は、具体的な開発プロセスのインスタンスが位置付けられるレベルであり、例えばＲａｔｉｏｎａｌ  Ｕｎｉｆｉｅｄ  Ｐｒｏｃｅｓｓ（登録商標）（例えば、非特許文献４参照。以下、ＲＵＰ（登録商標）という。）などが該当する。メタレベル２「プロセスメタモデル（Ｐｒｏｃｅｓｓ  Ｍｅｔａｍｏｄｅｌ）」は、開発プロセスそのものを表現する構成要素（例えばＡｃｔｉｖｉｔｙやＷｏｒｋＰｒｏｄｕｃｔ）が位置付けられるメタレベルであり、ＳＰＥＭはこのレベルに位置する。メタレベル３「メタオブジェクトファシリティ（ＭｅｔａＯｂｊｅｃｔ  Ｆａｃｉｌｉｔｙ）」は、メタレベル２を表現する構成要素が位置付けられるメタメタレベルである。メタレベル０「パフォーミングプロセス（Ｐｅｒｆｏｒｍｉｎｇ  ｐｒｏｃｅｓｓ）」は、具体的なプロジェクトにおいて計画して実行されるインスタンスが位置付けられるレベルである。
【０００４】
各メタレベルの相対的な関係を説明する。メタレベル３の構成要素をインスタンス化したものがメタレベル２の構成要素であり、同様にメタレベル２の構成要素をインスタンス化したものがメタレベル１の構成要素であり、更にメタレベル１の構成要素をインスタンス化したものがメタレベル０の構成要素となる。
【０００５】
ＳＰＥＭが定義するプロセスメタモデルはＵＭＬの文法に従いオブジェクト指向で定義されている。図３はプロセスメタモデルを示すメタレベル２のクラス図の抜粋である。プロセスモデルもＵＭＬ文法でプロセスメタモデルに則ってオブジェクト指向で定義される。プロセスモデルを定義する際、プロセスメタモデルの構成要素をどのＵＭＬ要素にマッピングするか、そのＵＭＬ要素はどのようなアイコンで示すかを図４に示す。図５から図１１はＵＭＬ文法で定義したプロセスモデルの例である。図１２は図５から図１１の内容を、プロセスモデルがプロセスメタモデルをインスタンス化したものであるという視点で表現したオブジェクト図である。図１２では、プロセスモデル要素はプロセスメタモデルが定義するクラスのインスタンス（矩形）で表現されている。プロセスモデル要素間のリンク（直線）は、プロセスメタモデルで定義された関連をインスタンス化したものである。
【０００６】
次にＰＭＢＯＫ（登録商標）とＳＰＥＭとの関係を説明する。ＰＭＢＯＫ（登録商標）が定義しているプロジェクト管理は、メタレベル２のプロセスメタモデルが定義する「Ｄｉｓｃｉｐｌｉｎｅ（作業分野）」のインスタンスであるといえる。
【０００７】
本発明の利用分野に関わるＷＢＳとアクティビティについて説明する。ＷＢＳはワークブレークダウンストラクチャ（Ｗｏｒｋ  Ｂｒｅａｋｄｏｗｎ  Ｓｔｒｕｃｔｕｒｅ）の略であり、プロジェクト全体のスコープを定義するため、プロジェクトに関わる要素をツリー構造で表現した（プロジェクトにおける成果物を分解してツリー状に構成した）ものである。ツリー構造上のノードとリーフをＷＢＳ要素と称する。ＷＢＳのリーフ（最下層のＷＢＳ要素）をワークパッケージと称する。アクティビティとは、ワークパッケージを達成するための作業要素である。各アクティビティは、担当する人的資源、所要期間、コストなどの情報を持つ。またアクティビティ間には依存関係が存在し、この依存関係はネットワーク構造となる。
【０００８】
次に従来のプロジェクト管理装置、方法及びプログラムについて説明する。
【０００９】
従来技術１．
非特許文献５「実務で役立つＷＢＳ入門」では、プロセスモデルからＷＢＳを作成する方法が開示されている。この技術の利用分野はＰＭＢＯＫ（登録商標）の「５．３  ＷＢＳ作成」である。図４７はこの技術の機能とデータの構成を示す図である。
【００１０】
図４８はこの技術におけるプロセスモデルの例（非特許文献６）、図４９は図４８のプロセスモデルから作成したＷＢＳである。この技術のプロセスモデルは工程をツリー構造で表現したものであり、「従来技術１のＷＢＳ生成部」ではこのプロセスモデルのツリー構造をＷＢＳのツリー構造に変換しているだけである。なおプロセスモデルはプロセスエンジニアが定義して用意する。
【００１１】
従来技術２．
特許文献１「設計支援方法およびその装置」では、プロセスモデルからアクティビティのネットワーク構造を自動生成する方式が開示されている。この技術の利用分野はＰＭＢＯＫ（登録商標）の「６．２  アクティビティ順序設定」である。
【００１２】
図５０はこの技術の機能とデータの構成を示す図である。この技術のプロセスモデルはアクティビティのネットワーク構造を示す表に過ぎない。このネットワーク構造が格納された表を入力として、それをそのままネットワーク構造図に展開しているだけである。なおプロセスモデルはプロセスエンジニアが定義して用意する。
【００１３】
従来技術３．
特許文献２「プロジェクト管理方法および工程定義装置」と特許文献３「製品構成工程管理システムおよび方法」では、開発対象の成果物構成情報を入力として、ＷＢＳを自動生成する方式が開示されている。この技術の利用分野はＰＭＢＯＫ（登録商標）の「５．３  ＷＢＳ作成」である。
【００１４】
図５１はこの技術の機能とデータの構成を示す図である。図５２は成果物構成情報の例、図５３は図５２の成果物構成情報から生成したＷＢＳである。なおこの技術の唯一の入力である成果物構成情報は、具体的なプロジェクトにおけるインスタンスなのでメタレベル０の情報である。
【特許文献１】特許第３５５７７１７号公報
【特許文献２】特開２００４−１１０１０２号公報
【特許文献３】特開平１１−２５９５７５号公報
【非特許文献１】Ｐｒｏｊｅｃｔ  Ｍａｎａｇｅｍｅｎｔ  Ｉｎｓｔｉｔｕｔｅ著、「Ａ  Ｇｕｉｄｅ  Ｔｏ  Ｔｈｅ  Ｐｒｏｊｅｃｔ  Ｍａｎａｇｅｍｅｎｔ  Ｂｏｄｙ  Ｏｆ  Ｋｎｏｗｌｅｄｇｅ：  Ｏｆｆｉｃｉａｌ  Ｊａｐａｎｅｓｅ  Ｔｒａｎｓｌａｔｉｏｎ」、第３版、Ｐｒｏｊｅｃｔ  Ｍａｎａｇｅｍｅｎｔ  Ｉｎｓｔｉｔｕｔｅ、２００５年２月１４日
【非特許文献２】ＯＭＧ、「Ｓｏｆｔｗａｒｅ  Ｐｒｏｃｅｓｓ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｍｅｔａｍｏｄｅｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ」、Ｖｅｒｓｉｏｎ  １．１、［ｏｎｌｉｎｅ］、２００５年１月６日、［２００５年５月１８日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｏｍｇ．ｏｒｇ／ｄｏｃｓ／ｆｏｒｍａｌ／０５−０１−０６．ｐｄｆ＞
【非特許文献３】ジェームズ・ランボー、外２名著、石塚圭樹監訳、日本ラショナルソフトウェア訳、「ＵＭＬリファレンスマニュアル」、ピアソン・エデュケーション、２００２年１月２５日
【非特許文献４】ＩＢＭ（登録商標）、Ｒａｔｉｏｎａｌ  Ｕｎｉｆｉｅｄ  Ｐｒｏｃｅｓｓ（登録商標）カタログ、２００３年１１月、［ｏｎｌｉｎｅ］、［２００５年５月１８日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ−６．ｉｂｍ．ｃｏｍ／ｊｐ／ｓｏｆｔｗａｒｅ／ｒａｔｉｏｎａｌ／ｐｒｏｄｕｃｔｓ／ｐｄｆ／ｒｕｐ．ｐｄｆ＞
【非特許文献５】Ｇｒｅｇｏｒｙ  Ｔ．  Ｈａｕｇａｎ著、伊藤衡監訳、「実務で役立つＷＢＳ入門」、翔泳社、２００５年３月１５日
【非特許文献６】ＳＬＣＰ−ＪＣＦ９８委員会編、「共通フレーム９８」、１９９８年版、通産資料調査会、１９９８年１０月
【非特許文献７】ＯＭＧ、「Ｒｅｓｐｏｎｓｅ  ｔｏ  ｔｈｅ  ＵＭＬ  ２．０  ＯＣＬ  ＲｆＰ  （ａｄ／２０００−０９−０３）」、Ｒｅｖｉｓｅｄ  Ｓｕｂｍｉｓｓｉｏｎ、Ｖｅｒｓｉｏｎ  １．６、２００３年１月６日、［ｏｎｌｉｎｅ］、［２００５年５月１８日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｏｍｇ．ｏｒｇ／ｄｏｃｓ／ａｄ／０３−０１−０７．ｐｄｆ＞
【発明の開示】
【発明が解決しようとする課題】
【００１５】
課題１．
図４７の「従来技術１のＷＢＳ生成部」は、各プロセスモデルが独自に持つ内部構造に依存している。しかし図２に示すように、プロセスモデルには、例えばＲＵＰ（登録商標）の他にも様々なものが存在する。このため従来技術１では、様々なプロセスモデルに対して、プロセスモデル毎に固有のＷＢＳ生成部が必要になってしまう。
【００１６】
課題２．
図４７の「従来技術１のＷＢＳ生成部」は、プロセスモデルからＷＢＳを生成する規則を内包しており、同じプロセスモデルからは同じＷＢＳしか生成できない。しかし図２に示すように、同じプロセスモデルが様々なプロジェクトに適用されることがあり、各プロジェクトは規模や複雑さ、組織構造とその成熟度、外部からの調達範囲、開発期間などが異なる。これらのプロジェクト間の差異はＷＢＳの階層の深さとＷＢＳ要素の詳細度に影響を与えるため、従来技術１では各プロジェクトに応じた適切なＷＢＳを生成できない。
【００１７】
課題３．
非特許文献５「実務で役立つＷＢＳ入門」で示されているようにＷＢＳの分解基準には、コンポーネント、サブシステム、プロジェクト、処理フェーズ、時間フェーズ、地域、組織、人、コスト項目などがあり、これらの分解基準はＷＢＳのツリー構造中に混在している。しかし図４７の「従来技術１のＷＢＳ生成部」は、プロセスモデルからＷＢＳを生成する規則が１つなので、ＷＢＳのツリー構造中のどの部分も同じ規則で単純に分解してしまう。このため従来技術１では、実用的なＷＢＳを生成できない。
【００１８】
課題４．
業界標準であるＳＰＥＭでは、プロセスモデルはオブジェクト指向で定義する。しかし図４７の「従来技術１のＷＢＳ生成部」は、ツリー構造で定義されたプロセスモデルをツリー構造のＷＢＳに変換しているだけである。また図５０の「従来技術２のアクティビティ情報生成部」はネットワーク構造で定義されたプロセスモデルをアクティビティのネットワーク構造に変換しているだけである。このため従来技術１と従来技術２は、オブジェクト指向で定義されたプロセスモデルには適用できない。
【００１９】
課題５．
ＷＢＳ要素と成果物構成情報はメタレベル０に位置付けられるので、それらはメタレベル１のプロセスモデル要素のインスタンスである。しかし図５１の「従来技術３のＷＢＳ生成部」はメタレベル０の情報である成果物構成情報のみ入力しているので、メタレベル１に関連付けられていないＷＢＳを生成している。このため従来技術３では成果物構成情報とＷＢＳが、プロセスモデルと乖離して矛盾する危険がある。
【００２０】
この発明は、プロジェクト管理において、例えば、プロセスモデルと整合がとれた計画を自動生成し、プロジェクト管理者の作業負荷を軽減することを目的とする。
【課題を解決するための手段】
【００２１】
本発明のプロジェクト管理装置は、
入力装置と処理装置と記憶装置とを有し、プロジェクトの管理に係るソフトウェアのプロセスを定義するプロセスモデル要素とプロセスモデル要素間のリンクとで構成されたプロセスモデルを利用して、前記プロジェクトの管理に関するプロジェクト管理情報を生成するプロジェクト管理装置において、
前記プロセスモデル要素にメタ情報を与えるプロセスメタモデル要素と前記プロセスモデル要素間のリンクにメタ情報を与えるプロセスメタモデル要素間の関連とで構成されたプロセスメタモデルを示すプロセスメタモデル情報を予め前記記憶装置に記憶させる記憶部と、
前記プロジェクト管理情報の生成に利用するプロセスモデル要素を前記プロセスメタモデル要素により設定するとともに、前記プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクを前記プロセスメタモデル要素間の関連により設定し、当該設定の内容をプロセスモデル利用情報として前記記憶装置に記憶させる設定部と、
前記プロセスモデルを示すプロセスモデル情報を前記入力装置により入力する入力部と、
前記記憶装置に記憶されたプロセスメタモデル情報とプロセスモデル利用情報とに基づいて、前記設定部により設定されたプロセスモデル要素とプロセスモデル要素間のリンクとに該当するものを前記入力装置により入力されたプロセスモデル情報が示すプロセスモデルから前記処理装置により取得する取得部と、
前記プロジェクトを構成するプロジェクト要素を前記取得部により取得されたプロセスモデル要素により定義するとともに、プロジェクト要素間の関係を前記取得部により取得されたプロセスモデル要素間のリンクにより定義するプロジェクト管理情報を前記処理装置により生成する生成部とを備えることを特徴とする。
【発明の効果】
【００２２】
本発明では、プロジェクト管理装置において、設定部が、プロジェクト管理情報の生成に利用するプロセスモデル要素とプロセスモデル要素間のリンクとをそれぞれプロセスメタモデル要素とプロセスメタモデル要素間の関連とにより設定し、取得部が、設定部により設定されたプロセスモデル要素とプロセスモデル要素間のリンクとに該当するものを入力装置により入力されたプロセスモデル情報が示すプロセスモデルから取得し、生成部が、プロジェクト要素を取得部により取得されたプロセスモデル要素により定義するとともに、プロジェクト要素間の関係を取得部により取得されたプロセスモデル要素間のリンクにより定義するプロジェクト管理情報を生成することにより、プロセスモデルと整合がとれた計画を自動生成することが可能となる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態について、図を用いて説明する。
【００２４】
実施の形態１．
本実施の形態では、プロセスメタモデルに基づいてプロセスモデルを解釈することによりＷＢＳを自動生成するプロジェクト管理方法を説明する。この方法はＰＭＢＯＫ（登録商標）が定義する「５．３  ＷＢＳ作成」プロセスに位置付けられる。
【００２５】
まず、本実施の形態に係るプロジェクト管理装置の構成について説明する。図１３は、本実施の形態に係るプロジェクト管理装置の構成を示す図である。
【００２６】
プロジェクト管理装置１００は、入力装置１０１、出力装置１０２、処理装置１０３、記憶装置１０４を有し、プロジェクトの管理に係るソフトウェアのプロセスを定義するプロセスモデル要素とプロセスモデル要素間のリンクとで構成されたプロセスモデルを利用して、プロジェクトの管理に関するプロジェクト管理情報を生成する。プロジェクト管理装置１００は、入力部１１１、出力部１１２、記憶部１１３、設定部１１４、取得部１１５、生成部１１６を備える。
【００２７】
プロジェクト管理装置１００は、本実施の形態に係るプロジェクト管理方法に用いられる。このプロジェクト管理方法において、入力部１１１、出力部１１２、記憶部１１３、設定部１１４、取得部１１５、生成部１１６は、それぞれ入力ステップ、出力ステップ、記憶ステップ、設定ステップ、取得ステップ、生成ステップに用いられる。
【００２８】
プロジェクト管理装置１００は、本実施の形態に係るプロジェクト管理プログラムを実行するコンピュータである。このプロジェクト管理プログラムにおいて、入力部１１１、出力部１１２、記憶部１１３、設定部１１４、取得部１１５、生成部１１６は、それぞれ入力処理、出力処理、記憶処理、設定処理、取得処理、生成処理を実行する。
【００２９】
次に、本実施の形態に係るプロジェクト管理装置の動作について説明する。図１４は、本実施の形態に係るプロジェクト管理装置の動作を示す図である。
【００３０】
以下の各ステップ（処理）は、主に処理装置１０３により実行される。
【００３１】
また、以下の各ステップ（処理）において、入力装置１０１により入力される情報などは、その情報などが取得され、変更され、利用され、または出力される際に、いったん記憶装置１０４に記憶されてもよい。同様に、出力装置１０２により出力される情報などは、その情報などが出力される際に、いったん記憶装置１０４に記憶されてもよい。
【００３２】
記憶部１１３は、プロセスモデル要素にメタ情報を与えるプロセスメタモデル要素とプロセスモデル要素間のリンクにメタ情報を与えるプロセスメタモデル要素間の関連とで構成されたプロセスメタモデルを示すプロセスメタモデル情報を予め記憶装置１０４に記憶させる（ステップＳ１０１：記憶ステップ（処理））。
【００３３】
設定部１１４は、プロジェクト管理情報の生成に利用するプロセスモデル要素をプロセスメタモデル要素により設定する（ステップＳ１０２）。また、プロジェクト管理情報の生成に利用するプロセスモデル要素間のリンクをプロセスメタモデル要素間の関連により設定する（ステップＳ１０３）。そして、当該設定の内容をプロセスモデル利用情報として記憶装置１０４に記憶させる（ステップＳ１０４）（ステップＳ１０２〜Ｓ１０４：設定ステップ（処理））。
【００３４】
入力部１１１は、プロセスモデルを示すプロセスモデル情報を入力装置１０１により入力する（ステップＳ１０５：入力ステップ（処理））。
【００３５】
取得部１１５は、記憶装置１０４に記憶されたプロセスメタモデル情報とプロセスモデル利用情報とを読み出す（ステップＳ１０６）。そして、記憶装置１０４から読み出したプロセスメタモデル情報とプロセスモデル利用情報とに基づいて、設定部１１４により設定されたプロセスモデル要素とプロセスモデル要素間のリンクとに該当するものを入力装置１０１により入力されたプロセスモデル情報が示すプロセスモデルから取得する（ステップＳ１０７）（ステップＳ１０６、Ｓ１０７：取得ステップ（処理））。
【００３６】
生成部１１６は、プロジェクトを構成するプロジェクト要素を取得部１１５により取得されたプロセスモデル要素により定義する（ステップＳ１０８）。また、プロジェクト要素間の関係を取得部１１５により取得されたプロセスモデル要素間のリンクにより定義する（ステップＳ１０９）。そして、当該定義の内容をプロジェクト管理情報として生成する（ステップＳ１１０）（ステップＳ１０８〜Ｓ１１０：生成ステップ（処理））。
【００３７】
出力部１１２は、生成部１１６により生成されたプロジェクト管理情報を出力する（ステップＳ１１１：出力処理（ステップ））。
【００３８】
図１５は実施の形態１を示す機能とデータの構成図である。
【００３９】
プロセスメタモデル２０１はプロセスモデル２０２のメタモデルであり、例えば図３の内容を格納している。図３はＯＭＧ（Ｏｂｊｅｃｔ  Ｍａｎａｇｅｍｅｎｔ  Ｇｒｏｕｐ（登録商標））が定義するＳＰＥＭの抜粋であるが、ＳＰＥＭと異なるプロセスメタモデルでも構わない。
【００４０】
プロセスメタモデル２０１は、プロセスモデル要素にメタ情報を与えるプロセスメタモデル要素と、プロセスモデル要素間のリンクにメタ情報を与えるプロセスメタモデル要素間の関連とで構成される。例えば、図３に示したプロセスメタモデル２０１では、各クラスがプロセスメタモデル要素に相当し、クラス間の関連がプロセスメタモデル要素間の関連に相当する。
【００４１】
プロセスモデル２０２はプロセスメタモデル２０１に則ってオブジェクト指向で定義された開発プロセスのモデルであり、例えば図５から図１２の内容を格納している。
【００４２】
プロセスモデル２０２は、プロジェクトの管理に係るソフトウェアのプロセスを定義するプロセスモデル要素と、プロセスモデル要素間のリンクとで構成される。例えば、図１２に示したプロセスモデル２０２では、各オブジェクトがプロセスモデル要素に相当し、オブジェクト間のリンクがプロセスモデル要素間のリンクに相当する。
【００４３】
ＷＢＳマッピング２０３は、オブジェクト指向で定義されたプロセスモデルをツリー構造で定義されたＷＢＳにマッピングするために、プロセスメタモデル要素間にＷＢＳにおける上位と下位の関係を設定した表である。ＷＢＳマッピング２０３には、例えば図１６あるいは図１７の内容が格納されている。なお「下位プロセスメタモデル要素の問合せ操作」欄はＯＭＧが定義するオブジェクト制約言語（ＯＣＬ：Ｏｂｊｅｃｔ  Ｃｏｎｓｔｒａｉｎｔ  Ｌａｎｇｕａｇｅ）（非特許文献７）の文法に従って記述している。
【００４４】
ＷＢＳマッピング２０３は、プロセスモデル利用情報の一例である。プロセスモデル利用情報は、プロジェクト管理情報の生成に利用するプロセスモデル要素とプロセスモデル要素間のリンクを、それぞれプロセスメタモデル要素とプロセスメタモデル要素間の関連により設定した内容を示す。例えば、図１６及び図１７に示したＷＢＳマッピング２０３では、「プロセスメタモデル要素」は成果物を表し（例えば、“ＷｏｒｋＰｒｏｄｕｃｔ”）、ＷＢＳマッピング２０３（特に、「下位プロセスメタモデル要素の問合せ操作」）はプロセスメタモデル要素間の関連により階層関係を表している（例えば、“ｓｅｌｆ．ｂｅｈａｖｉｏｒｓ．ｔｒａｎｓｉｔｉｏｎｓ．ｔａｒｇｅｔ．ｔｙｐｅ−＞ｓｅｌｅｃｔ（ｏｃｌＩｓＴｙｐｅＯｆ（ＷｏｒｋＰｒｏｄｕｃｔ）＝ｔｒｕｅ）”）。
【００４５】
ＷＢＳルート２０４には、ＷＢＳを生成する際にＷＢＳのルートに対応させるプロセスモデル要素が格納されている。
【００４６】
ＷＢＳ生成部３０１は、生成部１１６の一例であり、プロセスメタモデル２０１、プロセスモデル２０２、ＷＢＳマッピング２０３、ＷＢＳルート２０４を入力として、ＷＢＳ情報２０５、ＷＢＳ要素メタ情報２０６を出力する。
【００４７】
ＷＢＳ情報２０５にはＷＢＳ要素がツリー構造で格納される。例えばＷＢＳルート２０４として「シンプルプロセス」プロセスモデル要素、ＷＢＳマッピング２０３として図１６に示す内容を入力すると、ＷＢＳ生成部３０１が図１８に示す内容を出力し、出力された内容がＷＢＳ情報２０５に格納される。
【００４８】
ＷＢＳ要素メタ情報２０６にはＷＢＳ情報２０５に格納されている各ＷＢＳ要素がどのプロセスモデル要素に対応するかを示す情報が格納される。
【００４９】
ＷＢＳ（ＷＢＳ情報２０５、またはＷＢＳ情報２０５及びＷＢＳ要素メタ情報２０６）は、プロジェクトの管理に関するプロジェクト管理情報の一例である。プロジェクト管理情報は、プロジェクトを構成するプロジェクト要素をプロセスモデル要素により定義するとともに、プロジェクト要素間の関係をプロセスモデル要素間のリンクにより定義する。
【００５０】
次に本実施の形態におけるプロジェクト管理装置１００の動作について図１３と図１４を用いて説明する。
【００５１】
記憶部１１３は、プロセスメタモデル２０１（プロセスメタモデル情報）を予め記憶装置１０４に記憶させる（図１４のステップＳ１０１）。
【００５２】
設定部１１４は、ＷＢＳの生成に利用するプロセスモデル要素を個別に設定する代わりに、例えば図１６及び図１７に示したようなＷＢＳマッピング２０３における「プロセスメタモデル要素」を設定する（図１４のステップＳ１０２）。また、ＷＢＳの生成に利用するプロセスモデル要素間のリンクを個別に設定する代わりに、例えば図１６及び図１７に示したようなＷＢＳマッピング２０３における「下位プロセスメタモデル要素」と「下位プロセスメタモデル要素の問合せ操作」を設定する（図１４のステップＳ１０３）。そして、設定したＷＢＳマッピング２０３をプロセスモデル利用情報として記憶装置１０４に記憶させる（図１４のステップＳ１０４）。
【００５３】
入力部１１１は、記憶装置１０４にプロセスモデル２０２（プロセスモデル情報）が複数記憶されている場合、その中から１つのプロセスモデル２０２を指定する（図１４のステップＳ１０５）。そして、指定したプロセスモデル２０２を構成する複数のプロセスモデル要素の中からＷＢＳルート２０４として設定するプロセスモデル要素を指定する。また、入力部１１１は、記憶装置１０４にＷＢＳマッピング２０３が複数記憶されている場合、その中から１つのＷＢＳマッピング２０３を指定する。プロジェクト管理者は、入力装置１０１及び入力部１１１を介してＷＢＳマッピング２０３、ＷＢＳルート２０４（プロセスモデル要素）を指定後、ＷＢＳ生成部３０１を起動する。
【００５４】
取得部１１５は、記憶装置１０４からプロセスメタモデル２０１（プロセスメタモデル情報）と入力部１１１により指定されたＷＢＳマッピング２０３（プロセスモデル利用情報）とを読み出す（図１４のステップＳ１０６）。そして、記憶装置１０４から読み出したプロセスメタモデル２０１とＷＢＳマッピング２０３とに基づいて、入力部１１１により指定されたプロセスモデル２０２からＷＢＳの構成要素となるプロセスモデル要素及びプロセスモデル要素間のリンクとに該当するものを取得する（図１４のステップＳ１０７）。
【００５５】
ＷＢＳ生成部３０１は、入力部１１１により指定されたプロセスモデル要素をＷＢＳルート２０４とし、ＷＢＳの構成要素（プロジェクト要素）を取得部１１５により取得されたプロセスモデル要素により定義し（図１４のステップＳ１０８）、ＷＢＳの階層関係（プロジェクト要素間の関係）を取得部１１５により取得されたプロセスモデル要素間のリンクにより定義して（図１４のステップＳ１０９）、ＷＢＳを生成する（図１４のステップＳ１１０）。
【００５６】
出力部１１２は、ＷＢＳ生成部３０１により生成されたＷＢＳを出力する（図１４のステップＳ１１１）。
【００５７】
図１９は上記の動作を実現するためのクラス図である。まず各クラスを説明する。
【００５８】
ＷＢＳＧｅｎｅｒａｔｏｒはプロジェクト管理者が起動する操作ｇｅｎｅｒａｔｅ（）を持つクラスであり、ＷＢＳ生成部３０１に含まれる。
【００５９】
ＭｏｄｅｌＩｔｅｒａｔｏｒはプロセスモデル２０２中のプロセスモデル要素をインスタンス構造に沿って走査する際に現在の走査位置を示すクラスであり、このクラスがＷＢＳＥｌｅｍｅｎｔをインスタンス化してツリー状に構造化する。ＭｏｄｅｌＩｔｅｒａｔｏｒはＷＢＳ生成部３０１に含まれる。
【００６０】
ＭｏｄｅｌＥｌｅｍｅｎｔはＳＰＥＭが定義する全てのプロセスメタモデル要素の親クラスであり、プロセスメタモデル２０１に含まれる。このＭｏｄｅｌＥｌｅｍｅｎｔのインスタンスがプロセスモデル要素となり、このインスタンスはプロセスモデル２０２に含まれる。
【００６１】
ＷＢＳＥｌｅｍｅｎｔはツリー構造上のＷＢＳ要素を示すクラスであり、ＷＢＳ情報２０５に含まれる。
【００６２】
ＷＢＳＥｌｅｍｅｎｔが集約するＭｏｄｅｌＥｌｅｍｅｎｔに対応する属性ｔｈｅＭｏｄｅｌＥｌｅｍｅｎｔは、ＷＢＳ要素がどのプロセスモデル要素に対応するかを示しており、これはＷＢＳ要素メタ情報２０６に含まれる。
【００６３】
ＷＢＳＭａｐｐｉｎｇは、ＭｏｄｅｌＥｌｅｍｅｎｔインスタンスを引数としてその下位のＭｏｄｅｌＥｌｅｍｅｎｔインスタンスをリターンする操作ｄｅｑｕｅｕｅ（）を持つクラスであり、ＷＢＳマッピング２０３に含まれる。
【００６４】
ＭｏｄｅｌＥｌｅｍｅｎｔＱｕｅｕｅは、ＷＢＳマッピング２０３の「下位プロセスメタモデル要素の問合せ操作」に合致したＭｏｄｅｌＥｌｅｍｅｎｔインスタンス群を格納した先入れ先出しキューであり、ＷＢＳマッピング２０３に含まれる。
【００６５】
次に各クラス間の関連を説明する。
【００６６】
ＷＢＳＧｅｎｅｒａｔｏｒはＭｏｄｅｌＩｔｅｒａｔｏｒを用いてＭｏｄｅｌＥｌｅｍｅｎｔインスタンス群を走査していく。ＭｏｄｅｌＩｔｅｒａｔｏｒはＭｏｄｅｌＥｌｅｍｅｎｔインスタンス群の構造を走査するためにＷＢＳＭａｐｐｉｎｇを集約している。またＭｏｄｅｌＩｔｅｒａｔｏｒは、現在のプロセスモデル２０２上の位置としてＭｏｄｅｌＥｌｅｍｎｅｔ、現在のＷＢＳ上の位置としてＷＢＳＥｌｅｍｅｎｔを集約している。ＷＢＳＥｌｅｍｅｎｔは自身に対応するプロセスモデル要素としてＭｏｄｅｌＥｌｅｍｅｎｔを集約している。ＷＢＳＭａｐｐｉｎｇはプロセスモデル要素を重複なく走査するための先入れ先出しキューＭｏｄｅｌＥｌｅｍｅｎｔＱｕｅｕｅを集約している。
【００６７】
次に各クラスの動作を図２０から図２４を用いて説明する。図２０から図２４は各クラスの動作を示すコードである。
【００６８】
プロジェクト管理者の入力操作により、プロジェクト管理装置１００は、まず図２０の行番号０２のｇｅｎｅｒａｔｅ（）を起動するために、ＷＢＳ生成に利用したいＷＢＳＭａｐｐｉｎｇをインスタンス化してＷＢＳマッピング２０３に格納する。
【００６９】
ＷＢＳＭａｐｐｉｎｇのインスタンス化は図２３の行番号０５〜１３で実行する。図２３の行番号０８ではＷＢＳマッピング２０３とプロセスモデル２０２を用いて、各ＭｏｄｅｌＥｌｅｍｅｎｔインスタンス毎に、ＷＢＳの下位になるＭｏｄｅｌＥｌｅｍｅｎｔインスタンスを格納したキューであるＭｏｄｅｌＥｌｅｍｅｎｔＱｕｅｕｅを生成する。例えばＷＢＳマッピング２０３として図１６に示した内容が指定された場合、図１２のプロセスモデル２０２のオブジェクト図に対して生成されるＭｏｄｅｌＥｌｅｍｅｎｔＱｕｅｕｅは図２５のようになる。
【００７０】
次にプロジェクト管理装置１００は、プロジェクト管理者がＷＢＳのルートにしたいＭｏｄｅｌＥｌｅｍｅｎｔをインスタンス化してＷＢＳルート２０４に格納する。そしてプロジェクト管理装置１００は、ＷＢＳのルートにするＭｏｄｅｌＥｌｅｍｅｎｔインスタンスと、利用したいＷＢＳＭａｐｐｉｎｇインスタンスを引数にして、図２０の行番号０２のｇｅｎｅｒａｔｅ（）を起動する。図２０の行番号０４〜０６のループによって、上位から下位に向かって走査し、下位が無いと上位に戻って再び下位に向かって走査することを繰り返し、プロセスモデル要素全てを走査する。
【００７１】
図２０の行番号０５で呼び出している「ｉｔｅｒａｔｏｒ．ａｎｏｔｈｅｒＤｏｗｎ（）」は図２１の行番号１４〜２５を実行する。図２１の行番号１４〜２５では、走査中の現在位置を示すｃｕｒｒｅｎｔＭｏｄｅｌに対する下位ＭｏｄｅｌＥｌｅｍｅｎｔインスタンスをＷＢＳＭａｐｐｉｎｇからデキューして、それをＷＢＳＥｌｅｍｅｎｔとして生成し、ツリー構造上に位置付ける。但し下位ＭｏｄｅｌＥｌｅｍｅｎｔが存在しない場合はｆａｌｓｅをリターンする。
【００７２】
図２１の行番号１５で呼び出している「ｔｈｅＷＢＳＭａｐｐｉｎｇ．ｄｅｑｕｅｕｅＦｒｏｍ（ｃｕｒｒｅｎｔＭｏｄｅｌ）」は図２３の行番号１５〜１８を実行する。図２３の行番号１５〜１８では、引数で指定されたａＭｏｄｅｌＥｌｅｍｅｎｔに対応するＭｏｄｅｌＥｌｅｍｅｎｔＱｕｅｕｅを取得し、ＭｏｄｅｌＥｌｅｍｅｎｔＱｕｅｕｅからｄｅｑｕｅｕｅ（図２４の行番号１４〜２０）する。但しデキューするＭｏｄｅｌＥｌｅｍｅｎｔが存在しない場合はＮＵＬＬをリターンする。
【００７３】
本実施の形態により以下の効果を奏する。
【００７４】
プロセスメタモデルを用いることにより、様々なプロセスモデルに対してＷＢＳを生成することができる。
【００７５】
ＷＢＳを生成するためのマッピング規則をＷＢＳマッピング２０３として分離したことにより、ＷＢＳマッピング２０３を交換するだけで各開発プロジェクトの特性に応じた様々なＷＢＳを生成することができる。
【００７６】
ＷＢＳ生成部３０１への入力としてプロセスモデル２０２上のＷＢＳルート２０４を指定可能にしたことにより、プロセスモデル２０２上の部分毎にＷＢＳマッピング２０３を交換するだけで、ＷＢＳの部分毎に様々な分解基準を適用することができる。
【００７７】
ＷＢＳマッピング２０３において、オブジェクト指向モデルの要素間の上位と下位の関係をオブジェクトの問合せ操作で定義可能にしたことにより、オブジェクト指向で定義されたプロセスモデル２０２からツリー構造のＷＢＳを生成することができる。
【００７８】
生成したＷＢＳ要素をプロセスモデル要素と対応付けることにより、ＷＢＳによるプロジェクト計画と開発プロセスの整合性を維持することができる。
【００７９】
以上のように、本実施の形態で説明したプロジェクト管理方法及びプロジェクト管理プログラム及びプロジェクト管理装置は、
プロセスメタモデルに基づいてプロセスモデルを解釈することによりＷＢＳを自動生成する「ＷＢＳ生成部」を備えることを特徴とする。
【００８０】
実施の形態２．
本実施の形態では、プロセスメタモデルに基づいてプロセスモデルを解釈することにより、ＷＢＳ最下層のワークパッケージを達成する（詳細な作業に分解した）アクティビティ群を自動生成するプロジェクト管理方法を説明する。この方法はＰＭＢＯＫ（登録商標）が定義する「６．１  アクティビティ定義」プロセスに位置付けられる。
【００８１】
本実施の形態に係るプロジェクト管理装置の構成は、実施の形態１で説明した図１３のものと同様である。
【００８２】
また、本実施の形態に係るプロジェクト管理装置の動作は、実施の形態１で説明した図１４のものと同様である。
【００８３】
図２６は実施の形態２を示す機能とデータの構成図である。
【００８４】
アクティビティ情報２０７にはワークパッケージを達成するためのアクティビティ群が格納される。なおここで言うアクティビティはＰＭＢＯＫ（登録商標）が定義する「６．５  スケジュール作成」のためのものであり、ＳＰＥＭが定義するメタレベル０に位置している。このアクティビティは、メタレベル２のプロセスメタモデルが定義しているＡｃｔｉｖｉｔｙとは別物であることに注意されたい。
【００８５】
アクティビティメタ情報２０８にはアクティビティ情報２０７に格納されている各アクティビティがどのプロセスモデル要素に対応するかを示す情報が格納される。
【００８６】
アクティビティ群（アクティビティ情報２０７、またはアクティビティ情報２０７及びアクティビティメタ情報２０８）は、プロジェクトの管理に関するプロジェクト管理情報の一例である。プロジェクト管理情報は、プロジェクトを構成するプロジェクト要素をプロセスモデル要素により定義するとともに、プロジェクト要素間の関係をプロセスモデル要素間のリンクにより定義する。
【００８７】
アクティビティ情報生成部３０２は、生成部１１６の一例であり、プロセスメタモデル２０１、プロセスモデル２０２、ＷＢＳ情報２０５、ＷＢＳ要素メタ情報２０６を入力として、アクティビティ情報２０７、アクティビティメタ情報２０８を出力する。プロセスメタモデル２０１には成果物及び作業を表すプロセスメタモデル要素が含まれ（例えば、“ＷｏｒｋＰｒｏｄｕｃｔ”、“Ａｃｔｉｖｉｔｙ”）、成果物及び作業の対応関係はプロセスメタモデル要素間の関連により表される（例えばＷｏｒｋＰｒｏｄｕｃｔのインスタンスａＷｏｒｋＰｒｏｄｕｃｔを出力するアクティビティ群は以下のＯＣＬ式で表される。“ａＷｏｒｋＰｒｏｄｕｃｔ．ｏｂｊｅｃｔＦｌｏｗＳｔａｔｅｓ．ｉｎｃｏｍｉｎｇｓ．ｓｏｕｒｃｅ−＞ｓｅｌｅｃｔ（ｏｃｌＩｓＴｙｐｅＯｆ（ＡｃｔｉｏｎＳｔａｔｅ）＝ｔｒｕｅ）．ｏｐｅｒａｔｉｏｎ−＞ｓｅｌｅｃｔ（ｏｃｌＩｓＴｙｐｅＯｆ（Ａｃｔｉｖｉｔｙ）＝ｔｒｕｅ）”）。
【００８８】
図２６におけるその他の構成要素は図１５と同じである。
【００８９】
アクティビティ情報生成部３０２が出力したアクティビティ情報２０７の例を図２７に示す。これはプロセスメタモデル２０１として図３、プロセスモデル２０２として図５から図１２、ＷＢＳ（ＷＢＳ情報２０５、またはＷＢＳ情報２０５及びＷＢＳ要素メタ情報２０６）として図１８に示したものが格納されている場合の出力結果である。
【００９０】
次に本実施の形態におけるプロジェクト管理装置１００の動作について図１３と図１４を用いて説明する。
【００９１】
記憶部１１３は、プロセスメタモデル２０１（プロセスメタモデル情報）とＷＢＳを予め記憶装置１０４に記憶させる（図１４のステップＳ１０１）。ここで、ＷＢＳとしては実施の形態１に係るプロジェクト管理装置が生成したものが利用できる。
【００９２】
設定部１１４は、アクティビティ群の生成に利用するプロセスモデル要素を個別に設定する代わりに、ＷｏｒｋＰｒｏｄｕｃｔを成果物を表すプロセスメタモデル要素として、Ａｃｔｉｖｉｔｙを作業を表すプロセスメタモデル要素として設定する（図１４のステップＳ１０２）。また、アクティビティ群の生成に利用するプロセスモデル要素間のリンクをＷｏｒｋＰｒｏｄｕｃｔとＡｃｔｉｖｉｔｙとの間の関連により設定する（図１４のステップＳ１０３）。そして、設定した内容をプロセスモデル利用情報として記憶装置１０４に記憶させる（図１４のステップＳ１０４）。
【００９３】
入力部１１１は、記憶装置１０４にプロセスモデル２０２（プロセスモデル情報）が複数記憶されている場合、その中から１つのプロセスモデル２０２を指定する（図１４のステップＳ１０５）。また、入力部１１１は、記憶装置１０４にＷＢＳ（ＷＢＳ情報２０５、またはＷＢＳ情報２０５及びＷＢＳ要素メタ情報２０６）が複数記憶されている場合、その中から１つのＷＢＳを指定する。そして、指定したＷＢＳの中からアクティビティ群の生成の対象とするサブツリーのルート（ＷＢＳのルートでもよい。）を指定する。プロジェクト管理者は、入力装置１０１及び入力部１１１を介してＷＢＳ、ルートを指定後、アクティビティ情報生成部３０２を起動する。
【００９４】
取得部１１５は、記憶装置１０４からプロセスメタモデル２０１とプロセスモデル利用情報とを読み出す（図１４のステップＳ１０６）。そして、記憶装置１０４から読み出したプロセスメタモデル２０１とプロセスモデル利用情報とに基づいて、入力部１１１により指定されたプロセスモデル２０２からアクティビティに該当するものを取得する（図１４のステップＳ１０７）。
【００９５】
アクティビティ情報生成部３０２は、入力部１１１により指定されたＷＢＳ要素をルートとしたＷＢＳのサブツリーに属するアクティビティを取得部１１５により取得されたプロセスモデル要素により定義し（図１４のステップＳ１０８）、ワークパッケージとアクティビティとの対応関係を定義して（図１４のステップＳ１０９）、アクティビティ群（アクティビティ情報２０７、またはアクティビティ情報２０７及びアクティビティメタ情報２０８）を生成する（図１４のステップＳ１１０）。
【００９６】
出力部１１２は、アクティビティ情報生成部３０２により生成されたアクティビティ群を出力する（図１４のステップＳ１１１）。
【００９７】
図２８は上記の動作を実現するためのクラス図である。まず各クラスを説明する。
【００９８】
ＡｃｔｉｖｉｔｙＧｅｎｅｒａｔｏｒはプロジェクト管理者が起動する操作ｇｅｎｅｒａｔｅ（）を持つクラスであり、アクティビティ情報生成部３０２に含まれる。
【００９９】
ＷＢＳＩｔｅｒａｔｏｒはＷＢＳ情報２０５中のＷＢＳ要素をツリー構造に沿って走査する際に現在の走査位置を示すクラスであり、このクラスがＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙをインスタンス化する。ＷＢＳＩｔｅｒａｔｏｒはアクティビティ情報生成部３０２に含まれる。
【０１００】
ＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙはメタレベル０におけるアクティビティを示すクラスである。
【０１０１】
図２８におけるその他のクラスは図１９と同じである。
【０１０２】
次に各クラス間の関連を説明する。
【０１０３】
ＡｃｔｉｖｉｔｙＧｅｎｅｒａｔｏｒはＷＢＳＩｔｅｒａｔｏｒを用いてＷＢＳ中のＷＢＳ要素を走査していく。ＷＢＳＩｔｅｒａｔｏｒは、現在のＷＢＳ上の位置としてＷＢＳＥｌｅｍｅｎｔを集約している。ＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙはネットワーク構造における自身の次に位置するアクティビティとしてＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙを集約している。ＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙが持つＭｏｄｅｌＥｌｅｍｅｎｔとの関連のロールｔｈｅＭｏｄｅｌＥｌｅｍｅｎｔは、アクティビティがプロセスモデル要素のどれに対応しているかを示し、アクティビティメタ情報２０８に格納される。
【０１０４】
次に各クラスの動作を図２９から図３１を用いて説明する。図２９から図３１は各クラスの動作を示すコードである。
【０１０５】
プロジェクト管理者の入力操作により、プロジェクト管理装置１００は、生成したいＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙに対応するＷＢＳＥｌｅｍｅｎｔのルートインスタンスｒｏｏｔを引数に図２９の行番号０３の操作ｇｅｎｅｒａｔｅ（）を起動する。図２９の行番号０６〜１７のループでは、ＷＢＳのツリー構造を上位からまだ走査していない下位へ走査し、まだ走査していない下位がなければ１つ上に戻り、同様に繰り返すことによりＷＢＳツリー構造の全てのＷＢＳＥｌｅｍｅｎｔインスタンスを走査する。
【０１０６】
図２９の行番号０９では現在走査しているＷＢＳＥｌｅｍｅｎｔインスタンスに対応するＭｏｄｅｌＥｌｅｍｅｎｔインスタンスがＷｏｒｋＰｒｏｄｕｃｔであるかを真偽判定する。真の場合、図２９の行番号１０にてそのＷｏｒｋＰｒｏｄｕｃｔを出力するＡｃｔｉｖｉｔｙインスタンス群を選択する。図２９の行番号１１〜１４のループで、選択したＡｃｔｉｖｉｔｙインスタンス群に対応するＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙ群をインスタンス化し、それらをＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙの配列ｍｅｔａＺｅｒｏＡｃｔｉｖｉｔｉｅｓに格納する。
【０１０７】
本実施の形態により以下の効果を奏する。
【０１０８】
プロセスメタモデルを用いることにより、様々なプロセスモデルを入力にしてアクティビティ群を生成することができる。
【０１０９】
生成したアクティビティはプロセスモデル要素と対応付けられていることにより、アクティビティによるスケジュール計画とプロセスモデルとの整合性を維持することができる。
【０１１０】
以上のように、本実施の形態で説明したプロジェクト管理方法及びプロジェクト管理プログラム及びプロジェクト管理装置は、
プロセスメタモデルに基づいてプロセスモデルを解釈することにより、ＷＢＳ最下層のワークパッケージを達成するアクティビティ群を自動生成する「アクティビティ情報生成部」を備えることを特徴とする。
【０１１１】
実施の形態３．
本実施の形態では、プロセスメタモデルに基づいてプロセスモデルを解釈することにより、プロセスモデル要素と対応付けられたアクティビティ間の順序を自動設定するプロジェクト管理方法を説明する。この方法はＰＭＢＯＫ（登録商標）が定義する「６．２  アクティビティ順序設定」プロセスに位置付けられる。
【０１１２】
本実施の形態に係るプロジェクト管理装置の構成は、実施の形態１で説明した図１３のものと同様である。
【０１１３】
また、本実施の形態に係るプロジェクト管理装置の動作は、実施の形態１で説明した図１４のものと同様である。
【０１１４】
図３２は実施の形態３を示す機能とデータの構成図である。
【０１１５】
アクティビティ順序情報２０９にはアクティビティ間のスケジュール上の順序関係が格納される。
【０１１６】
アクティビティ順序情報２０９は、プロジェクトの管理に関するプロジェクト管理情報の一例である。プロジェクト管理情報は、プロジェクトを構成するプロジェクト要素をプロセスモデル要素により定義するとともに、プロジェクト要素間の関係をプロセスモデル要素間のリンクにより定義する。
【０１１７】
アクティビティ順序生成部３０３は、生成部１１６の一例であり、プロセスメタモデル２０１、プロセスモデル２０２、アクティビティ情報２０７、アクティビティメタ情報２０８を入力として、アクティビティ順序情報２０９を出力する。プロセスメタモデル２０１には作業を表すプロセスメタモデル要素が含まれ（例えば、“Ａｃｔｉｖｉｔｙ”）、作業間の順序関係はプロセスメタモデル要素間の関連により表される（例えばＡｃｔｉｖｉｔｙのインスタンスａＡｃｔｉｖｉｔｙに後続するＡｃｔｉｖｉｔｙ群は以下のＯＣＬ式で表される。“ｓｅｌｆ．ａｃｔｉｏｎＳｔａｔｅ．ｏｕｔｇｏｉｎｇｓ．ｔａｒｇｅｔ−＞ｓｅｌｅｃｔ（ｔｙｐｅ．ｏｃｌＩｓＴｙｐｅＯｆ（ＷｏｒｋＰｒｏｄｕｃｔ）＝ｔｒｕｅ）．ｏｕｔｇｏｉｎｇｓ．ｔａｒｇｅｔ．ｏｐｅｒａｔｉｏｎ−＞ｓｅｌｅｃｔ（ｏｃｌＩｓＴｙｐｅＯｆ（Ａｃｔｉｖｉｔｙ）＝ｔｒｕｅ）”）。
【０１１８】
図３２におけるその他の構成要素は図２６と同じである。
【０１１９】
アクティビティ順序生成部３０３が出力したアクティビティ順序情報２０９の例を図３３に示す。これはプロセスメタモデル２０１として図３、プロセスモデル２０２として図５から図１２、アクティビティ情報２０７及びアクティビティメタ情報２０８として図２７に示したものが格納されている場合の出力結果である。
【０１２０】
次に本実施の形態におけるプロジェクト管理装置１００の動作について図１３と図１４を用いて説明する。
【０１２１】
記憶部１１３は、プロセスメタモデル２０１（プロセスメタモデル情報）とアクティビティ群（アクティビティ情報２０７、またはアクティビティ情報２０７及びアクティビティメタ情報２０８）を予め記憶装置１０４に記憶させる（図１４のステップＳ１０１）。ここで、アクティビティ群としては実施の形態２に係るプロジェクト管理装置が生成したものが利用できる。
【０１２２】
設定部１１４は、アクティビティ順序情報２０９の生成に利用するプロセスモデル要素を個別に設定する代わりに、Ａｃｔｉｖｉｔｙを作業を表すプロセスメタモデル要素として設定する（図１４のステップＳ１０２）。また、アクティビティ順序情報２０９の生成に利用するプロセスモデル要素間のリンクをＡｃｔｉｖｉｔｙ間の順序関係を表す関連により設定する（図１４のステップＳ１０３）。そして、設定した内容をプロセスモデル利用情報として記憶装置１０４に記憶させる（図１４のステップＳ１０４）。
【０１２３】
入力部１１１は、記憶装置１０４にプロセスモデル２０２（プロセスモデル情報）が複数記憶されている場合、その中から１つのプロセスモデル２０２を指定する（図１４のステップＳ１０５）。また、入力部１１１は、記憶装置１０４に記憶されたアクティビティ群を指定する。プロジェクト管理者は、入力装置１０１及び入力部１１１を介してアクティビティ群を指定後、アクティビティ順序生成部３０３を起動する。
【０１２４】
取得部１１５は、記憶装置１０４からプロセスメタモデル２０１とプロセスモデル利用情報とを読み出す（図１４のステップＳ１０６）。そして、記憶装置１０４から読み出したプロセスメタモデル２０１とプロセスモデル利用情報とに基づいて、入力部１１１により指定されたプロセスモデル２０２からアクティビティに該当するものを取得する（図１４のステップＳ１０７）。
【０１２５】
アクティビティ順序生成部３０３は、入力部１１１により指定されたアクティビティ群に情報を付加する形で、アクティビティ間の順序関係を定義して（図１４のステップＳ１０９）、アクティビティ順序情報２０９を生成する（図１４のステップＳ１１０）。ここで、本実施の形態では、プロジェクト要素を生成部１１６が定義せず、入力部１１１により入力される情報（アクティビティ群）で代用するため、図１４のステップＳ１０９は不要である。
【０１２６】
出力部１１２は、アクティビティ順序生成部３０３により生成されたアクティビティ順序情報２０９を出力する（図１４のステップＳ１１１）。
【０１２７】
図３４は上記の動作を実現するためのクラス図である。まず各クラスを説明する。
【０１２８】
ＡｃｔｉｖｉｔｙＳｅｑｕｅｎｃｅｒはプロジェクト管理者が起動する操作ｇｅｎｅｒａｔｅ（）を持つクラスであり、アクティビティ順序生成部３０３に含まれる。
【０１２９】
図３４におけるその他のクラスは図２８と同じである。
【０１３０】
次に各クラス間の関連を説明する。
【０１３１】
ＡｃｔｉｖｉｔｙＳｅｑｕｅｎｃｅｒは引数で指定されたＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙインスタンス群に「終了−開始関係（ＦＳ）」を設定する。ＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙが自身に対して持つ関連のロールｎｅｘｔＡｃｔｉｖｉｔｉｅｓは、「終了−開始関係（ＦＳ）」に該当する後続アクティビティ群であり、これはアクティビティ順序情報２０９に格納される。
【０１３２】
次にクラスの動作を図３５を用いて説明する。図３５はクラスの動作を示すコードである。
【０１３３】
プロジェクト管理者の入力操作により、プロジェクト管理装置１００は、順序を生成したいＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙの配列を引数に図３５の行番号０３の操作ｇｅｎｅｒａｔｅ（）を起動する。
【０１３４】
図３５の行番号０４〜０７のループでは、引数で受け取ったＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙ配列の全ての要素に対して繰り返す。
【０１３５】
図３５の行番号０５では、ループ中の現在のｍｅｔａＺｅｒｏＡｃｔｉｖｉｔｙに対応するプロセスモデル要素インスタンスからＷｏｒｋＰｒｏｄｕｃｔを介してリンクされているＡｃｔｉｖｉｔｙインスタンス群をセレクトし、それらを自身の後続アクティビティｎｅｘｔＡｃｔｉｖｉｔｉｅｓに格納する。
【０１３６】
本実施の形態により以下の効果を奏する。
【０１３７】
プロセスメタモデルを用いることにより、様々なプロセスモデルを入力にしてアクティビティ順序を生成することができる。
【０１３８】
生成したアクティビティ順序はプロセスモデル要素と対応付けられていることにより、アクティビティによるスケジュール計画とプロセスモデルとの整合性を維持することができる。
【０１３９】
以上のように、本実施の形態で説明したプロジェクト管理方法及びプロジェクト管理プログラム及びプロジェクト管理装置は、
プロセスメタモデルに基づいてプロセスモデルを解釈することにより、プロセスモデル要素と対応付けられたアクティビティ間の順序を自動設定するアクティビティ順序生成部３０３を備えることを特徴とする。
【０１４０】
実施の形態４．
本実施の形態では、プロセスメタモデルに基づいてプロセスモデルを解釈することにより、プロセスモデル要素と対応付けられたアクティビティに対して担当者を自動設定するプロジェクト管理方法を説明する。この方法はＰＭＢＯＫ（登録商標）が定義する「６．３  アクティビティ資源見積り」プロセスに位置付けられる。
【０１４１】
本実施の形態に係るプロジェクト管理装置の構成は、実施の形態１で説明した図１３のものと同様である。
【０１４２】
また、本実施の形態に係るプロジェクト管理装置の動作は、実施の形態１で説明した図１４のものと同様である。
【０１４３】
図３６は実施の形態４を示す機能とデータの構成図である。
【０１４４】
担当者マッピング２１０にはプロセスメタモデル要素ＰｒｏｃｅｓｓＲｏｌｅのインスタンスであるプロセスモデル要素と担当者インスタンス（プロジェクト要素）のマッピングを示す情報が格納される。例えば担当者マッピング２１０には図３７の内容が格納されている。なおＰｒｏｃｅｓｓＲｏｌｅと担当者は多対多の関係にあることに注意されたい。
【０１４５】
アクティビティ担当者情報２１１はアクティビティを実施する担当者の情報を格納する。
【０１４６】
アクティビティ担当者情報２１１は、プロジェクトの管理に関するプロジェクト管理情報の一例である。プロジェクト管理情報は、プロジェクトを構成するプロジェクト要素をプロセスモデル要素により定義するとともに、プロジェクト要素間の関係をプロセスモデル要素間のリンクにより定義する。
【０１４７】
アクティビティ担当者設定部３０４は、生成部１１６の一例であり、プロセスメタモデル２０１、プロセスモデル２０２、アクティビティ情報２０７、アクティビティメタ情報２０８、担当者マッピング２１０を入力として、アクティビティ担当者情報２１１を出力する。プロセスメタモデル２０１には作業及び役割を表すプロセスメタモデル要素が含まれ（例えば、“Ａｃｔｉｖｉｔｙ”、“ＰｒｏｃｅｓｓＲｏｌｅ”）、作業及び役割の対応関係はプロセスメタモデル要素間の関連により表される。
【０１４８】
図３６におけるその他の構成要素は図３２と同じである。
【０１４９】
アクティビティ担当者設定部３０４が出力するアクティビティ担当者情報２１１の例を図３８に示す。これはプロセスメタモデル２０１として図３、プロセスモデル２０２として図５から図１２、アクティビティ情報２０７及びアクティビティメタ情報２０８として図２７、担当者マッピング２１０として図３７に示したものが格納されている場合の出力結果である。
【０１５０】
次に本実施の形態におけるプロジェクト管理装置１００の動作について図１３と図１４を用いて説明する。
【０１５１】
記憶部１１３は、プロセスメタモデル２０１（プロセスメタモデル情報）とアクティビティ群（アクティビティ情報２０７、またはアクティビティ情報２０７及びアクティビティメタ情報２０８）を予め記憶装置１０４に記憶させる（図１４のステップＳ１０１）。ここで、アクティビティ群としては実施の形態２に係るプロジェクト管理装置が生成したものが利用できる。
【０１５２】
設定部１１４は、アクティビティ担当者情報２１１の生成に利用するプロセスモデル要素を個別に設定する代わりに、Ａｃｔｉｖｉｔｙを作業を表すプロセスメタモデル要素として、ＰｒｏｃｅｓｓＲｏｌｅを役割を表すプロセスメタモデル要素として設定する（図１４のステップＳ１０２）。また、アクティビティ担当者情報２１１の生成に利用するプロセスモデル要素間のリンクをＡｃｔｉｖｉｔｙとＰｒｏｃｅｓｓＲｏｌｅとの間の関連により設定する（図１４のステップＳ１０３）。そして、設定した内容をプロセスモデル利用情報として記憶装置１０４に記憶させる（図１４のステップＳ１０４）。
【０１５３】
入力部１１１は、記憶装置１０４にプロセスモデル２０２（プロセスモデル情報）が複数記憶されている場合、その中から１つのプロセスモデル２０２を指定する（図１４のステップＳ１０５）。また、入力部１１１は、記憶装置１０４に記憶されたアクティビティ群を指定する。さらに、入力部１１１は、設定部１１４により設定されたプロセスモデル要素、即ち、ＰｒｏｃｅｓｓＲｏｌｅのインスタンスとアクティビティを担当する役割を持つ担当者（プロジェクト要素）とを対応付ける担当者マッピング２１０（プロセスモデル対応情報）を入力装置１０１により入力する。プロジェクト管理者は、入力装置１０１及び入力部１１１を介して担当者マッピング２１０を指定後、アクティビティ担当者設定部３０４を起動する。
【０１５４】
取得部１１５は、記憶装置１０４からプロセスメタモデル２０１とプロセスモデル利用情報とを読み出す（図１４のステップＳ１０６）。そして、記憶装置１０４から読み出したプロセスメタモデル２０１とプロセスモデル利用情報とに基づいて、入力部１１１により指定されたプロセスモデル２０２から担当者に該当するものを取得する（図１４のステップＳ１０７）。
【０１５５】
アクティビティ担当者設定部３０４は、アクティビティの担当者を入力装置１０１により入力された担当者マッピング２１０を基に定義し（図１４のステップＳ１０８）、入力部１１１により指定されたアクティビティ群に情報を付加する形で、アクティビティと担当者との対応関係を定義して（図１４のステップＳ１０９）、アクティビティ担当者情報２１１を生成する（図１４のステップＳ１１０）。
【０１５６】
出力部１１２は、アクティビティ担当者設定部３０４により生成されたアクティビティ担当者情報２１１を出力する（図１４のステップＳ１１１）。
【０１５７】
図３９は上記の動作を実現するためのクラス図である。まず各クラスを説明する。
【０１５８】
ＨｕｍａｎＲｅｓｏｕｒｃｅＡｓｓｉｇｎｅｒはプロジェクト管理者が起動する操作ｇｅｎｅｒａｔｅ（）を持つクラスであり、アクティビティ担当者設定部３０４に含まれる。
【０１５９】
ＨｕｍａｎＲｅｓｏｕｒｃｅは担当者を示すクラスであり、アクティビティ担当者情報２１１に含まれる。
【０１６０】
ＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐｐｉｎｇはプロセスメタモデル要素ＰｒｏｃｅｓｓＲｏｌｅのインスタンスとＨｕｍａｎＲｅｓｏｕｒｃｅインスタンスのマッピングを示すクラスであり、担当者マッピング２１０に含まれる。
【０１６１】
ＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐはＰｒｏｃｅｓｓＲｏｌｅインスタンスとＨｕｍａｎＲｅｓｏｕｒｃｅインスタンスのリンクを示すクラスであり、担当者マッピング２１０に含まれる。
【０１６２】
図３９におけるその他のクラスは図３４と同じである。
【０１６３】
次に各クラス間の関連を説明する。
【０１６４】
プロジェクト管理者はＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐｐｉｎｇをインスタンス化して、それとＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙの配列を引数に、ＨｕｍａｎＲｅｓｏｕｒｃｅＡｓｓｉｎｇｅｒの操作ｇｅｎｅｒａｔｅ（）を起動する。ＨｕｍａｎＲｅｓｏｕｒｃｅＡｓｓｉｎｇｅｒはＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐｐｉｎｇインスタンスとＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙインスタンスを走査して、対応するＨｕｍａｎＲｅｓｏｕｒｃｅをインスタンス化して、それをＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙインスタンスにセットする。ＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙはそれを実施する担当者を示すために、図３４と比較して、ＨｕｍａｎＲｅｓｏｕｒｃｅの集約を追加している。ＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐｐｉｎｇは担当者マッピング２１０で定義されているマップ関係を管理するためにＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐを集約している。ＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐはＨｕｍａｎＲｅｓｏｕｒｃｅとＰｒｏｃｅｓｓＲｏｌｅに該当するＭｏｄｅｌＥｌｅｍｅｎｔを集約している。
【０１６５】
次にクラスの動作を図４０から図４４を用いて説明する。図４０から図４４はクラスの動作を示すコードである。
【０１６６】
プロジェクト管理者の入力操作により、プロジェクト管理装置１００は、担当者マッピング２１０に対応するＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐｐｉｎｇをインスタンス化（図４３の行番号０４〜０９）し、それと担当者設定をしたいＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙの配列を引数にして図４０の行番号０３の操作ｇｅｎｅｒａｔｅ（）を起動する。図４０の行番号０４〜０６のループでは、引数で受け取ったＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙ配列の全ての要素に対して繰り返す。図４０の行番号０５では、ループ中の現在のｍｅｔａＺｅｒｏＡｃｔｉｖｉｔｙに対応するプロセスモデル要素ＡｃｔｉｖｉｔｙインスタンスのｐｅｒｆｏｒｍｅｒにマッピングされているＨｕｍａｎＲｅｓｏｕｒｃｅインスタンス群を、図４１の行番号０３のｈｕｍａｎＲｅｓｏｕｒｃｅｓに格納する。図４０の行番号０５で呼び出している操作ｇｅｔＨｕｍａｎＲｅｓｏｕｒｃｅｓ（）は図４３の行番号１１〜１３を実行する。
【０１６７】
本実施の形態により以下の効果を奏する。
【０１６８】
プロセスメタモデルを用いることにより、様々なプロセスモデルを入力にしてアクティビティ担当者情報を設定することができる。
【０１６９】
アクティビティ担当者情報を生成するためのマッピング規則を担当者マッピング２１０として分離したことにより、担当者マッピング２１０を交換して各開発プロジェクトに応じたアクティビティ担当者情報を設定することができる。
【０１７０】
以上のように、本実施の形態で説明したプロジェクト管理方法及びプロジェクト管理プログラム及びプロジェクト管理装置は、
プロセスメタモデルに基づいてプロセスモデルを解釈することにより、プロセスモデル要素と対応付けられたアクティビティに対して担当者を自動設定するアクティビティ担当者設定部３０４を備えることを特徴とする。
【０１７１】
図４５は、上記実施の形態におけるプロジェクト管理装置の外観の一例を示す図である。
【０１７２】
図４５において、プロジェクト管理装置１００は、システムユニット９１０、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）表示装置９０１、キーボード（Ｋ／Ｂ）９０２、マウス９０３、コンパクトディスク装置（ＣＤＤ）９０５、プリンタ装置９０６を備え、これらはケーブルで接続されている。さらに、プロジェクト管理装置１００は、ローカルエリアネットワーク（ＬＡＮ）９４２、ゲートウェイ９４１を介してインターネット９４０に接続されている。
【０１７３】
図４６は、上記実施の形態におけるプロジェクト管理装置のハードウェア構成の一例を示す図である。
【０１７４】
図４６において、プロジェクト管理装置１００は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９１１を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、通信ボード９１５、ＣＲＴ表示装置９０１、Ｋ／Ｂ９０２、マウス９０３、ＦＤＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）９０４、磁気ディスク装置９２０、ＣＤＤ９０５、プリンタ装置９０６と接続されている。ＣＰＵ９１１は、処理装置の一例である。
【０１７５】
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
【０１７６】
通信ボード９１５は、ＬＡＮ９４２などに接続されている。
【０１７７】
例えば、通信ボード９１５、Ｋ／Ｂ９０２、ＦＤＤ９０４などは、入力装置の一例である。また、例えば、通信ボード９１５、ＣＲＴ表示装置９０１、プリンタ装置９０６などは、出力装置の一例である。
【０１７８】
ここで、通信ボード９１５は、ＬＡＮ９４２に限らず、直接、インターネット９４０、あるいはＩＳＤＮ（Ｉｎｔｅｇｒａｔｅｄ  Ｓｅｒｖｉｃｅｓ  Ｄｉｇｉｔａｌ  Ｎｅｔｗｏｒｋ）などのＷＡＮ（ワイドエリアネットワーク）に接続されていても構わない。直接、インターネット９４０、あるいはＩＳＤＮなどのＷＡＮに接続されている場合、プロジェクト管理装置１００は、インターネット９４０、あるいはＩＳＤＮなどのＷＡＮに接続され、ゲートウェイ９４１は不用となる。
【０１７９】
磁気ディスク装置９２０には、オペレーティングシステム（ＯＳ）９２１、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３は、ＣＰＵ９１１、ＯＳ９２１、ウィンドウシステム９２２により実行される。
【０１８０】
上記プログラム群９２３には、上述した実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【０１８１】
ファイル群９２４には、上述した実施の形態の説明において、「〜結果」として説明するものが、「〜ファイル」として記憶されている。
【０１８２】
また、上述した実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータの入出力を示し、そのデータの入出力のためにデータは、磁気ディスク装置９２０、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）、光ディスク、ＣＤ（コンパクトディスク）、ＭＤ（ミニディスク）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）などのその他の記録媒体に記録される。あるいは、信号線やその他の伝送媒体により伝送される。
【０１８３】
また、上述した実施の形態の説明において「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。あるいは、ソフトウェアのみ、あるいは、ハードウェアのみ、あるいは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。
【０１８４】
また、上述した実施の形態を実施するプログラムは、磁気ディスク装置９２０、ＦＤ、光ディスク、ＣＤ、ＭＤ、ＤＶＤなどのその他の記録媒体による記録装置を用いて記憶されても構わない。
【図面の簡単な説明】
【０１８５】
【図１】ＰＭＢＯＫ（登録商標）が定義するプロジェクト管理におけるプロセスを示す表である。
【図２】ＳＰＥＭが定義する４つのメタレベルを示す図である。
【図３】プロセスメタモデルを示すクラス図の抜粋である。
【図４】プロセスメタモデル要素の一覧の抜粋である。
【図５】プロセスモデルにおけるＤｉｓｃｉｐｌｉｎｅのインスタンスの例を示す図である。
【図６】プロセスモデルにおけるＰｒｏｃｅｓｓＲｏｌｅとＷｏｒｋＤｅｆｉｎｉｔｉｏｎのインスタンスの例を示す図である。
【図７】プロセスモデルにおけるＷｏｒｋＤｅｆｉｎｉｔｉｏｎ「システム定義」を示すアクティビティ図である。
【図８】プロセスモデルにおけるＷｏｒｋＤｅｆｉｎｉｔｉｏｎ「コンポーネント設計」を示すアクティビティ図である。
【図９】プロセスモデルにおけるＷｏｒｋＤｅｆｉｎｉｔｉｏｎ「コンポーネント実装」を示すアクティビティ図である。
【図１０】プロセスモデルにおけるＷｏｒｋＤｅｆｉｎｉｔｉｏｎ「コンポーネント統合」を示すアクティビティ図である。
【図１１】プロセスモデルにおけるＷｏｒｋＤｅｆｉｎｉｔｉｏｎ「試験の定義と実施」を示すアクティビティ図である。
【図１２】プロセスメタモデル要素をインスタンス化したプロセスモデル要素のオブジェクト図である。
【図１３】実施の形態１から４までに係るプロジェクト管理装置の構成を示すブロック図である。
【図１４】実施の形態１から４までに係るプロジェクト管理装置の動作を示すフロー図である。
【図１５】実施の形態１の構成図である。
【図１６】ＷＢＳマッピングの例を示す表である。
【図１７】ＷＢＳマッピングの例を示す表である。
【図１８】実施の形態１におけるＷＢＳ生成部が出力するＷＢＳの例を示す図である。
【図１９】実施の形態１のクラス図である。
【図２０】ＷＢＳＧｅｎｅｒａｔｏｒのコードを示す図である。
【図２１】ＭｏｄｅｌＩｔｅｒａｔｏｒのコードを示す図である。
【図２２】ＷＢＳＥｌｅｍｅｎｔのコードを示す図である。
【図２３】ＷＢＳＭａｐｐｉｎｇのコードを示す図である。
【図２４】ＭｏｄｅｌＥｌｅｍｅｎｔＱｕｅｕｅのコードを示す図である。
【図２５】ＷＢＳＭａｐｐｉｎｇに格納されるＭｏｄｅｌＥｌｅｍｅｎｔＱｕｅｕｅの内容の例を示す表である。
【図２６】実施の形態２の構成図である。
【図２７】実施の形態２におけるアクティビティ情報生成部が出力するアクティビティ群の例を示す表である。
【図２８】実施の形態２のクラス図である。
【図２９】ＡｃｔｉｖｉｔｙＧｅｎｅｒａｔｏｒのコードを示す図である。
【図３０】ＷＢＳＩｔｅｒａｔｏｒのコードを示す図である。
【図３１】ＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙのコードを示す図である。
【図３２】実施の形態３の構成図である。
【図３３】実施の形態３におけるアクティビティ順序生成部が出力するアクティビティの順序情報の例を示す表である。
【図３４】実施の形態３のクラス図である。
【図３５】ＡｃｔｉｖｉｔｙＳｅｑｕｅｎｃｅｒのコードを示す図である。
【図３６】実施の形態４の構成図である。
【図３７】担当者マッピングの例を示す表である。
【図３８】実施の形態４におけるアクティビティ担当者設定部が出力するアクティビティの担当者情報の例を示す表である。
【図３９】実施の形態４のクラス図である。
【図４０】ＨｕｍａｎＲｅｓｏｕｒｃｅＡｓｓｉｇｎｅｒのコードを示す図である。
【図４１】ＭｅｔａＺｅｒｏＡｃｔｉｖｉｔｙのコードを示す図である。
【図４２】ＨｕｍａｎＲｅｓｏｕｒｃｅのコードを示す図である。
【図４３】ＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐｐｉｎｇのコードを示す図である。
【図４４】ＨｕｍａｎＲｅｓｏｕｒｃｅＭａｐのコードを示す図である。
【図４５】実施の形態１から４までにおけるプロジェクト管理装置の外観の一例を示す図である。
【図４６】実施の形態１から４までにおけるプロジェクト管理装置のハードウェア構成の一例を示す図である。
【図４７】従来技術１の構成図である。
【図４８】従来技術１のプロセスモデルの例を示す図である。
【図４９】従来技術１で作成されたＷＢＳの例を示す図である。
【図５０】従来技術２の構成図である。
【図５１】従来技術３の構成図である。
【図５２】従来技術３の成果物構成情報の例を示す図である。
【図５３】従来技術３で生成されたＷＢＳの例を示す図である。
【符号の説明】
【０１８６】
１００  プロジェクト管理装置、１０１  入力装置、１０２  出力装置、１０３  処理装置、１０４  記憶装置、１１１  入力部、１１２  出力部、１１３  記憶部、１１４  設定部、１１５  取得部、１１６  生成部、２０１  プロセスメタモデル、２０２  プロセスモデル、２０３  ＷＢＳマッピング、２０４  ＷＢＳルート、２０５  ＷＢＳ情報、２０６  ＷＢＳ要素メタ情報、２０７  アクティビティ情報、２０８  アクティビティメタ情報、２０９  アクティビティ順序情報、２１０  担当者マッピング、２１１  アクティビティ担当者情報、３０１  ＷＢＳ生成部、３０２  アクティビティ情報生成部、３０３  アクティビティ順序生成部、３０４  アクティビティ担当者設定部、９０１  ＣＲＴ表示装置、９０２  Ｋ／Ｂ、９０３  マウス、９０４  ＦＤＤ、９０５  ＣＤＤ、９０６  プリンタ装置、９１０  システムユニット、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信ボード、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  ウィンドウシステム、９２３  プログラム群、９２４  ファイル群、９４０  インターネット、９４１  ゲートウェイ、９４２  ＬＡＮ。
【図１】
2007004327.tif 000003
【図２】
2007004327.tif 000004
【図３】
2007004327.tif 000005
【図４】
2007004327.tif 000006
【図５】
2007004327.tif 000007
【図６】
2007004327.tif 000008
【図７】
2007004327.tif 000009
【図８】
2007004327.tif 000010
【図９】
2007004327.tif 000011
【図１０】
2007004327.tif 000012
【図１１】
2007004327.tif 000013
【図１２】
2007004327.tif 000014
【図１３】
2007004327.tif 000015
【図１４】
2007004327.tif 000016
【図１５】
2007004327.tif 000017
【図１６】
2007004327.tif 000018
【図１７】
2007004327.tif 000019
【図１８】
2007004327.tif 000020
【図１９】
2007004327.tif 000021
【図２０】
2007004327.tif 000022
【図２１】
2007004327.tif 000023
【図２２】
2007004327.tif 000024
【図２３】
2007004327.tif 000025
【図２４】
2007004327.tif 000026
【図２５】
2007004327.tif 000027
【図２６】
2007004327.tif 000028
【図２７】
2007004327.tif 000029
【図２８】
2007004327.tif 000030
【図２９】
2007004327.tif 000031
【図３０】
2007004327.tif 000032
【図３１】
2007004327.tif 000033
【図３２】
2007004327.tif 000034
【図３３】
2007004327.tif 000035
【図３４】
2007004327.tif 000036
【図３５】
2007004327.tif 000037
【図３６】
2007004327.tif 000038
【図３７】
2007004327.tif 000039
【図３８】
2007004327.tif 000040
【図３９】
2007004327.tif 000041
【図４０】
2007004327.tif 000042
【図４１】
2007004327.tif 000043
【図４２】
2007004327.tif 000044
【図４３】
2007004327.tif 000045
【図４４】
2007004327.tif 000046
【図４５】
2007004327.tif 000047
【図４６】
2007004327.tif 000048
【図４７】
2007004327.tif 000049
【図４８】
2007004327.tif 000050
【図４９】
2007004327.tif 000051
【図５０】
2007004327.tif 000052
【図５１】
2007004327.tif 000053
【図５２】
2007004327.tif 000054
【図５３】
2007004327.tif 000055