著者
三上 裕明 坂本 大介 五十嵐 健夫
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.8, no.4, pp.1-14, 2015-12-04

APIの理解と使い方の学習は,プログラマにとって重要であるが,時間のかかる作業である.APIを理解するための方法の1つとして,チュートリアルがある.チュートリアルは,複数のサンプルコードおよびその説明と,それらのリストからなるドキュメントであり,ライブラリの基本的な機能の使い方を提示する.現在,チュートリアルはライブラリの開発者が記述しているが,チュートリアルを書くことは手間がかかる作業である.そのため,チュートリアルが更新されず,最新のAPIの使い方がチュートリアルで説明されていない場合がある.この問題に対処するため,本論文では,単体テストからチュートリアルを自動的に生成する手法を提案する.本手法では最初に,単体テストから実行可能なサンプルを生成する.次に,サンプルの説明を生成するために,プログラム可視化の技法を用いる.また,サンプルコードのリストを作るために,単体テスト間の依存関係を用いる.具体的には,実行時情報を用いて単体テストの依存関係を抽出し,そしてその依存関係をもとにサンプルコードを順序付けする.本手法の有効性を確認するためにユーザスタディを実施した.この結果,本手法を用いて生成されたチュートリアルを用いることで,自動生成された既存のAPIドキュメントの場合よりもAPIを効率的に理解できるという結果が得られた.