2015 Fiscal Year Research-status Report
言語独立・ハッシュ値・行粒度の追跡子による,ソフトウェア追跡性の高精度な確保
Project/Area Number |
26330077
|
Research Institution | Tokyo Institute of Technology |
Principal Investigator |
権藤 克彦 東京工業大学, 学術国際情報センター, 教授 (50262283)
|
Project Period (FY) |
2014-04-01 – 2019-03-31
|
Keywords | ソフトウェア保守 / ソフトウェア追跡性 / 追跡子 / ハッシュ値 |
Outline of Annual Research Achievements |
本研究の目的は言語独立・ハッシュ値・行粒度の追跡子のソフトウェア的実現,ソフトウェア追跡性の高精度な確保である.要件として耐ファイル移動性,言語独立,文脈独立, 容易性,保守性,理解性が必要との結論に達した.そこで本年度はこの要件を軽量に満たすソフトウェア追跡性技術として,TCC (tracer-carrying code)を提案・設計・プロトタイプ実装を行った.要点は次の通り:(1) ファイルのハッシュ値を追跡用識別子として使用→耐ファイル移動性,文脈独立,可読性,(2) 追跡子は行単位(行頭か行末)に埋め込む→言語独立,文脈独立,高速処理,(3) 現代的なリッチエディタを仮定し,追跡子情報を不可視にする機能を提供→可読性,(4) ペアハッシュにより,変更検知(obsoleteな追跡子情報の検知)を自動化する→保守性.プロトタイプ実装として,Emacs版(tccマイナーモード)とChrome拡張版の2種類を実装し,ハッシュ値には20バイト長のSHA-1を,分散版管理システムとしてGitを用いた. また本研究から派生して,初心者Cプログラマにより分かりやすくコンパイラの警告メッセージを提供する支援システムC-Helperの研究も行った.この研究では,初心者が行いがちな行動や意図をヒューリスティクスとしてシステムに取り入れ,プログラム断片とエラーメッセージを分かりやすく紐付けることを目的としている.この成果は本研究の追跡子に埋め込む際に,どうすればプログラマの要求する意図通りに追跡子情報をより適切に提供できるかを考える際に大いに役立つ.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
追跡子のプロトタイプ実装として,Emacs版とChrome拡張版の2種類を実装できたため.
|
Strategy for Future Research Activity |
追跡子が参照するメディアとしてWebページを対象として実現を行ったが,PDFも重要なメディアである.そこで,PDFも対象としたTCCシステムの設計と実装を行う.また,TCCシステムを用いて予備実験を行い,さらなる洗練と拡張を試みる.
|
Causes of Carryover |
追跡子として参考になる,あるいはベースとして使用できるソフトウェアの購入を検討したが,結果的に購入に至らなかったため.
|
Expenditure Plan for Carryover Budget |
調査を継続し,本研究に有用なソフトウェアを購入する.
|