(57)【要約】【課題】ソフトウェア部品再利用の再利用範囲を判定するソフトウェア再利用支援技術において、ソフトウェア部品の再利用範囲の明確化とその拡張を行う。【解決手段】支援装置１０１は、製品構成要素と、製品をこの製品構成要素で分類した枠組みであるソフトウェアフレームワークと、それが提供する入出力と、再利用性を向上させるための入出力を特徴付ける再利用拡張設定とを管理する。また、ソフトウェア部品群を機能単位に分類する枠組みであるソフトウェア部品庫と製品構成要素との関係を管理する。更に、ソフトウェア部品群を構成する機能と、入力と、出力と、部品群再利用拡張設定とを管理し、その変更点からソフトウェアフレームワーク単位での、ソフトウェア部品庫、およびソフトウェア部品群の再利用可否判断を行う。更に、部品群再利用拡張設定を用いて再利用の可能性判定を実施する。【選択図】図１
2009252019.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア部品の再利用を行い、ソフトウェアを作成するソフトウェア再利用支援装置であって、
端末に接続されるネットワークインターフェースと処理装置と記憶装置とを備え、
前記ソフトウェアは、製品構成要素と、前記製品構成要素で製品を分類した枠組みであるソフトウェアフレームワークと、機能、入力、出力、再利用性を向上させるための部品群再利用拡張設定で構成されるソフトウェア部品群と、前記製品構成要素に関連させた、前記製品の機能分類であるソフトウェア部品庫とを有し、
前記処理装置は、前記端末から入力される、
前記ソフトウェアフレームワーク、前記ソフトウェアフレームワークを構成する前記製品構成要素、前記ソフトウェアフレームワークが提供する入出力、再利用性を向上させるための前記入出力を特徴付ける再利用拡張設定の情報、前記ソフトウェア部品群の情報、及び前記ソフトウェア部品庫の情報を、前記記憶装置に格納し、
格納された前記情報を用いて、前記ソフトウェア部品庫を前記製品構成要素に関連付けて管理する、
ことを特徴とするソフトウェア再利用支援装置。
【請求項２】
請求項１記載のソフトウェア再利用支援装置であって、
前記処理装置は、
前記ソフトウェアフレームワークの名称、前記ソフトウェアフレームワークを構成する前記製品構成要素、前記ソフトウェアフレームワークが提供する前記入出力、前記再利用性を向上させるための前記入出力を特徴付ける再利用拡張設定の情報を入力するソフトウェアフレームワーク入力部を有する、
ことを特徴とするソフトウェア再利用支援装置。
【請求項３】
請求項１記載のソフトウェア再利用支援装置であって、
前記処理装置は、
前記ソフトウェア部品群の前記機能、入力、出力、及び前記再利用性を向上させるための部品群再利用拡張設定の情報を入力するソフトウェア部品群入力部を有する、
ことを特徴とするソフトウェア再利用支援装置。
【請求項４】
請求項１記載のソフトウェア再利用支援装置であって、
前記処理装置は、
前記製品構成要素に関連させた、前記製品の機能分類である前記ソフトウェア部品庫の情報を入力するソフトウェア部品庫入力部を有する、
ことを特徴とするソフトウェア再利用支援装置。
【請求項５】
請求項１記載のソフトウェア再利用支援装置であって、
前記処理装置は、
前記ソフトウェアフレームワークの世代管理を行い、前記ソフトウェアフレームワークの世代毎に、対応する少なくとも１つの前記ソフトウェア部品庫を関連付けし、前記ソフトウェア部品庫と前記ソフトウェア部品群を関連付けして管理する、
ことを特徴とするソフトウェア再利用支援装置。
【請求項６】
請求項１記載のソフトウェア再利用支援装置であって、
前記記憶装置に記憶される前記ソフトウェア部品庫の情報は、ソフトウェア部品庫名と、前記ソフトウェア部品庫に関連する前記製品構成要素と、前記ソフトウェアフレームワークの世代に関する情報とを含み、
前記処理装置は、
前記ソフトウェアフレームワークの世代毎に、対応する少なくとも１つの前記ソフトウェア部品庫を関連付けて管理する、
ことを特徴とするソフトウェア再利用支援装置。
【請求項７】
請求項１記載のソフトウェア再利用支援装置であって、
前記処理装置は、
前記記憶装置に記憶された前記情報を解析するソフトウェア再利用解析部を含むソフトウェア再利用制御部を有する、
ことを特徴とするソフトウェア再利用支援装置。
【請求項８】
ソフトウェア部品の再利用を行い、前記ソフトウェア部品を組み合わせてソフトウェアを作成する、記憶装置と処理装置を有する再利用支援装置におけるソフトウェア再利用支援方法であって、
前記ソフトウェアは、製品構成要素と、前記製品構成要素で分類した枠組みであるソフトウェアフレームワークと、ソフトウェア部品群と、前記ソフトウェア部品を機能単位で分類する枠組みであるソフトウェア部品庫とを含み、
前記処理装置は、
前記ソフトウェアフレームワークの前記製品構成要素と、その上位互換性、および下位互換性と、前記ソフトウェアフレームワークが提供する入出力に関する情報とを、前記記憶装置に格納し、
前記製品構成要素と前記入出力の変更点を抽出し、
変更となった前記製品構成要素に関連する、前記ソフトウェア部品庫単位での再利用可否判断と、前記ソフトウェア部品群単位での再利用可否判断を行う、ことを特徴とするソフトウェア再利用支援方法。
【請求項９】
請求項８記載のソフトウェア再利用支援方法であって、
前記ソフトウェア部品群の情報は、機能、入力、出力、再利用性を向上させるための部品群再利用拡張設定の情報とで構成される、
ことを特徴とするソフトウェア再利用支援方法。
【請求項１０】
請求項９記載のソフトウェア再利用支援方法であって、
前記処理装置は、
前記ソフトウェア部品群単位での前記再利用可否判断を、変更となった前記ソフトウェアフレームワークが提供する前記入出力の変更点から判断する、
ことを特徴とするソフトウェア再利用支援方法。
【請求項１１】
請求項１０記載のソフトウェア再利用支援方法であって、
前記処理装置は、
前記ソフトウェアフレームワークの提供する前記入出力の変更点を判断した結果、前記入出力が不一致となった場合に、前記部品群再利用拡張設定の情報により前記再利用可否判断を実行する、
ことを特徴とするソフトウェア再利用支援方法。
【請求項１２】
請求項８記載のソフトウェア再利用支援方法であって、
前記処理装置は、
変更となった前記製品構成要素に関連する、前記ソフトウェア部品庫単位での再利用可否判断を、前記製品構成要素の合致性と前記上位互換性、および前記下位互換性の情報との関係から判断する、
ことを特徴とするソフトウェア再利用支援方法。
【請求項１３】
請求項８記載のソフトウェア再利用支援方法であって、
前記処理装置は、
前記ソフトウェアフレームワークの世代管理を行い、前記ソフトウェアフレームワークの世代毎に、対応する少なくとも１つの前記ソフトウェア部品庫を関連付けて管理する、
ことを特徴とするソフトウェア再利用支援方法。
【請求項１４】
請求項８記載のソフトウェア再利用支援方法であって、
前記記憶装置に記憶される前記ソフトウェア部品庫の情報は、ソフトウェア部品庫名と、前記ソフトウェア部品庫に関連する前記製品構成要素と、前記ソフトウェアフレームワークの世代に関する情報とを含み、
前記処理装置は、
前記ソフトウェアフレームワークの世代毎に、対応する少なくとも１つの前記ソフトウェア部品庫を関連付けて管理する、
ことを特徴とするソフトウェア再利用支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアを部品単位に分解し、ソフトウェア部品を再利用して、情報システムの開発をする際に用いられるソフトウェア再利用支援技術に関する。
【背景技術】
【０００２】
近年、情報システムに対して、要求される機能・非機能の要件は難解、かつ高度になってきている。反面、その開発サイクルは短くなり、開発工数は以前のままである。特に、携帯電話やカーナビゲーション車載装置などの多くの情報システムは、通信ネットワークとの接続や、それを取り巻くインフラ環境、対応するメディアの多種性、必要とされる地図のフォーマットが常に最新のものが要求されるなど、その変化は非常に激しく、求められる要求は多様なものとなっている。
【０００３】
このような状況において、決められた納期における情報システム開発には、ソフトの再利用は欠かせないものとなっている。情報システムは、ソフトウェアを意味ある機能の単位に分解し、ソフトを部品化して、部品同士を組み合わせることで、ソフトウェアの再利用を行ってきた。
【０００４】
従来、このソフトウェア部品の再利用は、作成したソフトウェア部品を、サーバーなどで管理し、使用者がこれを使う、使わないの判断を行ってきた。
【０００５】
特許文献１には、ソフトウェア部品の再利用を、入力、出力、入出力に分けて管理し、その組み合わせにより、ソフトウェアの再利用を行うシステムの例が開示されている。そのシステムよれば、確かに入出力に着目したソフトウェア部品の再利用が可能となる。ただし、特許文献1では、ソフトウェア部品の入出力のみに特化した、部品管理方法が記載されているだけであり、それ以上の管理方法の記載はない。
【０００６】
また、一方で特許文献２にはフレームワークに着目し、フレームワーク上に実行されるアプリケーションのライフサイクル管理に関する例が開示されている。ただし、特許文献２にはフレームワーク単位での記載はあるが、フレームワークと作成したい情報システムとの関係が明記されておらず、製品を特徴付ける製品構成の変化に対して、既存のソフトウェア部品の再利用可能範囲が分かるわけではない。また、ソフトウェア部品の再利用は可否のみの判定であり、流用可能性の判定に関する記載はない。
【０００７】
【特許文献１】特開２００１-４３０７９号公報
【特許文献２】特開２００６-３２３５００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
一方で、多様化される要求に対応するためには、それに対応できるだけのソフトウェア部品を多数用意しなければならないということになり、ソフトウェア部品が登録されるものの、必要とされる要求に対して、どのソフトウェア部品が再利用できて、どのソフトウェア部品が再利用できるかが分からないままに、登録のみが行われ、登録は多数されているが、再利用範囲が不明確になるという問題がある。
【０００９】
また、ソフトウェアの作成者しか、再利用可能な範囲が分からず、ソフトウェア部品の登録を行うものの、結局再利用されないままソフトウェア部品の登録だけが進み、ソフトウェア部品管理システムが混乱し、そのメンテナンスに多数の工数がかかる。また、ソフトウェア部品を登録するたびに、メンテナンスを実施しなければならないという問題がある。
【００１０】
しかしながら、特許文献１や特許文献２に開示された技術においては、その利用範囲を明確にしているが、特許文献１では機能と入出力のみでの再利用範囲の絞込みとなる。また、特許文献２はフレームワークに合わせてソフトウェア部品の登録を行うため、フレームワークに対応したソフトウェア部品の再利用範囲が明確になるが、フレームワークが提供する入出力に対応したソフトウェア部品の管理を行うだけであり、製品を代表する製品構成に変化があった場合に、どのソフトウェア部品に変化があるのかが分からないという問題がある。
【００１１】
また、ソフトウェア部品の入出力のみが変わった場合、単純な修正で再利用が可能な部品もあるが、特許文献１や特許文献２の方法では、再利用が可能かどうかの判定のみを行っており、ソフトウェア部品の再利用可能性までは判定しておらず、再利用可能範囲を狭くしてしまっている。
【００１２】
以上のような従来技術の問題点に鑑み、本発明の目的は、ソフトウェア部品再利用の再利用範囲を判定することが可能なソフトウェア再利用支援装置、およびソフトウェア再利用可否支援方法を提供することにある。
【課題を解決するための手段】
【００１３】
本発明は、上記の目的を達成するため、ソフトウェア部品の再利用を行い、ソフトウェア部品を組み合わせてソフトウェアを作成するソフトウェア再利用支援装置であって、端末に接続されるネットワークインターフェースと処理装置と記憶装置とを備え、ソフトウェアに、製品構成要素と、製品構成要素で製品を分類した枠組みであるソフトウェアフレームワークと、機能、入力、出力、再利用性を向上させるための部品群再利用拡張設定で構成されるソフトウェア部品群と、製品構成要素に関連させた製品の機能分類であるソフトウェア部品庫とを含ませ、処理装置は端末から入力される、ソフトウェアフレームワーク、ソフトウェアフレームワークを構成する製品構成要素、ソフトウェアフレームワークが提供する入出力、再利用性を向上させるための入出力を特徴付ける再利用拡張設定の情報、ソフトウェア部品群の情報、及びソフトウェア部品庫の情報を記憶装置に格納し、ソフトウェア部品庫を製品構成要素に関連付けて管理するソフトウェア再利用支援装置を提供する。
【００１４】
また、上記の目的を達成するため本発明は、ソフトウェア部品の再利用を行い、ソフトウェア部品を組み合わせてソフトウェアを作成する処理装置によるソフトウェア再利用支援方法であって、ソフトウェアは、製品構成要素と、製品構成要素で製品を分類した枠組みであるソフトウェアフレームワークと、ソフトウェア部品群と、ソフトウェア部品を機能単位で分類する枠組みであるソフトウェア部品庫とを含み、処理装置は、ソフトウェアフレームワークの製品構成要素と、その上位互換性、および下位互換性と、ソフトウェアフレームワークが提供する入出力に関する情報とを記憶装置に格納し、製品構成要素と入出力の変更点を抽出し、変更となった製品構成要素に関連する、ソフトウェア部品庫単位での再利用可否判断と、ソフトウェア部品群単位での再利用可否判断を行うソフトウェア再利用支援方法を提供する。
【００１５】
より好適に本発明は、上記の目的を達成するため、必要とするソフトウェアの作成において、ソフトウェア部品の再利用を行う登録者端末から入力し、記憶装置に格納する手段と、ソフトウェアフレームワーク単位での、ソフトウェア部品再利用におけるソフトウェア部品庫の再利用可否判断方法と、ソフトウェアフレームワーク単位での、ソフトウェア部品再利用におけるソフトウェア部品群の再利用可否判断方法と、ソフトウェアフレームワークの製品構成要素と、その上位互換性および下位互換性と、ソフトウェアフレームワークが提供する入出力とを、ソフトウェアフレームワーク登録者端末から入力し、記憶装置に格納するソフトウェアフレームワーク変更入力手段と、製品構成要素と入出力の変更点を抽出し、変更となった製品構成要素に関連する、ソフトウェア部品庫単位での再利用可否判断を、その合致性と上位互換性および下位互換性との関係から判断する手段と、ソフトウェア部品群単位での再利用可否判断を、変更となったソフトウェアフレームワークが提供する入出力の変更との関係から判断する手段とを組み合わせることにより、ソフトウェア部品の再利用可否判断方法と、ソフトウェアフレームワークの提供する入出力の変更点を、機能と入力と出力の合致性による流用可否を判定方法と、入力または出力が不一致となった場合においても、再利用拡張設定による判定を実施することで、ソフトウェア部品群が再利用可能である可能性があることを判定する判定方法とを実行可能とする。
【００１６】
ここで、ソフトウェアフレームワークとは、ソフトウェアの製品を製品構成要素で分類した枠組みである。このソフトウェアフレームワークは登録されるフレームワーク毎にバージョン（世代）管理を行い、同一のフレームワークの進化を追従できるようにする。また、ソフトウェアフレームワークにおける上位互換性とは、ソフトウェアフレームワークをバージョンアップ（世代交代）させる際に、後発するソフトウェアフレームワークが、先発するソフトウェアフレームワークの製品構成要素が変化した際にも、登録されているソフトウェア部品群を変更することなく自由に扱えることを意味している。ソフトウェアフレームワークにおける下位互換性は、先発するソフトウェアフレームワークに対して、後発するソフトウェアフレームワークの製品構成要素が変化した際にも、登録されているソフトウェア部品群を変更することなく自由に扱えることを意味している。
【発明の効果】
【００１７】
本発明によれば、部品の再利用範囲を的確に設定できるようになるソフトウェア再利用支援装置、および再利用可否判断の支援を行うソフトウェア再利用支援方法が提供され、それによって、ソフトウェア部品のメンテナンス性を向上させることができる。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照して本発明の実施形態について詳しく説明する。
【実施例１】
【００１９】
図１は第一の実施例に関わるソフトウェア再利用支援装置の機能ブロックの構成例を示した図である。図１に示すように、ソフトウェア再利用支援装置１０１は、その機能ブロックとして、ソフトウェアフレームワーク管理部１０６、製品構成要素管理部１０７、ソフトウェア部品群管理部１０８、ソフトウェア部品庫管理部１０９、ソフトウェア再利用制御部１１０、ネットワークインターフェース１０５などを含んで構成される。
【００２０】
さらに、ソフトウェアフレームワーク管理部１０６は、下位の機能ブロックとして、ソフトウェアフレームワーク入力部１１３、ソフトウェアフレームワーク情報記憶部１１２、ソフトウェアフレームワーク提供入出力入力部１１５などを含む。また、製品構成要素管理部１０７は、下位の機能ブロックとして、製品構成要素入力部１１４、製品構成要素情報記憶部１１６などを含む。また、ソフトウェア部品群管理部１０８は、下位の機能ブロックとして、ソフトウェア部品群使用入出力入力部１１７、ソフトウェア部品群入力部１１８、ソフトウェア部品群情報記憶部１１９などを含む。また、ソフトウェア部品庫管理部１０９は、下位の機能ブロックとして、ソフトウェア部品庫入力部１２１、ソフトウェア部品庫情報記憶部１２２などを含む。また、ソフトウェア再利用制御部１１０は、下位の機能ブロックとして、ソフトウェア再利用提供部１２３、ソフトウェア再利用解析部１２４などを含む。
【００２１】
ソフトウェア再利用支援装置１０１は、そのハードウェアとしては、所定のプログラムを格納するとともに前記の各記憶部に格納される情報を格納する記憶装置と、その記憶装置に格納された所定のプログラムを実行する処理装置である中央処理部（Central Processing Unit、ＣＰＵ）とを少なくとも有したコンピュータによって構成される。このとき、記憶装置は高速の半導体メモリであるランダムアクセスメモリ（Random Access Memory、ＲＡＭ）や大容量の磁気メモリであるハードディスク装置（Hard Disk Drive、ＨＤＤ）などによって構成される。
【００２２】
以上のように、コンピュータによって構成されたソフトウェア再利用支援装置１０１においては、図１に示した機能ブロックの機能は、処理装置が記憶装置に格納されている各機能ブロックに対応する所定のプログラムを実行することによって実現される。従って、ソフトウェア再利用支援装置１０１の各機能ブロックの動作主体は、処理装置である。なお、このような場合、各機能ブロックの動作を記載するとき、その主語は処理装置とすべきであるが、本明細書では、従来の慣用に従って、各機能ブロックの動作を記載するとき、その主語としてその機能ブロック名を用いる。
【００２３】
さらに、図１に示すように、ソフトウェア再利用支援装置１０１は、ネットワークインターフェース１０５によりネットワーク１０２に接続され、さらに、そのネットワーク１０２を介してソフトウェア部品登録者が使用するソフトウェア部品登録者端末１０３と、ソフトウェア部品再利用者が使用するソフトウェア部品再利用者端末１０４と、ソフトウェアフレームワーク登録者が使用するソフトウェアフレームワーク登録者端末１１１等の各種端末に接続されている。このとき、ソフトウェア部品登録者端末１０３と、ソフトウェア部品再利用者端末１０４と、ソフトウェアフレームワーク登録者端末１１１は、通常、上述の支援装置と同様、ネットワークインターフェースと処理装置と記憶装置を備えたコンピュータ（計算機）によって構成されるが、機能的には、ソフトウェア再利用支援装置１０１の表示装置や入出力装置などとして用いられる。
【００２４】
そこで、本実施例では、ソフトウェア再利用支援装置１０１の各ブロックがネットワークインターフェース１０５およびネットワーク１０２を介してソフトウェア部品登録者端末１０３、ソフトウェア部品再利用者端末１０４、またはソフトウェアフレームワーク登録者端末１１１から情報を入力、または取得したり、ネットワークインターフェース１０５およびネットワーク１０２を介してソフトウェア部品登録者端末１０３、ソフトウェア部品再利用者端末１０４、またはソフトウェアフレームワーク登録者端末１１１へ情報を表示したりする場合、単に、ソフトウェア部品登録者端末１０３、ソフトウェア部品再利用者端末１０４、またはソフトウェアフレームワーク登録者端末１１１等の端末から情報を入力、または取得する、あるいは、ソフトウェア部品登録者端末１０３、ソフトウェア部品再利用者端末１０４、またはソフトウェアフレームワーク登録者端末１１１等の端末へ情報を表示する、と記載する。
【００２５】
なお、図１に示した機能ブロックの構成の例では、ソフトウェア再利用支援装置１０１は、１つのコンピュータによって構成されているが、ネットワーク１０２などで相互に接続された複数のコンピュータによって構成されていてもよい。例えば、ソフトウェアフレームワーク管理部１０６、製品構成要素管理部１０７、ソフトウェア部品群管理部１０８、ソフトウェア部品庫管理部１０９、およびソフトウェア再利用制御部１１０のそれぞれが、それぞれ異なるコンピュータ上に実現されてもよい。
【００２６】
また、ソフトウェア部品登録者端末１０３、ソフトウェア部品再利用者端末１０４、ソフトウェアフレームワーク登録者端末１１１がコンピュータによって構成された場合には、ソフトウェア部品群管理部１０８の機能がソフトウェア部品登録者端末１０３上に実現されてもよく、また、ソフトウェア再利用制御部１１０の機能がソフトウェア部品再利用者端末１０４上に実現されてもよく、また、ソフトウェアフレームワーク管理部１０６の機能、および製品構成要素管理部１０７の機能がソフトウェアフレームワーク登録者端末１１１に表現されてもよい。この場合も、全体のシステム構成を再利用支援装置と呼ぶことができることは言うまでもない。
【００２７】
次に、図１を参照して、本実施例のソフトウェア再利用支援装置１０１の各機能ブロックの概要について説明する。本支援装置１０１において、まず製品構成要素情報の作成を行う。
【００２８】
製品構成要素管理部１０７は、ソフトウェアフレームワーク登録者、またはソフトウェア部品登録者が、製品構成要素の登録を行うのを支援する機能ブロックである。
【００２９】
製品構成要素管理部１０７において、製品構成要素入力部１１４は、所定の製品構成要素編集画面をソフトウェアフレームワーク登録者端末１１１、またはソフトウェア部品登録者端末１０３に表示するとともに、その製品構成要素編集画面を介して入力される製品構成要素情報を生成し、その生成した製品構成要素情報を製品構成要素情報記憶部１１６に格納する。
【００３０】
次にソフトウェアフレームワーク情報の入力を行う。この入力に当って、上述した製品構成要素情報を参照する。ソフトウェアフレームワーク管理部１０６は、ソフトウェアフレームワーク登録者が、ソフトウェアフレームワークの登録を行うのを支援する機能ブロックである。
【００３１】
ソフトウェアフレームワーク管理部１０６において、ソフトウェアフレームワーク入力部１１３は、製品構成要素情報記憶部１１６に格納されている製品構成要素を参照し、所定のソフトウェアフレームワーク編集画面をソフトウェアフレームワーク登録者端末１１１に表示するとともに、そのソフトウェアフレームワーク編集画面を介して入力されるソフトウェアフレームワーク情報を生成し、その生成したソフトウェアフレームワーク情報をソフトウェアフレームワーク情報記憶部１１２に格納する。
【００３２】
また、ソフトウェアフレームワーク提供入出力入力部１１５は、所定のソフトウェアフレームワーク入出力編集画面を、ソフトウェアフレームワーク登録者端末１１１に表示するとともに、ソフトウェアフレームワーク入出力編集画面を介して入力されるソフトウェアフレームワーク情報を生成し、その生成したソフトウェアフレームワーク情報をソフトウェアフレームワーク情報記憶部１１２に格納する。
【００３３】
続いて、ソフトウェア部品庫情報の入力を行う。このソフトウェア部品庫情報は、上述したソフトウェア部品庫情報、及び製品構成要素情報を参照して作成される。ソフトウェア部品庫管理部１０９は、ソフトウェア部品登録者が、ソフトウェア部品庫の登録を行うのを支援する機能ブロックである。
【００３４】
ソフトウェア部品庫管理部１０９において、ソフトウェア部品庫入力部１２１は、所定のソフトウェア部品庫編集画面をソフトウェア部品登録者端末１０３に表示するとともに、そのソフトウェア部品庫編集画面を介して入力されるソフトウェア部品庫情報を生成し、その生成したソフトウェア部品庫情報をソフトウェア部品庫情報記憶部１２２に格納する。
【００３５】
更に、ソフトウェア部品群情報を入力する。このソフトウェア部品群情報は、ソフトウェアフレームワーク情報、及びソフトウェア部品庫情報を参照して、作成される。ソフトウェア部品群管理部１０８は、ソフトウェア部品登録者が、ソフトウェア部品群の登録を行うのを支援する機能ブロックである。
【００３６】
ソフトウェア部品群管理部１０８において、ソフトウェア部品群入力部１１８は、ソフトウェア部品庫情報記憶部１２２に格納されているソフトウェア部品庫情報を明示し、所定のソフトウェア部品群編集画面をソフトウェア部品登録者端末１０３に表示するとともに、そのソフトウェア部品群編集画面を介して入力されるソフトウェア部品群情報を生成し、その生成したソフトウェア部品群情報をソフトウェア部品群情報記憶部１１９に格納する。
【００３７】
また、ソフトウェア部品群使用入出力入力部１１７は、製品構成要素情報記憶部１１６に格納されている製品構成要素提供入出力をソフトウェア部品登録者端末１０３に表示するとともに、ソフトウェア部品登録者端末１０３から入力される情報に基づき、ソフトウェア部品群使用入出力情報を生成し、その生成したソフトウェア部品群使用入出力情報をソフトウェア部品群情報記憶部１１９に格納する。
【００３８】
ソフトウェア再利用制御部１１０は、ソフトウェア部品再利用者が、ソフトウェア部品群の再利用を行うのを支援する機能ブロックである。
【００３９】
ソフトウェア再利用制御部１１０において、ソフトウェア再利用解析部１２４は、ソフトウェアフレームワーク情報記憶部１１２に格納されるソフトウェアフレームワーク情報、および製品構成要素情報記憶部１１６に格納される製品構成要素情報、およびソフトウェア部品群情報記憶部１１９に格納されるソフトウェア部品群情報、およびソフトウェア部品庫情報記憶部１２２に格納されるソフトウェア部品庫情報からソフトウェアフレームワークに対する、ソフトウェア部品庫、およびソフトウェア部品群の再利用に関する解析を行う機能ブロックである。
【００４０】
ソフトウェア再利用制御部１１０において、ソフトウェア再利用提供部１２３は、ソフトウェア再利用解析部１２４が解析したソフトウェア部品庫、およびソフトウェア部品群をソフトウェア部品再利用者端末１０４に表示するとともに、ソフトウェア部品再利用者端末１０４から入力される、ソフトウェア再利用提供情報を生成し、その生成したソフトウェア再利用提供情報を元に、ソフトウェア部品群をソフトウェア再利用者に提供する機能ブロックである。
【００４１】
続いて、図２以降の図を参照して、図１に示した実施例１のソフトウェア再利用支援装置１０１の各機能ブロックの詳細な説明を行う。
【００４２】
図２は製品構成要素情報記憶部１１６に格納される製品構成要素情報のデータ構造の例を示した図である。図２に示したように、製品構成要素情報は、それを構成する製品構成要素項目２０１と、製品構成要素２０２などのフィールドを含んで構成される。この製品構成要素項目とは、製品を構成する上でソフトウェアの作成に対して、重要な影響を及ぼす因子である。製品の仕様に合わせソフトウェアの作成を行う際、ソフトウェアに大きな影響を与える製品仕様に対応する。特に、製品がサポートする機能に大きな影響を受ける。また、製品構成要素とは、製品構成要素項目を構成する上で、実際の内容を表す要素である。
【００４３】
例えば、図２の例では製品構成項目２０１として「メディア」「地図」「仕向け」が設定されている。また、この「メディア」にはそれを構成する製品構成要素２０２として「CD」「MD」「DVD」が設定され、また「地図フォーマット」にはそれを構成する製品構成要素２０１として「M1」「M2」「M3」が設定され、「仕向け」にはそれを構成する製品構成要素２０１として「日本」「北米」「欧州」が設定されている。
【００４４】
図３はソフトウェア部品庫情報記憶部１２２に格納されるソフトウェア部品庫情報の例を示した図である。図３に示したように、ソフトウェア部品庫情報は、ソフトウェア部品庫名３０１と、ソフトウェア部品庫関連製品構成要素３０２、登録ソフトウェアフレームワーク３０３などのフィールドを含んで構成される。なおソフトウェア部品庫関連製品構成要素３０２は、製品構成要素情報記憶部１１６に格納される製品構成要素情報などのフィールドを参照し設定される。
【００４５】
例えば、図３の例ではソフトウェア部品庫名３０１として「オーディオ再生」「目的地誘導」「行き先設定」が設定されている。また、この「オーディオ再生」には、それと関連するソフトウェア部品庫関連製品構成要素３０２として「メディア」が設定され、登録ソフトウェアフレームワーク３０３として「ソフトウェアフレームワーク１ Ｖｅｒ１」と「ソフトウェアフレームワーク１ Ｖｅｒ２」が登録され、「目的地誘導」にはソフトウェア部品庫関連製品構成要素３０２として「地図」、「仕向け」が設定され、登録ソフトウェアフレームワーク３０３として「ソフトウェアフレームワーク１ Ｖｅｒ１」が設定されている。ここで、行き先設定に関しては説明を割愛する。
【００４６】
図４は、ソフトウェアフレームワーク入力部１１３、もしくはソフトウェアフレームワーク提供入出力入力部１１５により表示されるソフトウェアフレームワーク情報入力画面の例を示した図である。すなわち、ソフトウェアフレームワーク入力部１１３、もしくはソフトウェアフレームワーク提供入出力入力部１１５は、所定のＧＵＩを有するソフトウェアフレームワーク入力画面であり、ソフトウェアフレームワーク登録者端末１１１にソフトウェアフレームワーク入力画面４０１を表示する。
【００４７】
図４に示すように、ソフトウェアフレームワーク入力画面４０１には、ソフトウェアフレームワーク登録者がソフトウェアフレームワーク情報を登録する画面が表示される。このソフトウェアフレームワーク入力画面には、ソフトウェアフレームワーク名に関する入力を行う、ソフトウェアフレームワーク名入力部４１０が表される。また、製品構成要素項目表示部４０２には製品構成要素情報記憶部１１６に格納されている製品構成要素項目情報が表示される。また、ソフトウェアフレームワーク関連製品構成要素の入力を行う、ソフトウェアフレームワーク関連製品構成要素入力部４０３には登録するソフトウェアフレームワークに対応する、図２に示した製品構成要素が表される。更に、ソフトウェアフレームワークの上位互換の入力を行う、上位互換性表示部４０４には上位互換の結果が、同じく下位互換の入力を行う下位互換性表示部４０５には下位互換の結果が表示される。
【００４８】
また、図４に示すように、ソフトウェアフレームワーク入力画面４０１には、ソフトウェアフレームワーク登録者がソフトウェアフレームワーク提供入出力を登録する画面が表示される。このソフトウェアフレームワーク入力画面４０１には、入出力用製品構成要素項目表示部４０６に製品構成要素情報記憶部１１６に格納されている製品構成要素項目情報が表示される。また、ソフトウェアフレームワーク提供入出力機能表示部４０７には製品構成要素項目毎に、ソフトウェアフレームワークが提供する入出力の「機能」が表され、ソフトウェアフレームワーク提供入出力入力表示部４０８には「入力」が、ソフトウェアフレームワーク提供入出力出力表示部４０９には「出力」が表される。また、提供入出力再利用拡張設定の入力を行う提供入出力再利用拡張設定表示部４１１にはソフトウェア部品群の再利用可能範囲を拡張するための設定が表される。なお、この提供入出力再利用拡張設定とは、ソフトウェアフレームワークが有している、ソフトウェアフレームワーク提供入出力を可能な限り再利用するための、再利用指針である。通常、ソフトウェアの再利用に関しては、条件の完全一致が前提となるが、提供入出力再利用拡張設定は条件の緩い結合での再利用を示すものであり、不完全な一致でも類似性の判定ができるものであれば、登録を可能とする。そのため、類似の判定が可能な項目や、包含関係にある項目などを登録することができる。
【００４９】
例えば、図４の例ではソフトウェアフレームワーク名称として「フレームワーク１」が設定され、「フレームワーク１」が対応するソフトウェアフレームワーク関連製品構成要素して、製品構成要素項目「メディア」に対して「ＣＤ」、製品構成要素項目「地図」に対して「Ｍ１」と「Ｍ２」が、製品構成要素項目「仕向け」に対して「日本」が設定されている。また、この製品構成要素項目「メディア」は、上位互換性は上位互換であることを表示部４０４により表し、かつ下位互換性は下位互換であることを表示部４０５により表す。ここで、製品構成要素項目「地図」「仕向け」の表示部４０４、４０５の該当欄の「−」は何も設定されていないことを表す。
【００５０】
また、図４の例ではソフトウェアフレームワーク名「フレームワーク１」が提供する提供入出力として、製品構成要素項目「メディア」に対して、ソフトウェアフレームワーク提供入出力機能には「音量変更」が表され、ソフトウェアフレームワーク提供入出力入力には「音量値」が表され、ソフトウェアフレームワーク提供入出力出力には「結果」が表される。また、提供入出力再利用拡張設定に「Ａ社提供」が設定されている。なお、ここでは「ＣＤ再生」と、「道路情報取得」と、「近傍ディーラー情報」と、「誘導方法設定」の説明は割愛するが、「音量変更」と同様に考えることができる。
【００５１】
なお、図４におけるソフトウェアフレームワーク入力画面は、ソフトウェアフレームワーク情報記憶部１１２に記憶されるデータ構造の例も同時に示す。
【００５２】
図５は、ソフトウェアフレームワーク入力部１１３におけるソフトウェアフレームワーク入力処理フローの例を示した図である。この処理は、製品構成要素情報記憶部１１６に製品構成要素情報が格納された後に実行される。
【００５３】
図５に示すように、ソフトウェアフレームワーク入力部１１３は、まずソフトウェアフレームワーク登録者端末１１１から設定される、ソフトウェアフレームワーク名称をソフトウェアフレームワーク情報記憶部１１２に設定する（ステップＳ５０２）。ここで、ソフトウェアフレームワーク情報記憶部１１２にすでにソフトウェアフレームワーク情報が登録されており、そのバージョンアップ（世代交代）版である場合は、設定されているソフトウェアフレームワーク情報記憶部１１２からソフトウェアフレームワーク情報を参照する。
【００５４】
次に、ソフトウェアフレームワーク入力部１１３は、製品構成要素情報記憶部１１６に格納された製品構成要素情報を参照して、設定されている全ての製品構成要素項目を抽出し（図２参照）、ソフトウェアフレームワーク入力画面（図４参照）に表示する（ステップＳ５０３）。
【００５５】
次に、ソフトウェアフレームワーク登録者端末１１１から設定される製品構成要素（図２参照）をソフトウェアフレームワーク情報記憶部１１２に設定する（ステップＳ５０４）。ここで、製品構成要素情報は製品構成要素情報記憶部１１６に格納されているものを参照する。
【００５６】
次に、ステップＳ５０４にて設定された製品構成要素と、ステップＳ５０２にて選択された、バージョンアップ（世代交代）前のソフトウェアフレームワーク（以降、前回ソフトウェアフレームワーク情報と呼ぶ）を比較する。ここで、比較した結果、バージョンに変更がない場合はステップＳ５０１へ進む。また、変更がある場合は、前回ソフトウェアフレームワーク情報に対して、上位互換性があるかの確認を行い（ステップＳ５０７）、上位互換性がある場合は上位互換設定を行い（ステップＳ５０８）、ステップＳ５０９へ進む。また、登録するソフトウェアフレームワークに下位互換性があるかの確認を行い（ステップＳ５０９）、下位互換性がある場合は下位互換設定を行い（ステップＳ５１０）、ステップＳ５０１へ進む。ただし、新規のソフトウェアフレームワークを設定する場合は、下位互換性のみ確認を行う。ここでこの結果を、ソフトウェアフレームワーク情報記憶部１１２に設定する。
【００５７】
ステップＳ５０１では、全ての製品構成要素項目に対して処理が終わったかの判定を行い、全ての製品構成要素項目に対して処理が終わっていなければ、ステップＳ５０４に戻って、ステップＳ５０４以降の処理を行う。また、全ての処理が終わっていれば、図５のソフトウェアフレームワーク入力処理を終了する。
【００５８】
図７はソフトウェア部品群情報記憶部１１９に格納されるソフトウェア部品群情報のデータ構造の例を示した図である。図７に示したように、ソフトウェア部品群情報は、それを構成するソフトウェア部品群名７０１と、ソフトウェア部品群使用入出力機能７０２と、ソフトウェア部品群使用入出力入力７０３と、ソフトウェア部品群使用入出力出力７０４と、部品群関連ソフトウェア格納部品庫７０５と、部品群再利用拡張設定７０６などのフィールドを含んで構成される。なお、部品群関連ソフトウェア格納部品庫７０５はソフトウェア部品群情報記憶部１１９に格納される、ソフトウェア部品庫情報（図３参照）を参照する。
【００５９】
例えば、図７では部品群名称表示部７０１として「部品群１」、「部品群２」等が設定されている。この「部品群１」にはそれを構成する使用入出力として、部品群使用入出力機能名称部７０２に「道路情報取得」が設定され、部品群使用入出力入力部７０３に「現在位置」が設定され、部品群使用入出力出力部７０４に「道路情報」が設定されている。また、部品群関連ソフトウェア格納部品庫７０５には「目的地誘導」が設定されている。部品群再利用拡張設定７０６には「Ａ社提供」が設定されている。「部品群２」、「部品群３」と「部品群４」と「部品群５」に関しては、ここでは説明を割愛する。
【００６０】
図６は、ソフトウェア部品群入力部１１８、もしくはソフトウェア部品群使用入出力入力部１１７により表示されるソフトウェア部品群情報入力画面の例を示した図である。すなわち、ソフトウェア部品群入力部１１８、もしくはソフトウェア部品群使用入出力入力部１１７は、所定のＧＵＩを有するソフトウェア部品群情報入力画面であり、ソフトウェア部品登録者端末１０３にソフトウェア部品群入力画面６０１を表示する。
【００６１】
図６に示すように、ソフトウェア部品群入力画面６０１には、ソフトウェア部品登録者がソフトウェア部品群情報を登録する画面が表示される。このソフトウェア部品群入力画面には、ソフトウェア部品群名に関する入力を行う、ソフトウェア部品群名入力部６０２が表される。また、ソフトウェア部品群ファイル名に関する入力を行う、部品群ファイル入力部６０３が表される。
【００６２】
また、部品群関連ソフトウェア部品庫に関する入力を行う、部品群関連ソフトウェア部品庫表示部６０４が表される。関連ソフトウェア部品群格納庫に関する入力にはソフトウェア部品庫情報記憶部１２２に格納されているソフトウェア部品庫情報のソフトウェア部品庫名が参照される。ソフトウェア部品庫関連製品構成要素表示部６０５には、関連ソフトウェア部品群格納庫表示部６０４に格納されたソフトウェア部品庫情報のソフトウェア部品庫関連製品構成要素が表される。
【００６３】
更に、図６に示すように、ソフトウェア部品群入力画面６０１には、ソフトウェア部品登録者がソフトウェア部品群使用入出力を登録する画面が表示される。すなわち、このソフトウェア部品群入力画面６０１にはソフトウェア部品群使用入出力、および部品群再利用拡張設定に関する入力を行う、ソフトウェア部品群使用入出力入力部６０６が表される。なお、ソフトウェア部品群使用入出力は、ソフトウェアフレームワーク提供入出力情報（図４参照）を参照して登録される。
【００６４】
例えば、図６の例ではソフトウェア部品群名として「部品群１」が設定され、ソフトウェア部品群ファイル名には「部品群１」が所有するファイル群「ｘｘｘ.ｃ」と「ｙｙｙ.ｈ」が設定されている。また、部品群関連ソフトウェア部品庫には「部品群１」が関連する「目的地誘導」が設定されている。ソフトウェア部品庫関連製品構成要素には関連ソフトウェア部品群格納庫が関連する「地図」「仕向け」が設定されている（図３参照）。
【００６５】
また、図６の例では部品群名「部品群１」が使用するソフトウェア部品群使用入出力として「道路情報取得」が設定されており、その部品群再利用拡張設定として「Ａ社提供」が設定されている。
【００６６】
図８はソフトウェア再利用解析部１２４におけるソフトウェア再利用解析フローの例を示した図である。この処理は、製品構成要素情報記憶部１１６に製品構成要素情報が格納されており、ソフトウェア部品庫情報記憶部１２２にソフトウェア部品庫関連入力製品構成要素情報が格納されており、ソフトウェア部品群情報記憶部１１９にソフトウェア部品群情報が格納された状態で実施される。
【００６７】
図８に示すように、ソフトウェア再利用解析部１２４は、ソフトウェアフレームワーク登録者端末１１１からソフトウェアフレームワーク情報が入力された場合において（このソフトウェアフレームワーク情報を今回ソフトウェアフレームワーク情報と呼ぶ）、今回ソフトウェアフレームワーク情報と、ソフトウェアフレームワーク情報記憶部１１２に格納されている、図４に示された前回ソフトウェアフレームワーク情報の製品構成要素を比較する。登録済みの製品構成要素を比較して、変化があるものを一時的に記憶装置に格納して所持する（ステップＳ８０１）。また、このときに、製品構成要素における変化点の上位互換設定、および前回ソフトウェアフレームワーク情報の下位互換設定も一時的に記憶装置に格納する。以降、この格納している値をソフトウェアフレームワーク変化点と呼ぶ。
【００６８】
また、ステップＳ８０１では、ソフトウェアフレームワーク登録者端末１１１から設定されるソフトウェアフレームワーク情報とソフトウェアフレームワーク情報記憶部１１２に格納されている前回ソフトウェアフレームワーク情報の提供入出力を比較して機能、入力、出力（図４参照）にそれぞれに関して、変化があるかの確認を行い、変化があるものを一時的に記憶装置に格納して所持する。以降、この格納している値をソフトウェアフレームワーク入出力変化点と呼ぶ。
【００６９】
次に、ソフトウェア部品庫情報記憶部１２２に格納されているソフトウェア部品庫名３０１毎に、ソフトウェア部品庫関連製品構成要素３０２と、ソフトウェアフレームワーク変化点に一致性があるかの確認を行い（ステップＳ８０２）、一つでも一致性があった場合（変更があった場合）には、一致性があった製品構成要素項目の上位互換設定４０４と、前回ソフトウェアフレームワーク情報の下位互換設定４０５を確認（Ｓ８０３）。どちらも設定されていない場合は、ソフトウェア部品庫、およびそのソフトウェア部品庫に関連する部品群（図７参照）は再利用できないと判断し、今回ソフトウェアフレームワーク情報との関連を設定せず、再利用できないことを、一時的に記憶装置に格納し（ステップＳ８０４）、ステップＳ８０９に進む。また、ステップＳ８０３にて前記上位互換設定、もしくは前記下位互換設定が行われていた場合、および、ステップＳ８０２にて一致性がなかった場合は、ステップＳ８０５に進む。
【００７０】
次に、ステップＳ８０２にて確認したソフトウェア部品庫名３０１に関連する、ソフトウェア部品群情報を部品群関連ソフトウェア部品庫７０５から抽出。この抽出したソフトウェア部品群情報のソフトウェア部品群使用入出力機能７０２と、前記ソフトウェアフレームワーク入出力変化点における機能とに一致性があるかの確認を行い（ステップＳ８０５）、一致性があった場合（変更があった場合）には、前記ソフトウェア部品群は再利用できないことを、一時的に記憶装置に格納し（ステップＳ８０７）、ステップＳ８０８へ進む。ステップＳ８０５において一致性がない場合には、ステップＳ８０６へ進み、部品群再利用可能性判定処理を行う（部品群再利用可能性判定処理の詳細フローは図９にて説明する）。
【００７１】
次に、前記ステップＳ８０５にて抽出したソフトウェア部品群が全て処理されたかの確認を行い（ステップＳ８０８）、処理されている場合には、ステップＳ８０９へ進む。また、処理がされていない場合は、ステップＳ８０５からステップＳ８０８を繰り返す。
【００７２】
次に、前記ステップＳ８０２にて抽出したソフトウェアフレームワークが全て処理されたかの確認を行い（ステップＳ８０９）、処理されている場合には、ステップＳ８１０へ進む。また、処理がされていない場合は、ステップＳ８０２からステップＳ８０９を繰り返す。
【００７３】
次に、前記ステップＳ８０４と、ステップＳ８０７と、ステップＳ８０８にて一時記憶装置に格納した値を参照して、ソフトウェア部品庫、およびソフトウェア部品群の再利用可否の判定を行い、ソフトウェアフレームワーク情報記憶部１１２にソフトウェアフレームワーク情報の格納を行う。また、再利用が出来なくなったソフトウェア部品庫の名称と、再利用が出来なくなったソフトウェア部品群名を、ソフトウェアフレームワーク登録者端末１１１に表示する。
【００７４】
本実施例を用いることで、ソフトウェアフレームワークに変更があった場合に、登録済みのソフトウェア部品群の再利用をソフトウェア部品庫単位で確認することが可能である。また、ソフトウェア部品庫の再利用が可能である場合には、さらにソフトウェア部品群単位でのソフトウェア部品群の再利用を確認することが可能となる。ここで、ソフトウェアフレームワーク登録者は作成するソフトウェアフレームワークに関連する製品構成要素と、提供入出力を入力するだけで、登録されているソフトウェア部品群の再利用はシステムが自動的に判定を行い、ソフトウェア部品の混乱を防ぐことが可能となる。
【００７５】
図９は、ソフトウェア再利用解析部１２４におけるソフトウェア再利用可能性判定処理フローの例を示した図である。図９における処理フローは、前記図８のＳ８０６までの処理が行われたあとに実施される。
【００７６】
図９に示すように、ステップＳ８０２にて抽出したソフトウェア部品群情報のソフトウェア部品群使用入出力入力７０３と、前記ソフトウェアフレームワーク入出力変化点における入力とに一致性があるか、または、ソフトウェア部品群情報のソフトウェア部品群使用入出力出力７０４と、前記ソフトウェアフレームワーク入出力変化点における出力に一致性があるかの確認を行い（ステップＳ９０１）、一つでも一致性があった場合（変更がある場合）にはステップＳ９０３へ進む。また、一致性がなかった場合（変更がなかった場合）には、ソフトウェア部品群は再利用が可能であることを、一時記憶装置に格納する（ステップＳ９０２）。
次に、前記ソフトウェアフレームワーク情報の再利用拡張設定４１１、および前記ソフトウェア部品群情報の部品群再利用拡張設定７０６を参照して、部品群の再利用可能性判定を行う（ステップＳ９０３）。ここで、この再利用可能性判定は格納されている値の一致性のみでなく、ネットワーク構造の近傍点なら再利用可能、ツリー構造の子階層ならば再利用可能というような判定も可能とする。例えば、部品群再利用拡張設定７０６においてＡ社が設定されている場合、入力された提供入出力再利用拡張設定１０１１（図１０）が、図１２Ａに示すように、ネットワーク型拡張設定構造１２０２における近傍点であるＢ社とＨ者でも再利用可能性あり、また図１２Ｂに示すように、ツリー型拡張設定構造１２０３において子階層であるＡＡ社、およびＡＡＡ社、ＡＡＢ社、ＡＡＣ社であっても再利用可能性あると判定する。なお、この判定は、図１２Ａ、Ｂで示したような構造から、自動で判定、或いは利用者が判定する。自動判定のためには、予めネットワーク構造で近傍２点に入っているとか、子階層にあるかなどの判定を行う。
【００７７】
ここで、変更の範囲が許容内の場合、ソフトウェア部品群を再利用可能性ありとして一時記憶装置に格納、許容範囲外の場合は、ソフトウェア部品群を再利用できないとして一時記憶装置に格納する。
【００７８】
本実施例を用いることで、ソフトウェア部品再利用者端末１０４から、再利用できるソフトを検索しようとする場合において、ソフトウェア部品群単位での再利用に関して、再利用の可否だけでなく、ソフトウェア部品群をそのまま再利用できなくとも、少ない変更でソフトウェア部品群の再利用が可能という判断を付加することができ、ソフトウェア部品群の再利用性を向上させることが可能となる。
【００７９】
例えば、図１０の例では、ソフトウェアフレームワーク情報を、ソフトウェアフレームワーク入力部１１３、もしくはソフトウェアフレームワーク提供入出力入力部１１５から入力した例を示した図である。ここで、図４で示したソフトウェアフレームワーク情報が前回ソフトウェアフレームワーク情報であり、図２に示す製品構成要素情報と、図３に示すソフトウェア部品庫情報と、図７に示すソフトウェア部品群情報とは設定されているものとする。
【００８０】
前記設定情報に基づき、図８および図９に示した処理フローから、ソフトウェア再利用解析を行う。まず、前記ステップＳ８０１に従い、ソフトウェアフレームワーク情報における、製品構成要素の変化点の取得を行う。ここでは、製品構成要素項目１００２「メディア」における製品構成要素項目１００３の「ＤＶＤ」が追加になり、上位互換性表示部１００４に「上位互換」が設定される。また、「仕向け」は「日本」が削除され、「北米」が追加となっている。これらのソフトウェアフレームワーク変化点として一時的に記憶装置に格納する。
【００８１】
また、製品構成要素項目１００６「メディア」に関するソフトウェアフレームワーク提供入出力機能１００７に「ＣＤ再生」がなくなり、「イコライザー設定」が追加されている。また、製品構成要素項目１００６「地図」に関するソフトウェアフレームワーク提供入出力機能１００７の「道路情報取得」には、ソフトウェアフレームワーク提供入出力入力１００８が「現在位置」から「設定なし」に、「近傍ディーラー情報」には、ソフトウェアフレームワーク提供入出力出力１００８が「設定なし」から「現在位置」に変更になっている。これらをソフトウェアフレームワーク入出力変化点として一時的に記憶装置に格納する。
【００８２】
次に、前記ステップＳ８０２に従い、ソフトウェア部品庫情報記憶部１２２に格納されている、ソフトウェア部品庫名３０１を取得して、ソフトウェア部品庫関連製品構成要素３０２に「メディア」、または「仕向け」が設定されているかを確認する。ここで「行き先設定」に関してはどちらにも該当しないため前記処理Ｓ８０５に進む。「オーディオ再生」に関しては、「メディア」が関連するため、前記処理ステップＳ８０３に進み、上位互換設定、または前回フレームワークの下位互換設定を確認する。ここで、上位互換設定がされているため前記処理Ｓ８０５に進む。また、「目的地誘導」に関しては、「仕向け」が該当し、かつ上位互換設定、および下位互換設定がされていないため、前記処理Ｓ８０４に進みソフトウェア部品庫が再利用できないことを記憶装置に保存して、前記処理Ｓ８０９へ進む。
【００８３】
次に、前記ステップＳ８０５に従い、ソフトウェア部品群情報記憶部１１９に格納されている、ソフトウェア部品群使用機能７０２を参照して、前記ソフトウェアフレームワーク入出力変化点に格納されている変更箇所と比較する。ここでは、「部品群３」は「ＣＤ再生」機能を使用していたが、登録するフレームワークには「ＣＤ再生」がないため、「部品群３」は前記ステップＳ８０７に進み、再利用できないとして、一時記憶装置に保存する。「部品群２」と、「部品群４」と、「部品群５」とはソフトウェア部品群使用機能に変更がないため、前記ステップＳ８０６へ進む。
【００８４】
次に、前記ステップＳ９０１に従い、ソフトウェア部品群情報記憶部１１９に格納されている、ソフトウェア部品群使用入出力入力７０３と、ソフトウェア部品群使用入出力出力７０４を参照して、前記ソフトウェアフレームワーク入出力変化点に格納されている変更箇所と比較する。ここでは、「部品群２」は、入力、出力ともに変更がないため、前記処理ステップＳ９０２に進みソフトウェア部品群は再利用できるとして一時記憶装置に保存する。次に、「部品群４」と、「部品群５」は入力に変更があったため、前記処理ステップＳ９０３へ進む。
【００８５】
次に、提供入出力再利用拡張設定１０１１と、ソフトウェア部品群情報の部品群再利用拡張設定７０６を比較する。ここでは、等価であることが再利用可能性判断として、ソフトウェア部品群の再利用可能性判断を行う。「部品群４」は再利用拡張設定が等価であるため、前記ステップＳ９０４に進み、再利用可能性ありとして一時記憶装置に保存される。また、「部品群５」は再利用拡張設定が等価でないため、前記処理ステップＳ９０５に進み、再利用できないとして一時記憶装置に保存される。
【００８６】
次に、全てのソフトウェア部品群、ソフトウェア格納部品庫に関する処理が終わると、ソフトウェアフレームワーク情報として、前記ソフトウェアフレームワーク情報記憶部１１２に格納する。
【００８７】
これらの処理の結果は、例えば図１１のように、前記ソフトウェアフレームワーク登録者端末１１１に再利用の可否、および可能性が再利用判断結果表示部１１０１に表示される。
【００８８】
この新規に登録されたソフトウェアフレームワークはその構成要素、ならびに提供構成要素が変更になる毎にバージョン管理され、フレームワーク１のVer１、Ver２のように変化する。また、ソフトウェアフレームワーク１とは別のソフトウェアフレームワークを登録する際には、ソフトウェアフレームワーク２のように別のソフトウェアフレームワーク名称を設定し、ソフトウェアフレームワーク１とは別の管理を行うものである。
【図面の簡単な説明】
【００８９】
【図１】実施例１に係るソフトウェア再利用支援装置の機能ブロック構成の例を表した図である。
【図２】実施例１に係る製品構成要素情報のデータ構造の例を表した図である。
【図３】実施例１に係るソフトウェア部品庫情報のデータ構造の例を表した図である。
【図４】実施例１に係るソフトウェアフレームワーク情報入力画面の例を表した図である。
【図５】実施例１に係るソフトウェアフレームワーク入力処理フローの例を表した図である。
【図６】実施例１に係るソフトウェア部品群情報入力画面の例を表した図である。
【図７】実施例１に係るソフトウェア部品群情報のデータ構造の例を表した図である。
【図８】実施例１に係るソフトウェア再利用解析フローの例を表した図である。
【図９】実施例１に係るソフトウェア再利用可能性判定処理フローの例を表した図である。
【図１０】実施例１に係るソフトウェアフレームワーク情報を入力した例を表した図である。
【図１１】実施例１に係るソフトウェア部品庫、およびソフトウェア部品群の再利用判定結果を表した図である。
【図１２Ａ】実施例１に係る拡張設定構造の一例を表した図である。
【図１２Ｂ】実施例１に係る拡張設定構造の他の一例を表した図である。
【符号の説明】
【００９０】
１０１…ソフトウェア再利用支援装置
１０２…ネットワーク
１０３…ソフトウェア部品登録者端末
１０４…ソフトウェア部品再利用者端末
１０５…ネットワークインターフェース
１０６…ソフトウェアフレームワーク管理部
１０７…製品構成要素管理部
１０８…ソフトウェア部品群管理部
１０９…ソフトウェア部品庫管理部
１１０…ソフトウェア再利用制御部
１１１…ソフトウェアフレームワーク登録者端末
１１２…ソフトウェアフレームワーク情報記憶部
１１３…ソフトウェアフレームワーク入力部
１１４…製品構成要素入力部
１１５…ソフトウェアフレームワーク提供入出力入力部
１１６…ソフトウェアフレームワーク情報記憶部
１１７…ソフトウェア部品群使用入出力入力部
１１８…ソフトウェア部品群入力部
１１９…ソフトウェア部品群情報記憶部
１２１…ソフトウェア部品庫入力部
１２２…ソフトウェア部品庫情報記憶部
１２３…ソフトウェア再利用提供部
１２４…ソフトウェア再利用解析部
４０１…ソフトウェアフレームワーク入力画面
６０１…ソフトウェア部品群入力画面
１１０１…再利用判断結果表示画面
１２０１…拡張設定構造。
【図１】
2009252019.tif 000003
【図２】
2009252019.tif 000004
【図３】
2009252019.tif 000005
【図４】
2009252019.tif 000006
【図５】
2009252019.tif 000007
【図６】
2009252019.tif 000008
【図７】
2009252019.tif 000009
【図８】
2009252019.tif 000010
【図９】
2009252019.tif 000011
【図１０】
2009252019.tif 000012
【図１１】
2009252019.tif 000013
【図１２Ａ】
2009252019.tif 000014
【図１２Ｂ】
2009252019.tif 000015