Research Abstract |
平成15年度,16年度において開発を行ってきたJava部品検索システムとソフトウェア自動分類システムの統合を行い,より実用的なJava部品分類検索システムの試作を行った. 一般に検索システムでは,検索者が入力したクエリとの適合度によって目的とする対象物を検索する.このような検索システムの利点は,適切なクエリを入力すれば検索者の意図通りの結果が得られるという点にある.逆にクエリを入力しない検索システムとして,カテゴリ検索システムがある.これは,あらかじめ用意されたツリー状のカテゴリから文書を探す形式のもので,その特徴は段階的に対象を絞り込める点である.カテゴリ検索のカテゴリは,その性質上,手作業で維持されることが多く,多大な時間と手間を要する.ソフトウェア部品に適用する場合を考えると,部品に対して適切なカテゴリを人間が選択することは困難であり,作業量は膨大になることから,自動化は不可欠といえる.そこで,開発してきたJava部品検索システムに対して,部品の自動分類機能を追加し,カテゴリ検索を実行可能とすることを目的とした.自動分類では,部品のソースコードの特徴語を用いて部品をツリー状のカテゴリに分類する手法を実現した.特徴語とは「そのソースコードを特徴づける重要な語」のことを指し,1つのカテゴリを形成するものである.本手法では特徴語の候補として,ソースコード中に出現する識別子,コメント中の単語といった語を用いた.部品ごとに,これらの全ての語に対して重みを求め,重みの大きい上位の語をその部品の特徴語と決定する.そして,カテゴリ(特徴語)間にツリー状の関係を生成し,カテゴリ検索を実現させる.提案する分類手法をもとにソースコードを分類するシステム,及び,その分類結果を利用した検索システムを実現した.さらに,分類結果が正しく特徴を表しているかの評価を行ったところ,高い適合率が得られた.
|