ユーザインタフェース 課題


課題: 車を操作するユーザインタフェースをデザイン・実装し、ユーザテストを行う

プログラム 車の動きをシミュレーションするJavaのプログラムを配布するので、 ユーザインタフェース部分(ユーザからの入力を受け、車のハンドル向きと速度を出力する)を実装する。 キーボードによる操作、画面上のボタンやスライダーによる操作、ドラッグによるダイレクト マニピュレーションによる操作など、なんでもよいが、 なるべく直感的かつ簡単に操作できるようなインタフェースを考えて実装する。 マルチタッチやWiiリモコン、音声など変わったインタフェースも歓迎する。 できるだけオリジナリティあふれるものを期待する。 サンプルコードを以下で配布するのでそれを元に開発すること (同等のものを作成できるのであれば他の言語等で新たに開発してもかまわない)

興味があれば、自動制御などを実装してみてもよいが、なるべくユーザインタフェース上の工夫も含めること。
参考 非ホロノミック系の制御, Nonholonomic Planning

出来上がったユーザインタフェースについては、動作がよくわかるような簡潔な動画を作成する(10秒程度)。 動作している様子をスクリーンキャプチャー (CamStudioなど)で記録すればよい。

サンプルコード:
コード (Java)

ユーザテスト
実装したユーザインタフェースを使って車を操作して、 ゴールへ移動するタスクを行う。 被験者を2人(自分以外)用意してテストを行う。 なるべく情報科学科以外の人が望ましい。 テスト用のデータはコードと一緒に入っているものを利用すること (練習用=test、メイン課題=task1, task2, task3)。 終了したら、時間を記録する(計測用コードは配布コードに含まれている)。
一通り終わったあとにユーザと話をしてコメントをもらう。 コメントおよび観察結果などをもとに、自分のデザインしたユーザインタフェースの うまくいった点・改善を要する点などをあきらかにする。 テスト結果はこちらで集計するので以下のフォーマットの表がほしい(単位は秒)。 あまりに時間がかかる場合には途中で打ち切る(5分くらい?)。

時間
           test    task1   task2   task3
被験者1   100      200     300     400
被験者2   100      200     300     400
開発者本人 100      200     300     400
平均       100      200     300     400

情報科学科以外所属でプログラミングが出来ない学生向けの課題
上記の課題に対して、配布されたプログラムそのままでユーザテストを行い、 当該ユーザインタフェースの悪い点を明らかにし、どのように改善すればよいかを示す。 また、自分なりにオリジナルのユーザインタフェースをデザインし、 その動作を図と文章で説明したものをレポートにまとめる。

レポート提出方法
自分のデザインの説明・詳しい操作方法・実験結果(時間の集計)・考察、 をまとめたレポート(できれば図を含めたpdfが望ましい)、プログラム(ソースとバイナリ)、 および動作を記録した動画(avi, 10秒程度) をzipファイルにまとめて、氏名・学生番号を明記の上、 下記の提出先までメイルすること (run.bat はメイルで受け取れないので run.bat_などにして送ってください。dropboxなどダウンロードできる場所においてもらうのでもよい)。 レポートについてはフォーマットを用意したので、 これに準じて作成してください。 他の学生にとっても勉強になるので、各自のホームページで公開することも勧める。

提出期限: 6月28日(火)深夜 (厳守)

提出先: igarashi.lab@gmail.com (件名を「user interface report」としてください)

なるべく早く作業を始めること。 テストには時間がかかるので、一週間前くらいまでには実装を終えるように。 不明な点、質問等があれば早めに五十嵐まで。 アップデートがあればこのページに掲示する。