いのうえけ〜ん
English 
/ ホームページ / 研究紹介 / 発表論文・技術報告・学位論文 / メンバー / ニュース /

研究紹介

井上研究室では「ソフトウェア工学」の研究を行っています. ソフトウェア工学とは,品質の高いソフトウェアを低コストで期限内に開発し,効率良く保守するための技術を扱う学問分野です.

井上研究室では,大規模ソフトウェアの開発効率向上を目指して,ソフトウェア工学の中でも「プログラム解析」と呼ばれる分野の研究に注力しています. プログラム解析とは,ソフトウェア開発における成果物,すなわちソースコードや設計ドキュメントを解析することによって,複雑なソフトウェアの理解や修正に必要となる情報を抽出する技術です. 開発者それぞれが高性能な計算機を使用している現在の状況を踏まえて,開発履歴情報やプログラムの実行時情報,バグ情報データベースや開発者のメーリングリストの情報など,多様な情報を迅速に解析し,開発環境を通じて開発者の作業を支援していく方法を研究しています.

研究成果のソフトウェアとしての公開

井上研究室は,構築した理論や実験結果を論文として発表するだけでなく,ソフトウェア開発者が実際に適用できるソフトウェアとしても外部に提供しています. これまでに公表されたソフトウェアとしては,ソースコードに含まれる「複製(クローン)」を検出するツール CCFinder および一連のクローン分析ツール,ソフトウェア部品検索エンジン SPARS,メトリクス計測フレームワーク MASU,Java プログラムの実行時情報分析ツール Amida などがあります. これらのソフトウェアが広く活用されるように,共同研究を通して企業での導入支援を行っているほか,ソフトウェアの使用方法に関するセミナーの開催やソースコードそのものの公開など,様々な取り組みを進めています.

研究テーマ

大規模ソフトウェアの開発を推し進めるために必要な技術として,井上研究室では,次の3つのテーマを研究しています.

これら3つのテーマに沿って,井上研究室では,ソフトウェア開発における成果物からの情報抽出技術,取得できた情報の性質の調査や,その情報を用いた開発者のサポートなど,個別の要素技術の研究を行っています.

既存のソフトウェアを資産として活用する手法

ソフトウェアを一から新しく作成するのではなく,可能な限り過去のソフトウェアを再利用することが,生産性の向上の鍵であると言われています.

開発中のソフトウェアの現状を分析する手法

ソフトウェアの動作や品質を効果的に調べるには,開発者が注目したい動作,あるいは品質の指標だけをソフトウェアから抽出し,不要な情報を自動的に取り除くことが重要な研究課題となっています.

ソフトウェアの品質の改善方法を提示する手法

大規模なソフトウェアから,設計上,あるいはコーディング上の潜在的な問題を自動的に検出し,開発者へ提供することで,ソフトウェアの品質改善を支援します.

研究プロジェクト

StagEプロジェクト

StagEプロジェクトは,ソフトウェアの機能や品質などに関する情報を, 「タグ」として,そのソフトウェアに結び付けておくための枠組みを提案, 実現することを目指して開始されたプロジェクトです. 開発時に収集された開発履歴情報や品質情報をタグとして格納しておくことで, そのソフトウェアを利用するエンドユーザや,品質の検査を行う人が, ソフトウェアが適切に開発されているかを確認することができます.

井上研究室は,どのような品質情報を,どのような形式でソフトウェアタグに格納するか, また様々なプログラム解析技術をどのようにして開発者の負担なく適用するか, という観点から,プロジェクトに関わっています.


homeホームページへ © ソフトウェア工学講座 mailお問い合わせはこちらまで