(57)【要約】【課題】ソフトウェア資産をリポジトリで管理する場合にキーワードを用いた情報管理の精度を高めること。【解決手段】情報保持部８は、象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクで設定した資産管理マトリクスを保持する。情報探索部６１は、対象情報ノード（例えば更新対象となった情報ノード）から関係リンクで辿ることができる前記情報ノードである到達情報ノードを抽出する。キーワード抽出部６２は、抽出した到達情報ノードに付与されたキーワードであって、対象情報ノードに付与されていないキーワードを候補キーワードとして抽出する。【選択図】図４
2015109016.tif 000002
【特許請求の範囲】
【請求項１】
抽象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクで設定した資産管理マトリクスを保持する情報保持部と、
対象情報ノードから前記関係リンクで辿ることができる前記情報ノードである到達情報ノードを抽出する情報探索部と、
抽出した前記到達情報ノードに付与されたキーワードであって、前記対象情報ノードに付与されていないキーワードを候補キーワードとして抽出するキーワード抽出部と、
を備える、ソフトウェア資産管理装置。
【請求項２】
前記情報探索部は、抽出した前記到達情報ノードに対し、前記対象情報ノードから前記到達情報ノード各々に到達するまでに辿った前記関係リンクに付された重み値を累算した参照優先度を算出し、
前記キーワード抽出部は、抽出した前記到達情報ノードに対し、前記対象情報ノードに関連付けられたキーワードと前記到達情報ノード各々に付されたキーワードの一致数を示す関係類似度を算出する、請求項１に記載のソフトウェア資産管理装置。
【請求項３】
前記参照優先度と前記関係類似度の少なくとも一方に基づいて、前記候補キーワードに順位付けを行って出力するキーワード整列部を更に備える、
ことを特徴とする請求項２に記載のソフトウェア資産管理装置。
【請求項４】
前記キーワード整列部は、前記参照優先度が小さくなるにつれて上位の順位となるように順位付けを行うことを特徴とする、請求項３に記載のソフトウェア資産管理装置。
【請求項５】
前記キーワード整列部は、前記関係類似度が大きくなるにつれて上位の順位となるように順位付けを行うことを特徴とする、請求項３に記載のソフトウェア資産管理装置。
【請求項６】
前記関係リンクは、同じ内容を別の視点や目的で表現することを示す同格関係、下位概念であることを示す下位関係、異なる種類でありながら関係があることを示す関連関係、ある情報ノードを詳細化または抽象化したことを示す詳細化／具体化関係、を含む種別のいずれかと関連付けられており、
前記重み値は、前記同格関係、前記下位関係、前記関連関係、前記詳細化／具体化関係の順で大きくなる、
ことを特徴とする請求項２に記載のソフトウェア資産管理装置。
【請求項７】
前記キーワード抽出部は、前記対象情報ノードが前記資産管理マトリクスへの新規追加ノードである場合、抽出した前記到達情報ノードに対して設定する前記関係類似度を全て０に設定する、
ことを特徴とする請求項２に記載のソフトウェア資産管理装置。
【請求項８】
前記対象情報ノードは、更新処理の対象となった前記情報ノードであることを特徴とする請求項１〜７のいずれか１項に記載のソフトウェア資産管理装置。
【請求項９】
抽象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクで設定した資産管理マトリクスを保持するリポジトリ、に対する管理方法であって、
対象情報ノードから前記関係リンクで辿ることができる前記情報ノードである到達情報ノードを抽出する情報探索ステップと、
抽出した前記到達情報ノードに付与されたキーワードであって、前記対象情報ノードに付与されていないキーワードを候補キーワードとして抽出するキーワード抽出ステップと、
を備える、ソフトウェア資産管理方法。
【請求項１０】
請求項９に記載の方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はソフトウェア資産管理装置、ソフトウェア資産管理方法、及びソフトウェア資産管理プログラムに関する。
【背景技術】
【０００２】
企業等の組織が長期にわたりＩＴシステムを運用する場合、企業活動の目的に合わせてシステム拡張や改造を行うことが一般的である。この結果、新旧の様々なソフトウェアやハードウェアが混在する状況が生じ得る。このような状況により、ＩＴシステムの把握が困難となり、その結果としてシステム拡張等が困難になってきている。システム拡張を行うことが困難になってきていることにより、ビジネスの変化に合わせた最適なシステム変更を迅速に行うことができない場面が生じ得る。これにより、ビジネスチャンスを逃すという問題にもつながってきている。
【０００３】
上述のＩＴシステムの拡張の困難化の問題は、詳細には以下の主な３つの問題に起因して生じているものと考えられる。
【０００４】
第１にＩＴシステム内において実装されている業務処理（業務プロセス）とＩＴシステムの実装の関係が必ずしも明文化（文書化）されているとは限らない。すなわち業務プロセスとＩＴシステム実装との関係が暗黙知として形成されている場合が多い。そのためシステムリニューアルを行う際に、設計者が修正範囲を特定するために要する時間が非常に長くなってしまうという問題がある。
【０００５】
第２にＩＴシステムの設計仕様（設計書）が実際のＩＴシステムの実装と合致していない場合や設計仕様自体が存在しない場合がある。このような場合、設計者（または開発者）はＩＴシステムを構成するプログラムソースコードを解読して影響範囲等を特定する必要があり、多大な時間と費用がかかるという問題があった。
【０００６】
第３にＩＴシステムのリニューアルに成功した場合であっても、その過程で得られた文書等が適切に管理されない場合がある。詳細にはＩＴシステムリニューアルの際に得られた際に得られた文書等が再利用（またはメンテナンス可能）な状態で管理されない場合があった。これにより、再びＩＴシステムのリニューアルを行うことが困難であるという問題があった。
【０００７】
上記の種々の問題を鑑みて、ソフトウェア資産を管理するツール（例えば開発環境ツールやＢＰＭ（ビジネスプロセスマネージメント）ツール）が使用されている。しかし、これらのツールはソースコードのみを管理対象としている場合や特定利用者向けの文書ファイルのみを管理していることが一般的である。すなわち、ＩＴシステム全体のソフトウェア資産（設計仕様書、ソースプログラム、テストスクリプト等）を統合的に扱うものではない。その結果、ソフトウェア資産を効果的に活用することができていなかった。
【０００８】
なお特許文献１には、主にソフトウェアのソースコードを対象とした再利用システムを開示している。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００９−２７６９１１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上述の問題に対し、ソフトウェア資産を後述する情報ノードや関係リンクにより管理することが想定される。また、このソフトウェア資産の管理手法においては、関係リンクとは別にソフトウェア資産の特徴的な要素をキーワードとして管理することが考えられる。キーワードを用いることにより、情報ノードの検索箇所や、修正個所の影響分析の精度を高めることができる。
【００１１】
しかし長期間の保守対象となるソフトウェアに対して修正や改造が繰り返された場合、ソフトウェア資産を管理するリポジトリが保持する情報ノードや関連リンクが最新化されない場合がある。この場合、リポジトリに対する検索を行ったとしても期待する検索結果や影響分析結果を得られない場合がある。
【００１２】
大規模なソフトウェア資産を管理する場合、上述のキーワードを用いた管理は、参照したい情報ノードを絞り込むことに非常に効果的である。しかしながらキーワードが適切に設定されていない場合等には、情報ノードを抽出する精度が低下し、結果として必要な情報ノードの検索や影響分析結果を得られないことがある。
【００１３】
なお、ソフトウェア資産を管理するリポジトリに対して、自然言語の解析エンジンを用いて検索や影響分析を行うことも考えられる。すなわちユーザが入力した自然言語を解析し、検索したい情報ノードや関係リンクを抽出する手法である。しかしながら自然言語解析エンジン自体は、専用ソフトウェアとして個別に製品化されていることが多い。そのため、一般的なソフトウェア開発において言語解析エンジンが導入されるケースが少ない。よって当該手法では、リポジトリ内でキーワードを用いた情報ノードや関係リンクの管理を行う場合と比べて、検索や影響分析を行う際のコストがかかってしまうという問題がある。換言するとソフトウェア資産管理装置において情報ノードとキーワードを管理する方がコスト的にメリットが大きい。
【００１４】
そのため、上記検討したようにソフトウェア資産をリポジトリで管理する場合にキーワードを用いた情報管理の精度を高める必要性がある。
【００１５】
本発明は、上述の必要性に鑑みてなされたものであり、ソフトウェア資産をリポジトリで管理する場合にキーワードを用いた情報管理の精度を高めることができるソフトウェア資産管理装置、ソフトウェア資産管理方法、及びプログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【００１６】
本発明にかかるソフトウェア資産管理装置の一態様は、
抽象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクで設定した資産管理マトリクスを保持する情報保持部と、
対象情報ノードから前記関係リンクで辿ることができる前記情報ノードである到達情報ノードを抽出する情報探索部と、
抽出した前記到達情報ノードに付与されたキーワードであって、前記対象情報ノードに付与されていないキーワードを候補キーワードとして抽出するキーワード抽出部と、
を備える、ものである。
【００１７】
本発明にかかるソフトウェア資産管理方法の一態様は、
抽象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクで設定した資産管理マトリクスを保持するリポジトリ、に対する管理方法であって、
対象情報ノードから前記関係リンクで辿ることができる前記情報ノードである到達情報ノードを抽出する情報探索ステップと、
抽出した前記到達情報ノードに付与されたキーワードであって、前記対象情報ノードに付与されていないキーワードを候補キーワードとして抽出するキーワード抽出ステップと、を備える、ものである。
【発明の効果】
【００１８】
本発明は、ソフトウェア資産をリポジトリで管理する場合にキーワードを用いた情報管理の精度を高めることができるソフトウェア資産管理装置、ソフトウェア資産管理方法、及びプログラムを提供する。
【図面の簡単な説明】
【００１９】
【図１−１】実施の形態１にかかるソフトウェア資産管理装置１の構成を示すブロック図である。
【図１−２】実施の形態１にかかる情報分析部６の構成を示すブロック図である。
【図２−１】実施の形態１にかかるソフトウェア資産管理装置１が想定するマトリクスを示す概念図である。
【図２−２】実施の形態１にかかるリポジトリ７のテーブル構成を示す概念図である。
【図２−３】実施の形態１にかかるマトリクスを示す図である。
【図２−４】実施の形態１にかかる関係リンクを保持するテーブル構成を示す図である。
【図２−５−１】実施の形態１にかかる同格関係、及び詳細化関係の２つの関係リンクが含まれるマトリクスを示す図である。
【図２−５−２】実施の形態１にかかる同格関係、及び詳細化関係の２つの関係リンクが含まれるマトリクスを示す図である。
【図２−５−３】実施の形態１にかかる同格関係、及び詳細化関係の２つの関係リンクが含まれるマトリクスを示す図である。
【図２−６】実施の形態１にかかる具体化関係の関係リンクが含まれるマトリクスを示す図である。
【図２−７−１】実施の形態１にかかる管理対象のソフトウェア資産を示すマトリクスである。
【図２−７−２】実施の形態１にかかる管理対象のソフトウェア資産を示すマトリクスである。
【図２−７−３】実施の形態１にかかる管理対象のソフトウェア資産を示すマトリクスである。
【図２−７−４】実施の形態１にかかる管理対象のソフトウェア資産を示すマトリクスである。
【図２−７−５】実施の形態１にかかる管理対象のソフトウェア資産を示すマトリクスである。
【図２−７−６】実施の形態１にかかる管理対象のソフトウェア資産を示すマトリクスである。
【図２−７−７】実施の形態１にかかる管理対象のソフトウェア資産を示すマトリクスである。
【図２−８】実施の形態１にかかるリポジトリ７に情報ノードが登録されている様子を示す図である。
【図２−９】実施の形態１にかかるリポジトリ７に情報ノードが登録されている様子を示す図である。
【図３−１】実施の形態１にかかる情報保持部８及びキーワード保持部９が保持するデータ例を示す図である。
【図３−２】実施の形態１にかかる情報保持部８内部のテーブルを示す図である。
【図３−３】実施の形態１にかかるキーワード保持部９内部のテーブルを示す図である。
【図３−４】実施の形態１にかかる情報分析部６の処理の流れを示すフローチャートである。
【図３−５】実施の形態１にかかるリンク重み付け保持部１０が保持する関係リンク重みづけテーブルの構成を示す図である。
【図３−６】実施の形態１にかかる探索情報テーブル（探索情報保持部１１が管理するテーブル）の例を示す図である。
【図３−７】実施の形態１にかかる探索情報テーブル（探索情報保持部１１が管理するテーブル）を示す図である。
【図３−８】実施の形態１にかかる候補キーワードテーブルの例を示す図である。
【図３−９】実施の形態１にかかる情報保持部８及びキーワード保持部９が保持するデータ例を示す図である。
【図３−１０】実施の形態１にかかる探索情報テーブル（探索情報保持部１１が管理するテーブル）を示す図である。
【図３−１１】実施の形態１にかかる候補キーワードテーブルの例を示す図である。
【図４】本発明にかかる情報分析部６の構成を示すブロック図である。
【発明を実施するための形態】
【００２０】
＜実施の形態１＞
以下、図面を参照して本発明の実施の形態について説明する。まず本実施の形態にかかるソフトウェア資産管理装置１が扱う情報システムについて説明する。これらの情報システムを構築、運用するためには、様々な情報、例えば、情報システムが利用される業務の内容を定義づける情報（業務定義情報）、システム設計情報、ソースコード、テスト仕様情報、運用仕様情報等が必要である。これらの情報を、総じてソフトウェア資産と呼ぶ。ソフトウェア資産は、業務の実行主体である企業等の内部において、文書化されていることもあれば、されていないこともある。
【００２１】
図１−１は、本実施の形態にかかるソフトウェア資産管理装置１の構成を示すブロック図である。ソフトウェア資産管理装置１は、処理部４及びリポジトリ７を有する。またソフトウェア資産管理装置１は、入力装置２及び出力装置３と接続する。処理部４は、情報入力部５及び情報分析部６を有する。リポジトリ７は、情報保持部８、キーワード保持部９、リンク重み付け保持部１０、探索情報保持部１１、及び候補キーワード保持部１２を有する。
【００２２】
入力装置２は、処理部４を介してリポジトリ７に後述する情報ノード等の各種データを入力する装置である。入力装置２は、例えばキーボード、マウス等を備えたコンピュータであればよい。出力装置３は、後述する情報分析部６の探索経路を表示する装置であり、例えば液晶ディスプレイ装置と接続されたコンピュータ装置やプリンタ装置等の各種出力装置である。
【００２３】
情報入力部５は、入力装置２からの入力を受け付け、情報保持部８にデータ登録を行うインターフェイスとして動作する。情報入力部５は、例えばインターネットを介したパケット処理等の能力を有する処理部である。
【００２４】
情報分析部６には、入力装置２及び情報入力部５を介して分析条件が入力される。情報分析部６は、入力された分析条件を用いてリポジトリ７の分析を行う。情報分析部６の詳細を、図１−２を参照して説明する。情報分析部６は、情報探索部６１、キーワード抽出部６２、及びキーワード整列部６３を有する。各処理部の動作についてはリポジトリ７の詳細構成を説明した後に説明する。
【００２５】
リポジトリ７は、ソフトウェア資産管理装置１が有する図示しない記憶媒体内に設けられた、論理的な記憶手段である。実際には、情報保持部８及びキーワード保持部９等の各保持部が各種データを記憶する。以下、リポジトリ７の詳細について図２−１〜図２−９を参照して説明する。
【００２６】
上述のように、ソフトウェア資産は様々な情報の集合であるが、これらソフトウェア資産を構成する個々の情報単位を情報ノードと呼ぶ。例えば、業務定義情報、システム設計情報、ソースコード、テスト仕様情報、運用仕様情報等を構成する情報単位が、情報ノードである。文書化されたソフトウェア資産が存在する場合は、その文書データの全部または一部が、情報ノードの実体である。一方、文書化されていない情報についても、文書データ等の実体を有しない、いわば空の情報ノードを作成することができる。例えば、Ａ機能について記載した文書が存在しなくても、情報システムにＡ機能が必要である場合は、利用者はＡ機能に関する情報ノードを作成し、リポジトリ７に格納できる。
【００２７】
リポジトリ７は、これらの情報ノードそれぞれを、「抽象度」と「詳細度」の２つの評価基準により分類したうえで格納する。「抽象度」「詳細度」には、それぞれ複数の段階（レベル）が設けられる。情報ノードは、それら複数のレベルのいずれかに割り当てられる。すなわち、リポジトリは、情報ノードを、「抽象度」「詳細度」の２軸によって定義されるマトリクス上のいずれかの位置に割り当てて格納する。
【００２８】
図２−１に、本実施の形態が想定するマトリクスを例示する。この例では、マトリクスの縦軸が「抽象度」、横軸が「詳細度」を示す。「抽象度」「詳細度」は、原点から遠ざかるほど大きくなる。すなわち、より原点から離れた位置には、より抽象的又は詳細な内容を含む情報ノードが格納される。本実施の形態では、「抽象度」「詳細度」のレベルを、レベル番号によって識別することとする。すなわち、「抽象度」「詳細度」の最も小さいレベルを、レベル番号「１」と呼ぶ。以降、「抽象度」「詳細度」が大きくなるに従って、昇順のレベル番号「２」「３」・・で呼称する。
【００２９】
なお、マトリクスの縦横のサイズ（レベル数）は固定的ではなく、管理対象のソフトウェア資産の規模や複雑さ等に応じて、利用者が自由に設定する事が可能である。
【００３０】
情報ノードが割り当てられるマトリクス上の位置を、ブロックと呼ぶ。本実施の形態では、個々のブロックを「抽象度レベル番号−詳細度レベル番号」の形式で、２つの数字の組によって特定する。例えば、図２−１において、情報ノードＸが割り当てられたブロックは「１−２」である。
【００３１】
ここで、「抽象度」「詳細度」の意義について説明する。「抽象度」とは、情報ノードを、情報の内容と、システムの実装と、の依存度の強さによって分類する尺度である。例えば、業務定義情報、システム設計情報、ソースコード、テスト仕様情報、運用仕様情報の５種類の情報ノードを、５段階の抽象度レベル１乃至５に分類する場合、実装への依存度が最も低い業務定義情報を、最も高い抽象度レベル（抽象度レベル＝５）に割り当てる。以降、実装への依存度が高まる順に、システム設計情報には抽象度レベル＝４を、ソースコードには抽象度レベル＝３、テスト仕様情報には抽象度レベル＝２、運用仕様情報には抽象度レベル＝１を割り当てる。
【００３２】
「詳細度」とは、情報ノードを、設計の詳細度によって分類する尺度である。例えば、図２−３に示すように、システム設計情報として、ＡＡ機能の概要を自然言語で記述した機能記述と、ＡＡ機能におけるデータ遷移を例えばＤＦＤ（Data Flow Diagram）等で記述したデータ関連図と、の２種類の情報ノードを、２段階の詳細度レベル１乃至２に割り当てる場合、設計の詳細度が最も高いデータ関連図を、最も高い詳細度レベル（詳細度レベル＝２）に割り当てる。一方、設計の詳細度が比較的低い機能記述には詳細度レベル＝１を割り当てる。
【００３３】
なお、リポジトリ７においては、詳細度が異なるが、同等の抽象度を有する情報ノードには同じ抽象度レベルを割り当て、抽象度が異なるが、同等の詳細度を有する情報ノードには同じ詳細度レベルを割り当てることが好ましい。
【００３４】
図２−２に、リポジトリ７を具体的に実現するためのテーブル構造の一例を示す。ソフトウェア資産管理装置１は、例えば図示しない記憶媒体上の記憶領域に、上記テーブル構造を有する情報保持部８を備えることができる。情報保持部８は、リポジトリ７に格納された情報ノードを識別するための情報名、情報ノードの位置を示すブロック、及び情報ノードの実体（情報実体。例えば文書データ等）の実際の保存場所を示す情報実体の場所、を少なくとも要素とする複数のレコードを保持できる。本実施の形態では、情報ノードの実体を、情報保持部８の外部の任意の保存場所に保存することとしている。なお、情報ノードの実体を、情報保持部８のレコード内に保持することとしても構わない。
【００３５】
リポジトリ７は、個々の情報ノードの関係性に関する情報を保持することができる。この関係性を、関係リンクと称する。関係リンクは、ある情報ノードと、当該情報ノードと同一ブロック、抽象度レベルのみが異なるブロック、及び詳細度レベルのみが異なるブロックに存在する他の情報ノードと、の間で設定することができる。
【００３６】
本実施の形態では、少なくとも以下の４種類の関係リンクを設定できる。この種別をリンク属性とも呼称する。同格関係は、同一の対象又は事象等を、別の目的や観点等に基づいて表現した情報ノード同士を関係づける関係リンクである。下位関係は、ある上位概念たる情報ノードと、当該情報ノードの下位概念や構成部品である情報ノードを関係づける関係リンクである。詳細化関係は、ある情報ノードと、当該情報ノードをより詳細化した情報ノードとを関係づける関係リンクである。具体化関係は、抽象的な概念を示す情報ノードと、当該情報ノードをより具体化した情報ノードとを関係づける関係リンクである。以上の他、情報ノード間でのデータの関連性や処理順序等を表現するため、任意の関係リンクを設定することもできる。上述のように関係リンクは、情報ノード間を方向性を持って結ぶことができるリンク（有向リンク。ただし同格等の関係では、方向性は不要である場合もある。）である。
【００３７】
なお、詳細化関係は、詳細度レベルが異なる情報ノード同士で設定されても良く、同一の詳細度レベルの情報ノード同士で設定されても良い。また、具体化関係は、抽象度レベルが異なる情報ノード同士で設定されても良く、同一の抽象度レベルの情報ノード同士で設定されても良い。なお、リポジトリ７は、詳細化関係又は具体化関係が、詳細度レベル又は抽象度レベルを跨ぐものであるか否かを示すフラグを、それぞれ保持していることが好ましい。
【００３８】
図２−３は、ある仮想の企業の組織構造及び業務構造を、下位関係、及び「関連」の２つの関係リンクを用いて示したものである。ここで、「関連」とは、ある業務に関連する入出力情報を示す関係リンクであるものとする。この図は、以下の事実を示す。この企業は、「業務フロー」に関するソフトウェア資産（例えば文書化されたマニュアル等）を有する。この「業務フロー」の中には、「販売部門」にかかる業務フローが含まれる。「販売部門」の業務フローは、「受注」「在庫確認」「出荷指示」の３つの業務からなる。それぞれの業務における入出力情報は、「注文書」「製造指示」「出荷指示」である。
【００３９】
図２−４は、図２−３の関係リンクを具体的に実現するためのテーブル構造の一例である。図２−４の情報保持部８は、「出リンク」「入リンク」要素を有している。ここで「出リンク」は、その情報ノードを始点とする関係リンクを、リンクテーブル（後述）で定義された番号によって特定している。また、「入リンク」は、その情報ノードを終点とする関係リンクを、リンクテーブル（後述）で定義された番号によって特定している。
【００４０】
なお、出リンク及び入リンク要素は、情報保持部８の構成上、必須の要素ではない。当該要素は、後述のリンクテーブルが有する要素と重複しており、リンクテーブルを情報ノードの番号で検索すれば取得することが可能である。しかしながら、実際の運用においては、リポジトリ７に登録される情報量が増加するほど、リンクテーブルの検索時間が増大し、処理部４全体の性能に大きな影響を及ぼすことが予想される。よって、高速化の手段として、情報保持テーブルに出リンク及び入リンク要素を直接持つことは有効である。
【００４１】
リンクテーブルは、複数の情報ノード間に張られた関係リンクを定義、保存するためのテーブルである。リンクテーブルは、少なくとも番号、属性、始点情報、終点情報を要素とする、１以上のレコードを有する。番号は、関係リンクを一意に特定するための識別子である。属性は、関係リンクの種類を示す。始点情報は、関係リンクの始点となる情報ノードを、情報保持部８で定義された番号によって特定している。終点情報は、関係リンクの終点となる情報ノードを、情報保持部８で定義された番号によって特定している。
【００４２】
図２−５（図２−５−１〜図２−５−３）は、ある仮想の企業の組織構造及び業務構造を、同格関係、及び詳細化関係の２つの関係リンクを用いて示したものである。両端が矢印の線は、同格関係を示す。同格関係は、同じブロックの中で、本質的に同じ意味内容を有する情報ノード間に設定されている。片方が矢印の線は、詳細化関係を示す。この例において、詳細化関係は、詳細化レベルの異なるブロックに位置する情報ノード間に設定されている。
【００４３】
図２−６は、ある仮想の企業の組織構造及び業務構造を、具体化関係の関係リンクを用いて示したものである。片方が矢印の線は、具体化関係を示す。この例において、具体化関係は、抽象化レベルの異なるブロックに位置する情報ノード間に設定されている。
【００４４】
図２−７（図２−７−１〜図２−７−７）は、ある仮想の企業の組織構造及び業務構造に関するソフトウェア資産全体を、リポジトリ７に登録した例を示している。上述の図２−３、図２−５（図２−５−１〜図２−５−３）、図２−６は、この図の一部分を抜き出したものである。
【００４５】
次にキーワードについて説明する。以下、キーワード保持部９の保持するキーワード情報について説明する。リポジトリ７においては、各情報ノードにキーワードを付与することができる。図２−８及び図２−９を用いて、情報ノードとキーワードとの関係について説明する。
【００４６】
図２−８は、情報保持部８の２つのブロック（１−１及び１−２）に、それぞれＡＡ、ＢＢ、ＣＣ、ＤＤという情報ノードが登録されている様子を示している。ブロック１−１に含まれる情報ノードの情報実体（例えば機能記述）と、ブロック１−２に含まれる情報ノードの情報実体（例えばデータ関連図）とでは、同様の論理構成や用語等が用いられていることが少なくないため、このような事象が生じ得る。ここで、ブロック１−１における情報ノードＡＡと、ブロック１−２における情報ノードＡＡとは、何らかの意味的な関連を有していることが多い。そこで、リポジトリ７においては、このような意味的な関連を識別するためのいわばタグとして、これらの情報ノードに対し、同一のキーワードを付与することができる。
【００４７】
図２−９に、情報ノードとキーワードとの関連づけを具体的に実現するためのテーブル構造の一例を示す。図２−９の情報保持部８は、図２−２の情報保持部８に比べ、各情報ノード（レコード）にユニークな番号が与えられ、たとえ同一情報名の情報ノードが複数存在しても、それらを識別可能に構成されている点で相違する。この例では、情報名ＡＡが２か所、ＢＢが２か所、ＣＣが２か所、ＤＤが２か所に存在している。
【００４８】
キーワード管理部９は、少なくともキーワード名と、情報番号リストとを対応付ける１以上のレコードからなるテーブルである。情報番号リストは、キーワードによって関連付けられる複数の情報ノードを、情報保持部８における番号によって特定する。
【００４９】
続いて図３−１〜図３−１１を参照して、本実施の形態にかかる情報分析部６の処理について詳細に説明する。図３−１は、販売システムについて情報保持部８及びキーワード保持部９が保持するデータ例を示す図である。情報保持部８には、詳細度１〜３の３レベルと、抽象度１〜２の２レベルのマトリクス形状に分割したブロックにソフトウェア資産の情報ノードが格納されている。キーワード保持部９には、予め１７個のキーワードが登録されている。
【００５０】
図３−２は、図３−１に対応する情報保持部８内部のテーブルを示す図である。図３−３は、図３−１に対応するキーワード保持部９内部のテーブルを示す図である。図示するように本実施の形態のキーワード保持部９は、キーワードが属する詳細度を示すカラムも併せ持つ。情報番号リストのカラムには、各キーワードが関連付けられる情報ノードの番号（識別子）が列挙される。例えば「２８．製造数算出処理フロー」という情報ノードは、「製造指示」「受注数」、「在庫数」、「製造指示数」、「製造予定数」、「製造実績数」というキーワードと関連付けられている。
【００５１】
また本実施の形態では、キーワード保持部９は、情報保持部８と同様に詳細度で分類した上でキーワードを管理する。キーワードは関連付けられている情報ノードの内、詳細度が最も概要レベルのブロックに登録されている情報ノードと同一の詳細度が設定される。
【００５２】
図３−４は、情報分析部６の処理の流れを示すフローチャートである。情報分析部６は、図示するように情報ノードの探索（Ｓ１）、キーワード抽出及び関係類似度の算出（Ｓ２）、及び候補キーワードの整列（Ｓ３）を順に行う。
【００５３】
以下、図３−１における「２８．製造指示数算出処理フロー」という情報ノードを更新する場合を例にとり、情報ノード更新時の情報分析部６の処理手順を説明する。以下が更新のシナリオである。「２８．製造算出処理フロー」では「在庫数」から「製造指示数」を算出していた。しかし、本来は「在庫数」から「出荷予定数」を除いた数を「製造指示数」として算出すべきであるというバグが判明した。この際にユーザは、情報ノードの内容の変更、及び各情報ノード間の関係リンクの必要な変更を行う。
【００５４】
ここで「出荷予定数」に関連するキーワードである「出荷」、「出荷予定」と「２８．製造指示数算出処理フロー」との関連付けが必要である。しかしながらこれらのキーワード（「出荷」、「出荷予定」）は、「２８．製造指示数算出処理フロー」と関連付けられていない。そのため、キーワードの更新漏れが生じる場合がある。情報分析部６は、この解消漏れを回避するために図３−４に示す処理を実行する。
【００５５】
まず情報分析部６は、情報ノードの探索（Ｓ１）を行う。情報探索部６１は、更新された情報ノードから関係リンクを辿り、辿ることができた情報ノード（到達情報ノードとも呼称する。）についての情報ノード名、参照優先度、関係キーワードを探索情報テーブル（探索情報保持部１１が管理するテーブル）に格納する。参照優先度とは、更新対象の情報ノードから対象の情報ノード（到達情報ノード）にたどり着くまでに経た関係リンクの重み付け（図３−５）を合算した値である。参照優先度は、更新する情報ノードに付与する適切なキーワード候補を抽出する場合において、参照すべき他の情報ノードがどれであるかを関係リンクの設定状況から数値化して表現したものである。関係キーワードとは、対象の到達情報ノードに紐づいているキーワードである。
【００５６】
リンク重み付け保持部１０が保持する関係リンク重みづけテーブルの構成を図３−５に示す。上述のように各到達情報ノードの参照優先度は、各関係リンクの合算値となる。参照優先度の値が小さいほど、より参照されるべき到達情報ノードとして扱われる。ここで関係リンクの種別の内、（同格＞下位＞関連＞具体化、詳細化）の順で参照優先度が算出されるように重み付けが設定されている（図３−５）。各重み付けの値の根拠は以下の通りである。
【００５７】
「同格」は、同じ内容を別の視点や目的で表現した情報ノード同士の関係を示す。そのため、情報ノードに関連付けられるキーワードがほぼ同等になると想定できる。そのため、重み付けの値も最も小さくする。
【００５８】
「下位」は、上位の情報ノードを構成する部分であることを示す関係である。そのため、「同格」の次に重複するキーワードが多いと想定する。また、非順方向よりも順方向に辿る場合の方がより一致度が高い（重み付けの値が小さい）ものとして扱う。
【００５９】
「関連」は、異なる種類の情報ノード間（例えばプロセスに関する情報ノードとデータに関する情報ノード）の関係づけに用いられる。そのため、両者は同一のキーワードと関連付けられている可能性があり、「下位」に続く重み付けとする。
【００６０】
「詳細化」と「具体化」といった関係では、関係リンクを辿った先に適切なキーワードが設定されている場合もあるが、詳細度や抽象度が異なるために対象外のキーワードも多く関連付けられている可能性がある。そのため重み付けが大きくなるように設定がなされている。
【００６１】
なお、図３−５に示す重み付けの値は、あくまでも一例であり、上述の関係性を守った範囲であれば数値が異なっていてもよい。
【００６２】
探索情報テーブル（探索情報保持部１１が管理するテーブル）の例を図３−６に示す。図３−６は、「２８．製造指示数算出処理フロー」という情報ノードが更新された場合の探索情報テーブルである。例えば「２８．製造指示数算出処理フロー」と同格の関係にある「２０．製造数算出ＭＤＬ」の参照優先度は１となり、当該到達情報ノードに関連付けられているキーワード「受注数」、「製造指示数」が抽出される。同様に「２８．製造指示数算出処理フロー」から「２６．出荷ＴＢＬ」までの重み付けの合計として参照優先度が１２と算出され、当該到達情報ノードに関連付けられているキーワード「出荷」、「出荷予定数」が抽出される。その他の到達情報ノードについても同様に算出を行う。
【００６３】
続いてキーワード抽出部６２がキーワードの抽出及び関係類似度の算出（Ｓ２）を行う。キーワード抽出部６２は、更新元の情報ノードに既に関連付けられているキーワード群と、探索された到達情報ノードに関連付けられているキーワード群を比較する。そしてキーワード抽出部６２は、一致するキーワードの数である「関係類似度」と、探索した到達情報ノードに関連付けられているが更新した情報ノードに関連付けられていないキーワード群である「候補キーワード」と、を探索情報テーブル（探索情報保持部１１が管理するテーブル）に追加する。
【００６４】
関連類似度とは、更新した情報ノードが持つキーワード群が、到達情報ノードが持つキーワード群とどの程度類似しているかを数値として表現したものである。そもそも両情報ノードの内容が類似している場合、同様のキーワード群と関連付けられている可能性が高い。そのため同一キーワードと関連付けられている数は、類似していると判断する目安と成り得る。
【００６５】
図３−７は、キーワード抽出部６２が関係類似度と候補キーワードを追加した状態の探索情報テーブル（探索情報保持部１１が管理するテーブル）を示す図である。例えば「２８．製造指示数算出処理フロー」と「１８．製造指示ＡＰ」の関連類似度（共通のキーワードの数）は２であり、候補キーワード（「１８．製造指示ＡＰ」にのみ関連付けられているキーワード）は「出荷予定数」となる。その他の到達情報ノードに関しても同様に関係類似度と候補キーワードを算出する。
【００６６】
続いてキーワード整列部６３は、候補キーワードの整列（Ｓ３）を行う。キーワード整列部６３は、探索情報テーブル（図３−７）を参照し、「参照優先度」の値がより小さく、「関係類似度」の値がより大きい情報ノードに対応する「候補キーワード」から優先的に順位付けした一覧を候補キーワードテーブル（候補キーワード保持部１２が管理するテーブル）に格納する。図３−７に示す探索情報テーブルから算出された候補キーワードテーブルを図３−８に示す。
【００６７】
「参照優先度」の値がより小さい場合、更新対象となった情報ノードとより近い関係を持つ到達情報ノードとして優先して扱う。これにより、高精度なキーワード候補の順位付けが可能になる。
【００６８】
「関係類似度」の値がより大きい場合、更新対象となった情報ノードと類似していると判断される到達情報ノードのキーワードがより優先して扱われる。これにより、「参照優先度」の場合と同様に高精度なキーワード候補の順位付けが可能になる。
【００６９】
なお参照優先度と関連類似度は、どちらを優先的に用いてもよく、この２つの値を用いた新たな参照値を算出することに用いてもよい。例えばキーワード整列部６３は、参照優先度の値が小さい順にキーワードの順位付けを行い、参照優先度が同一の場合にのみ関係類似度を参照して順位付けを行ってもよい。同様にキーワード整列部６３は、関係類似度の値が小さい順にキーワードの順位付けを行い、関係類似度が同一の場合にのみ参照優先度を参照して順位付けを行ってもよい。またキーワード整列部６３は、例えば（１／参照優先度）×（関係優先度）の計算により参照値を算出し、当該参照値が大きい候補キーワードが上位となるように順位付けを行ってもよい。また精度は低くなるものの、キーワード整列部６３は、参照優先度と関係類似度の内、一方のみを用いて順位付けを行ってもよい。
【００７０】
すなわち情報探索部６１とキーワード抽出部６２は、関係リンクの重み付けを利用して情報ノード間の近さを示す指標値（上述の例では参照優先度、関係類似度）を算出するとともに候補キーワードを抽出する。
【００７１】
またキーワード整列部６３は、候補キーワードのランキングを行う構成ではなく、所定の条件（例えば「参照優先度が３以下で、関係類似度が６以上」）を満たす候補キーワードのみを選択して表示する構成であってもよい。
【００７２】
また精度（またはユーザにとっての使いやすさ）は落ちるものの、情報分析部６がキーワード整列部６３を有さない構成とすることもできる。この場合、キーワード抽出部６２が抽出した候補キーワードと指標値（上述の例では参照優先度、関係類似度）をユーザに提示すればよい。ユーザは、関連付けるべき候補となるキーワードを参照できるとともに、その重要度を指標値から認識することができる。
【００７３】
図３−８を参照すると、「参照優先度」及び「関係類似度」から算出されたランキングによりソートされた候補キーワードが表示されている。ユーザは、更新した情報ノードに対し、上位の候補キーワードから順に関連付けるかを判断して設定を行えばよい。
【００７４】
続いてリポジトリ６に新たな情報ノードを追加する際の情報分析部６の動作について説明する。以下の説明では「２９．出荷予定ＭＤＬ」という情報ノードを追加する例について説明する。図３−９は、販売システムについて当該情報ノードの追加後の情報保持部８及びキーワード保持部９が保持するデータ例を示す図である。図３−９は、図３−１のデータに対してブロック２−３に「２９．出荷予定ＭＤＬ」が追加された状態である。
【００７５】
「２９．出荷予定ＭＤＬ」という情報ノードは、受注動向を基に上積みで出荷される数量を予測し、出荷予定数と加算することにより最終的な出荷予定数を算出する処理が定義されているものとする。「２９．出荷予定ＭＤＬ」は、「１８．製造指示ＡＰ」の下位の情報ノードとして関連付けられており、受注と出荷に関するデータの読み出し／書き込みを行う。そのため「２９．出荷予定ＭＤＬ」は、「２１．受注明細ＴＢＬ」と「２２．出荷ＴＢＬ」との「関連」も定義されている。
【００７６】
情報ノードが新規追加されたタイミングでユーザがキーワードを入力することも可能であるが、入力漏れが生じる場合がある。そのためユーザは情報分析部６の分析（図３−４）を用いてキーワードの入力を行うものとする。以下、ユーザが情報分析部６の分析（図３−４）を用いて設定すべきキーワード「受注確認」、「受注明細」、「受注実績」、「受注数」、「出荷予定数」を設定するまでの流れを説明する。
【００７７】
情報探索部６１は、更新対象（追加対象）を「２９．出荷予定ＭＤＬ」とする情報ノードの探索を更新の場合と同様に行う（Ｓ１）。またキーワード抽出部６２についても更新の場合と同様にキーワードの抽出や関係類似度の算出を行う（Ｓ２）。
【００７８】
図３−１０は、情報探索部６１及びキーワード抽出部６２が処理を行った後の探索情報テーブル（探索情報保持部１１が管理するテーブル）を示す図である。なお、「２９．出荷予定ＭＤＬ」は新規追加対象であるため、「関係類似度」は全て０となる。
【００７９】
続いてキーワード整列部６３は、候補キーワードの整列（Ｓ３）を行う。キーワード整列部６３は、探索情報テーブル（図３−１９）を参照し、「参照優先度」の値がより小さく、「関係類似度」の値がより大きい情報ノードに対応する「候補キーワード」から優先的にランキングした一覧を候補キーワードテーブル（候補キーワード保持部１２が管理するテーブル）に格納する。図３−１０に示す探索情報テーブルから算出された候補キーワードテーブルを図３−１１に示す。
【００８０】
図３−１１に示すように、「受注確認」、「受注明細」、「受注実績」、「受注数」、「出荷予定数」といったキーワードのランキングが高くなる。ユーザは、このランキングを基に新規追加した情報ノードに関連付けるキーワードを決定する。このように情報分析部６は、キーワードの設定を十分に支援する情報を提供する。
【００８１】
続いて本実施の形態にかかるソフトウェア資産管理装置の効果について説明する。上述のように情報分析部６は、情報ノード間の関係性や情報ノードに関連付けられたキーワードの状態を考慮し、対象となる情報ノードに関連付けるキーワード候補を抽出している。これによりユーザは、漏れなく適切なキーワードを情報ノードに関連付けることができる。
【００８２】
詳細には情報分析部６は、更新対象となった情報ノードとは直接関係リンクが定義されていない情報ノードに関しても関係の深さを算出した上で候補キーワードを抽出している。これにより、関係リンクの関係に縛られることなく、必要なキーワードを抽出することができる。
【００８３】
また情報ノードや関係リンクがリポジトリ７に大量に登録されている場合であっても、情報分析部６は順位付けされた候補キーワードをユーザに提示している。そのためユーザは、リポジトリ７が保持するデータが膨大であっても情報ノードに対して適切なキーワードを関連付けることができる。
【００８４】
情報分析部６は、参照類似度に加えて関係類似度を考慮した優先度設定を行っている。そのため、参照類似度が仮に同じ情報ノードがあったとしても関係類似度に基づくソートが可能となり、ユーザはより重要な情報ノード（及びその情報ノードに関連付けられたキーワード）を認識することができる。
【００８５】
また情報ノードが更新された場合だけでなく、上述のように情報ノードが新たに登録された場合であっても、情報分析部６は適切なキーワードの候補を算出することができる。
【００８６】
＜その他の実施の形態＞
上述の説明では情報分析部６は、情報ノードが登録された場合や更新された場合に処理を行う（図３−４）ものとして説明したが必ずしもこれに限られない。情報分析部６は定期的に動作し、情報ノードとキーワードの関係リンクを定期的に検査するものであってもよい。
【００８７】
また上述の説明では、情報分析部６は更新または新規追加された情報ノードに関連付けるキーワードを抽出していたが必ずしもこれに限られない。例えば情報分析部６は、ユーザが明示的に指定した情報ノードを対象とし、当該情報ノードに関連付けるべきキーワードを抽出してもよい。すなわち情報分析部６は、対象となる情報ノード（対象情報ノード）に関連付けるべきキーワードを抽出する構成であれば良い。
【００８８】
上述の説明では情報分析部６は、累積加算処理により参照優先度や関係優先度を算出していたが必ずしも加算だけに限られない。すなわち情報分析部６は、加算以外に、減算（―）、乗算（×）、除算（÷）等も組み合わせた算出を行って参照優先度や関係優先度を求めてもよい。
【００８９】
また各情報ノードに対して「重要度」や「性質」といった個別のデータを付与しておいてもよい。そして情報分析部６は、「重要度」や「性質」の値を考慮して候補キーワードの抽出を行ってもよい。換言すると「重要度」や「性質」を上述の参照優先度や関係類似度と同等の指標値とし、当該指標値を基に候補キーワードの順位付けを行ってもよい。
【００９０】
例えば主要な機能や使用に関する情報ノードに対し、「重要度」として（高）を設定する。なお「重要度」とした取り得る値は、「高」、「中」、「低」とする。またソフトウェア設計、製造の難易度、過去の品質状況等を考慮して「性質」を設定しておいてもよい。「性質」として取りうる値は、例えば数値やランクであれば良い。情報分析部６は、これら「重要度」や「性質」を上述の参照優先度や関係優先度の算出プロセスにおいて乗算等する。これにより、関係リンクの種別による重み付けのみならず、情報ノードの「重要度」や「性質」を用いてユーザの意図した傾向でキーワードを抽出することができる。
【００９１】
また、キーワードに対して「重要度」や「性質」を設定してもよい。例えば特定のキーワードについては重点的に検索対象に含めたい、または検索対象から優先度を落としたい、といった場合において有効である。例えば重点的に検索対象としたいキーワードに対して数値やランクで「重要度」を設定する。またキーワードがユーザ要求やソフトウェア設計・使用の特定要素に関連することを「性質」により関連付けてもよい。情報分析部６は、これら「重要度」や「性質」を上述の参照優先度や関係優先度の算出プロセスにおいて乗算等することにより、よりユーザにとって有効なキーワード抽出を実現できる。
【００９２】
またソフトウェア資産管理装置１内に、キーワードの抽出対象から除外するキーワードを予め設定しておいてもよい。情報分析部６は、除外したキーワードを抽出対象から除外した上で上述の処理（図３−４）を行う。これにより、不要なキーワードを抽出することが無くなり、キーワード精査の効率化を図ることができる。
【００９３】
また情報分析部６は、上述の参照優先度や関係優先度に加えて、探索情報テーブル（図３−６）でのキーワードの出現回数を考慮してキーワードの抽出を行ってもよい。すなわち情報分析部６は、参照優先度及び関係優先度が同じ候補キーワードがあった場合、探索情報テーブル（図３−６）での出現回数が多い候補キーワードが上位に順位付けされるように抽出処理を行う。
【００９４】
上述した実施の形態は本件発明者により得られた技術思想の適用に関する例に過ぎない。すなわち、当該技術思想は、上述した実施の形態のみに限定されるものではなく、種々の変更が可能であることは勿論である。
【００９５】
なお、情報分析部６の各処理は、ＣＰＵ（Central Processing Unit）がコンピュータプログラムを実行することにより実現されてもよい。
【００９６】
コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（random access memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００９７】
最後に図４を参照して本実施の形態にかかるソフトウェア資産管理装置１の特徴的な処理について説明する。リポジトリ７（図４には図示せず）は、抽象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクで設定した資産管理マトリクスを保持する。またリポジトリ７は、各情報ノードに関連付けられるキーワードを管理する。
【００９８】
情報探索部６１は、対象情報ノード（例えば更新対象となった情報ノード）から関係リンクで辿ることができる前記情報ノードである到達情報ノードを抽出する。キーワード抽出部６２は、抽出した到達情報ノードに付与されたキーワードであって、対象情報ノードに付与されていないキーワードを候補キーワードとして抽出する。この候補キーワードを対象情報ノードに関連付けるキーワードとして提示することにより、ユーザは容易にキーワードの設定を実行することができる。
【符号の説明】
【００９９】
１  ソフトウェア資産管理装置
２  入力装置
３  出力装置
４  処理部
５  情報入力部
６  情報分析部
６１  情報探索部
６２  キーワード抽出部
６３  キーワード整列部
７  リポジトリ
８  情報保持部
９  キーワード保持部
１０  リンク重み付け保持部
１１  探索情報保持部
１２  候補キーワード保持部
【図１−１】
2015109016.tif 000003
【図１−２】
2015109016.tif 000004
【図２−１】
2015109016.tif 000005
【図２−２】
2015109016.tif 000006
【図２−３】
2015109016.tif 000007
【図２−４】
2015109016.tif 000008
【図２−５−１】
2015109016.tif 000009
【図２−５−２】
2015109016.tif 000010
【図２−５−３】
2015109016.tif 000011
【図２−６】
2015109016.tif 000012
【図２−７−１】
2015109016.tif 000013
【図２−７−２】
2015109016.tif 000014
【図２−７−３】
2015109016.tif 000015
【図２−７−４】
2015109016.tif 000016
【図２−７−５】
2015109016.tif 000017
【図２−７−６】
2015109016.tif 000018
【図２−７−７】
2015109016.tif 000019
【図２−８】
2015109016.tif 000020
【図２−９】
2015109016.tif 000021
【図３−１】
2015109016.tif 000022
【図３−２】
2015109016.tif 000023
【図３−３】
2015109016.tif 000024
【図３−４】
2015109016.tif 000025
【図３−５】
2015109016.tif 000026
【図３−６】
2015109016.tif 000027
【図３−７】
2015109016.tif 000028
【図３−８】
2015109016.tif 000029
【図３−９】
2015109016.tif 000030
【図３−１０】
2015109016.tif 000031
【図３−１１】
2015109016.tif 000032
【図４】
2015109016.tif 000033