(57)【要約】【課題】フィーチャーモデルを適切に作成することを支援できるようにすること。【解決手段】フィーチャー−タグ関連付け部３１は、フィーチャー−タグ関連付け情報保存部３１Ｄに保存されるフィーチャー−タグ関連付け情報を管理するものである。フィーチャー−タグ関連付け情報保存部３１Ｄは、フィーチャーモデル情報保存部２１Ｄに保存されているフィーチャーとタグ情報保存部２２Ｄに保存されているタグとの関連付けを示すフィーチャー−タグ関連付け情報を保存する。情報分析部４０は、フィーチャーモデル情報とタグ情報とフィーチャー−タグ関連付け情報とに基づき、同一のタグが付加された複数のフィーチャーが存在するか否かを検証してその検証結果を表示装置１２側へ出力したり、親子関係にあるフィーチャーであってそれぞれに付加されているタグも親子関係にあるものが存在するか否かを検証してその検証結果を表示装置１２側へ出力したりする。【選択図】      図１
2009245177.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアプロダクトラインの特性を示すフィーチャーモデルの作成を支援するフィーチャーモデル作成支援装置であって、
個々のフィーチャーを識別するフィーチャー識別情報とフィーチャー間の親子関係を示すフィーチャー間関連情報とを含むフィーチャーモデル情報を第１の記憶媒体上で管理するフィーチャーモデル情報管理手段と、
任意のフィーチャーに付加することが可能な個々のタグを識別するタグ識別情報とタグ間の親子関係を示すタグ間関連情報とを含むタグ情報を第２の記憶媒体上で管理するタグ情報管理手段と、
前記第１の記憶媒体上で管理されるフィーチャーと前記第２の記憶媒体上で管理されるタグとの関連付けを示すフィーチャー−タグ関連付け情報を第３の記憶媒体上で管理するフィーチャー−タグ関連付け情報管理手段と、
前記フィーチャーモデル情報と前記タグ情報と前記フィーチャー−タグ関連付け情報とに基づき、同一のタグが付加された複数のフィーチャーが存在するか否かを検証してその検証結果を出力すると共に、親子関係にあるフィーチャーであってそれぞれに付加されているタグも親子関係にあるものが存在するか否かを検証してその検証結果を出力する分析手段と
を具備することを特徴とするフィーチャーモデル作成支援装置。
【請求項２】
前記第１乃至第３の記憶媒体上の各情報の編集が可能な各画面を生成する手段を具備することを特徴とする請求項１に記載のフィーチャーモデル作成支援装置。
【請求項３】
任意のフィーチャーにタグを付加する操作が可能な画面を生成し、当該画面を通じて任意のフィーチャーに付加されるタグと同じものが別のフィーチャーにも付加されている場合にその旨を通知する手段を具備することを特徴とする請求項１又は２に記載のフィーチャーモデル作成支援装置。
【請求項４】
前記検証結果と共に該当するタグ及びフィーチャーを含むフィーチャーモデルを表示する画面を生成する手段を具備することを特徴とする請求項１乃至３のいずれか１項に記載のフィーチャーモデル作成支援装置。
【請求項５】
ソフトウェアプロダクトラインの特性を示すフィーチャーモデルの作成を支援するプログラムであって、コンピュータに、
個々のフィーチャーを識別するフィーチャー識別情報とフィーチャー間の親子関係を示すフィーチャー間関連情報とを含むフィーチャーモデル情報を第１の記憶媒体上で管理する機能と、
任意のフィーチャーに付加することが可能な個々のタグを識別するタグ識別情報とタグ間の親子関係を示すタグ間関連情報とを含むタグ情報を第２の記憶媒体上で管理する機能と、
前記第１の記憶媒体上で管理されるフィーチャーと前記第２の記憶媒体上で管理されるタグとの関連付けを示すフィーチャー−タグ関連付け情報を第３の記憶媒体上で管理する機能と、
前記フィーチャーモデル情報と前記タグ情報と前記フィーチャー−タグ関連付け情報とに基づき、同一のタグが付加された複数のフィーチャーが存在するか否かを検証してその検証結果を出力すると共に、親子関係にあるフィーチャーであってそれぞれに付加されているタグも親子関係にあるものが存在するか否かを検証してその検証結果を出力する機能と
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアプロダクトライン（製品系列）の特性を示すフィーチャーモデルの作成を支援するフィーチャーモデル作成支援装置及びプログラムに関する。
【背景技術】
【０００２】
ソフトウェアプロダクトラインの開発には、一般にフィーチャーモデルが利用される。このフィーチャーモデルの作成にあたっては、モデル作成者は、適切なフィーチャー（特性）の抽出やフィーチャー間の関連付けの抽出を行うことが求められる。
【０００３】
例えば、特許文献１には、フィーチャー指向ソフトウェアプロダクトライン（feature-oriented software product line）の開発環境を提供するシステムが開示されている。この特許文献１のシステムは、特定ドメイン（または領域）に対して、ソフトウェア製品ライン方法論を適用してドメインに対するフィーチャー分析と応用プログラムの開発のためのフィーチャー選択、再利用可能な資産コンポーネントの生成、マクロ処理を通じたソフトウェアコンポーネントの生成とコンポーネントに対する形状管理、ソフトウェアコンポーネントを利用した応用ソフトウェアの開発と仮想環境におけるソフトウェアテスティングの支援を行うものである。
【特許文献１】特開２００７−１２００３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１を含む従来の技術には、次のような課題がある。
【０００５】
すなわち、フィーチャーモデルの作成において必要となるフィーチャーの抽出やフィーチャー間の関連付けの抽出は、一般に難しい作業であり、熟練者でないと気が付くべきフィーチャーを見落としてしまったり、フィーチャー間の関連を見落としてしまったりすることがある。また、このような作業は、モデル作成者のノウハウに頼る部分が大きく、属人的な作業であることから、他者が作成したモデルに変更を加える場合、異なる名前で同じ意味合いのフィーチャーを追記してしまったり、既存のフィーチャー間の関連性と同じ関連性のあるフィーチャーツリーをモデル内に記述してしまったりすることがある。このようなことでは、適切なフィーチャーモデルを作成することはできない。
【０００６】
本発明は上記実情に鑑みてなされたものであり、フィーチャーモデルを適切に作成することを支援するフィーチャーモデル作成支援装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係るフィーチャーモデル作成支援装置は、ソフトウェアプロダクトラインの特性を示すフィーチャーモデルの作成を支援するフィーチャーモデル作成支援装置であって、個々のフィーチャーを識別するフィーチャー識別情報とフィーチャー間の親子関係を示すフィーチャー間関連情報とを含むフィーチャーモデル情報を第１の記憶媒体上で管理するフィーチャーモデル情報管理手段と、任意のフィーチャーに付加することが可能な個々のタグを識別するタグ識別情報とタグ間の親子関係を示すタグ間関連情報とを含むタグ情報を第２の記憶媒体上で管理するタグ情報管理手段と、前記第１の記憶媒体上で管理されるフィーチャーと前記第２の記憶媒体上で管理されるタグとの関連付けを示すフィーチャー−タグ関連付け情報を第３の記憶媒体上で管理するフィーチャー−タグ関連付け情報管理手段と、前記フィーチャーモデル情報と前記タグ情報と前記フィーチャー−タグ関連付け情報とに基づき、同一のタグが付加された複数のフィーチャーが存在するか否かを検証してその検証結果を出力すると共に、親子関係にあるフィーチャーであってそれぞれに付加されているタグも親子関係にあるものが存在するか否かを検証してその検証結果を出力する分析手段とを具備することを特徴とする。
【０００８】
また、本発明に係るプログラムは、ソフトウェアプロダクトラインの特性を示すフィーチャーモデルの作成を支援するプログラムであって、コンピュータに、個々のフィーチャーを識別するフィーチャー識別情報とフィーチャー間の親子関係を示すフィーチャー間関連情報とを含むフィーチャーモデル情報を第１の記憶媒体上で管理する機能と、任意のフィーチャーに付加することが可能な個々のタグを識別するタグ識別情報とタグ間の親子関係を示すタグ間関連情報とを含むタグ情報を第２の記憶媒体上で管理する機能と、前記第１の記憶媒体上で管理されるフィーチャーと前記第２の記憶媒体上で管理されるタグとの関連付けを示すフィーチャー−タグ関連付け情報を第３の記憶媒体上で管理する機能と、前記フィーチャーモデル情報と前記タグ情報と前記フィーチャー−タグ関連付け情報とに基づき、同一のタグが付加された複数のフィーチャーが存在するか否かを検証してその検証結果を出力すると共に、親子関係にあるフィーチャーであってそれぞれに付加されているタグも親子関係にあるものが存在するか否かを検証してその検証結果を出力する機能とを実現させることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、フィーチャーモデルを適切に作成することが可能となる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して、本発明の実施の形態について説明する。
【００１１】
この実施の形態では、ソフトウェアプロダクトラインの特性を示すフィーチャーモデルの作成を支援するフィーチャーモデル作成支援装置について説明する。
【００１２】
ここでまず、ソフトウェアプロダクトラインとフィーチャーモデルについての基本事項について説明しておく。
【００１３】
ソフトウェアプロダクトラインは、共通特性を共有している関連のあるソフトウェアの集合体である。共通特性は、特定の市場セグメント又はミッションのニーズを明確に満たすように管理される。ソフトウェアは、共通のコアアセットの集合から、規定された方法で開発される。上記コアアセットは、ソフトウェアプロダクトラインの基盤を形成する資産であり、例えば、アーキテクチャ、ソフトウェアコンポーネント、ドメインモデル、要求説明書、文書及び仕様書、性能モデル、テストケース、プロセス説明書などが含まれる。
【００１４】
このようなソフトウェアプロダクトラインの開発においては、ドメイン分析が行われる。ドメインの知識を分析し、形式化する活動である。このドメイン分析では、業種・業務の専門知識を形式化し、問題記述と対応する解決策のための基準が作成される。ドメイン分析の分析結果は、フィーチャーモデルで表わされる。
【００１５】
すなわち、ソフトウェアプロダクトラインの特性を記述するために、フィーチャーモデルが用いられる。フィーチャは、仕様書等で定められた要求を管理する典型的な単位の一つであり、製品の機能要件に該当するものと非機能要件に該当するものとがある。フィーチャーモデルは、フィーチャを階層的に表現した記述形式の情報である（例えば、[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)。
【００１７】
図１は、本発明の一実施形態に係るフィーチャーモデル作成支援装置の構成の一例を示す図である。
【００１８】
このフィーチャーモデル作成支援装置１は、例えばパーソナルコンピュータにより実現されるものであり、インターフェース１０、入力装置１１、表示装置１２、情報管理部２０、フィーチャーモデル情報管理部２１、フィーチャーモデル情報保存部２１Ｄ、タグ情報管理部２２、タグ情報保存部２２Ｄ、情報関連付け部３０、フィーチャー−タグ関連付け部３１、フィーチャー−タグ関連付け情報保存部３１Ｄ、情報分析部４０、フィーチャーモデル情報分析部４１、タグ情報分析部４２、およびフィーチャーモデル分析結果保存部４３を有する。
【００１９】
インターフェース１０は、本フィーチャーモデル作成支援装置の各種機能と操作者が使用する入力装置／表示装置１２との間の情報の受け渡しを行うものである。このインターフェース１０は、例えば、入力装置１１からの指示を情報管理部２０／情報関連付け部３０／情報分析部４０のうちの該当する機能に伝えたり、これらの機能から伝えられる情報に基づいて表示装置１２に表示すべき画面を生成したりする機能を備えている。また、入力装置１１からの操作に応じて、表示装置１２に表示される各種の画面の切り替えを行う機能も備えている。
【００２０】
入力装置１１は、各種の画面に対する指示などの各種の操作を行うためのキーボードやマウスなどに相当するものである。
【００２１】
表示装置１２は、各種の画面を表示するためのディスプレイに相当するものである。
【００２２】
情報管理部２０は、フィーチャーモデル情報管理部２１およびタグ情報管理部２２を司る各種情報の管理機能であり、これらの管理部２１，２２とインタフェース１０との情報の受け渡しや、情報関連付け部３０との情報の受け渡しや、情報分析部４０との情報の受け渡しを行うものである。
【００２３】
フィーチャーモデル情報管理部２１は、フィーチャーモデル情報保存部２１Ｄに保存されるフィーチャーモデル情報を管理するものである。
【００２４】
フィーチャーモデル情報保存部２１Ｄは、個々のフィーチャーを識別するフィーチャー識別情報やフィーチャー間の親子関係を示すフィーチャー間関連情報を含むフィーチャーモデル情報を保存する記憶媒体に相当するものである。
【００２５】
タグ情報管理部２２は、タグ情報保存部２２Ｄに保存されるタグ情報を管理するものである。
【００２６】
タグ情報保存部２２Ｄは、任意のフィーチャーに付加することが可能な個々のタグ（モデル作成者がどのような観点でそのフィーチャを抽出したのかを示す情報）を識別するタグ識別情報やタグ間の親子関係を示すタグ間関連情報などを含むタグ情報を保存する記憶媒体に相当するものである。
【００２７】
情報関連付け部３０は、フィーチャー−タグ関連付け部３１を司る各種情報の関連付け機能であり、このフィーチャー−タグ関連付け部３１とインタフェース１０との情報の受け渡しや、情報関連付け部３０との情報の受け渡しや、情報分析部４０との情報の受け渡しを行うものである。
【００２８】
フィーチャー−タグ関連付け部３１は、フィーチャー−タグ関連付け情報保存部３１Ｄに保存されるフィーチャー−タグ関連付け情報を管理するものである。
【００２９】
フィーチャー−タグ関連付け情報保存部３１Ｄは、フィーチャーモデル情報保存部２１Ｄに保存されているフィーチャーとタグ情報保存部２２Ｄに保存されているタグとの関連付けを示すフィーチャー−タグ関連付け情報を保存するものである。
【００３０】
情報分析部４０は、フィーチャーモデル情報分析部４１およびタグ情報分析部４２を司る情報分析機能であり、これらの分析部４１，４２とインタフェース１０との情報の受け渡しや、情報管理部２０との情報の受け渡しや、情報関連付け部３０との情報の受け渡しを行うものである。この情報分析部４０の中に分析部４１，４２を含めるように構成しても構わない。
【００３１】
上記情報分析部４０は、分析部４１，４２を用いて、前述のフィーチャーモデル情報とタグ情報とフィーチャー−タグ関連付け情報とに基づき、同一のタグが付加された複数のフィーチャーが存在するか否かを検証してその検証結果を表示装置１２側へ出力したり、親子関係にあるフィーチャーであってそれぞれに付加されているタグも親子関係にあるものが存在するか否かを検証してその検証結果を表示装置１２側へ出力したりする機能を有する。
【００３２】
フィーチャーモデル情報分析部４１は、フィーチャーモデル情報やフィーチャー−タグ関連付け情報に対する分析を行うものである。
【００３３】
タグ情報分析部４２は、タグ情報やフィーチャー−タグ関連付け情報に対する分析を行うものである。
【００３４】
フィーチャーモデル情報分析結果保存部４３は、各種の分析部４０，４１，４２の分析結果や検証結果を保存する記憶媒体に相当するものである。
【００３５】
また、上述のインターフェース１０は、各種の情報保存部２１Ｄ，２２Ｄ，３１Ｄ，４３に保存される各情報の編集が可能な各画面を生成する機能を有する。
【００３６】
例えば、上述のインターフェース１０は、任意のフィーチャにタグを付加する操作が可能な画面を生成し、当該画面を通じて任意のフィーチャに付加されるタグと同じものが別のフィーチャにも付加されている場合にその旨を通知する機能や、検証結果と共に該当するタグ及びフィーチャーを含むフィーチャーモデルを表示する画面を生成する機能などを備えている。
【００３７】
画面の種類としては、メニュー画面のほか、フィーチャー登録画面、フィーチャー編集画面、フィーチャー間関連付け画面、タグ情報付加画面、タグ情報登録画面、タグ情報編集画面、タグ情報型編集画面、タグ情報間関連付け画面、タグ情報検証画面などがある。
【００３８】
次に、図２〜図５を参照して、各種の情報保存部２１Ｄ，２２Ｄ，３１Ｄに保存される情報の構成について説明する。
【００３９】
図２は、フィーチャーモデル情報保存部２１Ｄに保存されるフィーチャーモデル情報の構成の一例を示す図である。
【００４０】
フィーチャーモデル情報は、フィーチャー識別情報（テーブル）およびフィーチャー間関連情報（テーブル）を含む。フィーチャー識別情報は、個々のフィーチャーを識別するためのフィーチャーＩＤやフィーチャー名などの情報を含む。フィーチャー間関連情報は、フィーチャーの親子関係を識別するためのフィーチャー間関連ＩＤや、当該親子関係をなす親フィーチャーＩＤおよび子フィーチャーＩＤなどの情報を含む。
【００４１】
図３は、タグ情報保存部２２Ｄに保存されるタグ情報の構成の一例を示す図である。
【００４２】
タグ情報は、タグ識別情報（テーブル）、タグ情報型情報（テーブル）、およびタグ間関連情報（テーブル）を含む。タグ識別情報は、個々のタグを識別するためのタグＩＤやタグ名のほか、タグ情報型情報に含まれるタグ情報型ＩＤなどの情報を含む。タグ情報型情報は、タグ情報の型（後述）を識別するためのタグ情報型ＩＤやタグ情報型名などの情報を含む。タグ間関連情報は、タグの親子関係を識別するためのタグ間関連ＩＤや、当該親子関係をなす親タグＩＤおよび子タグＩＤなどの情報を含む。
【００４３】
図４は、フィーチャー−タグ関連付け情報保存部３１Ｄに保存されるフィーチャー−タグ関連付け情報の構成の一例を示す図である。
【００４４】
フィーチャー−タグ関連付け情報は、フィーチャーとタグの関連付け情報（テーブル）を含む。フィーチャーとタグの関連付け情報は、フィーチャーとこれに付加された（関連付けられた）タグとの関係を識別するためのタグ間関連ＩＤや、当該関係をなすフィーチャーＩＤおよびタグＩＤなどの情報を含む。
【００４５】
図５は、フィーチャーモデル分析結果保存部３１Ｄに保存されるフィーチャーモデル分析結果情報の構成の一例を示す図である。
【００４６】
フィーチャーモデル分析結果情報は、分析結果情報（テーブル）、分析結果タグ情報（テーブル）、および分析結果フィーチャー情報（テーブル）を含む。分析結果情報は、個々の分析を識別するための分析ＩＤや、処理の状態を示す処理フラグなどの情報を含む。分析結果タグ情報は、分析結果として得られたタグの親子関係をなす親タグＩＤおよび子タグＩＤなどの情報を含む。分析結果フィーチャー情報は、上記分析ＩＤや、分析結果として得られたフィーチャーの親子関係をなす親フィーチャーＩＤおよび子フィーチャーＩＤなどの情報を含む。
【００４７】
次に、図６〜図１０を参照して、フィーチャーモデル作成支援を実現する各種の処理について説明する。なお、図１と共通する要素には同一の符号を付している。また、各種の処理の説明においては、図１１〜図１４に示す画面の例を併せて参照するものとする。
【００４８】
以下では、「１．タグ情報の登録」、「２．タグ情報間の関連付け」、「３．タグ情報に型を設定」、「４．フィーチャーにタグ情報を付加」、「５．タグ情報からフィーチャーとフィーチャーの関連を抽出」、「６．タグ情報からフィーチャーを抽出」、および「７．フィーチャー間の関連を抽出」の順に説明する。なお、フィーチャーモデル情報については登録済みであるものとする。フィーチャーモデル情報の登録そのものは、周知の技術であるため、ここでは特に説明しない。
【００４９】
１．タグ情報の登録
図６は、「タグ情報の登録」を説明するための概念図である。
【００５０】
モデル作成者は、図１１に示されるタグ情報編集画面を通じて、モデル作成中に新規に必要になったタグ情報を逐次登録すると共に、ドメインに関連するタグ情報（タグ間関連情報を含む）をｘｍｌ，ｃｓｖ等の形式で一括登録する。例えば、当該画面において、登録するタグ情報名（タグ名）などを入力する。なお、タグ情報型名については、後で入力してもよい。また、当該画面中には登録済みタグ情報一覧も表示されるため、もし登録済みタグ情報がある場合には、それを参考にすることができる。モデル作成者が「登録」ボタンを押下げ操作すると、入力した情報がインタフェース１０、情報管理部２０、タグ情報管理部２２を介して、タグ情報保存部２２Ｄに保存される。
【００５１】
２．タグ情報間の関連付け
図７は、「タグ情報間の関連付け」を説明するための概念図である。
【００５２】
モデル作成者は、図１２に示されるタグ情報間の関連付け画面を通じて、タグ情報間の関連付けを登録する。例えば、当該画面において、関連付けたい親タグと子タグとをそれぞれ選択すると、当該画面中に選択したタグの親子関係がツリー構造で表現される。また、当該画面中には登録済みタグ情報一覧も表示されるため、もし登録済みタグ情報がある場合には、それを参考にすることができる。モデル作成者が「登録」ボタンを押下げ操作すると、入力した情報がインタフェース１０、情報管理部２０、タグ情報管理部２２を介して、タグ情報保存部２２Ｄに保存される。
【００５３】
３．タグ情報に型を設定
モデル作成者は、前述の図１１に示されるタグ情報編集画面を通じて、タグ情報の型を登録する。型の種類には、「機能タグ」、「非機能タグ」、「可変性の観点タグ」、「その他のタグ」がある。「機能タグ」は、製品に必要な機能であることを示す。「非機能タグ」は、製品に必要な機能ではないことを示す。「可変性の観点タグ」は、モデル作成者が何らかの観点をもって抽出した可変性のもの（例えば、「中国向け製品」として抽出したもの）であることを示す。「その他のタグ」は、上記３つのいずれにも属さないものであることを示す。例えば、当該画面において、登録するタグ情報型（タグ情報型名）として、「観点」（「可変性の観点タグ」に相当）を選択する。この場合、タグコメントとして、例えば、「中国向け製品．．．」などと入力する。モデル作成者が「登録」ボタンを押下げ操作すると、入力した情報がインタフェース１０、情報管理部２０、タグ情報管理部２２を介して、タグ情報保存部２２Ｄに保存される。
【００５４】
４．フィーチャーにタグ情報を付加
図８は、「フィーチャーにタグ情報を付加」を説明するための概念図である。
【００５５】
モデル作成者は、図１３に示されるタグ情報付加画面を通じて、フィーチャーとタグとの関連付けを登録する。例えば、当該画面において、まず、フィーチャ名を入力する。当該画面中には登録済みフィーチャー一覧が表示されるため、もし登録済みフィーチャーがある場合には、その中から選択することができる。所望のフィーチャーが無ければこの時点で新規に登録してもよい。次に、上記フィーチャーに関連付ける（付加する）タグを選択する。当該画面中には登録済みタグ情報一覧が表示されるため、もし登録済みタグがある場合には、その中から選択することができる。所望のタグが無ければこの時点で新規に登録してもよい。モデル作成者が「登録」ボタンを押下げ操作すると、入力したフィーチャーとタグとの関連付けの情報がインタフェース１０、情報関連付け部３０、フィーチャー−タグ関連付け部３１を介して、フィーチャー−タグ関連付け情報保存部３１Ｄに保存される。
【００５６】
５．タグ情報からフィーチャーとフィーチャーの関連を抽出
前述の図１３に示されるタグ情報付加画面においてモデル作成者が「登録」ボタンを押下げ操作したとき、例えば新規なフィーチャに関連付ける（付加する）ものとして入力したタグと同じものが別の既存のフィーチャにも付加されている場合、システムメッセージとしてその旨が当該画面中に通知される。これにより、モデル作成者は、そのタグをフィーチャーに昇格できる可能性があることを知ることができる。
【００５７】
６．タグ情報からフィーチャーを抽出
図９は、「タグ情報からフィーチャーを抽出」を説明するための概念図である。
【００５８】
モデル作成者は、図９（ａ）に示されるように、新規のフィーチャを追加しタグを付加した際に、もし、その付加したタグ情報と同じタグ情報が既存のフィーチャーに付加されている場合には、その旨を前述の図１３に示されるタグ情報付加画面内のシステムメッセージ（もしくは、後述する図１４に示されるタグ情報検証画面での検証結果）から知ることができる。
【００５９】
そのような場合、モデル作成者は、図９（ｂ）に示されるように、共通するタグが付加されているフィーチャー同士を比較すると共に、共通するタグ以外に併記されているタグに関しても比較や確認を行う。
【００６０】
ここで、モデル作成者は、例えばフィーチャー「ＴＭＣ」はフィーチャー「渋滞情報」のバリエーションであり、図９（ｃ）に示されるように、フィーチャー「ＴＭＣ」をフィーチャー「渋滞情報」の子フィーチャーとして関連付けることが好ましいということに気付くことができる。
【００６１】
また、別の例として、モデル作成者は、上記比較の結果から、図９（ｄ）に示されるように、タグ「ＶＩＣＳ」をフィーチャーに昇格し、それをフィーチャー「渋滞情報」の子フィーチャーとして関連付けることにより、フィーチャーの粒度を揃えることが好ましいということに気付くことができる。
【００６２】
また、モデル作成者は、図１３に示されるタグ情報付加画面でフィーチャーとタグとの関連付けを登録した後、図１４に示されるタグ情報検証画面を表示させて「タグ情報検証」ボタンを押下げ操作することにより、その検証結果を得ることができる。ここでも、同一のタグが付加された複数のフィーチャーを知得することができる。複数の検証結果のうち、所望の検証結果を選択すると、該当する検証箇所を含むタグ情報付きのフィーチャーモデルの模式図が表示される。モデル作成者は、これを見て、所望の修正作業を実行することができる。
【００６３】
７．フィーチャー間の関連を抽出
図１０は、「フィーチャー間の関連を抽出」を説明するための概念図である。
【００６４】
モデル作成者は、前述の図１４に示されるタグ情報検証画面を通じて、親子関係にあるフィーチャーのそれぞれに付加されているタグも親子関係にあるものが存在する場合に、その旨を検証結果として知得することができる。例えば図１０に示されるように、親子関係にあるフィーチャー「Ａ」，「Ｂ」にそれぞれ付加されているタグ「tag1」，「tag2」も親子関係にある場合、また、親子関係にあるフィーチャー「Ｄ」，「Ｅ」やフィーチャー「Ｄ」，「Ｆ」にそれぞれ付加されているタグ「tag1」，「tag2」も親子関係にある場合、その旨が表示され、タグ「tag1」，「tag2」が親子関係にあるフィーチャーとして昇格（抽出）できる可能性があることがメッセージとして提示される。
【００６５】
その場合の分析処理の具体例を、図１５のフローチャートを参照して説明する。
【００６６】
ここでは、説明の便宜上、図１６に示されるフィーチャーモデルを用いて説明する。なお、ｆ０〜ｆ６はフィーチャーを示し、ｔ０〜ｔ８は該当するフィーチャーに付加されているタグを示している。また、図１５のフローチャート中の各処理の説明に沿って、図１７〜図２３に示される各種の情報を適宜参照するものとする。
【００６７】
情報分析部４０は、フィーチャーモデル情報保存部２１Ｄのフィーチャー関連情報（テーブル）から、フィーチャーの親子関係の情報（図１７）を取得し（ステップＳＴ１）、フィーチャー−タグ関連付け情報保存部３１Ｄのフィーチャーとタグの関連付け情報（テーブル）から、フィーチャーに関連付けられたタグの情報（図１８）を取得し（ステップＳＴ２）、タグ情報保存部２２Ｄのタグ間関連情報（テーブル）から、タグの親子関係の情報（図１９）を取得する（ステップＳＴ３）。
【００６８】
次に、情報分析部４０は、図２０に示されるように、ステップＳＴ１で取得した全ての親子フィーチャーを対象に、ステップＳＴ２で取得したフィーチャーとタグの関連情報を利用して、親フィーチャーに関連付けされたタグ情報を親タグ、子フィーチャーに関連付けされたタグ情報を子タグとして、一時的に親子関係にあるタグ情報とみなす（ステップＳＴ４）。そして、図２１に示されるように、ステップＳＴ４で作成した親子関係にあるタグ情報の中で重複する親子関係の情報をマージする（ステップＳＴ５）。また、分析結果を表示するために、タグ情報をマージした際にタグが関連付けられたフィーチャーの情報も保持する。
【００６９】
次に、情報分析部４０は、ステップＳＴ５で作成したタグの親子関係の情報の数だけ、ステップＳＴ６〜ＳＴ８のループ処理を行う。このループ処理では、図２２に示されるように、ステップＳＴ５で作成したタグの親子関係の情報とステップＳＴ３で取得したタグの親子関係の情報とを比較して、同一の親子関係にある情報が存在するかどうかを分析する（ステップＳＴ７）。同一の情報が無ければ何もしないが、同一の情報があればその情報を分析結果として図２３に示されるようにリストに蓄積する（ステップＳＴ８）。
【００７０】
上記ループ処理が終了すると（ステップＳＴ９）、情報分析部４０は、ステップＳＴ８でリストに蓄積した分析結果を、フィーチャーモデル分析結果保存部４３のフィーチャーモデル分析結果情報の各テーブルとして保存し（ステップＳＴ１０）、ステップＳＴ８でリストに蓄積した分析結果を表示装置１２の画面に出力し（ステップＳＴ１１）、当該分析を終了する。
【００７１】
このため、モデル作成者は、表示装置１２の画面に出力された分析結果を参照することにより、親子関係にあるタグが、親子関係にあるフィーチャーとして昇格（抽出）できる可能性があることを知得することができる。
【００７２】
このように本実施形態によれば、同一タグが関連付けされたフィーチャの分析を実行することで、ユーザが見落としていたフィーチャを抽出することが可能となる。また、タグ間の関連の分析を実行することで、ユーザが見落としていたフィーチャ間の関連を抽出することができる。また、タグのフィーチャーへの昇格の可能性などを見出すことができる。
【００７３】
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【００７４】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【００７５】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が上記実施形態を実現するための各処理の一部を実行しても良い。
【００７６】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶又は一時記憶した記憶媒体も含まれる。
【００７７】
また、記憶媒体は１つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【００７８】
なお、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【００７９】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【００８０】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【図面の簡単な説明】
【００８１】
【図１】本発明の一実施形態に係るフィーチャーモデル作成支援装置１の構成の一例を示す図。
【図２】フィーチャーモデル情報保存部２１Ｄに保存されるフィーチャーモデル情報の構成の一例を示す図。
【図３】タグ情報保存部２２Ｄに保存されるタグ情報の構成の一例を示す図。
【図４】フィーチャー−タグ関連付け情報保存部３１Ｄに保存されるフィーチャー−タグ関連付け情報の構成の一例を示す図。
【図５】フィーチャーモデル分析結果保存部３１Ｄに保存されるフィーチャーモデル分析結果情報の構成の一例を示す図。
【図６】「タグ情報の登録」を説明するための概念図。
【図７】「タグ情報間の関連付け」を説明するための概念図。
【図８】「フィーチャーにタグ情報を付加」を説明するための概念図。
【図９】「タグ情報からフィーチャーを抽出」を説明するための概念図。
【図１０】「フィーチャー間の関連を抽出」を説明するための概念図。
【図１１】タグ情報編集画面の一例を示す図。
【図１２】タグ情報間の関連付け画面の一例を示す図。
【図１３】タグ情報付加画面の一例を示す図。
【図１４】タグ情報検証画面の一例を示す図。
【図１５】分析処理の一例を示すフローチャート。
【図１６】図１５の説明に用いるフィーチャーモデルを示す図。
【図１７】フィーチャーの親子関係の情報の一例を示す図。
【図１８】フィーチャーに関連付けられたタグの情報の一例を示す図。
【図１９】タグの親子関係の情報の一例を示す図。
【図２０】一時的に親子関係にあるタグ情報の一例を示す図。
【図２１】重複する親子関係の情報のマージの一例を示す図。
【図２２】タグの親子関係の情報の比較の一例を示す図。
【図２３】リストに蓄積した分析結果の一例を示す図。
【符号の説明】
【００８２】
１…フィーチャーモデル作成支援装置、１０…インターフェース、１１…入力装置、１２…表示装置、２０…情報管理部、２１…フィーチャーモデル情報管理部、２１Ｄ…フィーチャーモデル情報保存部、２２…タグ情報管理部、２２Ｄ…タグ情報保存部、３０…情報関連付け部、３１…フィーチャー−タグ関連付け部、３１Ｄ…フィーチャー−タグ関連付け情報保存部、４０…情報分析部、４１…フィーチャーモデル情報分析部、４２…タグ情報分析部、４３…フィーチャーモデル分析結果保存部。
【図１】
2009245177.tif 000003
【図２】
2009245177.tif 000004
【図３】
2009245177.tif 000005
【図４】
2009245177.tif 000006
【図５】
2009245177.tif 000007
【図６】
2009245177.tif 000008
【図７】
2009245177.tif 000009
【図８】
2009245177.tif 000010
【図９】
2009245177.tif 000011
【図１０】
2009245177.tif 000012
【図１１】
2009245177.tif 000013
【図１２】
2009245177.tif 000014
【図１３】
2009245177.tif 000015
【図１４】
2009245177.tif 000016
【図１５】
2009245177.tif 000017
【図１６】
2009245177.tif 000018
【図１７】
2009245177.tif 000019
【図１８】
2009245177.tif 000020
【図１９】
2009245177.tif 000021
【図２０】
2009245177.tif 000022
【図２１】
2009245177.tif 000023
【図２２】
2009245177.tif 000024
【図２３】
2009245177.tif 000025