研究概要 |
本年度は,昨年度に開発したデータフロー解析のアルゴリズムを統合開発環境Eclipseに組み込み,実際のプログラム読解作業での有効性を評価する実験を行った.具体的な実施内容としては,まず,開発者がプログラムを編集しようとしたとき,開発者が移動させたカーソル位置に応じて,その周辺のデータフロー情報だけを自動的に抽出,可視化するツールを開発した,そして,開発したツールを本学の大学院生および企業のソフトウェア開発者に使用してもらい,ツールがある場合とない場合とで,ソフトウェアの正確な動作を調査する作業の差異を観測する実験を行った致その結果,一定時間内に調査可能なソースコードの量が,ツールによって増加することを確認した.本研究で開発したデータフロー解析手法は,従来,複雑であるとされてきたデータフロー解析を近似計算によって高速化したものであり,この実験の結果は、近似計算による正確さの低下が,実用上問題ないものであったことを示している.今後,厳密なデータフロー解析を必要とする分野を除くと,データフロー解析に基づく種々の解析手法について,本研究の成果を効果的に適用できるものと期待できる. データフロー解析の異なる応用として,ソースコード閲覧ツールCageを試作した.このツールは,開発者が興味を持っているソースコードをキーワード検索で抽出し,得られたソースコード群に共通する制御フローやデータフロー情報を表形式で可視化するものである.このツールは企業の開発者に提供しており,実務において必要とされる情報の新しい提示方式として,有効性を確認した.
|