(57)【要約】  ソースコードの構成モジュールの再利用可否を判定するモジュール再利用判定装置を、判定対象のソースコードを取得するソースコード取得部と、前記取得したソースコードに対応して、開発・保守データベースを検索して、構成モジュールの再利用度算出利用項目データを取得するデータ取得部と、前記再利用度算出利用項目データより、対象モジュールのモジュール記憶度、モジュール信頼度を算出し、それらの値より対象モジュールの再利用度を算出するデータ解析部と、前記対象モジュールの再利用度を登録した閾値と比較して、前記対象モジュールの再利用の可否を判定するモジュール再利用判定部と、前記ソースコードの構成モジュールをコールグラフのノードとして表すプログラム図を作成し、及び再利用可能と判定されたモジュールを表すノードを強調表示するプログラム図作成制御部とを備えて構成する。
2016208073.tif 000002
【特許請求の範囲】
【請求項１】
既開発のソースコードの再利用を検討するに際して、該ソースコードの構成モジュール単位に、再利用度の指標を算出して、再利用の可否を判定するモジュール再利用判定装置であって、
構成モジュールの再利用可否を判定する対象のソースコードを取得するソースコード取得部と、
前記ソースコード取得部が取得した前記ソースコードに対応して、前記ソースコードに係る開発・保守データベースを検索して、構成モジュールより選択された対象モジュールの再利用度算出利用項目データを取得するデータ取得部と、
前記データ取得部が取得した前記再利用度算出利用項目データより、対象モジュールのモジュール記憶度、モジュール信頼度を算出し、それらの値より対象モジュールの再利用度を算出するデータ解析部と、
前記データ解析部が算出した前記対象モジュールの再利用度を登録された閾値と比較して、前記対象モジュールの再利用の可否を判定するモジュール再利用判定部と、
前記ソースコードの構成モジュールをコールグラフのノードとして表すプログラム図を作成し、及び前記モジュール再利用判定部が再利用可能と判定したモジュールを表すノードを識別して表示するデータを作成するプログラム図作成制御部と
を備えたことを特徴とするモジュール再利用判定装置。
【請求項２】
請求項１に記載のモジュール再利用判定装置において、
表示装置が、前記ソースコードの構成モジュールをコールグラフのノードとして表すプログラム図を表示して、その中の前記モジュール再利用判定部が再利用可能と判定したモジュールを表すノードを強調表示することを特徴とするモジュール再利用判定装置。
【請求項３】
請求項１に記載のモジュール再利用判定装置において、
前記データ解析部が、前記再利用度算出利用項目データとして、判定対象モジュールが新規作成されてからの経過日数、判定対象モジュールに対して実施したレビュー数、または判定対象モジュールに対して機能追加/修正した回数、の各データを使用して、再利用度算出利用項目データ表に記録する係数を乗算してモジュール記憶度を算出することを特徴とするモジュール再利用判定装置。
【請求項４】
請求項１に記載のモジュール再利用判定装置において、
前記データ解析部が、前記再利用度算出利用項目データとして、判定対象モジュールを呼ぶモジュール数、判定対象モジュールを呼んでいるモジュール群のコミット日の最大差、または判定対象モジュールのテストされた回数、の各データを使用して、再利用度算出利用項目データ表に記録する係数を乗算してモジュール信頼度を算出することを特徴とするモジュール再利用判定装置。
【請求項５】
請求項３、または請求項４に記載のモジュール再利用判定装置において、
前記データ解析部が、ユーザが指定した以下の再利用度算出式を選択して、
(1)式：１つ以上の再利用度算出利用項目データを使用して算出した各モジュール記憶度の和、
(2)式：１つ以上の再利用度算出利用項目データを使用して算出した各モジュール信頼度の和、
(3)式：１つ以上の再利用度算出利用項目データを使用して算出した各モジュール記憶度の和に係数を乗算した値と、１つ以上の再利用度算出利用項目データを使用して算出した各モジュール信頼度の和に係数を乗算した値とを加算、
(4)式：１つ以上の再利用度算出利用項目データを使用して算出した各モジュール記憶度の和と、１つ以上の再利用度算出利用項目データを使用して算出した各モジュール信頼度の和の両方の値を算出、
いずれかの再利用度算出式を使用して、前記判定対象モジュールの再利用度を算出することを特徴とするモジュール再利用判定装置。
【請求項６】
請求項５に記載のモジュール再利用判定装置において、
前記モジュール再利用判定部が、前記データ解析部が選択した前記再利用度算出式が、(1)式、(2)式、または(3)式である場合には、算出された前記判定対象モジュールの再利用度と、前記再利用度算出式に対応付けて記録されている閾値とを比較して、前記再利用度が前記閾値以上である場合に、前記判定対象モジュールは再利用可能であると判定することを特徴とするモジュール再利用判定装置。
【請求項７】
請求項５に記載のモジュール再利用判定装置において、
前記モジュール再利用判定部が、前記データ解析部が選択した前記再利用度算出式が、(4)式である場合には、算出された前記判定対象モジュールの再利用度（各モジュール記憶度の和、各モジュール信頼度の和）と、前記再利用度算出式に対応付けて記録されている閾値（第１の閾値、第２の閾値）とを比較して、前記各モジュール記憶度の和が前記第１の閾値未満であり、及び前記各モジュール信頼度の和が前記第２の閾値以上である場合に、前記判定対象モジュールは再利用可能であると判定することを特徴とするモジュール再利用判定装置。
【請求項８】
既開発のソースコードの再利用を検討するに際して、該ソースコードの構成モジュール単位に、再利用度の指標を算出して、再利用の可否を判定するモジュール再利用判定方法であって、
構成モジュールの再利用可否を判定する対象のソースコードを取得する工程と、
前記取得したソースコードに対応して、前記ソースコードに係る開発・保守データベースを検索して、構成モジュールより選択された対象モジュールの再利用度算出利用項目データを取得する工程と、
前記再利用度算出利用項目データ毎に対応させて登録してある係数を乗算して、対象モジュールのモジュール記憶度、およびモジュール信頼度を算出し、それらの値より対象モジュールの再利用度を、ユーザ指定の再利用度算出式を選択して算出する工程と、
前記算出した対象モジュールの再利用度を、前記再利用度算出式と対応して登録された閾値と比較して、前記対象モジュールの再利用の可否を判定する工程と、
前記ソースコードの構成モジュールをコールグラフのノードとして表すプログラム図を表示部に表示し、及び再利用可能と判定したモジュールを表すノードを強調表示する工程とを有することを特徴とするモジュール再利用判定方法。
【請求項９】
既開発のソースコードの再利用を検討するに際して、コンピュータに、該ソースコードの構成モジュール単位に、再利用度の指標を算出して、再利用の可否を判定させるモジュール再利用判定プログラムであって、
コンピュータに、
構成モジュールの再利用可否を判定する対象のソースコードを取得するソースコード取得手順と、
前記取得したソースコードに対応して、前記ソースコードに係る開発・保守データベースを検索して、構成モジュールより選択された対象モジュールの再利用度算出利用項目データを取得するデータ取得手順と、
前記再利用度算出利用項目データ毎に対応させて登録してある係数を乗算して、対象モジュールのモジュール記憶度、およびモジュール信頼度を算出し、それらの値より対象モジュールの再利用度を、ユーザ指定の再利用度算出式を選択して算出するデータ解析手順と、
前記算出した対象モジュールの再利用度を、前記再利用度算出式と対応して登録された閾値と比較して、前記対象モジュールの再利用の可否を判定するモジュール再利用判定手順と、
前記ソースコードの構成モジュールをコールグラフのノードとして表すプログラム図を表示部に表示し、及び前記モジュール再利用判定手順で再利用可能と判定したモジュールを表すノードを強調表示するプログラム図作成制御手順と、
を実行させることを特徴とするモジュール再利用判定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、既開発のソースコード内のモジュールが再利用可能か否かを判定する、モジュール再利用判定装置、モジュール再利用判定方法、及びモジュール再利用判定プログラムに関する。
【背景技術】
【０００２】
ソフトウェア開発プロジェクトチームが新たなソフトウェアを開発するに際して、そのチームが過去に開発したソフトウェアやソフトウェアの知識は再利用可能な資産として、種々の技法により、新たなソフトウェアを構築するのに役立てられている。【０００３】
既存のソフトウェアシステムに手を加えて、機能改善、機能拡張していく、若しくは既成のプログラムを構成しているプログラム部品を再利用する派生開発を行うか、または新規開発を行うかの選択では、派生開発を行うとした場合の工数見積もりを行い、その結果如何で、派生開発か新規開発かを切り替える事がある。これには、再利用可能モジュール（工数低減に寄与するモジュール）を精度良く把握することが重要である。【０００４】
特許文献１で開示するプログラム部品利用支援システムでは、モジュール(プログラム部品)の利用実績を測定し、利用実績の高いモジュールを、汎用的に使える再利用可能モジュールと判定する方法が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−０６３４９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、利用実績の高いモジュールでも、開発後の時間経過等の要因でプロジェクトチームにとって内容が曖昧になっていたり、忘れている場合、信頼性が低い場合、または他のソフトウェアへの適合性が低い場合は、再利用が難しく、特許文献１の方法では工数見積もりの精度が悪かった。【０００７】
本発明は、新たなソフトウェアを開発するに際して、派生開発の工数見積もり精度の向上を支援する技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のモジュール再利用判定装置は、既開発のソースコードの再利用を検討するに際して、該ソースコードの構成モジュール単位に、再利用度の指標を算出して、再利用の可否を判定するモジュール再利用判定装置において、構成モジュールの再利用可否を判定する対象のソースコードを取得するソースコード取得部と、前記ソースコード取得部が取得した前記ソースコードに対応して、前記ソースコードに係る開発・保守データベースを検索して、構成モジュールより選択された対象モジュールの再利用度算出利用項目データを取得するデータ取得部と、前記データ取得部が取得した前記再利用度算出利用項目データより、対象モジュールのモジュール記憶度、モジュール信頼度を算出し、それらの値より対象モジュールの再利用度を算出するデータ解析部と、前記データ解析部が算出した前記対象モジュールの再利用度を登録された閾値と比較して、前記対象モジュールの再利用の可否を判定するモジュール再利用判定部と、前記ソースコードの構成モジュールをコールグラフのノードとして表すプログラム図を作成し、及び前記モジュール再利用判定部が再利用可能と判定したモジュールを表すノードを識別して表示するデータを作成するプログラム図作成制御部とを備えて構成される。【０００９】
また、本発明の他の特徴としては、前記モジュール再利用判定装置において、前記データ解析部が、前記再利用度算出利用項目データとして、判定対象モジュールが新規作成されてからの経過日数、判定対象モジュールに対して実施したレビュー数、または判定対象モジュールに対して機能追加/修正した回数、の各データを使用して、再利用度算出利用項目データ表に記録する係数を乗算してモジュール記憶度を算出する。【００１０】
また、本発明のその他の特徴としては、前記モジュール再利用判定装置において、前記データ解析部が、前記再利用度算出利用項目データとして、判定対象モジュールを呼ぶモジュール数、判定対象モジュールを呼んでいるモジュール群のコミット日の最大差、または判定対象モジュールのテストされた回数、の各データを使用して、再利用度算出利用項目データ表に記録する係数を乗算してモジュール信頼度を算出する。【００１１】
また、本発明のモジュール再利用判定方法は、既開発のソースコードの再利用を検討するに際して、該ソースコードの構成モジュール単位に、再利用度の指標を算出して、再利用の可否を判定するモジュール再利用判定方法において、構成モジュールの再利用可否を判定する対象のソースコードを取得する工程と、前記取得したソースコードに対応して、前記ソースコードに係る開発・保守データベースを検索して、構成モジュールより選択された対象モジュールの再利用度算出利用項目データを取得する工程と、前記再利用度算出利用項目データ毎に対応させて登録してある係数を乗算して、対象モジュールのモジュール記憶度、およびモジュール信頼度を算出し、それらの値より対象モジュールの再利用度を、ユーザ指定の再利用度算出式を選択して算出する工程と、前記算出した対象モジュールの再利用度を、前記再利用度算出式と対応して登録された閾値と比較して、前記対象モジュールの再利用の可否を判定する工程と、前記ソースコードの構成モジュールをコールグラフのノードとして表すプログラム図を表示部に表示し、及び再利用可能と判定したモジュールを表すノードを強調表示する工程とを有して構成される。【００１２】
また、本発明のモジュール再利用判定プログラムは、既開発のソースコードの再利用を検討するに際して、コンピュータに、該ソースコードの構成モジュール単位に、再利用度の指標を算出して、再利用の可否を判定させるモジュール再利用判定プログラムであって、コンピュータに、構成モジュールの再利用可否を判定する対象のソースコードを取得するソースコード取得手順と、前記取得したソースコードに対応して、前記ソースコードに係る開発・保守データベースを検索して、構成モジュールより選択された対象モジュールの再利用度算出利用項目データを取得するデータ取得手順と、前記再利用度算出利用項目データ毎に対応させて登録してある係数を乗算して、対象モジュールのモジュール記憶度、およびモジュール信頼度を算出し、それらの値より対象モジュールの再利用度を、ユーザ指定の再利用度算出式を選択して算出するデータ解析手順と、前記算出した対象モジュールの再利用度を、前記再利用度算出式と対応して登録された閾値と比較して、前記対象モジュールの再利用の可否を判定するモジュール再利用判定手順と、前記ソースコードの構成モジュールをコールグラフのノードとして表すプログラム図を表示部に表示し、及び前記モジュール再利用判定手順で再利用可能と判定したモジュールを表すノードを強調表示するプログラム図作成制御手順とを実行させることを特徴とするモジュール再利用判定プログラムである。
【発明の効果】
【００１３】
本発明によれば、ソースコード内に含まれるモジュールに関し、該モジュールに対する記憶度や、該モジュールの信頼度を用いて、該モジュールが再利用可能か否かを判定する事で、派生開発工数の見積もり精度向上を支援する事が出来る。
【図面の簡単な説明】
【００１４】
【図１】実施例１に係るモジュール再利用判定装置のハードウェア及びシステム構成の一例を示す図である。
【図２】実施例１に係るモジュール再利用判定装置、情報装置Ａ、及び情報装置Ｂの機能ブロックの一例を示す図である。
【図３】実施例における再利用度算出利用項目データ表の一例を示す図である。
【図４】実施例におけるモジュール別記憶度・信頼度データの一例を示す図である。
【図５】実施例におけるモジュール再利用度算出表の一例を示す図である。
【図６】実施例におけるモジュール別再利用度データの一例を示す図である。
【図７】実施例における、処理内容を記憶している、信頼性が高い、または他のソフトウェアへの適合性が高いために、再利用可能と判定したモジュールを強調表示するプログラム図作成フローチャートの一例を示す図である。
【図８】再利用判定対象モジュールを再利用判定する処理のステップＳ１０５の詳細フローチャートである。
【図９】再利用度算出利用項目係数やモジュール再利用度閾値の変更に応じてプログラム図が変化する一例を示す図である。
【図１０】実施例２における再利用判定対象モジュールを再利用判定する処理のステップＳ１０５の詳細フローチャートである。
【図１１】モジュール再利用度(１)閾値やモジュール再利用度(２)閾値の変更に応じてプログラム図が変化する一例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明によるモジュール再利用判定装置、モジュール再利用判定方法、及びモジュール再利用判定プログラムに関する一実施形態を、図面を用いて詳細に説明する。
【実施例１】
【００１６】
本実施例１では、複数のモジュールを含むモジュール再利用判定対象ソースコードに対して、ソフトウェア開発プロジェクトチームのメンバーが処理内容を記憶している(例えば、判定対象モジュールの作成日からの経過日数が浅いなどのため、メンバーの記憶度が高いと評価される場合)、またはモジュールの信頼性が高いと評価されるために、再利用可能だと判定したモジュールを強調したプログラム図を生成する装置、およびその方法の一例を示す。プログラム図の種類は複数考えられるが、本実施例では、プログラム図としてモジュールの呼出関係図をベースにして記載している。【００１７】
図１は、実施例１に係るモジュール再利用判定装置１００のハードウェア及びシステム構成の一例を示す図である。モジュール再利用判定装置１００のハードウェアとして、中央処理装置１０１、キーボードやマウス等の入力装置１０２、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などにより構成される主記憶装置１０３、ＨＤＤ（Hard Disk Drive）などにより構成される二次記憶装置１０４、ＬＣＤ（Liquid Crystal Display）、有機ＥＬディスプレイなどにより構成される表示装置１０５、及びＮＩＣ（Network Interface Card）などにより構成される通信装置１０７を有する。尚、各装置は、バス１０６によって接続され、各装置間で相互にデータの送受信が可能である。また、モジュール再利用判定装置１００は、例えば、インターネット等の通信ネットワーク１３０を介して、情報処理装置やネットワークストレージといった、ソフトウェア開発プロジェクトに関するデータベースを保存する事が可能な情報装置Ａ１１０、および情報装置Ｂ１２０と接続されている。【００１８】
図２は、実施例１に係るモジュール再利用判定装置１００、情報装置Ａ１１０、及び情報装置Ｂ１２０の機能ブロックの一例を示す図である。【００１９】
演算部２００は、中央処理装置１０１、および主記憶装置１０３により構成され、記憶部３００に記憶されるモジュール再利用判定プログラム３１０を主記憶装置１０３にローディングして、中央処理装置１０１で実行することにより、ソースコード取得部２０１、データ取得部２０２、データ解析部２０３、モジュール再利用判定部２０４、描画指示部２０５、プログラム図作成制御部２０６の各機能を実現する。【００２０】
ソースコード取得部２０１は、ソフトウェア開発プロジェクトなどで既開発のソースコードを構成するモジュールの再利用可否を確認するために、対象となるソースコードをデータベースより取得する。【００２１】
データ取得部２０２は、前記対象となるソースコードが取得されたことに対応して、当該ソースコードが開発されたソフトウェア開発プロジェクトに係わる開発・保守データベースを検索して、ソースコードを構成するモジュールの再利用度を算出するために必要となる再利用度算出利用項目データを取得する。【００２２】
データ解析部２０３は、ユーザが指定して、データベースから検索した再利用度算出利用項目データより、対象モジュールのモジュール記憶度、モジュール信頼度を算出して、それらの値より更に対象モジュールの再利用度を算出する。【００２３】
モジュール再利用判定部２０４は、前記算出した対象モジュールの再利用度を、再利用度算出式と対応させて登録している閾値と比較して、前記対象モジュールの再利用の可否を判定する。【００２４】
描画指示部２０５は、再利用の可否を判定した対象モジュールを、ソースコードのプログラム図の上で、再利用が可と判定された場合には明示するために強調表示処理をする。【００２５】
プログラム図作成制御部２０６は、構成モジュールの再利用度を評価する対象のソースコードを入力して、その構成モジュールをコールグラフのノードとして表示するプログラム図の表示と、再利用可能なモジュールを強調表示する処理全体を制御する。【００２６】
記憶部３００は、二次記憶装置１０４、および主記憶装置１０３により構成され、モジュール再利用判定プログラム３１０、再利用度算出利用項目データ表３２０、モジュール別記憶度・信頼度データ３３０、モジュール再利用度算出表３４０、及びモジュール別再利用度データ３５０の各データを記憶する記憶領域を有する。モジュール再利用判定プログラム、および各データについては以降に説明する。
また、情報装置Ａ１１０、および情報装置Ｂ１２０には、例えば既開発済みのソフトウェア開発プロジェクトＡに関する開発・保守データベース３６０，３８０がそれぞれ構成されている。【００２７】
尚、本実施例においては、モジュール再利用判定装置１００の演算部２００の機能ブロックの全てが中央処理装置１０１によって実行または操作されるソフトウェアプログラムやデータであるものとして説明するが、一部または全ては、ハードウェアとして実現されても良い。また、本来は、これらの機能ブロックに加え、各機能ブロックの起動や管理等を行うOS(Operating System)や制御プログラム等が存在するが、本実施例では、これらの機能ブロックの連携動作を適宜説明することとし、OSや制御プログラムがここで適宜説明された連携動作に必要となる機能ブロックの起動や動作管理を行う事は自明であるので、これらのOSや制御プログラムについては説明及び記載を省略する。【００２８】
情報装置Ａ１１０は、例えば既開発済みのソフトウェア開発プロジェクトＡに関する開発・保守データを格納するデータベース３６０、及びその中にはプロジェクトＡにおいて開発されたソースコードＡ３７０を備えている。例えば、ソースコードＡ３７０は、関数や変数等の部分的プログラムで構成されている。
情報装置Ｂ１２０は、ソフトウェア開発プロジェクトＡに関するその他の開発・保守データベース３８０、及びその中にはプロジェクトＡにおいて開発、記録、または収集されたその他の開発・保守データ３９０を備えている。【００２９】
ソフトウェア開発プロジェクトの開発・保守データベースは、仕様・デザイン・ソースコード・テスト情報・インシデント情報・プロジェクト内のメール交信履歴情報など、ソフトウェア開発、および保守における各工程の様々な情報を一元管理する。リポジトリと呼ばれる。尚、プロジェクトＡに関する開発・保守データベース３６０、及びプロジェクトＡに関するその他の開発・保守データベース３８０は必ずしも上述の場所にある必要はなく、モジュール再利用判定装置１００、情報装置Ａ１１０、及び情報装置Ｂ１２０のいずれに格納されていても良い。【００３０】
図３に、再利用度算出利用項目データ表３２０の一例を示す。再利用度算出利用項目データ表３２０には、判定対象のモジュールの再利用度(図５に算出式を示して後述するが、モジュールの再利用性の良否の程度を判定するために算出する指標)を算出するために利用する項目である、モジュール記憶度（Ａ）３２４、またはモジュール信頼度（Ｂ）３２５という項目名３２１、モジュール再利用度算出利用項目内で分類されるデータを定義するデータ名３２２、及びモジュール再利用度算出利用項目の値を算出する際に使用する、データ毎の係数３２３を格納する。【００３１】
ここで、モジュールの記憶度３２４とは、該モジュールの開発者を含む該モジュールの関係者(開発プロジェクトメンバー)が該モジュールを覚えているか否かの程度を示す指標であり、この値が高い程、モジュールの再利用可能性が高い傾向がある。
また、モジュールの信頼度３２５とは、モジュールが正常に動作するか否かの程度を示す指標であり、モジュールの記憶度と同じく、この値が高い程、モジュールの再利用可能性が高い傾向にある。【００３２】
本実施例では、モジュール記憶度（Ａ）３２４のデータとして、判定対象モジュールが新規作成されてからの経過日数（Ａ１）、判定対象モジュールに対して実施したレビュー数（Ａ２）、及び判定対象モジュールに対して機能追加/修正した回数（Ａ３）を記載している。
また、モジュール信頼度（Ｂ）３２５のデータとして、判定対象モジュールを呼ぶモジュール数（Ｂ１）、判定対象モジュールを呼んでいるモジュール群のコミット日の最大差（Ｂ２）、及び判定対象モジュールのテストされた回数（Ｂ３）を記載している。【００３３】
「判定対象モジュールを呼んでいるモジュール群のコミット日の最大差（Ｂ２）」を説明する。前記プロジェクトＡに関する開発・保守データベース３６０などから、モジュールなどをプロジェクトメンバーのローカル環境にコピーしてきて、該モジュールに修正を加えた場合に、前記データベースへ修正後の差分情報を登録する。この差分情報を登録することをコミットと呼ぶ。判定対象モジュールを呼んでいるモジュール群の各モジュールが修正された最終日(すなわち最新の更新日)は、前記データベース３６０に履歴が記録されているので、判定対象モジュールを呼んでいるモジュール群の各モジュールのコミット日を比較して、最大差（Ｂ２）を求める。コミット日の最大差が大きい世代の異なるモジュールから呼ばれている判定対象モジュールは、コミット日の最大差が大きい程、より広い世代のモジュールからアクセスされていることより信頼度が高いと判定する。【００３４】
図３の再利用度算出利用項目データ３２２毎に、モジュール記憶度（Ａ）３２４やモジュール信頼度（Ｂ）３２５の算出で使用する係数３２３があり、Ａ１は-1/365、Ａ２は3、Ａ３は5、Ｂ１は1、Ｂ２は1/365、Ｂ３は4とデータ表に記載している。これらの係数を利用したモジュール再利用度項目値の算出方法は後述する。【００３５】
図４に、モジュール別記憶度・信頼度データ３３０のデータテーブルの一例を示す。モジュール別記憶度・信頼度データ３３０には、判定対象ソースコード内のモジュール３３１毎に、再利用度算出利用項目データ表３２０に記載してあるモジュール記憶度（Ａ）データ名（Ａ１〜Ａ３）３２２、またはモジュール信頼度（Ｂ）データ名（Ｂ１〜Ｂ３）３２２それぞれに対応する、モジュール記憶度（Ａ）またはモジュール信頼度（Ｂ）の値が算出され、モジュール記憶度（Ａ）の各データ名欄３３２、またはモジュール信頼度（Ｂ）の各データ名欄３３３に値３３４が格納される。【００３６】
値の算出は、再利用度算出利用項目データの値に、再利用度算出利用項目データ表３２０記載のデータ用係数３２３を乗算する事で行う。
例えば、データ名３２２が“判定対象モジュールが新規作成されてからの経過日数（Ａ１）”のモジュール記憶度（Ａ）は、“判定対象モジュールが新規作成されてからの経過日数（Ａ１）”を、関係する開発・保守データ３９０から取得した上で、再利用度算出利用項目データ表３２０に記載してある、再利用度算出利用項目データに対応する係数３２３“-1/365”を乗算して算出する。他のデータ名３２２に対応するモジュール記憶度、またはモジュール信頼度に関しても、同様の方法で算出して、データテーブル３３０に格納する。【００３７】
図５に、モジュール再利用度算出表３４０の一例を示す。モジュール再利用度算出表３４０には、判定対象モジュール毎に算出する、モジュール再利用度(判定対象モジュールの再利用性の良否の程度を判定するために算出する指標)の算出項目名３４１、再利用度算出式３４２、該算出式で使用する係数３４３、及び再利用判定で使用する閾値３４４を格納する。【００３８】
本実施例では、算出項目３４１として、“記憶度”３４５、“信頼度”３４６、“記憶度と信頼度”３４７、及び“適合期待度”３４８の４つを記載している。算出項目“記憶度”３４５のモジュール再利用度は、ユーザが再利用度算出利用項目データ表３２０から使用するとして選択指定したデータ名３２２に関するモジュール記憶度Ａｉの和を取る事で算出する。算出項目“信頼度”３４６のモジュール再利用度は、ユーザが使用するとして選択指定したデータ名３２２に関するモジュール信頼度Ｂｉの和を取る事で算出する。算出項目“記憶度と信頼度”３４７のモジュール再利用度は、ユーザが使用するとして選択指定したデータ名３２２に関するモジュール記憶度Ａｉの和に係数ＣＡ(0.5)を乗算した値と、ユーザが使用するとして選択指定したデータ名３２２に関するモジュール信頼度Ｂｉの和に係数ＣＢ(0.5)を乗算した値の和を取る事で算出する。算出項目“適合期待度”３４８のモジュール再利用度は、二つ存在し、ユーザが使用するとして選択指定したデータ名３２２に関するモジュール記憶度Ａｉの和（数式（１））と、ユーザが使用するとして選択指定したデータ名に関するモジュール信頼度Ｂｉの和（数式（２））である。【００３９】
算出項目“記憶度と信頼度”３４７で使用している、モジュール記憶度（Ａ）とモジュール信頼度（Ｂ）の係数ＣＡ，ＣＢは、本実施例では、0.5、0.5であり、双方合わせて1となる。これらの係数は、モジュールの再利用を考える上で、モジュール記憶度（Ａ）とモジュール信頼度（Ｂ）のどちらをより重視するかを示す。もし、モジュール記憶度（Ａ）が0.5より大きければ、モジュールの信頼性よりも、モジュールを覚えているかを重視し、逆にモジュール信頼度（Ｂ）が0.5より大きければ、モジュールを覚えているかよりも、モジュールの信頼性を重視している事を意味する。本実施例では記憶度と信頼度を同等の重要度で扱うものと仮定しているため、モジュール記憶度（Ａ）とモジュール信頼度（Ｂ）の係数を同じ値としている。【００４０】
算出項目“記憶度”３４５の閾値は3、算出項目“信頼度”３４６の閾値は10、算出項目“記憶度と信頼度”３４７の閾値は20、算出項目“適合期待度”３４８の閾値は、ユーザが使用するとして選択指定したデータ名３２２に関するモジュール記憶度の和（数式（１））の方が2、ユーザが使用するとして選択指定したデータ名３２２に関するモジュール信頼度の和（数式（２））の方が 3と記載している。後述するが、これらは再利用判定の際に用いる値である。尚、本実施例１では、算出項目“記憶度と信頼度”３４７の式でモジュール再利用度を算出するものとする。【００４１】
図６のデータテーブルに、モジュール別再利用度データ３５０の一例を示す。モジュール別再利用度データ記憶領域３５０には、モジュール再利用度算出表３４０に記載しているモジュール再利用度の算出式３４２を使用して、モジュール３５１毎に計算した、モジュール再利用度３５２の算出値を格納する。【００４２】
図７に、モジュール再利用判定装置１００で、判定対象ソースコードＡ３７０を構成するモジュールの中で、各モジュールが再利用可能か否かをモジュール別再利用度データに基づいて判定して、判定対象ソースコードＡのプログラム図上で再利用可能なモジュールを強調表示するプログラム図作成処理のフローチャートを示す。
本実施例のプログラム図作成処理は、ソフトウェア開発プロジェクトチームのメンバーが処理内容を記憶していると評価する評価指標、またはモジュールの信頼性が高いと評価する評価指標に基づいて、対象モジュールが再利用可能か否かを判定する。【００４３】
ステップＳ１００において、プログラム図作成制御部２０６が起動されて、プログラム図の作成処理を開始する。本実施例で実行されるプログラム図の作成処理は、可視化対象ソースコードを入力して、そのソースコードを構成するモジュールを例えばコールグラフのノードとして表示し、ノード間のエッジはモジュール呼出関係図などを参照して表示する公知の技術によりプログラム図(図９、図１１を参照)を作成する。このプログラム図の上で、再利用が可能と判定されるモジュールを表すノードを協調表示する。【００４４】
ステップＳ１０１において、入力装置１０２を用いて、例えば既開発済みのソフトウェア開発プロジェクトＡに関する開発・保守データベース３６０の中から可視化するソースコードをユーザが指定する。本実施例では可視化対象ソースコードとしてソースコードＡ３７０を指定したものとする。ユーザが可視化対象ソースコードを指定すると、ソースコード取得部２０１が、通信装置１０７を介して、プロジェクトＡに関する開発・保守データベース３６０の中から、可視化対象であるソースコードＡ３７０を取得する。もし開発・保守データベース３６０が巨大で、ソースコードＡ３７０の検索に時間が掛かりそうな場合には、ユーザ指示により、予め、評価対象として使いそうなファイルを、例えばモジュール再利用判定装置１００といった高速な検索が可能となる場所へ移動またはコピーしておく事も考えられる。【００４５】
また、同時に、データ取得部２０２が、通信装置１０７を介して、可視化対象であるソースコードＡ３７０に関する開発・保守データを取得する。該当する開発・保守データは、ソースコードＡ３７０が格納されている開発・保守データベース３６０に存在するデータに限らず、その他の情報装置、例えば情報装置Ｂ１２０に構成されているその他の開発・保守データベース３８０に格納されている例えばメールの交信履歴等のその他の開発・保守データ３９０を利用する事も考えられる。ソースコードの場合と同じく、この後の処理高速化に向け、ユーザ指示により、予め、使いそうなファイルを、例えばモジュール再利用判定装置１００といった高速な検索が可能となる場所へ移動またはコピーしておく事も考えられる。【００４６】
ステップＳ１０２において、入力装置１０２を用いて、モジュールの再利用判定を行うために用いる、再利用度算出利用項目データ名３２２、及び再利用度算出項目３４１をユーザが指定する。本実施例では、再利用度算出利用項目データ名として、モジュール記憶度（Ａ）項目３２４の、判定対象モジュールが新規作成されてからの経過日数（Ａ１）、判定対象モジュールに対して実施したレビュー数（Ａ２）、及び判定対象モジュールに対して機能追加/修正した回数（Ａ３）を、モジュール信頼度（Ｂ）項目３２５の、判定対象モジュールを呼ぶモジュール数（Ｂ１）、判定対象モジュールを呼んでいるモジュール群のコミット日の最大差（Ｂ２）、及び判定対象モジュールのテストされた回数（Ｂ３）をユーザが指定したものとする。また、利用する再利用度算出項目３４１として、モジュール再利用度算出表３４０記載の“記憶度と信頼度”３４７をユーザが指定したものとする。【００４７】
ステップＳ１０３において、プログラム図作成制御部２０６が、ステップＳ１０１で取得したソースコードＡ３７０に含まれる、未だ再利用判定を行っていないモジュールの内より、一つのモジュールを再利用判定対象モジュールとして取得する。【００４８】
ステップＳ１０４において、ステップＳ１０３で取得したモジュールに関し、データ取得部２０２が、ステップＳ１０１で取得したソースコードＡ３７０に関する開発・保守データから、ステップＳ１０２でユーザが指定した再利用度算出利用項目データ名３２２に関するデータを取得する。【００４９】
ステップＳ１０５において、データ解析部２０３が、ステップＳ１０４で取得したデータを解析して、再利用判定対象モジュールの再利用度を算出した上で、モジュール再利用判定部２０４が、該判定対象モジュールは再利用可能か否かを判定する。本判定では、再利用度算出利用項目データ表３２０に記載されたデータ名３２２のうち、“判定対象モジュールが新規作成されてからの経過日数”、“判定対象モジュールに対して実施したレビュー数”、“判定対象モジュールに対して機能追加/修正した回数”、“判定対象モジュールを呼ぶモジュール数”、“判定対象モジュールを呼んでいるモジュール群のコミット日の最大差”、及び“判定対象モジュールのテストされた回数”を使用するものと想定している。判定が真であれば、ステップＳ１０６へ進む。判定が偽であれば、ステップＳ１０７へ進む。尚、本処理内容は後に詳述する。【００５０】
ステップＳ１０６において、描画指示部２０５が、該判定対象モジュールを再利用可能なモジュールとしてプログラム図上で強調表示する。【００５１】
ステップＳ１０７において、描画指示部２０５が、該判定対象モジュールを再利用可能でないモジュールとしてプログラム図上で強調表示しない。【００５２】
ステップＳ１０８において、プログラム図作成制御部２０６が、ステップＳ１０１で取得したソースコードＡ３７０に未だ再利用判定を行っていないモジュールがあるか否かを判定する。再利用判定を行っていないモジュールがある場合は、ステップＳ１０３へ進む。再利用判定を行っていないモジュールが無い場合は、ステップＳ１０９へ進む。【００５３】
ステップＳ１０９において、プログラム図作成制御部２０６が、プログラム図作成処理を終了する。【００５４】
図８に、再利用判定対象モジュールを再利用判定する処理の一例であるステップＳ１０５の詳細フローチャートを示す。ステップＳ１０２にて、再利用度算出利用項目データ名３２２として、モジュール記憶度３２４に関するデータである、“判定対象モジュールが新規作成されてからの経過日数”、“判定対象モジュールに対して実施したレビュー数”、及び“判定対象モジュールに対して機能追加/修正した回数”を、また、モジュール信頼度３２５に関するデータである、“判定対象モジュールを呼ぶモジュール数”、“判定対象モジュールを呼んでいるモジュール群のコミット日の最大差”、及び“判定対象モジュールのテストされた回数”をユーザが指定したことを想定している。また、利用する再利用度算出項目３４１として、モジュール再利用度算出表３４０記載の“記憶度と信頼度”３４７をユーザが指定したことを想定している。【００５５】
ステップＳ２０１において、データ解析部２０３が、ステップＳ１０２でユーザが指定した再利用度算出利用項目データ名３２２に従って、判定対象モジュールのモジュール記憶度３３２、またはモジュール信頼度３３３の値を算出して、算出結果をモジュール別記憶度・信頼度データ３３０へ格納する。この際、ユーザが指定した再利用度算出利用項目データ名３２２に関するモジュール記憶度またはモジュール信頼度の値だけを算出するのではなく、再利用度算出利用項目データ表３２０に記載の全ての再利用度算出利用項目データ名３２２に関する値を算出しておく事も考えられる。値を算出してモジュール別記憶度・信頼度データ３３０へ格納したものは、次回、もし同じ値を計算する際には本処理のスキップが可能であり、処理の高速化を図る事が出来る。【００５６】
モジュール記憶度またはモジュール信頼度の値の算出は、再利用度算出利用項目データ名３２２に対応するデータ値に、再利用度算出利用項目データ表３２０記載の係数３２３を乗算する事で行う。例えば、“判定対象モジュールが新規作成されてからの経過日数（Ａ１）”に関するモジュール記憶度は、判定対象のモジュールが新規作成されてからの経過日数を、開発・保守データから取得し、その値に対し、再利用度算出利用項目データ表３２０記載の係数３２３“-1/365”を乗算する事で算出する。【００５７】
ステップＳ２０２において、データ解析部２０３が、ステップＳ１０２でユーザが指定した再利用度算出利用項目データ名３２２に従って算出して、モジュール別記憶度・信頼度データ３３０に格納されている、モジュール記憶度、またはモジュール信頼度のデータ値と、モジュール再利用度算出表３４０に記載された再利用度算出式３４２を利用して、モジュール再利用度の算出を行い、算出結果をモジュール別再利用度データ３５０へ格納する。本実施例では、算出項目“記憶度と信頼度”３４７の算出式利用をユーザが指定した事を想定している。ユーザが指定したモジュール記憶度の和に係数0.5を乗算した値と、ユーザが指定したモジュール信頼度の和に係数0.5を乗算した値の和を取る事で算出する。【００５８】
ステップＳ２０３において、モジュール再利用判定部２０４が、モジュール別再利用度データ３５０に格納されている、判定対象モジュールの再利用度３５２と、モジュール再利用度算出表３４０に格納されている閾値３４４、とを比較して、前者の値が後者の値以上であれば再利用可能と判定して、ステップＳ１０６へ進む。また、前者の値が後者の値未満であれば再利用不可と判定して、ステップＳ１０７へ進む。【００５９】
本実施例の効果として、上述した特許文献１に存在した課題、すなわち利用実績が高いモジュールでも、時間経過等の要因で内容が曖昧になっている（忘れている）場合や、信頼性が低い場合は、再利用が難しく、工数見積もりの精度が悪かったという課題を解決する。つまり、プログラム図形式で可視化対象ソースコードに関係のある開発・保守情報を利用して、モジュールの記憶度や信頼度を算出し、これらをモジュールの再利用度の指標として利用する事で、再利用判定対象モジュールが再利用可能か否かを自動で判定する。該判定結果を用いて、ソフトウェア開発プロジェクトチームのメンバーが処理内容を記憶している、または信頼性が高いために再利用可能と判定したモジュールを強調したプログラム図を構築・表示する事で、工数見積もり精度の向上を支援する事が出来る。【００６０】
本実施例のモジュール再利用判定装置１００が、プログラム図作成制御部２０６によって作成して、表示装置１０５に表示するプログラム図においては、再利用度算出利用項目データ表３２０の係数３２３、またはモジュール再利用度算出表３４０の閾値３４４の各登録値を変更すれば、再利用可能として強調されるモジュールが変わる。本プログラム図を利用する目的や意図に応じて、どの程度を再利用可能モジュールとするか、また再利用可能モジュールとして信頼性を重視するか、記憶している事を重視するか、の考え方は異なる。そのため、例えば、再利用度算出利用項目データ表３２０の係数３２３、またはモジュール再利用度算出表３４０の閾値３４４の各登録値の代わりに、ユーザが指定した係数３２３、および閾値３４４の各値をプログラム図を表示する画面上で可変として、それらの値の変化に追随させてプログラム図を変化させて、ユーザが意図する方向にプログラム図を変えられる機能を実現する。【００６１】
図９(Ａ),(Ｂ)に示すプログラム図の下部に、再利用度算出利用項目係数３２３、モジュール再利用度閾値３４４を変化させるスライダを表示して、プログラム図を変化させるユーザ入力を受付ける動作モードを、プログラム図作成制御部２０６にユーザが指定入力して起動する。プログラム図作成制御部２０６は、１回のプログラム図作成処理を終了すると、直ちに次のプログラム図作成処理を起動して、ステップＳ１０２において、ユーザがスライダを動かして、新たな再利用度算出利用項目係数３２３、および／または、モジュール再利用度閾値３４４の値を入力するのを待機する。ユーザが、当初、スライダによって可変とする再利用度算出利用項目データ名３２２、及びモジュール再利用度算出項目３４１を指定入力することによって該当する再利用度算出利用項目係数３２３、及びモジュール再利用度閾値３４４の各スライダが作成されるので、以後は、ユーザがスライダを操作して、係数３２３、及び閾値３４４を変えるごとに、変えられた係数３２３、及び閾値３４４を反映して、プログラム図作成処理のステップＳ１０３以降が実行されて、変更後のプログラム図が描画される。【００６２】
図９(Ａ),(Ｂ)で示すプログラム図の中で、灰色のノードは再利用可能だと判定されたモジュールを示している。
図９(Ａ)のように、モジュール再利用度閾値が10の時には６つのモジュールが再利用可能として強調表示されているが、モジュール再利用度閾値スライダを操作して、80へと変更した場合には、図９(Ｂ)のように２つのモジュールだけが再利用可能として強調表示されている。ここで、モジュール再利用度閾値は、ユーザが指定したモジュール再利用度算出項目３４１に対応する再利用度算出式によって算出される全てのモジュールの再利用度のうちの最大値を100として正規化した事を想定している。【００６３】
尚、本実施例では、モジュール再利用度を、モジュールを強調表示するか否かで利用する事としたが、上記に限らず、様々な利用法が考えられる。
【実施例２】
【００６４】
本実施例２では、複数のモジュールを含む可視化対象ソースコードに対して、他のソフトウェアへの適合性が高い、言い換えると枯れているために、再利用可能だと判定したモジュールを強調したプログラム図を生成する方法の一例を記す。尚、実施例１と大半が同じため、差分に焦点を当てて記述する。【００６５】
図１０に、本実施例２において、再利用判定対象モジュールを再利用判定する際の一例であるステップＳ１０５の詳細フローチャートを示す。ステップＳ１０２にて、再利用算出利用項目データ名３２２として、モジュール記憶度３２４に関するデータである、“判定対象モジュールが新規作成されてからの経過日数”、“判定対象モジュールに対して実施したレビュー数”、及び“判定対象モジュールに対して機能追加/修正した回数”を、またモジュール信頼度３２５に関するデータである、“判定対象モジュールを呼ぶモジュール数”、“判定対象モジュールを呼んでいるモジュール群のコミット日の最大差”、及び“判定対象モジュールのテストされた回数”をユーザが指定した事を想定している。更に、ステップＳ１０２にて、ユーザが、再利用度算出項目３４１としてモジュール再利用度算出表３４０に記載されている“適合期待度”３４８を指定したものとする。“適合期待度”３４８を利用する場合には、ステップＳ１０５として、図８の処理の代わりに、図１０の本処理が実行される。【００６６】
ステップＳ３０１の処理は、ステップＳ２０１の処理と同じため、説明を省略する。【００６７】
ステップＳ３０２において、データ解析部２０３が、ステップＳ１０２でユーザが指定した再利用度算出利用項目データ名３２２に従って算出して、モジュール別記憶度・信頼度データ３３０に格納されている、モジュール記憶度、またはモジュール信頼度のデータ値と、モジュール再利用度算出表３４０に記載された再利用度算出式３４２を利用して、モジュール再利用度の算出を行い、算出結果をモジュール別再利用度データ３５０へ格納する。本実施例では、算出項目“適合期待度”３４８の算出式利用をユーザが指定した事を想定している。ユーザが使用するとして選択指定したデータ名３２２に関するモジュール記憶度Ａｉの和（数式（１））と、ユーザが選択使用するとして指定したデータ名３２２に関するモジュール信頼度Ｂｉの和（数式（２））で算出する。【００６８】
ステップＳ３０３において、モジュール再利用判定部２０４が、モジュール別再利用度データ３５０に格納されている、判定対象モジュールの“適合期待度”再利用度（１）と、モジュール再利用度算出表３４０に格納されている閾値３４４、とを比較し、前者の値が後者の値未満であれば、ステップＳ３０４へ進む。また、前者の値が後者の値以上であれば、ステップＳ１０７へ進む。【００６９】
ステップＳ３０４において、モジュール再利用判定部２０４が、モジュール別再利用度データ３５０に格納されている、判定対象モジュールの“適合期待度”再利用度（２）と、モジュール再利用度算出表３４０に格納されている閾値３４４、とを比較し、前者の値が後者の値以上であれば、ステップＳ１０６へ進む。また、前者の値が後者の値未満であれば、ステップＳ１０７へ進む。【００７０】
つまり、他のソフトウェアへの適合性が高く汎用的に使えるモジュールとして、判定対象モジュールの処理内容は曖昧または忘れているが、信頼度は高いモジュールを抽出する。このようにして抽出したモジュールは、処理内容が曖昧または忘れていても、利用価値が高いという事で、モジュールとして汎用性が高い傾向にある。【００７１】
本実施例の効果として、上述した特許文献１に存在した課題、すなわち利用実績が高いモジュールでも、他のソフトウェアへの適合性が低い場合は、再利用が難しく、工数見積もりの精度が悪かったという課題を解決する。つまり、プログラム図形式で可視化対象ソースコードに関係のある開発・保守情報を利用して、モジュールの記憶度や信頼度を算出し、これらをモジュールの再利用度の指標として利用する事で、再利用判定対象モジュールが再利用可能か否かを自動で判定する。該判定結果を用いて、他のソフトウェアへの適合性が高い、言い換えると枯れているために再利用可能と判定したモジュールを強調したプログラム図を構築・表示する事で、工数見積もり精度の向上を支援する事が出来る。【００７２】
本実施例のモジュール再利用判定装置１００が、プログラム図作成制御部２０６によって作成して、表示装置１０５に表示するプログラム図は、モジュール再利用度閾値（１）、またはモジュール再利用度閾値（２）を変更すれば、再利用可能として強調されるモジュールが変わる。本プログラム図を利用する目的や意図に応じて、どの程度を再利用可能モジュールとするか等の考え方は異なるため、例えば、モジュール再利用度算出表３４０に記載されたモジュール再利用度閾値（１）３４４やモジュール再利用度閾値（２）３４４の代わりに、図１１(Ａ),(Ｂ)で示すように、モジュール再利用度閾値（１）スライダ、またはモジュール再利用度閾値（２）スライダを調整してその値を利用する事で、目的や意図に応じて、プログラム図を適宜作り替える事も考えられる。【００７３】
図１１(Ａ),(Ｂ)で示すプログラム図の中で、灰色のノードは再利用可能だと判定されたモジュールを示している。図１１(Ａ)のように、モジュール再利用度閾値（２）が10の時には６つのモジュールが再利用可能として強調表示されているが、モジュール再利用度閾値（２）スライダを操作して、80へと変更した場合には、図１１(Ｂ)のように２つのモジュールだけが再利用可能として強調表示される。ここで、モジュール再利用度閾値（１）またはモジュール再利用度閾値（２）は、全てのモジュールの再利用度（１）３５３またはモジュール再利用度（２）３５４のうちの最大値を100として、それぞれ正規化した事を想定している。【００７４】
尚、本実施例では、モジュール再利用度を、モジュールを強調表示するか否かで利用する事としたが、上記に限らず、様々な利用法が考えられる。
【符号の説明】
【００７５】
１００  モジュール再利用判定装置
１０１  中央処理装置
１０２  入力装置
１０３  主記憶装置
１０４  二次記憶装置
１０５  表示装置
１０６  バス
１０７  通信装置
１１０  情報装置Ａ
１２０  情報装置Ｂ
１３０  通信ネットワーク
２００  演算部
２０１  ソースコード取得部
２０２  データ取得部
２０３  データ解析部
２０４  モジュール再利用判定部
２０５  描画指示部
２０６  プログラム図作成制御部
３００  記憶部
３１０  モジュール再利用判定プログラム記憶領域
３２０  再利用度算出利用項目データ表記憶領域
３２１  項目名欄
３２２  データ名欄
３２３  係数欄
３２４  モジュール記憶度（Ａ）
３２５  モジュール信頼度（Ｂ）
３３０  モジュール別記憶度・信頼度データ記憶領域
３３１  モジュール名欄
３３２  モジュール記憶度（Ａ）の各データ名欄
３３３  モジュール信頼度（Ｂ）の各データ名欄
３３４  モジュール記憶度（Ａ）またはモジュール信頼度（Ｂ）の値
３４０  モジュール再利用度算出表記憶領域
３４１  算出項目名欄
３４２  再利用度算出式欄
３４３  係数欄
３４４  閾値欄
３４５  算出項目“記憶度”
３４６  算出項目“信頼度”
３４７  算出項目“記憶度と信頼度”
３４８  算出項目“適合期待度”
３５０  モジュール別再利用度データ記憶領域
３５１  モジュール名欄
３５２  再利用度欄
３５３  モジュール再利用度（１）欄
３５４  モジュール再利用度（２）欄
３６０  プロジェクトＡに関する開発・保守データベース
３７０  ソースコードＡ
３８０  プロジェクトＡに関するその他の開発・保守データベース
３９０  プロジェクトＡに関するその他の開発・保守データ
【図１】
2016208073.tif 000003
【図２】
2016208073.tif 000004
【図３】
2016208073.tif 000005
【図４】
2016208073.tif 000006
【図５】
2016208073.tif 000007
【図６】
2016208073.tif 000008
【図７】
2016208073.tif 000009
【図８】
2016208073.tif 000010
【図９】
2016208073.tif 000011
【図１０】
2016208073.tif 000012
【図１１】
2016208073.tif 000013
【国際調査報告】
2016208073.tif 000014
2016208073.tif 000015
2016208073.tif 000016
2016208073.tif 000017