(57)【特許請求の範囲】
【請求項１】
管理対象のソフトウェアプロダクトラインを示すプロダクトライン識別情報と、当該プロダクトラインに基づいて開発されたプロダクトを示すプロダクト識別情報とを関連付けたプロダクト情報を記憶する第１の記憶手段と、
前記プロダクトラインの特性を、要求を管理する典型的な単位である必須又は任意のフィーチャーの階層で記述したフィーチャーモデルを表わし、当該モデルに含まれるフィーチャーを示すフィーチャー識別情報と、このフィーチャーが適用されている前記プロダクトラインの前記プロダクトライン識別情報とを関連付けたフィーチャーモデル情報を記憶する第２の記憶手段と、
前記プロダクトラインに利用されているコアアセットを示すコアアセット識別情報と、前記プロダクトライン識別情報とを関連付けたコアアセット情報を記憶する第３の記憶手段と、
前記プロダクト識別情報と、このプロダクト識別情報の示す前記プロダクトを構成する前記フィーチャーを示す前記フィーチャー識別情報とを関連付けたフィーチャー／プロダクト関連付け情報を記憶する第４の記憶手段と、
前記コアアセット識別情報と、このコアアセット識別情報の示す前記コアアセットを構成する前記フィーチャーを示す前記フィーチャー識別情報とを関連付けたフィーチャー／コアアセット関連付け情報を記憶する第５の記憶手段と、
ユーザからプロダクト情報を受け付けた場合には当該記憶対象のプロダクト情報を前記第１の記憶手段に記憶し、前記ユーザから前記プロダクトライン識別情報を受け付けた場合には前記プロダクトライン識別情報に関連するプロダクト識別情報を読み出し、前記ユーザから前記プロダクト識別情報を受け付けた場合には前記プロダクト識別情報に関連する前記プロダクトライン識別情報を読み出し、読み出した情報を前記ユーザに通知する第１の管理手段と、
前記ユーザからフィーチャーモデル情報を受け付けた場合には当該フィーチャーモデル情報を前記第２の記憶手段に記憶し、前記ユーザから前記フィーチャー識別情報を受け付けた場合には前記フィーチャー識別情報に関連するプロダクトライン識別情報を読み出し、前記ユーザから前記プロダクトライン識別情報を受け付けた場合には前記プロダクトライン識別情報に関連するフィーチャー識別情報を読み出し、読み出した情報を前記ユーザに通知する第２の管理手段と、
前記ユーザからコアアセット情報を受け付けた場合には当該コアアセット情報を前記第３の記憶手段に記憶し、前記ユーザから前記コアアセット識別情報を受け付けた場合には前記コアアセット識別情報に関連するプロダクトライン識別情報を読み出し、前記ユーザから前記プロダクトライン識別情報を受け付けた場合には前記プロダクトライン識別情報に関連するコアアセット識別情報を読み出し、読み出した情報を前記ユーザに通知する第３の管理手段と、
前記ユーザからフィーチャー／プロダクト関連付け情報を受け付けた場合には当該フィーチャー／プロダクト関連付け情報を前記第４の記憶手段に記憶し、前記ユーザから前記プロダクト識別情報を受け付けた場合には前記プロダクト識別情報に関連するフィーチャー識別情報を読み出し、前記ユーザから前記フィーチャー識別情報を受け付けた場合には前記フィーチャー識別情報に関連するプロダクト識別情報を読み出し、読み出した情報を前記ユーザに通知する第４の管理手段と、
前記ユーザからフィーチャー／コアアセット関連付け情報を受け付けた場合には当該フィーチャー／コアアセット関連付け情報を前記第５の記憶手段に記憶し、前記ユーザから前記コアアセット識別情報を受け付けた場合には前記コアアセット識別情報に関連するフィーチャー識別情報を読み出し、前記ユーザから前記フィーチャー識別情報を受け付けた場合には前記フィーチャー識別情報に関連するコアアセット識別情報を読み出し、読み出した情報を前記ユーザに通知する第５の管理手段と
を具備するソフトウェア開発情報管理装置。
【請求項２】
請求項１記載のソフトウェア開発情報管理装置において、
前記プロダクト識別情報と、このプロダクト識別情報の示す前記プロダクトの出荷先の顧客を示す顧客識別情報とを関連付けたプロダクト／顧客関連付け情報を記憶する第６の記憶手段と、
前記ユーザからプロダクト／顧客関連付け情報を受け付けた場合には当該プロダクト／顧客関連付け情報を前記第６の記憶手段に記憶し、前記ユーザから前記プロダクト識別情報を受け付けた場合には前記プロダクト識別情報に関連する顧客識別情報を読み出し、前記ユーザから前記顧客識別情報を受け付けた場合には前記顧客識別情報に関連するプロダクト識別情報を読み出し、読み出した情報を前記ユーザに通知する第６の管理手段と
をさらに具備するソフトウェア開発情報管理装置。
【請求項３】
請求項１又は請求項２記載のソフトウェア開発情報管理装置において、
前記ユーザからプロダクトライン識別情報を受け付けた場合には、前記第１乃至第５のうちの少なくとも一つの管理手段を用いて当該プロダクトライン識別情報に関連する情報を読み出し、当該プロダクトライン識別情報に関連する情報の集計を行い、集計結果を含む評価情報を生成し、この評価情報を前記ユーザに通知する評価手段をさらに具備するソフトウェア開発情報管理装置。
【請求項４】
請求項１乃至請求項３のいずれか１項に記載のソフトウェア開発情報管理装置において、
前記ユーザから変更対象識別情報を受け付けた場合には、前記各管理手段を用いて前記変更対象識別情報に対応する変更対象情報及びこの変更対象情報に関連する情報を取得し、前記変更対象情報と前記変更対象情報に関連する情報とに基づいて変更情報を生成し、この変更情報を前記ユーザに通知する変更管理手段をさらに具備するソフトウェア開発情報管理装置。
【請求項５】
請求項１乃至請求項４のいずれか１項に記載のソフトウェア開発情報管理装置において、
前記ユーザからの入力情報を前記各管理手段に引き渡し、前記各管理手段から受け付けた情報を前記ユーザに対して通知するインタフェース手段をさらに具備するソフトウェア開発情報管理装置。
【請求項６】
コンピュータを、
管理対象のソフトウェアプロダクトラインを示すプロダクトライン識別情報と、当該プロダクトラインに基づいて開発されたプロダクトを示すプロダクト識別情報とを関連付けたプロダクト情報を記憶する第１の記憶手段に対する処理として、ユーザからプロダクト情報を受け付けた場合には当該プロダクト情報を前記第１の記憶手段に記憶し、前記ユーザから前記プロダクトライン識別情報を受け付けた場合には前記プロダクトライン識別情報に関連するプロダクト識別情報を読み出し、前記ユーザから前記プロダクト識別情報を受け付けた場合には前記プロダクト識別情報に関連するプロダクトライン識別情報を読み出し、読み出した情報を前記ユーザに通知する第１の管理手段、
前記プロダクトラインの特性を、要求を管理する典型的な単位である必須又は任意のフィーチャーの階層で記述したフィーチャーモデルを表わし、当該モデルに含まれるフィーチャーを示すフィーチャー識別情報と、このフィーチャーが適用されている前記プロダクトラインを示す前記プロダクトライン識別情報とを関連付けたフィーチャーモデル情報を記憶する第２の記憶手段に対する処理として、前記ユーザからフィーチャーモデル情報を受け付けた場合には当該フィーチャーモデル情報を前記第２の記憶手段に記憶し、前記ユーザから前記フィーチャー識別情報を受け付けた場合には前記フィーチャー識別情報に関連するプロダクトライン識別情報を読み出し、前記ユーザから前記プロダクトライン識別情報を受け付けた場合には前記プロダクトライン識別情報に関連するフィーチャー識別情報を読み出し、読み出した情報を前記ユーザに通知する第２の管理手段、
前記プロダクトラインに利用されているコアアセットを示すコアアセット識別情報と、前記プロダクトライン識別情報とを関連付けたコアアセット情報を記憶する第３の記憶手段に対する処理として、前記ユーザからコアアセット情報を受け付けた場合には当該コアアセット情報を前記第３の記憶手段に記憶し、前記ユーザから前記コアアセット識別情報を受け付けた場合には前記コアアセット識別情報に関連するプロダクトライン識別情報を読み出し、前記ユーザから前記プロダクトライン識別情報を受け付けた場合には前記プロダクトライン識別情報に関連するコアアセット識別情報を読み出し、読み出した情報を前記ユーザに通知する第３の管理手段、
前記プロダクト識別情報と、このプロダクト識別情報の示す前記プロダクトを構成する前記フィーチャーを示す前記フィーチャー識別情報とを関連付けたフィーチャー／プロダクト関連付け情報を記憶する第４の記憶手段に対する処理として、前記ユーザからフィーチャー／プロダクト関連付け情報を受け付けた場合には当該フィーチャー／プロダクト関連付け情報を前記第４の記憶手段に記憶し、前記ユーザから前記プロダクト識別情報を受け付けた場合には前記プロダクト識別情報に関連するフィーチャー識別情報を読み出し、前記ユーザから前記フィーチャー識別情報を受け付けた場合には前記フィーチャー識別情報に関連するプロダクト識別情報を読み出し、読み出した情報を前記ユーザに通知する第４の管理手段、
前記コアアセット識別情報と、このコアアセット識別情報の示す前記コアアセットを構成する前記フィーチャーを示す前記フィーチャー識別情報とを関連付けたフィーチャー／コアアセット関連付け情報を記憶する第５の記憶手段に対する処理として、前記ユーザからフィーチャー／コアアセット関連付け情報を受け付けた場合には当該フィーチャー／コアアセット関連付け情報を前記第５の記憶手段に記憶し、前記ユーザから前記コアアセット識別情報を受け付けた場合には前記コアアセット識別情報に関連するフィーチャー識別情報を読み出し、前記ユーザから前記フィーチャー識別情報を受け付けた場合には前記フィーチャー識別情報に関連するコアアセット識別情報を読み出し、読み出した情報を前記ユーザに通知する第５の管理手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアプロダクトライン型開発に関する情報を管理するソフトウェア開発情報管理装置及びプログラムに関する。
【背景技術】
【０００２】
特許文献１（特開２００７−１２００３号公報）では、フィーチャ指向ソフトウェア製品ラインの開発環境を提供するシステムについて記載している。この特許文献１のシステムは、特定ドメイン（または領域）に対して、ソフトウェア製品ライン方法論を適用してドメインに対するフィーチャ分析と応用プログラムの開発のためのフィーチャ選択、再利用可能な資産コンポーネントの生成、マクロ処理を通じたソフトウェアコンポーネントの生成とコンポーネントに対する形状管理、ソフトウェアコンポーネントを利用した応用ソフトウェアの開発と仮想環境におけるソフトウェアテスティングの支援を行う。
【０００３】
ソフトウェアプロダクトライン型開発により開発したソフトウェアプロダクトライン（製品系列）の管理にフィーチャーモデルを利用する場合、フィーチャー（特性）の変更による影響範囲を特定することが必要となる。また、フィーチャーが変更された場合には、出荷したプロダクト（製品）に対する保守の要／不要の判断が必要となる。
【特許文献１】特開２００７−１２００３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１のシステムはソフトウェア製品ラインの開発環境を提供するシステムであって、プロダクトライン型開発プロジェクトによるソフトウェア開発に関する情報をどのように管理するかについては記載されていない。
【０００５】
従来においては、プロダクトのフィーチャーの定義等を支援することについては検討されているが、出荷後のプロダクトに対する情報の保守については考慮されておらず、プロダクトの仕様変更により影響を受ける範囲の特定までは行われていない。
【０００６】
また、従来においては、経営者や管理者が、組織全体でどのようなソフトウェアプロダクトラインを持つのか、各フィーチャーやコアアセットの整備状況などがどのような状態かを調べる手段もなかった。
【０００７】
本発明は、以上のような実情に鑑みてなされたもので、ユーザがソフトウェアプロダクトライン型開発に関する情報を容易に取得し、利用することができるソフトウェア開発情報管理装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様のソフトウェア開発情報管理装置は、管理対象のソフトウェアプロダクトラインを示すプロダクトライン識別情報と、管理対象のソフトウェアプロダクトラインに基づいて開発されたプロダクトを示すプロダクト識別情報とを関連付けたプロダクト情報を記憶する第１の記憶手段と、管理対象のソフトウェアプロダクトラインの特性を、要求を管理する典型的な単位である必須又は任意のフィーチャーの階層で記述したフィーチャーモデルを表わし、当該フィーチャーモデルに含まれるフィーチャーを示すフィーチャー識別情報と、このフィーチャーが適用されている管理対象のソフトウェアプロダクトラインのプロダクトライン識別情報とを関連付けたフィーチャーモデル情報を記憶する第２の記憶手段と、管理対象のソフトウェアプロダクトラインに利用されているコアアセットを示すコアアセット識別情報と、プロダクトライン識別情報とを関連付けたコアアセット情報を記憶する第３の記憶手段と、プロダクト識別情報と、このプロダクト識別情報の示すプロダクトを構成するフィーチャーを示すフィーチャー識別情報とを関連付けたフィーチャー／プロダクト関連付け情報を記憶する第４の記憶手段と、コアアセット識別情報と、このコアアセット識別情報の示すコアアセットを構成するフィーチャーを示すフィーチャー識別情報とを関連付けたフィーチャー／コアアセット関連付け情報を記憶する第５の記憶手段とを具備する。
【０００９】
さらに、本発明の一態様のソフトウェア開発情報管理装置は、ユーザから記憶対象のプロダクト情報を受け付けた場合に記憶対象のプロダクト情報を第１の記憶手段に記憶し、ユーザからプロダクトライン識別情報を受け付けた場合にプロダクトライン識別情報に関連するプロダクト識別情報を読み出し、ユーザからプロダクト識別情報を受け付けた場合にプロダクト識別情報に関連するプロダクトライン識別情報を読み出し、読み出した情報をユーザに通知する第１の管理手段と、ユーザから記憶対象のフィーチャーモデル情報を受け付けた場合に記憶対象のフィーチャーモデル情報を第２の記憶手段に記憶し、ユーザからフィーチャー識別情報を受け付けた場合にフィーチャー識別情報に関連するプロダクトライン識別情報を読み出し、ユーザからプロダクトライン識別情報を受け付けた場合にプロダクトライン識別情報に関連するフィーチャー識別情報を読み出し、読み出した情報をユーザに通知する第２の管理手段と、ユーザから記憶対象のコアアセット情報を受け付けた場合に記憶対象のコアアセット情報を第３の記憶手段に記憶し、ユーザからコアアセット識別情報を受け付けた場合にコアアセット識別情報に関連するプロダクトライン識別情報を読み出し、ユーザからプロダクトライン識別情報を受け付けた場合にプロダクトライン識別情報に関連するコアアセット識別情報を読み出し、読み出した情報をユーザに通知する第３の管理手段と、ユーザから記憶対象のフィーチャー／プロダクト関連付け情報を受け付けた場合に記憶対象のフィーチャー／プロダクト関連付け情報を第４の記憶手段に記憶し、ユーザからプロダクト識別情報を受け付けた場合にプロダクト識別情報に関連するフィーチャー識別情報を読み出し、ユーザからフィーチャー識別情報を受け付けた場合にフィーチャー識別情報に関連するプロダクト識別情報を読み出し、読み出した情報をユーザに通知する第４の管理手段と、ユーザから記憶対象のフィーチャー／コアアセット関連付け情報を受け付けた場合に記憶対象のフィーチャー／コアアセット関連付け情報を第５の記憶手段に記憶し、ユーザからコアアセット識別情報を受け付けた場合にコアアセット識別情報に関連するフィーチャー識別情報を読み出し、ユーザからフィーチャー識別情報を受け付けた場合にフィーチャー識別情報に関連するコアアセット識別情報を読み出し、読み出した情報をユーザに通知する第５の管理手段とを具備する。
【００１０】
なお、ここでは装置として表現されているが、方法、プログラム、コンピュータ読み取り可能な記録媒体などにより実現されるとしてもよい。
【発明の効果】
【００１１】
本発明により、ユーザは、ソフトウェアプロダクトライン型開発によるソフトウェア開発に関する情報を容易に取得し、利用することができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照しながら本発明の実施の形態について説明する。なお、以下の各図において略同一の部分については同一の符号を付して説明を省略する。
【００１３】
本実施の形態においては、ソフトウェアプロダクトライン型の開発及び開発過程を管理するソフトウェア開発情報管理装置について説明する。本実施の形態に係るソフトウェア開発情報管理装置は、製品価格やセグメント単位にソフトウェアプロダクトラインを構成し、ソフトウェアプロダクトラインの共通部分と個別製品に固有の可変部分を予めコアアセット（ソフトウェア資産）として先行開発し、同コアアセットを再利用して個別プロダクト（製品）を効率的に開発するための情報を管理する。
【００１４】
まず、本実施の形態においては、ソフトウェアプロダクトラインの定義及び各種用語を説明する。
【００１５】
ソフトウェアプロダクトラインとは、共通特性を共有している関連のあるソフトウェアの集合体である。共通特性は、特定の市場セグメント又はミッションのニーズを明確に満たすように管理される。ソフトウェアは、共通のコアアセットの集合から、規定された方法で開発される。
【００１６】
図１（[Clements01] Software Product Line : Practices and Patters, Paul Clements and Linda Northrop, Addison Wesley 2001）は、ソフトウェアプロダクトライン型開発の３つの活動を説明するブロック図である。
【００１７】
ソフトウェアプロダクトラインの第１の活動は、ドメインエンジニアリング（コア資産開発）である。
【００１８】
ドメインエンジニアリングは、ある問題領域のアプリケーション群を効率的に開発し、維持するための知識の集合と技術基盤を、確立・維持するために必要な活動であり、ソフトウェア資産がコアアセットとして開発され、開発されたコアアセットがコアアセット記憶装置１に記憶される。このドメインエンジニアリングにおいては、製品のスコープを絞り込み、製品開発の未来を予測し、コアアセットを先回り開発する。
【００１９】
コアアセットは、ソフトウェアプロダクトラインの基盤を形成する資産である。コアアセットには、例えば、アーキテクチャ、ソフトウェアコンポーネント、ドメインモデル、要求説明書、文書及び仕様書、性能モデル、テストケース、プロセス説明書などが含まれる。
【００２０】
ソフトウェアプロダクトラインの第２の活動は、アプリケーションエンジニアリング（製品開発）であり、コアアセットの統合などにより、アプリケーション・プログラムが生産される。なお、アプリケーションの開発結果がコアアセットとしてフィードバックされてもよい。
【００２１】
ソフトウェアプロダクトラインの第３の活動は、ドメインエンジニアリング及びアプリケーションエンジニアリングに対する技術面、組織面での管理である。
【００２２】
ソフトウェアプロダクトライン型開発においては、ドメイン分析が行われる。ドメインの知識を分析し、形式化する活動である。このドメイン分析では、業種・業務の専門知識を形式化し、問題記述と対応する解決策のための基準が作成される。ドメイン分析の分析結果は、フィーチャーモデルで表わされる。
【００２３】
図２（[Thiel02] Thiel, S., et al., Modeling and Using Product Line Variability in Automotive Systems, IEEE Software, July/August 2002, PP.66-72）は、フィーチャーモデルの一例を示す階層図である。
【００２４】
ソフトウェアプロダクトラインの特性を記述するために、フィーチャーモデルが用いられる。フィーチャー（特性）ｆ１〜ｆ１４は、要求を管理する典型的な単位の一つであり、機能と非機能との双方を含む。フィーチャーモデルは、フィーチャーを階層的に表現するための記述形式である。図２に示すように、フィーチャーモデルでは、フィーチャーの共通性と変動性を分析した結果を、階層的なａｎｄ／ｏｒツリーで表現する。フィーチャーには、必須のフィーチャーと選択的なフィーチャーとがある。
【００２５】
ソフトウェアプロダクトラインの特性をこのようなフィーチャーモデルで記述することにより、ソフトウェアプロダクトラインの特徴（共通部分と可変部分）を可視化することができる([Kang90] Kang,K., et al. Feature-Oriented Domain Analysis (FODA) Feasibility Study (CMU/SEI-90-TR-21, ADA 235785). Pittsburgh, PA : Software Engineering Institute, Carnegie Mellon University, 1990)。
【００２６】
以下に、本実施の形態に係るソフトウェア開発情報管理装置の構成例について説明する。
【００２７】
図３は、本実施の形態に係るソフトウェア開発情報管理装置の構成の一例を示すブロック図である。
【００２８】
ソフトウェア開発情報管理装置２は、インタフェース部３、情報管理部４、情報関連付け管理部５、変更管理部６、評価管理部７、プロダクトライン情報記憶装置８、フィーチャーモデル情報記憶装置９、コアアセット情報記憶装置１０、プロダクト情報記憶装置１１、顧客情報記憶装置１２、フィーチャー／コアアセット関連付け情報記憶装置１３、フィーチャー／プロダクト関連付け情報記憶装置１４、プロダクト／顧客関連付け情報記憶装置１５、変更情報記憶装置１６、評価情報記憶装置１７を具備する。
【００２９】
インタフェース部３は、例えば開発者などのユーザ１８、又は例えば経営者、管理者などのユーザ１９から情報を入力するための画面や通信のインタフェースを提供する。インタフェース部３は、ユーザ１８又はユーザ１９からの入力情報を取得し、適宜、情報管理部４、情報関連付け管理部５、変更管理部６、評価管理部７のうちの少なくとも一つに入力情報を引き渡す。
【００３０】
情報管理部４は、インタフェース部３から受け付けた情報に基づいて、プロダクトライン情報記憶装置８、フィーチャーモデル情報記憶装置９、コアアセット情報記憶装置１０、プロダクト情報記憶装置１１、顧客情報記憶装置１２の少なくとも一つに対する情報の記憶（登録）、読み出し（参照）、変更（編集）、削除を実行する。
【００３１】
情報関連付け管理部５は、インタフェース部３から受け付けた情報に基づいて、フィーチャー／コアアセット関連付け情報記憶装置１３、フィーチャー／プロダクト関連付け情報記憶装置１４、プロダクト／顧客関連付け情報記憶装置１５の少なくとも一つに対する関連付け情報の記憶、読み出し、変更、削除を実行する。
【００３２】
変更管理部６は、インタフェース部３から受け付けた変更対象識別情報に基づいて、各種記憶装置（プロダクトライン情報記憶装置８、フィーチャーモデル情報記憶装置９、コアアセット情報記憶装置１０、プロダクト情報記憶装置１１、顧客情報記憶装置１２、フィーチャー／コアアセット関連付け情報記憶装置１３、フィーチャー／プロダクト関連付け情報記憶装置１４、プロダクト／顧客関連付け情報記憶装置１５）のうちの少なくとも一つを、情報管理部４と情報関連付け管理部５とのうちの少なくとも一方を用いて参照し、受け付けた変更対象識別情報に対応する変更対象情報及びこの変更対象情報に関連する情報を抽出し、変更対象情報と変更対象情報に関連する情報に対する更新などの情報加工処理を情報管理部４及び情報関連付け管理部５を用いて実行し、変更結果を示す変更情報１６ａを生成し、変更情報１６ａを変更情報記憶装置１６に記憶するとともに、インタフェース部３を介してユーザ１８又はユーザ１９に通知する。この場合において、変更管理部６は、変更対象識別情報に関連する情報についてユーザ１８又はユーザ１９に変更内容の入力を促す形式で通知を行うとしてもよい。
【００３３】
また、変更管理部６は、変更情報記憶装置１６に対する情報の記憶、読み出し、変更、削除を行う。
【００３４】
評価管理部７は、インタフェース部３から受け付けた評価対象識別情報に基づいて、各種記憶装置８〜１５のうちの少なくとも一つを、情報管理部４と情報関連付け管理部５とのうちの少なくとも一方を用いて参照し、受け付けた評価対象識別情報に関連する情報を抽出し、評価対象識別情報及びこの評価対象識別情報に関連する情報を集計して評価情報１７ａを生成し、評価情報１７ａを評価情報記憶装置１７に記憶するとともに、インタフェース部３を介してユーザ１８又はユーザ１９に通知する。また、評価管理部７は、評価情報記憶装置１７に対する情報の記憶、読み出し、変更、削除を行う。
【００３５】
図４は、本実施の形態に係る情報管理部４の構成の一例を示すブロック図である。
【００３６】
情報管理部４は、情報管理振分け部４ａ、プロダクトライン情報管理部４ｂ、フィーチャーモデル情報管理部４ｃ、コアアセット情報管理部４ｄ、プロダクト情報管理部４ｅ、顧客情報管理部４ｆを具備する。
【００３７】
情報管理振分け部４ａは、ユーザ１８又はユーザ１９からインタフェース部３を介して受け付けた情報（例えば制御命令、識別情報、記憶対象情報など）、あるいは他の管理部より受け付けた情報に基づいて、例えばこの情報の種別、内容などを参考にし、受け付けた情報をプロダクトライン情報管理部４ｂ、フィーチャーモデル情報管理部４ｃ、コアアセット情報管理部４ｄ、プロダクト情報管理部４ｅ、顧客情報管理部４ｆのうちの少なくとも一つに振り分ける。
【００３８】
また、情報管理振分け部４ａは、プロダクトライン情報管理部４ｂ、フィーチャーモデル情報管理部４ｃ、コアアセット情報管理部４ｄ、プロダクト情報管理部４ｅ、顧客情報管理部４ｆから受け付けた情報又は処理結果を、インタフェース部３を介してユーザ１８又はユーザ１９に通知し、あるいは他の管理部に与える。
【００３９】
プロダクトライン情報管理部４ｂは、情報管理振分け部４ａからの情報に基づいて、プロダクトライン情報記憶装置８に対するプロダクトライン情報８ａの記憶、読み出し、変更、削除を行う。
【００４０】
フィーチャーモデル情報管理部４ｃは、情報管理振分け部４ａからの情報に基づいて、フィーチャーモデル情報記憶装置９に対するフィーチャーモデル情報９ａの記憶、読み出し、変更、削除を行う。
【００４１】
コアアセット情報管理部４ｄは、情報管理振分け部４ａからの情報に基づいて、コアアセット情報記憶装置１０に対するコアアセット情報１０ａの記憶、読み出し、変更、削除を行う。
【００４２】
プロダクト情報管理部４ｅは、情報管理振分け部４ａからの情報に基づいて、プロダクト情報記憶装置１１に対するプロダクト情報１１ａの記憶、読み出し、変更、削除を行う。
【００４３】
顧客情報管理部４ｆは、情報管理振分け部４ａからの情報に基づいて、顧客情報記憶装置１２に対する顧客情報１２ａの記憶、読み出し、変更、削除を行う。
【００４４】
図５は、本実施の形態に係る情報関連付け管理部５の構成の一例を示すブロック図である。
【００４５】
情報関連付け管理部５は、情報関連付け振分け部５ａ、フィーチャー／コアアセット関連付け管理部５ｂ、フィーチャー／プロダクト関連付け管理部５ｃ、プロダクト／顧客関連付け管理部５ｄを具備する。
【００４６】
情報関連付け振分け部５ａは、ユーザ１８又はユーザ１９からインタフェース部３を介して受け付けた情報、あるいは他の管理部より受け付けた情報に基づいて、例えばこの情報の種別、内容などを参考にし、受け付けた情報をフィーチャー／コアアセット関連付け管理部５ｂ、フィーチャー／プロダクト関連付け管理部５ｃ、プロダクト／顧客関連付け管理部５ｄの少なくとも一つに振り分ける。
【００４７】
また、情報関連付け振分け部５ａは、フィーチャー／コアアセット関連付け管理部５ｂ、フィーチャー／プロダクト関連付け管理部５ｃ、プロダクト／顧客情報関連付け管理部５ｄから受け付けた情報（例えば、読み出した情報など）又は処理結果を、インタフェース部３を介してユーザ１８又はユーザ１９に通知し、あるいは他の管理部に与える。
【００４８】
フィーチャー／コアアセット関連付け管理部５ｂは、情報関連付け振分け部５ａからの情報に基づいて、フィーチャー／コアアセット関連付け情報記憶装置１３に対するフィーチャー／コアアセット関連付け情報１３ａの記憶、読み出し、変更、削除を行う。
【００４９】
フィーチャー／プロダクト関連付け管理部５ｃは、情報関連付け振分け部５ａからの情報に基づいて、フィーチャー／プロダクト関連付け情報記憶装置１４に対するフィーチャー／プロダクト関連付け情報１４ａの記憶、読み出し、変更、削除を行う。
【００５０】
プロダクト／顧客関連付け管理部５ｄは、情報関連付け振分け部５ａからの情報に基づいて、プロダクト／顧客関連付け情報記憶装置１５４に対するフィーチャー／コアアセット関連付け情報１５ａの記憶、読み出し、変更、削除を行う。
【００５１】
図６は、本実施の形態に係る変更管理部６の構成の一例を示すブロック図である。
【００５２】
変更管理部６は、変更振分け部６ａ、変更監視管理部６ｂを具備する。
【００５３】
変更振分け部６ａは、ユーザ１８又はユーザ１９からインタフェース部３を介して受け付けた情報に基づいて、例えばこの情報の種別、内容などを参考にし、受け付けた情報を変更監視管理部６ｂに引き渡す。
【００５４】
また、変更監視振分け部６ａは、変更監視管理部６ｂから受け付けた情報又は処理結果を、インタフェース部３を介してユーザ１８又はユーザ１９に通知する。
【００５５】
変更監視管理部６ｂは、変更監視振分け部６ａを通じて、各種記憶装置を情報管理部４と情報関連付け管理部５とを用いて参照し、受け付けた変更対象識別情報に対応する変更対象情報及びこの変更対象情報に関連する情報を抽出し、変更対象情報と変更対象情報に関連する情報に対する更新などの情報加工処理を情報管理部４及び情報関連付け管理部５を用いて実行し、変更結果を示す変更情報１６ａを生成し、変更情報１６ａを変更情報記憶装置１６に記憶するとともに、変更監視振分け部６ａに与える。
【００５６】
また、変更監視管理部６ｂは、変更振分け部６ａからの情報に基づいて、変更情報記憶装置１６に対する変更情報１６ａの登録、参照、編集、削除を行う。
【００５７】
図７は、本実施の形態に係る評価管理部７の構成の一例を示すブロック図である。
【００５８】
評価管理部７は、評価振分け部７ａ、プロダクトライン評価管理部７ｂを具備する。
【００５９】
評価振分け部７ａは、ユーザ１８又はユーザ１９からインタフェース部３を介して受け付けた情報に基づいて、例えばこの情報の種別、内容などを参考にし、受け付けた情報をプロダクトライン評価管理部７ｂに引き渡す。
【００６０】
また、評価振分け部７ａは、プロダクトライン評価管理部７ｂから受け付けた情報又は処理結果を、インタフェース部３を介してユーザ１８又はユーザ１９に通知する。
【００６１】
プロダクトライン評価管理部７ｂは、評価振分け部７ａを通じて、各種記憶装置を情報管理部４と情報関連付け管理部５とを用いて参照し、受け付けた評価対象識別情報に関連する情報を抽出し、評価対象識別情報及びこの評価対象識別情報に関連する情報を集計して評価情報１７ａを生成し、評価情報１７ａを評価情報記憶装置１７に記憶するとともに、評価振分け部７ａに与える。
【００６２】
また、プロダクトライン評価管理部７ｂは、評価振分け部７ａからの情報に基づいて、プロダクトライン評価記憶装置１７に対する評価情報１７ａの記憶、読み出し、変更、削除を行う。
【００６３】
以下に、本実施の形態に係るソフトウェア開発情報管理装置２で用いられる各種情報について説明する。
【００６４】
図８は、本実施の形態に係るソフトウェア開発情報管理装置２で用いられる各種情報の内容とその関係の一例を示すＥＲ図である。
【００６５】
本実施の形態において、プロダクトライン情報８ａは、プロダクトラインを表わす情報であり、プロダクトラインエンティティ２０により構成される。プロダクトラインエンティティは、例えば、プロダクトラインＩＤやプロダクトライン名などのプロダクトライン識別情報、プロダクトライン開始時間、プロダクトライン終了時間を含む。
【００６６】
フィーチャーモデル情報９ａは、フィーチャーモデルを表わす情報であり、フィーチャーモデルエンティティ２１により構成される。フィーチャーモデルエンティティ２１は、例えば、フィーチャーＩＤやフィーチャー名などのフィーチャー識別情報、プロダクトラインＩＤ、親フィーチャーＩＤ、親との関係、フィーチャー開始時間、フィーチャー終了時間を含む。
【００６７】
フィーチャーモデルエンティティ２１内には、このフィーチャーモデルエンティティ２１で表わされるフィーチャーモデルで特性が記述されているプロダクトラインを示すプロダクトラインＩＤが含まれている。
【００６８】
コアアセット情報１０ａは、コアアセットを表わす情報であり、コアアセットマスタエンティティ２２、コアアセットエンティティ２３、コアアセットマスタ明細エンティティ２４、分類マスタエンティティ２５、コアアセットマスタ分類明細エンティティ２６から構成される。
【００６９】
コアアセットマスタエンティティ２２は、例えば、コアアセットＩＤやコアアセット名などのコアアセット識別情報、コアアセット開始時間、コアアセット終了時間を含む。
【００７０】
コアアセットエンティティ２３は、例えば、コアアセットインスタンスＩＤやコアアセットインスタンス名などのコアアセットインスタンス識別情報、プロダクトラインＩＤ、コアアセットＩＤ、コアアセットインスタンス開始時間、コアアセットインスタンス終了時間を含む。
【００７１】
このように、コアアセットマスタエンティティ２２とコアアセットエンティティ２３とを用いることで、再利用されるコアアセットを個別に特定可能である。
【００７２】
コアアセットマスタ詳細エンティティ２４は、コアアセットＩＤ、コアアセット明細ＩＤ、コアアセット説明、コアアセット明細開始時間、コアアセット明細終了時間含む。
【００７３】
このコアアセットマスタ詳細エンティティにより、コアアセットＩＤで示されるコアアセットの説明が特定可能となる。
【００７４】
分類マスタエンティティ２５は、コアアセット分類ＩＤ、コアアセット分類名、コアアセット分類開始時間、コアアセット分類終了時間を含む。
【００７５】
コアアセットマスタ分類明細エンティティ２６は、コアアセットＩＤ、コアアセット分類明細ＩＤ、コアアセット分類ＩＤ、コアアセット分類開始時間、コアアセット分類終了時間を含む。
【００７６】
分類マスタエンティティ２５及びコアアセットマスタ分類明細エンティティ２６により、コアアセットがいずれの分類に属するか特定することが可能となる。
【００７７】
プロダクト情報１１ａは、プロダクト（製品）を表わす情報であり、プロダクトエンティティ２７により構成される。プロダクトエンティティ２７は、例えば、プロダクトＩＤやプロダクト名などのプロダクト識別情報、プロダクトラインＩＤ、プロダクト開始時間、プロダクト終了時間を含む。
【００７８】
プロダクトエンティティ２７内には、このプロダクトエンティティ２７の示すプロダクトが、いずれのプロダクトラインにそって生成されたかを示すために、プロダクトラインＩＤが含まれている。
【００７９】
顧客情報１２ａは、顧客を表わす情報であり、顧客エンティティ２８から構成される。
【００８０】
顧客エンティティ２８は、例えば、顧客ＩＤや顧客名などの顧客識別情報、顧客開始時間、顧客終了時間を含む。
【００８１】
フィーチャー／コアアセット関連付け情報１３ａは、フィーチャー／コアアセット関連エンティティ２９から構成される。
【００８２】
フィーチャー／コアアセット関連エンティティ２９は、互いに関連するフィーチャーＩＤとコアアセットインスタンスＩＤ、フィーチャー／コアアセット関連開始時間、フィーチャー／コアアセット関連終了時間を含む。
【００８３】
このフィーチャー／コアアセット関連エンティティ２９により、どのフィーチャーがどのコアアセットにおいて用いられているか特定可能となる。
【００８４】
フィーチャー／プロダクト関連付け情報１４ａは、フィーチャー／プロダクト関連エンティティ３０から構成される。
【００８５】
フィーチャー／プロダクト関連エンティティ３０は、互いに関連するフィーチャーＩＤとプロダクトＩＤ、フィーチャー／プロダクト関連開始時間、フィーチャー／プロダクト関連終了時間を含む。
【００８６】
このフィーチャー／プロダクト関連エンティティ３０により、どのプロダクトがどのフィーチャーに基づいて生産されているか特定可能となる。
【００８７】
プロダクト／顧客関連付け情報１５ａは、プロダクト／顧客関連エンティティ３１から構成される。
【００８８】
プロダクト／顧客関連エンティティ３１は、互いに関連するプロダクトＩＤと顧客ＩＤ、プロダクト／顧客関連開始時間、プロダクト／顧客関連終了時間を含む。
【００８９】
このプロダクト／顧客関連エンティティ３１により、どのプロダクトがどの顧客に納品されたか特定可能となる。
【００９０】
変更情報１６ａは、変更監視エンティティ３２、第１乃至第５の変更監視明細エンティティ３３〜３７から構成される。
【００９１】
変更監視エンティティ３２は、変更ＩＤ、変更監視情報開始時間、変更監視情報終了時間を含む。
【００９２】
第１の変更監視明細エンティティ３３は、第１の変更監視明細ＩＤ、変更されたプロダクトを示すプロダクトＩＤ、変更内容、第１の変更監視明細開始時間、第１の変更監視明細終了時間を含む。
【００９３】
第２の変更監視明細エンティティ３４は、第２の変更監視明細ＩＤ、変更されたフィーチャーを示すフィーチャーＩＤ、変更内容、第２の変更監視明細開始時間、第２の変更監視明細終了時間を含む。
【００９４】
第３の変更監視明細エンティティ３５は、第３の変更監視明細ＩＤ、変更されたコアアセットを示すコアアセットインスタンスＩＤ、変更内容、第３の変更監視明細開始時間、第３の変更監視明細終了時間を含む。
【００９５】
第４の変更監視明細エンティティ３６は、第４の変更監視明細ＩＤ、変更された顧客情報を示す顧客ＩＤ、変更内容、第４の変更監視明細開始時間、第４の変更監視明細終了時間を含む。
【００９６】
第５の変更監視明細エンティティ３７は、第５の変更監視明細ＩＤ、変更されたプロダクトライン情報を示すプロダクトラインＩＤ、変更内容、第５の変更監視明細開始時間、第５の変更監視明細終了時間を含む。
【００９７】
評価情報１７ａは、プロダクトライン評価エンティティ３８、プロダクトライン評価明細エンティティ３９から構成される。
【００９８】
プロダクトライン評価エンティティ３８は、評価ＩＤ、評価対象となるプロダクトラインを示すプロダクトラインＩＤ、評価開始時間、評価終了時間を含む。
【００９９】
プロダクトライン評価明細エンティティ３９は、評価ＩＤ、明細ＩＤ、評価内容、評価明細開始時間、評価明細終了時間を含む。
【０１００】
図９は、本実施の形態に係るプロダクトライン情報８ａの一例を示すテーブルである。
【０１０１】
プロダクトライン情報８ａの項目として、「プロダクトラインＩＤ」「プロダクトライン名」「プロダクトライン開始時間」「プロダクトライン終了時間」がある。ここで、プロダクトラインＩＤ及びプロダクトライン名は、プロダクトライン識別情報として用いられる。プロダクトライン開始時間は、プロダクトラインＩＤで識別されるプロダクトラインの情報が有効になる開始時間を表わし、プロダクトライン終了時間は、プロダクトラインＩＤで識別されるプロダクトラインの情報の有効状態が終了する時間（プロダクトラインＩＤで識別されるプロダクトラインの情報が無効となる時間）を表わす。
【０１０２】
図１０は、本実施の形態に係るプロダクト情報１１ａの一例を示すテーブルである。
【０１０３】
プロダクト情報１１ａの項目として、「プロダクトＩＤ」「プロダクト名」「プロダクトラインＩＤ」「プロダクト開始時間」「プロダクト終了時間」がある。ここで、プロダクトＩＤ及びプロダクト名は、プロダクト識別情報として用いられる。プロダクト情報１１ａにおけるプロダクトラインＩＤは、このプロダクトＩＤで識別されるプロダクトの生産において用いられたプロダクトラインを示す。プロダクト開始時間は、プロダクトＩＤで識別されるプロダクトの情報が有効になる開始時間を表わし、プロダクト終了時間は、プロダクトＩＤで識別されるプロダクトの情報の有効状態が終了する時間（プロダクトＩＤで識別されるプロダクトの情報が無効となる時間）を表わす。
【０１０４】
図１１は、本実施の形態に係る顧客情報１２ａの一例を示すテーブルである。
【０１０５】
顧客情報１２ａの項目として、「顧客ＩＤ」「顧客名」「顧客情報開始時間」「顧客情報終了時間」がある。顧客ＩＤ及び顧客名は、顧客識別情報として用いられる。顧客情報開始時間は、顧客ＩＤで識別される顧客の情報が有効になる開始時間を表わし、顧客情報終了時間は、顧客ＩＤで識別される顧客の情報の有効状態が終了する時間（顧客ＩＤで識別される顧客の情報が無効となる時間）を表わす。
【０１０６】
図１２は、本実施の形態に係るフィーチャーモデル情報９ａの一例を示すテーブルである。
【０１０７】
フィーチャーモデル情報９ａの項目として、「フィーチャーＩＤ」「フィーチャー名」「プロダクトラインＩＤ」「親フィーチャーＩＤ」「親フィーチャーとの関連」「フィーチャー開始時間」「フィーチャー終了時間」がある。
【０１０８】
このフィーチャーモデル情報９ａにおいては、フィーチャーモデルを構成するフィーチャーとその階層関係とが記述される。このために、フィーチャーモデル情報９ａでは、フィーチャーモデルを形成する各フィーチャーのフィーチャーＩＤ、フィーチャー名、関連するプロダクトラインを示すプロダクトラインＩＤ、親フィーチャーを示す親フィーチャーＩＤ、親フィーチャーとの関連（例えば必須、選択（alternative）、選択（or）など）、フィーチャー開始時間、フィーチャー終了時間を関連付けている。フィーチャーＩＤ及びフィーチャー名は、フィーチャー識別情報として用いられる。フィーチャー開始時間は、フィーチャーＩＤで識別されるフィーチャーの情報が有効になる開始時間を表わし、フィーチャー終了時間は、フィーチャーＩＤで識別されるフィーチャーの情報の有効状態が終了する時間（フィーチャーＩＤで識別されるフィーチャーの情報が無効となる時間）で表わす。
【０１０９】
図１３は、本実施の形態に係るコアアセット情報１０ａの一例を示すテーブルである。
【０１１０】
コアアセット情報１０ａの項目として、「コアアセットインスタンスＩＤ」「コアアセットインスタンス名」「プロダクトラインＩＤ」「コアアセットＩＤ」「コアアセットインスタンス開始時間情報」「コアアセットインスタンス終了時間情報」がある。
【０１１１】
コアアセットインスタンスＩＤ及びコアアセットインスタンス名は、コアアセット識別情報として用いられる。
【０１１２】
コアアセット情報１０ａにおいては、コアアセットインスタンスＩＤに対して、このコアアセットインスタンスＩＤの示すコアアセットを用いたプロダクトラインを示すプロダクトラインＩＤが関連付けされている。
【０１１３】
また、コアアセット情報１０ａにおいては、コアアセットインスタンスＩＤに対して、コアアセットインスタンスＩＤの示すコアアセットの元になったコアアセットを示すコアアセットＩＤが関連付けされている。
【０１１４】
コアアセットインスタンス開始時間は、コアアセットインスタンスＩＤで識別されるコアアセットの情報が有効になる開始時間を表わし、コアアセットインスタンス終了時間は、コアアセットインスタンスＩＤで識別されるコアアセットの情報の有効状態が終了する時間（コアアセットインスタンスＩＤで識別されるコアアセットの情報が無効となる時間）を表わす。
【０１１５】
図１４は、本実施の形態に係るフィーチャー／プロダクト関連付け情報１４ａの一例を示すテーブルである。
【０１１６】
フィーチャー／プロダクト関連付け情報１４ａの項目として、「プロダクトライン名」「プロダクト名（プロダクトの型式）」「フィーチャーＩＤ（プロダクトを構成するフィーチャー）」がある。
【０１１７】
このフィーチャー／プロダクト関連付け情報１４ａは、プロダクトライン名の示すプロダクトラインに基づいてどのプロダクトが生産されたか、各プロダクトがどのフィーチャーから構成されているかを表形式で表わしている。フィーチャー／プロダクト関連付け情報１４ａにより、フィーチャーに変更が発生した場合に、影響を受けるプロダクト、影響を受けるプロダクトラインなどを特定可能である。
【０１１８】
図１５は、本実施の形態に係るフィーチャー／コアアセット関連付け情報１３ａの一例を示すテーブルである。
【０１１９】
フィーチャー／コアアセット関連付け情報１３ａの項目として、「プロダクトライン名」「コアアセットＩＤ」「フィーチャーＩＤ（コアアセットに関連するフィーチャー）」がある。
【０１２０】
このフィーチャー／コアアセット関連付け情報１３ａは、プロダクトライン名の示すプロダクトラインにおいてどのコアアセットが用いられるか、コアアセットがどのフィーチャーから構成されているかを表形式で表わす。フィーチャー／コアアセット関連付け情報１３ａにより、フィーチャーに変更が発生した場合に、影響を受けるコアアセット、影響を受けるプロダクトラインなどを特定可能である。
【０１２１】
図１６は、本実施の形態に係るプロダクト／顧客関連付け情報１５ａの一例を示すテーブルである。
【０１２２】
このプロダクト／顧客関連付け情報１５ａの項目として、「プロダクトライン名」「顧客ＩＤ（出荷先）」「出荷時間」「プロダクト名(プロダクト型式)」がある。
【０１２３】
このプロダクト／顧客関連付け情報１５ａは、顧客に対してどのプロダクトを出荷したかを表形式で表わす。
【０１２４】
なお、プロダクト／顧客関連付け情報１５ａにより、例えば、顧客に出荷したプロダクトに対するカスタマイズの有無、出荷後の保守状態などを管理するとしてもよい。
【０１２５】
以下に、本実施の形態に係るソフトウェア開発情報管理装置２によって実行される作用の概要について説明する。
【０１２６】
ソフトウェア開発情報管理装置２は、インタフェース部３に対するユーザ１８又はユーザ１９からの入力にしたがって、情報管理部４、情報関連付け管理部５、変更管理部６、評価管理部７に振分けを行い、それぞれの振分け先の管理部での処理結果をインタフェース部３よりユーザ１８又はユーザ１９に提示する。そして、ソフトウェア開発情報管理装置２は、必要に応じて上記の処理を繰り返す。
【０１２７】
ソフトウェア開発情報管理装置２の情報管理部４では、情報管理振分け部４ａに受け付けられた情報が、プロダクトライン情報管理部４ｂ、フィーチャーモデル情報管理部４ｃ、コアアセット情報管理部４ｄ、プロダクト情報管理部４ｅ、顧客情報管理部４ｆに振分けられ、各振分け先の管理部での処理結果が情報管理振分け部４ａ経由でインタフェース部３に引き渡される。そして、情報管理部４は、必要に応じて上記の処理を繰り返す。
【０１２８】
ソフトウェア開発情報管理装置２の情報関連付け管理部５では、情報関連付け振分け部５ａに受け付けられた情報が、フィーチャー／コアアセット関連付け管理部５ｂ、フィーチャー／プロダクト関連付け管理部５ｃ、プロダクト／顧客関連付け管理部５ｄに振分けられ、各振分け先の関連付け管理部での処理結果が情報関連付け振分け部５ａ経由でインタフェース部３に引き渡される。そして、情報関連付け管理部５は、必要に応じて上記の処理を繰り返す。
【０１２９】
ソフトウェア開発情報管理装置２の変更管理部６では、変更振分け部６ａに受け付けられた情報に基づいて、変更監視管理部６ｂが情報管理部４を用いて変更対象情報を取得し、この変更対象情報に基づいて、変更監視管理部６ｂが情報関連付け管理部５を用いて変更対象情報に関連する情報を取得する。そして、変更管理部６では、変更監視管理部６ｂが、変更対象情報への変更に応じてこの変更対象情報に関連する情報を更新するなどの情報加工処理を情報管理部４及び情報関連付け管理部５を用いて実行し、変更結果を示す変更情報１６ａを変更情報記憶装置１６に記憶するとともに、変更振分け部６ａを介してインタフェース部３に引き渡す。
【０１３０】
あるいは、変更管理部６では、変更振分け部６ａに受け付けられた情報に基づいて、変更監視管理部６ｂが変更情報記憶装置１６から変更情報１６ａを読み出し、読み出した変更情報１６ａを変更振分け部６ａを介してインタフェース部３に引き渡す。
【０１３１】
そして、変更管理部６は、必要に応じて上記の処理を繰り返す。
【０１３２】
ソフトウェア開発情報管理装置２の評価管理部７では、評価振分け部７ａに受け付けられた情報に基づいて、プロダクトライン評価管理部７ｂが情報管理部４を用いて受け付けた情報に対応する情報を取得し、さらに、情報関連付け管理部５を用いて受け付けられた情報に関連する情報を取得する。そして、評価管理部７では、プロダクトライン評価管理部７ｂが、取得した情報の集計処理を実行し、評価情報１７ａを生成し、評価情報１７ａを評価情報記憶装置１７に記憶するとともに、評価振分け部７ａを介してインタフェース部３に引き渡す。
【０１３３】
あるいは、評価管理部７では、評価振分け部７ａに受け付けられた情報に基づいて、プロダクトライン評価管理部７ｂが評価情報記憶装置１７から評価情報１７ａを読み出し、読み出した評価情報１７ａを評価振分け部７ａを介してインタフェース部３に引き渡す。
【０１３４】
そして、評価管理部７は、必要に応じて上記の処理を繰り返す。
【０１３５】
以下に、フローチャートを用いて、ソフトウェア開発情報管理装置２及びその各構成要素の作用の一例を説明する。
【０１３６】
図１７は、本実施の形態に係るソフトウェア開発情報管理装置２の処理の一例を示すフローチャートである。
【０１３７】
ステップＳ１において、インタフェース部３は、ユーザ１８又はユーザ１９から情報を入力する。
【０１３８】
ステップＳ２において、インタフェース部３は、入力された情報の種別等に基づいて、この入力された情報の振分けを行い、振分け先に情報を与える。
【０１３９】
入力された情報が情報管理に関する情報の場合、ステップＳ３−１において、情報管理部４は、受け付けた情報に基づいて処理を実行する。
【０１４０】
入力された情報が情報関連付け管理に関する情報の場合、ステップＳ３−２において、情報関連付け管理部５は、受け付けた情報に基づいて処理を実行する。
【０１４１】
入力された情報が変更管理に関する情報の場合、ステップＳ３−３において、変更管理部６は、受け付けた情報に基づいて処理を実行する。
【０１４２】
入力された情報が評価管理に関する情報の場合、ステップＳ３−４において、評価管理部７は、受け付けた情報に基づいて処理を実行する。
【０１４３】
入力された情報がその他の場合には、処理はステップＳ６に移る。
【０１４４】
ステップＳ４において、インタフェース部３は、情報管理部４、情報関連付け管理部５、変更管理部６、評価管理部７による処理によって出力情報が発生したか否か判断する。出力情報が発生していない場合、処理はステップＳ６に移る。
【０１４５】
出力情報が発生している場合、ステップＳ５において、インタフェース部３は、出力情報の出力を行う。
【０１４６】
ステップＳ６において、インタフェース部３は、ユーザから情報の入力があるか判断する。
【０１４７】
ユーザから情報の入力がある場合、処理はステップＳ１に戻る。
【０１４８】
ユーザから情報の入力がない場合、処理は終了する。
【０１４９】
図１８は、情報管理部４の処理の一例を示すフローチャートである。
【０１５０】
ステップＴ１において、情報管理振分け部４ａは、情報を取得する。
【０１５１】
ステップＴ２において、情報管理振分け部４ａは、取得した情報の種別等に基づいて、この取得した情報の振分けを行い、振分け先に情報を与える。
【０１５２】
取得した情報がプロダクトライン情報管理に関する情報の場合、ステップＴ３−１において、プロダクトライン情報管理部４ｂは、取得した情報に基づいて処理を実行する。
【０１５３】
取得した情報がフィーチャーモデル情報管理に関する情報の場合、ステップＴ３−２において、フィーチャーモデル情報管理部４ｃは、取得した情報に基づいて処理を実行する。
【０１５４】
取得した情報がコアアセット情報管理に関する情報の場合、ステップＴ３−３において、コアアセット情報管理部４ｄは、取得した情報に基づいて処理を実行する。
【０１５５】
取得した情報がプロダクト情報管理に関する情報の場合、ステップＴ３−４において、プロダクト情報管理部４ｅは、取得した情報に基づいて処理を実行する。
【０１５６】
取得した情報が顧客情報管理に関する情報の場合、ステップＴ３−５において、顧客情報管理部４ｆは、取得した情報に基づいて処理を実行する。
【０１５７】
取得した情報がその他の場合には、処理はステップＴ６に移る。
【０１５８】
ステップＴ４において、情報管理振分け部４ａは、プロダクトライン情報管理部４ｂ、フィーチャーモデル情報管理部４ｃ、コアアセット情報管理部４ｄ、プロダクト情報管理部４ｅ、顧客情報管理部４ｆによる処理によって出力情報が発生したか否か判断する。出力情報が発生していない場合、処理はステップＴ６に移る。
【０１５９】
出力情報が発生している場合、ステップＴ５において、情報管理振分け部４ａは、出力情報の出力を行う。
【０１６０】
ステップＴ６において、情報管理振分け部４ａは、情報の入力があるか判断する。
【０１６１】
情報管理振分け部４ａへの情報の入力がある場合、処理はステップＴ１に戻る。
【０１６２】
情報管理振分け部４ａへの情報の入力がない場合、処理は終了する。
【０１６３】
図１９は、情報関連付け管理部５の処理の一例を示すフローチャートである。
【０１６４】
ステップＵ１において、情報関連付け振分け部５ａは、情報を取得する。
【０１６５】
ステップＵ２において、情報関連付け振分け部５ａは、取得した情報の種別等に基づいて、この取得した情報の振分けを行い、振分け先に情報を与える。
【０１６６】
取得した情報がフィーチャー／コアアセット関連付け管理に関する情報の場合、ステップＵ３−１において、フィーチャー／コアアセット関連付け管理部５ｂは、取得した情報に基づいて処理を実行する。
【０１６７】
取得した情報がフィーチャー／プロダクト関連付け管理に関する情報の場合、ステップＵ３−２において、フィーチャー／プロダクト関連付け管理部５ｃは、取得した情報に基づいて処理を実行する。
【０１６８】
取得した情報がプロダクト／顧客関連付け管理に関する情報の場合、ステップＵ３−３において、プロダクト／顧客関連付け管理部５ｄは、取得した情報に基づいて処理を実行する。
【０１６９】
取得した情報がその他の場合には、処理はステップＵ６に移る。
【０１７０】
ステップＵ４において、情報関連付け振分け部５ａは、フィーチャー／コアアセット関連付け管理部５ｂ、フィーチャー／プロダクト関連付け管理部５ｃ、プロダクト／顧客関連付け管理部５ｄによる処理によって出力情報が発生したか否か判断する。出力情報が発生していない場合、処理はステップＵ６に移る。
【０１７１】
出力情報が発生している場合、ステップＵ５において、情報関連付け振分け部５ａは、出力情報の出力を行う。
【０１７２】
ステップＵ６において、情報関連付け振分け部５ａは、情報の入力があるか判断する。
【０１７３】
情報関連付け振分け部５ａへの情報の入力がある場合、処理はステップＵ１に戻る。
【０１７４】
情報関連付け振分け部５ａへの情報の入力がない場合、処理は終了する。
【０１７５】
図２０は、変更管理部６の処理の一例を示すフローチャートである。
【０１７６】
ステップＶ１において、変更振分け部６ａは、情報を取得する。
【０１７７】
ステップＶ２において、変更振分け部６ａは、取得した情報の種別等に基づいて、この取得した情報の振分けを行い、振分け先に情報を与える。
【０１７８】
取得した情報が変更監視管理に関する情報でない場合には、処理はステップＶ７に移る。
【０１７９】
取得した情報が変更監視管理に関する情報の場合、ステップＶ３において、変更監視管理部６ｂは、取得した情報に基づいて情報管理部４を通して変更対象情報を取得する。
【０１８０】
ステップＶ４において、変更監視管理部６ｂは、変更対象情報に関連する情報を、情報関連付け管理部５を通じて取得する。
【０１８１】
なお、変更監視管理部６ｂは、変更対象情報とこれに関連する情報とに基づいて、更新等の情報加工処理を実行するとしてもよい。
【０１８２】
ステップＶ５において、変更振分け部６ａは、変更監視管理部６ｂによる処理によって出力情報が発生したか否か判断する。出力情報が発生していない場合、処理はステップＶ７に移る。
【０１８３】
出力情報が発生している場合、ステップＶ６において、変更振分け部６ａは、出力情報の出力を行う。
【０１８４】
ステップＶ７において、変更振分け部６ａは、情報の入力があるか判断する。
【０１８５】
変更振分け部６ａへの情報の入力がある場合、処理はステップＶ１に戻る。
【０１８６】
変更振分け部６ａへの情報の入力がない場合、処理は終了する。
【０１８７】
図２１は、評価管理部７の処理の一例を示すフローチャートである。
【０１８８】
ステップＷ１において、評価振分け部７ａは、情報を取得する。
【０１８９】
ステップＷ２において、評価振分け部７ａは、取得した情報の種別等に基づいて、この取得した情報の振分けを行い、振分け先に情報を与える。
【０１９０】
取得した情報が評価情報管理に関する情報でない場合には、処理はステップＷ６に移る。
【０１９１】
取得した情報が評価情報管理に関する情報の場合、ステップＷ３において、プロダクトライン評価管理部７ｂは、取得した情報に基づいて情報管理部４を通して評価対象の情報を取得し、評価対象の情報に関連する情報を情報関連付け管理部５を通じて取得し、評価対象の情報とこの評価対象の情報に関連する情報とを加工し、評価情報１７ａを生成する。
【０１９２】
ステップＷ４において、評価振分け部７ａは、プロダクトライン評価管理部７ｂによる処理によって例えば評価情報１７ａなどのような出力情報が発生したか否か判断する。出力情報が発生していない場合、処理はステップＷ６に移る。
【０１９３】
出力情報が発生している場合、ステップＷ５において、評価振分け部７ａは、出力情報の出力を行う。
【０１９４】
ステップＷ６において、評価振分け部７ａは、情報の入力があるか判断する。
【０１９５】
評価振分け部７ａへの情報の入力がある場合、処理はステップＷ１に戻る。
【０１９６】
評価振分け部７ａへの情報の入力がない場合、処理は終了する。
【０１９７】
上記において説明したソフトウェア開発情報管理装置２の具体的な出力情報の例を以下に説明する。
【０１９８】
図２２は、本実施の形態に係るソフトウェア開発情報管理装置２の変更管理部６の動作による出力例を示す図である。
【０１９９】
この図２２では、フィーチャー「Ｆ４」に変更があった場合に、このフィーチャー「Ｆ４」に関連する情報が抽出される状態を例示している。
【０２００】
変更管理部６は、ユーザ１８又はユーザ１９によるフィーチャー「Ｆ４」への変更をインタフェース部３より受け付けた場合、情報関連付け管理部５を通じて、フィーチャー／コアアセット関連付け情報１３ａより、変更されたフィーチャー「Ｆ４」に関連付けられているコアアセットインスタンス「ＣＡ２」を取得する。
【０２０１】
また、変更管理部６は、情報関連付け管理部５を通じて、フィーチャー／プロダクト関連付け情報１４ａより、変更されたフィーチャー「Ｆ４」に関連付けられているプロダクト「Ｃ型」を取得する。
【０２０２】
さらに、変更管理部６は、情報関連付け管理部５を通じて、プロダクト／顧客関連付け情報１５ａより、取得されたプロダクト「Ｃ型」に関連付けられている顧客「Ｚ社」を取得する。
【０２０３】
インタフェース部３は、変更管理部６によって得られたフィーチャー「Ｆ４」に関連するコアアセット「ＣＡ２」、プロダクト「Ｃ型」、顧客「Ｚ社」をユーザ１８又はユーザ１９に通知する。
【０２０４】
図２３は、本実施の形態に係るソフトウェア開発情報管理装置２の評価管理部７によって生成される評価情報１７ａの出力例を示す図である。
【０２０５】
この図２３の例では、プロダクトライン毎に、フィーチャー数、プロダクト数、コアアセット数、顧客数が集計され、表形式で表示されている。
【０２０６】
これにより、経営者や管理者などのユーザ１９は、プロダクトラインの要約・特徴を把握可能である。例えば経営者があるプロダクトライン「ＰＬ００１」の要約を知りたい場合に、インタフェース部３にそのプロダクトライン「ＰＬ００１」を指定すると、評価管理部７は、情報管理部４及び情報関連付け管理部５を用いて評価情報１７ａを作成するか、あるいは作成済みの評価情報１７ａを読み出す。インタフェース部３は、評価管理部７から取得した評価情報１７ａを経営者に通知する。
【０２０７】
以上説明した本実施の形態に係るソフトウェア開発情報管理装置２においては、プロダクトラインを構成する各種要素に関する情報を記憶、読み出し、変更、削除することができ、このような情報を組織全体で共有することができ、ソフトウェアプロダクトライン型開発のノウハウを蓄積することができる。
【０２０８】
本実施の形態においては、ソフトウェアプロダクトライン型開発において過去に利用した情報とそれらの情報間の関係を容易に把握できるため、過去に利用した情報を適切かつ容易に再利用して新たなプロダクトラインを作成することができる。
【０２０９】
本実施の形態においては、既に記憶されている情報を変更する場合に、この変更対象の情報に関連する情報をユーザ１８又はユーザ１９に通知可能であるため、例えばユーザ１８又はユーザ１９に対して変更対象の情報に関連する情報の変更を促すなど、ユーザ１８又はユーザ１９の変更操作を支援することができ、変更対象の情報に関連する情報の変更漏れを防止することができる。
【０２１０】
すなわち、本実施の形態においては、仕様変更の結果、例えばフィーチャーに変更が生じた場合に、コアアセットへの影響範囲、プロダクトへの影響範囲、プロダクトを出荷した顧客などを特定することができ、これらの情報をユーザ１８又はユーザ１９に通知することができる。
【０２１１】
このように、本実施の形態においては、確実に、仕様変更によって影響を受ける部分を特定することができるため、保守効率を向上させることができ、製品安定化を図ることができる。
【０２１２】
本実施の形態においては、経営者などのユーザ１９がソフトウェアプロダクトラインを評価するための評価情報を収集することができ、経営者などのユーザ１９がソフトウェアプロダクトライン型開発に対する投資を実行するか否か判断することを支援することができる。本実施の形態においては、評価情報として各種の評価指標が組み合わされてユーザ１９に通知される。
【０２１３】
上記各実施の形態において、各種の構成要素は自由に組み合わせ又は分離することができる。
【０２１４】
上記各実施の形態における各種の構成要素（インタフェース部３、情報管理部４、情報関連付け管理部５、変更管理部６、評価管理部７）は、例えば、図２４に示すように、コンピュータ４２のＣＰＵ４３が、記録媒体４０に記録されているプログラム４１による制御にそって動作することで実現されるとしてもよい。この例においては、情報データベース４４に、先において説明した各種情報８ａ〜１５ａが記憶されている。ＣＰＵ４３はデータベースインタフェース４５を介して、情報データベース４４に対して各種情報８ａ〜１５ａの記憶、読み出し、変更、削除を行う。
【図面の簡単な説明】
【０２１５】
【図１】ソフトウェアプロダクトライン型開発の３つの活動を説明するブロック図。
【図２】フィーチャーモデルの一例を示す階層図。
【図３】本発明の実施の形態に係るソフトウェア開発情報管理装置の構成の一例を示すブロック図。
【図４】本実施の形態に係る情報管理部の構成の一例を示すブロック図。
【図５】本実施の形態に係る情報関連付け管理部の構成の一例を示すブロック図。
【図６】本実施の形態に係る変更管理部の構成の一例を示すブロック図。
【図７】本実施の形態に係る評価管理部の構成の一例を示すブロック図。
【図８】本実施の形態に係るソフトウェア開発情報管理装置で用いられる各種情報の内容とその関係の一例を示すＥＲ図。
【図９】本実施の形態に係るプロダクトライン情報の一例を示すテーブル。
【図１０】本実施の形態に係るプロダクト情報の一例を示すテーブル。
【図１１】本実施の形態に係る顧客情報の一例を示すテーブル。
【図１２】本実施の形態に係るフィーチャーモデル情報の一例を示すテーブル。
【図１３】本実施の形態に係るコアアセット情報の一例を示すテーブル。
【図１４】本実施の形態に係るフィーチャー／プロダクト関連付け情報の一例を示すテーブル。
【図１５】本実施の形態に係るフィーチャー／コアアセット関連付け情報の一例を示すテーブル。
【図１６】本実施の形態に係るプロダクト／顧客関連付け情報１５ａの一例を示すテーブル。
【図１７】本実施の形態に係るソフトウェア開発情報管理装置の処理の一例を示すフローチャート。
【図１８】情報管理部の処理の一例を示すフローチャート。
【図１９】情報関連付け管理部の処理の一例を示すフローチャート。
【図２０】変更管理部の処理の一例を示すフローチャート。
【図２１】評価管理部の処理の一例を示すフローチャート。
【図２２】本実施の形態に係るソフトウェア開発情報管理装置の変更管理部の動作による出力例を示す図。
【図２３】本実施の形態に係るソフトウェア開発情報管理装置の評価管理部によって生成される評価情報の出力例を示す図。
【図２４】本実施の形態に係るソフトウェア開発情報管理装置をソフトウェアにより動作するコンピュータで実現する場合の構成の一例を示すブロック図。
【符号の説明】
【０２１６】
１…コアアセット記憶装置、２…ソフトウェア開発情報管理装置、３…インタフェース部、４…情報管理部、４ａ…情報管理振分け部、４ｂ…プロダクトライン情報管理部、４ｃ…フィーチャーモデル情報管理部、４ｄ…コアアセット情報管理部、４ｅ…プロダクト情報管理部、４ｆ…顧客情報管理部、５…情報関連付け管理部、５ａ…情報関連付け振分け部、５ｂ…フィーチャー／コアアセット関連付け管理部、５ｃ…フィーチャー／プロダクト関連付け管理部、５ｄ…プロダクト／顧客関連付け管理部、６…変更管理部、７…評価管理部、８…プロダクトライン情報記憶装置、９…フィーチャーモデル情報記憶装置、１０…コアアセット情報記憶装置、１１…プロダクト情報記憶装置、１２…顧客情報記憶装置、１３…フィーチャー／コアアセット関連付け情報記憶装置、１４…フィーチャー／プロダクト関連付け情報記憶装置、１５…プロダクト／顧客関連付け情報記憶装置、１６…変更情報記憶装置、１７…評価情報記憶装置、８ａ…プロダクトライン情報、９ａ…フィーチャーモデル情報、１０ａ…コアアセット情報、１１ａ…プロダクト情報、１２ａ…顧客情報、１３ａ…フィーチャー／コアアセット関連付け情報、１４ａ…フィーチャー／プロダクト関連付け情報、１５ａ…プロダクト／顧客関連付け情報、１８，１９…ユーザ
【図１】
0004976959.tif 000002
【図２】
0004976959.tif 000003
【図３】
0004976959.tif 000004
【図４】
0004976959.tif 000005
【図５】
0004976959.tif 000006
【図６】
0004976959.tif 000007
【図７】
0004976959.tif 000008
【図８】
0004976959.tif 000009
【図９】
0004976959.tif 000010
【図１０】
0004976959.tif 000011
【図１１】
0004976959.tif 000012
【図１２】
0004976959.tif 000013
【図１３】
0004976959.tif 000014
【図１４】
0004976959.tif 000015
【図１５】
0004976959.tif 000016
【図１６】
0004976959.tif 000017
【図１７】
0004976959.tif 000018
【図１８】
0004976959.tif 000019
【図１９】
0004976959.tif 000020
【図２０】
0004976959.tif 000021
【図２１】
0004976959.tif 000022
【図２２】
0004976959.tif 000023
【図２３】
0004976959.tif 000024
【図２４】
0004976959.tif 000025