探索的プログラミングにおいて,試行錯誤は重要である.この試行錯誤の過程で,プログラマはこまかなバージョン管理操作に相当する作業を行うが,現在の開発環境はこれらの作業を支援できていない.本研究では,探索的プログラミング中のバージョン管理を,小規模バージョン管理と名づけた. そして,既存研究の調査により,小規模バージョン管理の支援ツールの要件を明確化した.そしてその要件に基づき,テキストエディタ上で動く小規模バージョン管理ツールを提案する. このツールは,小規模バーション管理を実行するための候補リストと,小規模バージョン管理操作が可能な場所を視覚的に表示する.また,小規模バーション管理操作をした結果のソースコードをテキストエディタ上に表示する. 提案ツールで使用する履歴モデルは,領域内アンドゥと木構造を持つアンドゥを組み合わせたものである.この履歴モデルは,分散した関連する編集を同時に適用する事ができ,不適切な小規模バーション管理操作を除外する事ができる. プログラマに対するユーザスタディを行った.この結果では,提案ツールが要件を満たしており,プログラミングに有用であることが示された.また,提案する履歴モデルが領域内アンドゥと木構造を持つアンドゥの双方の特徴を持つ事も示された.

インストール

ソースコード (zip file)

プロトタイプの実行には,以下のソフトウェアが必要です.

上記zipファイルをダウンロード,解凍し,以下のコマンドを実行すると,プロトタイプツールの実行準備が整います.

$ cd micro-versioning-tool
$ npm install

使用法

以下のコマンドを実行すると,'foo.html'を小規模バージョン管理ツールで開くことができます.
$ cd micro-versioning-tool
$ electron . foo.html
  • Hiroaki Mikami, Daisuke Sakamoto, and Takeo Igarashi. Micro-Versioning Tool to Support Experimentation in Exploratory Programming. 2017 SIGCHI Conference on Human Factors in Computer Systems (CHI 2017) [DOI, PDF, スライド]