研究課題/領域番号 |
25220003
|
研究機関 | 大阪大学 |
研究代表者 |
井上 克郎 大阪大学, 情報科学研究科, 教授 (20168438)
|
研究分担者 |
楠本 真二 大阪大学, 情報科学研究科, 教授 (30234438)
松下 誠 大阪大学, 情報科学研究科, 准教授 (60304028)
石尾 隆 大阪大学, 情報科学研究科, 助教 (60452413)
岡野 浩三 信州大学, 学術研究院工学系, 准教授 (70252632)
肥後 芳樹 大阪大学, 情報科学研究科, 准教授 (70452414)
|
研究期間 (年度) |
2013-05-31 – 2018-03-31
|
キーワード | ソフトウェア解析 / オープンソースソフトウェア / ソフトウェアライブラリ |
研究実績の概要 |
昨年度から引き続き、ソフトウェア資産の分析や効果的な利活用に関する研究課題に対して、主に以下のような成果を得た。研究を遂行するにあたり、国外の研究者と積極的な情報交換を行いつつ研究を遂行し、国内はもとより国外でも積極的は成果発表を行った。 Software Bertillonageは与えられたソフトウェア資産の中に特定のコンポーネントの複製を含むかどうかテストする技術であるが、得られた候補結果の中から人間の手によってさらなる確認作業が必要であった。そこで、複製する際は複製元の一部ではなく全部を複製する傾向にあるという性質を利用して、含まれるコンポーネントの複製を自動的に特定する手法を確立した。ランダムに1000個のライブラリを混成した1つのJava JARファイルを対象に実験を行い、適合率0.998で再現率0.997と極めて高い確率で、混成元のライブラリを自動的に特定することに成功した。 複数のライブラリが相互に非互換性を持つことがあるため、ライブラリを組み合わせて利用する際には、利用するバージョンの組み合わせも併せて考慮する必要があるが、どの組み合わせであれば問題がないかは経験的にしか知ることができず、利用先ライブラリの知識に乏しい初期利用時には判断が困難であった。そこで、既存の多くのソフトウェアが実際にどのライブラリのどのバージョンを組み合わせて利用しているかを調査し、その結果を可視化することによって、どのライブラリの組み合わせが一番多く利用されているかを直感的に理解するためのシステムを構築した。4000アプリケーションを対象に分析した結果を用いて実利用を想定したテストケースを通じ、システムの有効性を確認した。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
ソフトウェア資産の利活用を行う際の支援となる、現資産の収集・整理・分析並びにその視覚化に関して、着実な成果を得ることができた。従来は最終的に人の手による分析が必要となっていた点を、高確率で自動的に分析する手法の確立によって、多種多様なオープンソースソフトウェアに対して幅広い分析を効率よく行うことができるため、世界中のソフトウェアの動向を具体的に把握できるようになると考えられる。また、ライブラリの利用状況の可視化によって、集合知による確実なソフトウェア利用を推進できるようになってきている。今後はシステム等を広く利用してもらうことにより、さらなる知見の収集も進めていきたい。 各サブテーマに関しても、分析手法の開発やツール等の作成など、順調に成果が出ており、結果は論文や国際会議等でも発表している。国際研究などをさらに推進して、広い視野に立った研究を今後も進めていけると考えている。
|
今後の研究の推進方策 |
当初の目的である「ソフトウェア資産を収集し、分析、評価して、その価値を可視化し、開発支援する方法やシステムを開発する」、というものを大きく変更する必要はないと考えている。ただし、この分野の研究やシステム開発は近年急速に発達してきており、いろいろ新たなシステムの開発や普及が進み、また、新たなプロジェクトが起ころうとしている。このような環境変化に適応して、本プロジェクトがより多くの価値を生み出せるよう、以下の方策を採ることを考えている。 ソフトウェア資産の自動収集に関しては、スーパーレポジトリの寡占化が進む状況を勘案し、特定の重要なレポジトリを定期的に複製して利用することを検討する。各サブテーマで研究され、個別のツールとして提供されたものをパッケージとしてまとめて提供することの検討を行う。ソフトウェアの現状把握から一歩進んで、プログラムの来歴(Provenance)に関して、分析並びに結果の可視化の検討を行う。
|